以这个例子为例:
import tensorflow as tf
ph = tf.placeholder(tf.float32, shape=())
foo = tf.Print(ph, [ph], 'foo')
bar = tf.Print(ph, [ph], 'bar')
sess = tf.Session()
h = sess.partial_run_setup([foo, bar], [ph])
# query "foo"
sess.partial_run(h, foo, feed_dict={ph: 0})
# prints:
# bar[0]
# foo[0]
即使我只请求foo
,似乎foo
和 bar
操作都已运行。
那么我是对的,假设partial_run
总是计算fetches
中指定的所有partial_run_setup
(以及图中计算所需的所有其他操作),而不仅仅是这些在partial_run
中请求,例如在普通run
中?