首页 > 解决方案 > Yolo 学习率没有意义?

问题描述

所以在我的 cfg 文件中,我的学习率设置为

learning_rate=0.001
max_batches = 402000
policy=steps
steps=-1,100,2000,30000
scales=.1,10,.1,.001

据我了解,这意味着它从 0.001 开始,迅速变为 0.0001,然后在 100 步时变回 0.001,然后在 2000 步时 = 0.0001,然后在 30000 步时将变为 0.000001。但我在这里

309360: 0.000222, 0.015274 avg, 0.001000 rate, 0.112701 seconds, 4949760 images

并且学习率仍然是0.001。我错过了什么吗?这不是学习率缩放的工作原理吗?

这是使用暗网的 Yolov3-tiny。

标签: yolodarknet

解决方案


正如 AlexeyAB 在手册中所示,您的步骤 = max_batches 0.8,max_batches 0.9。我更喜欢你像这样设置你的步数和比例:steps = 321600,361800 scales = .1,.1 在burn_in之前你的学习率会很低(有时是0.000000,因为你会有10^-15)。在burn_in 之后,它应该成为cfg 中定义的学习率。在 321600 次迭代之后,学习率应该增长 10%,这发生在 361800 次迭代之后。


推荐阅读