学习率调度
- 其实梯度下降优化的核心目标就是希望“更快更好”的找到最小值点,归一化是通过修改损失函数(改进梯度下降过程)来达成这个目标
- 归一化让梯度下降过程更贴合梯度方向,而且梯度更大
- 而所谓学习率调度,则是通过调整学习率来达到这个目标
- 值得注意的是,此时找到一个确定的最优学习率并不是目标,“更快更好”找到最小值点才是目标,因此我们完全可以考虑在迭代过程动态调整学习率
- 而所谓学习率调度,也并不是一个寻找最佳学习率的方法,而是一种伴随迭代进行、不断调整学习率的策略
- 学习率调度方法有很多种,目前流行的也达数十种之多,而其中一种最为通用的学习率调度方法是学习率衰减法,指的是在迭代开始时设置较大学习率,而伴随着迭代进行不断减小学习率。通过这样的学习率设置,能够让梯度下降收敛速度更快、效果更好
实践过程
- 我们不妨设置一个减速衰减的学习调度策略
# 0.95是公认的比较好的值 lr_lambda = lambda epoch: 0.95 **