Sobes.tech
Middle — Senior

Jaka jest złożoność pamięciowa i czasowa self-attention?

sobes.tech AI

Odpowiedź od AI

Samoczynna uwaga w transformatorach oblicza powiązania między wszystkimi elementami wejściowej sekwencji, co wpływa na złożoność algorytmu.

Załóżmy, że długość sekwencji to N, a wymiar cech to d.

  • Złożoność czasowa: O(N² * d)

    Wynika to z faktu, że dla każdego z N elementów trzeba obliczyć uwagę do każdego z N elementów, a następnie zastosować operacje o wymiarze d.

  • Złożoność przestrzenna: O(N²)

    Należy przechowywać macierz wag uwagi o rozmiarze N×N.

Ze względu na kwadratową zależność od długości sekwencji, samoczynna uwaga staje się wąskim gardłem przy pracy z bardzo długimi wejściami, co stymuluje rozwój optymalizacji i alternatywnych architektur (np. sparse attention).