Spec-Zone.ru › TensorFlow 2.9

tf.estimator.LoggingTensorHook

Выводит указанные тензоры каждые N локальных шагов, каждые N секунд или в конце.

Унаследован от: SessionRunHook

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

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

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

tf.compat.v1.estimator.LoggingTensorHook, tf.compat.v1.train.LoggingTensorHook

tf.estimator.LoggingTensorHook(
    tensors, every_n_iter=None, every_n_secs=None, at_end=False, formatter=None
)

Миграция к TF2

Предупреждение: Этот API был разработан для TensorFlow v1. Продолжайте чтение, чтобы узнать, как мигрировать с этого API на эквивалент TensorFlow v2. Обратитесь к руководству по миграции TensorFlow v1 в TensorFlow v2 для получения инструкций по миграции остальной части вашего кода.

Пожалуйста, ознакомьтесь с этим блокнотом о том, как мигрировать API в TF2.

Описание

Тензоры будут выводиться в журнал с INFO уровнем серьезности. Если журналы не отображаются, возможно, вам нужно добавить следующую строку после импортов:

tf.compat.v1.logging.set_verbosity(tf.compat.v1.logging.INFO)

Обратите внимание, что если at_end равно True, то tensors не должно включать тензоры, чья оценка приводит к побочному эффекту, такому как потребление дополнительных входных данных.

Аргументы
tensors dict , сопоставляющий строковые метки с тензорами/именами тензоров, или iterable тензоров/имен тензоров.
every_n_iter int, выводит значения tensors один раз каждые N локальных шагов, выполненных на текущем рабочем узле.
every_n_secs int или float, выводит значения tensors один раз каждые N секунд. Должен быть предоставлен ровно один из every_n_iter и every_n_secs.
at_end bool , определяющий, нужно ли выводить значения tensors в конце выполнения.
formatter функция, принимающая словарь tag->Tensor и возвращающая строку. Если None использует стандартную печать, все тензоры будут выведены.
Возможные исключения
ValueError если every_n_iter не положительно.

Методы

after_create_session

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

after_create_session(
    session, coord
)

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

Вызывается для уведомления хуков о создании новой сессии. Это имеет два существенных отличия от ситуации, в которой вызывается begin.

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

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, которая скоро будет закрыта.

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

Spec-Zone.ru

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