Стэнфорд CME295: Как работают Mixture of Experts и механизмы памяти в LLM

Stanford Online 80,2 тыс. 1 ч 48 мин 5 мин 17.10.2025
Главное

В рамках учебного курса CME295 Стэнфордского университета состоялась третья лекция, посвященная архитектурам больших языковых моделей (LLM) и механизмам их работы. Преподаватели Афшин и Шервин разобрали эволюцию трансформеров от BERT до современных моделей с архитектурой Mixture of Experts (MoE), методы генерации текста и стратегии оптимизации инференса, такие как KV-кэширование и спекулятивное декодирование.

🏗️ Что делает языковую модель «большой»? 0:05

Современное определение LLM (Large Language Model) опирается на три ключевых фактора масштабирования: количество параметров, объем обучающих данных и вычислительные мощности .

По мнению лекторов, терминология со временем изменилась: если в 2018–2019 годах к LLM могли относить BERT (encoder-only), то по современным стандартам LLM — это преимущественно декодерные (decoder-only) модели, способные генерировать текст . К ним относятся семейства GPT, LLaMA от Meta, Gemma от Google, а также Mistral, DeepSeek и Qwen .

🧩 Mixture of Experts (MoE): Масштабирование без потери скорости 8:21

Главная проблема огромных моделей — высокая вычислительная сложность при каждом проходе. Идея «Смеси экспертов» (Mixture of Experts) заключается в том, чтобы задействовать для обработки конкретного токена только часть параметров модели .

Механика работы экспертов

Вместо того чтобы прогонять входной сигнал x через все слои, используется специальная сеть — роутер (router) или гейт (gate) .

  1. Dense MoE: Все эксперты задействованы, но с разными весами (вероятностное распределение) .
  2. Sparse MoE: Активируется только подмножество из k экспертов (обычно k=1 или k=2) .

Математически выход y представляет собой сумму выходов выбранных экспертов, взвешенную вероятностями роутера . Эксперты в LLM обычно заменяют стандартные полносвязные слои (FFN), так как именно на них приходится основная масса параметров и вычислений (FLOPS) .

Проблема «коллапса роутера»

При обучении возникает риск routing collapse, когда роутер привыкает использовать только 1–2 экспертов, а остальные остаются неактивными . Для борьбы с этим в функцию потерь (loss function) добавляется дополнительный член (load balancing loss), который штрафует модель за неравномерное распределение токенов между экспертами .

По словам Афшина, MoE-модели (например, Switch Transformer) могут масштабироваться до триллионов параметров, оставаясь эффективными по количеству «активных» параметров при инференсе .

🎲 Стратегии декодирования: Как модель выбирает следующее слово 36:36

На выходе LLM выдает распределение вероятностей для всех токенов словаря . Существует несколько подходов к выбору конкретного токена:

Гиперпараметры управления текстом

Для контроля качества сэмплирования используются:

  1. Temperature (T): Параметр в функции Softmax. Низкая температура (T < 1) делает распределение «острым» (модель становится более уверенной и детерминированной). Высокая температура делает его равномерным (модель становится более непредсказуемой) .
  2. Top-k: Ограничение выбора только из k самых вероятных токенов .
  3. Top-p (Nucleus Sampling): Выбор из минимального набора токенов, суммарная вероятность которых превышает порог p .

Лектор отмечает важный технический нюанс: хотя архитектура трансформера детерминирована, на практике GPU могут выдавать разные результаты при одинаковых вводных из-за особенностей параллельных вычислений и точности чисел с плавающей запятой .

💡 Промпт-инжиниринг и «гниение контекста» 1:07:11

Шервин ввел понятие Context Length — это максимальное количество токенов, которое модель может обработать за один раз . Современные модели поддерживают контекст от десятков тысяч до миллионов токенов (например, Gemini) .

Однако исследователи обнаружили эффект Context Rot (гниение контекста) или проблему «иголки в стоге сена» (needle in a haystack). Модели часто теряют информацию, находящуюся в середине длинного текста, и их способность извлекать факты снижается при росте объема входных данных .

Структура идеального промпта

Шервин предложил ментальную модель промпта из четырех измерений :

  1. Контекст (Context): Окружение или роль модели (например, «Ты — ассистент по программированию»).
  2. Инструкции (Instructions): Что именно нужно сделать.
  3. Входные данные (Inputs): Непосредственный текст для обработки.
  4. Ограничения (Constraints): Формат ответа, стиль или правила безопасности.

🧠 Методы улучшения рассуждений (Reasoning) 1:18:44

Для решения сложных задач используются специальные техники обучения в контексте (In-context learning):

⚡ Оптимизация инференса: Как ускорить нейросеть 1:25:04

Для снижения задержек и стоимости работы моделей применяются инженерные хитрости:

  1. KV Cache (Кэширование ключей и значений): Чтобы не пересчитывать математические представления всех предыдущих слов при генерации каждого нового токена, результаты вычислений (Key и Value) сохраняются в памяти .
  2. PagedAttention: Технология, реализованная в библиотеке vLLM. Она управляет памятью GPU подобно операционной системе, разбивая KV-кэш на блоки и устраняя фрагментацию памяти .
  3. Multi-Latent Attention (MLA): Решение от команды DeepSeek, использующее низкоранговое сжатие (low-rank compression) для уменьшения размера KV-кэша при сохранении качества .
  4. Speculative Decoding: Использование маленькой («черновой») модели для быстрой генерации нескольких токенов, которые затем проверяются большой («целевой») моделью за один проход . Если большая модель согласна с предсказаниями маленькой, генерация ускоряется в несколько раз.
  5. Multi-token Prediction (MTP): Обучение модели предсказывать сразу несколько следующих токенов вместо одного .
💬 Цитаты

«BERT не является LLM в современном понимании, так как он не генерирует текст.»

«Ничто в архитектуре трансформера не является вероятностным, все детерминировано. Единственное, что не детерминировано — это то, как вы сэмплируете следующий токен.»

👥 Спикеры
🔗 Упомянутые сайты и проекты
📖 Термины
FLOPS
Количество операций с плавающей запятой в секунду, мера вычислительной сложности.
Routing Collapse
Ситуация в MoE-моделях, когда роутер выбирает только одних и тех же экспертов, игнорируя остальных.
KV Cache
Метод сохранения промежуточных вычислений для ускорения генерации текста.
Zero-shot
Способность модели выполнять задачу без предварительных примеров, только по инструкции.
📊 Цифры
🗓 Хронология
  1. 2018-2019 Период, когда термин LLM еще не имел четкого определения и мог включать BERT.
  2. Лето 2024 Публикация статьи о феномене «Context Rot» (гниение контекста).
⚖️ Другая сторона
Искусственный интеллект Stanford University Mixture of Experts KV Cache Chain of Thought PagedAttention