Содержание
  1. State space model и перенос состояния между шагами
  2. Почему селективность зависит от текущего входа
  3. Полная ручная рекуррентная трасса трёх входов
  4. Чем аналогия со скаляром отличается от настоящего блока Mamba
  5. Чистая архитектура без attention и гибрид с attention
  6. Обучение и последовательный инференс: разные способы вычисления
  7. Сжатие истории, задачи извлечения и ограничения обещаний о длинном контексте
  8. Частые вопросы
Справочник

Что такое Mamba: модель с состоянием вместо внимания

12 ноября 2026 · 21 минута чтения

Что такое Mamba: модель с состоянием вместо внимания? Исходная архитектура строится на селективной state space model (SSM). Она переносит сжатое состояние между шагами и отбирает информацию по текущему входу. В первичной работе авторы встроили селективные SSM в упрощённую сквозную нейронную архитектуру без attention и блоков MLP.

State space model и перенос состояния между шагами

State space model описывает динамическую систему через скрытое состояние, которое обновляется на каждом шаге. В документации IBM на странице про Mamba сказано, что SSM принимает входную последовательность x(t) и отображает её в латентное представление состояния h(t), аналогичное скрытому состоянию RNN, чтобы предсказать выходную последовательность y(t). Это описание задаёт базовую рамку: у модели есть память, которая живёт между шагами и накапливает сведения о прошлом.

Уравнение выхода, по той же документации, описывает, как текущее состояние влияет на выход через матрицу C, и как вход влияет на выход напрямую через матрицу D. Здесь важно различать два канала: состояние переносит историю, а прямой путь пропускает текущий сигнал. Матрица D даёт модели возможность отреагировать на вход немедленно, не дожидаясь, пока состояние перестроится.

Дискретизация переводит непрерывное описание в пошаговое. В документации IBM она описана как выборка значений непрерывной функции в конкретные моменты. На практике это означает, что непрерывные параметры A и B превращаются в дискретные аналоги, пригодные для вычисления по шагам последовательности. Без этого шага модель оставалась бы в области дифференциальных уравнений и не работала бы с токенами.

Перенос состояния между шагами — центральная идея. На каждом шаге t модель получает вход x_t, обновляет состояние h_t и формирует выход y_t. Состояние h_t зависит от h_(t-1) и от текущего входа. Такая схема даёт линейное время обучения и постоянное время одного шага инференса при фиксированной архитектуре, что отмечено в первичной работе: рекуррентные модели эффективны, потому что имеют конечное состояние, а их результативность ограничена тем, насколько хорошо это состояние сжало контекст.

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

Исторический контекст помогает понять, откуда взялась эта конструкция. В документации IBM по state space models сказано, что SSM берут начало в инженерии систем управления, где играли заметную роль в навигационных расчётах программы Apollo в 1960-х годах. Там же отмечено, что SSM применяются в электротехнике, обработке сигналов, теории управления и робототехнике, а их ценность — в универсальности для систем с многими входами и выходами. Mamba переносит эту математику в область языковых моделей.

Две простые идеи лежат в основе SSM, по документации IBM: одно уравнение описывает внутреннюю динамику системы, которая напрямую не наблюдается, другое связывает эту динамику с наблюдаемыми результатами. Такая формулировка оказывается гибкой для множества многомерных задач. Для читателя это означает, что Mamba наследует проверенную математическую схему, а новизна лежит в способе выбора параметров.

Цель моделирования состояния, по документации IBM, состоит в том, чтобы найти наименьший набор переменных, полностью описывающих систему. Этот набор называют состоянием. Переменные состояния должны быть линейно независимы: ни одна из них не выражается через комбинацию других сложением или вычитанием. Это требование объясняет, почему состояние стремится к компактности: избыточные переменные не добавляют информации, но занимают память.

