【机器学习】L1与L2正则化原理及其适用场景

正则化通过控制模型复杂度防止过拟合,L1正则化能实现特征选择,让模型更稀疏,而L2正则化使系数趋向于小但不为0,简化模型。梯度下降在L1中可能导致特征系数为0,L2则进行系数缩放。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为什么引入正则化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,这会让模型变得更简单,防止过拟合,而不会起到特征选择的作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值