当前位置:   article > 正文

常见的梯度优化算法(SGD、动量、Adagrad、RMSProp、Adam)的总结_sgd算法公式

sgd算法公式

常见的梯度优化算法(SGD、动量、Adagrad、RMSProp、Adam)的总结


SGD

随机梯度下降算法(Stochastic gradient descent,SGD)在神经网络模型训练中,是一种很常见的优化算法。这种算法是基于梯度下降算法产生的,所以要理解随机梯度下降算法,必须要对梯度下降算法有一个全面的理解。
先来看一下公式
θ t + 1 = θ t − η g t \theta_{t+1} = \theta_{t} - \eta g_t θt+1=θtηgt
这里面 g t g_t gt表示的是我们通过求导求出来的梯度值, θ t + 1 \theta_{t+1} θt+1表示的是更新后的参数, θ t \theta_t θt表示的是更新前的参数。可以看到如果使用SGD算法,他只是单纯的对于求出来的梯度乘上一个系数然后进行下降。

动量

动量法是传统梯度下降法(SGD)的一种扩展,它比SGD更高效。动量法又被称作基于动量的梯度下降法(SGD with momentum),是一种使梯度向量向相关方向加速变化、最终实现加速收敛的方法。动量法是一种非常受欢迎的优化算法,并被用于当下的很多模型中。
看一下公式:
V t = γ V t − 1 + η g t V_t = \gamma V_{t-1} + \eta g_t Vt=γVt1+ηgt
θ t + 1 = θ t − V t \theta_{t+1} = \theta_t - V_t θt+1=θtVt
通过第二个式子和SGD的对比,我们可以发现,SGD里面的 η g t \eta g_t ηgt被换成了

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/886638
推荐阅读
相关标签
  

闽ICP备14008679号