`MonitoredTrainingSession()`如何与"恢复"和"测试模式"一起工作?

Ruo*_*ong 6 python session distributed restore tensorflow

在Tensorflow中,我们可以使用Between-graph Replication分布式培训来构建和创建多个Tensorflow会话.MonitoredTrainingSession()协调多个Tensorflow会话,并且有一个参数checkpoint_dir用于MonitoredTrainingSession()恢复Tensorflow会话/图形.现在我有以下问题:

  1. 我们通常使用对象tf.train.Saver()来恢复Tensorflow图saver.restore(...).但是我们如何通过使用来恢复它们MonitoredTrainingSession()
  2. 由于我们运行多个流程并且每个流程都构建并创建了一个Tensorflow会话用于培训,我想知道我们是否还必须在培训后运行多个流程进行测试(或预测).换句话说,如何MonitoredTrainingSession()使用测试(或预测)模式?

我阅读了Tensorflow Doc,但未找到这两个问题的答案.如果有人有解决方案我真的很感激.谢谢!

小智 -1

  1. 看来恢复已经为你处理了。在 API 文档中,它说调用 MonitoredTrainingSession 返回一个 MonitoredSession 实例,该实例在创建时“...如果检查点存在则恢复变量...”

  2. 查看tf.contrib.learn.Estimator(..).predict(..)更具体的tf.contrib.learn.Estimator(..)._infer_model(..)方法这里这里。他们还在那里创建一个 MonitoredSession。