tf.estimator.FinalOpsHook
A hook which evaluates Tensors at the end of a session.
Inherits From: SessionRunHook
tf.estimator.FinalOpsHook(
final_ops, final_ops_feed_dict=None
)
| Arguments | |
|---|---|
final_ops | A single Tensor, a list of Tensors or a dictionary of names to Tensors. |
final_ops_feed_dict | A feed dictionary to use when running final_ops_dict. |
| Атрибуты | |
|---|---|
final_ops_values | |
Методы
after_create_session
after_create_session(
session, coord
)
Вызывается при создании новой TensorFlow сессии.
Это вызывается для уведомления хуков о создании новой сессии. Это имеет два существенных отличия от ситуации, в которой вызывается begin:
- Когда это вызывается, граф завершен, и к графу больше нельзя добавлять операции.
- Этот метод также будет вызван в результате восстановления обернутой сессии, а не только в начале общей сессии.
| Arguments | |
|---|---|
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() не вызывается.
| Arguments | |
|---|---|
run_context | Объект SessionRunContext. |
run_values | Объект SessionRunValues. |
before_run
before_run(
run_context
)
Вызывается перед каждым вызовом run().
Вы можете вернуть из этого вызова объект SessionRunArgs, указывающий операции или тензоры для добавления к предстоящему вызову run(). Эти операции/тензоры будут выполнены вместе с операциями/тензорами, первоначально переданными в исходный вызов run(). Аргументы вызова run, которые вы возвращаете, также могут содержать добавляемые в вызов run() значения feed.
Аргумент run_context – SessionRunContext, который предоставляет информацию о предстоящем вызове run(): первоначально запрошенные операции/тензоры, TensorFlow сессия.
На этом этапе граф завершен, и вы не можете добавлять операции.
| Arguments | |
|---|---|
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() не вызывается.
| Arguments | |
|---|---|
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.3/api_docs/python/tf/estimator/FinalOpsHook