机器学习---正则化方法

正则化方法

一、正则化的主要方法有:

  • L2正则化
  • dropout
  • 数据增广
  • early stopping
  • Bagging
  • 在样本中增加噪声

L2正则化是一种常用的正则化方法,也被称为权重衰减。它通过在损失函数中添加一个正则化项,来惩罚模型的复杂度,从而防止过拟合。L2正则化的正则化项是模型参数的平方和,即:

L2正则化项 = λ * ||w||^2

其中,λ是正则化强度超参数,w是模型参数。

L2正则化的作用是使得模型参数更加平滑,避免出现过于复杂的模型。在神经网络中,L2正则化可以通过在反向传播时对梯度进行调整来实现。

模型复杂度是由模型的参数量和参数的大小范围所决定的

L1、L2正则化是降低参数的大小范围

Dropout是降低参数量,这样神经元的输入会随机的被失活,下一层神经元不会完全的依赖某一个神经元的输入,这样每个神经元的权重都会降低,这样模型的复杂度也会随之降低,这样Dropout也起到了L2正则化的作用。

   

L1通常用于增加稀疏性,L2一般用于减小“复杂度”,且L2有唯一解

如果用标准的梯度下降法或是随机梯度下降,那么L2正则化和权重衰减是等价的。这也是我在视频里讲到的。如果是用Adam这样的优化后的算法,那么权重衰减和L2正则化就不等价了, 这个时候用权重衰减效果更好

如何解决过拟合问题?L1、L2正则化及Dropout正则化讲解_哔哩哔哩_bilibili

理解二:

二、正则化的概念

凡是能解决模型泛化误差而不是训练误差的方法,都被称为正则化。
模型的泛化误差主要是由模型过拟合引起的,所以正则化的各种方法用于解决模型过拟合的问题。

三、避免模型过拟合----L1正则化和L2正则化

L1和L2正则化的核心思想就是限制模型参数的取值范围。 模型取值范围大同样可以训练出一个泛化能力强的模型,那为什么要限制模型参数的取值范围呢?

模型取值范围大同样可以训练出一个泛化能力强的模型,但是出现过拟合的几率也大大提升了(可以选择的范围大,自然就选了一整套相互配合起来可以让损失最小的参数,但是这些参数有可能只是在迎合训练集)。另一方面,参数取得太大会放大输入模型的样本之中的噪声,让输出结果失真。

综上所述,无论是从参数取值范围大会提高过拟合几率的角度来看,还是从参数太大会放大噪声的角度来看,参数取值范围太大都是非常不利的,所以需要对范围进行限制。

明白了L1L2正则化的核心思想就是限制模型参数的取值范围之后,来解决下一个问题:如何减小模型参数的取值范围?

首先,理解一下L1和L2正则化中的L1和L2是什么意思。L1和L2就是L1范数和L2范数。L1范数是我们非常熟悉的曼哈顿距离,L2范数也是非常熟悉的欧式距离。对于一个向量 ω 而言,其L1范数和L2范数分别是:

在损失函数之中,在尾项之中加入L2正则项,为梯度下降加入减小权重的目标,就可以在减小损失的同时减小权重。假设原本的损失函数是ι ( ω , b ),改正之后的损失函数是:

其中,λ \lambdaλ是一个超参数,用来控制正则项的惩罚力度。越大,则最终权重会越小。

L1范数和L2范数作为正则项的区别在于,L1范数可以带来稀疏性。从L1范数的图像之中可以看出,L1正则化之后的损失函数想要最小

化,ω的取值相比起L2正则化更容易接近或者落在坐标轴上,这意味着会将某些权重的值设置为0或者接近于0,权重消失或者接近于消失,就是所谓“带来稀疏性”。

由于λη是小于1的,所以每一次梯度下降的时候,权重都会衰减。

故L2正则化也称为权重衰减。

参考二原文链接:https://blog.csdn.net/weixin_52808620/article/details/130599748

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值