Clear Sky Science · ru

Спайковые нейронные сети без обратного распространения ошибок с алгоритмом «вперёд–вперёд»

· Назад к списку

Обучение компьютеров думать в спайках

Многие современные продвинутые машины учатся с помощью математических приёмов, которые мало похожи на то, как работает мозг. В этой работе исследуется новый способ обучения «спайковых» нейронных сетей — моделей, которые обмениваются короткими электрическими импульсами, подобно реальным нейронам — без опоры на стандартный рецепт обратного распространения ошибок. Авторы показывают, что метод, вдохновлённый биологией и называемый алгоритмом «вперёд–вперёд», может научить эти спайковые сети распознавать изображения и звуки с точностью, близкой к лучшим существующим методам и иногда превосходя её, при этом лучше подходя для энергоэффективного нейроморфного аппаратного обеспечения.

Figure 1
Figure 1.

Почему спайковые сети трудно обучать

Спайковые нейронные сети обрабатывают информацию дискретными всплесками, или спайками, во времени, а не плавными непрерывными величинами. Это делает их привлекательными для энергоэффективных вычислений и моделирования биологических мозгов. Но это также создает проблему для традиционных алгоритмов обучения: обратное распространение требует гладких градиентов для настройки связей между нейронами, в то время как спайки — события «всё или ничего». Существуют обходные решения — например, суррогатные градиенты, которые во время обучения делают вид, что спайки плавные — но обратное распространение по-прежнему требует хранения большого объёма промежуточной активности и передачи точных сигналов ошибки назад через все слои, что вычислительно тяжело и биологически малореалистично.

Другой путь: обучение с двумя прямыми проходами

Алгоритм «вперёд–вперёд» предлагает контрастный подход. Вместо одного прямого прохода и последующего обратного распространения сигналов ошибки каждый слой сети обучается только с помощью двух прямых проходов: одного с «положительными» примерами, соответствующими правильной метке, и одного с «отрицательными» примерами, намеренно сконструированными как неправильные в контролируемом виде. Для каждого слоя сеть измеряет простой показатель, называемый «качество» (goodness), основанный на том, насколько сильно реагируют её нейроны. Цель — сделать качество высоким для положительных входов и низким для отрицательных. Поскольку каждый слой использует только собственную активность для обновления связей, нет необходимости отправлять сигналы ошибки назад через всю сеть, и алгоритм становится более локальным, модульным и удобным для аппаратной реализации.

Как заставить «вперёд–вперёд» работать со спайками

Авторы адаптируют эту идею к спайковым сетям, тщательно продумывая кодирование входов и меток и способ измерения качества. Во-первых, изображения или звуковые паттерны преобразуются в последовательности спайков с помощью кодирования частотой (rate coding) — более интенсивные входы дают больше спайков в течение нескольких временных шагов. Метки встроены прямо в часть входа, так что один вектор несёт и данные, и кандидат-класс. Положительные образцы используют правильную метку; отрицательные — намеренно «тяжёлую» неправильную метку, выбранную из классов, которые сеть склонна перепутать. По мере того как спайки проходят через слои утечково-интегрирующихся нейронов (leaky integrate-and-fire), модель подсчитывает, как часто каждый нейрон срабатывает при положительных и отрицательных проходах. Качество слоя определяется суммарными счётами спайков, а гладкая функция потерь поощряет, чтобы качество по положительным примерам превышало качество по отрицательным с достаточным запасом, при этом поддерживая стабильные градиенты.

Figure 2
Figure 2.

Насколько эффективно этот спайковый метод?

Чтобы протестировать подход, авторы обучают компактные спайковые сети на нескольких стандартных задачах зрения, включая рукописные цифры (MNIST), предметы одежды (Fashion-MNIST), японские символы и цветные изображения объектов (CIFAR-10), а также на нейроморфных наборах данных, где входы уже представлены спайками, таких как событийные записи цифр (N-MNIST) и произнесённые цифры, закодированные в виде спайк-последовательностей (SHD). Несмотря на использование всего двух скрытых слоёв и всего лишь 10 временных шагов, их спайковые модели на основе «вперёд–вперёд» сравнимы или превосходят другие спайково-«вперёд–вперёд» системы и приближаются к лучшим спайковым сетям, обученным обратным распространением. В более требовательных временных задачах, таких как SHD, их метод даже превосходит несколько моделей, обученных с помощью обратного распространения, причём использует меньше параметров и легче переносится на событийно-ориентированное аппаратное обеспечение.

Что это означает для будущих машин, похожих на мозг

Ключевая мысль для неспециалиста в том, что появился перспективный способ обучать биологически вдохновлённые сети на основе спайков без опоры на тяжёлую технику обратного распространения ошибок. Оценивая каждый слой по тому, насколько сильно он реагирует на хорошие и плохие примеры, и работая исключительно прямыми проходами, подход «вперёд–вперёд» делает обучение локальным и модульным, при этом обеспечивая конкурентоспособную точность. Хотя некоторые ингредиенты — например, суррогатные градиенты и явное встраивание меток — не являются строго биологичными, эта схема приближает машинное обучение к тому, как реальные нервные системы могут адаптироваться, и открывает путь к более эффективным, маломощным интеллектуальным устройствам, которые обучаются на поступающих потоке сенсорных данных в реальном времени.

Цитирование: Ghader, M., Kheradpisheh, S.R., Farahani, B. et al. Backpropagation-free spiking neural networks with the forward–forward algorithm. Sci Rep 16, 14294 (2026). https://doi.org/10.1038/s41598-026-41671-4

Ключевые слова: спайковые нейронные сети, обучение вперед–вперед, нейроморфные вычисления, биологически вдохновлённый ИИ, альтернативы обратному распространению