Для практического понимания полезно держать в голове простую картину. Состояние — это сводка прошлого, обновляемая на каждом шаге. Вход — это новый сигнал, который либо попадёт в сводку, либо пройдёт мимо. Выход — это ответ модели, собранный из сводки и текущего сигнала. Вся дальнейшая механика Mamba уточняет, как именно модель решает, что записывать в сводку.

Различие между непрерывным и дискретным описанием стоит проговорить отдельно. Непрерывная SSM задаётся дифференциальными уравнениями и описывает систему в любой момент времени. Дискретная версия работает с шагами и подходит для последовательностей токенов. Дискретизация — мост между этими двумя мирами, и её параметры влияют на то, как быстро состояние забывает прошлое.

Перенос состояния делает модель рекуррентной по форме вычисления. Это важно для инференса: чтобы получить следующий токен, достаточно обновить состояние одним шагом. Такой режим даёт постоянное время на шаг и не требует пересчёта всей последовательности. Именно это свойство делает SSM привлекательными для генерации текста в реальном времени.

Ограничение тоже наследуется от рекуррентной формы. Если состояние сжало контекст плохо, модель не сможет восстановить утраченные детали. Авторы первичной работы формулируют это как зависимость результата от качества сжатия. Для читателя это означает, что длинный контекст сам по себе не гарантирует сохранение всех деталей: значение имеет то, что именно попало в состояние.

Почему селективность зависит от текущего входа

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

В документации IBM сказано, что селективные SSM делают размер шага ∆t и матрицы B_t и C_t прямыми функциями текущего входного токена x_t. Это означает, что на каждом шаге модель заново вычисляет, как обновлять состояние и как формировать выход, опираясь на текущий вход. Один и тот же механизм ведёт себя по-разному в зависимости от того, что пришло на вход.

Первичная работа объясняет мотивацию: если параметры SSM становятся функциями входа, это устраняет слабость модели на дискретных модальностях и позволяет избирательно распространять или забывать информацию вдоль последовательности в зависимости от текущего токена. Формулировка «избирательно распространять или забывать» описывает суть: модель решает, что пропустить дальше, а что погасить.

Размер шага ∆t управляет темпом обновления. Большое значение означает быструю реакцию на вход, малое — медленное накопление. Когда ∆t зависит от токена, модель может ускориться на значимом сигнале и замедлиться на шуме. Это даёт грубую, но полезную форму отбора: важное проходит в состояние быстрее, второстепенное задерживается.

Матрицы B_t и C_t управляют записью и чтением. B_t определяет, как вход попадает в состояние, C_t — как состояние превращается в выход. Когда обе зависят от текущего токена, модель получает возможность направлять информацию по разным каналам в зависимости от контекста. Это расширяет выразительность по сравнению с фиксированными матрицами.

Селективность решает проблему, которую авторы называют ограничением LTI-моделей. LTI означает линейность и стационарность во времени: коэффициенты правила обновления одинаковы на разных шагах. Механизм отбора создан, чтобы преодолеть это ограничение. Одновременно возникает вычислительная задача: раз параметры меняются на каждом шаге, стандартные приёмы расчёта перестают работать напрямую.

Авторы первичной работы описывают, как справляются с этой задачей. Они используют три классические техники: слияние ядер, параллельное сканирование и пересчёт. Слияние ядер сокращает число обращений к памяти, параллельное сканирование распараллеливает рекуррентный расчёт, пересчёт экономит память за счёт повторного вычисления промежуточных значений. Эти техники делают обучение селективной SSM практически выполнимым.

Входозависимость меняет и смысл состояния. В стационарной модели состояние обновляется по одному и тому же правилу. В селективной модели правило меняется, и состояние отражает прошлые входы и решения модели о том, что запоминать. Это ближе к механизму внимания по духу: модель оценивает важность текущего сигнала. Отличие в том, что отбор встроен в обновление состояния.

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

Селективность усложняет обучение. Раз параметры зависят от входа, градиенты проходят через дополнительные зависимости, и вычисления становятся дороже. Техники, перечисленные авторами, направлены именно на то, чтобы удержать стоимость в разумных пределах. Читателю полезно понимать, что селективность — это компромисс: больше выразительности в обмен на более сложный расчёт.

