【机器学习】【深度学习】正则化(Regularization)

概念

正则化(Regularization)是在机器学习模型中避免过拟合的一种技术。它通过引入一个惩罚项(即正则项)来限制模型的复杂度,以此来提防模型过度依赖训练数据,捕获数据中的噪音信息而导致过拟合现象。简单来说

当你的模型出现过拟合时,会发生什么?过拟合意味着模型具有很高的方差(高方差意味着模型对训练数据中的微小变化非常敏感),当你的模型中的参数越多,模型的灵活性就越大(拟合能力强),在模型中调整的东西越多,就越有可能有高方差。此时正则化就有用了。正则化是限制模型灵活性的一种方法,可以避免过拟合,具体就是降低网络中的权重。

img

如图,上面这个神经网络的权重意味着输入的重要性,右图是单输入单输出,这个函数很接近输入值,所以过拟合时夸大了某个输入的重要性。如果降低权重,那么就可以缓解过拟合了,这也就是第一种正则化方式。

还有一种降低权重进而缓解过拟合的理解方式:

img

例如我们现在要把右图的灰色和绿色点区分开,需要使用神经网络进行拟合函数,若函数有n次项,那么预测函数就会有n个弯曲点,弯曲点越多在某种程度上表示拟合度更大,所以我们需要减少高次项或者其权重(高次项的系数)。高次项系数越小,那么弯曲程度约不明显,也就缓解了过拟合。

正则化有两种方式,第一种是限制模型的灵活性,例如有L1正则化,L2正则化,Dropout和Early Stoping。第二种是数据增强。

第一种正则化方式

L1和L2正则化的想法是把权重添加到损失计算或成本函数中,用来惩罚有高权重的网络。L1和L2的区别就是L1是把所有参数的绝对值之和作为惩罚,而L2是把所有参数的平方和作为惩罚。

img

L1正则化

L1正则化鼓励网络把权重降低到0,这样的话某些输出甚至就不会在网络中被计算了。这样的结果就是得到了更稀疏的网络。

L2正则化

而L2正则化会得到参数的平方和,平方相比于小参数,会夸大那些本来就很大的参数。这样的话网络中的权重会有差异,但是L2正则化结束后不会真正的得到稀疏的网络,而是时参数均匀减小。

这两种正则化都有一个名为α的参数,调整α会改变惩罚的力度。

img

L1和L2正则化如何惩罚神经网络?L1 和 L2 正则化通过在损失函数中加入参数的绝对值和或平方和,分别惩罚模型的参数。这两种正则化方法可以有效防止过拟合,提高模型的泛化能力。

Dropout正则化

Dropout正则化是在每个训练的步骤中,每个神经元都有丢弃率(Dropout Rate)p的机会是被激活或者不被激活的。需要注意的是,Dropout是在训练时会使神经元失活,而测试时不会。

img

Early Stoping

Early Stoping就是在Test Loss升高之前停止训练,这样的话模型也不会过拟合。

第二种正则化方式

数据增强

数据增强通过在现有的训练样本上应用随机修改,比如旋转、缩放、裁剪或水平翻转,来增加训练数据的多样性。这样可以让模型在不同的场景中都能做出正确的预测,增强模型的泛化能力。

img

例如:如果我们正在训练一个图像分类器来识别狗,可能会遇到如下的问题:训练数据只包含了狗正面的图片,但我们希望模型能够识别所有角度的狗。这时,我们可以对训练图片进行旋转、翻转等操作,生成不同角度的狗的图片,然后把这些图片加入到训练数据中。这样,即使在测试阶段遇到了从未见过的狗的角度,模型也能给出正确的预测。

推荐视频:https://www.youtube.com/watch?v=EehRcPo1M-Q

  • 28
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 正则化是一种用于限制模型复杂度的正则化技术,它使学习算法更健壮,更稳定,更可靠。它通过向模型添加附加项(正则化项),以降低模型复杂度。正则化项可以是L1正则化(Lasso正则化)或L2正则化(Ridge正则化)等。 ### 回答2: 在机器学习中,正则化是一种通过在模型的损失函数中引入惩罚项来避免过拟合的技术。其原理是通过约束模型的复杂度,使得模型更加简单而具有较好的泛化能力。 正则化主要有两种形式:L1正则化和L2正则化。L1正则化引入了模型参数的绝对值之和作为惩罚项,即通过最小化损失函数和正则化项的和来寻找最优解。L2正则化则引入了模型参数的平方和作为惩罚项,即通过最小化损失函数和正则化项的和来寻找最优解。 正则化的原理是通过对模型参数进行约束,可以使得某些参数趋近于0,从而实现特征选择和降低模型复杂度的目的。L1正则化倾向于产生稀疏解,即只有部分参数非0,从而实现特征选择,有助于模型的解释性。而L2正则化则倾向于参数趋近于0而非完全为0,可以降低模型的复杂度,并避免过拟合。 正则化可以有效地控制模型的复杂度,在训练过程中通过平衡拟合程度和模型复杂度来选择最优解。当正则化力度较大时,模型会更加关注减小正则化项,从而更加趋向于简单的模型。当正则化力度较小时,模型会更加关注拟合训练数据,可能导致过拟合。 总之,正则化机器学习中用于避免过拟合、提高模型泛化能力的重要技术。通过限制模型的复杂度,正则化可以提高模型的性能和稳定性。 ### 回答3: 机器学习中的正则化是一种通过添加惩罚项来控制模型复杂度的技术。正则化的目的是防止模型过拟合(overfitting),即在训练数据上表现优秀但在新数据上表现较差的情况。 正则化的原理是在模型的损失函数中,加入一个额外的惩罚项,以限制模型参数的取值范围。这个惩罚项可以是L1正则化(L1 regularization)或者L2正则化(L2 regularization)。 L1正则化通过在损失函数中加入模型参数的绝对值之和乘以一个超参数lambda的惩罚项,使得模型参数趋向于稀疏化。通过L1正则化,可以使得模型自动选择重要的特征,并且减少不相关或冗余特征的影响。 L2正则化通过在损失函数中加入模型参数的平方之和乘以一个超参数lambda的惩罚项,使得模型参数的取值更加平滑。通过L2正则化,可以减小模型参数的大小,并且降低模型训练数据中的噪声的敏感性。 正则化的原理是在训练模型时,通过调整惩罚项的权重,平衡拟合训练数据和控制模型复杂度之间的关系。正则化在一定程度上约束了模型的自由度,使得模型更加稳定、泛化能力更强,从而能够更好地适应新数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值