Обратное распространение ошибки: интуитивное понимание
У нейронной сети могут быть миллионы весов, но когда она ошибается, назад вы получаете всего одно число — потерю (loss), единственный балл, который говорит: «насколько ты в целом ошибся». Вот загадка, которая годами ставила исследователей в тупик: если миллион крошечных ручек-настроек вместе дали один плохой ответ, какие из них заслуживают вины и в какой мере? Обратное распространение ошибки (backpropagation) — это удивительно простой ответ. Оно отправляет ошибку назад по сети, слой за слоем, вручая каждому отдельному весу его точную долю ответственности — и делает это сразу для всех весов, за один проход. Этот урок строит эту идею с самого начала, на реальных числах, которые вы можете проверить вручную.
- Объяснять задачу распределения ответственности (credit assignment problem): почему превратить одно число потери в миллионы поправок для отдельных весов трудно.
- Формулировать цепное правило (chain rule) простыми словами — если A влияет на B, а B влияет на C, то A влияет на C через произведение двух локальных эффектов.
- Проследить полный прямой проход (forward pass) и обратный проход (backward pass) через крошечную сеть и закончить реальными числами градиентов и обновлением веса.
- Объяснять, почему обратное распространение эффективно: один прямой проход плюс один обратный проход дают все градиенты, вместо того чтобы шевелить каждый вес по отдельности.
- Распознавать затухающие и взрывающиеся градиенты (vanishing and exploding gradients), почему они губили ранние глубокие сети, и интуицию, стоящую за способами их исправления.
- Ясно понимать, чем обратное распространение НЕ является — это не то, как учится мозг, и это не запоминание.