Отдельно стоит отметить, что селективность не отменяет конечность состояния. Даже с умным отбором состояние остаётся фиксированного размера. Модель решает, что запомнить, но объём памяти не растёт вместе с длиной последовательности. Это свойство рекуррентного состояния SSM; устройство памяти всей модели проверяют по её конкретной архитектуре.

Полная ручная рекуррентная трасса трёх входов

Чтобы увидеть, как работает перенос состояния, полезна ручная трасса. Ниже — учебная скалярная аналогия. Она помогает разобрать перенос состояния; реализацию Mamba здесь не воспроизводим. Правило обновления: h_t = 0.5 * h_(t-1) + x_t, начальное состояние h_0 = 0. Входная последовательность: [2, 0, 2]. Коэффициент 0.5 задаёт затухание: старое состояние теряет половину веса на каждом шаге.

Шаг 1: h_1 = 0.5 * 0 + 2 = 2.
Шаг 2: h_2 = 0.5 * 2 + 0 = 1.
Шаг 3: h_3 = 0.5 * 1 + 2 = 2.5.

Итоговое состояние равно 2.5. Таблица ниже показывает все шаги с входом, состоянием и вкладом.

t x_t h_(t-1) 0.5 * h_(t-1) h_t
1 2 0 0 2
2 0 2 1 1
3 2 1 0.5 2.5

Из таблицы видно, как состояние переносит информацию. Вход 2 на первом шаге задаёт состояние 2. Нулевой вход на втором шаге не обнуляет состояние: остаётся 1, потому что половина прошлого значения сохранилась. Третий вход 2 добавляется к затухшему остатку 0.5 и даёт 2.5.

Теперь рассмотрим вариант с входозависимым фильтром. Правило: h_t = 0.5 * h_(t-1) + g_t * x_t. Фильтр g принимает значения [1, 0, 1]. Входная последовательность: [2, 99, 2]. Здесь на втором шаге стоит шумное значение 99, которое нужно погасить.

Шаг 1: h_1 = 0.5 * 0 + 1 * 2 = 2.
Шаг 2: h_2 = 0.5 * 2 + 0 * 99 = 1.
Шаг 3: h_3 = 0.5 * 1 + 1 * 2 = 2.5.

Итоговое состояние снова равно 2.5. Шум 99 не вошёл в состояние, потому что фильтр g_2 = 0 обнулил его вклад. Старое состояние продолжило затухать по тому же правилу. Таблица показывает это по шагам.

t x_t g_t h_(t-1) 0.5 * h_(t-1) g_t * x_t h_t
1 2 1 0 0 2 2
2 99 0 2 1 0 1
3 2 1 1 0.5 2 2.5

Сравнение двух трасс показывает роль фильтра. Без фильтра шум 99 попал бы в состояние и исказил результат. С фильтром модель пропустила шум мимо и сохранила структуру, заданную полезными входами. Это учебная иллюстрация идеи селективности: модель решает, какой вход пропустить в состояние.

Контрпример важен для честности. Финальное состояние 2.5 одинаково в обеих трассах, но оно не восстанавливает точные отдельные входы. По состоянию 2.5 нельзя однозначно сказать, была последовательность [2, 0, 2] или [2, 99, 2]. Состояние сжало историю и потеряло различие между ними. Это показывает компромисс сжатия: компактное состояние не хранит все детали.

Из контрпримера следует практический вывод. Если задача требует точного извлечения конкретного элемента из длинной последовательности, сжатое состояние может не справиться. Модель хранит сжатую сводку. Возможность восстановить каждую деталь из неё требует проверки. Для задач, где важна каждая деталь, это ограничение существенно.

