为什么说L2正则化可以防止过拟合,为什么引入L2可以对权重进行惩罚

简介: 笔记

在学习L2正则化的时候得到的一点心得体会,作为学习笔记,仅供参考。


个人理解,凡是可以减少过拟合的方法都可以称为正则化。


在深度学习中,L2正则(L1也可类似)是将权重w减小,对权重进行了惩罚,那么这是如何做到的?


这里我们假设原损失函数为:

21.gif



权重更新如下式所示,公式中w是权重,是学习率:


22.gif


现在给原损失函数添加L2正则化,首先知道L2是欧式距离,2范数,那么可得:


23.gif


30.gif是添加正则化后的损失函数,33.gif是引入的正则化系数,31.gif为引入的L2正则项。


其中31.gif还可以写成32.gif(用矩阵表示)。那么上式就可以变为如下所示:


24.gif


由于要对w求导,所以最后一项求导前面会产生一个系数2,为了简化运算,可将系数写成。


则可以写为:

25.gif



则现在的权重更新为:

26.gif

27.gif

28.gif

现在可以与原来的权重更新相比,可以看出在第一项对权重进行了缩减。那么为什么权重的衰减又可以防止过拟合呢?或是为什么加一些惩罚项就可以防止过拟合呢?其实可以这样理解(个人的一些看法),如果我们把损失函数通过泰勒展开,那么我们会得到很多的高次项,而也正是因为这些高次项,所以容易导致过拟合,那么我们就可以对高次项进行惩罚,让它尽可能的小或者对整体的贡献尽可能的小,如此一来就可以防止过拟合啦。


目录
相关文章
|
6天前
|
机器学习/深度学习 算法
大模型开发:什么是过拟合和欠拟合?你如何防止它们?
机器学习中,过拟合和欠拟合影响模型泛化能力。过拟合是模型对训练数据过度学习,测试集表现差,可通过正则化、降低模型复杂度或增加训练数据来缓解。欠拟合则是模型未能捕捉数据趋势,解决方案包括增加模型复杂度、添加特征或调整参数。平衡两者需通过实验、交叉验证和超参数调优。
37 0
|
6天前
|
机器学习/深度学习 PyTorch 算法框架/工具
训练误差与泛化误差的说明
训练误差与泛化误差的说明
29 0
|
6天前
|
机器学习/深度学习 算法 Serverless
大模型开发:描述损失函数的作用以及一些常见的损失函数。
损失函数在机器学习中至关重要,用于衡量预测误差、优化模型、评估性能及选择模型。常见类型包括均方误差(MSE)、均方根误差(RMSE)、交叉熵损失(适用于分类)、绝对误差(MAE)、hinge损失(SVMs)、0-1损失、对数似然损失和Focal Loss(应对类别不平衡)。选择时要考虑模型性质、数据特征和优化需求。
77 3
|
6天前
|
机器学习/深度学习
通过学习曲线识别过拟合和欠拟合
本文介绍了如何利用学习曲线识别机器学习模型中的过拟合和欠拟合问题。过拟合发生时,模型过于复杂,对训练数据过拟合,导致测试集表现不佳;欠拟合则是因为模型太简单,无法捕获数据模式,训练和测试集得分均低。学习曲线通过绘制训练和验证损失随训练样本增加的情况来辅助判断。对于过拟合,学习曲线显示训练损失低且随样本增加上升,验证损失降低但不趋近训练损失;欠拟合时,训练和验证损失都高,且两者随着样本增加缓慢改善。通过学习曲线,我们可以调整模型复杂度或采用正则化等方法优化模型泛化能力。
25 0
|
6天前
|
机器学习/深度学习 算法
什么是偏拟合和什么是过拟合,解决方法是什么
什么是偏拟合和什么是过拟合,解决方法是什么
21 0
|
6天前
|
机器学习/深度学习 PyTorch 算法框架/工具
基于PyTorch实战权重衰减——L2范数正则化方法(附代码)
基于PyTorch实战权重衰减——L2范数正则化方法(附代码)
65 0
|
8月前
|
机器学习/深度学习 自然语言处理
正则化
机器学习中的正则化(regularization)是一种常用的方法,用于防止模型过拟合(overfitting)。过拟合是指模型在训练集上表现很好,但在测试集或新数据上表现较差的情况。正则化通过在模型的目标函数中加入一个惩罚项(penalty term),来对模型的复杂度进行限制,从而避免模型在训练集上过于拟合。
59 0
|
12月前
|
机器学习/深度学习 算法
怎样处理过拟合和欠拟合?
怎样处理过拟合和欠拟合?
|
机器学习/深度学习 人工智能 测试技术
用 Dropout 正则化对抗 过拟合
用 Dropout 正则化对抗 过拟合
70 0
|
机器学习/深度学习 算法
八、过拟合问题
八、过拟合问题
八、过拟合问题