L1、L2正则化的原理及适用场景

article/2025/9/21 6:19:45

1. L1正则化,也称Lasso回归

1.1 含义

权值向量 \omega 中各元素的绝对值之和,一般记作 \left \| \omega \right \|_{1}  。

1.2  公式表示

添加了L1正则化的损失函数一般可表示为:

1.3 作用

L1正则常被用来解决过拟合问题;

L1正则化容易产生稀疏权值矩阵(更容易得到稀疏解),即产生一个稀疏模型(较多参数为0),因此也可用于特征选择。 

1.4 为什么L1(相对L2)更容易获得稀疏解 或者 0解

L1是舍弃掉一些不重要的特征,L2是控制所有特征的权重。

a. 从公式角度解释

假设只有一个参数 w,损失函数 L(w)  , 分别加上L1和L2损失函数可得:

J_{L1}\left (w \right ) = L\left ( w * H\left ( X \right ) \right ) + \lambda \left | w \right |

J_{L2}\left (w \right ) = L\left ( w * H\left ( X \right )\right ) + \lambda w^{2}

假设 L(w) 在 某一个样本  0 处 的导数是 d0

\frac{\alpha L\left ( w \right )}{\alpha \left ( w \right )}\mid _{w = 0} = d_{0}

当结合L2正则时候的导数是:

\frac{\alpha J_{L2}\left ( w \right )}{\alpha \left ( w \right )}\mid _{w = 0} = d_{0} + 2 * \lambda * w

当结合L1正则时候的导数是(L1损失在 w = 0处不可导,分 0 - 和 0 +):

\frac{\alpha J_{L1}\left ( w \right )}{\alpha \left ( w \right )}\mid _{w = 0 - } = d_{0} - \lambda

\frac{\alpha J_{L1}\left ( w \right )}{\alpha \left ( w \right )}\mid _{w = 0 + } = d_{0} + \lambda

结论:当结合L2正则的损失函数,导数结果仍然是 d0;结合L1正则的损失函数会有一个突变,从

d_{0} - \lambda 到 d_{0} + \lambda,只要满足\lambda > \left |d_{0} \right |  或 d_{0} - \lambda 和 d_{0} + \lambda 异号,则在w = 0处,损失函数有极值(极小值),在优化器优化过程中,很容易将结果收敛到该极小值点上,也就是 w = 0。相比L1正则,需要 d0 = 0,这样的条件明显更为严苛。

b. 从优化问题视角 + 二维图示例 + 多维扩展,方向解释

 c. 从梯度角度来看

结论:加入L1正则的导数形式,无论 wi 大小如何,sgn(wi) 的结果是一个常数,因此惩罚力度不变或者说仍然很大,使得L1将参数惩罚到0的概率增加;反观L2正则的导数形式,在 wi < 1 时候,尾项惩罚作用小,很难将参数惩罚到0,实际上就是使每个特征都得到尽量均衡的权重,因此适用于解决普通的过拟合问题,即从参数分布(让分布尽可能的均匀)的角度解决过拟合的问题

d. 从概率学角度

加入正则项,相当于对参数 w 增加先验假设,要求 w 满足某一种分布。

L1正则化相当于为 w 加入 “拉普拉斯分布” 的先验;L2正则化相当于为 w 加入 “高斯分布” 的先验。

结论:拉普拉斯先验在0点附近分布密度大于高斯分布,最终解将更稀疏。

2. L2正则化

2.1 含义

权值向量/矩阵 \omega 中各元素的平方和,然后对“和”求平方根,记作 \left \| \omega \right \|_{2} 。

2.2 公式表示

2.3 作用

L2正则化 可防止模型过拟合;至于为什么见下一篇文章,不定期更新

能够得到较为平滑(smooth)的解。

3. L1和L2正则化的适用场景

结论1 :从理论上来看,参数如果服从高斯分布就用L2正则化;服从拉普拉斯分布就用L1。

结论2 :添加正则化相当于参数的解空间添加了约束,限制了模型的复杂度,缓解过拟合。不过L1和L2正则化项是从不同的角度解决过拟合的。

结论3L1正则项是从改变模型结构的角度(减少模型参数的数量 或者 筛除无效特征,使无效特征对应的参数为0)解决过拟合,使的模型更加简单。

