Spec-Zone.ru › TensorFlow

tf.compat.v1.variance_scaling_initializer

Инициализатор, который адаптирует масштаб к форме тензоров весов.

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

Совместимые псевдонимы для миграции

Подробнее см. в руководстве по миграции.

tf.compat.v1.initializers.variance_scaling

tf.compat.v1.variance_scaling_initializer(
    scale=1.0,
    mode='fan_in',
    distribution='truncated_normal',
    seed=None,
    dtype=tf.dtypes.float32
)

Переход на TF2

Внимание: Этот API разработан для TensorFlow v1. Читайте дальше, чтобы узнать, как перейти с этого API на аналогичный встроенный API TensorFlow v2. Инструкции по переносу остального кода см. в руководстве по переходу с TensorFlow v1 на TensorFlow v2.

Хотя этот символ относится к устаревшему API compat.v1, он совместим с немедленным выполнением и tf.function.

Чтобы перейти на API TF2, используйте tf.initializers.variance_scaling или tf.keras.initializers.VarianceScaling (ни один из них не относится к compat.v1) и укажите тип данных при вызове инициализатора.

Структурное сопоставление с TF2

До:

initializer = tf.compat.v1.variance_scaling_initializer(
  scale=scale,
  mode=mode,
  distribution=distribution
  seed=seed,
  dtype=dtype)

weight_one = tf.Variable(initializer(shape_one))
weight_two = tf.Variable(initializer(shape_two))

После:

initializer = tf.keras.initializers.VarianceScaling(
  scale=scale,
  mode=mode,
  distribution=distribution
  seed=seed)

weight_one = tf.Variable(initializer(shape_one, dtype=dtype))
weight_two = tf.Variable(initializer(shape_two, dtype=dtype))

Сопоставление аргументов

Имя аргумента TF1 Имя аргумента TF2 Примечание
scale scale Значения по умолчанию не изменены
mode mode Значения по умолчанию не изменены
distribution distribution Значения по умолчанию не изменены. 'normal' соответствует 'truncated_normal'
seed seed
dtype dtype API TF2 принимает его только как аргумент __call__, а не как аргумент конструктора.
partition_info - (аргумент __call__ в TF1) Не поддерживается

Описание

При использовании distribution="truncated_normal" or "untruncated_normal" значения выбираются из усечённого или неусечённого нормального распределения со средним, равным нулю, и стандартным отклонением (после усечения, если оно применяется) stddev = sqrt(scale / n), где n — это:

  • число входных единиц в тензоре весов, если mode = "fan_in"
  • число выходных единиц, если mode = "fan_out"
  • среднее число входных и выходных единиц, если mode = "fan_avg"

При использовании distribution="uniform" значения выбираются из равномерного распределения в диапазоне [-limit, limit], где limit = sqrt(3 * scale / n).

Аргументы
scale Коэффициент масштабирования (положительное число с плавающей точкой).
mode Одно из значений: "fan_in", "fan_out", "fan_avg".
distribution Используемое случайное распределение. Одно из значений: "normal", "uniform".
seed Целое число Python. Используется для создания случайных начальных значений. Описание поведения см. в tf.compat.v1.set_random_seed.
dtype Тип данных по умолчанию, используемый, если при вызове инициализатора не указан аргумент dtype. Поддерживаются только типы с плавающей точкой.
Вызывает исключение
ValueError Если для аргументов "scale", mode" или "distribution" указано недопустимое значение.

Методы

from_config

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

@classmethod
from_config(
    config
)

Создаёт инициализатор на основе словаря конфигурации.

Пример:

initializer = RandomUniform(-1, 1)
config = initializer.get_config()
initializer = RandomUniform.from_config(config)
Аргументы
config Словарь Python. Обычно это результат работы get_config.
Возвращает
Экземпляр Initializer.

get_config

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

get_config()

Возвращает конфигурацию инициализатора в виде словаря, сериализуемого в JSON.

Возвращает
Словарь Python, сериализуемый в JSON.

__call__

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

__call__(
    shape, dtype=None, partition_info=None
)

Возвращает объект-тензор, инициализированный в соответствии с заданными параметрами инициализатора.

Аргументы
shape Форма тензора.
dtype Необязательный тип данных тензора. Если он не указан, используется тип данных инициализатора.
partition_info Необязательные сведения о возможном разбиении тензора на разделы.

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

Spec-Zone.ru

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