Трасса также показывает, почему затухание важно. Коэффициент 0.5 означает, что влияние прошлого убывает экспоненциально. Через несколько шагов вклад раннего входа становится пренебрежимо малым. Это свойство полезно для забывания нерелевантного, но вредно, если важная информация пришла давно и должна сохраниться.

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

Тем не менее принцип переносится. В настоящей модели тоже есть состояние, обновляемое по шагам, и тоже есть входозависимый отбор. Разница в размерности и в том, как вычисляются параметры. Скалярная трасса остаётся полезной как первый шаг к пониманию.

Чем аналогия со скаляром отличается от настоящего блока Mamba

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

В репозитории проекта на GitHub сказано, что Mamba основана на слое селективной SSM, который является фокусом статьи. Там же отмечено, что главный модуль репозитория — это блок архитектуры Mamba, оборачивающий селективную SSM. Это уточняет терминологию: селективная SSM — слой, а блок Mamba — обёртка вокруг него.

Репозиторий также приводит пример полной языковой модели: глубокий последовательностный бэкбон с повторяющимися блоками Mamba плюс языковая голова. Это описание показывает, как из блоков собирается модель. Отдельный блок — единица архитектуры, а модель — их последовательность с головой для предсказания токенов.

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

Скалярная аналогия не показывает параллельное сканирование. В примере шаги вычисляются последовательно, один за другим. В настоящем обучении используется параллельное сканирование, которое распараллеливает рекуррентный расчёт. Это ключевая техника, упомянутая авторами первичной работы наряду со слиянием ядер и пересчётом.

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

Скалярная аналогия не показывает пересчёт. Эта техника экономит память за счёт повторного вычисления промежуточных значений вместо их хранения. В ручной трассе промежуточные значения хранятся явно. В реальной модели выбор между хранением и пересчётом влияет на потребление памяти.

Скалярная аналогия упрощает селективность. В примере фильтр g принимает значения 0 или 1, что соответствует полному пропуску или полному гашению. В настоящей модели параметры непрерывны и вычисляются из входа. Наш бинарный фильтр упрощает непрерывные входозависимые параметры реальной модели.

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

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

Несмотря на упрощения, скалярная трасса выполняет свою задачу. Она показывает перенос состояния, роль затухания и эффект входозависимого фильтра. Эти три идеи лежат в основе Mamba, и их стоит усвоить до перехода к деталям реализации.

Практический совет: используйте скалярную трассу для проверки понимания. Если вы можете объяснить, почему шум 99 не попал в состояние и почему финальное значение не восстанавливает входы, вы поняли базовый механизм. Дальше остаётся добавить размерность и оптимизации.

Чистая архитектура без attention и гибрид с attention

Первичная работа описывает Mamba как упрощённую сквозную нейронную архитектуру без attention и без блоков MLP. Это важное уточнение: исходная архитектура статьи строится на селективных SSM и не включает механизм внимания. Такое решение снижает сложность и использует рекуррентную природу SSM.

Отсутствие attention означает, что модель не сравнивает все пары элементов последовательности. Вместо этого она переносит состояние по шагам. Это даёт линейное время обучения и постоянное время одного шага инференса при фиксированной архитектуре, как отмечено в первичной работе. Для длинных последовательностей такая схема оказывается выгодной по стоимости.

Отсутствие блоков MLP означает, что архитектура обходится без отдельного слоя прямой связи, типичного для трансформеров. Авторы называют архитектуру упрощённой, что подчёркивает стремление к минимализму. Селективная SSM берёт на себя функции, которые в других архитектурах распределены между несколькими компонентами.

Такая конструкция имеет следствия. С одной стороны, она экономит вычисления. С другой, она полагается на выразительность селективной SSM. Если отбор работает хорошо, модель справляется с задачами. Если нет, у неё меньше запасных механизмов, чем у архитектуры с attention.

Гибридные варианты добавляют attention к блокам Mamba. В таких моделях часть слоёв использует селективную SSM, а часть — внимание. Это позволяет сочетать эффективность рекуррентного переноса состояния с точностью попарных сравнений. Гибрид не отменяет преимуществ SSM, но добавляет стоимость attention на тех слоях, где он применяется.

