为什么张量流常数是可馈送的 true



我正在学习张量流

import tensorflow as tf
print(tf.VERSION)
a = tf.placeholder(tf.float32, shape=[3])
b = tf.constant([2, 2, 2], tf.float32)
c = a + b
with tf.Session() as sess:
    print(tf.get_default_graph().is_feedable(b))
    print(sess.run(c, feed_dict={a: [3, 2, 3]}))

其输出如下

1.0.1
True
[ 5.  4.  5.]

我不明白为什么张量流说常数是可喂的。占位符是可喂的,但为什么恒定?

因为在 TF 中,您还可以在常量和变量中馈送值:

虽然您可以将任何张量替换为源数据,包括变量和常量,但最佳做法是使用 tf.占位符节点

自己检查一下:

import tensorflow as tf
a = tf.constant([2, 2, 2], tf.float32)
with tf.Session() as sess:
    print(sess.run(a, feed_dict={a: [3, 2, 3]}))

常量a改变了它的值。

最新更新