Middle — Senior
Vysvetlite vzorec škálovanej pozornosti skalárneho súčinu. Prečo deliť s sqrt(d_k)?
sobes.tech AI
Odpoveď od AI
Škálovaná bodovo-krížová pozornosť je mechanizmus pozornosti, ktorý vypočíta váhové koeficienty pre prvky sekvencie na základe skalárnych súčinov požiadaviek (Q) a kľúčov (K). Vzorec vyzerá takto:
[ \text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right) V ]
Tu:
- Q — matica požiadaviek,
- K — matica kľúčov,
- V — matica hodnôt,
- (d_k) — rozmer vektorov kľúčov.
Delenie (\sqrt{d_k}) je potrebné na škálovanie výsledku skalárneho súčinu. Bez tohto kroku môžu hodnoty v vysokých rozmeroch byť príliš veľké, čo vedie k veľmi veľkým argumentom funkcie softmax. To spôsobuje problém "miznúcich gradientov" — softmax sa stáva veľmi "prísny", takmer jeden prvok dostane váhu 1, ostatné takmer 0, čo zhoršuje učenie. Škálovanie stabilizuje gradienty a zlepšuje konvergenciu modelu.