Выбор ответа Junior Градиентный спуск и выпуклость спрашивают часто обновлено

Слишком большой learning rate

Вопрос

Loss во время обучения скачет и растёт, иногда превращается в NaN. Самая вероятная причина?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Слишком большой learning rate: шаги перелетают минимум. При большом шаге каждое обновление перескакивает через минимум всё дальше, loss растёт и переполняется.

Варианты ответа

  1. Слишком маленький learning rate: шаги застревают на плато
  2. Слишком большой learning rate: шаги перелетают минимумправильный ответ
  3. Слишком много эпох: модель переобучается на трейне
  4. Слишком маленькая модель: ей не хватает ёмкости

Разбор

При большом шаге каждое обновление перескакивает через минимум всё дальше, loss растёт и переполняется. Первое, что делают: уменьшают lr в 3-10 раз, добавляют warmup или gradient clipping.

  • Маленький lr даёт медленное, но монотонное убывание.
  • Много эпох ведёт к переобучению, а не к взрыву loss на трейне.
  • Маленькая модель недообучается, loss не растёт.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.