人工智能-模型过拟合解决方案:Regularization/正则化/Weight Decay【L1正则化、L2正则化】

  • 在解决回归过拟合中,我们选择正则化。但是对于其他机器学习算法如分类算法来说也会出现这样的问题,除了一些算法本身作用之外(决策树、神经网络),我们更多的也是去自己做特征选择,包括之前说的删除、合并一些特征
    在这里插入图片描述
  • 在学习的时候,数据提供的特征有些影响模型复杂度或者这个特征的数据点异常较多,所以算法在学习的时候尽量减少这个嘈杂特征的影响(甚至删除某个特征的影响),即减少嘈杂特征项的权重,这就是正则化
    在这里插入图片描述
  • 注:调整时候,算法并不知道某个特征影响,而是去不断尝试调整参数 λ λ λ 得出优化的结果。
  • 如果模型没有表现出 “过拟合” 的现象,这时候如果使用正则化,则会使得模型的复杂度小于数据实际复杂度,会表现出 “欠拟合” ,使得模型的性能急剧下降
  • 如果模型已经表现出了 “过拟合” 的现象,这时候使用正则化,如果参数 λ λ λ 调节恰当, 则模型在训练集上的表现不会有太大影响,同时可以使得模型在验证集或测试集上的表现得到优化
    在这里插入图片描述
    带正则项,相当于为目标函数的解空间进行了约束。
    当参数为2维时,L2正则项解空间为圆形,L1正则项解空间为菱形。
    最优解必定是有且仅有一个交点。
    除非目标函数具有特殊的形状,否则和菱形的唯一交点大概率出现在截距处(即对应某一维度参数为0)。而对于圆形的解空间,总存在一个切点,且仅当某些特殊情况下,切点才会位于坐标轴上。

一、 L1-norm(sklearn.linear_model.LassoCV)

J ( θ ) = ∑ i = 1 m [ y i − y i ^ ] 2 + λ ∑ i = 1 m ∣ θ i ∣ = ∑ i = 1 m [ y i − ( x i θ + b i ) ] 2 + λ ∑ i = 1 m ∣ θ i ∣ \begin{aligned} \color{Violet}{ \begin{aligned} J(\textbf{θ})&=\sum_{i=1}^m[y_i-\hat{\textbf{y}_i}]^2+λ\sum_{i=1}^m|\textbf{θ}_i|\\ &=\sum_{i=1}^m[y_i-(\textbf{x}_i\textbf{θ}+b_i)]^2+λ\sum_{i=1}^m|\textbf{θ}_i| \end{aligned} } \end{aligned} J(θ)=i=1m[yiyi^]2+λi=1mθi=i=1m[yi(xiθ+bi)]2+λi=1mθi

  • λ > 0 λ>0 λ>0
  • 作用:可以使得其中一些参数W的值直接为0或接近0,删除这个特征的影响,实现事实上的降维;降低模型复杂度。
  • LASSO回归:当样本的特征数量多于样本数量时,使用LASSO回归;

在这里插入图片描述

  • w t > 0 w^t>0 wt>0 时,更新的参数 w t w^t wt 变小;
  • w t < 0 w^t<0 wt<0 时,更新的参数 w t w^t wt 变大;
  • 所以,L1正则化容易使参数变为0,即特征稀疏化。

二、L2-norm(sklearn.linear_model.RidgeCV)

J ( θ ) = ∑ i = 1 m [ y i − y i ^ ] 2 + λ ∑ i = 1 m θ i 2 = ∑ i = 1 m [ y i − ( x i θ + b i ) ] 2 + λ ∑ i = 1 m θ i 2 \begin{aligned} \color{Violet}{ \begin{aligned} J(\textbf{θ})&=\sum_{i=1}^m[y_i-\hat{\textbf{y}_i}]^2+λ\sum_{i=1}^m\textbf{θ}^2_i\\ &=\sum_{i=1}^m[y_i-(\textbf{x}_i\textbf{θ}+b_i)]^2+λ\sum_{i=1}^m\textbf{θ}^2_i \end{aligned} } \end{aligned} J(θ)=i=1m[yiyi^]2+λi=1mθi2=i=1m[yi(xiθ+bi)]2+λi=1mθi2
在这里插入图片描述
在这里插入图片描述

  • λ > 0 λ>0 λ>0
  • 作用:可以使得参数 θ i θ_i θi 的都很小,都接近于0,过滤掉容易产生过拟合的参数,削弱各个特征各自对整体结果的影响,减小噪音特征的影响;
  • 优点:越小的参数说明模型越简单,越简单的模型则越不容易产生过拟合现象,具有更好的泛化能力;
  • 算法:Ridge回归

在这里插入图片描述
由上式可知,正则化的更新参数相比于未含正则项的更新参数多了 − η λ w t -ηλw^t ηλwt 项,当 w t w^t wt 趋向于0时,参数减小的非常缓慢,因此L2正则化使参数减小到很小的范围,但不为0。

三、Elastic Net(sklearn.linear_model.ElasticNetCV)

