L1正则化和L2正则化讲解

news/2025/3/4 23:02:50/

L1正则化和L2正则化讲解

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

  L1正则化L2正则化都可以看做是损失函数的惩罚项,所谓惩罚项是指对损失函数中的一些参数进行限制,让参数在某一范围内进行取值。L1正则化的模型叫做LASSO回归,L2正则化的模型叫做岭回归

  • LASSO回归公式
    m i n 1 2 m Σ i = 1 m ( f ( x ) − y ( i ) ) 2 + λ ∣ ∣ w ∣ ∣ 1 min\frac{1}{2m}\Sigma_{i=1}^{m}\left(f(x) - y^{(i)}\right)^{2}+\lambda||w||_{1} min2m1Σi=1m(f(x)y(i))2+λw1

  • 岭回归公式
    m i n 1 2 m Σ i = 1 m ( f ( x ) − y ( i ) ) 2 + λ ∣ ∣ w ∣ ∣ 2 2 min\frac{1}{2m}\Sigma_{i=1}^{m}\left(f(x) - y^{(i)}\right)^{2}+\lambda||w||_{2}^{2} min2m1Σi=1m(f(x)y(i))2+λw22

L1正则化项和L2正则化项的说明如下:

  1. L1正则化项是指权重向量 w w w中各元素的绝对值之和,表示为 ∣ ∣ w ∣ ∣ 1 ||w||_{1} w1
  2. L2正则化项是指权重向量 w w w中个元素的平方和,表示为 ∣ ∣ w ∣ ∣ 2 2 ||w||_{2}^{2} w22

L1正则化和L2正则化的作用

   1. L1正则化用于进行稀疏化(会令权重向量w中某一些参数等于0)处理,通常用于在多特征中进行特征选择
   2. L2正则化用于避免模型发生过拟合现象,L1正则化也可用于避免过拟合

L1正则化的直观理解

  • L1正则化的损失函数

m i n 1 2 m Σ i = 1 m ( f ( x ) − y ( i ) ) 2 + λ ∣ ∣ w ∣ ∣ 1 min\frac{1}{2m}\Sigma_{i=1}^{m}\left(f(x) - y^{(i)}\right)^{2}+\lambda||w||_{1} min2m1Σi=1m(f(x)y(i))2+λw1

  在上述的公式中, 1 2 m Σ i = 1 m ( f ( x ) − y ( i ) ) 2 \frac{1}{2m}\Sigma_{i=1}^{m}\left(f(x) - y^{(i)}\right)^{2} 2m1Σi=1m(f(x)y(i))2是原始的损失函数,也称为经验误差,在此基础上,加入了L1正则项 λ ∣ ∣ w ∣ ∣ 1 \lambda||w||_{1} λw1,L1正则项是权重向量中各元素的绝对值之和,所造成的一个后果就是损失函数不是完全可微。模型训练的目的是令损失函数达到全局最小值,当在原始的损失函数之后加入L1正则项之后,相当于对权重向量做了约束,此时我们的任务变为了在L1约束条件下求得损失函数的最小值。由于高维的情况无法用图像形象的描述出来,我们这里考虑二维的情况,即只有两个权重值 w 1 w_{1} w1 w 2 w_{2} w2,此时对损失函数应用梯度下降法,求解过程中可以画出等值线,如下图所示:
在这里插入图片描述
  图中等值线是原始损失函数的等值线,黑色方形是L1正则化项的图形。在图中,当彩色等值线与黑色图形首次相交的地方就是最优解。上图中原始损失函数与L1在一个顶点处相交,这个顶点就是最优解。注意到这个顶点的值是(w1,w2)=(0,w)。可以直观想象,因为L函数有很多突出的顶点(二维情况下四个,多维情况下更多),彩色等值线与这些角接触的机率会远大于与黑色图形其它部位接触的机率,而在这些角上,会有很多权值等于0,这就是为什么L1正则化可以产生稀疏效果,进而可以用于特征选择。
  正则化系数 λ \lambda λ可以控制黑色图形的大小, λ \lambda λ越大,黑色图形越小, λ \lambda λ越小,黑色图形越大。 λ \lambda λ越大,表示对权重向量的限制作用越强。

L2正则化的直观理解

  • L2正则化的损失函数
    m i n 1 2 m Σ i = 1 m ( f ( x ) − y ( i ) ) 2 + λ ∣ ∣ w ∣ ∣ 2 2 min\frac{1}{2m}\Sigma_{i=1}^{m}\left(f(x) - y^{(i)}\right)^{2}+\lambda||w||_{2}^{2} min2m1Σi=1m(f(x)y(i))2+λw22

  不管是L1正则化还是L2正则化,在拟合的过程中通常都倾向于让权值尽可能小,最后构造一个所有参数都比较小的模型,因为一般认为参数值小的模型比较简单,能适应不同的数据集,也在一定程度上避免了过拟合现象。可以设想一下对于一个线性回归方程,若参数很大,那么只要数据偏移一点点,就会对结果造成很大的影响;但如果参数足够小,数据偏移得多一点也不会对结果造成什么影响,抗干扰能力强。

  考虑损失函数在二维的情况,即只有两个权重值 w 1 w_{1} w1 w 2 w_{2} w2,此时对损失函数应用梯度下降法,求解过程中可以画出等值线,如下图所示:
在这里插入图片描述
  二维平面下L2正则化的函数图形是个圆,与方形相比,被磨去了棱角。因此J0与L相交时使得w1或w2等于零的机率小了许多,这就是为什么L2正则化不具有稀疏性的原因。


http://www.ppmy.cn/news/546477.html

相关文章

L1和L2正则化

1 过拟合问题 过拟合是数据科学领域的一个重要问题,需要处理好过拟合问题才能建立一个健壮和准确的模型。当模型试图很好的拟合训练数据但导致无法泛化到测试数据时,就出现了过拟合。过拟合模型捕捉的更多的是训练数据找的呢细节和噪声,而不…

正则化L1 L2

文章目录 1 正则化1.1 L1正则化1.1.1 为什么L1正则化产生了稀疏矩阵?1.1.2 从导数角度理解为什么L1能产生稀疏矩阵 1.2 L2正则化1.2.1 L2为什么就不能产生稀疏矩阵,而是让所有参数的值都相对变小,继而做到权值衰减1.2.2 从导数角度理解L2的权…

L1与L2的区别

目录 L1与L2为何能解决过拟合的问题: Lasso 回归和岭回归: L1与L2的区别: L1与L2为何能解决过拟合的问题: L1与L2都是正则化,它们的公式如下: L1 范数 当 p1 时,是 L1 范数,其表…

详解L1和L2正则化

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

L1正则化和L2正则化

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

L1和L2简单易懂的理解

一、正则化(Regularization) 机器学习中几乎都可以看到损失函数后面会添加一个额外项,常用的额外项一般有两种,一般英文称作ℓ1ℓ1-norm和ℓ2ℓ2-norm,中文称作L1正则化和L2正则化,或者L1范数和L2范数。 L1…

L1与L2分别服从什么分布?

L1是拉普拉斯分布,L2是高斯分布。 正则化是一种回归的形式,它将系数估计(coefficient estimate)朝零的方向进行约束、调整或缩小。也就是说,正则化可以在学习过程中降低模型复杂度和不稳定程度,从而避免过…

机器学习中的L1与L2正则化图解

文章来源于SAMshare ,作者flora 🚙正则项 正则项的作用—防止模型过拟合,正则化可以分为L1范数正则化与L2范数正则化 🚙L1 AND L2范数 范数: 范数其实在 [0,∞)范围内的值,是向量的投影大小 在机器学习中一…