在以下示例中打印出节点“c
”的值时,对我来说,似乎print sess.run(c)
和print c.eval()
之间没有区别。我可以假设sess.run(c)
和c.eval()
是等价的吗?或者有什么不同吗?
import tensorflow as tf
a = tf.Variable(2.0, name="a")
b = tf.Variable(3.0, name="b")
c = tf.add(a, b, name="add")
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
print sess.run(c)
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
print c.eval()
答案 0 :(得分:2)
在张量号you are basically calling tf.get_default_session().run(c)
上呼叫c.eval()
时。这是一个方便的捷径。
但是,Session.run()
更为通用。