Spec-Zone.ru › TensorFlow 2.4

tf.keras.optimizers.Adamax

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

Оптимизатор, реализующий алгоритм Adamax.

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

Просмотр псевдонимов

Основные псевдонимы

tf.optimizers.Adamax

Псевдонимы для миграции

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

tf.compat.v1.keras.optimizers.Adamax

tf.keras.optimizers.Adamax(
    learning_rate=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-07,
    name='Adamax', **kwargs
)

Это вариант Adam, основанный на бесконечной норме. Значения по умолчанию соответствуют тем, которые указаны в статье. Adamax иногда превосходит adam, особенно в моделях с вложениями.

Инициализация:

m = 0  # Initialize initial 1st moment vector
v = 0  # Initialize the exponentially weighted infinity norm
t = 0  # Initialize timestep

Правило обновления параметра w с градиентом g описано в конце раздела 7.1 статьи:

t += 1
m = beta1 * m + (1 - beta) * g
v = max(beta2 * v, abs(g))
current_lr = learning_rate / (1 - beta1 ** t)
w = w - current_lr * m / (v + epsilon)

Аналогично Adam, epsilon добавляется для повышения числовой устойчивости (особенно для устранения деления на ноль, когда v_t == 0).

В отличие от Adam, разреженная реализация этого алгоритма (используется, когда градиент — объект IndexedSlices, обычно из-за tf.gather или поиска вложений в прямом проходе) обновляет только фрагменты переменных и соответствующие m_t, v_t термины, когда эта часть переменной использовалась в прямом проходе. Это означает, что поведение при разреженных данных отличается от поведения при плотных данных (аналогично некоторым реализациям импульса, которые игнорируют импульс, пока фрагмент переменной фактически не был использован).

Аргументы
learning_rate Значение с плавающей точкой, или расписание, являющееся tf.keras.optimizers.schedules.LearningRateSchedule. Скорость обучения.
beta_1 Вещественное значение или тензор с постоянным вещественным значением. Скорость экспоненциального затухания для оценок первого момента.
beta_2 Вещественное значение или тензор с постоянным вещественным значением. Скорость экспоненциального затухания для экспоненциально взвешенной бесконечной нормы.
epsilon Малая константа для числовой устойчивости.
name Необязательное имя для операций, созданных при применении градиентов. По умолчанию "Adamax".
**kwargs Параметры ключевых слов. Допускается одно из "clipnorm" или "clipvalue". "clipnorm" (вещественное число) ограничивает градиенты по норме; "clipvalue" (вещественное число) ограничивает градиенты по значению.

Ссылка:

  • Kingma et al., 2014
Исключения
ValueError в случае неверного аргумента.

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

Spec-Zone.ru

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