РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
433 of 824 menu

Класс GlorotUniform

Класс GlorotUniform создает инициализатор для весов нейронной сети. Он заполняет тензор случайными значениями из равномерного распределения в диапазоне [-limit, limit], где limit = sqrt(6 / (fan_in + fan_out)). Такой подход также называют инициализацией Ксавье (Xavier). Первым параметром можно передать зерно генератора случайных чисел seed для воспроизводимости результата.

Синтаксис

tf.keras.initializers.GlorotUniform(seed=None)

Пример

Давайте создадим инициализатор и применим его к тензору формы (3, 3):

import tensorflow as tf tf.random.set_seed(0) initializer = tf.keras.initializers.GlorotUniform(seed=0) t = initializer(shape=(3, 3)) print(t)

Результат выполнения кода:

tf.Tensor( [[-0.40824828 0.40824828 0.40824828] [-0.40824828 -0.40824828 0.40824828] [ 0.40824828 0.40824828 -0.40824828]], shape=(3, 3), dtype=float32)

Пример

Давайте применим инициализатор GlorotUniform к слою Dense и выведем полученные веса:

import tensorflow as tf tf.random.set_seed(0) layer = tf.keras.layers.Dense( units=2, kernel_initializer=tf.keras.initializers.GlorotUniform(seed=0) ) t = tf.constant([[1.0, 2.0, 3.0]]) res = layer(t) print(layer.kernel)

Результат выполнения кода:

tf.Tensor( [[-0.40824828 0.40824828] [-0.40824828 -0.40824828] [ 0.40824828 0.40824828]], shape=(3, 2), dtype=float32)

Пример

Давайте создадим инициализатор без зерна и получим его конфигурацию:

import tensorflow as tf initializer = tf.keras.initializers.GlorotUniform() res = initializer.get_config() print(res)

Результат выполнения кода:

{'seed': None}

Смотрите также

  • класс GlorotNormal,
    который инициализирует веса по нормальному распределению
  • класс HeUniform,
    который инициализирует веса для слоев с ReLU
  • класс RandomUniform,
    который заполняет тензор равномерным распределением
  • класс Orthogonal,
    который создает ортогональную матрицу весов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить