Смесь экспертов

Материал из MachineLearning.

(Перенаправлено с MoE)
Перейти к: навигация, поиск
Статья написана с использованием LLM и проверена участником Vsevolod Peretiatko 23:20, 23 июня 2026 (MSD)


Смесь экспертов (англ. Mixture of Experts, MoE) — метод построения архитектуры нейронных сетей, основанный на принципе условных вычислений (англ. conditional computation). В отличие от классических подходов в машинном обучении или ансамблировании, где каждый входной объект обрабатывается всеми слоями сети или всеми базовыми алгоритмами, в архитектурах MoE для каждого конкретного объекта динамически выбирается и активируется лишь небольшая часть сети — так называемые «эксперты».

Главное преимущество такого подхода — возможность эффективно масштабировать емкость модели (общее количество её параметров). Смесь экспертов позволяет увеличивать число параметров до сотен миллиардов или триллионов, но при этом удерживать количество необходимых вычислительных операций (FLOPs) на фиксированном или слабо растущем уровне, поскольку для каждого токена или объекта работает лишь малая доля от всех весов сети.

Исторически концепция возникла в начале 1990-х годов как вероятностная модель совместного обучения локальных специализированных сетей[1]. Долгое время метод развивался преимущественно в рамках классического статистического анализа. В современном глубоком обучении смеси экспертов стали ключевым элементом разреженных (англ. sparse) больших языковых моделей, где они успешно заменяют стандартные полносвязные слои в архитектуре Трансформер, а также применяются в задачах многозадачного обучения.

Содержание

Математическая постановка и базовая архитектура

Пусть задано подмножество входных объектов (признаковых описаний) \mathcal{X} \subseteq \mathbb{R}^d и пространство ответов \mathcal{Y} \subseteq \mathbb{R}^c. Архитектура смеси экспертов задает отображение f_\Theta: \mathcal{X} \to \mathcal{Y}, которое конструируется из двух основных компонентов:

  1. Множество экспертов (Expert Networks): Набор из N независимых базовых подсетей \mathcal{E} = \{E_i(x \mid \theta_i)\}_{i=1}^N, где каждая функция E_i: \mathbb{R}^d \to \mathbb{R}^c параметризована собственным вектором весов \theta_i. Обычно все эксперты имеют одинаковую архитектуру (например, являются одинаковыми многослойными перцептронами), но в процессе обучения они настраиваются на разные подмножества данных.
  2. Маршрутизатор / Шлюзовая сеть (Gating Network): Алгоритм G(x \mid \mathbf{W}_g), который принимает входной вектор x и возвращает вектор весов g \in \mathbb{R}^N, определяющий степень участия каждого эксперта в формировании итогового ответа.

Выходные значения маршрутизатора G(x)_i интерпретируются как важность (или вероятность выбора) i-го эксперта для объекта x и удовлетворяют стандартным вероятностным ограничениям: \sum_{i=1}^N G(x)_i = 1, \quad G(x)_i \ge 0 \quad \forall i = 1, \dots, N

Итоговый отклик базовой непрерывной модели MoE для объекта x вычисляется как взвешенная линейная комбинация выходов всех экспертов: y = f_\Theta(x) = \sum_{i=1}^N G(x)_i E_i(x)

Для того чтобы вся система оставалась дифференцируемой и её можно было обучать методом градиентного спуска, в качестве шлюзовой функции классически выбирается оператор Softmax:

G(x) = \text{Softmax}(\mathbf{W}_g x), \quad G(x)_i = \frac{\exp(w_i^T x)}{\sum_{j=1}^N \exp(w_j^T x)}

где \mathbf{W}_g \in \mathbb{R}^{N \times d} — матрица параметров маршрутизатора, а w_i — её i-я строка, сопоставленная i-му эксперту.

Вероятностная интерпретация

