Session-like 处理初始化、恢复和挂钩的对象。
用法
tf.compat.v1.train.SingularMonitoredSession(
hooks=None, scaffold=None, master='', config=None,
checkpoint_dir=None, stop_grace_period_secs=120,
checkpoint_filename_with_path=None
)
参数
-
hooks
SessionRunHook
对象的可迭代对象。 -
scaffold
用于收集或构建支持性操作的Scaffold
。如果未指定,则会创建一个默认值。它用于最终确定图形。 -
master
String
表示要使用的 TensorFlow 主控。 -
config
ConfigProto
proto 用于配置会话。 -
checkpoint_dir
一个字符串。恢复变量的目录的可选路径。 -
stop_grace_period_secs
在调用close()
后给予线程停止的秒数。 - checkpoint_filename_with_path` 一个字符串。要从中恢复变量的检查点文件的可选路径。
属性
-
graph
在此会话中启动的图表。
迁移到 TF2
警告:这个 API 是为 TensorFlow v1 设计的。继续阅读有关如何从该 API 迁移到本机 TensorFlow v2 等效项的详细信息。见TensorFlow v1 到 TensorFlow v2 迁移指南有关如何迁移其余代码的说明。
此 API 与 Eager Execution 不兼容,并且tf.function.要迁移到 TF2,请重写代码以兼容 Eager Execution。检查迁移指南更换Session.run
调用。在 Keras 中,会话挂钩可以由回调代替,例如测井钩笔记本更多详情请阅读使用 tf.function 获得更好的性能.
请注意,不建议将此实用程序用于分布式设置。对于分布式设置,请使用 tf.compat.v1.train.MonitoredSession
。 MonitoredSession
和 SingularMonitoredSession
之间的区别是:
MonitoredSession
为分布式设置处理AbortedError
和UnavailableError
,但SingularMonitoredSession
不处理。MonitoredSession
可以在chief
或worker
模式下创建。SingularMonitoredSession
始终创建为chief
。- 您可以访问原始tf.compat.v1.Session使用的对象
SingularMonitoredSession
,而在 MonitoredSession 中,原始会话是私有的。这可以用来:- 到没有钩子的
run
。 - 保存和恢复。
- 到没有钩子的
- 所有其他函数都是相同的。
示例用法:
saver_hook = CheckpointSaverHook(...)
summary_hook = SummarySaverHook(...)
with SingularMonitoredSession(hooks=[saver_hook, summary_hook]) as sess:
while not sess.should_stop():
sess.run(train_op)
初始化:在创建时,挂钩会话按给定顺序执行以下操作:
- 为每个给定的钩子调用
hook.begin()
- 通过
scaffold.finalize()
完成图形 - 创建会话
- 通过
Scaffold
提供的初始化操作初始化模型 - 如果存在检查点,则恢复变量
- 启动队列跑步者
运行:当run()
被调用时,被钩住的会话做以下事情:
- 调用
hook.before_run()
- 使用合并的提取和 feed_dict 调用 TensorFlow
session.run()
- 调用
hook.after_run()
- 返回用户询问的
session.run()
的结果
退出:在 close()
处,挂钩会话按顺序执行以下操作:
- 调用
hook.end()
- 关闭队列运行器和会话
- 抑制
OutOfRange
错误,如果SingularMonitoredSession
用作上下文,则表明所有输入都已处理。
子类
相关用法
- Python tf.compat.v1.train.SingularMonitoredSession.run_step_fn用法及代码示例
- Python tf.compat.v1.train.Supervisor.managed_session用法及代码示例
- Python tf.compat.v1.train.Supervisor用法及代码示例
- Python tf.compat.v1.train.SessionManager用法及代码示例
- Python tf.compat.v1.train.SyncReplicasOptimizer用法及代码示例
- Python tf.compat.v1.train.Saver用法及代码示例
- Python tf.compat.v1.train.FtrlOptimizer.compute_gradients用法及代码示例
- Python tf.compat.v1.train.get_or_create_global_step用法及代码示例
- Python tf.compat.v1.train.cosine_decay_restarts用法及代码示例
- Python tf.compat.v1.train.Optimizer用法及代码示例
- Python tf.compat.v1.train.AdagradOptimizer.compute_gradients用法及代码示例
- Python tf.compat.v1.train.init_from_checkpoint用法及代码示例
- Python tf.compat.v1.train.Checkpoint用法及代码示例
- Python tf.compat.v1.train.Checkpoint.restore用法及代码示例
- Python tf.compat.v1.train.global_step用法及代码示例
- Python tf.compat.v1.train.MonitoredSession.run_step_fn用法及代码示例
- Python tf.compat.v1.train.RMSPropOptimizer.compute_gradients用法及代码示例
- Python tf.compat.v1.train.exponential_decay用法及代码示例
- Python tf.compat.v1.train.natural_exp_decay用法及代码示例
- Python tf.compat.v1.train.MomentumOptimizer用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.train.SingularMonitoredSession。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。