线性回归——多重共线性

1. 多重共线性的现象?

  • 回归系数与常识相反
  • 某些重要的自变量的 t t t值低( t t t值越低,越不能拒绝 β = 0 \beta=0 β=0的原假设),即某些重要的自变量不能通过回归系数的显著性检验
  • 本不显著的自变量却呈现出显著性

2. 什么是多重共线性?

线性回归模型的自变量之间存在近似线性关系。

3. 为什么会有多重共线性?

  • 自变量之间的确存在某种线性关系
  • 数据不足
  • 错误地使用虚拟变量。(比如,同时将男、女两个虚拟变量都放入模型,此时必定出现共线性,称为完全共线性)

4. 如何检验多重共线性?

  • VIF检验:

什么是VIF?
VIF衡量了多重共线性使相应的系数的估计值的方差的增大程度。一个系数的VIF越大,说明多重共线性增大了这个系数估计值的方差。
怎么计算VIF?
假设线性模型为 Y = β 0 + β 1 X 1 + ⋯ + β p X p + e Y=\beta_0+\beta_1X_1+\cdots+\beta_pX_p+e Y=β0​+β1​X1​+⋯+βp​Xp​+e,假设要计算 β k \beta_k βk​的VIF,先用其它自变量对 β k \beta_k βk​进行回归,即 X k = β 0 + β 1 X 1 + ⋯ + β k − 1 X k − 1 + β k + 1 X k + 1 + ⋯ + + β p X p + e X_k=\beta_0+\beta_1X_1+\cdots+\beta_{k-1}X_{k-1}+\beta_{k+1}X_{k+1}+\cdots++\beta_pX_p+e Xk​=β0​+β1​X1​+⋯+βk−1​Xk−1​+βk+1​Xk+1​+⋯++βp​Xp​+e
然后计算此模型的 R 2 R^2 R2,进而得到 V I F = 1 1 − R 2 VIF=\frac{1}{1-R^2} VIF=1−R21​
V I F VIF VIF越大,说明 R 2 R^2 R2越大,说明模型拟合的越好,即 X k X_k Xk​越有可能和其它自变量有线性相关关系
有的是VIF>10,有的是VIF>5

  • 相关系数分析

相关系数越大,说明越有可能存在线性相关关系。但相关系数小,不能说明不存在复共线性?(难道是因为不相关不能推出不独立,即两个变量即使相关系数很小,但依旧是不独立的?)、

5. 多重共线性有什么影响?

  • 回归模型缺乏稳定性。样本的微小扰动都可能带来参数很大的变化(因为参数估计值得方差变得很大)
  • 变量的显著性检验失去意义
  • 难以区分每个解释变量的单独影响
  • 参数的方差增大( V a r ( β ) = σ 2 ( X ⊤ X ) − 1 Var(\beta)=\sigma^2(X^\top X)^{-1} Var(β)=σ2(X⊤X)−1,多重共线性会导致 X ⊤ X X^\top X X⊤X接近于奇异矩阵,即使能算出逆,对角线上得值也会很大)

6. 该如何处理?

  • 岭回归,岭回归牺牲了无偏性,但换来方差的减小
  • 增加数据量(很难)
  • 手动移除出共线性的变量。即手动删除相关性高的自变量,但有的时候我们不希望把某个自变量从模型中剔除,这样就要考虑使用其他方法。
  • 主成分分析

7. 对逻辑回归的影响?

  • 参数更新方式: weights = weights - alpha * dataMatrix.transpose()* error,所以对逻辑回归损失函数的最优化没影响

  • 模型参数估计不准确,有时甚至会出现回归系数的符号与实际情况完全相反的情况

  • 本应该显著的自变量不显著,本不显著的自变量却呈现出显著性(也就是说,无法从p-值的大小判断出变量是否显著)

  • 多重共线性使参数估计值的方差增大,模型参数不稳定,也就是每次训练得到的权重系数差异都比较大

参考:多重共线性详解

上一篇:老板成功生气了:从一次故障聊聊前端 UI 自动化测试


下一篇:Microsoft Edge Beta for Mac(Edge浏览器) v93.0.961.18测试版