在Google的TPU上定期评估时,tf.dataset是否会遍历整个训练数据集

时间:2019-02-16 05:42:11

标签: python-3.x tensorflow tensorflow-datasets tensorflow-estimator

我目前正在调整我的模型以在TPU上运行。我想定期评估模型。我知道功能train_and_evaluate不能与TPU一起使用。

相反,替代方法与Google's Official TPU github类似,如下所示:

  num_evals = max(FLAGS.num_evals, 1)
  examples_per_eval = training_examples // num_evals
  for _ in range(num_evals):
    estimator.train(
        input_fn=data_pipeline.InputReader(FLAGS.data_dir, is_training=True),
        steps=examples_per_eval // FLAGS.batch_size)

    tf.logging.info("Running evaluation")
    tf.logging.info("%s",
                    estimator.evaluate(
                        input_fn=data_pipeline.InputReader(
                            FLAGS.data_dir, is_training=False),
                        steps=eval_examples // FLAGS.batch_size,
                    ))

问题::反复调用estimator.train()时,tf.dataset的iterator如何从最后一个已知点开始继续在数据集中循环?

0 个答案:

没有答案