Spec-Zone.ru › TensorFlow

tf.keras.optimizers.schedules.InverseTimeDecay

Расписание для обратного распада по времени.

Наследуется от: LearningRateSchedule

tf.keras.optimizers.schedules.InverseTimeDecay(
    initial_learning_rate,
    decay_steps,
    decay_rate,
    staircase=False,
    name='InverseTimeDecay'
)

Используется в блокнотах

Используется в учебниках
  • Переобучение и недообучение

При обучении модели часто бывает полезно уменьшать скорость обучения по мере прогресса обучения. Это расписание применяет обратную функцию распада к шагу оптимизатора, учитывая заданную начальную скорость обучения. Оно требует значения step для вычисления уменьшенной скорости обучения. Вы можете просто передать переменную бэкэнда, которую вы увеличиваете на каждом шаге обучения.

Расписание — это вызываемый объект с 1 аргументом, который выводит уменьшенную скорость обучения, когда ему передаётся текущий шаг оптимизатора. Это может быть полезно для изменения значения скорости обучения при разных вызовах функций оптимизатора. Оно вычисляется следующим образом:

def decayed_learning_rate(step):
    return initial_learning_rate / (1 + decay_rate * step / decay_step)

или, если staircase равно True, как:

def decayed_learning_rate(step):
    return initial_learning_rate /
           (1 + decay_rate * floor(step / decay_step))

Вы можете передать это расписание непосредственно в keras.optimizers.Optimizer как скорость обучения. Пример: обучение модели Keras с распадом 1/t со скоростью 0,5:

...
initial_learning_rate = 0.1
decay_steps = 1.0
decay_rate = 0.5
learning_rate_fn = keras.optimizers.schedules.InverseTimeDecay(
    initial_learning_rate, decay_steps, decay_rate)

model.compile(optimizer=keras.optimizers.SGD(
                  learning_rate=learning_rate_fn),
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

model.fit(data, labels, epochs=5)
Аргументы
initial_learning_rate Вещественное число Python. Начальная скорость обучения.
decay_steps Частота применения распада.
decay_rate Число Python. Скорость распада.
staircase Применять ли распад по ступенчатому, а не непрерывному принципу.
name Строка. Необязательное имя операции. По умолчанию "InverseTimeDecay".
Возвращаемые значения
Вызываемый объект-расписание скорости обучения с одним аргументом, который принимает текущий шаг оптимизатора и возвращает уменьшенную скорость обучения — скалярный тензор того же типа, что и initial_learning_rate.

Методы

from_config

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

@classmethod
from_config(
    config
)

Инициализирует LearningRateSchedule по его конфигурации.

Аргументы
config Выход из get_config().
Возвращаемые значения
Экземпляр LearningRateSchedule.

get_config

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

get_config()

__call__

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

__call__(
    step
)

Вызвать self как функцию.

© 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/keras/optimizers/schedules/InverseTimeDecay

Spec-Zone.ru

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