Ответ вслух Junior Нейрон и backprop спрашивают часто обновлено

Объясните backprop

Вопрос

Объясните, как обучается нейросеть: что происходит на прямом и обратном проходе и как обновляются веса.

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

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

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

Коротко

Обучение повторяет цикл на мини-батчах. На прямом проходе вход проходит через слои: каждый считает Wx + b и применяет активацию, на выходе считаем loss по сравнению с метками.

Что должно прозвучать в ответе

  • Прямой проход: вычисление выходов слой за слоем и loss, сохранение активаций

  • Обратный проход: цепное правило от loss к первому слою

  • Для слоя: градиент по весам δ·xᵀ, по входу Wᵀδ

  • Шаг оптимизатора по градиентам, обнуление градиентов

  • Батчи и эпохи, повторение до сходимости

Что могут спросить следом

  • Зачем хранить активации?
  • Что будет, если не обнулять градиенты между шагами?

Разбор

Обучение повторяет цикл на мини-батчах. На прямом проходе вход проходит через слои: каждый считает Wx + b и применяет активацию, на выходе считаем loss по сравнению с метками. Промежуточные значения сохраняем. На обратном проходе по цепному правилу идём от loss назад: для каждого слоя, зная градиент по его выходу δ, получаем градиент по весам как δ·xᵀ (поэтому нужен сохранённый вход x) и градиент по входу Wᵀδ, который передаём предыдущему слою, умножив на производную активации. Когда градиенты по всем параметрам посчитаны, оптимизатор делает шаг, например w ← w - η·g, и градиенты обнуляются, иначе они накопятся со следующего шага. Так проходим эпоху за эпохой, следя за loss на валидации.

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

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