Различие между чистой и гибридной архитектурой важно для чтения документации. Когда речь идёт о Mamba в первичной работе, имеется в виду архитектура без attention. Когда речь идёт о гибридных семействах, подразумевается комбинация. Смешивать эти описания нельзя: свойства одной конфигурации не переносятся автоматически на другую.

Для читателя это означает практический вопрос: что именно вы используете. Если вы работаете с реализацией из репозитория проекта, там описан блок Mamba, оборачивающий селективную SSM. Если вы работаете с гибридной моделью, там к блокам добавлены слои внимания, и поведение отличается.

Сравнение по критериям удобно свести в таблицу.

Критерий Чистая Mamba Гибрид с attention
Механизм переноса Селективная SSM Селективная SSM плюс внимание
Сложность обучения Линейная по длине Зависит от доли слоёв внимания
Время инференса Постоянное на шаг Постоянное на шаг SSM, растёт на слоях внимания
Попарные сравнения Отсутствуют Присутствуют на слоях внимания
Источник описания Первичная работа Гибридные семейства

Таблица показывает различие механизмов: чистая архитектура использует селективную SSM, гибрид добавляет слои внимания. Стоимость и качество конкретных моделей сравнивайте на одной задаче и оборудовании.

Стоит подчеркнуть, что первичная работа описывает именно чистую архитектуру. Утверждения о ней относятся к исходной конструкции. Переносить их на все гибридные семейства некорректно. Это различие важно для точного чтения источников и для выбора модели под задачу.

Практический совет: перед выбором модели уточните, к какой конфигурации она относится. Документация конкретного проекта обычно указывает состав слоёв. Если в описании упоминаются блоки внимания, перед вами гибрид. Если только блоки Mamba, перед вами чистая архитектура.

Обучение и последовательный инференс: разные способы вычисления

Обучение и инференс в Mamba используют разные способы вычисления. При обучении последовательность обрабатывается целиком, и рекуррентный расчёт распараллеливается. При инференсе токены генерируются по одному, и состояние обновляется шаг за шагом. Это различие определяет, какие оптимизации применяются в каждом режиме.

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

Параллельное сканирование — ключевая идея для обучения. Рекуррентная формула выглядит последовательной: каждый шаг зависит от предыдущего. Композицию обновлений можно организовать как ассоциативное сканирование, вычисляя блоки параллельно с сохранением порядка входов. Меняется организация вычислений, а порядок токенов остаётся прежним.

При инференсе параллельное сканирование не нужно. Модель генерирует один токен за раз, и состояние обновляется одним шагом. Постоянное время на шаг — прямое следствие конечного состояния. Модель не пересчитывает всю последовательность, чтобы получить следующий токен.

Различие режимов объясняет, почему SSM привлекательны для генерации. В трансформере инференс требует обращения к кэшу ключей и значений, размер которого растёт с длиной контекста. В Mamba состояние фиксированного размера, и стоимость шага не растёт вместе с длиной. Это свойство отмечено в первичной работе как следствие конечного состояния.

Различие режимов объясняет и ограничения. При обучении входная последовательность известна вычислителю, что позволяет организовать параллельный расчёт с сохранением причинного порядка. При последовательной генерации состояние обновляют по мере появления токенов. Если важная информация была утрачена при сжатии, инференс не сможет её восстановить.

Пересчёт при обучении экономит память, но требует дополнительных вычислений. Это компромисс между памятью и временем. Слияние ядер сокращает накладные расходы на доступ к памяти. Вместе эти техники позволяют обучать селективные SSM на практических объёмах данных.

Для читателя полезно понимать, что обучение и инференс — разные режимы с разными профилями стоимости. Обучение оптимизировано под пропускную способность и память. Инференс оптимизирован под задержку на шаг. Одна и та же модель ведёт себя по-разному в этих режимах.

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

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

