COMRAD404 / GLOSSARY

Mixture of Experts (MoE)

Mixture of Experts

Mixture of Experts (MoE) — разреженная архитектура условных вычислений, где роутер активирует только часть экспертов для каждого токена. Разбираем схему работы, примеры Mixtral и Qwen, отличия от Switch Transformer и ограничения при выборе модели.

TL;DR

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

Mixture of Experts (MoE) — это архитектура разреженных условных вычислений, в которой маршрутизатор (router, gating network) для каждого токена или примера активирует только небольшую часть экспертов. За счет этого модель может увеличивать общую емкость по параметрам, не включая все параметры в вычисление на каждом входе.

Для практики это означает главное: у MoE почти всегда нужно смотреть не только на общее число параметров, но и на то, сколько параметров активно на один токен. По официальным материалам Mixtral 8x7B имеет 46.7B параметров всего и 12.9B активных на токен, а Qwen3MoE — 30.5B параметров всего и 3.3B активных на токен.

Английский термин: Mixture of Experts. Аббревиатура: MoE. Также можно встретить: буквальный перевод «смесь экспертов», но в технических текстах обычно оставляют аббревиатуру MoE.

Простыми словами

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

Это и есть смысл разреженности: модель хранит много специализированных «подмодулей», но на конкретном шаге использует лишь малую часть. Поэтому MoE часто обсуждают как способ наращивать емкость модели без пропорционального роста вычислений на каждый отдельный пример.

Как это работает

Каноническая идея из работы Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer такова: обучаемая сеть-гейт выбирает разреженную комбинацию экспертов. В актуальном описании интерфейса Hugging Face для каждого токена роутер выбирает k экспертов, пропускает скрытое состояние через них и затем агрегирует выходы с учетом весов маршрутизации.

  1. На вход MoE-слоя поступает скрытое состояние токена.
  2. Роутер считает оценки для доступных экспертов.
  3. Из всех экспертов выбираются только top-k.
  4. Выбранные эксперты независимо обрабатывают один и тот же вход.
  5. Их ответы объединяются взвешенно, согласно routing weights.
  6. Результат возвращается в основной поток модели.
Токен / hidden state
        |
        v
   [ Router / Gate ]
        |
   choose top-k experts
   /       |        
  v        v         v
[E1]     [E7]      [E19]
          |         /
          |        /
    v      v       v
   weighted aggregation
          |
          v
   выход MoE-слоя

Важная деталь: число выбранных экспертов зависит от конкретной реализации. В Mixtral 8x7B роутер выбирает 2 экспертов на токен; в конфигурации Qwen2MoE, показанной в документации Hugging Face, — 4 эксперта на токен; в документации Qwen3MoE указаны 128 routed experts и 8 экспертов на токен.

Hugging Face также отмечает, что MoE привлекателен для больших моделей не только из-за активации немногих экспертов на токен, но и потому, что expert parallelism позволяет распределять экспертов по устройствам.

Где применяется

  • Открытые sparse LLM. Mixtral 8x7B — показательный пример открытой MoE-модели: 46.7B параметров всего, 12.9B активных на токен, роутер выбирает 2 экспертов на токен.
  • Более крупные открытые модели. Mixtral 8x22B — sparse MoE-модель со 141B параметров всего и 39B активных параметров; официальный анонс также указывает контекст 64K и лицензию Apache 2.0.
  • Интеграция в экосистему Transformers. Qwen2MoE в документации Hugging Face выступает как референс MoE-варианта Qwen2; в показанной конфигурации указаны 60 экспертов и 4 эксперта на токен.
  • Новые MoE-конфигурации с большим контекстом. В документации Qwen3MoE указаны 30.5B параметров всего, 3.3B активных параметров на токен, 128 routed experts, 8 экспертов на токен и до 131K контекста с YaRN.

Если смотреть шире, GShard показывает, как conditional computation и автоматическое шардинг-масштабирование применялись для гигантских моделей: в статье сообщается о масштабировании мультиязычного Transformer более чем до 600B параметров.

Практический пример

Если вы выбираете MoE-модель для внедрения или эксперимента, полезно читать карточку модели в таком порядке:

  1. Сначала найдите routing policy. Сколько экспертов активируется на токен: 2, 4, 8 или иначе.
  2. Потом отделите total parameters от active parameters. Для MoE это разные величины, и именно вторая лучше описывает путь одного токена через модель.
  3. Проверьте контекстное окно и версию документации. У Mixtral 8x22B официальный анонс указывает 64K, у Qwen3MoE — до 131K с YaRN, но такие значения зависят от конкретного релиза.
  4. После этого оценивайте инфраструктурную сложность. Даже при разреженной активации распределение экспертов по устройствам и способ запуска остаются отдельной инженерной задачей.
# Псевдокод: один токен проходит через MoE-слой
h = hidden_state(token)
scores = router(h)
selected = top_k(scores, k)
outputs = []
for expert, weight in selected:
    outputs.append(weight * expert(h))
y = sum(outputs)

Это именно схема, а не буквальный API. Но она отражает то, что описывает интерфейс Hugging Face: роутер выбирает k экспертов, каждый из них обрабатывает скрытое состояние, а затем ответы агрегируются с routing weights.

Чем отличается от похожих терминов

