主要内容

逐步回归

逐步回归选择适当的模型

stepwiselm创建一个线性模型,并自动添加或调整模型。要创建一个小模型,从一个常量模型开始。要创建一个大型模型,首先要创建一个包含许多术语的模型。一个大的模型通常具有较低的误差,通过对原始数据的拟合来衡量,但可能在预测新数据方面没有任何优势。

stepwiselm可以使用所有的名值选项Fitlm.,附加了与起始和边界模型相关的选项。特别是:

  • 对于一个小型模型,从默认的较低限制模型开始:'不变'(一个没有预测词的模型)。

  • 默认的上限模型具有线性术语和交互条款(预测器对的产品)。下载188bet金宝搏对于还包括平方术语的上限模型,设置名称-值对“二次”

比较大而小的逐步型号

此示例显示如何比较模型stepwiselm从常量模型和完整交互模型开始返回。

加载CARBIG.数据并从某些数据中创建表。

加载CARBIG.TBL =表(加速,位移,马力,重量,MPG);

从恒定模型开始逐步创建里程模型。

mdl1 = stepwiselm(资源描述,'不变''responsevar''mpg'
1.添加权重,FStat = 888.8507, pValue = 2.9728e-103添加马力,FStat = 3.8217, pValue = 0.00049608添加马力:重量,FStat = 64.8709, pValue = 9.93362e-15
MDL1 =线性回归模型:MPG〜1 +马力*重量估计系数:估计系数PVALUE __________ ______________________________________0.0272-18重量-0.25084 2.32262-18重量-0.07381 -13.9215.1372E-36马力:重量5.3554E-05 6.6491C-06 8.6491C-06 8.0542 9.9336E-15观察数:392,误差自由度:388根均匀误差:3.93 R线:0.748,调整R线:0.746F函数与常量型号:385,p值= 7.26e-116

从完整交互模型开始逐步创建里程模型。

mdl2 = stepwiselm(资源描述,“互动”'responsevar''mpg'
1.取出加速度:位移= 0.024186,pvalue = 0.8765 2.取出位移:重量,FSTAT = 0.33103,PVALUE = 0.56539 3.去除加速:马力,FSTAT = 1.7334,PVALUE = 0.18876 4.去除加速:重量,FSTAT= 0.93269,PVALUE = 0.33477 5.拆卸马力:重量,FSTAT = 0.64486,PVALUE = 0.42245
MDL2 =线性回归型号:MPG〜1 +加速+重量+位移*马力估计系数:估计SE TSTAT PVALUE _______________________10.8593E-69加速-0.3440-69 0.010071  -8.0623 9.5014E-15马力-0.24313 0.026068 -9重量-0.0014367 0.00084041 -1.7095 0.08041 -1.7095 0.088166位移:马力0.00054236 5.7987E-05 9.3531 7.3531 7.0527E -19观察数:392,误差自由度:386根均匀误差:3.84 R线:0.761,调整R线:0.758 F统计与常数型号:246,P值= 1.32E-117

注意:

  • mdl1有四个系数(估计列),mdl2有六个系数。

  • 调整后的r树mdl10.746,这略低于(更差)mdl20.758

从完整的二次模型开始,逐步创建一个里程模型作为上限,从完整的二次模型开始:

mdl3 = stepwiselm(资源描述,“二次”'responsevar''mpg''上'“二次”);
1.拆卸加速:马力,FSTAT = 0.075209,PVALUE = 0.78405 2.拆卸加速:重量,FSTAT = 0.072756,PVALUE = 0.78751 3.拆卸马力:重量,FSTAT = 0.12569,PVALUE = 0.72314 4.去除重量^ 2,FSTAT= 1.194,pvalue = 0.27521 5.取出位移:重量,FSTAT = 1.2839,PVALUE = 0.25789 6.去除位移^ 2,FSTAT = 2.069,PVALUE = 0.15114 7.移除马力^ 2,FSTAT = 0.74063,PVALUE = 0.39

通过检查其公式来比较三种模型复杂性。

mdl1。公式
ans = MPG ~ 1 +马力*重量
mdl2.formula.
ANS = MPG〜1 +加速+重量+位移*马力
mdl3。公式
ANS = MPG〜1 +重量+加速*位移+位移*马力+加速^ 2

的调整 R. 2 随着模型变得更复杂,值会稍微改善:

RSQUARED = [mdl1.rsquared.adjusted,......mdl2.rsquared.Adjusted,mdl3.rsquared.adjusted]
RSQUARED =.1×3.0.7465 0.7580 0.7599

比较三种模型的残余图。

子图(3,1,1)plotresids(mdl1)子图(3,1,2)plotresids(mdl2)子图(3,1,3)plotresids(mdl3)

模型有相似的残差。目前还不清楚哪种数据更适合。

有趣的是,更复杂的模型具有更大的残差最大偏差:

Rrange1 = [min (mdl1.Residuals.Raw), max (mdl1.Residuals.Raw)];Rrange2 = [min (mdl2.Residuals.Raw), max (mdl2.Residuals.Raw)];Rrange3 = [min (mdl3.Residuals.Raw), max (mdl3.Residuals.Raw)];Rranges = [Rrange1; Rrange2; Rrange3]
Rranges =3×2-10.7725 14.7314 - 11.44407 16.7562 -12.2723 16.7927

也可以看看

|||

相关的话题