会话管理 (Session management)
操作 | 描述 |
---|---|
class tf.Session | 运行TF操作的类, 一个Session对象将操作节点op封装在一定的环境内运行, 同时tensor对象将被计算求值 |
tf.Session.__init__(target=”, graph=None, config=None) | 创建一个新的会话 |
tf.Session.run(fetches, feed_dict=None, options=None, run_metadata=None) | 运行fetches中的操作节点并求其值 |
tf.Session.close() | 关闭会话 |
tf.Session.graph | 返回加载值该会话的图(graph) |
tf.Session.as_default() | 设置该对象为默认会话,并返回一个上下文管理器 |
tf.Session.reset(target, containers=None, config=None) | 重设target的资源容器,并关闭所有连接的会话 在0.10版本该功能仅应用在分布会话中 target:为执行引擎所连接的目标,其包含有资源容器, 该资源容器分布在同一个集群的所有works上 |
class tf.InteractiveSession | 使用在交互式上下文环境的tf会话,比如shell,ipython |
tf.InteractiveSession.close() | 关闭一个InteractiveSession |
tf.get_default_session() | 返回当前线程的默认会话 |
tf.Session
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
tf.Session()的变量设置, ConfigProto protocol buffer为会话提供了不同的配置选项。比如,创建一个会话,对设备布局使用软约束条件,以及对分布
- 1
- 2
- 3
- 4
- 5
tf.Session.run
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
tf.Session.as_default()
使用关键字with指定会话, 可以在会话中执行Operation.run()或Tensor.eval(),以得到运行的tensor结果
- 1
- 2
- 3
- 4
- 5
- 6
- 7
使用函数tf.get_default_session()来得到当前默认的会话
需要注意的是,退出该as_default上下文管理器时,并没有关闭该会话(session ),必须明确的关闭会话
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
tf.InteractiveSession
- 1
- 2
- 3
- 4
- 5
- 6
- 7
以上的例子,在非交互会话的版本中为,