Spec-Zone.ru › TensorFlow 2.9

tf.keras.optimizers.legacy.Adamax

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

Наследует от: Adamax, Optimizer

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

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

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

tf.compat.v1.keras.optimizers.legacy.Adamax

tf.keras.optimizers.legacy.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 Значение типа float, или расписание, которое является tf.keras.optimizers.schedules.LearningRateSchedule. Скорость обучения.
beta_1 Вещественное значение или постоянный тензор с вещественным значением. Скорость экспоненциального затухания для оценок первого момента.
beta_2 Вещественное значение или постоянный тензор с вещественным значением. Скорость экспоненциального затухания для экспоненциально взвешенной бесконечной нормы.
epsilon Малая константа для числовой устойчивости.
name Необязательное имя для операций, создаваемых при применении градиентов. По умолчанию "Adamax".
**kwargs Дополнительные ключевые аргументы. Разрешенные аргументы: clipvalue, clipnorm, global_clipnorm. Если clipvalue (вещественное значение) задано, градиент каждого веса ограничивается значением, не превышающим это значение. Если clipnorm (вещественное значение) задано, градиент каждого веса отдельно ограничен так, чтобы его норма не превышала это значение. Если global_clipnorm (вещественное значение) задано, градиент всех весов ограничивается значением, чтобы их глобальная норма не превышала это значение.

Ссылка:

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

© 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/legacy/Adamax

Spec-Zone.ru

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