多重共线性检验,最好的软件是SPSS,它会自动给出全部共线性检验指标,如图:
后一个是最主要的VIF(方差膨胀因子)检验,它大于5,有共线。大于10,共线严重。
这个表给出了更多的共线性检验方法,比如第3列条件索引(其实是条件指数),它大于10共线,大于30严重共线。
求回归方程最常见的是两种方式,第一是逐步回归,第二是进入。进入的意思就是一次性把所有变量放入回归方程中。逐步回归是指每次进入一个回归系数最显著的变量或每次去除一个回归系数最不显著的自变量,从而循序渐进地得到最终的回归方程。比如做智力,个人能力,家里条件对学习成绩的影响,逐步回归的做法一般就是每次进入一个效应最大的自变量,比如先单独进入智力,然后进入个人能力,此时的自变量是智力和个人能力两个变量,最后进入家庭条件。
方差分析是一种用于比较两个以上水平变量均值差异的统计分析方法。比如比较三种不同农药对作物产量的影响的差异,就需要做方差分析
共线性检验是回归诊断的一种。所谓共线性是指回归方程中若干个自变量之间具有线性关系,也就是某些自变量能够表示为其他自变量的函数。比如自变量x1=mx2+n,这个时候x1和x2具有共线性,在这种情况下我们没有办法固定其他变两来单纯地考查x1或者x2对因变量的效应,不利于我们做出正确的统计推断。比如我们要探讨智力和模拟考试成绩对高考成绩的影响,由于智力会影响到模拟考试成绩,也就是二者有共线性,当我们分析模拟考试成绩的效应时,其实里面掺杂了智力的作用,无法考查模拟考试成绩的单纯效应
假设有k个自变量的多元线性回归模型:
其中误差项是一个期望值为0且服从正态分布的随机变量:
则利用最小二乘法可得参数的估计值为:
该求解公式唯一的条件是矩阵X是列满秩的,不然会有无穷多解:
当各变量之间存在共线性问题,即各变量之间存在部分线性相关时,例如:
易知此时X近乎是不满秩的(实际情况很难完全共线性),X^TX近乎是奇异的,X的最小奇异值会非常小,那它的影响到底有多大呢?我们先从 矩阵计算 的角度来看。
对于一个方程或者系统而言,当输入有一个非常微小的扰动时,我们希望方程或系统的输出变化也非常微小,如果输出的变化非常大,且不能被控制,那这个系统的预测就无效了,蝴蝶效应讲的就是这个。在矩阵计算中,这叫做 扰动分析 。
可以看到矩阵的条件数越大,扰动就越大,即x的求解值会变得非常不准确。回到上面讲的线性回归问题,容易证明最小二乘法的解满足下面的正定方程:
此时
当方程有共线性问题时,X的最小特征值非常小,相应的,上述的条件数会非常大。也就是说机器学习中的共线性问题实际上就是矩阵计算中的条件数问题。 从实际应用的角度,一般若K<100,则认为多重共线性的程度很小,若是100<=K<=1000,则认为存在一般程度上的多重共线性,若是K>1000,则就认为存在严重的多重共线性。
再从统计学的角度来看共线性。可以证明参数$\theta$的协方差矩阵为
又对任意的常数矩阵A和随机变量x有
代入上式即可得
具体到每个参数,有:
其中$R i 2 $是将第i个变量$x_i$作为因变量,其他k-1个变量作为自变量进行线性回归获得的$R 2 $,且令
为 方差膨胀因子 ( variance inflation factor ,VIF)。当
时,即当第i个变量和其他变量之间存在线性关系时,VIF趋于无穷大。所以 VIF 的大小反应了变量的共线性程度。一般地,当VIF大于5或10时,认为模型存在严重的共线性问题。
同时考虑参数显著性检验的 t 统计量 :
当存在共线性时,参数的标准差偏大,相应的 t 统计量 会偏小,这样容易淘汰一些不应淘汰的解释变量,使统计检验的结果失去可靠性。
另外考虑线性回归的残差
其中M是一个投影矩阵,且满足
易证明
而矩阵M的范数与X的条件数毫无关系,于是可以得出 共线性并不影响模型的训练精度 。但是对于泛化精度,由于参数的估计已经不准确啦,所以泛化误差肯定要差些,具体差多少,我还很难用公式表示出来。
总结一下,共线性问题对线性回归模型有如下影响:
根据上一节的描述,共线性问题有如下几种检验方法:
当变量数不多,样本数不是很大时,上述的方法是没问题的,检验某个变量有共线性问题时,可以结合实际业务考虑直接剔除该变量。但是有的时候变量数大到有上千个,VIF的计算需要建立上千个回归模型(条件数仅能判定是否存在共线性,但不能找到对应的变量),这将耗费很长时间。
事实上我们可以从模型角度来直接规避共线性问题。
主成分分析法作为多元统计分析的一种常用方法在处理多变量问题时具有其一定的优越性,其降维的优势是明显的,主成分回归方法对于一般的多重共线性问题还是适用的,尤其是对共线性较强的变量之间。当采取主成分提取了新的变量后,往往这些变量间的组内差异小而组间差异大,起到了消除共线性的问题。
逐步回归(Stepwise Regression)是一种常用的消除多重共线性、选取“最优”回归方程的方法。其做法是将逐个引入自变量,引入的条件是该自变量经F检验是显著的,每引入一个自变量后,对已选入的变量进行逐个检验,如果原来引入的变量由于后面变量的引入而变得不再显著,那么就将其剔除。引入一个变量或从回归方程中剔除一个变量,为逐步回归的一步,每一步都要进行F 检验,以确保每次引入新变量之前回归方程中只包含显著的变量。这个过程反复进行,直到既没有不显著的自变量选入回归方程,也没有显著自变量从回归方程中剔除为止。
岭回归是一种可用于共线性数据分析的有偏估计回归方法,它是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息、降低精度为代价获得回归系数更为符合实际、更可靠的回归方法,对条件数很大(病态数据)的拟合要强于最小二乘法。
在线性回归问题中,最小二乘法实际上是最小化问题:
而岭回归则是加入了L2惩罚项:
这样参数的方差不会过大,且随着惩罚项系数C的增大,共线性的影响将越来也小。在这个过程中,可以记录$\theta(k)$(岭迹)的变化情况,通过对岭迹的波动来判断我们是否要剔除该变量。
那为什么说岭回归能解决共线性问题呢?从矩阵计算的角度来看,L2正则化下方程的解为:
在上一节我们讲到共线性代表正定矩阵X T X的条件数很大:
而当条件数很大时,矩阵的逆的数值计算也是非常不准确的,但是当我们给矩阵加上一个单位矩阵时,奇异性(不可逆)问题就完全没有啦。
进一步考虑对惩罚项对奇异值的影响,假设X的奇异值(SVD)分解为:
则容易证明
其中D是对角矩阵,且满足
其反应了惩罚项是如何影响到条件数的。
LASSO回归和岭回归类似,只不过将惩罚项由L2范数改为了L1范数
L1范数没有L2范数那么圆润,毕竟存在不可导点,而且在L1范数下LASSO回归也给不出解析解啦,但是相对于岭回归,LASSO估计的参数能更容易收敛到0
ElasticNet回归同时兼顾了L1和L2惩罚项:
当许多变量是相关的时候,Elastic-net是有用的。Lasso一般会随机选择其中一个,而Elastic-net则会选在两个。
除此之外,还有L0范数(非零元的个数)、L1/2范数等。
首先捏造一份好的数据,样本量为100,特征数为8,且满足方程:
其中误差项是期望为0,标准差为15的正态分布随机变量。
此时平均准确率为0934955,拟合的系数MSE为0203657
然后我们基于这份数据另外构造出两份数据,第二份数据增加两个随机的特征用作对比,第一份数据则增加两个共线性特征:
先来看下它们的条件数
可以看到X2的条件数很搭,最小奇异值为0213,此时还不至于完全共线性。
拿这两份数据重新用线性回归拟合模型。
对于第二份共线性构造数据X2,有平均测试集准确率为0932070,拟合的参数MSE为7697837。可以看到MSE增加了很多,准确率也下降了02%,测试拟合的系数为:
在来看对比用的数据X3,其平均测试集准确率为0934952,参数MSE为0171651,与X1无异。
以上是直接的结果,我们再来看VIF
可以看到第0、1、2、3、8、9个特征的VIF都过高。且可以看出第1个特征相对第0、2、3个特征的VIF较高。
最后我们试着用模型的方法来检测共线性问题
其中当alpha取01时,岭回归估计的系数分别为
可以看到第0、1、2、3、8、9个变量都出现了波动,代表它们之间存在一定的共线性。观察岭迹,我们可以考虑剔除其中波动比较大的第1、8、9个变量。
另外Lasso回归类似,可以用sklearn中的linear_modelLasso来学习,这里就不展示了。最后对于逻辑回归任务,sklearn函数内部提供了L1或L2正则化方案,通过它们也可以去检测共线性问题。
[1] variance inflation factor
[2] 多重共线性的解决方法之——岭回归与LASSO
[3] ridge regression
多重共线性是指线性回归模型中的解释变量之间由于存在精确相关关系或高度相关关系而使模型估计失真或难以估计准确。
由于经济数据的限制使得模型设计不当,导致设计矩阵中解释变量间存在普遍的相关关系。完全共线性的情况并不多见,一般出现的是在一定程度上的共线性,即近似共线性。
主要有经济变量相关的共同趋势;滞后变量的引入;样本资料的限制。
扩展资料:
多重共线性使参数估计值的方差增大,1/(1-r2)为方差膨胀因子。如果方差膨胀因子值越大,说明共线性越强。
相反因为,容许度是方差膨胀因子的倒数,所以,容许度越小,共线性越强。可以这样记忆,容许度代表容许,也就是许可,如果,值越小,代表在数值上越不容许,就是越小,越不要。
而共线性是一个负面指标,在分析中都是不希望它出现,将共线性和容许度联系在一起,容许度越小,越不要,实际情况越不好,共线性这个“坏蛋”越强。进一步,方差膨胀因子因为是容许度倒数,所以反过来。
欢迎分享,转载请注明来源:浪漫分享网
评论列表(0条)