Выбор ответа Middle Нейрон и backprop обновлено

Все веса нулями

Вопрос

Почему нельзя инициализировать все веса скрытого слоя одинаковыми значениями (например нулями)?

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

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

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

Коротко

Правильный ответ: Все нейроны слоя получат одинаковые градиенты и останутся копиями: симметрия не рушится. Если нейроны одинаковы на старте, их выходы и градиенты совпадают, и обновления сохраняют равенство.

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

  1. Все нейроны слоя получат одинаковые градиенты и останутся копиями: симметрия не рушитсяправильный ответ
  2. Нули вызовут деление на ноль при нормировке активаций в прямом проходе
  3. Обучение пойдёт, просто медленнее: случайный шум в градиентах мини-батчей постепенно разведёт веса
  4. Можно, если использовать Adam: адаптивные шаги по каждому весу разрушают симметрию

Разбор

Если нейроны одинаковы на старте, их выходы и градиенты совпадают, и обновления сохраняют равенство. Слой из 512 нейронов работает как один. Поэтому веса инициализируют случайно (смещения нулями можно).

  • Делений в прямом проходе нет.
  • Дело не в скорости: симметрия сохраняется навсегда.
  • Оптимизатор не разрушает симметрию, градиенты одинаковы.

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

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