J ( θ ) = ∑ i = 1 m [ y i − y ^ i ] 2 + λ [ ρ ∑ i = 1 m ∣ θ i ∣ + ( 1 − ρ ) ∑ i = 1 m θ i 2 ] = ∑ i = 1 m [ y i − ( x i θ + b i ) ] 2 + λ [ ρ ∑ i = 1 m ∣ θ i ∣ + ( 1 − ρ ) ∑ i = 1 m θ i 2 ] { λ > 0 0 ≤ ρ ≤ 1 \begin{aligned} \color{Violet}{ \begin{aligned} J(\textbf{θ})&=\sum_{i=1}^m[y_i-\hat{\textbf{y}}_i]^2+λ[ρ\sum_{i=1}^m|\textbf{θ}_i|+(1-ρ)\sum_{i=1}^m\textbf{θ}_i^2]\\ &=\sum_{i=1}^m[y_i-(\textbf{x}_i\textbf{θ}+b_i)]^2+λ[ρ\sum_{i=1}^m|\textbf{θ}_i|+(1-ρ)\sum_{i=1}^m\textbf{θ}_i^2] \end{aligned} }\end{aligned} \qquad \qquad \begin{aligned}\begin{cases}λ>0\\0≤ρ≤1\end{cases}\end{aligned} J(θ)=i=1m[yiy^i]2+λ[ρi=1mθi+(1ρ)i=1mθi2]=i=1m[yi(xiθ+bi)]2+λ[ρi=1mθi+(1ρ)i=1mθi2]{ λ>00ρ1

在这里插入图片描述

四、L1正则 与 L2正则 解的稀疏性

稀疏矩阵指有很多元素为0,少数参数为非零值。一般而言,只有少部分特征对模型有贡献,大部分特征对模型没有贡献或者贡献很小,稀疏参数的引入,使得一些特征对应的参数是0,所以就可以剔除可以将那些没有用的特征,从而实现特征选择,提高模型的泛化能力,降低过拟合的可能。

L1正则化使得参数稀疏可以从函数的角度来看,仅考虑一维的情况,多维情况是类似的,如图所示。假设棕线是原始目标函数L(w)的曲线图,显然最小值点在蓝点处,且对应的w*值非0。

在这里插入图片描述
首先,考虑加上L2正则化项,目标函数变成L(w)+Cw2,其函数曲线为黄色。

此时,最小值点在黄点处,对应的w*的绝对值减小了,但仍然非0。 然后,考虑加上L1正则化项,目标函数变成L(w)+C|w|,其函数曲线为绿色。

此时,最小值点在红点处,对应的w是0,产生了稀疏性。

产生上述现象的原因也很直观。加入L1正则项后,对带正则项的目标函数求导,正则项部分产生的导数在原点左边部分是−C,在原点右边部分是C,因此,只要原目标函数的导数绝对值小于C,那么带正则项的目标函数在原点左边部分始 终是递减的,在原点右边部分始终是递增的,最小值点自然在原点处。相反,L2 正则项在原点处的导数是0,只要原目标函数在原点处的导数不为0,那么最小值 点就不会在原点,所以L2只有减小w绝对值的作用,对解空间的稀疏性没有贡献。

1、图解分析01

在这里插入图片描述
以二维情况讨论,上图左边是 L2 正则化,右边是 L1 正则化。

求添加了正则化约束条件的训练样本误差最小值,实际上是求解蓝色区域与黄色区域的交点,即同时满足 “限定条件” 和 “未包含正则化项的训练样本误差” 最小化。

  • 对于 L2 来说,限定区域是圆,这样,得到的解 w1 或 w2 为 0 的概率很小,很大概率是非零的。
  • 对于 L1 来说,限定区域是正方形,方形与蓝色区域相交的交点是顶点的概率很大,这从视觉和常识上来看是很容易理解的。也就是说,方形的凸点会更接近“未包含正则化项的训练样本误差” 最优解对应的全局最优值位置,而凸点处必有 w1 或 w2 为 0。这样,得到的解 w1 或 w2 为零的概率就很大了。所以,L1 正则化的解具有稀疏性。

扩展到高维,同样的道理,L2 的限定区域是平滑的,与中心点等距;而 L1 的限定区域是包含凸点的,尖锐的。这些凸点更接近 “未包含正则化项的训练样本误差” 的最优解位置,而在这些凸点上,很多 w j w_j wj 为 0。

2、图解分析02

带正则项,相当于为目标函数的解空间进行了约束。当参数为2维时,为对于L2正则项,解空间为原型,L1正则项解空间为菱形。最优解必定是有且仅有一个交点。除非目标函数具有特殊的形状,否则和菱形的唯一交点大概率出现在截距处(即对应某一维度参数为0)。而对于圆形的解空间,总存在一个切点,且仅当某些特殊情况下,切点才会位于坐标轴上。
在这里插入图片描述
当参数为3维时,假设目标函数为三维空间的平面。L2正则化解空间对应三维空间的球体。显然当解空间为对面体时,交点有更大的概率会位于坐标轴上。
在这里插入图片描述

3、梯度下降角度分析

在这里插入图片描述
用梯度下降的方法,当 w t w^t wt 小于1的时候,L2正则项的惩罚效果越来越小,L1正则项惩罚效果依然很大,L1可以惩罚到0,而L2很难。

L2的求导后为一阶函数,对于大的 w w w 参数,惩罚作用大,对于小的 w w w 参数,惩罚作用小,很难惩罚到0,实际上起到了把大参数和小参数趋向于平均的作用;

L1求导后为常数,无论对于大小参数,其惩罚作用一样,所以可以把小参数惩罚到0。




参考资料:
【通俗易懂】机器学习中 L1 和 L2 正则化的直观解释
【理论与实例】L1正则化为什么可以使模型参数具有稀疏性?
L1与L2正则化的区别与联系
L1正则化与L2正则化的理解
L1正则和L2正则的比较分析
比较全面的L1和L2正则化的解释
L1范数与L2范数的区别
L1为什么具有稀疏性
L1正则化引起稀疏解的多种解释
L1正则化与稀疏性

猜你喜欢

转载自blog.csdn.net/u013250861/article/details/113621998