Middle — Senior
Jaká je složitost v paměti a čase u self-attention?
sobes.tech AI
Odpověď od AI
Sebepozornost v transformerech vypočítává vztahy mezi všemi prvky vstupní sekvence, což ovlivňuje složitost algoritmu.
Předpokládejme, že délka sekvence je N a rozměr rysů je d.
-
Časová složitost: O(N² * d)
To je způsobeno tím, že pro každý z N prvků je třeba vypočítat pozornost ke všem N prvkům, a poté aplikovat operace s rozměrem d.
-
Prostorová složitost: O(N²)
Je třeba uložit matici vah pozornosti velikosti N×N.
Kvadratická závislost na délce sekvence způsobuje, že sebe-pozornost je úzkým místem při práci s velmi dlouhými vstupy, což podněcuje vývoj optimalizací a alternativních architektur (například sparse attention).