提纲:
一、什么是多重共线性 定义+后果
二、怎么检测回归模型中有无多重共线性
三、出现多重共线性要怎么处理
一、什么是多重共线性?
(一)定义
多重共线性(Multicollinearity)是指多元线性回归中,自变量之间存在高度相关关系而使得回归估计不准确的情况。
按照相关程度分为两种:
1.精准相关
是指其中一个自变量是另外一个自变量的线性变换
举例:X2=a+b✖X3
2.高度相关
是指相关关系为“显著”
(二)为什么不能有多重共线性
简单来说,若存在多重共线性,假设为上图中所示,则原模型可以改写成下面的式子。而回归的结果并不知2与3之间如何分配,也即是不知道到底是给2分配的多一些还是给3分配的多一些。同理如果两个变量之间是高度相关的话,结果也类似。因此不能存在多重共线性。
(三)多重共线性的后果
1.高度相关的两个变量,系数非常敏感,且系数估计有误差
2.模型作为一个整体,拟合程度没有太大影响
3.多重共线性对模型的预测能力没有太大的影响
二、如何检测多重共线性
检验的基本逻辑:
以一个自变量作为因变量,其他自变量作为自变量,进行一个新的回归。
得到结果之后,我们要看每组回归结果的R^2。R是0~1之间的数据。若R=1,则说明,原模型的回归模型中的自变量能够完全解释因变量Y。
在上图这一组的回归结果中,如果第一个式子回归结果R^2=95%,则X1能被其他所有的自变量很好的解释。
(一)容忍度(Tolerance)
(二)方差膨胀系数(vif,variance inflation factor)
上图右侧的T、VIF指标的取值范围是表明模型存在多重共线性。
(三)stata指令
estat vif 在使用OLS模型中vif的使用方法
(在其他模型中使用上述代码stata会报错)
解决方法:
*将其他模型转换成OLS模型
*使用一个软件包collin
net describe collin, from(https://stats.idre.ucla.edu/stat/stata/ado/analysis) 下载指令软件包
net install collin 安装软件包
collin 因变量 自变量 OLS模型之外其他模型的vif检验指令
(下载collin ado file的网址:https://stats.oarc.ucla.edu/stata/ado/analysis/)
三、多重共线性的解决方法
(一)如果只想用模型进行预测or不关心出现多重共线性的变量
可以不做处理
(二)能确定其中两个或多个高度相关
剔除其中一个或者多个变量
(主成分分析法,提取高度相关变量的一个两个特征值,作为控制变量进行回归。)