学习率知识点


学习率知识点

学习率调整方法

通常一开始的学习率很大,后期的学习率变小,需要调整学习率。
1)等间隔调整学习率
每隔一定的间隔,就按系数减小

2)多个间隔调整学习率
自己设置需要调整的间隔,各间隔的系数

3)按指数衰减学习率
γ是指数的底,通常设置为接近1的数,注意,是每个epoch都乘以γ的指数。

4)余弦周期调整学习率
T_max 是下降周期,经过该个周期,学习率从最大下降到最小,再经过该个周期,又上升到最大


warm up

warm up:是一种学习率优化方法(最早出现在ResNet论文中)。在模型训练之初选用较小的学习率,训练一段时间之后(如:10epoches或10000steps)使用预设的学习率进行训练。

为什么要用warm up?
1)因为模型的weights是随机初始化的,可以理解为训练之初模型对数据的“理解程度”为0(即:没有任何先验知识),在第一个epoches中,每个batch的数据对模型来说都是新的,模型会根据输入的数据进行快速调参,此时如果采用较大的学习率的话,有很大的可能使模型对于数据“过拟合”(“学偏”),后续需要更多的轮次才能“拉回来”;
2)当模型训练一段时间之后(如:10epoches或10000steps),模型对数据具有一定的先验知识,此时使用较大的学习率模型就不容易学“偏”,可以使用较大的学习率加速模型收敛;
3)当模型使用较大的学习率训练一段时间之后,模型的分布相对比较稳定,此时不宜从数据中再学到新特点,如果仍使用较大的学习率会破坏模型的稳定性,而使用小学习率更容易获取local optima。


学习率的影响

过大导致不收敛,欠拟合,很容易就忽略掉最优点;过小导致收敛慢或者无法学习,精度低,可能陷入局部最优的坑跳不出来。
一般step或者multi-step策略效果比较好,exp虽然下降平滑,但是不一定好
batch增大时,因为求的平均loss,总的iteration会减少,所以可以适当增加学习率。
一般刚开始训练时,[0.01, 0.001]比较好,训练结束时,下降100倍以上。
现在的论文好像都使用cos的方法,来进行多次迭代寻找最优

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值