weight_decay
import torch.optim as optim from torch.optim.lr_scheduler import CosineAnnealingLR opt optim.Adam(parameters, lrargs.lr, weight_decay1e-4) # CosineAnnealingLR 余弦退火调整学习率 lr_scheduler torch.optim.lr_scheduler.CosineAnnealingLR(opt, T_maxargs.epochs, eta_min0, last_epoch-1)余弦退火调整学习率什么是权重衰减/权重衰退-weight_decayL2正则化L2 正则化也叫权重衰减Weight Decay。主要作用是为了解决过拟合在损失函数中加入L2正则化项。L2的核心是对模型所有参数权重w做平方求和加到原始损失函数里。设原始损失如MSE交叉熵为Loss0L2正则项完整总损失wi:模型各层权重参数偏置b一般不加L2λ正则化系数超参数直观理解就是惩罚权重绝对值过大只要权重不为0平方项就会增加损失迫使模型在更新的过程中这部分的权重变小为什么L2可以防止过拟合过拟合的本质是模型学到训练集噪声、极端样本权重变得极大曲线剧烈波动在测试集泛化差L2的三条核心作用机制1.惩罚大权重约束模型复杂度优化时不仅要降低预测误差还要压低权重平方和加入L2梯度后更新公式还有其他的防止过拟合的办法比如early stop,dropout等