岭回归和lasso回归

本文内容来源于清风老师的讲解

  • 回归中关于自变量的选择大有门道,变量过多可能会导致多重共线性问题造成回归系数的不显著,甚至造成OLS估计的失效。
  • 岭回归和lasso回归在OLS回归模型的损失函数(残差平方和SSE)上加上了不同的惩罚项,该惩罚项由回归系数的函数构成,一方面,加入的惩罚项能够识别出模型中不重要的变量,对模型起到简化作用,可以看作逐步回归的升级班;另一方面,加入的惩罚项会让模型变得可估计,即使之前的数据不满足列满秩。

岭回归的原理

  • 多元线性回归: β ^ = arg min ⁡ ∑ i = 1 n ( y i − x i ′ β ^ ) 2 \hat\beta=\argmin{\sum_{i=1}^n(y_i-x_i^{'}\hat\beta)^2} β^=argmini=1n(yixiβ^)2,其中 β ^ = ( β ^ 1 , β ^ 2 , . . . , β ^ k ) ′ \hat\beta=(\hat\beta_1,\hat\beta_2,...,\hat\beta_k)^{'} β^=(β^1,β^2,...,β^k)
  • 岭回归: β ^ = arg min ⁡ ∑ i = 1 n [ ( y i − x i ′ β ^ ) 2 + λ ∑ i = 1 k β ^ i 2 ] = arg min ⁡ [ ( y − x β ^ ) ′ ( y − x β ^ ) + λ β ^ ′ β ^ ] \hat\beta=\argmin{\sum_{i=1}^n[(y_i-x_i^{'}\hat\beta)^2+\lambda\sum_{i=1}^k{\hat\beta^2_i}]}=\argmin[(y-x\hat\beta)^{'}(y-x\hat\beta)+\lambda\hat\beta^{'}\hat\beta] β^=argmini=1n[(yixiβ^)2+λi=1kβ^i2]=argmin[(yxβ^)(yxβ^)+λβ^β^] λ \lambda λ为一正常数。

L = ( y − x β ^ ) ′ ( y − x β ^ ) + λ β ^ ′ β ^ L=(y-x\hat\beta)^{'}(y-x\hat\beta)+\lambda\hat\beta^{'}\hat\beta L=(yxβ^)(yxβ^)+λβ^β^ λ → 0 \lambda\to0 λ0时,岭回归和多元线性回归完全相同; λ → + ∞ \lambda\to +\infty λ+时, β ^ = 0 k × 1 \hat\beta=\boldsymbol 0_{k\times 1} β^=0k×1
另外: ∂ L ∂ β ^ = − 2 x ′ y + 2 x ′ x β ^ + 2 λ β ^ = 0 ⇒ ( x ′ x + λ I ) β ^ = x ′ y \frac{\partial L}{\partial \hat\beta}=-2x^{'}y+2x^{'}x\hat\beta+2\lambda\hat\beta=0\Rightarrow (x^{'}x+\lambda I)\hat\beta=x^{'}y β^L=2xy+2xxβ^+2λβ^=0(xx+λI)β^=xy
由于 x ′ x x^{'}x xx半正定,则 x ′ x x^{'}x xx特征值均为非负数,加上 λ I \lambda I λI后, x ′ x + λ I x^{'}x+\lambda I xx+λI特征值均为整数,则 x ′ x + λ I x^{'}x+\lambda I xx+λI可逆,所以 β ^ = ( x ′ x + λ I ) x ′ y ( λ > 0 ) \hat\beta=(x^{'}x+\lambda I)x^{'}y\quad(\lambda>0) β^=(xx+λI)xy(λ>0)

如何选择 λ \lambda λ

岭迹分析(用得比较少)

  • 岭迹的概念:将 λ \lambda λ 0 → + ∞ 0\to+\infty 0+变量,得到的 β ^ = ( β ^ 1 β ^ 2 ⋮ β ^ k ) \hat\beta=\left( \begin{array}{c} \hat\beta_1\\ \hat\beta_2\\ \vdots\\ \hat\beta_k \end{array} \right) β^=β^1β^2β^k中每个变量的变化曲线。
  • 用岭迹法选择 λ \lambda λ的一般原则是:
    (1)各回归系数的岭估计基本稳定;
    (2)用最小二乘估计时符号不合理的回归系数,其岭估计的符号变得合理;
    (3)回归系数没有不合乎经济意义的绝对值;
    (4)残差平方和增大不太多。

image.png

VIF法(方差膨胀因子)(几乎不用)

  • 不断增加 λ \lambda λ,直到所有的 β ^ \hat\beta β^ V I F < 10 VIF<10 VIF<10

最小化均方预测误差(用的最多)

  • 我们使⽤ K 折交叉验证的⽅法来选择最佳的调整参数。所谓的K 折交叉验证,是说将样本数据随机分为 K 个等分。将第 1 个⼦样本作为 “验证集”(validation set)⽽保留不⽤,⽽使⽤其余 K-1 个⼦样本作为 “训练集”(training set)来估计此模型,再以此预测第 1 个⼦样本,并计算第1个⼦样本的 “均⽅预测误差”(Mean Squared Prediction Error)。其次,将第 2 个⼦样本作为验证集,⽽使⽤其余 K-1 个⼦样本作为训练集来预测第2个⼦样本,并计算第 2 个⼦样本的 MSPE。以此类推,将所有⼦样本的 MSPE 加总,即可得整个样本的 MSPE。最后,选择调整参数 ,使得整个样本的 MSPE 最⼩,故具有最佳的预测能⼒。
  • 注意:我们需要保证 X X X量纲一致,若不同可考虑标准化 x i − x ˉ σ x \frac{x_i-\bar x}{\sigma_x} σxxixˉ

Lasso回归的原理

  • 多元线性回归: β ^ = arg min ⁡ ∑ i = 1 n ( y i − x i ′ β ^ ) 2 \hat\beta=\argmin{\sum_{i=1}^n(y_i-x_i^{'}\hat\beta)^2} β^=argmini=1n(yixiβ^)2,其中 β ^ = ( β ^ 1 , β ^ 2 , . . . , β ^ k ) ′ \hat\beta=(\hat\beta_1,\hat\beta_2,...,\hat\beta_k)^{'} β^=(β^1,β^2,...,β^k)
  • 岭回归: β ^ = arg min ⁡ ∑ i = 1 n [ ( y i − x i ′ β ^ ) 2 + λ ∑ i = 1 k β ^ i 2 ] = arg min ⁡ [ ( y − x β ^ ) ′ ( y − x β ^ ) + λ β ^ ′ β ^ ] \hat\beta=\argmin{\sum_{i=1}^n[(y_i-x_i^{'}\hat\beta)^2+\lambda\sum_{i=1}^k{\hat\beta^2_i}]}=\argmin[(y-x\hat\beta)^{'}(y-x\hat\beta)+\lambda\hat\beta^{'}\hat\beta] β^=argmini=1n[(yixiβ^)2+λi=1kβ^i2]=argmin[(yxβ^)(yxβ^)+λβ^β^] λ \lambda λ为一正常数。
  • Lasso回归(用得多): β ^ = arg min ⁡ ∑ i = 1 n [ ( y i − x i ′ β ^ ) 2 + λ ∑ i = 1 k ∣ ^ β i ∣ ] \hat\beta=\argmin{\sum_{i=1}^n[(y_i-x_i^{'}\hat\beta)^2+\lambda\sum_{i=1}^k{\hat|\beta_i|}]} β^=argmini=1n[(yixiβ^)2+λi=1k^βi]

Lasso回归与岭回归模型相比,其最大的优点是可以将不重要的变量的回归系数压缩至0,而岭回归虽然也对原来系数做了一定程度的压缩,但是任一系数都不会为,最终的模型保留了搜索变量。可以用上述的“最小化均方预测误差”来确定 λ \lambda λ

何时使用Lasso回归

  1. 首先使用最一般的OLS对数据进行回归,然后计算方差膨胀因子VIF,如果VIF>10则说明存在多重共线性的问题,因此需要对变量进行筛选。
  2. 使用lasso回归筛选出不重要的变量(lasso回归可以看陈逐步回归的进阶版)
    1. 判断自变量的量纲是否一样,如果不一样则首先进行标准化的预处理
    2. 对变量进行lasso回归,记录下lasso回归结果表中回归系数不为0的变量,这些变量就是最终我们要留下来的重要变量
  3. 将这些重要变量视为自变量,进行回归,并分析结果。(此时的变量可以是标准化前的,lasso回归只起到变量筛选的目的)
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_961876584

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值