ДалееСледующее руководство
ZeRO и сегментированные оптимизаторы
Технический
Техническое РУКОВОДСТВО
Адам — это «рабочая лошадка» оптимизатора большинства современных нейронных сетей, автоматически настраивающая отдельную скорость обучения для каждого параметра.
Прослушайте это руководствоОзвучено ИИ · ~2 min
Это важно, поскольку делает обучение глубоких моделей более быстрым и менее сложным, чем простой градиентный спуск.
Адам (Адаптивная оценка момента), представленный Кингмой и Ба в 2014 году, сочетает в себе две идеи. Во-первых, импульс: он сохраняет экспоненциально затухающее среднее значение прошлых градиентов (первый момент), поэтому обновляет скорость построения в последовательных направлениях. Во-вторых, масштабирование по параметрам: оно отслеживает среднее значение квадратов градиентов (второй момент) и делит каждый шаг на квадратный корень из этого значения, поэтому параметры с большими, зашумленными градиентами делают меньшие шаги, а редко обновляемые — большие шаги. Такая адаптивность означает, что вы часто можете использовать одну скорость обучения во всей сети. Вариант AdamW отделяет снижение веса от обновления градиента и стал стандартом для обучения больших преобразователей и языковых моделей.
Обучение больших языковых моделей, таких как GPT и Llama, которые используют AdamW в качестве стандартного оптимизатора.
Точная настройка предварительно обученного классификатора изображений (например, ResNet) на пользовательском наборе данных только со скоростью обучения Адама по умолчанию.
Обучение моделей диффузии, лежащих в основе генераторов изображений, таких как Stable Diffusion.
Запуск 8-битного Adam в библиотеках, таких как bitsandbytes, для размещения состояний оптимизатора в ограниченной памяти графического процессора.
Adam и AdamW остаются доминирующими, но исследования повышают эффективность моделей с триллионом параметров, где хранение двух дополнительных значений на вес обходится дорого. Варианты с облегченной памятью, такие как Adafactor, 8-битный Adam и более новые оптимизаторы, такие как Lion (который использует только знаковый импульс) и Sophia, стремятся достичь качества Адама с меньшим объемом памяти или более быстрой сходимостью. Ожидайте, что адаптивные оптимизаторы, специально настроенные для распределенного обучения с низкой точностью, будут продолжать развиваться.
Бесплатная рассылка
Три проверенных AI-истории каждое утро буднего дня, написанные простым английским. Бесплатно навсегда, без рекламы.
Одно электронное письмо каждый будний день. Отписаться в один клик. Мы никогда не продаем и не передаем ваш адрес.
Проверьте себя
Мгновенная обратная связь по каждому ответу и общий сертификат с проверяемым идентификатором после прохождения курса.
Поддержите бесплатное образование в области искусственного интеллекта. AI Understanding — это некоммерческая организация 501(c)(3). Никакой рекламы и платного доступа. Сделать пожертвование
Адам — это «рабочая лошадка» оптимизатора большинства современных нейронных сетей, автоматически настраивающая отдельную скорость обучения для каждого параметра. Это важно, поскольку делает обучение глубоких моделей более быстрым и менее сложным, чем простой градиентный спуск.
Адам сохраняет экспоненциально убывающее среднее значение градиентов (первый момент) и квадратов градиентов (второй момент) для каждого параметра.
И m, и v инициализируются нулем, поэтому ранние оценки имеют низкое смещение; деление на (1 - beta^t) исправляет это.
AdamW применяет затухание веса непосредственно к весам, а не смешивает его с термином адаптивного градиента, что улучшает обобщение в преобразователях.
Эпсилон (около 1e-8) добавляется к знаменателю, чтобы параметры со средним квадратом градиента, близким к нулю, не вызывали взрыва.
Деля на квадратный корень среднего значения квадрата градиента каждого параметра, Адам масштабирует размер шага для каждого параметра, а не использует одно глобальное значение.
Продолжайте учиться
Другие руководства, выбранные по этой теме
ДалееСледующее руководство
ZeRO и сегментированные оптимизаторы
Технический