我想找出并跟踪亚当的更新速度

lr_t <- learning_rate * sqrt(1 - beta2^t) / (1 - beta1^t)


我跟随另一篇文章,得到了图的节点

[n.name for n in tf.get_default_graph().as_graph_def().node]


我在其中发现

u'Adam/update',
u'Adam/value',
u'Adam',


我假设这三个可能是我正在寻找的更新学习率,但我不知道如何提取它。请帮忙

最佳答案

假设您已经定义了一个优化器:

optm = tf.train.AdamOptimizer(learning_rate = 0.01)
train_step = optm.minimize(L)


现在,您可以使用以下代码访问v_t和m_t:

optm.get_slot(W, 'v')
optm.get_slot(W, 'm')


这些值是张量,因此可以通过运行会话来评估它们。

W是一些先前定义的变量。

通过考试the source探索更多内容。

关于python - 在Tensorflow中提取Adam更新率,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39540977/

10-12 23:30