tf.train.AdamOptimizer()函数解析
栏目:行业资讯 发布时间:2024-07-22
tf.train.AdamOptimizer()函数是Adam优化算法:是一个寻找全局最优点的优化算法,引入了二次方梯度校正。参数:learning_rate:张量或浮点值。学习速率beta1:一个浮点值或一个常量浮点张量。一阶矩估计的指数衰减率b

tf.train.AdamOptimizer()函数是Adam优化算法:是一个寻找全局最优点的优化算法,引入了二次方梯度校正。

 

参数:

  • learning_rate:张量或浮点值。学习速率
  • beta1:一个浮点值或一个常量浮点张量。一阶矩估计的指数衰减率
  • beta2:一个浮点值或一个常量浮点张量。二阶矩估计的指数衰减率
  • epsilon:数值稳定性的一个小常数
  • use_locking:如果True,要使用lock进行更新操作
  • name:应用梯度时为了创建操作的可选名称。默认为“Adam”

本质上是带有动量项的RMSprop,它利用梯度的一阶矩估计和二阶矩估计动态调整每个参数的学习率。Adam的优点主要在于经过偏置校正后,每一次迭代学习率都有个确定范围,使得参数比较平稳。
在这里插入图片描述

实际上运行tf.train.AdamOptimizer(),除了利用反向传播算法对权重和偏置项进行修正外,也在运行中不断修正学习率。根据其损失量学习自适应,损失量大则学习率大,进行修正的角度越大,损失量小,修正的幅度也小,学习率就小,但是不会超过自己所设定的学习率。

 

参考文章
tensorflow tf.train.AdamOptimizer

平台注册入口