1. 磐创AI-开放猫官方网站首页
  2. Medium

分心驾驶第四天 - LRScheduler


你好!在我的上一篇博客中,我使用MobileNet创建了一个基线模型。在验证数据集上的准确率为52.78%。今天,我试着调整了一个非常重要的超参数模型。

更快的实验

TensorFlow中的超参数调整是一个实验过程。为了缩短每次实验的持续时间,我决定暂时缩小训练和验证数据集的大小。我将文件路径和标签索引到前5000个样本,以减小数据集大小。

您可能已经注意到我在上一篇博客中放入ADAM优化器的一个小参数-学习率(LR)。LR确定优化器应该改进的速度。为了找到理想的学习率,TensorFlow有一个名为LRScheduler的回调。LRScheduler用不同的学习速率训练每个时代。我们稍后可以画出损失是如何随着每个时代的下降而下降的,以找到理想的学习率。在这个博客里,我会告诉你我是如何利用这一点来获得更好的结果的。LRScheduler

创建LRScheduler回调

LRScheduler接受函数作为参数。在代码中实现LRScheduler之后,代码如下所示:

我在此模型中去掉了EarlyStopping回调,以便该模型尝试不同的学习率,并更好地反映实际减少的损失。

用不同的LR绘制损耗波动图

我使用Matplotlib的半对数曲线图(它们是x和y坐标以10为底的对数的曲线图)。

输出如下:

我们可以通过设置曲线图的XLIM来进一步放大

我们可以将理想的学习率近似为3×10^-4=0.0003。

结论

在这个博客中,我们找到了我们模型的理想学习率。明天,我会用这个学习率再次训练这个模型。

好了,今天就到这里吧。再见!

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/07/27/%e5%88%86%e5%bf%83%e9%a9%be%e9%a9%b6%e7%ac%ac%e5%9b%9b%e5%a4%a9%e2%80%8a-%e2%80%8alrscheduler/

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息