В терминах математической статистики классическую схему MoE можно строго описать как порождающую модель со скрытыми переменными (англ. latent variables)[1]. Введем дискретную случайную величину z \in \{1, \dots, N\}, которая указывает, какой именно эксперт отвечает за генерацию целевого признака y для объекта x. Тогда шлюзовая сеть задает априорную вероятность выбора эксперта при условии предъявления объекта: P(z = i \mid x, \mathbf{W}_g) = G(x)_i

Каждый отдельный эксперт, в свою очередь, определяет условную плотность распределения целевых переменных. Например, в задаче регрессии это может быть нормальное (гауссовское) распределение, математическое ожидание которого совпадает с детерминированным выходом экспертной подсети E_i(x), а \Sigma_i — матрица ковариации: p(y \mid x, z = i, \theta_i) = \mathcal{N}(y \mid E_i(x), \Sigma_i)

Чтобы получить полное (маргинальное) распределение ответов модели, необходимо просуммировать совместную плотность по всем возможным состояниям скрытой переменной z: p(y \mid x, \Theta) = \sum_{i=1}^N P(z = i \mid x, \mathbf{W}_g) p(y \mid x, z = i, \theta_i) = \sum_{i=1}^N G(x)_i \cdot \mathcal{N}(y \mid E_i(x), \Sigma_i)

Такой взгляд позволяет рассматривать MoE как прямое развитие классических моделей гауссовских смесей (GMM). Разница лишь в том, что в стандартных GMM априорные вероятности компонентов стационарны, а в MoE как сами вероятности выбора компонента (выходы шлюза), так и параметры распределений (выходы экспертов) являются гибкими функциями, динамически зависящими от вектора признаков x. Вне контекста глубоких нейросетей оптимизация такой системы эффективно производилась максимизацией правдоподобия с помощью EM-алгоритма.

Геометрический смысл и разбиение пространства признаков

С геометрической точки зрения маршрутизатор осуществляет мягкую кластеризацию исходного высокоразмерного пространства признаков \mathbb{R}^d на N пересекающихся областей компетентности. Каждая разделяющая гиперплоскость, проходящая через точки, где векторы весов дают одинаковый отклик (w_i^T x - w_j^T x = 0), определяет границу, за которой один эксперт становится приоритетнее другого.

В процессе обучения градиенты целевой функции распределяются шлюзовой сетью: если для некоторого подмножества объектов \mathcal{X}_i значение G(x)_i \to 1, то веса именно i-го эксперта будут обновляться наиболее интенсивно. Остальные эксперты при этом почти не корректируют свои параметры под эти объекты. Это минимизирует нежелательную интерференцию (взаимное искажение) признаков и позволяет аппроксимировать сложные нелинейные зависимости с помощью набора локально простых экспертных функций.

Классические подходы и историческое развитие

Концепция смеси экспертов зародилась в рамках теории искусственных нейронных сетей и статистического обучения в начале 1990-х годов. В исходной работе Джекобса, Иордана, Ноулана и Хинтона (1991)[1] метод позиционировался как реализация принципа «разделяй и властвуй» (англ. divide and conquer). Авторы стремились преодолеть проблему «катастрофического забывания» и интерференции признаков, когда одна большая нейросеть при последовательном обучении на разнородных задачах разрушала уже настроенные веса. Вместо этого было предложено принудительно разделять входные данные между небольшими локальными подсетями.

Иерархическая смесь экспертов (HMoE)

Важным шагом в развитии теории стала архитектура иерархической смеси экспертов (англ. Hierarchical Mixture of Experts, HMoE), предложенная Иорданом и Джекобсом в 1994 году[1]. Вместо одного плоского слоя шлюзов авторы построили древовидную структуру, аналогичную деревьям решений, но с «мягким» (вероятностным) ветвлением в каждом узле.

В такой структуре каждый внутренний узел дерева представляет собой маршрутизатор (шлюз), а листья дерева — конечные эксперты. Если рассмотреть простейшее двухранговое дерево, где коренной шлюз G_i(x) выбирает ветвь i, а нижестоящий шлюз G_{j \mid i}(x) выбирает эксперта E_{ij}(x), то итоговое уравнение модели принимает вид: y = \sum_{i} G_i(x) \sum_{j} G_{j \mid i}(x) E_{ij}(x)

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

