From multi-head to latent attention: The evolution of attention mechanisms
Внимание в авто-регрессивных моделях позволяет фокусироваться на релевантных токенах контекста. Например, в «The animal didn’t cross the street because it was too tired» механизм связывает «it» с «animal», а не «street».
Как работает внимание
- Query (Q) – вектор текущего токена.
- Key (K) – векторы контекста для сравнения.
- Value (V) – фактические данные контекста.
- Attention scores – веса важности, полученные из Q и K.
- KV-кэш – повторное использование уже вычисленных K и V для ускорения декодирования.
Multi-Head Attention (MHA)
Идея: h параллельных «голов» учат разные аспекты зависимостей.
Плюсы: высокая точность.
Минусы: O(h·d²) параметров и вычислений; рост KV-кэша.
Multi-Query Attention (MQA)
Идея: одна K и V на все головы.
Плюсы: в 8–16× меньше KV-памяти, быстрее.
Минусы: качество падает.
Grouped Query Attention (GQA)
Компромисс: g групп K/V (1 ≤ g ≤ h).
Плюсы: баланс между MHA и MQA.
Минусы: всё ещё линейный рост памяти при больших g.
Multi-Latent Attention (MLA)
Идея: сжимаем K и V в небольшой латентный вектор c (dim ≪ d), из которого потом «разворачиваем» нужные K, V.
Плюсы:
- KV-память не зависит от h и d;
- качество как у MHA;
- применяется в DeepSeek-V2.
Минусы: дополнительные матрицы проекции, но выгода при больших моделях перевешивает.
Сводная таблица
Механизм | Параметры KV | Память KV | Качество | Примечание |
---|---|---|---|---|
MHA | h·d·d | O(hd) | высокое | baseline |
MQA | d·d | O(d) | ↓ | быстрый |
GQA | g·d·d | O(gd) | ≈ MHA | компромисс |
MLA | d_lat·d | O(d_lat) | ≈ MHA | state-of-art |
Вывод
Эволюция от MHA к MLA – путь к снижению памяти и вычислений без потери качества. MLA через латентные представления достигает эффективности MQA и точности MHA, задавая новый стандарт для больших языковых моделей.
Комментарии (38)
- Название «Attention Is All You Need» выглядело лёгким и цепляющим, но авторы не предвидели гипер-масштабного влияния; целью было лишь улучшить машинный перевод без рекуррентных блоков.
- Некоторые считают, что броское имя помогло вирусному распространению работы, а в DL-сообществе меметические названия вообще норма (YOLO, ViT и др.).
- Участники спорят, используют ли «фронтирные» модели описанные в статье приёмы: открытые варианты вроде Grok-2 всё ещё опираются на стандартные MHA + MoE, а основной прогресс идёт за счёт методов обучения, а не архитектуры.
- Для чтения платных статей без регистрации советуют freedium.cfd, отключение JS или закрытие баннера-крестиком.
The Annotated Transformer (2022)
Суть статьи в двух словах
- Transformer — архитектура нейросети, где всё держится на механизме внимания; свёртки и рекуррентные слои не нужны.
- Ключевые компоненты:
- Multi-Head Attention — параллельные «головы» вычисляют взвешенные суммы входов.
- Positional Encoding — добавляет информацию о порядке токенов.
- Feed-Forward — простые линейные слои между блоками внимания.
- Тренировка:
- Оптимизатор Adam с тёплым стартом и дропаутом.
- Label Smoothing (коэффициент 0.1) уменьшает переобучение.
- Результаты:
- На WMT 2014 английский↔немецкий BLEU 28.4 (новый SOTA).
- Обучение на 8 GPU занимает 12 часов до сходимости.
- Вывод: «Внимание — всё, что нужно»; модель легко масштабируется и обучается параллельно.
Комментарии (11)
- @srush напомнил, что статья была переписана командой авторов, и поделился ссылками на свои материалы по CUDA и тензорам.
- Участники хвалят качество объяснения attention и детализацию визуализации.
- @ActorNightly спорит, что термины Key/Query/Value не несут особого смысла, так как матрицы произвольны.
- @gchadwick возражает, подчёркивая разные роли K, Q, V при декодировании.
- @roadside_picnic предлагает смотреть на attention как на kernel smoothing, что делает его интуитивнее.