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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。