【深度学习】常见的学习率衰减算法的介绍与选择

本文探讨了学习率衰减算法,如分段常数、指数、多项式和余弦衰减,及其在深度学习中的应用。同时介绍了warmup和线性缩放学习率等控制策略,旨在帮助模型更快更稳定地收敛。

前言

模型准确率的提高除了模型本身的设计学习的过程也十分重要,好的学习过程可以让模型更快更好地趋近于最优。而学习过程中除了学习算法,学习率的控制也尤为重要,固定值的学习率很容易最终不断振荡,无法实现收敛。本文主要整理介绍一些学习率衰减算法,同时也简单介绍一些例如warm up和batch size有关的学习率控制经验。

学习率衰减算法

注意:代码方面的用法仅供参考,还没来得及具体考证,准确起见还是看相应的注释吧。

1、分段常数衰减:固定步长/多步长

分段常数衰减比较好理解,基本思想是事先定义好训练区间,在不同的区间定义不同的区间设置不同的学习率的常数值。而根据区间长度是否固定还有固定步长衰减和多步长衰减。前者是每隔固定步数衰减一次,后者是根据设定的不同区间来更新。


PyTorch可以分别通过下面的代码实现,参数根据实际需要修改即可:
torch.optim.lr_scheduler.StepLR(optimizer_StepLR, step_size=step_size, gamma=0.65)
torch.optim.lr_scheduler.MultiStepLR(optimizer_MultiStepLR,
milestones=[200, 300, 320, 340, 200], gamma=0.8)

2、指数衰减/自然指数衰减

指数衰减即根据指数曲线进行衰减,一般来说开始衰减的快后来慢,根据设置的参数决定底数。
torch.optim.lr_scheduler.Expone

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值