tf.compat.v1.train.cosine_decay_restarts
Применяет затухание косинуса с перезапусками к скорости обучения.
tf.compat.v1.train.cosine_decay_restarts(
learning_rate,
global_step,
first_decay_steps,
t_mul=2.0,
m_mul=1.0,
alpha=0.0,
name=None
)
При обучении модели часто рекомендуется снижать скорость обучения по мере прогресса обучения. Эта функция применяет функцию затухания косинуса с перезапусками к предоставленной начальной скорости обучения. Она требует значения global_step для вычисления затухающей скорости обучения. Вы можете просто передать переменную TensorFlow, которую вы увеличиваете на каждом шаге обучения.
Функция возвращает затухающую скорость обучения, учитывая возможные теплые перезапуски. Множитель скорости обучения сначала затухает с 1 до alpha за first_decay_steps шагов. Затем выполняется теплый перезапуск. Каждый новый теплый перезапуск выполняется на t_mul шагов больше и с m_mul раз меньшей начальной скоростью обучения.
Пример использования:
first_decay_steps = 1000
lr_decayed = cosine_decay_restarts(learning_rate, global_step,
first_decay_steps)
| Аргументы | |
|---|---|
learning_rate | Скалярный float32 или float64 тензор или число Python. Начальная скорость обучения. |
global_step | Скалярный int32 или int64 Tensor тензор или число Python. Глобальный шаг для вычисления затухания. |
first_decay_steps | Скалярный int32 или int64 Tensor тензор или число Python. Количество шагов для затухания. |
t_mul | Скалярный float32 или float64 Tensor тензор или число Python. Используется для получения количества итераций в i-м периоде. |
m_mul | Скалярный float32 или float64 Tensor тензор или число Python. Используется для получения начальной скорости обучения i-го периода: |
alpha | Скалярный float32 или float64 тензор или число Python. Минимальное значение скорости обучения как доля от learning_rate. |
name | Строка. Необязательное имя операции. По умолчанию 'SGDRDecay'. |
| Возвращаемое значение | |
|---|---|
Скалярный Tensor того же типа, что и learning_rate. Затухающая скорость обучения. |
| Исключения | |
|---|---|
ValueError | если global_step не предоставлено. |
Ссылки:
Стохастический градиентный спуск с теплыми перезапусками: Loshchilov et al., 2017 (pdf)
совместимость с eager
При включенной функции eager execution эта функция возвращает функцию, которая в свою очередь возвращает тензор затухающей скорости обучения. Это может быть полезно для изменения значения скорости обучения при разных вызовах функций оптимизатора.
© 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/compat/v1/train/cosine_decay_restarts