在优化问题中,为什么L1惩罚L2惩罚更容易得到稀疏解
L1惩罚与L2惩罚是什么
L1惩罚与L2惩罚都是对模型进行惩罚,防止因模型参数过于复杂而导致过拟合。特别的,在线性模型中,加L1惩罚的模型称为岭回归,加L2惩罚的模型称为lasso回归,L1惩罚与L2惩罚都加的称为弹性网回归。
假设模型的损失函数为:
minf(x;w)
其中,x是样本值,w是模型待求的参数,均为向量。
L1惩罚与L2惩罚分别为:
minL1(w)=min(f(w)+λ∑∣wi∣)minL2(w)=min(f(w)+λ∑wi2)
下面从3个角度解释为什么L1惩罚L2惩罚更容易得到稀疏解
最优化问题的角度
从最优化问题的角度,加了惩罚项的损失函数可以看作是无约束优化问题,由最优化理论可知,无约束优化问题min(f(w)+λg(w))与约束优化问题
minf(w)s.t.g(w)<=η
等价。即对一个特定的λ总存在一个η,使得两个问题等价(这个是最优化理论里面的知识,不了解的可以去翻看一下)。以下两个图清楚的展示了上述约束优化问题解的分布情况。
上图中,蓝色部分是minf(w),蓝色圆心是minf(w)的稳定点(即最优解),黄色区域是约束条件g(w)<=η的可行域。左图黄色圆形是L2约束条件的可行域;右图黄色菱形是L1约束条件的可行域。
当稳定点在可行域里面时,约束条件无效,约束优化问题退化为无约束优化问题。所以在此假设稳定点在可行域外面,易知约束凸优化问题的最优解在可行域的边界取得。有上图可以看出,当可行域为菱形时,约束凸优化问题的最优解容易在wi=0处取得;当可行域为圆形时,约束凸优化问题的最优解不容易在wi=0处取得。因此L1惩罚L2惩罚更容易得到稀疏解。
梯度的角度
对于某个参数w0,L1惩罚与L2惩罚损失函数的偏导函数分别为:
∂w0∂L1=∂w0∂f+λ或∂w0∂f−λ
∂w0∂L2=∂w0∂f+2λw0
容易看出,若不加惩罚项的损失函数的偏导函数的零点在0附近,则加了L1惩罚的损失函数的偏导函数在0左右两边的值可能异号(因为∣w∣的导函数在0左右两边异号,左边为-1,右边为1),例如当原偏导函数在0点的值为0.5时,加了L1惩罚后,在0左右两边的偏导函数的值为-0.5与1.5(????=1),这将导致0点成为新的损失函数的一个极小值点,因此将更容易使得w0=0,其他的wi与此类似。因此L1惩罚更容易产生稀疏解。而L2惩罚没有这种效果。