Почему бы не всегда использовать технику оптимизации ADAM?

12

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

Почему не всегда использовать Адама? Зачем вообще использовать RMSProp или оптимизаторы импульса?

PyRsquared
источник
1
Я не верю, что существует какой-либо строгий, формализованный способ поддержать любое утверждение. Это все чисто эмпирически, так как поверхность ошибки неизвестна. Как показывает опыт, ADAM хорошо работает там, где другие терпят неудачу (сегментация экземпляров), хотя и не без недостатков (сходимость не монотонная)
Алекс,
2
Адам быстрее сходится. SGD медленнее, но обобщает лучше. В конце концов, все зависит от ваших конкретных обстоятельств.
agcala

Ответы:

13

Вот сообщение в блоге, в котором рассматривается статья, в которой утверждается, что SGD - лучший обобщенный адаптер, чем ADAM. https://shaoanlu.wordpress.com/2017/05/29/sgd-all-which-one-is-the-best-optimizer-dogs-vs-cats-toy-experiment/

Часто имеет смысл использовать более одного метода (ансамбля), потому что у каждого метода есть слабость.

Кристофер Клаус
источник
4

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


источник
Для справки: в связанной статье они упоминают некоторые недостатки ADAM и представляют AMSGrad как решение. Однако они приходят к выводу, что то, превзойдет ли AMSGrad ADAM на практике (на момент написания), не является окончательным.
Lus