Stanford CS231N: почему рекуррентные нейросети снова становятся актуальными

Stanford Online 26,2 тыс. 1 ч 11 мин 4 мин 02.09.2025
Главное

В современной индустрии искусственного интеллекта доминируют трансформеры, однако основы работы с последовательностями были заложены гораздо раньше. В рамках курса Stanford CS231N (весна 2025) прошла лекция, посвященная рекуррентным нейронным сетям (RNN) — архитектурам, которые, несмотря на возраст, переживают своеобразный ренессанс в виде современных моделей вроде Mamba.

🔄 Основы рекуррентных нейронных сетей 7:22

В отличие от стандартных нейронных сетей с фиксированным размером входа и выхода, рекуррентные нейронные сети (RNN) предназначены для обработки последовательностей переменной длины . Ключевая особенность RNN — наличие внутреннего (скрытого) состояния ($h$), которое обновляется на каждом временном шаге по мере обработки данных.

Спикер выделяет несколько типов задач моделирования последовательностей:

Математически простейшая (Vanilla) RNN описывается формулой, где новое скрытое состояние $h_t$ зависит от предыдущего состояния $h_{t-1}$ и текущего входа $x_t$, пропущенных через функцию активации (обычно $tanh$) . Принципиально важно, что на каждом шаге используются одни и те же веса ($W$), что обеспечивает симметрию и позволяет модели обрабатывать последовательности любой длины .

🏗️ Анатомия forward-прохода: ручная сборка RNN 14:00

Для демонстрации работы алгоритма лектор приводит пример «игрушечной» задачи: детектирование двух идущих подряд единиц в потоке битов. Если на вход поступает последовательность 0, 1, 1, 0, модель должна вывести 1 на третьем шаге .

В этом примере скрытое состояние должно хранить информацию о предыдущем и текущем битах. Спикер показывает, как сконструировать весовые матрицы вручную, не прибегая к обучению :

  1. Матрица $W_{xh}$ преобразует вход и записывает его в скрытое состояние.
  2. Матрица $W_{hh}$ переносит значение текущего входа в ячейку «предыдущего» для следующего шага .
  3. Выход вычисляется как линейная комбинация значений скрытого состояния с последующей активацией ReLU .

Хотя в реальности веса ищутся градиентным спуском, этот пример наглядно иллюстрирует, как RNN «запоминает» контекст через передачу вектора состояния от шага к шагу .

📉 Обучение и проблема обратного распространения во времени 24:11

Обучение RNN осложняется тем, что один и тот же набор весов используется многократно. Ведущий объясняет механизм Backpropagation Through Time (BPTT): градиенты вычисляются для каждого временного шага, а затем суммируются для обновления общей матрицы весов .

Основная практическая проблема — нехватка памяти GPU при работе с очень длинными последовательностями. Для решения этой задачи используется «усеченное» обратное распространение (Truncated BPTT) :

🔠 Символьные языковые модели и их «необъяснимая эффективность» 36:39

В 2015 году Андрей Карпати (Andrej Karpathy), бывший инструктор этого курса, опубликовал статью о «необъяснимой эффективности» RNN. Он показал, что простая рекуррентная сеть, предсказывающая следующий символ в тексте, может научиться писать стихи «под Шекспира» или генерировать синтетический код на C .

В ходе обучения такая модель проходит несколько стадий:

  1. Начальная: полная бессмыслица, случайный набор букв .
  2. Средняя: появление пробелов, слов, похожих на английские, пунктуации.
  3. Продвинутая: соблюдение структуры (имена персонажей в пьесах, открывающиеся и закрывающиеся скобки в коде) .

Анализ активаций нейронов в таких сетях выявил удивительную интерпретируемость. Спикер демонстрирует «нейроны-детекторы», которые активируются только внутри кавычек, при увеличении глубины вложенности кода (отступы) или при приближении конца строки . Это доказывает, что RNN внутренне формируют сложные абстракции для отслеживания контекста .

🧱 От Vanilla RNN к LSTM и современным State Space Models 58:27

Классические RNN страдают от проблемы затухающих градиентов (vanishing gradients). При перемножении малых значений в длинной цепочке $tanh$-активаций сигнал о классификации на конце последовательности просто не доходит до первых слоев .

Для борьбы с этим в 1990-х была создана архитектура LSTM (Long Short-Term Memory). Вместо одного скрытого состояния она использует сложную систему «ворот» (gates) :

  1. Forget gate: решает, какую часть информации из прошлого стоит забыть.
  2. Input gate: определяет, что из текущего входа записать в память.
  3. Output gate: контролирует, что выдать наружу.

В LSTM создается своеобразная «информационная магистраль», по которой данные могут течь через сотни шагов без применения нелинейных функций активации, что резко снижает риск затухания градиента . Спикер проводит параллель между этой структурой и skip-connections в архитектуре ResNet .

В завершение лекции ведущий отмечает, что идеи RNN возвращаются в виде State Space Models (SSM) и моделей вроде Mamba . Они решают главную проблему трансформеров — квадратичную сложность вычислений при росте длины контекста. RNN и SSM имеют линейную сложность и теоретически неограниченное окно контекста, что делает их крайне перспективными для задач будущего, требующих обработки гигантских объемов данных .

💬 Цитаты

«RNN не имеют ограничения на длину контекста. Они могут принимать последовательность бесконечной длины.»

Спикер Stanford Online 48:31

«Исчезающий градиент — основная причина, по которой люди не используют очень длинные Vanilla RNN на практике.»

Спикер Stanford Online 1:04:17
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Скрытое состояние (Hidden State)
Вектор, который служит «памятью» сети, передавая информацию от предыдущих элементов последовательности к текущим.
Backpropagation Through Time (BPTT)
Алгоритм обучения рекуррентных сетей, где градиенты суммируются по всем временным шагам.
Vanishing Gradients
Проблема, при которой значения градиентов становятся настолько малыми при обратном распространении, что веса перестают обновляться.
State Space Models (SSM)
Класс современных моделей (например, Mamba), использующих принципы RNN для достижения линейной сложности вычислений.
📊 Цифры
🗓 Хронология
  1. 2015 Публикация статьи Андрея Карпати о возможностях символьных RNN.
  2. 2023-2024 Взлет популярности моделей Mamba и RWKV как альтернативы трансформерам.
⚖️ Другая сторона
Искусственный интеллект RNN LSTM Mamba Stanford Online Backpropagation