稳健回归:是一类方法的总称,主要是针对异常值的处理方法。该方法的主要目的是检测异常点,并在有异常点的情况下给出模型的稳健估计。
基本思想:是对不同数据点给予不同权重,残差小的给予较大的权重,残差大的给予较小权重,以减小异常值对模型的影响。
SAS中关于稳健回归的估计方法主要有:
- M估计:由Huber1973年提出,是较早的一种处理异常点的方法,该法统计效率较高,但在异常点较多的时估计效果不佳。
- LTS估计:由Rousseeuw1984年提出,可用于处理高杠杠值问题。
- S估计:由Yashi1987年提出,该法具有比LTS估计更高的统计效率。
- MM估计:由Yashi1987年提出,是对S估计的进一步发展,它将M估计与LTS估计/S估计结合起来,综合了上述估计方法的优点。目前MM估计应用越来越广,可能是应用得最多的一种稳健回归技术。
稳健回归的SAS程序主要通过proc robustreg过程实现:
proc robustreg <option(s)>;
model 因变量=自变量 </option(s)>;
run;
proc robustreg options:
method = : 指定稳健估计方法,可选的有M、LTS、S、MM,默认为 mehod = M;
model options:
diagnostics:进行异常点检测
leverage:检测并列出杠杠点
SAS分析程序举例
首先采用线性回归对数据进行异常点诊断分析,然后采用稳健回归对数据进行分析,程序如下:
一般线性回归的结果可分为两部分。
第一部分为模型拟合结果,如下图,表明x对y的影响无统计学意义(t=-0.20, p=0.8433)
第二部分是观测的影响分析结果。如下图:
- 学生化残差(student residual):反映了因变量的异常点;
- 杠杆值(hat diag H):反映了自变量的异常点;
- Cook's D值和DFFITS:综合反映了强影响点。
从结果分析看出:
- 第1号观测的学生化残差绝对值远远大于其它观测,而杠杆值并不是非常高,提示其因变量为异常点;
- 第6号观测的杠杆值远远大于其它观测,而学生化残差并不高,提示其自变量为异常点;
- Cook's D值和DFFITS则显示,第1号和第6号的值均高于其它观测的值,提示这两个观测可能为强影响点。
一般线性回归分析可知存在强影响点,且其值较大,因此我们采用稳健回归对数据进行分析。
稳健回归分析结果主要分为五部分。
第一部分是对变量的简单统计描述,如下:
绝对离差中位数(MAD)是稳健的变量尺度,标准差与MAD差值越大,提示可能存在异常。
结果分析显示:y的标准差与MAD的差值比x的更大,提示y更有可能存在异常值。
第二部分是MM估计的概括性描述,如下:
- 结果显示:最高的失效点为0.2667,估计率为0.85。
- 失效点通常来讲就是所需的估计方法在数据有多少异常点时仍可保持模型的稳健。失效点所占比例越高,表明估计方法越稳健。
- MM估计默认的估计率为0.85。如果指定估计率,可通过以下语句实现
proc robustreg method=mm(eff=0.9);
第三部分是参数估计结果。
给出了参数的MM估计、标准误、95%可信区间、卡方值及相应的P值。
第四部分为数据诊断结果,如下:
- 杠杆点主要根据稳健MCD距离(robust MCD distance)判断,当该值大于诊断界值(cutoff)时,即判断为杠杆点,并以“*”标识;
- 离群点主要根据稳健残差(robust residual)判断,当该值的绝对值大于诊断界值(cutoff)时,即判断为离群点,并以“*”标识;
结果显示:
- 第1号判断为离群点;
- 第6号判断为高杠杆点,且同时为离群点。
第五部分为模型拟合结果。
这部分主要用于模型的比较,单看一个意义不大。
根据以上结果,稳健回归所得方程为y=421.8446+17.0256x。与普通线性回归所得结果相差较大。这一点可结合散点图理解。
从上面两个图,明显地看到两个点脱离其它点,第1号观测主要是偏离y的均值较大,第6号观测主要偏离x均值,但同时也偏离y均值。如果仅有第1号为异常,而第6号正常,那么直线上升趋势更为明显,即回归系数会变大。而第6号将整个方程拉了下来,使普通线性回归估计的回归系数变成了负值。由于第6号既是高杠杠点又是离群点,因此它是一个强影响点,正是它的存在,导致整个方程发生了重大改变。
总结
So,当数据中存在高杠杠点、离群点甚至强影响点时,普通线性回归受他们的影响特别大,很有可能由于一两个数据的影响而偏离了实际,而稳健回归则避免了这种误导。
本例中,稳健回归给出的估计结果更加符合实际,因为数据总体仍是一种直线上升的趋势。