异常点(Outlier):残差很大的点(即:因变量y的值是极端值的观测值)
高杠杆点(High Leverage Point):远离样本空间中心的点(即:自变量x的值是极端值的观测值)
强影响点(Influential Point):对模型有较大影响的点,如果删除该点能改变拟合回归方程
注意:
1,异常点不一定是强影响点,强影响点也不一定是异常点
2,高杠杆点不一定是强影响点,强影响点也不一定是高杠杆点
下面以几张图举例,让大家更好地分清楚什么是异常点,高杠杆点和强影响点。(下图摘自:https://online.stat.psu.edu/stat462/node/170/)
(1)
虚线和实线分别是包含红点在内和不包含红点在内训练出来的回归模型。可以看到,两条回归线之间相差不大,因此,该红点不是强影响点。
同时,该红点并没有离其他自变量的值很远,因此也不是高杠杆点。但是它离回归线很远(残差大),因此该红点是异常点。
(2)
虚线和实线分别是包含红点在内和不包含红点在内训练出来的回归模型。可以看到,两条回归线之间相差不大,因此,该红点不是强影响点。
同时,该红点离回归线不远,因此也不是异常点。但是它离其他自变量的值很远,因此该红点是高杠杆点。
(3)
虚线和实线分别是包含红点在内和不包含红点在内训练出来的回归模型。可以看到,两条回归线之间相差较大,因此,该红点是强影响点。
同时,该红点离其他自变量的值较远,因此是高杠杆点。它离回归线也很远(残差大),因此该红点也是异常点。
二,判断
上面的图例是简单线性回归,在实际应用中,通常有多个自变量,因此在高维空间中,我们不可能通过画图来判断某个观测值是否是异常点或高杠杆点或强影响点。
1,判断是否是异常点
(1)标准化残差(standardized residuals):
。相对于普通残差来说,消除了量纲的影响。如果标准化残差的绝对值>3,该观测值即判定为异常值。可用R的rstandard()方法计算出标准化残差。(2)学生化残差(studentized residuals):
。相对于标准化残差,还去除了高杠杆值的影响。如果学生化残差的绝对值>3,该观测值即判定为异常值。可用R的outlierTest()方法求得有最大学生化残差的观测值和Bonferroni调整后的p值,从而做出判断。(3)删除学生化残差(deleted studentized residuals):尽管学生化残差去除了杠杆值的影响,但是异常值会把回归线“拉向”它所在的位置,因此去除掉该点的影响更为客观公正。如果删除学生化残差的绝对值>3,该观测值即判定为异常值。可以用R的rstudent()方法计算出删除学生化残差。(需要注意的是:如果有不止一个异常点,那么即使删除这一个异常点,其他异常值仍会把回归线“拉向”它们所在的位置。)
2,判断是否是高杠杆点
(1)如果帽子统计量大于平均帽子值的3倍,那么可以判断该观测值是高杠杆点。可用R的hatvalues()方法计算出帽子统计量(hat statistic),用leveragePlots()方法画图。
附:为什么叫帽子统计量?(具体请见:https://online.stat.psu.edu/stat462/node/171/)