Middle — Senior
Detaljno objasnite multi-head pažnju: šta su Q/K/V, kako se računaju težine pažnje, zašto postoji više glava.
sobes.tech АИ
Одговор од АИ
Мултихед пажња — кључни је механизам у трансформерима који омогућава моделу да се истовремено фокусира на различите делове улазне секвенце.
-
Q (Питање), K (Кључ), V (Вредност) — три су матрице добијене из улазних података помоћу обучивих линеарних трансформација. Свака позиција у секвенци се претвара у три вектора:
- Питање — упит за који се тражи релевантна информација.
- Кључ — кључ са којим се упит пореди.
- Вредност — вредност која се враћа као одговор на упит.
-
Израчун тежина пажње:
- Израчунава се скаларни производ између Query и Key за сваки пар позиција.
- Резултат се скалира (обично дели са квадратним кореном димензије кључева) ради стабилизације градијената.
- Примењује се softmax да би се добила вероватносна расподела тежина.
- Тежине се множе са одговарајућим вредностима и резултати се сабирају — то је излаз пажње.
-
Зашто више глава (multi-head)? Више глава омогућава моделу да гледа на информације из различитих "углова гледања", односно свака глава учи да истиче различите зависности и узорке у подацима. Ово повећава изразитост и квалитет модела.
Пример поједностављено:
# За сваку главу:
Q_i = X * W_Q_i
K_i = X * W_K_i
V_i = X * W_V_i
тежине пажње = softmax((Q_i @ K_i.T) / sqrt(d_k))
излаз_i = тежине пажње @ V_i
# Комбиновати излазе свих глава
излаз = concat(излаз_1, ..., излаз_h) * W_O
Где W_Q_i, W_K_i, W_V_i, W_O — су обучиве матрице, d_k — димензија кључева, а h — број глава.