Mamba против Transformers: как селективные пространства состояний решают проблему длинного контекста

Yannic Kilcher 173 тыс. 40 мин 4 мин 24.12.2023
Главное

В мире искусственного интеллекта доминирование архитектуры Transformer кажется неоспоримым, однако её фундаментальные ограничения — квадратичная сложность вычислений и огромные требования к памяти при работе с длинными текстами — заставляют исследователей искать альтернативы. В новом видео технический обозреватель Янник Килчер (Yannic Kilcher) подробно разбирает научную работу Альберта Гу (Albert Gu) и Три Дао (Tri Dao) под названием «Mamba: Linear-Time Sequence Modeling with Selective State Spaces». Автор объясняет, почему Mamba претендует на роль «убийцы Трансформеров», предлагая линейное масштабирование и высокую эффективность при сохранении качества моделирования.

🧠 Проблема выбора: Transformers против RNN и SSM 0:25

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

🐍 Mamba и концепция «Селективности» 9:40

Ключевое новшество Mamba — переход от структурированных (Structured) к селективным (Selective) моделям пространства состояний . Янник объясняет, что авторы статьи идентифицировали главную слабость предыдущих SSM: неспособность выполнять контекстно-зависимые рассуждения .

В классических SSM матрицы переходов $A$ и $B$ фиксированы для всей последовательности. Mamba же делает эти параметры зависимыми от текущего входа (input dependent) . Это позволяет модели «решать», какую информацию из прошлого сохранить в скрытом состоянии, а какую — игнорировать.

По словам Килчера, Mamba находится на золотой середине:

  1. Она сохраняет линейную структуру, что позволяет использовать эффективные алгоритмы вычислений.
  2. Она внедряет «селективность», делая модель почти такой же мощной, как Трансформеры в задачах понимания контекста .
  3. Она не требует Bloom-фильтров или кэша ключей/значений (KV-cache), что радикально ускоряет генерацию текста .

⚙️ Аппаратная оптимизация и параллельное сканирование 17:07

Проблема селективности в том, что она нарушает возможность использовать простую свертку (convolution) для быстрого обучения . Если параметры меняются на каждом шаге, вы не можете «промчаться» по всей последовательности одним умножением матриц.

Чтобы решить это, авторы Mamba разработали аппаратно-зависимый алгоритм (Hardware-aware Algorithm). Килчер выделяет два ключевых аспекта:

📊 Результаты и будущее архитектуры 36:10

Оценивая перспективы Mamba, Килчер отмечает, что модель показывает впечатляющие результаты в масштабировании (scaling laws) .

Тем не менее, Килчер призывает к осторожности: на момент публикации статьи эксперименты проводились на моделях до 1–3 млрд параметров, в то время как мейнстрим-модели (например, Llama) начинаются от 7 млрд . «Жюри еще не вынесло вердикт», — шутит ведущий, рассуждая о том, сможет ли Mamba полностью вытеснить Трансформеры на сверхкрупных масштабах .

💻 Разбор кода и архитектурные блоки 37:56

В завершение видео Янник проводит краткий аудит репозитория Mamba на GitHub . Он рекомендует начинать изучение с файла mamba_simple.py, так как там логика представлена в наиболее чистом виде, без сложных оптимизаций для CUDA .

Основные этапы вычисления одного блока Mamba:

  1. Линейная проекция: Входной токен расширяется в более высокую размерность .
  2. 1D-свертка: Локальное смешивание информации между соседними токенами .
  3. Дискретизация: Параметры непрерывной системы переводятся в дискретные веса .
  4. Рекурренция (SSM): Обновление скрытого состояния и вычисление выхода .
  5. Gating (умножение на затвор): Объединение выхода SSM с дополнительной веткой вычислений .

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

💬 Цитаты

«Трансформер может динамически и селективно смотреть на отдельные элементы прошлого, но вы платите за это квадратичной сложностью.»

Янник Килчер 01:47

«Mamba — это не просто SSM, это комбинация селективности с 1D-свертками, проекциями и механизмами гейтинга.»

Янник Килчер 18:02

«Во время обучения Mamba похожа на Трансформер, а во время инференса — на RNN.»

Янник Килчер 10:36
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
SRAM
Очень быстрая, но дорогая и маленькая память внутри графического процессора, используемая как кэш.
HBM
Высокопроизводительная основная видеопамять (High Bandwidth Memory), которая медленнее, чем SRAM.
Discretization
Процесс перевода параметров из непрерывного математического представления в дискретные веса нейросети.
Parallel Scan
Алгоритм, позволяющий вычислять последовательные (зависимые) операции параллельно на GPU.
KV-cache
Кэш ключей и значений в Трансформерах, который растет вместе с длиной контекста и замедляет работу.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект Mamba SSM Transformers Янник Кильхер Selective State Spaces масштабирование AI