Глоссарий

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

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

Обучай модели YOLO просто
с помощью Ultralytics HUB.

Узнай больше

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

Как работает смесь экспертов

Модель MoE обычно состоит из двух основных компонентов:

  1. Экспертные сети: Это несколько нейронных сетей (НС), часто с одинаковой или схожей архитектурой, каждая из которых обучена для того, чтобы стать экспертом в обработке определенных типов данных или подзадач в рамках большого проблемного пространства. Например, в обработке естественного языка (NLP) разные эксперты могут специализироваться на различных аспектах языка или доменах знаний.
  2. Гейтинговая сеть (маршрутизатор): Это еще одна нейронная сеть, обычно меньшая по размеру и более быстрая, которая анализирует входные данные и решает, какой эксперт(ы) должен(ы) их обработать. Она выводит веса, указывающие на релевантность или вклад каждого эксперта в данный входной сигнал. Во многих современных реализациях, особенно в разреженных моделях MoE, гейтинговая сеть выбирает лишь небольшое число (например, top-k) экспертов для активации.

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

Преимущества MoE

Архитектуры MoE обладают рядом существенных преимуществ, особенно для очень больших моделей:

  • Вычислительная эффективность: Активируя только подмножество экспертов для каждого входного токена или точки данных, модели MoE могут резко снизить вычислительную нагрузку(FLOPs) по сравнению с плотными моделями аналогичного размера, где все параметры используются для каждого вычисления. Это приводит к более быстрому обучению и меньшей задержке в выводах.
  • Масштабируемость: MoE позволяет создавать модели с чрезвычайно большим количеством параметров (в некоторых случаях триллионы) без пропорционального увеличения вычислительных затрат на каждое умозаключение. Это очень важно для расширения границ глубокого обучения (DL). Изучи концепции масштабируемости моделей.
  • Производительность: Специализация позволяет экспертам стать высококвалифицированными специалистами в своих областях, что потенциально приводит к повышению общей точности модели и производительности при решении сложных задач по сравнению с одной плотной моделью. Эффективное обучение часто требует тщательной настройки гиперпараметров.

MoE в сравнении со смежными понятиями

Важно отличать MoE от других техник:

  • Ансамблевые методы: Хотя оба метода используют несколько моделей, ансамбли обычно обучают несколько независимых моделей (часто плотных) и объединяют их предсказания (например, путем усреднения). Все модели в ансамбле обычно обрабатывают каждый вход. В отличие от этого, в MoE задействованы специализированные части внутри одной большой модели, и на каждый вход активируется только подмножество.
  • Плотные модели: Традиционные нейронные сети, включая стандартные трансформаторы и конволюционные нейронные сети (CNN), подобные тем, что используются в Ultralytics YOLO модели, часто являются "плотными". Это означает, что большинство или все параметры(веса модели) участвуют в обработке каждого входного сигнала. MoE вводит разреженность, чтобы уменьшить эту вычислительную нагрузку.

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

MoE получил значительное распространение, особенно в современных больших моделях:

  1. Большие языковые модели (LLM): Это самая заметная область применения. Такие модели, как трансформеры GShard и Switch отGoogle, а также модели с открытым исходным кодом, например серия Mixtral AI от Mistral, включают слои MoE в свои архитектуры трансформеров. Это позволяет им достигать высокой производительности с более высокой скоростью вывода по сравнению с такими же большими плотными моделями. Эти модели отлично справляются с такими задачами, как генерация текста и ответы на вопросы.
  2. Компьютерное зрение (КВ): Хотя это менее распространено, чем в NLP, MoE исследуется в моделях зрения. Исследования показывают потенциальные преимущества для таких задач, как классификация изображений и обнаружение объектов, благодаря тому, что эксперты специализируются на распознавании различных визуальных особенностей (например, текстур, форм, конкретных категорий объектов) или на работе с различными условиями изображения. Это контрастирует с высоко оптимизированными плотными моделями зрения, такими как YOLO11которые достигают эффективности за счет архитектурного дизайна, а не разреженной активации. Трансформаторы зрения (ViTs) - еще одна область, где можно применить MoE. Ты можешь управлять и обучать модели зрения с помощью таких платформ, как Ultralytics HUB.

Проблемы и соображения

Эффективная реализация и обучение моделям MoE сопряжены с такими проблемами, как обеспечение сбалансированной нагрузки на экспертов (предотвращение чрезмерной/недостаточной загрузки некоторых экспертов), управление коммуникационными накладными расходами в распределенных средах обучения (как это наблюдается в таких фреймворках, как PyTorch и TensorFlow), а также увеличение сложности процесса обучения. Также необходимо тщательно продумать варианты развертывания модели.

Читать полностью