Spec-Zone.ru › TensorFlow 2.4

tf.compat.v1.train.linear_cosine_decay

Применяет линейное косинусное уменьшение к скорости обучения.

tf.compat.v1.train.linear_cosine_decay(
    learning_rate, global_step, decay_steps, num_periods=0.5, alpha=0.0, beta=0.001,
    name=None
)

Обратите внимание, что линейное косинусное уменьшение более агрессивно, чем косинусное уменьшение, и можно использовать более высокие начальные скорости обучения.

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

Функция возвращает уменьшенную скорость обучения. Она вычисляется следующим образом:

global_step = min(global_step, decay_steps)
linear_decay = (decay_steps - global_step) / decay_steps)
cosine_decay = 0.5 * (
    1 + cos(pi * 2 * num_periods * global_step / decay_steps))
decayed = (alpha + linear_decay) * cosine_decay + beta
decayed_learning_rate = learning_rate * decayed

Пример использования:

decay_steps = 1000
lr_decayed = linear_cosine_decay(learning_rate, global_step, decay_steps)
Аргументы
learning_rate Скалярное float32 или float64 тензор или число Python. Начальная скорость обучения.
global_step Скалярное int32 или int64 Tensor или число Python. Глобальный шаг, используемый для вычисления уменьшения.
decay_steps Скалярное int32 или int64 Tensor или число Python. Количество шагов для уменьшения.
num_periods Количество периодов в косинусной части уменьшения. См. вычисление выше.
alpha См. вычисление выше.
beta См. вычисление выше.
name Строка. Необязательное имя операции. По умолчанию 'LinearCosineDecay'.
Возвращаемое значение
Скалярное Tensor того же типа, что и learning_rate. Уменьшенная скорость обучения.
Исключения
ValueError если global_step не указано.

Ссылки:

Поиск нейронного оптимизатора с помощью обучения с подкреплением: Bello и др., 2017 (pdf) Стохастический градиентный спуск с теплыми перезапусками: Loshchilov и др., 2017 (pdf)

Совместимость с режимом Eager

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

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/compat/v1/train/linear_cosine_decay

Spec-Zone.ru

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