Процесс обучения через EM-алгоритм

Поскольку в процессе обучения нам заранее не известно, какой именно эксперт должен обрабатывать конкретный объект x, выбор эксперта является скрытой переменной. Вне контекста градиентных методов глубокого обучения для оптимизации таких систем применялся статистический EM-алгоритм (Expectation-Maximization)[1]. Пусть на шаге t заданы текущие параметры маршрутизатора и экспертов \Theta^{(t)}. Процесс итеративного пересчета выглядит следующим образом:

E-шаг (Ожидание): Вычисляются апостериорные вероятности (так называемые скрытые переменные ответственности, англ. responsibilities) h_i^{(t)} для каждого эксперта i по отношению к каждому обучающему объекту (x, y):

h_i^{(t)} = P(z = i \mid x, y, \Theta^{(t)}) = \frac{G(x \mid \mathbf{W}_g^{(t)})_i p(y \mid x, \theta_i^{(t)})}{\sum_{j=1}^N G(x \mid \mathbf{W}_g^{(t)})_j p(y \mid x, \theta_j^{(t)})}

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

M-шаг (Максимизация): Параметры модели обновляются путем максимизации ожидаемого правдоподобия. Для экспертов это сводится к решению независимых задач взвешенного метода наименьших квадратов или максимизации взвешенного правдоподобия, где весами объектов выступают вычисленные значения h_i^{(t)}:

\theta_i^{(t+1)} = \arg\max_{\theta_i} \sum_{m} h_{i, m}^{(t)} \ln p(y_m \mid x_m, \theta_i)

Для параметров шлюзовой сети \mathbf{W}_g шаг оптимизации эквивалентен обучению мультиномиальной логистической регрессии, где в качестве целевых меток классов используются те же «мягкие» вероятности h_i^{(t)}.

Главным ограничением классических MoE была их «плотность»: даже при вероятностном разделении для вычисления финального ответа требовалось запустить и просчитать всех N экспертов, что делало невозможным масштабирование ансамбля до большого количества компонентов.

Современные разреженные архитектуры (Sparse MoE)

С переходом к глубокому обучению классическая схема MoE претерпела принципиальное изменение: от «мягкого» взвешенного суммирования всех экспертов исследователи перешли к разреженной условной маршрутизации (англ. sparse conditional computation). В этой парадигме шлюз выбирает строго ограниченное число экспертов для каждого объекта, а выходы остальных принудительно зануляются, что позволяет физически не выполнять их вычисление.

Механизм разреженной маршрутизации Top-k

Прорыв в использовании MoE для сверхкрупных моделей произошел в 2017 году в работе Ноама Шазира и соавторов[1]. Они интегрировали разреженный слой MoE внутрь рекуррентных сетей, а позже этот подход был адаптирован под архитектуру Трансформер, где блоки MoE заменяют стандартные промежуточные полносвязные слои (FFN).

Чтобы шлюз выбирал только лучших экспертов, стандартную функцию \text{Softmax} модифицировали, добавив оператор выбора k максимальных элементов. Кроме того, для обеспечения равномерного обучения экспертов в систему ввели случайный шум. Математически зашумленный маршрутизатор G(x) устроен следующим образом:

  1. К линейной проекции входного вектора добавляется случайный гауссовский шум: H(x)_i = (\mathbf{W}_g x)_i + \epsilon \cdot \text{Softplus}((\mathbf{W}_{\text{noise}} x)_i), где \epsilon \sim \mathcal{N}(0, 1), а матрица весов \mathbf{W}_{\text{noise}} обратно распространяет градиенты и обучается параллельно с основными параметрами шлюза. Функция \text{Softplus}(t) = \ln(1 + \exp(t)) выступает здесь в роли гладкой и дифференцируемой аппроксимации функции ReLU. Она необходима для того, чтобы масштабирующий коэффициент шума (стандартное отклонение) всегда оставался строго положительным и плавно зависел от входного вектора x. Такой зашумленный механизм шлюзования (англ. noisy gating) необходим для исследования признакового пространства (англ. exploration): на этапе обучения шум заставляет шлюз случайно выбирать альтернативных экспертов, предотвращая ситуацию, когда вся нагрузка сразу падает на одну «лучшую» подсеть.
  2. Оператор \text{KeepTopK} находит индексы k самых больших координат вектора H(x). Обозначим это множество индексов как \mathcal{I}_k(H(x)). Все остальные координаты, не вошедшие в топ, принудительно заполняются минус бесконечностью (-\infty): \text{KeepTopK}(H(x), k)_i = \begin{cases} H(x)_i, & i \in \mathcal{I}_k(H(x)) \\ -\infty, & i \notin \mathcal{I}_k(H(x)) \end{cases}
  3. К полученному разреженному вектору применяется экспоненциальная нормализация: G(x) = \text{Softmax}(\text{KeepTopK}(H(x), k))

