Spec-Zone.ru › TensorFlow 2.9

tf.keras.optimizers.schedules.InverseTimeDecay

View source on GitHub

Расписание LearningRateSchedule, использующее график обратного распада по времени.

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

Показать псевдонимы

Совместимые псевдонимы для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.keras.optimizers.schedules.InverseTimeDecay

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

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

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

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))

Вы можете передать это расписание напрямую в tf.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=tf.keras.optimizers.SGD(
                  learning_rate=learning_rate_fn),
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

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

Методы

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/versions/r2.9/api_docs/python/tf/keras/optimizers/schedules/InverseTimeDecay

Spec-Zone.ru

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