开发者学堂课程【机器学习算法 :多重共线性】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/535/detail/7213
多重共线性
内容简介
一、概念理解
二、多重共线性诊断
三、消除多重共线性
一、概念理解
多重共线性(Multicollineariy)是指线性回归模型中的解释变量之间由于存在精确相关关系或高度相关关系而使模型估计失真或难以估计准确。换句话说,两个特征的自变量之间有精确的相关,x1=2x2 或者说 x1、x2 之间高度相关,这个时候就叫做多重共线性。对线性回归模型是十分恶劣的,一定要进行改正。
用数学的语言描述就是存在一组不全为0的数,,使得,不同的函数之间存在精确的函数关系,或是高度相关的关系,这就是多重共线性。
有多元线性回归方程 ,其中自变量之间的相关系数为:
得到回归系数的方差:就是回归系数的方差 r12 当约等于1的时候,方差接近于无穷,这个估算值就没有意义。就会导致整个回归方程没有意义。
多重共线性的成因:
不同的自变量存在相同的趋势
引入了滞后的自变量,有时间依赖关系,比如说 x1 上一个时间段的值,x2 下一个时间段的值,那么 x1 x1 之间就会有很强的相关性
样本资料的限制,比如就几条样本数据,它的相关性就比较强
多重共线性对回归模型的影响:
参数估计失效,回归估计的方差很大是没有用的。
显著性检验失效
模型无应用价值
二、多重共线性诊断
直观判定法:
增加或者剔除一个自变量,或者是改变一个观测值,回归系数的估计值发生较大变化,认为存在严重的多重共线性。回归系数方差很大,随便变一点,对整个的影响很大
一些重要自变量在回归方程的显著性检验中未能通过,初步判定存在严重的共线性。在做支出和什么有影响时?明显就会知道支出和收入有关系,结果生成一个模型之后,会发现收入的没有通过显著性检验,就有理由怀疑存在。
当回归方程中一些自变量的系数所带的正负号与定性分析的结果相违背时,认为存在多重共线性。例如预测体重,一般身高和体重成正比,一般身高越高会认为体重越大,但实际中会发现身高模型中的前面一项是负数,和定性分析的结果相违背,就认为可能存在多重共线性。
自变量的相关矩阵中,当自变量间的相关系数较大时,认为可能存在多重共线性。它的定义就是两个自变量,要么存在精确的关系,要么高度相关
当一些重要的自变量的回归系数的标准误差较大时,认为可能存在多重共线性。例如随便变一点东西,就会发生巨大的差异,就是模型是病态的,估算回归系数后可以估算出误差,这个也是他的一个特点,不但可以定量分析,还能够估算误差。如果估算误差的结果很大,就认为存在多重共线性。
方差扩大因子法:方差扩大因子(Variance Infation Factor,VIF),也叫方差膨胀因子,是中心标准化后的自变量的相关阵的主对角线元素。
就是把样本中的自变量做一个矩阵,再看主对角线的元素,叫做方差扩大因子。把c=(cij)=((X*)TX*)-1,VIF为矩阵C的主对角线元素,就是 x 的转置乘以 x 的星。
VIFj=1/(1-Rj2), Rj2为xj对其余自变量的负决定系数
当膨胀因子≥10时,说明自变量 xj 与其他自变量存在严重的多重共线性,会严重影响使用最小二乘法 OLS 进行系数估值
平均膨胀因子>1时,存在严重的多重共线性
特征报判定法:求解矩阵 XTX 的特征根,存在近似于0的特征根,则表明存在多重共线性,有多少个近似于0的特征根,就有多少个多重共线性关系。
可以通过条件数来判断特征根近似于0
其中,λm 为最大特征根
条件数度量了特征的散布程度
通常认为 0<k<10 时,没有多重共线性;当 10≤k<100 时,存在较强的多重共线性关系;当 k≥100 时,存在着严重的多重共线性
三、消除多重共线性
常见的消除方法:
删除一些不重要的解释变量:选择回归模型时,可以将回归系数的显著性检验、方差扩大因子的多重共线性检验与自变量的实际意义结合起来考虑,引进或者剔除变量
增大样本量:当关联系数不变时,增大样本的数量,回归系数估计值的方差也会适当缩小,从而减弱多重共线性的影响如果样本量的n很大,会让分母增加,整体的方差变小。
回归系数有偏估计:采取有偏估计的方法提高稳定性,如岭回归、主成分法、偏最小二乘法等