По какой причине Adam Optimizer считается устойчивым к значению своих гиперпараметров?


24

Я читал об оптимизаторе Адама для Deep Learning и натолкнулся на следующее предложение в новой книге « Deep Learning » Бенджо, Гудфеллоу и Курвилля:

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

если это правда, то это большое дело, потому что гиперпараметрический поиск может быть очень важным (по моему опыту, по крайней мере) в статистической эффективности системы глубокого обучения. Таким образом, мой вопрос: почему Адам Робаст обладает такими важными параметрами? Специально и ?β1β2

Я читал статью Адама, и она не дает никакого объяснения тому, почему он работает с этими параметрами или почему он устойчив. Они оправдывают это в другом месте?

Кроме того, когда я читаю статью, кажется, что число гиперпараметров, которые они пробовали, было очень маленьким, для только 2 и только для 3. Как это может быть тщательным эмпирическим исследованием, если оно работает только для гиперпараметров 2x3 ?β1β2


1
Отправить письмо авторам книги, которые сделали претензию. Спросите их, на чем основано требование.
Марк Л. Стоун

1
@ MarkL. Стоун сказал, что сказал это только потому, что в реферате это сказано. Вряд ли убедительный аргумент. Возможно, в следующий раз я напишу по электронной почте авторам настоящей статьи.
Чарли Паркер

7
И поэтому самореклама становится фактом.
Марк Л. Стоун

@ MarkL. Камень в его защиту, возможно, он был занят, чтобы ответить правильно, и я связался только с 1 из 3 авторов. Может быть, я мог бы связаться с другими, но я не уверен, что они ответят, если (по крайней мере) один из них будет профессором. С рекламой в DL, держу пари, он получает 300 электронных писем ежедневно.
Чарли Паркер

7
Теперь, когда книга вышла, авторы Адама получили подтверждение того, насколько хорош их алгоритм. Напоминает мне о землетрясении в районе залива 89 года. Новостная радиостанция сделала неподтвержденное сообщение о количестве погибших в результате аварии на шоссе, заявив, что они запрашивают подтверждение у администрации губернатора. Затем они позвонили губернатору и спросили, может ли он подтвердить число погибших. Он сказал, что это то, что он слышал. Затем радиостанция сообщила, что теперь у них есть подтверждение от губернатора. Оказывается, губернатор имел в виду, что он слышал это, как оказалось, на той радиостанции. Итак, циркулярное подтверждение.
Марк Л. Стоун

Ответы:


7

Что касается доказательств в отношении претензии, я считаю, что единственное доказательство, подтверждающее претензию, можно найти на рисунке 4 в их документе . Они показывают окончательные результаты в диапазоне различных значений для , и .β1β2α

Лично я не нахожу их аргументы убедительными, в частности потому, что они не дают результатов по целому ряду проблем. С учетом сказанного, отмечу , что я использовал ADAM для различных проблем, и мой личный вывод , что значения по умолчанию и сделать , кажется удивительно надежным, хотя хорошая сделка возился с требуется.β1β2 α


5

β1β2

Это находится в огромном контрасте со стоковым ванильным стохастическим градиентным спуском, где:

  • Скорость обучения не зависит от параметра, но существует единая глобальная скорость обучения, которая применяется прямо по всем параметрам.
    • (кстати, это одна из причин, по которой данные часто отбеливаются, нормализуются перед отправкой в ​​сети, чтобы попытаться сохранить идеальные веса для каждого параметра одинаковыми)
  • предоставленная скорость обучения является точной используемой скоростью обучения и не будет адаптироваться со временем

Адам не единственный оптимизатор с адаптивными показателями обучения. Как говорится в статье Адама, она тесно связана с Adagrad и Rmsprop, которые также чрезвычайно нечувствительны к гиперпараметрам. Тем более, Rmsprop работает довольно хорошо.

Но Адам вообще лучший. С очень немногими исключениями Адам будет делать то, что вы хотите :)

Есть несколько довольно патологических случаев, когда Адам не будет работать, особенно для некоторых очень нестационарных распределений. В этих случаях Rmsprop является отличным резервным вариантом. Но, вообще говоря, для большинства непатологических случаев Адам работает очень хорошо.


1
β1,β2

Да, если вы имеете в виду, «есть ли здесь возможность глубже изучить причину?», Ну ... может быть.
Хью Перкинс

2
это не "более глубокий вопрос". Это кажется одним из важнейших пунктов статьи, не так ли? Все дело в том, что он делает вещи «сам», но есть и другие гиперпараметры, которые кажутся волшебно устойчивыми. Это проблема, которую я имею. Мне кажется, что это связано с ядром статьи, если я не понял истину Адама.
Чарли Паркер

«Есть несколько довольно патологических случаев, когда Адам не будет работать, особенно для некоторых очень нестационарных распределений». <- есть какие-нибудь ссылки здесь?
Миморалия

0

Глядя на формулы ADAM, кажется немного загадочным, что после очень большого числа пакетных итераций (скажем, ~ 400 КБ) величина градиента, основанного на исходной ошибке, сама по себе не играет никакой реальной роли в предпринятом шаге, который, похоже, стремится к параметр конфигурации скорости обучения в соответствующем знаке.
Возможно, ADAM контролирует адаптацию веса лучше, чем простую SGD во время первых итераций / эпок, но в будущем обновление кажется сведенным к чему-то несколько наивному (?) Кто-нибудь может дать некоторую интуицию о том, почему это действительно желательно и / или имеет тенденцию работать хорошо?


На самом деле кажется, что величина градиента, основанного на ошибке, сама по себе не играет реальной роли даже с самого начала. Вопрос в том, почему такая нормализация работает хорошо, и что она подразумевает в отношении интуиции GD, направляющей DL, и других распространенных моделей обучения?
Дэнни Розен
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.