Янник Килхер: «Предиктивное кодирование — биологический аналог backprop?»

Yannic Kilcher 33,6 тыс. 48 мин 3 мин 29.11.2020
Главное

Предиктивное кодирование: как мозг имитирует обратное распространение ошибки 0:00

Янник Килхер (Yannic Kilcher) в своем новом видеообзоре разбирает научную работу «Predictive coding approximates backprop along arbitrary computation graphs» (авторы: Baron Millage, Alexander Chance, Christopher L. Buckley). Ключевая идея исследования заключается в том, что алгоритм предиктивного кодирования (predictive coding) может аппроксимировать алгоритм обратного распространения ошибки (backprop) в произвольных вычислительных графах, используя исключительно локальные и геббиевские обновления, что делает его биологически правдоподобным кандидатом на модель процессов обучения в коре головного мозга.

Проблема биологической правдоподобности обучения 2:12

Традиционный алгоритм обратного распространения ошибки (backprop) является фундаментом современного глубокого обучения, позволяя эффективно вычислять градиенты для глубоких сетей. Однако, по мнению автора видео, он сталкивается с фундаментальной проблемой при попытке переноса на биологические нейронные сети:

Механизм предиктивного кодирования 9:21

В отличие от стандартного прямого прохода, предиктивное кодирование превращает обучение в своего рода «вариационную игру в угадайку». Основная логика работы алгоритма, как утверждает Янник Килхер, заключается в следующем:

  1. Генеративная модель: Каждый слой пытается предсказать (угадать) значение активации следующего слоя на основе своих входных данных.
  2. Итеративное уточнение: Прежде чем обновлять веса, алгоритм запускает внутренний цикл, в котором «догадки» о значениях скрытых слоев (v_i) уточняются, чтобы минимизировать ошибку.
  3. Локальные сигналы ошибки: Ошибка не транслируется как глобальный градиент, а распределяется локально: каждый слой корректирует свою «догадку», чтобы стать более согласованным с прогнозом следующего слоя.
  4. Обновление весов: Только после достижения равновесия в этих догадках происходит обновление параметров (весов), которое также является локальной операцией.

Эмпирические результаты и ограничения 7:32

Авторы исследования демонстрируют, что предложенный метод работает для различных архитектур: CNN, RNN и даже LSTM.

Геббиевское обучение в коде 36:21

При анализе кода авторы показывают, что если слой является линейным (с последующей поэлементной нелинейностью), то правила обновления весов становятся «геббиевскими» (Hebbian updates).

Янник Килхер заключает, что, хотя это не доказывает, что мозг использует именно этот метод, это весомый аргумент в пользу того, что биологические нейронные сети могут аппроксимировать градиенты backprop гораздо ближе, чем считалось ранее.

💬 Цитаты

«Люди думали, что backprop невозможен в мозгу, поэтому мозг не может делать backprop. Теперь мы видим, что мозг может делать что-то, что аппроксимирует его градиенты.»

Янник Килхер 47:04
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Backprop
Алгоритм обратного распространения ошибки, используемый для обучения нейронных сетей.
Предиктивное кодирование
Теория, согласно которой мозг постоянно предсказывает входящие сигналы.
Геббиевские обновления
Правило обучения, при котором связь между нейронами усиливается, если они активируются одновременно.
Вариационная свободная энергия
Математическая величина, минимизация которой позволяет аппроксимировать вероятностные распределения.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект Predictive coding Backpropagation Hebbian learning Yannic Kilcher