例如,如果要使用手动学习速率,则初始学习速率为0.01,在10000步之后,衰减学习速率为0.001,在20000步之后,衰减学习速率为0.0001。

我怎么知道这些需要降低学习速度的步骤?有什么经验可以指导我吗?

我们通常可以在纸上找到这些步骤,但是作者如何获得这些步骤?

最佳答案

良好的初始学习率应尽可能高,而不会导致错误发散。这是通过反复试验发现的。猜测一些典型的初始学习率,例如0.01,运行几个历时,然后看看会发生什么。如果误差在发散,则除以10,否则乘以10。在遇到发散错误之前,先设置最大值。

降低学习率的好时机是您发现错误似乎不再有所改善了。例如,您在lr = 0.01时运行了100个纪元,并且误差趋于平稳。尝试将学习率降低到0.001。

您也可以考虑使用learning rate decay设置时间表以自动降低学习率。

08-25 14:55
查看更多