Термин Что это Чем отличается от общего MoE
Mixture of Experts (MoE) Общий класс разреженных архитектур с маршрутизацией к экспертам Роутер выбирает только часть экспертов для токена; конкретная схема выбора может отличаться от модели к модели
Switch Transformers Широко цитируемый вариант sparse MoE в трансформерах с упрощенной маршрутизацией Это не синоним любого MoE, а конкретная линия упрощения sparse routing, описанная в отдельной работе
GShard Подход к масштабированию гигантских моделей с conditional computation и automatic sharding Фокус не только на самой идее экспертов, но и на масштабировании и разбиении вычислений на инфраструктуре
Expert Choice Routing Альтернативная стратегия маршрутизации Подчеркивает, что у MoE нет одной-единственной схемы роутинга; задача балансировки нагрузки между экспертами — отдельная инженерная проблема

Ограничения и заблуждения

  • Заблуждение: «MoE — это одна фиксированная архитектура». На практике MoE — это семейство архитектур. Роутинг, число экспертов на токен и инфраструктурная реализация различаются.
  • Заблуждение: «общее число параметров сразу говорит о стоимости одного прохода». Для MoE это неверно: нужно смотреть на активные параметры на токен и на политику выбора экспертов.
  • Ограничение: sparse активация не отменяет сложности обслуживания. Официальные материалы Hugging Face отдельно выделяют expert parallelism, то есть вопрос распределения экспертов между устройствами остается важным.
  • Ограничение: балансировка нагрузки — не косметическая деталь. Наличие работы про Expert Choice Routing показывает, что распределение запросов по экспертам — самостоятельная проблема, а не мелкая настройка.
  • Ограничение: документация версионируется. В исходниках этого пакета есть версия Hugging Face Transformers 5.0.0; живая документация и поддерживаемые чекпойнты могли измениться.
  • Ограничение: не все эксплуатационные данные есть в архитектурных источниках. Точные цены API, текущая hosted-доступность, региональные ограничения и фактическая производительность на вашем железе нужно проверять на актуальных официальных страницах платформ и карточках моделей.

Практический вердикт редакции: если вы видите MoE в описании модели, не делайте вывод по одному только общему размеру. Для выбора модели полезнее сверять четыре поля: routing policy, active parameters per token, контекстное окно и версию конкретного чекпойнта. Редакционное ограничение: этот материал сознательно не сравнивает цены, живые API и бенчмарки вне указанного source pack.

Связанные термины и материалы

Вопросы и ответы

Что значит active parameters per token?

Это часть параметров модели, которая реально участвует в обработке конкретного токена. Именно поэтому у MoE есть заметный разрыв между общим размером модели и активной частью: например, в официальных материалах Mixtral 8x7B указаны 46.7B параметров всего и 12.9B активных на токен, а для Qwen3MoE — 30.5B всего и 3.3B активных на токен.

Сколько экспертов выбирается для одного токена?

Это зависит от модели и схемы роутинга. В интерфейсе Hugging Face роутер выбирает k экспертов; в официальных примерах из этого пакета Mixtral 8x7B использует 2 экспертов на токен, Qwen2MoE — 4, Qwen3MoE — 8.

MoE автоматически быстрее обычной большой модели?

Источники подтверждают только архитектурную идею: MoE привлекателен тем, что активирует немного экспертов на токен, а expert parallelism позволяет распределять экспертов по устройствам. Универсальной гарантии скорости здесь нет: фактическое поведение зависит от реализации, инфраструктуры и конкретного чекпойнта.

MoE и большое контекстное окно — это одно и то же?

Нет. Контекст зависит от конкретной модели, а не от самого термина MoE. В официальных примерах из этого пакета Mixtral 8x22B указывает 64K контекста, а Qwen3MoE — до 131K с YaRN.

Можно ли выбирать MoE-модель только по общему числу параметров?

Лучше не делать так. Для практического выбора важнее одновременно смотреть на общее число параметров, активные параметры на токен, число экспертов, число экспертов на токен, контекст и версию документации или model card.

Источники

Источники

SOURCES

Вопросы и ответы

FAQ
Что значит active parameters per token?

Это часть параметров модели, которая реально участвует в обработке конкретного токена. Поэтому у MoE общее число параметров и активные параметры на токен могут сильно различаться: например, в официальных материалах Mixtral 8x7B указаны 46.7B параметров всего и 12.9B активных на токен, а для Qwen3MoE — 30.5B всего и 3.3B активных на токен.

Сколько экспертов выбирается для одного токена?

Это зависит от модели и схемы роутинга. В интерфейсе Hugging Face роутер выбирает k экспертов; в примерах из этого пакета Mixtral 8x7B использует 2 экспертов на токен, Qwen2MoE — 4, Qwen3MoE — 8.

MoE автоматически быстрее обычной большой модели?

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

MoE и большое контекстное окно — это одно и то же?

Нет. Контекст зависит от конкретной модели, а не от самого термина MoE. В официальных примерах из этого пакета Mixtral 8x22B указывает 64K контекста, а Qwen3MoE — до 131K с YaRN.

Можно ли выбирать MoE-модель только по общему числу параметров?

Лучше не делать так. Для практического выбора полезнее одновременно смотреть на общее число параметров, активные параметры на токен, число экспертов, число экспертов на токен, контекст и версию документации или model card.

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

LINKS