На семинаре Stanford CS25 Альберт Цзян, исследователь искусственного интеллекта из Mistral AI и аспирант Кембриджского университета, подробно разобрал архитектуру разреженных моделей смеси экспертов (Sparse Mixture of Experts, SMoE) на примере Mixtral 8x7B. В своем выступлении ученый развенчал популярные мифы о количестве параметров и специализации экспертов, а также обозначил перспективные направления для будущих исследований. Главный вывод презентации — технология MoE позволяет радикально увеличить объем знаний языковой модели без пропорционального роста вычислительных затрат при инференсе.
🏗️ От плотных трансформеров к разреженной смеси экспертов 2:07
Перед тем как перейти к разбору смеси экспертов, необходимо понять структуру базовой плотной модели Mistral 7B, выпущенной в сентябре прошлого года. Главное отличие Mistral 7B от большинства других плотных моделей заключается в использовании двух модификаций механизма внимания, которые, хотя и были известны ранее в индустрии, в этой комбинации дали мощный синергетический эффект:
- Grouped-Query Attention (GQA): промежуточный вариант между Multi-Head и Multi-Query Attention. В схеме GQA используется большое количество векторов запросов (queries), но значительно меньше векторов ключей (keys) и значений (values). В стандартной конфигурации Mistral 7B применяется 32 головки запросов и 8 головок ключей/значений при размерности головки 128.
- Sliding Window Attention (SWA): внимание со скользящим окном, где на нижних слоях трансформера токены взаимодействуют только с относительно коротким участком предыдущего контекста. По мере углубления в сеть информация передается от более ранних позиций к более поздним.
Полноценный слой трансформера Mistral 7B устроен стандартным образом: входные данные проходят через среднеквадратичное нормализованное подмножество (RMSNorm), затем выполняется прямое прохождение слоя внимания (Attention Forward) с использованием ротационных эмбеддингов (Rotary Embedding) для ключей и запросов, добавляется остаточная связь (Attention Residual), а следом идут еще один RMSNorm, полносвязная сеть (MLP) и финальная остаточная связь (Dense Residual). Модель не использует смещения (bias) в матрицах проекций. Данная архитектура позволила маленькой модели Mistral 7B обойти многие конфигурации Llama 2 на момент своего релиза.
🧠 Анатомия Mixtral 8x7B: как работает маршрутизатор 8:27
Идея смеси экспертов (MoE) далеко не нова: базовые концепции развивались в стенах Google еще в 2017 году для рекуррентных моделей, а в работе Switch Transformers исследователи масштабировали архитектуру до триллиона параметров. В реализации от Mistral AI ключевым элементом является маршрутизатор (router).
Процесс обработки токена в слое MoE выглядит следующим образом:
- Входной вектор $x$ поступает на маршрутизатор, где умножается на матрицу весов.
- Маршрутизатор вычисляет веса шлюзования и выбирает топ-2 лучших экспертов для данного токена (механизм TopK).
- К выбранным весам применяется функция Softmax для получения финальных коэффициентов.
- Выбранные эксперты независимо обрабатывают токен с помощью функции активации SwiGLU.
- Выходные данные экспертов умножаются на веса шлюзования и суммируются для получения итогового результата.
Благодаря тому, что каждый токен проходит не через все параметры нейросети, а только через активные в данный момент, модель Mixtral 8x7B находится вплотную к границе эффективного соотношения цены и производительности. По данным Mistral AI, эта SMoE-модель превосходит Llama 2 7B, обеспечивая при этом в 5 раз более быстрый инференс. Модель способна работать с контекстом до 32 тысяч токенов, владеет несколькими европейскими языками и распространяется под свободной лицензией Apache 2.0, что делает ее полноценной заменой GPT-3.5 для коммерческого использования.
📚 «MoE-фикация» и прирост знаний 10:39
В индустрии существует конвенциональная гипотеза: слои MLP в трансформерах отвечают за хранение фактологических знаний, в то время как слои внимания реализуют алгоритмы и логическое мышление. Таким образом, «MoE-фикация» (замена стандартных MLP на блоки смеси экспертов) должна в первую очередь увеличивать эрудицию модели.
Тесты компании на различных бенчмарках подтверждают это предположение:
- На задачах, требующих больших объемов знаний (таких как MMLU), Mixtral 8x7B демонстрирует колоссальный отрыв от базовой Mistral 7B и моделей Llama 2.
- В задачах на понимание текста и логику (reasoning) MoE-модель также выигрывает, но прирост показателей там менее драматичен.
При анализе графиков зависимости качества от числа активных параметров становится очевидно, что Mixtral 8x7B, задействуя всего 12,9 миллиарда активных параметров для каждого токена, работает значительно лучше плотных моделей аналогичного вычислительного объема.
Поскольку расширение MLP-слоев дает такой сильный буст, перед open-source сообществом встает закономерный исследовательский вопрос: можно ли применить подход MoE к матрицам запросов, ключей и значений ($Q, K, V$) в слоях внимания? Подобные попытки предпринимались Google в 2022 году в рамках Switch Transformers. Однако разработчики столкнулись с проблемой нестабильности: при обучении в формате низкой точности bf16 модели часто расходились (дивергировали), требуя для стабильной работы тяжелого формата fp32. Поиск методов стабилизации MoE-внимания в bf16 через новые техники нормализации остается открытой научной задачей.
🔍 Развенчивание мифов о Mixture of Experts 14:11
Популярность Mixtral 8x7B породила в сообществе несколько устойчивых заблуждений, которые Альберт Цзян детально опроверг в ходе лекции.
Миф 1: В модели Mixtral 8x7B есть ровно 8 экспертов. Реальность: На самом деле архитектура содержит $32 \times 8$ независимых экспертов. На каждом из 32 слоев трансформера работает своя независимая восьмерка. Они обладают свойством перестановочной эквивалентности (permutation equivalent) — порядок экспертов внутри слоя не важен для маршрутизатора.
Миф 2: Общий объем модели составляет 56 миллиардов параметров (исходя из арифметики $8 \times 7$). Реальность: Суммарно модель содержит около 46,7 миллиарда параметров. Дело в том, что слои внимания и слои маршрутизации являются общими (shared) для всех экспертов слоя, они не дублируются восемь раз. При этом каждый отдельный токен в моменте «видит» и активирует лишь 12,9 миллиарда параметров.
Миф 3: Стоимость инференса и обслуживания MoE-модели строго пропорциональна числу ее активных параметров. Реальность: Финансовые и вычислительные затраты на MoE выше, чем на аналогичную плотную модель с 13 миллиардами параметров. Динамическая маршрутизация токенов между разными экспертами создает огромную нагрузку на межчиповую коммуникацию (communication overhead). Токены нельзя пересылать по заранее жестко прописанным адресам, из-за чего абсолютная стоимость развертывания MoE в продакшене всегда содержит в себе «налог» на коммуникацию между GPU.
С этим связан еще один вызов для инженеров — балансировка нагрузки во время инференса. Маршрутизатор может распределять токены неравномерно, из-за чего системе приходится ждать самый перегруженный поток, замедляя общую генерацию. В качестве решения исследователи предлагают адаптивные вычисления, такие как концепция Mixture of Depth (смесь глубин) или динамическое перераспределение токенов на соседние, менее загруженные экспертные блоки в случае насыщения основных.
В области сжатия MoE-моделей Цзян сослался на мнение известного эксперта по квантованию Тима Деттмерса, который в декабре прошлого года высказал гипотезу, что MoE-модели можно эффективно сжимать до объема менее 4 гигабайт. В отличие от плотных трансформеров, где слои MLP крайне неохотно поддаются разреживанию, MoE-слои потенциально содержат много избыточных параметров, которые можно безболезненно удалять или объединять. На данный момент убедительных прорывов в экстремальном разреживании MoE пока нет, но это направление видится спикеру крайне перспективным.
📈 Интерпретируемость и загадка «Эксперта №3» 19:14
Традиционно глубокие нейросети представляют собой «черный ящик», поскольку их активации лежат в высокоразмерных пространствах. Механизм внимания в трансформерах дает некоторую зацепку для интерпретации, но карты внимания быстро становятся хаотичными из-за обилия головок. Архитектура SMoE предоставляет исследователям уникальное преимущество: сигналы маршрутизатора наглядно показывают, какой эксперт выбирается для конкретных токенов.
Специалисты Mistral AI провели эксперимент на валидационной выборке датасета Pile (включающего подразделы GitHub, arXiv, PhilPapers и StackExchange), анализируя распределение вызовов экспертов с 0 по 31 слой:
- На самом нижнем слое (Layer 0), находящемся ближе всего к сырым токенам, распределение вызовов оказалось близким к равномерному (около 12,5% на каждого из 8 экспертов). По мнению Цзяна, это объясняется тем, что на ранних этапах сеть обрабатывает сугубо синтаксические признаки, где глубокая семантическая специализация еще не сформирована.
- На среднем слое (Layer 15), где аккумулируется основная семантика, внезапно обнаружилась аномалия: Эксперт №3 стал колоссально востребованным при обработке математического датасета DeepMind Mathematics и кодовой базы GitHub, почти не вызываясь в других категориях. Спикер осторожно предполагает, что этот блок взял на себя роль специализированного математического ядра.
- На финальном слое (Layer 31), перед декодированием, распределение снова сглаживается и стремится к равномерному.
Также тесты выявили высокую связность контекста: вероятность того, что следующий (последовательный) токен будет отправлен к тому же эксперту, что и предыдущий, на 15-м слое почти в два раза превышает случайную вероятность.
При этом Альберт Цзян развенчал еще один популярный миф (Миф №4) о том, что экспертов нужно принудительно обучать под конкретные человеческие домены — например, делать «медицинского эксперта» или «эксперта по праву». Язык устроен слишком сложно, и ручное разделение — это опасное упрощение. Настоящая сила MoE в том, что эксперты обучаются абстрактным скрытым признакам (linear combinations of concepts), которые человек не может легко вербализовать. Более того, явное разделение по темам вредно для инференса: если во время кодинга будут работать только два «кодовых» эксперта, остальные шесть будут простаивать, снижая общую аппаратную эффективность системы. Все эксперты должны быть вовлечены в работу постоянно.
Специализация экспертов подтверждается забавным и пугающим инцидентом, который спикер назвал «охотой за сокровищами». Спустя сутки после релиза Mixtral 8x7B независимый исследователь на одном из китайских IT-сайтов опубликовал результаты эксперимента: он поочередно полностью удалял $i$-го эксперта из всех слоев модели и замерял метрику MMLU. Удаление большинства экспертов приводило к легкому проседанию качества, но когда исследователь полностью вырезал Эксперта №3, модель тотально разрушилась — точность упала до катастрофических 0,63%. В open-source сообществе тут же родился мем, изображающий Эксперта №3 в виде единственного рабочего, который тащит на себе всю стройку, пока остальные семь экспертов лениво стоят рядом.
💬 Ответы на вопросы: облако против «железа» и перспективы fine-tuning 30:12
В финальной части лекции Альберт Цзян ответил на вопросы аудитории из зала и платформы Zoom, затронув практические аспекты эксплуатации технологии.
Отвечая на вопрос о целесообразности использования MoE на клиентских устройствах (смартфонах и ноутбуках) в противовес тренду на плотные локальные модели, Цзян пояснил, что для edge-девайсов плотные модели остаются приоритетом. Даже если инференс в MoE разреженный, в оперативную память устройства все равно необходимо физически загрузить все 46,7 миллиарда параметров. Телефон рядового пользователя просто не обладает свободными 200 гигабайтами RAM. Сфера применения MoE — это крупные дата-центры и облачные провайдеры, где за счет больших размеров пакетов данных (batch sizes) архитектура позволяет достигать колоссальной пропускной способности (throughput) и экономии денег.
Слушатели поинтересовались, почему Meta в своей недавней флагманской линейке Llama 3 отказалась от MoE архитектуры в пользу плотных трансформеров. Цзян полушутя посоветовал перенаправить этот вопрос напрямую инженерам из Meta, отметив, что создание MoE накладывает серьезные обязательства. В частности, при обучении сверхкрупных конфигураций (например, гипотетических 8x100B), когда даже один эксперт физически не помещается в память одного графического ускорителя, сложность параллелизации и затраты на сетевые узлы возрастают по экспоненте. Такие системы чрезвычайно тяжело поддерживать самостоятельно, и их обслуживание проще делегировать крупным провайдерам через API. В то же время, базовая Mixtral 8x7B после стандартного квантования без проблем запускается на одной коммерческой GPU-карте.
В контексте тонкой настройки (fine-tuning) и работы с мультимодальными данными (обработка изображений через API) спикер подчеркнул преимущество открытых весов. При работе с закрытыми системами вроде ChatGPT или Gemini разработчик полностью зависит от вендора. Наличие весов Mixtral на руках дает инженерам полный контроль над процессом обучения.
Комментируя вопрос о модульных MoE и возможности «вытащить» одного эксперта, чтобы заменить его на сторонний кастомный блок, Цзян назвал это направление крайне интригующим. По его мнению, такая операция технически возможна (в сообществе это называют Franken-merge), однако после физической замены блока инженерам в обязательном порядке придется провести процедуру дообучения слоев маршрутизации. Маршрутизатор должен заново понять, в каких ситуациях и при каком контексте нужно активировать этот новый, внедренный извне элемент.
В завершение лекции Альберт Цзян напомнил, что стартап Mistral AI, основанный Тимоте и Гийомом, активно расширяет свое присутствие. Компания имеет офисы в Париже, Лондоне и Сан-Франциско (в Пало-Альто), обладает венчурным финансированием в размере 500 миллионов долларов и приглашает к сотрудничеству исследователей, увлеченных развитием open-source технологий.