pytorch - Pytorch 调度程序:如何减少 LR 时期
问题描述
我正在 pytorch 中训练一个网络并ReduceLROnPlateau
用作调度程序。我verbose=True
在参数中设置,我的调度程序打印如下内容:
Epoch 159:将学习率降低到 6.0000e-04。
Epoch 169:将学习率降低到 3.0000e-04。
Epoch 178:将学习率降低到 1.5000e-04。
Epoch 187:将学习率降低到 7.5000e-05。
我想以某种方式获取时期,以便获得一个列表,其中包含调度程序降低学习率的所有时期。就像是:lr_decrease_epochs = ['159', '169', '178', '187']
哪种方法最简单?
解决方案
我认为调度程序不会跟踪这一点(至少我在源代码中没有看到类似的东西),但您可以在训练循环中跟踪这一点。
每当学习率发生变化 ( scheduler.get_lr()
) 时,您只需记录当前 epoch。
推荐阅读
- ios - UIDocumentPickerViewController 在 iOS 10 中失败
- python-3.x - 运行 python 的 ray packge 调优时无法腌制 _thread.RLock 对象(超参数调优)
- java - 如何创建带边框的颜色样式面板?
- angular - 如何在 Angular 组件中获取 html 元素类?
- javascript - vaadin-grid 聚合物中的行点击事件
- javascript - 将单个值传递给每个元素的解决方案
- android - 如何在flutter中从dart文件中调用android活动
- primefaces - 显示/隐藏基于 primefaces p:fileUpload 的另一个元素
- c# - 如何将模型项列表返回到 ASP.NET Core SelectListItem?
- html - 如何在表单的输入之间添加垂直空间?