TensorFlow的sees.run与张量输入

时间:2019-12-05 21:19:21

标签: tensorflow

我试图理解TensorFlow代码。在该程序中,模型定义为

def fcn(x):
    ...
    return [out1, out2]

然后,在训练模型之后以及评估期间,

z = sample(100)  # generate sample inputs
samples = sess.run(fcn(X), feed_dict={X: z})
samples[0] = np.argmax(samples[0], axis=2)
samples[1] = np.argmax(samples[1], axis=3)
samples[1] = sess.run(samples[1] - tf.matrix_band_part(samples[1],0,0))

我的问题是关于sess.run。第一次使用时,我们提供了一个模型及其输入。在这种情况下,很直观,我们应该期望模型输出。我不了解的是我们第二次使用sess.run。将修改后的输出输入回sess.run是什么意思?我无法通过查看official doc来解决问题。

1 个答案:

答案 0 :(得分:0)

我认为这是原因。如果您有更完整的解决方案,请随时发布。

  

评估a的实际值的最简单方法   Tensor对象将其传递给Session.run()方法,或调用   Tensor.eval()(如果您有默认会话)(即在with tf.Session():块中,或参阅下文)。一般来说,你   无法在不运行某些代码的情况下打印张量的值   会议。