Назад к подготовке

Attention complexity, GQA/MQA и Sliding Window Attention

Объясните scaled dot-product attention, его сложность, и зачем нужны GQA/MQA и Sliding Window Attention.

Ответить самому

Сначала сформулируйте ответ как на собеседовании, затем откройте разбор и оцените себя.

Загрузка

Короткий ответ

Attention считает softmax(QK^T / sqrt(d_k))V и стоит примерно O(n^2 d). GQA/MQA уменьшают KV heads и KV cache, SWA ограничивает окно attention до W токенов.

Полный разбор

Scaled dot-product attention строит Q, K, V, считает scores QK^T / sqrt(d_k), применяет softmax и взвешивает V. Квадратичная часть по длине последовательности возникает из attention matrix n x n.

GQA/MQA оптимизируют inference memory: query heads остаются многочисленными, но key/value heads шарятся между группами, поэтому KV cache уменьшается примерно пропорционально числу KV heads. Sliding Window Attention ограничивает каждому токену видимость последними W токенами, меняя cost с O(n^2) на примерно O(nW).