Switch Transformer: как Google упаковал триллион параметров в одну нейросеть

Yannic Kilcher 34,3 тыс. 33 мин 4 мин 22.01.2021
Главное

Новое исследование специалистов Google Brain — Уильяма Федуса, Баррета Зоффа и Ноама Шазира — перевернуло представление о масштабировании нейросетей. Разработанная ими архитектура Switch Transformer позволила создать модель с рекордным 1 триллионом параметров, при этом сохранив вычислительные затраты на уровне значительно меньших моделей.

🚀 Прорыв в масштабировании: от миллиардов к триллионам 0:00

На протяжении последних лет индустрия ИИ следовала правилу: чем больше модель, тем она лучше. Однако классические трансформеры (такие как GPT-3 с его 175 миллиардами параметров) сталкиваются с проблемой линейного роста вычислительной сложности . Если вы увеличиваете количество параметров в 10 раз, вам требуется в 10 раз больше вычислительных мощностей (FLOPS) для каждого прохода данных.

Янник Килчер подчеркивает, что Switch Transformer радикально меняет этот подход за счет внедрения «разреженности» (sparsity) . Ключевая особенность новой архитектуры заключается в том, что:

Килчер отмечает, что заявление о «триллионе параметров» во многом является маркетинговым и демонстрационным ходом . По его мнению, сам по себе этот масштаб не всегда дает лучшие результаты — модель Switch Transformer на 1 трлн параметров в некоторых тестах уступает своим более сбалансированным версиям меньшего размера (например, Switch XXL) из-за неудачных компромиссов при проектировании слоев .

🧠 Архитектура Mixture of Experts и «умный» переключатель 1:02

Switch Transformer базируется на концепции Mixture of Experts (MoE) — «смеси экспертов». В обычном трансформере каждый токен (слово или часть слова) проходит через один и тот же слой полносвязной нейронной сети (Feed-Forward Layer). В MoE этот слой заменяется набором «экспертов» — множеством параллельных слоев .

Ранее считалось, что для стабильного обучения токен нужно отправлять как минимум к двум экспертам одновременно. Switch Transformer доказывает обратное:

  1. Жесткая маршрутизация (Hard Routing): Система направляет токен только к одному, самому подходящему эксперту .
  2. Специализация: Янник приводит аналогию, где разные эксперты могут специализироваться на обработке существительных, глаголов или знаков препинания .
  3. Обучаемый роутер: Модель сама учится определять, какой эксперт лучше справится с конкретным токеном в данном контексте . Для этого используется специальная матрица весов маршрутизатора, работающая по принципу, похожему на механизм внимания (attention).

Такой подход позволяет увеличивать общее количество параметров в модели в 4, 8 или даже 100 раз, просто добавляя новых экспертов, при этом путь каждого отдельного токена через сеть не удлиняется .

📊 Эффективность и инженерные хитрости 4:37

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

Однако работа с такими гигантами требует решения ряда инженерных проблем:

Чтобы обучение не «разваливалось» при использовании только одного эксперта на токен, команда Google применила три ключевых приема :

  1. Выборочная точность (Selective Precision): Основная коммуникация между машинами идет в 16-битном формате для экономии трафика, но внутри эксперта вычисления переводятся в 32 бита для сохранения точности градиентов .
  2. Экспертный Dropout: К слоям экспертов применяется более высокий коэффициент выпадения нейронов (dropout), чем к остальной сети, что предотвращает переобучение в разреженных структурах .
  3. Масштабируемая инициализация: Исследователи обнаружили, что уменьшение стандартного масштаба начальных весов в 10 раз значительно повышает стабильность системы .

🌍 Многоязычность и дистилляция 26:47

Switch Transformer показал отличные результаты в многоязычных тестах. По данным статьи, модель превосходит плотные (dense) аналоги в каждом проверенном языке, причем прирост производительности виден в логарифмическом масштабе .

Интересным аспектом является возможность дистилляции. Огромную разреженную модель можно использовать как «учителя» для тренировки маленькой, но эффективной плотной модели .

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

💬 Цитаты

«Вы можете увеличить количество параметров модели, но проход данных по-прежнему будет требовать того же объема вычислительных мощностей (FLOPS).»

Янник Килчер 02:11

«Поразительно, что после стольких лет развития отрасли такая вещь, как инициализация весов, все еще может спасти или погубить модель.»

Янник Килчер 32:15
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Sparsity (Разреженность)
Свойство архитектуры, при котором в каждый конкретный момент времени работает лишь малая часть всех весов нейросети.
FLOPS
Количество операций с плавающей точкой в секунду; показатель вычислительной сложности работы модели.
Mixture of Experts (MoE)
Архитектурный подход, заменяющий один слой нейросети набором параллельных слоев («экспертов»), из которых выбирается один или несколько.
Sharding (Шардирование)
Процесс разделения базы данных или весов модели на части для хранения и обработки на разных серверах.
Distillation (Дистилляция)
Метод обучения маленькой модели на основе предсказаний большой, более мощной модели-учителя.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект Google Brain Switch Transformer Mixture of Experts Mesh TensorFlow NLP