Как модели на самом деле обучаются — от обычного градиентного спуска до Adam
Импульс даёт градиентному спуску память. Вместо того чтобы использовать только текущий градиент, он хранит скользящее среднее недавних градиентов и делает шаг в этом накопленном направлении.
Это помогает двумя способами: он сглаживает шумные градиенты и набирает скорость в направлениях, где градиенты раз за разом совпадают. Поперёк узкого оврага чередующиеся боковые градиенты гасят друг друга; вдоль полезного направления повторяющиеся градиенты складываются.
Шар для боулинга не забывает последний толчок. Один толчок приводит его в движение, а повторные толчки в ту же сторону наращивают скорость. Небольшие боковые тычки не разворачивают его мгновенно. Импульс делает оптимизацию похожей не на отдельные шаги, а на движение по инерции. Понаблюдайте за этим ниже: сначала запустите обычный спуск с β = 0, затем увеличьте β и запустите снова. Рикошет из стороны в сторону затухает, а путь набирает скорость вдоль лощины.