Pytorch学习笔记——正则化

1. 正则化概念

正则化是一种防止机器学习模型过拟合的技术,通过在损失函数中添加惩罚项,抑制模型过于复杂,避免其过于拟合训练数据中的噪声。在神经网络的训练过程中,通过限制模型的复杂度,增强其泛化能力,使模型在新数据上的表现更好。常见的正则化方法有以下几种:

  1. L2正则化(权重衰减):在损失函数中添加权重参数的平方和的惩罚项。
  2. L1正则化:在损失函数中添加权重参数绝对值和的惩罚项。
  3. Dropout:在训练过程中随机丢弃一部分神经元,防止神经元之间的共适应性。

2. 两种常见的正则化

2.1 L2正则化

L2正则化,也称为权重衰减,是最常用的正则化方法之一。它通过在损失函数中添加权重参数平方和的惩罚项,防止权重变得过大。损失函数变为
L total = L original + λ ∑ i w i 2 L_{\text{total}} = L_{\text{original}} + \lambda \sum_{i} w_i^2 Ltotal=Loriginal+λiwi2
在PyTorch中,可以通过在优化器中设置weight_decay参数来实现L2正则化。例如:

optimizer = torch.optim.SGD(model.parameters(), lr=0.01, weight_decay=0.01)
2.2 L1正则化

L1正则化通过在损失函数中添加权重参数绝对值和的惩罚项,使得一些权重参数趋向于零,从而实现特征选择。损失函数变为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值