Adam优化器算法

六眼飞鱼酱① 提交于 2019-12-16 21:32:52

 

上图就是Adam算法在深度学习中更新参数时应用的详细过程,下面对一些参数进行一下说明:

1、t:更新的步数(steps)

2、

:学习率,用于控制参数更新的步幅(stepsize)

3、

:要求解更新的参数

4、

:带有参数

的目标函数,通常指损失函数

5、g:目标函数对

求导的梯度

6、

:一阶矩衰减系数

7、

:二阶矩衰减系数

8、s:梯度g的一阶矩,即梯度g的期望

9、r:梯度g的二阶矩,即梯度

的期望

10、s三角:s的偏置矫正,考虑到s在零初始值情况下向零偏置

11、r三角:r的偏置矫正,考虑到r在零初始值情况下向零偏置

上图中while循环实现了整个Adam算法在梯度下降中的优化过程

1、计算目标函数对

的梯度

2、更新steps

3、计算梯度的一阶矩s,即过往梯度与当前梯度的平均,如上图s即是steps=t时的梯度一阶矩

4、计算梯度的二阶矩r,即过往梯度与当前梯度平方的平均,如上图r即是steps=t时的梯度二阶矩

5、修正梯度的一阶矩s,因为s的初始值为零,它容易向零偏置,这样处理后会减少这种偏置的影响,其公式中的

是指beat1的t次方

6、修正梯度的二阶矩r,因为r的初始值为零,它容易向零偏置,这样处理后会减少这种偏置的影响。

7、更新参数

,可以将

看成更新参数

的学习率,s三角:看成更新

参数的梯度

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!