先说占位符
tensorflow
里对于暂时不进行赋值的元素有一个称呼叫占位符。所谓占位符,顾名思义,先占着茅坑不拉屎,等需要时再赋值。所需要的命令为tf.placeholder
,具体代码为:
feed_dict
feed_dict
就是用来赋值的,格式为字典型。比如,对上一章节中的a
进行赋值。有feed_dict={a:8}
。我们把a赋值前后整体连起来看下:
import tensorflow as tf
a = tf.placeholder(tf.float32)
b = tf.placeholder(tf.float32)
multiply = tf.multiply(a,b)
with tf.Session() as sess:
c=sess.run(multiply,feed_dict={a:8,b:2})
print(c) #16.0
sess.close()
先对a补充一个占位符,当我们sess.run
时候,我们需要赋值。我们定义一个变量,multiply
,为a*b
。在run时通过feed_dict以字典形式赋值,生成乘积16.
TensorFlow有一个内置的API——Dataset,它更容易完成这项任务,因此,使用内置的输入管道(Pipeline),不要使用‘feed-dict’。