Поскольку \exp(-\infty) = 0, веса всех экспертов, не попавших в \text{Top-}k, становятся строго равными нулю. На практике в базовых архитектурах чаще всего используют конфигурацию k = 2 (Top-2 routing), передавая один токен двум наиболее релевантным экспертам.

Архитектура Switch Transformer

Долгое время считалось, что значение k должно быть строго больше единицы. Исследователи предполагали, что при k=1 (когда выбирается только один эксперт) шлюзовая сеть не сможет эффективно обучаться градиентными методами, так как у нее не будет информации о «втором по силе» эксперте для сравнения, что приведет к быстрой рассогласованности и коллапсу маршрутизации.

Однако в 2021 году в работе Уильяма Федуса и соавторов была представлена архитектура Switch Transformer[1], которая показала, что это допущение не всегда является строгим, и довела идею разреженности до крайности, зафиксировав k = 1.

Переход от Top-2 к Top-1 маршрутизации дал три фундаментальных преимущества:

  • Снижение вычислительной сложности (FLOPs): Каждый токен теперь физически проходит через вычисления ровно одной FFN-подсети, что экономит ресурсы процессора.
  • Существенное снижение коммуникационных затрат (Communication Overhead): При обучении гигантских моделей эксперты физически распределяются по разным графическим процессорам (GPU) в кластере (технология Expert Parallelism). Когда k = 2, системе приходится отправлять скрытые представления одного токена сразу на две разные видеокарты через сетевой интерфейс, а затем собирать их обратно (коллективная операция `All-to-All`). Это создавало критическое «бутылочное горлышко» пропускной способности сети. При k = 1 топология связи упрощается до схемы «один токен — один вычислительный узел», что существенно снижает межчиповый сетевой трафик (в пределе — до двух раз по сравнению с конфигурацией k = 2).
  • Стабилизация шлюза без аддитивного шума: Авторы Switch Transformer показали, что при жестком выборе одного эксперта от сложной зашумленной функции Шазира с матрицей \mathbf{W}_{\text{noise}} и оператором \text{Softplus} можно отказаться без существенной потери качества маршрутизации. Вместо этого используется детерминированный \arg\max от стандартного шлюза:
i = \arg\max_{j} (\text{Softmax}(\mathbf{W}_g x))_j

А стабильность распределения нагрузки и дифференцируемость при этом успешно обеспечиваются введением специальной вспомогательной функции потерь (англ. auxiliary loss), которая штрафует модель за дисбаланс еще на этапе вычисления лосса.

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

Балансировка нагрузки и вычислительные аспекты

Перевод классических алгоритмов смеси экспертов на рельсы высокопараллельных вычислений на графических процессорах (GPU) выявил ряд специфических проблем, связанных с нелинейной динамикой обучения и жесткими требованиями к структурам данных в видеопамяти.

Проблема коллапса маршрутизации

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

