TensorFlow的前后端的连接依靠于session,使用TensorFlow程序的流程构建计算图完成之后,在session中启动运行。
目前本人接触到的会话创建的方法有两种:InteractiveSession()和Session()
InteractiveSession():先构建一个session,然后再构建计算图;也就是说,InteractiveSession()能够在运行图时,插入一些计算图,比较方便。
Session():先构建整个计算图,然后构建session,并在session中启动已经构建好的计算图;也就是说,在会话构建之前,构建好计算图。
通过实例具体感受两者区别:
import tensorflow as tf
x = tf.placeholder("float", shape=[None, 784])
y_ = tf.placeholder("float", shape=[None, 10])
W = tf.Variable(tf.zeros([784,10]))
b = tf.Variable(tf.zeros([10]))
y = tf.nn.softmax(tf.matmul(x,W) + b)
cross_entropy = -tf.reduce_sum(y_*tf.log(y))
train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)
init = tf.initialize_all_var