Сжатие истории, задачи извлечения и ограничения обещаний о длинном контексте

Сжатие истории — фундаментальная идея Mamba. Авторы первичной работы называют сжатие контекста в меньшее состояние фундаментальной проблемой моделирования последовательностей. Это означает, что модель всегда работает с ограниченным представлением прошлого, и качество этого представления определяет результат.

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

Задачи извлечения показывают границу. Если нужно найти конкретный элемент в длинной последовательности, сжатое состояние может не сохранить его. Учебная трасса из предыдущего раздела демонстрирует это: финальное состояние 2.5 не восстанавливает точные входы. Модель хранит сводку, и детали в неё могут не попасть.

Ограничение не означает, что модель бесполезна для длинных последовательностей. Оно означает, что обещания о длинном контексте требуют осторожности. Фиксированное состояние не гарантирует сохранение всех деталей. Полезный контекст зависит от того, что модель смогла запомнить. Заявленная длина окна сама по себе этого не показывает.

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

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

Практический совет: формулируйте задачу в терминах того, что нужно сохранить. Если важна общая тема или стиль, сжатое состояние подходит. Если важен конкретный факт из середины длинного текста, проверьте, справляется ли модель. Тестирование на своих данных даёт более надёжный ответ, чем общие заявления.

Ещё один аспект — различие между поколениями. Первичная работа описывает исходную архитектуру, и её характеристики относятся к ней. Переносить числа и заявления на последующие поколения некорректно. Каждое поколение имеет свои особенности, и их стоит проверять отдельно.

Для читателя это означает осторожность с обобщениями. Утверждение о конкретной модели нужно рассматривать в пределах её архитектуры и конфигурации. Если вы выбираете модель, смотрите на её документацию и тесты. Общие описания дают рамку, но не заменяют проверку.

Сжатие истории — свойство конструкции. Оно даёт эффективность и накладывает ограничения. Понимание этого компромисса помогает правильно выбирать задачи и не ожидать от модели того, чего она не обещает.

Частые вопросы

Что такое Mamba простыми словами?

Mamba — архитектура последовательностного моделирования на основе селективной state space model. Она переносит сжатое состояние между шагами и отбирает информацию по текущему входу. В первичной работе она описана как упрощённая сквозная нейронная архитектура без attention и блоков MLP. Состояние фиксированного размера даёт постоянное время одного шага инференса при фиксированной архитектуре и линейное время обучения.

Чем Mamba отличается от трансформера?

Трансформер использует внимание и сравнивает все пары элементов последовательности. Mamba переносит состояние по шагам и не выполняет попарных сравнений. Это даёт линейное время обучения и постоянное время одного шага инференса при фиксированной архитектуре. Гибридные архитектуры добавляют внимание к блокам Mamba, сочетая оба механизма.

Почему селективность зависит от текущего входа?

В документации IBM сказано, что селективные SSM делают размер шага ∆t и матрицы B_t и C_t функциями текущего токена x_t. Это позволяет модели избирательно распространять или забывать информацию вдоль последовательности. Параметры пересчитываются на каждом шаге, и поведение модели зависит от того, что пришло на вход.

Как работает перенос состояния между шагами?

На каждом шаге модель получает вход x_t, обновляет состояние h_t и формирует выход y_t. Состояние зависит от предыдущего состояния и текущего входа. В учебной трассе с правилом h_t = 0.5 * h_(t-1) + x_t вход [2, 0, 2] даёт состояния [2, 1, 2.5]. Это скалярная учебная аналогия; архитектуру Mamba она не воспроизводит.

Хранит ли Mamba весь длинный контекст?

Mamba хранит состояние фиксированного размера. Авторы первичной работы отмечают, что результативность модели ограничена тем, насколько хорошо состояние сжало контекст. Фиксированное состояние не гарантирует сохранение всех деталей. Для задач точного извлечения это ограничение существенно, и его стоит проверять на своих данных.

Читайте также

3 материала