Middle — Senior
Как се изчислява параметризацията на трансформатора (броят на параметрите в зависимост от d_model и слоевете)?
sobes.tech AI
Отговор от AI
Броят на параметрите на трансформатора (общият брой параметри) зависи от няколко ключови компонента, главно от размера на модела (d_model) и броя на слоевете (L).
Основните параметри включват:
- Теглата на линейните слоеве в механизма за внимание (query, key, value, output) — всеки от тях е с приблизителен размер d_model × d_model.
- Параметрите на слоевете за нормализация и позиционно кодиране (обикновено незначителни в сравнение с останалите).
- Параметрите на feed-forward мрежата вътре във всеки слой — обикновено две линейни слоя с размери d_model × d_ff и d_ff × d_model, където d_ff е размерът на вътрешния слой (обикновено 4 пъти по-голям от d_model).
Приблизителната формула за параметрите на един слой:
Параметри на слоя ≈ 4 × (d_model × d_model) + 2 × (d_model × d_ff) + 2 × (d_ff × d_model)
Като се вземе предвид, че d_ff ≈ 4 × d_model, крайният резултат е приблизително:
Параметри на слоя ≈ 4 × d_model² + 8 × d_model² + 8 × d_model² = 20 × d_model²
Общият брой параметри на трансформатора с L слоя:
Общо ≈ L × 20 × d_model²
Това е опростена оценка, която не взема предвид параметрите на вграждането и нормализацията, но дава разбиране за зависимостта от d_model и броя на слоевете.