MoE задаёт выбор вычислительных блоков для токена; экспертный параллелизм — размещение этих блоков между процессами группы.
Смесь экспертов (MoE)
Определение
Смесь экспертов (MoE) — архитектура нейросети с несколькими вычислительными блоками и маршрутизатором, который определяет их вклад в результат. В разреженном MoE для токена выбирается лишь часть экспертов.
Также ищут: mixture of experts · MoE · смесь экспертов
Зачем это знать
Различие полного и активного числа параметров помогает оценивать хранение весов отдельно от выбора вычислительных блоков для токена. Названия экспертов не заменяют проверку их поведения.
Карта понятия
Что подтверждено
В Mixtral 8x7B маршрутизатор для каждого токена выбирает два из восьми FFN-экспертов в MoE-слое.
Граница применимости: Mixtral 8x7B, описанные авторами слои MoE; arXiv:2401.04088v1, §§2–2.1.
В Mixtral эксперты — блоки прямого распространения (FFN) внутри слоя, а не полные языковые модели. Внимание общее для экспертных ветвей одного блока; это не означает использование одних и тех же весов в разных слоях.
Граница применимости: Архитектура Mixtral, arXiv:2401.04088v1, §§2–2.1 и рисунок 1; различие экспертных FFN и блока внимания.
Авторы Mixtral указывают 47 млрд параметров всего и 13 млрд активных. Активное число само по себе не определяет объём хранения полного набора весов.
Граница применимости: Округлённые оценки авторов Mixtral 8x7B, arXiv:2401.04088v1, §3, Size and Efficiency; не точный размер файла весов и не оценка всей памяти GPU.
Название «эксперты» не гарантирует разделение по предметным областям. В описанном анализе подмножеств The Pile авторы не обнаружили явной тематической специализации экспертов Mixtral; вывод ограничен этим исследованием.
Граница применимости: Анализ авторов Mixtral на исследованных подмножествах The Pile, arXiv:2401.04088v1, §5; не утверждение об отсутствии специализации у всех моделей или данных.
В MixtralConfig из Transformers v4.44.2 num_local_experts задаёт число экспертов разреженного MLP-слоя, а num_experts_per_tok — число выбранных экспертов на токен. Значения по умолчанию — 8 и 2; число GPU из этих полей не следует.
Граница применимости: Только MixtralConfig в Transformers v4.44.2; поля и значения по умолчанию. Размещение и запуск модели не проверялись.
В условной модели с одним MoE-слоем восемь экспертов имеют по 1 млрд параметров, а вне экспертов — 2 млрд, всегда активных по условию. Выбираются два эксперта: всего 10 млрд параметров, активно 4 млрд. Один полный набор при 2 байтах на параметр занимает 20 GB; это только веса.
Граница применимости: Учебная модель с одним MoE-слоем; GB=10⁹ байт. Источники подтверждают различие полного и активного числа параметров и смысл числа экспертов и выбора на токен. Размеры 2 и 1 млрд и хранение по 2 байта заданы в примере. Без KV-кэша, активаций, буферов, служебной памяти, состояний обучения, квантования, выгрузки, тензорного параллелизма и дополнительных копий; не оценка Mixtral.
Не путать
Что проверить
- Различайте параметры всей модели, активные параметры, число экспертов слоя и их размещение.
- Для расчёта памяти задайте формат весов и число копий; отдельно учтите KV-кэш, буферы и прочие выделения.
Первоисточники
- Transformers v4.44.2: MixtralConfig
Описания num_experts_per_tok и num_local_experts — строки 82–86, значения по умолчанию — 131–132, присваивания — 158–159. Только указанная версия MixtralConfig.
- DeepSpeed v0.14.5: MoE Layer
Аргументы MoE — строки 20–35; делимость числа экспертов и расчёт локального числа — 59–63; создание группы процессов — 89–103. Только DeepSpeed v0.14.5.
Связанные понятия
Курсы по теме
В каталоге
- Графические ускорители — Учитывайте все размещаемые веса, KV-кэш и рабочие буферы при выборе памяти ускорителя; число активных параметров не заменяет полный расчёт.