Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Mixture of Experts (MoE)

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

Смесь экспертов (Mixture of Experts, MoE) - это специализированная архитектура нейронной сети (НС), разработанная для эффективного масштабирования емкости модели без пропорционального увеличения вычислительных затрат. В отличие от традиционных "плотных" моделей, в которых каждый параметр активен для каждого входа, в модели MoE используется техника, называемая условное вычисление. Это позволяет системе динамически активировать только небольшое подмножество всех своих параметров - известных как "эксперты" - в зависимости от конкретных требований входных данных. Используя эту разреженную активацию, исследователи могут обучать массивные системы, такие как Большие языковые модели (LLM), которые обладают триллионами параметров, сохраняя при этом задержку и скорость вывода гораздо меньших по размеру модели.

Основные компоненты архитектуры MoE

Система MoE заменяет стандартные плотные слои разреженным слоем MoE, который состоит из двух основных компонентов которые работают в тандеме для обработки информации:

  • Экспертные сети: Это независимые подсети, часто простые сети с прямой передачей данных (FFN), которые специализируются на обработке различных типов данных. Например, в обработке естественного языка (NLP) один эксперт может сосредоточиться на грамматической структуре, в то время как другой специализируется на идиоматических выражениях.
  • Сеть гейтинга (маршрутизатор): Маршрутизатор выполняет роль регулятора трафика. Для каждого входного маркера или изображения он рассчитывает распределение вероятностей с помощью функции функции softmax, чтобы определить, какие эксперты лучше всего подходят для обработки конкретного входного сигнала. Как правило, он направляет данные экспертам "Топ-К" (обычно 1 или 2), гарантируя, что большая часть модели остается неактивной, тем самым экономя вычислительные ресурсы.

MoE против модельных ансамблей

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

  • Ансамбли моделей: В таких методах, как bagging или boosting, несколько отдельных моделей обрабатывают один и тот же вход независимо друг от друга, а их прогнозы объединяются для повышения точность. Этот подход увеличивает вычислительные затраты линейно с ростом числа моделей, поскольку каждая модель запускается для каждого вывода.
  • Смесь экспертов: МЭ - это единая, унифицированная модель, в которой различные входные данные проходят разные пути через сеть. Выполняются только выбранные эксперты, что позволяет модели быть очень большой по количеству параметров но при этом не требует больших вычислений. Это обеспечивает высокую масштабируемость, с которой не могут сравниться плотные ансамбли.

Применение в реальном мире

Архитектура MoE стала краеугольным камнем для современного высокопроизводительного ИИ, особенно в сценариях, требующих огромного объема знаний и многозадачности.

  1. Продвинутое языковое поколение: Известные базовые модели, такие как Mixtral AI's Mixtral 8x7B и Google's Switch Transformers, используют MoE для решения разнообразных языковых задач. Направляя лексемы к специализированным экспертам, эти модели могут осваивать одновременно осваивать несколько языков и синтаксисов кодирования без чрезмерных затрат на обучение, характерных для плотных моделей эквивалентного размера. эквивалентного размера.
  2. Масштабируемое компьютерное зрение: В области Компьютерное зрение (КЗ), MoE используется для создания универсальных основ для таких задач, как обнаружение объектов и классификация изображений. На сайте Модель зрения на основе MoE, такая как Vision MoE (V-MoE) от Google, может выделять специальных экспертов для распознавания отдельных визуальных признаков, таких как текстуры и формы, что повышает производительность на массивных наборов данных, таких как ImageNet. Существующие эффективные модели такие как YOLO11 опираются на оптимизированные плотные архитектуры, но Будущие научно-исследовательские проекты, такие как YOLO26, исследуют передовые архитектурных стратегий для достижения максимального компромисса между размером и скоростью.

Пример логики маршрутизации

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

import torch
import torch.nn as nn

# A simple router selecting the top-2 experts out of 8
num_experts = 8
top_k = 2
input_dim = 128

# The gating network predicts expert relevance scores
gate = nn.Linear(input_dim, num_experts)
input_data = torch.randn(4, input_dim)  # Batch of 4 inputs

# Calculate routing probabilities
logits = gate(input_data)
probs = torch.softmax(logits, dim=-1)

# Select the indices of the most relevant experts
weights, indices = torch.topk(probs, top_k, dim=-1)

print(f"Selected Expert Indices:\n{indices}")

Трудности в обучении

Несмотря на свою эффективность, модели MoE вносят сложности в процесс обучения. Основной проблемой является распределение нагрузки; сеть стробирования может прийти к состоянию, когда она направляет все только нескольким "популярных" экспертов, оставляя остальных необученными. Чтобы предотвратить это, исследователи применяют вспомогательные вспомогательные функции потерь, которые способствуют равномерному распределению по всем экспертам. Кроме того, реализация MoE требует сложной распределенной инфраструктуры обучения для управления связи между экспертами, разделенными по разным GPU. Такие библиотеки, как Microsoft DeepSpeed и TensorFlow Mesh были разработаны специально для решения этих распараллеливания.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас