使用feed和fetch可以为任意的操作(Operation/op)赋值或者从其中获取数据。
1.feed表示给变量赋值,用的时候实际是feed_dict={变量1:值1,变量2:值2}这种字典的形式
2.fetchs表示获取操作op所对应的结果。
(1)若是只获取一个操作的结果,就直接sess.run(op名);
(2) 若是行获取多个操作的结果,两种方式:
一是同时获取结果:实现方法是:sess.run(fetches=[操作1名,操作2名…])
二是,一个一个获取,实现方法是:
sess.run(操作1名)
sess.run(操作2名)
…
# 变量可以通过feed机制修改变量值
a = tf.Variable(1.0, name='a', dtype=tf.float32)
b = tf.constant(2.0, dtype=tf.float32)
c = tf.add(a, b)
init_op = tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init_op)
print(sess.run(a, feed_dict={a: 2.0})) # 说明变量可以通过feed机制修改变量值