Sobes.tech
Middle — Senior

Jak oblicza się parametryzację transformatora (liczba parametrów w zależności od d_model i warstw)?

sobes.tech AI

Odpowiedź od AI

Liczba parametrów transformatora (całkowita liczba parametrów) zależy od kilku kluczowych składników, głównie od rozmiaru modelu (d_model) i liczby warstw (L).

Główne parametry obejmują:

  • Wagi warstw liniowych w mechanizmie uwagi (zapytanie, klucz, wartość, wyjście) — każda z nich ma rozmiar około d_model × d_model.
  • Parametry warstw normalizacji i kodowania pozycyjnego (zazwyczaj nieistotne w porównaniu z innymi).
  • Parametry sieci feed-forward w każdej warstwie — zazwyczaj dwie warstwy liniowe o rozmiarach d_model × d_ff i d_ff × d_model, gdzie d_ff to rozmiar warstwy wewnętrznej (zazwyczaj 4 razy większy od d_model).

Przybliżony wzór na parametry jednej warstwy:

Parametry warstwy ≈ 4 × (d_model × d_model) + 2 × (d_model × d_ff) + 2 × (d_ff × d_model)

Zakładając, że d_ff ≈ 4 × d_model, końcowy wynik to około:

Parametry warstwy ≈ 4 × d_model² + 8 × d_model² + 8 × d_model² = 20 × d_model²

Całkowita liczba parametrów transformatora z L warstwami:

Razem ≈ L × 20 × d_model²

To jest uproszczona estymacja, nie uwzględniająca parametrów osadzeń i normalizacji, ale daje wyobrażenie o zależności od d_model i liczby warstw.