Adam 优化算法

栏目: 编程工具 · 发布时间: 7年前

内容简介:在深度学习的发展过程中出现过很多优化算法,但是有些优化算法并不能被非常广泛地使用,因此出现了一些质疑优化算法的声音。但是当有人尝试将动量梯度下降和 RMSprop 结合起来后,人们发现这种新的优化算法效果非常好而且在很多问题上的表现都不错,后来便广泛地使用了起来。Adam 算法本质上是将动量梯度下降算法和 RMSprop 结合了起来。如果读过前几篇文章,那么对下面的算法描述一定不陌生:

在深度学习的发展过程中出现过很多优化算法,但是有些优化算法并不能被非常广泛地使用,因此出现了一些质疑优化算法的声音。但是当有人尝试将动量梯度下降和 RMSprop 结合起来后,人们发现这种新的优化算法效果非常好而且在很多问题上的表现都不错,后来便广泛地使用了起来。

Adam 算法本质上是将动量梯度下降算法和 RMSprop 结合了起来。

如果读过前几篇文章,那么对下面的算法描述一定不陌生:

第 t 次迭代:

①. 在当前的 mini-batch 上计算 dW, db

②. \(v_{dW} = β_1 · v_{dW} + (1 - β) · dW\),\(v_{db} = β_1 · v_{db} + (1 - β) · db\)

③. \(s_{dW} = β_2 · s_{dW} + (1 - β) · dW^2\),\(s_{db} = β_2 · s_{db} + (1 - β) · db^2\)

④. \(v^{corrected}_{dW} = \cfrac{v_{dW}}{1 - \beta_1^t}\),\(v^{corrected}_{db} = \cfrac{v_{db}}{1 - \beta_1^t}\)

⑤. \(s^{corrected}_{dW} = \cfrac{s_{dW}}{1 - \beta_1^t}\),\(s^{corrected}_{db} = \cfrac{s_{db}}{1 - \beta_1^t}\)

⑥. \(W := W - α · \cfrac{v_{dW}^{corrected}}{\sqrt{s_{dW}^{corredted}} + \epsilon}\)

⑦. \(b := b - α · \cfrac{v_{db}^{corrected}}{\sqrt{s_{db}^{corredted}} + \epsilon}\)

这实际上就是将前面几篇文章里的算法放在了一起,其中为了区分清楚,动量梯度下降中的参数 \(\beta\) 替换成了 \(\beta_1\),即上面的 ②;RMSprop 中的参数 \(\beta\) 替换成了 \(\beta_2\),即上面的 ③。

另外,④、⑤ 两步的目的是消除偏差,可以参考 指数加权平均 这篇文章。

⑥、⑦ 两步中的 \(\epsilon\) 是一个非常小的数,其目的是防止分子除以 0,因此加上了一个非常小的数以防止这种情况出现。

这个算法中有很多超参数:

  • \(\beta_1\):动量梯度下降中的参数,通常取 0.9
  • \(\beta_2\):RMSprop 中的参数,通常取 0.999
  • \(\alpha\):学习率,这个参数需要在实践中调整
  • \(\epsilon\):防止分母为 0 的参数,通常取 \(10^{-8}\)

Adam 算法这个名字的由来是 Adaptive Moment Estimation,即自适应矩估计,因为动量梯度下降计算的是导数的粗略平均值,即一阶矩,而 RMSprop 计算的是导数平方的粗略平均值,即二阶矩,这就是 Adam 优化算法名字的由来。

以上就是对 Adam 优化算法的简要介绍,Adam 在很多场合都可以使用,它被嵌入在了许多深度学习框架之中,可以直接使用。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人类2.0

人类2.0

皮埃罗∙斯加鲁菲(Piero Scaruffi) / 闫景立、牛金霞 / 中信出版集团股份有限公司 / 2017-2-1 / CNY 68.00

《人类2.0:在硅谷探索科技未来》从在众多新技术中选择了他认为最有潜力塑造科技乃至人类未来的新技术进行详述,其中涉及大数据、物联网、人工智能、纳米科技、虚拟现实、生物技术、社交媒体、区块链、太空探索和3D打印。皮埃罗用一名硅谷工程师的严谨和一名历史文化学者的哲学视角,不仅在书中勾勒出这些新技术的未来演变方向和面貌,还对它们对社会和人性的影响进行了深入思考。 为了补充和佐证其观点,《人类2.0......一起来看看 《人类2.0》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具