如何选择深度学习模型中最优的学习率
PS:方法来自 Leslie N. Smith 在 2015 年的论文「Cyclical Learning Rates for Training Neural Networks」的第 3.3 节,
诀窍:从一个低学习率开始训练,并在每个批次中指数提高学习率,然后画出学习率与损失函数的变化趋势图像。例
图1 迭代次数与学习率与变化曲线 图2 学习率与损失函数变化曲线
从图2可以看出当学习率在0.1与0.01之间,损失函数变化最快。即最优的学习率大概在0.1左右。
结论:最优学习率在损失函数变化最快的点对应的学习率。
另一种方式是画出学习率与损失函数变化率(损失函数关于迭代次数的导数)的曲线。虽然看起来噪声比较大,可以用简单易懂平均线做缓化处理。例
图3 学习率与损失函数变化率
均化处理之后的曲线。可以看出损失函数变化率在0.1与0.01之间最小。得出同上结论。
具体 源码实现我在这里不再赘述可以查看博主的博文(http://blog.csdn.net/sfM06sqVW55DFt1/article/details/78684355)或者查看 「Cyclical Learning Rates for Training Neural Networks」一文(原文链接:https://medium.com/@surmenok/estimating-optimal-learning-rate-for-a-deep-neural-network-ce32f2556ce0;)。
————————————————
版权声明:本文为CSDN博主「SoftGit」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/fengzhongluoleidehua/article/details/79019747