结论4 L2正则项使模型尽量不依赖于某小部分特征,使模型更倾向于使用所有输入特征,不恰当的讲就是使每个特征都得到尽量均衡的权重(对于重要、非重要的特征也会有比较明显的区分);它是从参数分布(让分布尽可能的均匀)的角度解决过拟合。

结论5L1正则化可以获得稀疏解,因此适用于:模型剪枝、模型压缩、特征选择

结论6 :L2正则化可以获得平滑(smooth)解。


http://chatgpt.dhexx.cn/article/OJ8ygPw0.shtml

相关文章

机器学习中L1正则化和L2正则化

深度学习中的归一化(normalization)和正则化(regularization)_qq_26697045的博客-CSDN博客_权重归一化 1.L1和L2的区别 在机器学习中&#xff1a; - L1 regularization 是指向量中各个元素绝对值之和&#xff0c;通常表述为,线性回归中使用L1正则的模型也叫Lasso regularizati…

每天五分钟机器学习:L1正则化和L2正则化有什么区别?

本文重点 正则化包含L1正则化和L2正则化,本文将介绍一下这两个正则化有什么不同? 正则化 L1正则化 L1正则化目的是减少参数的绝对值总和,定义为: L2正则化 L2正则化的目的是减少参数平方的总和,定义为: 二者的区别? 1、L1正则化会使得某一维的权重为0,产生稀疏权…

L1、L2正则化总结

为什么不用L0范数而用L1范数? L0范数是向量中非0元素的个数&#xff0c;若使用L0范数来规则化一个参数矩阵&#xff0c;就是希望其稀疏&#xff0c;大部分元素都是0。但L0范数难以优化求解&#xff0c;L1范数是L0范数的最优凸近似&#xff0c;且比L0范数更易优化求解。 L1和…

L1正则化 L2正则化的Python 实现

上一篇文档 https://blog.csdn.net/xingzhe2001/article/details/86316712 介绍了L1 L2正则化 本文介绍L1, L2 正则化的实现 L1正则化 代码 def L1Norm(l, theta):return np.dot(np.abs(theta), np.ones(theta.size)) * ldef L1NormPartial(l, theta):return np.sign(theta…

一文了解L1正则化与L2正则化

正则化的目的&#xff1f; 欠拟合从字面意思来看就是欠缺拟合程度&#xff0c;这一般在复杂度很低的模型中出现。从数学上来看&#xff0c;一元一次函数为一条直线、一元二次函数为一个曲线&#xff0c;以此类推。那么参数越多&#xff0c;其越能拟合更复杂的特征&#xff0c;…

【学习笔记】深刻理解L1和L2正则化

深刻理解L1和L2正则化 学习视频&#xff1a;BV1Z44y147xA、BV1gf4y1c7Gg、BV1fR4y177jP up主&#xff1a;王木头学科学 L1、L2正则化即使用L1、L2范数来规范模型参数。 凡是减少泛化误差&#xff0c;而不是减少训练误差的方法&#xff0c;都可以称为正则化方法。 通俗来说&am…

L1正则化和L2正则化(从解空间角度)

文章目录 一、什么是过拟合&#xff1f;二、为什么模型会过拟合&#xff1f;三、如何防止模型过拟合&#xff1f;四、L1正则和L2正则4.1 L1、L2的区别4.2 为什么正则化能够防止过拟合&#xff1f;4.3 为什么L1正则具有稀疏性或者说L1正则能够进行特征选择&#xff1f; 最后&…

机器学习之L1正则化和L2正则化(附源码解析)

前言 今天还是机器学习的基础知识内容&#xff0c;也是最基础的哈。首先说一下什么是正则化&#xff0c;其实它就是一个减少方差的策略。那么什么是方差呢&#xff1f;在这里也引入一个和方差相辅相成的概念--偏差。 偏差度量了学习算法的期望预测与真实结果的偏离程度&#…

L2正则化(Regularization)

正则化&#xff08;Regularization&#xff09; 深度学习可能存在过拟合问题——高方差&#xff0c;有两个解决方法&#xff0c;一个是正则化&#xff0c;另一个是准备更多的数据&#xff0c;这是非常可靠的方法&#xff0c;但你可能无法时时刻刻准备足够多的训练数据或者获取…

pytorch实现L2和L1正则化regularization的方法

