关于L0,L1,L2正则化

本文介绍了机器学习中的L0、L1和L2正则化,重点讨论了L1与L2正则化的概念、优化特性以及它们如何影响模型的稀疏性和过拟合。L1正则化倾向于产生稀疏解,而L2正则化则让解更平滑。适用场景方面,L1常用于特征选择,L2用于防止过拟合,Elastic Net结合两者优势。

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

机器学习中,关于模型的策略,有期望风险最小化,和结构风险最小化
结构风险最小化,是在考虑误差尽量小的同时,模型的复杂度也不能太高,否则容易造成过拟合。
因此,结构风险最小化的目标函数就是最小化下面这个公式:
在这里插入图片描述
规则化函数Ω(w)也有很多种选择,一般是模型复杂度的单调递增函数,模型越复杂,规则化值就越大。比如,规则化项可以是模型参数向量的范数。然而,不同的选择对参数w的约束不同,取得的效果也不同,但我们在论文中常见的都聚集在:零范数、一范数、二范数、迹范数、Frobenius范数和核范数等等。

L0范数与L1范数

L0范数是指向量中非0的元素的个数。如果我们用L0范数来规则化一个参数矩阵W的话,就是希望W的大部分元素都是0。L0范数很难优化求解。
L1范数和L0范数可以实现稀疏,L1因具有比L0更好的优化求解特性而被广泛应用

L1与L2正则化

我们假设损失函数是凸函数,则L1和L2加入损失函数后的图像:
在这里插入图片描述
未加入正则化项之前,我们的优化目标是得到等高线最小的点,也就是最内侧的紫色圆圈;
当加入了L1,L2正则化后,我们需要在在保证在L1或者L2的曲线上取较小值的同时,等高线也较小,因此,我们需要取到一个恰好的值 ;以同一条原曲线目标等高线来说,现在以最外圈的红色等高线为例,我们看到,对于红色曲线上的每个点都可以做一个菱形,根据上图可知,当这个菱形与某条等高线相切(仅有一个交点)的时候,这个菱形最小,上图相割对比较大的两个菱形对应的L1范数更大。
L1的棱形跟等高线相切的交点,更容易在坐标轴上;
当加入L2正则化的时候,分析和L1正则化是类似的,也就是说我们仅仅是从菱形变成了圆形而已,同样还是求原曲线和圆形的切点作为最终解。当然与L1范数比,我们这样求的L2范数的从图上来看,不容易交在坐标轴上,但是仍然比较靠近坐标轴。因此这也就是我们老说的,L2范数能让解比较小(靠近0),但是比较平滑(不等于0)。

降低过拟合程度:

正则化之所以能够降低过拟合的原因在于,正则化是结构风险最小化的一种策略实现。

给loss function加上正则化项,能使得新得到的优化目标函数h = f+normal,需要在f和normal中做一个权衡(trade-off),如果还像原来只优化f的情况下,那可能得到一组解比较复杂,使得正则项normal比较大,那么h就不是最优的,因此可以看出加正则项能让解更加简单,符合奥卡姆剃刀理论,同时也比较符合在偏差和方差(方差表示模型的复杂度)分析中,通过降低模型复杂度,得到更小的泛化误差,降低过拟合程度。

L1正则化和L2正则化:
L1正则化就是在loss function后边所加正则项为L1范数,加上L1范数容易得到稀疏解(0比较多)。L2正则化就是loss function后边所加正则项为L2范数的平方,加上L2正则相比于L1正则来说,得到的解比较平滑(不是稀疏),但是同样能够保证解中接近于0(但不是等于0,所以相对平滑)的维度比较多,降低模型的复杂度。

L1为什么比L2更容易获得稀疏解

https://zhuanlan.zhihu.com/p/50142573
在这里插入图片描述

在这里插入图片描述
图片来自:https://www.zhihu.com/question/37096933/answer/475278057

L1和L2的适用场景

看到的几个回答:
回答一:理论上讲,参数如果服从高斯分布就用l2,拉普拉斯分布就用l1。实际上你也不知道参数该服从什么分布,所以一般如果你需要稀疏性就用l1,比如参数量很大情况,一般不单独用l2吧,可以l1+l2,不过最终还是看效果

回答二:正则就是给参数加软限制,缩小解空间,降低结构风险。

L1是lost再+参数的绝对值,即值很大的参数可以有,但不能多。
回答三:
假设模型中有很多特征,其中不乏相关性特征,可以用L1消除一波共线性问题。在训练样本足够多的情况,然后尝试使用L2来防止过拟合问题。

最后可以尝试 Elastic Net算法,它融合了L1正则化与L2正则化,不当之处请指正

L2是lost再+参数的平方和,即值很大的参数不能有

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值