Spec-Zone.ru › TensorFlow

tf.compat.v1.train.NanTensorHook

Отслеживает тензор потерь и останавливает обучение, если значение потерь равно NaN.

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

tf.compat.v1.train.NanTensorHook(
    loss_tensor, fail_on_nan_loss=True
)

Может либо вызвать исключение, либо просто остановить обучение.

Аргументы
loss_tensor Tensor, тензор потерь.
fail_on_nan_loss bool, следует ли вызывать исключение, если значение потерь равно NaN.

Методы

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(). Возвращаемые аргументы запуска также могут содержать данные для feeds, которые нужно добавить к вызову 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/api_docs/python/tf/compat/v1/train/NanTensorHook

Spec-Zone.ru

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