Spec-Zone.ru › TensorFlow 2.4

tf.estimator.CheckpointSaverHook

Сохраняет контрольные точки каждые N шагов или секунд.

Наследуется от: SessionRunHook

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

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

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

tf.compat.v1.estimator.CheckpointSaverHook, tf.compat.v1.train.CheckpointSaverHook

tf.estimator.CheckpointSaverHook(
    checkpoint_dir, save_secs=None, save_steps=None, saver=None,
    checkpoint_basename='model.ckpt', scaffold=None, listeners=None,
    save_graph_def=True
)
Аргументы
checkpoint_dir str, базовая директория для файлов контрольных точек.
save_secs int, сохранять каждые N сек.
save_steps int, сохранять каждые N шагов.
saver Saver объект, используемый для сохранения.
checkpoint_basename str, базовое имя для файлов контрольных точек.
scaffold Scaffold, используется для получения объекта saver.
listeners Список экземпляров подклассов CheckpointSaverListener. Используется для обратного вызова, который выполняется непосредственно перед или после того, как этот хук сохранит контрольную точку.
save_graph_def Следует ли сохранять GraphDef и MetaGraphDef в checkpoint_dir. GraphDef сохраняется после создания сессии как graph.pbtxt. MetaGraphDef сохраняется для каждой контрольной точки как model.ckpt-*.meta.
Исключения
ValueError Должен быть задан один из save_steps или save_secs.
ValueError Максимально один из saver или scaffold должен быть задан.

Методы

after_create_session

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

after_create_session(
    session, coord
)

Вызывается при создании новой TensorFlow сессии.

Этот вызов используется для сигнализации хукам о том, что была создана новая сессия. Это имеет два существенных отличия от ситуации, когда вызывается begin.

  • При вызове граф окончательно сформирован, и к нему нельзя добавить операции.
  • Этот метод также будет вызван в результате восстановления обернутой сессии, а не только в начале всей сессии.
Аргументы
session Созданная TensorFlow сессия.
coord Объект Coordinator, отслеживающий все потоки.

after_run

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

after_run(
    run_context, run_values
)

Вызывается после каждого вызова run().

Аргумент run_values содержит результаты запрошенных операций/тензоров вызовом before_run().

Аргумент run_context такой же, что и переданный в вызов before_run . Можно вызвать run_context.request_stop() для остановки итерации.

Если session.run() вызывает какие-либо исключения, то after_run() не вызывается.

Аргументы
run_context Объект SessionRunContext.
run_values Объект SessionRunValues.

before_run

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

before_run(
    run_context
)

Вызывается перед каждым вызовом run().

Можно вернуть из этого вызова объект SessionRunArgs, указывающий операции или тензоры, которые нужно добавить к предстоящему вызову run(). Эти операции/тензоры будут выполнены вместе с операциями/тензорами, изначально переданными в исходный вызов run(). Аргументы run, которые вы возвращаете, также могут содержать значения для добавления к вызову run().

Аргумент run_context - это SessionRunContext, который предоставляет информацию о предстоящем вызове run() : изначально запрошенные операции/тензоры, TensorFlow сессия.

На этом этапе граф завершен и вы не можете добавлять операции.

Аргументы
run_context Объект SessionRunContext.
Возвращаемое значение
None или объект SessionRunArgs .

begin

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

begin()

Вызывается один раз перед использованием сессии.

При вызове, текущий граф - тот, который будет запущен в сессии. Хук может изменять граф, добавляя новые операции. После вызова begin() граф будет завершен, и другие обратные вызовы не смогут больше изменять граф. Второй вызов begin() для того же графа не должен изменять граф.

end

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

end(
    session
)

Вызывается в конце сессии.

Аргумент session может быть использован в случае, если хук хочет выполнить конечные операции, такие как сохранение последней контрольной точки.

Если session.run() вызывает исключения, отличные от OutOfRangeError или StopIteration, то end() не вызывается. Обратите внимание на разницу в поведении end() и after_run(), когда session.run() вызывает OutOfRangeError или StopIteration. В этом случае end() вызывается, но after_run() не вызывается.

Аргументы
session TensorFlow сессия, которая скоро будет закрыта.

© 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.4/api_docs/python/tf/estimator/CheckpointSaverHook

Spec-Zone.ru

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