Ответ вслух Middle Attention и трансформеры спрашивают часто обновлено

Объясните attention

Вопрос

Объясните, как работает self-attention, зачем нужны Q, K, V, масштабирование, несколько голов и маски.

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Каждый токен через три обученные матрицы превращается в запрос q (что я ищу), ключ k (что во мне можно найти) и значение v (что я передам).

Что должно прозвучать в ответе

  • Каждый токен проецируется в запрос, ключ и значение

  • Веса внимания: softmax от QKᵀ / √d_k по ключам; выход это взвешенная сумма V

  • Масштаб √d_k против насыщения softmax

  • Multi-head: разные подпространства и типы связей

  • Маски: причинная в декодере, паддинг; позиционное кодирование, так как attention не видит порядок

  • Сложность O(n²) и KV-кеш на генерации

Что могут спросить следом

  • Почему attention без позиций инвариантен к перестановке?
  • Как FlashAttention ускоряет вычисления, не меняя результат?

Разбор

Каждый токен через три обученные матрицы превращается в запрос q (что я ищу), ключ k (что во мне можно найти) и значение v (что я передам). Для токена считаю скалярные произведения его запроса со всеми ключами, делю на √d_k, иначе при большой размерности логиты слишком большие и softmax насыщается, и применяю softmax: получаю веса внимания, сумма 1. Выход токена это взвешенная сумма значений, то есть он собирает информацию от релевантных токенов. Матрично это softmax(QKᵀ/√d_k)V. Голов несколько: каждая со своими проекциями меньшей размерности, разные головы ловят разные связи, затем выходы склеиваются и проецируются. В декодере причинная маска запрещает смотреть в будущее, паддинг маскируется отдельно. Attention не знает порядок, поэтому добавляем позиционное кодирование, сейчас чаще RoPE. Сложность квадратичная по длине, а на генерации ключи и значения прошлых токенов хранятся в KV-кеше.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме