Sobes.tech
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 (Вредност) — три су матрице добијене из улазних података помоћу обучивих линеарних трансформација. Свака позиција у секвенци се претвара у три вектора:

    • Питање — упит за који се тражи релевантна информација.
    • Кључ — кључ са којим се упит пореди.
    • Вредност — вредност која се враћа као одговор на упит.
  • Израчун тежина пажње:

    1. Израчунава се скаларни производ између Query и Key за сваки пар позиција.
    2. Резултат се скалира (обично дели са квадратним кореном димензије кључева) ради стабилизације градијената.
    3. Примењује се softmax да би се добила вероватносна расподела тежина.
    4. Тежине се множе са одговарајућим вредностима и резултати се сабирају — то је излаз пажње.
  • Зашто више глава (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 — број глава.