Spec-Zone.ru › TensorFlow 2.4

tf.init_scope

Просмотреть исходный код на GitHub

Менеджер контекста, который выносит операции из областей управления потоком и графиков построения функций.

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительной информации.

tf.compat.v1.init_scope

@tf_contextlib.contextmanager
tf.init_scope()

Часто возникает необходимость выносить операции инициализации переменных из областей управления потоком, графиков построения функций и лент градиентов. Вход в init_scope — это механизм для удовлетворения этих требований. В частности, вход в init_scope имеет три эффекта:

(1) Все зависимости управления очищаются в момент входа в область; это эквивалентно входу в менеджер контекста, возвращаемый из control_dependencies(None), который имеет побочный эффект выхода из областей управления потоком, таких как tf.cond и tf.while_loop.

(2) Все операции, созданные во время работы области, поднимаются в контекст самого нижнего уровня на context_stack, который не строит функцию графика. Здесь контекст определяется как график или контекст eager. Каждый переход контекста, то есть каждая установка графика в качестве стандартного графика и каждый переход в режим eager, записывается в локальном стеке потока, называемом context_switches; запись о переходе контекста удаляется из стека при выходе из контекста. Вход в init_scope эквивалентен перемещению вверх по стеку context_switches, поиску первого контекста, который не строит функцию графика, и входу в него. Особенностью является то, что если режим графика включён, а стек стандартного графика пустой, то вход в init_scope просто установит новый график в качестве стандартного.

(3) Лента градиентов приостанавливается во время работы области.

Когда выполнение eager включено, код внутри блока init_scope выполняется с включенным eager-выполнением, даже при отслеживании tf.function. Например:

tf.compat.v1.enable_eager_execution()

@tf.function
def func():
  # A function constructs TensorFlow graphs,
  # it does not execute eagerly.
  assert not tf.executing_eagerly()
  with tf.init_scope():
    # Initialization runs with eager execution enabled
    assert tf.executing_eagerly()
Возможные исключения
RuntimeError если состояние графика несовместимо с этой инициализацией.

© 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/init_scope

Spec-Zone.ru

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