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

Метод build класса Optimizer

Метод build класса Optimizer создает внутренние переменные оптимизатора, такие как накопленные градиенты и моменты, на основе формы обучаемых переменных модели. Метод вызывается автоматически при первом применении оптимизатора к переменным, но его можно вызвать и вручную. Первым параметром метод принимает список переменных var_list, для которых нужно создать слоты. Вторым параметром передается необязательный аргумент name, задающий имя области видимости для создаваемых переменных.

Синтаксис

optimizer.build(var_list, [name])

Пример

Давайте создадим оптимизатор и переменную, а затем вызовем метод build для инициализации внутренних слотов оптимизатора:

import tensorflow as tf optimizer = tf.keras.optimizers.SGD(learning_rate=0.01) var = tf.Variable([1.0, 2.0, 3.0]) optimizer.build([var]) print(optimizer.variables)

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

[<tf.Variable 'SGD/iter:0' shape=() dtype=int64, numpy=0>]

Пример

Давайте проверим, что до вызова метода build список переменных оптимизатора пуст, а после вызова он заполняется:

<+python+> import tensorflow as tf optimizer = tf.keras.optimizers.Adam(learning_rate=0.001) var = tf.Variable([1.0, 2.0, 3.0]) print("Before build:", len(optimizer.variables)) optimizer.build([var]) print("After build:", len(optimizer.variables)) <-python+>

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

"Before build: 0" "After build: 3"

Пример

Давайте создадим оптимизатор с моментом и посмотрим, какие переменные создаются после вызова метода build для двумерной переменной:

import tensorflow as tf optimizer = tf.keras.optimizers.SGD(learning_rate=0.01, momentum=0.9) var = tf.Variable([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]]) optimizer.build([var]) for v in optimizer.variables: print(v.name, v.shape)

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

"SGD/iter:0 ()" "SGD/momentum/0 (2, 3)"

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

  • класс Optimizer,
    который является базовым классом для всех оптимизаторов
  • метод apply_gradients,
    который применяет градиенты к переменным
  • метод minimize,
    который минимизирует функцию потерь
  • атрибут variables,
    который хранит переменные оптимизатора
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить