会话 (Session)
TF中Session拥有并且控制TF程序运行时所有的资源;在计算完成后应当关闭会话回收资源
创建会话方式一
import tensorflow as tf
#定义节点node1
node1=tf.constant([1,2,3])
#创建会话
sess=tf.Session()
#调用sess.run()计算张量的值
try:
print(sess.run(node1)
except:
print('exception!')
finally:
#关闭会话,回收资源
sess.close()
创建会话方式二
import tensorflow as tf
#定义node节点
node1 = tf.constant(3.0,tf.float32,name='node1')
node2 = tf.constant(4.0,tf.float32,name='node2')
node3 = tf.add(node1,node2,name='node3')
#使用上下文管理器自动关闭会话,回收资源
with tf.Session() as sess:
pirnt(sess.run(node3))
或者
import tensorflow as tf
#定义node节点
node1 = tf.constant(3.0,tf.float32,name='node1')
node2 = tf.constant(4.0,tf.float32,name='node2')
node3 = tf.add(node1,node2,name='node3')
sess = tf.Session()
with sess.as_default():
print(node3.eval())
#或者如下表示方式替换with后语句
print(sess.run(node3))
print(node3.eval(session=sess))
创建会话方式三
import tensorflow as tf
#定义node节点
node1 = tf.constant(3.0,tf.float32,name='node1')
node2 = tf.constant(4.0,tf.float32,name='node2')
node3 = tf.add(node1,node2,name='node3')
sess = tf.InteractivSession()
print(result.eval())
sess.close()
**以上内容来源:**浙江大学城市学院《深度学习应用开发TensorFlow实践》