为什么L1惩罚L2惩罚更容易得到稀疏解

时间:2024-04-04 22:03:39

L1_1惩罚与L2_2惩罚是什么

L1_1惩罚与L2_2惩罚都是对模型进行惩罚,防止因模型参数过于复杂而导致过拟合。特别的,在线性模型中,加L1_1惩罚的模型称为岭回归,加L2_2惩罚的模型称为lasso回归,L1_1惩罚与L2_2惩罚都加的称为弹性网回归。
假设模型的损失函数为:
minf(x;w)\min f(x; w)
其中,xx是样本值,ww是模型待求的参数,均为向量。
L1_1惩罚与L2_2惩罚分别为:
minL1(w)=min(f(w)+λwi)minL2(w)=min(f(w)+λwi2)\min L_1(w)=\min (f(w)+\lambda \sum|w_i|) \\ \min L_2(w)=\min (f(w)+\lambda \sum w_i^2)

下面从3个角度解释为什么L1惩罚L2惩罚更容易得到稀疏解

最优化问题的角度

从最优化问题的角度,加了惩罚项的损失函数可以看作是无约束优化问题,由最优化理论可知,无约束优化问题min(f(w)+λg(w))\min (f(w)+\lambda g(w))与约束优化问题
minf(w)s.t.g(w)<=η\min f(w) \\ s.t.\, g(w)<=\eta
等价。即对一个特定的λ\lambda总存在一个η\eta,使得两个问题等价(这个是最优化理论里面的知识,不了解的可以去翻看一下)。以下两个图清楚的展示了上述约束优化问题解的分布情况。
为什么L1惩罚L2惩罚更容易得到稀疏解
上图中,蓝色部分是minf(w)\min f(w),蓝色圆心是minf(w)\min f(w)的稳定点(即最优解),黄色区域是约束条件g(w)<=ηg(w)<=\eta的可行域。左图黄色圆形是L2L_2约束条件的可行域;右图黄色菱形是L1L_1约束条件的可行域。
当稳定点在可行域里面时,约束条件无效,约束优化问题退化为无约束优化问题。所以在此假设稳定点在可行域外面,易知约束凸优化问题的最优解在可行域的边界取得。有上图可以看出,当可行域为菱形时,约束凸优化问题的最优解容易在wi=0w_i=0处取得;当可行域为圆形时,约束凸优化问题的最优解不容易在wi=0w_i=0处取得。因此L1L_1惩罚L2L_2惩罚更容易得到稀疏解。

梯度的角度

对于某个参数w0w_0L1L_1惩罚与L2L_2惩罚损失函数的偏导函数分别为:
L1w0=fw0+λfw0λ\frac {\partial L_1}{\partial w_0} =\frac{\partial f}{\partial w_0}+\lambda 或\frac{\partial f}{\partial w_0}-\lambda
L2w0=fw0+2λw0\frac {\partial L_2}{\partial w_0} =\frac{\partial f}{\partial w_0}+2\lambda w_0
容易看出,若不加惩罚项的损失函数的偏导函数的零点在0附近,则加了L1L_1惩罚的损失函数的偏导函数在0左右两边的值可能异号(因为w|w|的导函数在0左右两边异号,左边为-1,右边为1),例如当原偏导函数在0点的值为0.5时,加了L1L_1惩罚后,在0左右两边的偏导函数的值为-0.5与1.5(????=1),这将导致0点成为新的损失函数的一个极小值点,因此将更容易使得w0=0w_0=0,其他的wiw_i与此类似。因此L1L_1惩罚更容易产生稀疏解。而L2L_2惩罚没有这种效果。