Возникает положительная обратная связь по принципу «богатый становится богаче» (англ. winner-takes-all). В результате 1–2 эксперта обрабатывают 100\% всех данных, а остальные N-2 экспертов перестают получать градиентный импульс и не обучаются. С вычислительной точки зрения это приводит к катастрофическому дисбалансу: один процессор, на котором запущен «популярный» эксперт, перегружен, а остальные вычислительные узлы простаивают, что нивелирует все преимущества разреженной архитектуры.

Вспомогательная функция потерь (Auxiliary Load Balancing Loss)

Для принудительного распределения объектов по всему пулу экспертов в общую функцию потерь модели добавляется регуляризационное слагаемое — вспомогательная функция потерь балансировки (англ. auxiliary load balancing loss)[1]. Пусть за один шаг оптимизации обрабатывается пакет (батч), содержащий T токенов (или объектов) X = \{x_1, x_2, \dots, x_T\}. Для фиксированного слоя MoE с N экспертами определяются два вектора размерности N:

  1. Вектор распределения реального потока токенов f, где i-я координата указывает долю токенов, направленных к i-му эксперту: f_i = \frac{1}{T} \sum_{t=1}^T h_{i,t}, где h_{i,t} = 1, если эксперт i был выбран маршрутизатором в качестве целевого для токена x_t, и h_{i,t} = 0 в противном случае.
  2. Вектор усредненных вероятностей маршрутизации P, определяющий суммарный предсказанный шлюзом потенциал распределения: P_i = \frac{1}{T} \sum_{t=1}^T G(x_t)_i

Вспомогательный лосс балансировки L_{aux} вычисляется как скалярное произведение этих векторов, масштабированное на количество экспертов: L_{aux} = \alpha \cdot N \sum_{i=1}^N f_i \cdot P_i где \alpha — гиперпараметр, задающий силу регуляризации. Если распределение идеально равномерно, то для любого эксперта выполняются равенства f_i = 1/N и P_i = 1/N, что сводит сумму к минимуму. Поскольку компонента P_i является непрерывной и дифференцируемой функцией по отношению к весам шлюза, градиенты функции потерь L_{aux} эффективно штрафуют маршрутизатор за любые проявления дисбаланса.

Ограничение вместимости эксперта (Capacity Factor)

Для эффективного параллельного выполнения матричных операций на GPU размеры тензоров на входе в каждый эксперт должны быть статическими и известными до начала вычислений. Однако даже при использовании L_{aux} на коротких интервалах времени распределение токенов в батче может колебаться.

Чтобы зафиксировать размер выделяемой памяти, вводится понятие вместимости эксперта (англ. expert capacity). Она определяет максимальное число токенов C, которое один эксперт физически может принять на обработку из текущего батча: C = c \cdot \frac{T}{N} где c — константа, называемая коэффициентом вместимости (англ. capacity factor). Если c = 1, а распределение идеально, каждый эксперт получит ровно свою долю токенов. На практике устанавливают c > 1 (например, c = 1.25 или c = 1.5), создавая некоторый запас прочности на случай локальных дисбалансов.

Если количество токенов, направленных маршрутизатором к конкретному эксперту, превышает предел C, все избыточные токены признаются отброшенными (англ. dropped tokens). Они пропускают вычисления в слое экспертов и передаются на следующий слой без изменений через механизм сквозных связей (англ. residual connections). Высокий процент отброшенных токенов заметно снижает качество работы нейросети, что заставляет исследователей искать альтернативные способы управления потоками данных.

Актуальные стратегии роутинга (Routing Strategies)

В контексте архитектур смеси экспертов роутинг (от англ. routing — маршрутизация) представляет собой алгоритмический процесс сопоставления между множеством входных информационных единиц (токенов, векторов признаков) и множеством вычислительных модулей (экспертов). Стратегия роутинга определяет математические правила, по которым принимается дискретное решение о направлении пакета данных на конкретный физический адрес исполнителя.

Маршрутизация по выбору токенов (Token Choice Routing)

