我正在学习张量流
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
改变了它的值。