Необычное поведение оптимизатора ADAM с AMSGrad - PullRequest
0 голосов
/ 02 мая 2019

Я пытаюсь в некоторых 1, 2 и 3-уровневых сетях LSTM классифицировать земной покров некоторых выбранных пикселей из спектральных данных временного ряда Landsat. Я попробовал различные оптимизаторы (как реализовано в Keras), чтобы увидеть, какой из них лучше, и в целом обнаружил, что вариант ADAM в AMSGrad работает относительно лучше в моем случае. Однако одна странная вещь для меня заключается в том, что для варианта AMSGrad точность обучения и тестирования начинаются с относительно высокого значения с первой эпохи (вместо постепенного увеличения), и после этого он изменяется незначительно, как вы видите на графике ниже. .

Производительность оптимизатора ADAM с включенным AMSGrad

Производительность оптимизатора ADAM при выключенном AMSGrad

Я не видел такого поведения ни в одном другом оптимизаторе. Это показывает проблему в моем эксперименте? Чем можно объяснить это явление?

1 Ответ

0 голосов
/ 02 мая 2019

Обратите внимание на количество слоев LSTM.Они печально известны тем, что легко переписывают данные.Сначала попробуйте меньшую модель (меньшее количество слоев) и постепенно увеличивайте количество единиц в слое.Если вы заметили плохие результаты, попробуйте добавить еще один слой LSTM, , но только после того, как был выполнен предыдущий шаг.

Что касается оптимизаторов, я должен признать, что никогда не использовал AMSGrad.Тем не менее, график с точки зрения точности, кажется, гораздо лучше в случае отключения AMSGrad.Вы можете видеть, что при использовании AMSGrad точность на тренировочном наборе намного лучше, чем на тестовом наборе, что является сильным признаком переобучения.

Не забывайте о простоте, экспериментируйте с простыми моделями и универсальными оптимизаторами.

...