Описанная выше классическая схема Шазира и Switch Transformer относится к классу стратегий выбора токенов (англ. Token Choice Routing). В ней инициатором выбора выступает сам входной объект (токен). Каждый токен независимо от остальных оценивает свои предпочтения с помощью шлюзовой функции и отправляется к k лучшим экспертам.

  • Преимущество: Простота локальных вычислений на уровне одного токена.
  • Недостатки: Прямое следствие асинхронности. Токены не координируют свои действия между собой, что неизбежно приводит к описанным выше проблемам: переполнению буферов экспертов, потере информации из-за отбрасывания токенов (dropped tokens) и необходимости искусственного усложнения функции потерь через L_{aux}.

Маршрутизация по выбору экспертов (Expert Choice Routing)

Чтобы кардинально решить проблему фиксированного размера тензоров и минимизировать потерю токенов, в 2022 году была предложена инвертированная стратегия — маршрутизация по выбору экспертов (англ. Expert Choice Routing)[1]. В этой схеме инициатива переходит к экспертным подсетям.

Вместо того, чтобы токен выбирал эксперта, каждый эксперт индивидуально просматривает весь батч целиком и выбирает из него строго фиксированное число C наиболее релевантных для себя токенов. Для этого матрица шлюзовых весов транспонируется, и операция \text{Top-}k применяется не по измерению экспертов, а по измерению токенов.

Математически, если задана матрица оценок маршрутизатора \mathbf{S} \in \mathbb{R}^{N \times T}, где компонент S_{i,t} определяет близость эксперта i и токена x_t, то i-й эксперт выбирает подмножество токенов \mathcal{T}_i размера C, максимизирующих его личные оценки: \mathcal{T}_i = \text{Top-C}(\mathbf{S}_{i, \cdot})

  • Вычислительные свойства: Данная стратегия по определению гарантирует стопроцентную сбалансированность нагрузки. Каждый эксперт получает ровно C токенов, конфигурация тензоров в памяти становится стабильной, что позволяет алгоритмически исключить феномен отброшенных токенов.
  • Особенности: при такой схеме некоторые токены могут быть выбраны сразу несколькими экспертами (что увеличивает глубину их проработки), в то время как другие, наименее информативные токены, могут быть не выбраны ни одним экспертом и пройдут слой только через сквозную residual-связь. Эксперименты показывают, что это не ухудшает, а в некоторых задачах повышает эффективность обобщения модели.

Мягкая смесь экспертов (Soft MoE)

В 2024 году исследователи из Google DeepMind предложили радикальный отказ от концепции дискретной маршрутизации, представив метод мягкой смеси экспертов (англ. Soft MoE)[1]. Авторы указали, что любые операции жесткого выбора (будь то \text{Token Choice} или \text{Expert Choice}) содержат в себе шаг вычисления дискретных индексов (\arg\max или \text{Top-}k), который не является дифференцируемым в строгом математическом смысле, что усложняет оптимизацию и приводит к нестабильности шлюзов на сверхглубоких горизонтах.

В архитектуре Soft MoE каждый эксперт i оперирует не исходными токенами, а фиксированным набором из d_e виртуальных слотов. Вместо физической пересылки токенов алгоритм вычисляет полностью дифференцируемую матрицу «мягкого» назначения \mathbf{D} \in \mathbb{R}^{T \times (N \cdot d_e)}, элементы которой нормализуются с помощью функции \text{Softmax} по двум осям одновременно. Входной сигнал \tilde{x}_{i,j} для j-го слота i-го эксперта формируется как взвешенная линейная комбинация всех токенов текущего батча: \tilde{x}_{i,j} = \sum_{t=1}^T D_{t, i, j} x_t

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

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

Ограничения, критика и системные вызовы

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

Проблема избыточности оперативной памяти (VRAM Footprint)

Главный системный вызов при эксплуатации современных MoE — это колоссальные требования к объему видеопамяти. В отличие от классических плотных моделей, где объем требуемой памяти строго пропорционален вычислительной сложности (FLOPs), разреженные MoE-модели разделяют эти сущности.

