tf.initializers.uniform_unit_scaling
Инициализатор, генерирующий тензоры без масштабирования дисперсии.
Наследуется от: Initializer
tf.initializers.uniform_unit_scaling(
factor=1.0, seed=None, dtype=tf.dtypes.float32
)
При инициализации глубокой сети, в принципе, выгодно сохранять масштаб дисперсии входных данных постоянным, чтобы он не взрывался или не уменьшался при достижении последнего слоя. Если входные данные x и операция x * W, и мы хотим инициализировать W равномерно случайным образом, нам нужно выбрать W из
[-sqrt(3) / sqrt(dim), sqrt(3) / sqrt(dim)]
чтобы сохранить масштаб неизменным, где dim = W.shape[0] (размер входных данных). Аналогичный расчет для свёрточных сетей дает аналогичный результат с dim равным произведению первых 3 измерений. При наличии нелинейностей нам нужно умножить это на константу factor. Более глубокое обоснование, эксперименты и вычисление констант см. в (Sussillo et al., 2014). В разделе 2.3 там константы были численно вычислены: для линейного слоя это 1.0, relu: ~1.43, tanh: ~1.15.
| Аргументы | |
|---|---|
factor | Вещественное число. Множительный коэффициент, с которым будут масштабироваться значения. |
seed | Целое число Python. Используется для создания случайных семян. См. tf.compat.v1.set_random_seed для получения информации о поведении. |
dtype | Тип данных по умолчанию, используемый, если аргумент dtype не задан при вызове инициализатора. Поддерживаются только типы с плавающей запятой. |
Ссылки:
Методы
from_config
@classmethod
from_config(
config
)
Инициализирует инициализатор по словарю конфигурации.
Пример:
initializer = RandomUniform(-1, 1) config = initializer.get_config() initializer = RandomUniform.from_config(config)
| Аргументы | |
|---|---|
config | Словарь Python. Обычно является результатом get_config. |
| Возвращаемое значение | |
|---|---|
| Экземпляр инициализатора. |
get_config
get_config()
Возвращает конфигурацию инициализатора в виде сериализуемого в JSON словаря.
| Возвращаемое значение | |
|---|---|
| Сериализуемый в JSON словарь Python. |
__call__
__call__(
shape, dtype=None, partition_info=None
)
Возвращает объект тензора, инициализированный в соответствии с указаниями инициализатора.
| Аргументы | |
|---|---|
shape | Форма тензора. |
dtype | Необязательный тип данных тензора. Если не указан, используется тип данных инициализатора. |
partition_info | Необязательная информация о возможной разбиении тензора. |
© 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/r1.15/api_docs/python/tf/initializers/uniform_unit_scaling