这里我们从 KKT 条件看 L1 和 L2 正则化的解空间,解释一下为啥 L1 正则化使得模型参数具有稀疏性。

优化问题的基本形式
正则化的优化问题通常可以表示为:
-
L1 正则化: $$ \min_{\mathbf{w}} \left( L(\mathbf{w}) + \lambda |\mathbf{w}|_1 \right) $$
-
L2 正则化: $$ \min_{\mathbf{w}} \left( L(\mathbf{w}) + \frac{\lambda}{2} |\mathbf{w}|_2^2 \right) $$
KKT 条件简介
KKT 条件是用于求解约束优化问题的必要条件。对于一个优化问题:
$$ \min_{\mathbf{w}} f(\mathbf{w}) $$
在约束条件 $g_i(\mathbf{w}) \leq 0$ 下,KKT 条件包括:
- 可行性条件:$g_i(\mathbf{w}^*) \leq 0$
- 拉格朗日乘子非负性:$\mu_i \geq 0$
- 互补松弛条件:$\mu_i g_i(\mathbf{w}^*) = 0$
- 梯度条件:$\nabla f(\mathbf{w}^*) + \sum_{i} \mu_{i} \nabla g_{i}(\mathbf{w}^*) = 0$
L1 正则化的 KKT 条件
对于 L1 正则化问题,我们可以将其转化为一个等价的约束优化问题:
$$ \min_{\mathbf{w}, \mathbf{z}} L(\mathbf{w}) + \lambda \sum_i z_i $$
在约束 $-z_i \leq w_i \leq z_i$ 下。
应用 KKT 条件,我们得到:
- 可行性条件:$-z_i \leq w_i \leq z_i$
- 拉格朗日乘子非负性:$\mu_i^+ \geq 0, \mu_i^- \geq 0$
- 互补松弛条件:$\mu_i^+ (w_i - z_i) = 0, \mu_i^- (-w_i - z_i) = 0$
- 梯度条件:$\nabla L(\mathbf{w}^*) + \lambda \mathbf{u} = 0$
其中,$\mathbf{u}$ 是一个向量,满足 $u_i = \mu_i^+ - \mu_i^-$。
由于 L1 正则化的约束是线性的,解空间是一个多面体。多面体的顶点特性使得解容易落在坐标轴上,从而导致稀疏解。
L2 正则化的 KKT 条件
对于 L2 正则化,优化问题没有显式的约束条件。我们可以直接应用无约束优化的条件:
- 梯度条件:$\nabla L(\mathbf{w}^*) + \lambda \mathbf{w}^* = 0$
这意味着在最优解处,损失函数的梯度与正则化项的梯度之和为零。
L2 正则化的解空间是一个椭球体。由于 L2 正则化的惩罚项是二次的,它会将解空间限制在一个椭球体内。椭球体的光滑性使得解通常是密集的,不容易导致稀疏解。
L1 和 L2 正则化的对比
-
解空间形状:
- L1 正则化:解空间是一个多面体,具有尖锐的顶点,容易导致稀疏解。
- L2 正则化:解空间是一个椭球体,表面光滑,不容易导致稀疏解。
-
稀疏性:
- L1 正则化:由于多面体的顶点特性,解容易落在坐标轴上,导致稀疏性。
- L2 正则化:由于椭球体的光滑性,解通常是密集的。
-
应用场景:
- L1 正则化:适用于需要特征选择或稀疏建模的场景。
- L2 正则化:适用于需要平滑解的场景,通常用于防止过拟合。
结论
通过对比 L1 和 L2 正则化,我们可以看到它们在解空间形状和稀疏性上的显著差异。L1 正则化通过多面体的顶点特性实现稀疏性,而 L2 正则化通过椭球体的光滑性提供平滑解。这些特性使得它们在不同的应用场景中各有优势。希望这能帮助你更好地理解正则化的不同特性。