Модель может требовать вычислительного бюджета уровня обычной сети на 15 миллиардов параметров, но при этом её физический вес (суммарное число параметров всех экспертов) составляет 100 миллиардов. Поскольку для инференса или обучения все параметры сети должны одновременно находиться в оперативной памяти кластера, развертывание MoE требует огромного количества графических ускорителей (GPU). Это делает архитектуру крайне дорогой и неэффективной для локального применения на единичных серверах, превращая её в сугубо облачную технологию крупных дата-центров.

Уязвимость к сдвигу распределения (Domain Shift)

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

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

Дискретность шлюзования и нестабильность градиентов

Математическая природа операций выбора максимума (\arg\max или \text{Top-}k) дискретна. Хотя на этапе обучения этот шаг сглаживается добавлением шума, аппроксимацией \text{Softplus} или вспомогательными лоссами, целевая поверхность функции потерь MoE остается гораздо более изрезанной, овражной и изобилующей локальными минимумами, чем у стандартных многослойных перцептронов.

Это приводит к высокой нестабильности процесса обучения. На длинных горизонтах оптимизации (при обучении на триллионах токенов) модели MoE склонны к внезапным «взрывам градиентов» (англ. gradient explosions) и резким скачкам лосса (англ. loss spikes), что требует от инженеров тщательного подбора гиперпараметров регуляризации и постоянного мониторинга динамики весов.

См. также

  • Ансамблирование — метод объединения нескольких базовых алгоритмов для получения единого более точного предсказания (в отличие от MoE, в ансамблях каждый объект обычно обрабатывается всеми моделями одновременно).
  • Модели гауссовских смесей (GMM) — классический вероятностный метод кластеризации и моделирования распределений, послуживший математическим фундаментом для создания первых слоев MoE.
  • EM-алгоритм — итеративный статистический алгоритм, традиционно применявшийся для поиска оценок максимального правдоподобия в смесях экспертов до эры глубокого градиентного обучения.
  • Трансформер — доминирующая архитектура нейросетей в обработке естественного языка, в которой блоки MoE успешно заменяют стандартные полносвязные слои для масштабирования параметров.
  • Условные вычисления — общая концепция проектирования алгоритмов искусственного интеллекта, при которой динамически активируются только те части вычислительного графа, которые необходимы для обработки конкретного входного объекта.

Примечания

Литература

  • Гудфеллоу Я., Бенджио И., Курвилль А. Глубокое обучение. — М.: ДМК Пресс, 2018. — С. 326–328. — ISBN 978-5-97060-618-6
  • Yuksel S. E., Wilson J. N., Gader P. D. Twenty Years of Mixture of Experts. A Literature Survey // IEEE Transactions on Neural Networks and Learning Systems. — 2012. — Т. 23. — № 8. — С. 1177–1193.
  • Masoudnia S., Ebrahimpour R. Mixture of experts: a literature survey // The Artificial Intelligence Review. — 2014. — Т. 42. — № 2. — С. 275–293.
  • Eigen D., Ranzato M., Sutskever I. Learning Factored Representations in a Deep Mixture of Experts // arXiv preprint arXiv:1312.4314. — 2013.
  • Lepikhin D., Lee H., Xu Y., Chen D., Firat O., Huang Y., Krikun K., Shazeer N., Chen Z. GShard: Scaling Giant Models with Conditional Computation and Automatic Sharding // arXiv preprint arXiv:2006.16668. — 2020.
  • Riquelme C., Puigcerver J., Scialom B., Rochette E., Pedregosa F., Houlsby N. Scaling Vision with Sparse Mixture-of-Experts // Advances in Neural Information Processing Systems (NeurIPS). — 2021. — Т. 34. — С. 8583–8596.
  • Zoph B., Fedus W., Du N., Agarwal S., Shazeer N., Lepikhin D., Chen Z., Dean J. Designing Effective Sparse Expert Models // arXiv preprint arXiv:2202.08906. — 2022.
  • Sun D., Zheng S., Chen C., Wang Z., Zhang Y., Ge N. Mixture-of-Experts Meets Large Language Models: A Survey // arXiv preprint arXiv:2404.15045. — 2024.
Личные инструменты