Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Tensorflow是否对每个sess.run()节点重用计算?_Python_Tensorflow - Fatal编程技术网

Python Tensorflow是否对每个sess.run()节点重用计算?

Python Tensorflow是否对每个sess.run()节点重用计算?,python,tensorflow,Python,Tensorflow,在Tensorflow的Session.run()函数()的文档中,据说fetches参数可以是一个节点列表,以同时获得多个图形节点的输出,而不是一个 我的问题是,如果这些节点是相关的,并且它们之间有依赖关系,那么计算是共享的还是每个节点都有自己的计算 让我用一个例子更好地解释。假设我们有以下计算图: import tensorflow as tf a = tf.placeholder("float") b = tf.mul(a,3) c = tf.mul(b,-2) se

在Tensorflow的
Session.run()
函数()的文档中,据说
fetches
参数可以是一个节点列表,以同时获得多个图形节点的输出,而不是一个

我的问题是,如果这些节点是相关的,并且它们之间有依赖关系,那么计算是共享的还是每个节点都有自己的计算

让我用一个例子更好地解释。假设我们有以下计算图:

import tensorflow as tf
a = tf.placeholder("float")
b = tf.mul(a,3)
c = tf.mul(b,-2)

sess = tf.Session()
print(sess.run([b, c], feed_dict={a:2}))
输出将是

[6.0, -12.0]
但是获得
b
的计算是否会被重用以获得
c
?或者,
b
c
是否会独立计算,即使它们共享一些操作

我的猜测是,计算将被重用,但我在文档中找不到答案


谢谢

是的,计算是重复使用的。这是一个非常简单的优化,因此如果不实现它将是愚蠢的。好的,谢谢,我以为计算会被共享,但我不确定。谢谢你的确认!