Spec-Zone.ru › TensorFlow

tf.compat.v1.variable_creator_scope

Область, определяющая функцию создания переменных, которая будет использоваться функцией variable().

@tf_contextlib.contextmanager
tf.compat.v1.variable_creator_scope(
    variable_creator
)

Ожидается, что variable_creator будет функцией со следующей сигнатурой:

def variable_creator(next_creator, **kwargs)

Создатель должен в конечном итоге вызвать next_creator для создания переменной, если он действительно хочет создать переменную, и не вызывать напрямую Variable или ResourceVariable. Это позволяет объединять создателей. Создатель может создавать несколько переменных, возвращать уже существующие переменные или просто регистрировать факт создания переменной и передавать управление следующему создателю в цепочке. Создатели также могут изменять именованные аргументы, передаваемые следующим создателям.

Пользовательские геттеры в области переменной в конечном итоге будут обращаться к этим пользовательским создателям при создании переменных.

Допустимые именованные аргументы в kwds:

  • initial_value: Tensor или объект Python, преобразуемый в Tensor, который является начальным значением Variable. Для начального значения должна быть указана форма, если только validate_shape не установлено в False. Также может быть вызываемым объектом без аргументов, возвращающим начальное значение при вызове. В этом случае необходимо указать dtype. (Обратите внимание: прежде чем использовать здесь функции-инициализаторы из init_ops.py, к ним необходимо привязать форму.)
  • trainable: Если True, значение по умолчанию, переменная также добавляется в коллекцию графа GraphKeys.TRAINABLE_VARIABLES. Эта коллекция используется как список переменных по умолчанию для классов Optimizer. По умолчанию trainable имеет значение True, если только synchronization не установлено в ON_READ; в этом случае по умолчанию используется False.
  • collections: Список ключей коллекций графа. Новая переменная добавляется в эти коллекции. По умолчанию используется [GraphKeys.GLOBAL_VARIABLES].
  • validate_shape: Если False, переменную можно инициализировать значением с неизвестной формой. Если True, значение по умолчанию, форма initial_value должна быть известна.
  • caching_device: Необязательная строка устройства, указывающая, где следует кэшировать Variable для чтения. По умолчанию используется устройство Variable. Если значение не равно None, кэширование выполняется на другом устройстве. Обычно кэшируют на устройстве, где находятся Ops, использующие Variable, чтобы избежать дублирования копирования через Switch и другие условные операторы.
  • name: Необязательное имя переменной. По умолчанию используется 'Variable'; имя автоматически делается уникальным.
  • dtype: Если задано, initial_value будет преобразовано к указанному типу. Если равно None, тип данных либо останется прежним (если initial_value — Tensor), либо будет выбран с помощью convert_to_tensor.
  • constraint: Функция ограничения, применяемая к переменной после обновлений некоторыми алгоритмами.
  • use_resource: Если True, всегда создается ResourceVariable.
  • synchronization: Указывает, когда будет выполняться агрегирование распределенной переменной. Допустимые значения — константы, определенные в классе tf.VariableSynchronization. По умолчанию для synchronization установлено значение AUTO, и текущий DistributionStrategy определяет, когда выполнять синхронизацию.
  • aggregation: Указывает, как будет выполняться агрегирование распределенной переменной. Допустимые значения — константы, определенные в классе tf.VariableAggregation.

Этот набор может со временем расширяться, поэтому важно, чтобы сигнатура создателей соответствовала указанной выше.

Аргументы
variable_creator переданный создатель
Возвращает
Область, в которой активен создатель

© 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/api_docs/python/tf/compat/v1/variable_creator_scope

Spec-Zone.ru

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