Spec-Zone.ru › TensorFlow 2.3

tf.estimator.CheckpointSaverListener

Интерфейс для слушателей, которые выполняют действия до или после сохранения контрольной точки.

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.estimator.CheckpointSaverListener, tf.compat.v1.train.CheckpointSaverListener

CheckpointSaverListener срабатывает только на шагах, когда CheckpointSaverHook срабатывает, и предоставляет обратные вызовы в следующих точках:

  • перед использованием сессии
  • перед каждым вызовом Saver.save()
  • после каждого вызова Saver.save()
  • в конце сессии

Чтобы использовать слушателя, реализуйте класс и передайте слушателя в CheckpointSaverHook, как в этом примере:

class ExampleCheckpointSaverListener(CheckpointSaverListener):
  def begin(self):
    # You can add ops to the graph here.
    print('Starting the session.')
    self.your_tensor = ...

  def before_save(self, session, global_step_value):
    print('About to write a checkpoint')

  def after_save(self, session, global_step_value):
    print('Done writing checkpoint.')
    if decided_to_stop_training():
      return True

  def end(self, session, global_step_value):
    print('Done with the session.')

...
listener = ExampleCheckpointSaverListener()
saver_hook = tf.estimator.CheckpointSaverHook(
    checkpoint_dir, listeners=[listener])
with
tf.compat.v1.train.MonitoredTrainingSession(chief_only_hooks=[saver_hook]):
  ...

Слушатель может просто выполнить какое-либо действие после каждого сохранения контрольной точки. Также слушатель может использовать свой собственный график действий с меньшей частотой, например, на основе значения global_step. В этом случае реализаторы должны реализовать метод end() для обработки действий, связанных с последним сохранением контрольной точки. Но слушатель не должен действовать дважды, если after_save() уже обработал это последнее сохранение контрольной точки.

Слушатель может запросить остановку обучения, вернув True в after_save. Обратите внимание, что в условиях распределённого обучения с репликацией только chief должен использовать это поведение. В противном случае каждый рабочий выполнит свою оценку, что может быть расточительным использованием ресурсов.

Методы

after_save

Просмотреть исходный код

after_save(
    session, global_step_value
)

before_save

Просмотреть исходный код

before_save(
    session, global_step_value
)

begin

Просмотреть исходный код

begin()

end

Просмотреть исходный код

end(
    session, global_step_value
)

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/estimator/CheckpointSaverListener

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API