В настоящее время я адаптирую свою модель для работы на TPU.Я хотел бы периодически оценивать модель.Я понимаю, что функция train_and_evaluate не может использоваться с TPU.
Вместо этого используется альтернатива Официальный github TPU Google , как показано ниже:
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 продолжает циклически проходить по набору данных, начиная с его последней известной точки?