【问题标题】:what's the behavior of tf.trian.optimizer when loss is a vector当损失是向量时,tf.trian.optimizer 的行为是什么
【发布时间】:2017-11-29 06:23:52
【问题描述】:

假设 log_prob 是一个向量而不是一个标量。下面的代码会做什么? 谢谢!

```

optimizer = tf.train.AdamOptimizer(0.001)
minimize = optimizer.minimize(log_prob)
session.run(minimize, feed_dict={action : act, feat : s_batch})

```

【问题讨论】:

  • 它只是将 log_prob 相加得到一个标量,而不是计算雅可比行列式。请参阅此处的讨论:github.com/tensorflow/tensorflow/issues/675
  • @AllenLavoie - 你能把你的评论变成答案吗,因为你已经确定了?谢谢!

标签: optimization tensorflow


【解决方案1】:

tf.gradients,因此 Optimizer minimize 调用,求和损失张量以获得标量而不是计算雅可比行列式。有关背景,请参阅 TensorFlow 中 Jacobians 的讨论:https://github.com/tensorflow/tensorflow/issues/675

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-04
    • 2021-10-24
    • 2018-07-04
    • 1970-01-01
    • 2019-08-19
    • 2020-06-01
    • 2020-04-27
    相关资源
    最近更新 更多