在研究神经网络的自适应学习率时,使用哪个乘法和加法因子



我是神经网络的新手,为了掌握这个问题,我实现了一个基本的前馈MLP,我目前通过反向传播来训练它。我知道有更复杂和更好的方法可以做到这一点,但在《机器学习入门》中,他们建议使用一两个技巧,基本的梯度下降可以有效地从现实世界的数据中学习。其中一个技巧是适应性学习率

其思想是当误差变小时,将学习率增加一个常数a,当误差增大时,将学习率降低一个分数b。所以基本上学习率变化是由:

决定的
+(a)

如果我们在正确的方向学习,和

-(b * <learning rate>)
如果我们正在破坏我们的学习。然而,在上面的书中没有关于如何设置这些参数的建议。因为参数调优本身就是一个完整的主题,所以我不希望得到一个精确的建议,但至少是一个量级上的提示。什么好主意吗?

谢谢,
Tunnuz

我已经很长时间(10年以上)没有研究神经网络了,但是在看到你的问题之后,我想我应该快速地研究一下。我一直在网上看到相同的数字,关于增加因子(a)和减少因子(b) (1.2 &0.5 )。

我已经设法将这些值追溯到Martin Riedmiller和Heinrich Braun的RPROP算法(1992)。Riedmiller和Braun对合理参数的选择非常具体。

参见:RPROP:一种快速自适应学习算法

最新更新