我正在尝试运行基于U-net架构的图像分割代码。在实验过程中,我发现Adam优化器的运行速度比动量优化器慢得多。我不确定这两个优化器之间是否是常见的观察结果?或者它应该是一个数据依赖的观察?
答案 0 :(得分:0)
这可能取决于你的框架;例如,MxNet的这个问题:https://github.com/dmlc/mxnet/issues/1516。根据我的经验,亚当倾向于收集更少的时代,但我意识到这与优化器运行速度不同。
答案 1 :(得分:0)
使用Adam的优化比使用Momentum的优化运行缓慢,因为前者需要为每个参数累积 第一和第二时刻的指数移动平均值,因为它是自适应学习速率算法。 相反,后者不需要跟踪过去的渐变,也不需要为每个参数应用具有不同值的更新规则。
因此,您的观察是正确的,但它不依赖于数据,它本身就是需要进行额外计算的优化算法,因此执行时间(对于每个列车步骤)都较慢。
优点是使用自适应学习速率算法,即使单个步骤较慢,您也可以更快地达到最小值。