tf.estimator.SummarySaverHook
Сохраняет сводки каждые N шагов.
Наследуется от: SessionRunHook
tf.estimator.SummarySaverHook(
save_steps=None, save_secs=None, output_dir=None, summary_writer=None,
scaffold=None, summary_op=None
)
| Аргументы | |
|---|---|
save_steps | int, сохранять сводки каждые N шагов. Должен быть задан ровно один из save_secs и save_steps. |
save_secs | int, сохранять сводки каждые N секунд. |
output_dir | string, каталог для сохранения сводок. Используется только в случае отсутствия summary_writer. |
summary_writer | SummaryWriter. Если None и output_dir были переданы, один будет создан соответствующим образом. |
scaffold | Scaffold для получения summary_op, если он не указан. |
summary_op | Tensor типа string, содержащий сериализованный Summary протокол, или список Tensor. Вероятнее всего, это результат методов TF summary, таких как tf.compat.v1.summary.scalar или tf.compat.v1.summary.merge_all. Может быть передан как один тензор; если их несколько, они должны быть переданы в качестве списка. |
| Исключения | |
|---|---|
ValueError | Должен быть задан ровно один из scaffold или summary_op. |
Методы
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=None
)
Вызывается в конце сессии.
Аргумент 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/SummarySaverHook