Sobes.tech
Middle+

Milyen figyelmi típus csökkenti az O(n²) alatti összetettséget?

sobes.tech MI

Válasz az MI-től

A figyelem (attention) számítási összetettségének csökkentése érdekében (amely eredetileg kvadratikus O(n²)), különböző spars vagy lineáris figyelmi típusokat alkalmaznak. Egyik népszerű megközelítés a Linformer.

A Linformer csökkenti a figyelmi mátrixok méretét azzal, hogy kulcsokat és értékeket alacsonyabb dimenziós térbe vetít, így a komplexitás O(n)-re csökken.

Más módszerek:

  • Performer — véletlenszerű vetítéseket és magokat használva közelítőleg számítja ki a figyelmet lineáris komplexitással.
  • Reformer — helyi figyelmet és hash-elést alkalmazva csökkenti a számításokat.
  • Longformer — helyi és globális figyelmet kombinálva csökkenti a komplexitást.

Példa a lineáris figyelem koncepciójára:

# Pszeudokód a lineáris figyelemhez
Q = kérdőmátrix
K = kulcsmátrix
V = értékmátrix

# K és V vetítése alacsonyabb dimenzióba
K_proj = vetítési_mátrix @ K
V_proj = vetítési_mátrix @ V

# Csökkentett dimenziójú figyelem számítása
attention = softmax(Q @ K_proj.T) @ V_proj

Így a számítások és a memória mennyisége csökken, lehetővé téve hosszabb szekvenciák feldolgozását.