您可以使用鲁棒线性回归减少线性回归模型中的异常效果。本主题定义了强大的回归,显示了如何使用它来适合线性模型,并将结果与标准拟合进行比较。您可以使用Fitlm.
与“RobustOpts”
名称-值对参数,以适合一个稳健的回归模型。或者你可以使用robustfit
简单地计算鲁棒回归系数参数。
稳健线性回归对异常值的敏感性低于标准线性回归。标准线性回归使用普通最小二乘拟合来计算模型参数,这些参数将响应数据与具有一个或多个系数的预测数据联系起来。(见多元回归模型的估计更多细节)。因此,异常值对拟合有很大的影响,因为残差的平方放大了这些极端数据点的影响。使用标准线性回归的模型,在什么是线性回归模型?,基于某些假设,例如观察到的响应中的误差的正常分布。如果错误的分布是不对称或容易的异常值,则模型假设是无效的,并且参数估计,置信区间和其他计算统计数据变得不可靠。
稳健回归使用一种称为迭代重加权最小二乘的方法来为每个数据点分配一个权重。这种方法对小数据部分的大变化不太敏感。因此,稳健线性回归对异常值的敏感性低于标准线性回归。
在加权最小二乘中,配合过程包括作为额外比例因子的重量,这改善了配合。权重决定每个响应值会影响最终参数估计数。低质量的数据点(例如,异常值)应该对适合的影响较小。计算权重“RobustOpts”
在Fitlm.
更多的选项)。
这
有关更多详细信息,请参阅迭代重复最小二乘的步骤。
此示例显示如何使用强大的回归Fitlm.
功能,并将稳健拟合的结果进行比较到标准最小二乘拟合。
加载摩尔
数据。预测数据位于前五列,响应数据位于第六列。
加载摩尔x =摩尔(:,1:5);y =摩尔(:,6);
将最小二乘线性模型适合数据。
mdl = fitlm(x,y)
mdl =线性回归模型:y ~ 1 + x1 + x2 + x3 + x4 + x5估计系数:估计SE tStat pValue ___________ __________ _________ ________ ( 拦截x1) -2.1561 0.91349 -2.3603 0.0333 -9.0116 x2 e-06 0.00051835 -0.017385 0.98637 0.0013159 1.6618 - 0.11876 0.0001278 - 7.6902 0.0012635 1.0415 0.31531 x3 e-05 x4 0.0078989 1.9208 - 0.075365 0.00014165 - 7.3749 0.014 0.56421 0.58154 x5 e-05观测数量:20日误差自由度:14根均方误差:0.262平方:f统计量vs.常数模型:12,p值= 0.000118
将稳健的线性模型适用于使用的数据'robustops'
名称值对参数。
mdlr = fitlm (X, y,“RobustOpts”那 '在')
MDLR =线性回归模型(鲁棒配合):Y〜1 + x1 + x2 + x3 + x4 + x5估计系数:估计系数pvalue __________ _________________________1.7516 0.03953 -2.0144 0.06953 -2.0144 0.0344670.97299×2 0.00088843 0.0012027 0.7387 0.47229×3 0.00015729 7.3202e-05 2.1487 0.049639 X4 0.0060468 0.013326 0.45375 0.65696 X5 6.8807e-05 7.0201e-05 0.98015 0.34365若干意见:20,错误自由度:14均方根误差:0.249 R-平方:0.775,调整R线:0.694 F统计与常数型号:9.64,P值= 0.000376
直观地检查两个模型的残差。
Tiledlayout(1,2)Nextdile Plotresids(MDL,“概率”)标题( “线性适应”)nextdile plotresiduals(MDLR, “概率”)标题( '强大的契合')
来自健壮拟合(图的右半部分)的残差更接近于直线,除了一个明显的离群值。
找到离群值的索引。
异常值=查找(isoullier(mdlr.residuals.raw))
离群值= 1
绘制稳健贴合的观察的重量。
图b =条形图(mdlr.Robust.Weights);b.FaceColor ='平坦的';b.CData(例外:)=(。5 0 5);xticks(1:长度(mdlr.Residuals.Raw))包含( '观察') ylabel ( '重量')标题( '强大适合权重')
强大的配合(紫色杆)中的异常值的重量远小于其他观察的重量。
迭代加权最小二乘算法是这样的:
首先对权重进行初步估计,然后用加权最小二乘拟合模型。
计算调整后的残差。调整后的残差为
在哪里
标准化残差。标准化调整残差由
在哪里s =疯狂/ 0.6745
。
疯了
是残留物中位数的中位数绝对偏离。常数0.6745使估计是对正态分布的估计。如果预测器数据矩阵X
已
计算稳健权值
估计强大的回归系数
在哪里
估计加权最小二乘误差
在哪里
如果匹配收敛或达到最大迭代次数,迭代将停止。否则,通过返回到第二步来执行最小二乘拟合的下一次迭代。
Fitlm.
|LinearModel
|plotResiduals
|robustfit