tf.keras.initializers.VarianceScaling
Инициализатор, способный адаптировать свой масштаб к форме тензоров весов.
Наследуется от: Initializer
tf.keras.initializers.VarianceScaling(
scale=1.0, mode='fan_in', distribution='truncated_normal',
seed=None
)
Также доступен через функцию-ярлык tf.keras.initializers.variance_scaling.
С distribution="truncated_normal" or "untruncated_normal", образцы берутся из усечённого/неусечённого нормального распределения со средним значением 0 и стандартным отклонением (после усечения, если используется) stddev = sqrt(scale / n), где n:
- количество входных единиц в тензоре весов, если
mode="fan_in" - количество выходных единиц, если
mode="fan_out" - среднее значение количества входных и выходных единиц, если
mode="fan_avg"
С distribution="uniform", образцы берутся из равномерного распределения в пределах [-limit, limit], где limit = sqrt(3 * scale / n).
Примеры:
# Standalone usage: initializer = tf.keras.initializers.VarianceScaling( scale=0.1, mode='fan_in', distribution='uniform') values = initializer(shape=(2, 2))
# Usage in a Keras layer: initializer = tf.keras.initializers.VarianceScaling( scale=0.1, mode='fan_in', distribution='uniform') layer = tf.keras.layers.Dense(3, kernel_initializer=initializer)
| Args | |
|---|---|
scale | Коэффициент масштабирования (положительное число с плавающей точкой). |
mode | Одно из "fan_in", "fan_out", "fan_avg". |
distribution | Используемое распределение случайных величин. Одно из "truncated_normal", "untruncated_normal" и "uniform". |
seed | Целое число Python. Инициализатор, созданный с заданным значением seed, всегда будет генерировать один и тот же тензор случайных величин для заданной формы и типа данных. |
Методы
from_config
@classmethod
from_config(
config
)
Инициализирует инициализатор из словаря конфигурации.
Пример:
initializer = RandomUniform(-1, 1) config = initializer.get_config() initializer = RandomUniform.from_config(config)
| Args | |
|---|---|
config | Словарь Python. Обычно является результатом get_config. |
| Возвращаемое значение | |
|---|---|
| Экземпляр инициализатора. |
get_config
get_config()
Возвращает конфигурацию инициализатора в виде сериализуемого в JSON словаря.
| Возвращаемое значение | |
|---|---|
| Сериализуемый в JSON словарь Python. |
__call__
__call__(
shape, dtype=None, **kwargs
)
Возвращает тензорный объект, инициализированный в соответствии с заданным инициализатором.
| Args | |
|---|---|
shape | Форма тензора. |
dtype | Необязательный тип данных тензора. Поддерживаются только типы с плавающей точкой. Если не указано, используется tf.keras.backend.floatx(), который по умолчанию равен float32, если вы не настроили его иначе (через tf.keras.backend.set_floatx(float_dtype)) |
**kwargs | Дополнительные ключевые аргументы. |
© 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/keras/initializers/VarianceScaling