tf.train.StepCounterHook
Хук, который считает шаги в секунду.
Наследуется от: SessionRunHook
tf.train.StepCounterHook(
every_n_steps=100, every_n_secs=None, output_dir=None, summary_writer=None
)
Методы
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/r1.15/api_docs/python/tf/train/StepCounterHook