当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.compat.v1.train.SingularMonitoredSession用法及代码示例


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.MonitoredSessionMonitoredSessionSingularMonitoredSession 之间的区别是:

  • MonitoredSession 为分布式设置处理 AbortedErrorUnavailableError,但 SingularMonitoredSession 不处理。
  • MonitoredSession 可以在chiefworker 模式下创建。 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 用作上下文,则表明所有输入都已处理。

子类

class StepContext

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.train.SingularMonitoredSession。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。