Tensorflow 张量流图生成机制
当我试图理解以下tensorflow图形构建代码的基本机制时,我对第3行和第4行感到困惑。我假设在+运算符重载的一侧,加法器_节点构建对a和b的引用。然而,当加法器_节点在第4行执行时,区分a(a:3)和b(b:3)的机制是什么。比方说,如果占位符被值填充,并且如果加法器_节点同时引用了a和b,那么为什么我们必须再次传递这些参数Tensorflow 张量流图生成机制,tensorflow,graph,Tensorflow,Graph,当我试图理解以下tensorflow图形构建代码的基本机制时,我对第3行和第4行感到困惑。我假设在+运算符重载的一侧,加法器_节点构建对a和b的引用。然而,当加法器_节点在第4行执行时,区分a(a:3)和b(b:3)的机制是什么。比方说,如果占位符被值填充,并且如果加法器_节点同时引用了a和b,那么为什么我们必须再次传递这些参数 a = tf.placeholder(tf.float32) b = tf.placeholder(tf.float32) adder_node = a + b pr
a = tf.placeholder(tf.float32)
b = tf.placeholder(tf.float32)
adder_node = a + b
print(sess.run(adder_node, {a: 3, b: 4.5}))
a
、b
和adder\u节点都是图形中的节点
adder\u节点
知道获取a
和b
中的值并对其执行操作。图表如下所示:
当您执行sess.run(adder\u node)
时,您告诉tensorflow计算adder\u node
的值(即执行所有相关操作并执行adder\u node
)
为了计算adder\u节点
tf将计算a
和b
的值,它们是占位符,因此它们的操作是从提要中获取值。因此,每次需要计算adder\u节点
时,必须为占位符提供值,以便计算它们
{a:3,b:4.5}
并不是专门将参数传递给加法器节点
,而是将参数传递给图形
您可以使用此代码将a、b和c作为参数传递给图形,并使用加法器_节点将z和c相加:
a = tf.placeholder(tf.float32)
b = tf.placeholder(tf.float32)
c = tf.placeholder(tf.float32)
z = a + b
adder_node = z + c
print(sess.run(adder_node, {a: 3, b: 4.5, c: 1.5}))
a
、b
和adder\u节点都是图形中的节点
adder\u节点
知道获取a
和b
中的值并对其执行操作。图表如下所示:
当您执行sess.run(adder\u node)
时,您告诉tensorflow计算adder\u node
的值(即执行所有相关操作并执行adder\u node
)
为了计算adder\u节点
tf将计算a
和b
的值,它们是占位符,因此它们的操作是从提要中获取值。因此,每次需要计算adder\u节点
时,必须为占位符提供值,以便计算它们
{a:3,b:4.5}
并不是专门将参数传递给加法器节点
,而是将参数传递给图形
您可以使用此代码将a、b和c作为参数传递给图形,并使用加法器_节点将z和c相加:
a = tf.placeholder(tf.float32)
b = tf.placeholder(tf.float32)
c = tf.placeholder(tf.float32)
z = a + b
adder_node = z + c
print(sess.run(adder_node, {a: 3, b: 4.5, c: 1.5}))
“再次传递这些参数”是指向sess.run
提供feed\u dict
?通过“再次传递这些参数”,是指向sess.run
提供feed\u dict
?