Lasso 回归(Least Absolute Shrinkage and Selection Operator,最小绝对值收缩和选择算子)是一种线性回归方法,主要用于变量选择和特征稀疏化。其基本思想是在最小化残差平方和的目标函数中加入一个 ℓ 1 \ell_1 ℓ1 范数的惩罚项,从而对模型的复杂度进行约束。
Lasso 回归的目标函数可以表示为:
β ^ = argmin β { 1 2 n ∑ i = 1 n ( y i − x i ⊤ β ) 2 + λ ∑ j = 1 p ∣ β j ∣ } \hat{\beta} = \underset{\beta}{\text{argmin}} \left\{ \frac{1}{2n} \sum_{i=1}^{n} \left( y_i - \mathbf{x}i^\top \beta \right)^2 + \lambda \sum{j=1}^{p} |\beta_j| \right\} β^=βargmin{2n1i=1∑n(yi−xi⊤β)2+λj=1∑p∣βj∣}
公式解释
-
第一部分 ( 1 2 n ∑ i = 1 n ( y i − x i ⊤ β ) 2 \frac{1}{2n} \sum_{i=1}^{n} \left( y_i - \mathbf{x}_i^\top \beta \right)^2 2n1∑i=1n(yi−xi⊤β)2):
- 这是普通线性回归中的最小化残差平方和项。
- y i y_i yi 是第 i i i 个观测值的目标变量。
- x i ⊤ β \mathbf{x}_i^\top \beta xi⊤β 是第 i i i 个观测值的预测值。
- 1 2 n \frac{1}{2n} 2n1 是常数因子,用于简化梯度计算。
-
第二部分 ( λ ∑ j = 1 p ∣ β j ∣ \lambda \sum_{j=1}^{p} |\beta_j| λ∑j=1p∣βj∣):
- 这是 ℓ 1 \ell_1 ℓ1 范数惩罚项,用于对回归系数 β \beta β 施加约束。
- ∣ β j ∣ |\beta_j| ∣βj∣ 表示回归系数的绝对值。
- λ ≥ 0 \lambda \geq 0 λ≥0 是超参数,控制惩罚项的强度。
- 当 λ = 0 \lambda = 0 λ=0 时,Lasso 回归退化为普通最小二乘法(OLS)。
- 当 λ \lambda λ 很大时,许多 β j \beta_j βj 会被强制为零,从而实现特征选择。
-
优化目标:
- 在保持拟合误差较小的同时,通过惩罚项缩小回归系数的绝对值,有效地消除不重要的特征( β j = 0 \beta_j = 0 βj=0)。
Lasso 的两个核心作用
- 变量选择 :
- 由于 ℓ 1 \ell_1 ℓ1 惩罚的特点,Lasso 会将某些回归系数缩减为零,从而选择出重要变量。
- 特征稀疏化 :
- 大多数不重要的特征对应的系数被压缩为零,使得模型更加简单、可解释。
与 Ridge 回归的区别
Lasso 回归使用的是 ℓ 1 \ell_1 ℓ1 范数,而 Ridge 回归使用的是 ℓ 2 \ell_2 ℓ2 范数:
Ridge 的目标函数: β ^ = argmin β { 1 2 n ∑ i = 1 n ( y i − x i ⊤ β ) 2 + λ ∑ j = 1 p β j 2 } \text{Ridge 的目标函数:} \quad \hat{\beta} = \underset{\beta}{\text{argmin}} \left\{ \frac{1}{2n} \sum_{i=1}^{n} \left( y_i - \mathbf{x}i^\top \beta \right)^2 + \lambda \sum{j=1}^{p} \beta_j^2 \right\} Ridge 的目标函数:β^=βargmin{2n1i=1∑n(yi−xi⊤β)2+λj=1∑pβj2}
- Ridge 回归( ℓ 2 \ell_2 ℓ2 惩罚)会缩小系数的大小,但不会将其缩减为零,因此无法进行特征选择。
- Lasso 回归( ℓ 1 \ell_1 ℓ1 惩罚)可以使系数完全为零,因此更适合特征选择。
图示解释
如果将目标函数看作约束优化问题,可以写为:
min 1 2 n ∑ i = 1 n ( y i − x i ⊤ β ) 2 subject to ∑ j = 1 p ∣ β j ∣ ≤ t \min \frac{1}{2n} \sum_{i=1}^{n} \left( y_i - \mathbf{x}i^\top \beta \right)^2 \quad \text{subject to} \quad \sum{j=1}^{p} |\beta_j| \leq t min2n1i=1∑n(yi−xi⊤β)2subject toj=1∑p∣βj∣≤t
- ℓ 1 \ell_1 ℓ1 范数的约束区域是一个菱形(对称图形)。
- ℓ 2 \ell_2 ℓ2 范数的约束区域是一个圆。
- ℓ 1 \ell_1 ℓ1 的菱形形状使得优化过程更容易在某些轴(特征)的方向上产生零解。
优化算法
Lasso 回归的目标函数由于 ℓ 1 \ell_1 ℓ1 惩罚项的不可导性,通常采用以下优化方法:
- 坐标下降法(Coordinate Descent)。
- 最小角回归(Least Angle Regression, LARS)。
- 梯度下降法或其变种。
Lasso 是一种强大的工具,尤其适合高维数据场景。
为什么 Lasso 会收缩到 0,而 Ridge 只是减少?
Lasso 和 Ridge 的核心区别在于惩罚项的形式和优化路径的几何特性:
-
Lasso ( ℓ 1 \ell_1 ℓ1 惩罚):
- ℓ 1 \ell_1 ℓ1 范数是系数的绝对值和 ( ∑ j = 1 p ∣ β j ∣ \sum_{j=1}^p |\beta_j| ∑j=1p∣βj∣),它在约束区域边界上形成了尖点(如二维中是菱形)。
- 这种尖点使得目标函数的优化更容易停留在坐标轴上(即某些系数完全为 0)。在求解过程中,当某个特征的重要性较低时,其对应的系数可能直接被优化为零。
-
Ridge ( ℓ 2 \ell_2 ℓ2 惩罚):
- ℓ 2 \ell_2 ℓ2 范数是系数的平方和的平方根 ( ∑ j = 1 p β j 2 \sqrt{\sum_{j=1}^p \beta_j^2} ∑j=1pβj2 ),其约束区域是光滑的(如二维中是圆形)。
- 由于边界光滑,没有尖点,优化不会将系数完全收缩到 0,而是均匀地缩小所有系数。这导致 Ridge 回归不能实现特征选择。
菱形和圆形是什么意思?
为了更直观地理解,我们将回归问题转化为 带约束的优化问题,约束区域对应的是惩罚项。
1. 约束形式化:
可以将目标函数改写为以下形式:
min β 1 2 n ∑ i = 1 n ( y i − x i ⊤ β ) 2 subject to 惩罚项的约束区域 \min_{\beta} \frac{1}{2n} \sum_{i=1}^n \left( y_i - \mathbf{x}_i^\top \beta \right)^2 \quad \text{subject to} \quad \text{惩罚项的约束区域} βmin2n1i=1∑n(yi−xi⊤β)2subject to惩罚项的约束区域
- 对于 Lasso,约束为 ∑ j = 1 p ∣ β j ∣ ≤ t \sum_{j=1}^p |\beta_j| \leq t ∑j=1p∣βj∣≤t,这是一个 ℓ 1 \ell_1 ℓ1 范数的约束区域。
- 对于 Ridge,约束为 ∑ j = 1 p β j 2 ≤ t 2 \sum_{j=1}^p \beta_j^2 \leq t^2 ∑j=1pβj2≤t2,这是一个 ℓ 2 \ell_2 ℓ2 范数的约束区域。
2. 几何解释:
-
在二维系数空间(即 ( β 1 , β 2 ) (\beta_1, \beta_2) (β1,β2) 平面):
- ℓ 1 \ell_1 ℓ1 范数的约束区域是一个 菱形,四个顶点位于坐标轴上。
- ℓ 2 \ell_2 ℓ2 范数的约束区域是一个 圆形,是对称的平滑曲线。
-
在高维空间中:
- ℓ 1 \ell_1 ℓ1 范数的约束是一个高维菱形(数学上称为超正交体,类似于正方体的变种)。
- ℓ 2 \ell_2 ℓ2 范数的约束是一个高维球体。
3. 优化过程:
优化目标是最小化残差平方和,同时满足约束条件。因此,优化路径的几何形状受到惩罚项的约束:
- Lasso :
- 优化路径可能在菱形的尖点(即坐标轴交点)处找到最优解。
- 如果尖点对应某个系数 β j \beta_j βj 恰好为零,优化过程会选择该解。这就是 Lasso 能够将系数收缩到 0 的原因。
- Ridge :
- 圆形边界光滑,优化路径不会停留在任何坐标轴上。因此,系数仅被缩小,而不会完全为零。
直观类比
可以将优化过程比作一个弹性球在约束区域中滚动:
- 在 Lasso 的菱形边界中,球更容易滚到某个尖点(对应某些 β j = 0 \beta_j = 0 βj=0)。
- 在 Ridge 的圆形边界中,球无法停留在尖点(因为没有尖点),只会在光滑的边界上找到解。
总结
-
菱形和圆形的几何特性:
- 菱形有尖点,容易使某些系数为零。
- 圆形光滑,不会让系数变为零。
-
优化结果:
- Lasso 能进行特征选择(部分系数为零)。
- Ridge 仅缩小系数(无法选择特征)。