pytorch实现L2和L1正则化的方法 目录 目录 pytorch实现L2和L1正则化的方法 1.torch.optim优化器实现L2正则化 2. 如何判断正则化作用了模型&#xff1f; 2.1 未加入正则化loss和Accuracy 2.1 加入正则化loss和Accuracy 2.3 正则化说明 3.自定义正则化的方法 3.1 自定…

L1正则化与L2正则化的区别

摘要 正则化的本质是在Cost Function中添加的p-范数。本文从正则化的本质p-范数入手&#xff0c;解释了L1正则化和L2正则化的区别。 正则化 在Cost Function上添加了正则化项&#xff0c;就能降低模型的过拟合程度&#xff0c;这就是正则化的作用。 关于正则化更细节的讲述&…

正则化的作用以及L1和L2正则化的区别

0 正则化的作用 正则化的主要作用是防止过拟合&#xff0c;对模型添加正则化项可以限制模型的复杂度&#xff0c;使得模型在复杂度和性能达到平衡。 常用的正则化方法有L1正则化和L2正则化。L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓『惩罚』是指对损失函数中的某些…

详解L1和L2正则化

大纲&#xff1a; L1和L2的区别以及范数相关知识对参数进行L1和L2正则化的作用与区别pytorch实现L1与L2正则化对特征进行L2正则化的作用 L1和L2的区别以及范数 使用机器学习方法解决实际问题时&#xff0c;我们通常要用L1或L2范数做正则化&#xff08;regularization&#xf…

L1正则化和L2正则化的详细直观解释

正则化&#xff08;Regularization&#xff09; 转自&#xff1a;此处 机器学习中几乎都可以看到损失函数后面会添加一个额外项&#xff0c;常用的额外项一般有两种&#xff0c;一般英文称作ℓ1ℓ1-norm和ℓ2ℓ2-norm&#xff0c;中文称作L1正则化和L2正则化&#xff0c;或者…

L1正则化和L2正则化讲解

L1正则化和L2正则化讲解 在机器学习实践过程中&#xff0c;训练模型的时候往往会出现过拟合现象&#xff0c;为了减小或者避免在训练中出现过拟合现象&#xff0c;通常在原始的损失函数之后附加上正则项&#xff0c;通常使用的正则项有两种&#xff1a;L1正则化和L2正则化。 L1…

L1正则化和L2正则化的区别

文章目录 前言一、L1和L2正则化是什么&#xff1f;二、区别三、其他问题 前言 在防止过拟合的方法中有L1正则化和L2正则化&#xff0c;那么这两者有什么区别呢&#xff1f; 一、L1和L2正则化是什么&#xff1f; L1和L2是正则化项&#xff0c;又叫做惩罚项&#xff0c;是为了限…

数据预处理之L1,L2正则化

一、L1、L2正则化概述 1. L1和L2的定义 L1正则化&#xff0c;又叫Lasso Regression 如下图所示&#xff0c;L1是向量各元素的绝对值之和 L2正则化&#xff0c;又叫Ridge Regression 如下图所示&#xff0c;L2是向量各元素的平方和&#xff0c;然后再求平方根 2.L1和L2的异同点 …

L1正则化和L2正则化

在机器学习以及深度学习中我们经常会看到正则化这一名词&#xff0c;下面就浅谈一下什么是正则化&#xff1f;以及正则化的意义所在&#xff1f; 一、什么是正则化&#xff1f; 正则化项 (又称惩罚项)&#xff0c;惩罚的是模型的参数&#xff0c;其值恒为非负 λ是正则化系数&…

【应用】【正则化】L1、L2正则化

L1正则化的作用&#xff1a;特征选择从可用的特征子集中选择有意义的特征&#xff0c;化简机器学习问题。著名的LASSO&#xff08;Least Absolute Shrinkage and Selection Operator&#xff09;模型将L1惩罚项和线性模型结合&#xff0c;使用最小二乘代价函数。L1正则化导致模…

机器学习中正则化项L1和L2的直观理解

文章目录 正则化&#xff08;Regularization&#xff09;稀疏模型与特征选择的关系 L1和L2正则化的直观理解正则化和特征选择的关系为什么梯度下降的等值线与正则化函数第一次交点是最优解&#xff1f; L2正则化和过拟合的关系 正则化参数的选择L1正则化参数L2正则化参数 Refer…