Yos*_*tik 2 optimization adam keras tensorflow
这是张量流优化器的链接。您可以看到,RMSprop 将动量作为参数,而 Adam 没有这样做。所以我很困惑。Adam 优化假装是具有动量的 RMSprop 优化,如下所示:
Adam = RMSprop + 动量
但为什么 RMSprop 有动量参数而 Adam 没有呢?
虽然“ Adam 是带有动量的 RMSProp ”这一表述确实被广泛使用,但这只是一个非常粗略的简写描述,不应该只看其表面价值;最初的Adam 论文中已经明确阐明了这一点(第 6 页):
\n\n\n\n\n带动量的 RMSProp 和 Adam 之间有一些重要的区别:带动量的 RMSProp 使用重新缩放的梯度上的动量生成其参数更新,而 Adam 更新是使用梯度的一阶矩和二阶矩的运行平均值直接估计的。
\n
有时,作者明确表示主题表达只是一个松散的描述,例如在(强烈推荐)梯度下降优化算法概述(添加了重点)中:
\n\n\n\n\nAdam 还保持过去梯度 mt 的指数衰减平均值,类似于动量。
\n
或者在斯坦福 CS231n:用于视觉识别的 CNN(再次强调)中:
\n\n\n\n\nAdam 是最近提出的一个更新,看起来有点像带有动量的 RMSProp。
\n
也就是说,其他一些框架确实包含momentumAdam 的参数,但这实际上就是beta1参数;这是CNTK:
\n\n\n动量(浮点数、列表、输出
\nmomentum_schedule())\xe2\x80\x93 动量表。请注意,这是 Adam 论文中的 beta1 参数。有关更多信息,请参阅这篇 CNTK Wiki 文章。
所以,不要太从字面上理解,也不要因此而失眠。
\n| 归档时间: |
|
| 查看次数: |
5457 次 |
| 最近记录: |