当前位置:   article > 正文

【机器学习】L1与L2正则化原理及其适用场景_l1,l2的正则项区别和应用

l1,l2的正则项区别和应用

为什么引入正则化regularization?这牵扯到一个关键问题:过拟合

在这里插入图片描述

当只有一次项的时候,拟合程度不够,当存在五次方项的时候就存在过拟合现象,假设函数很好的fit给定的数据,但是不利于数据的预测(泛化性不够)

如何解决过拟合?

  • 减少特征值的数量
  • 正则化:不改变特征值的数量,减小该特征前的系数 θ j \theta_j θj以削弱该特征对预测结果的影响,当我们有大量影响较小的特征的时候,正则化就很有用,换句话说,我们可以认为加入L2正则项后,估计参数长度变短了,这在数学上被称为特征缩减(shrinkage)。

给损失函数加上的正则化项可以有多种形式,正则化的一般形式

1 2 ∑ i = 1 N [ y i − w T ϕ ( x i ) ] 2 + λ 2 ∑ j = 1 1 M ∣ w j ∣ q \frac{1}{2}\sum_{i=1}^N[y_i-w^T\phi(x_i)]^2+\frac{\lambda}{2}\sum_{j=1}\frac{1}{M}|w_j|^q 21i=1N[yiwTϕ(xi)]2+2λj=1M1wjq

其中 M M M 是参数个数,也是模型维数; q q q 是正则项的阶数,L2的q=2

在这里插入图片描述

最小化目标函数时,可以看做在控制损失函数不变的情况时令正则项最小化,几何意义如下所示:蓝色圈表示没有限制的损失函数随着 w w w迭代寻找着最小化的过程的 E ( w ) E(w) E(w)函数等高线(同个圆上的损失函数值相同),蓝色圈和橙色圈之和就是目标函数值,目标函数最小化的点往往出现在蓝圈和橙圈相交的点即目标函数最小化的参数值 w ∗ w^* w

在这里插入图片描述

可以看到,L1正则化的最优参数值恰好是 w 2 = 0 w_2=0 w2=0的时候,意味着我们剔除了模型中一个特征(系数为0等价于剔除该特征),从而达到了降低模型复杂度的目的。在这个意义上L1正则化效果要优于L2正则化,但L1存在拐点不是处处可微,从而L2正则化有更好的求解特性

L1正则化更适用于特征选择,而L2正则化更适用于防止模型过拟合。这一区别可以从梯度下降的角度入手:

首先考虑L1正则化的目标函数 J ^ = J + λ 2 M ∑ j = 1 M ∣ w j ∣ \hat J = J+\frac{\lambda}{2M}\sum_{j=1}^M|w_j| J^=J+2Mλj=1Mwj,进行梯度下降时,对 w k w_k wk 求偏导:

∂ J ^ ∂ w k = ∂ J ∂ w k ± λ 2 M \frac{\partial \hat J}{\partial w_k}=\frac{\partial J}{\partial w_k}\pm \frac{\lambda}{2M} wkJ^=wkJ±2Mλ,正负号由 w k w_k wk 的正负决定,对 w k w_k wk 进行更新:

w k = w k − α ∂ J ∂ w k ± α λ 2 M w_k=w_k-\alpha \frac{\partial J}{\partial w_k}\pm \alpha \frac{\lambda}{2M} wk=wkαwkJ±α2Mλ

其中前半部分是未加正则项时的梯度下降,整体就是在前者的基础上加减一个常数,在加减过程中很容易得到 w k = 0 w_k=0 wk=0 的情况,因此L1正则化会让特征变得稀疏,起到特征选择的作用。

而L2正则化的目标函数为 J ^ = J + λ 2 M ∑ j = 1 M w j 2 \hat J = J+\frac{\lambda}{2M}\sum_{j=1}^Mw_j^2 J^=J+2Mλj=1Mwj2,求偏导:

∂ J ^ ∂ w k = ∂ J ∂ w k + λ M w k \frac{\partial \hat J}{\partial w_k}=\frac{\partial J}{\partial w_k}+\frac{\lambda}{M}w_k wkJ^=wkJ+Mλwk,进行梯度下降:

w k = w k − α ∂ J ∂ w k − α λ M w k = ( 1 − α λ M ) w k − α ∂ J ∂ w k w_k=w_k-\alpha \frac{\partial J}{\partial w_k}- \alpha \frac{\lambda}{M}w_k=(1-\alpha\frac{\lambda}{M})w_k-\alpha \frac{\partial J}{\partial w_k} wk=wkαwkJαMλwk=(1αMλ)wkαwkJ

可以看出每次更新时,会对特征系数进行一个比例的缩放,而不是加减一个常数,这会让系数趋向变小而不会变为 0,这会让模型变得更简单,防止过拟合,而不会起到特征选择的作用。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/574566
推荐阅读
相关标签
  

闽ICP备14008679号