tf.estimator.FeedFnHook
Выполняет feed_fn и устанавливает feed_dict соответственно.
Наследуется от: SessionRunHook
tf.estimator.FeedFnHook(
feed_fn
)
| Аргументы | |
|---|---|
feed_fn | функция без аргументов, возвращающая dict из Tensor для подачи. |
Методы
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, которая скоро будет закрыта. |
© 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/FeedFnHook