在 TensorFlow 中使用 session.run([]) 评估损失

Evaluation of loss with session.run([]) in TensorFlow

对于简单的梯度下降,我使用这个:

_, l, predictions = session.run([optimizer, loss, train_prediction]) 其中优化器操作最小化损失。

但是我在优化器之后输入损失,所以损失会在每次评估两次。运行(),一次使用初始权重,然后使用更新的权重?

获取的张量列表中元素的顺序无关紧要(捕获 Python 侧的值除外)。它们都将在同一评估期间执行。

在您的示例中,损失只会被评估一次,并且任何可以在 [optimizer, loss, train_prediction] 之间共享的计算都将被共享。