Transformer 표기법

transformernotation

Transformer의 FLOPs·파라미터·메모리를 세려면 먼저 한 글자 기호들의 의미를 알아야 한다. 스케일링 북은 배열의 모양을 한 글자로 표기하고, 도식에서 contracting 차원은 빨강, batching 차원은 파랑으로 표시한다.

크기 (sizes)

기호의미비고
Bbatch size시퀀스 개수
Tquery 시퀀스 길이처리 중인 토큰 수
Skey/value 시퀀스 길이self-attention이면 T = S
L레이어 수
Vvocab 크기어휘 사전 크기

모델 차원 (model dims)

기호의미전형값
Dd_model, residual stream 폭임베딩 차원
Fd_ff, MLP 은닉 폭보통 F ≈ 4D
Hhead 차원 (헤드 하나의 크기)보통 D = N·H

어텐션 헤드 (attention heads)

기호의미비고
Nquery 헤드 수
Kkey/value 헤드 수MHA: K=N, MQA: K=1, GQA: K가 N을 나눔
GKV 헤드당 query 헤드 수 = N/KGQA의 group 크기

MoE

기호의미비고
Eexpert 수DeepSeek v3: E=256
k토큰당 활성 expert 수DeepSeek v3: k=8

주요 배열 모양

배열모양
입력 활성화 A[B, T, D]
MLP 가중치 W_in1, W_in2[D, F]
MLP 출력 가중치 W_out[F, D]
W_Q[D, N, H]
W_K, W_V[D, K, H]
W_O[N, H, D]
Q (reshape 후)[B, T, K, G, H]
K, V[B, S, K, H]
KV 캐시[2, S, L, K, H] (2 = key + value)

자주 쓰는 관계

  • F4DF \approx 4D (MLP는 residual보다 4배 넓다)
  • D=NHD = N \cdot H (전체 헤드 폭 = 모델 폭)
  • MHA면 N=KN = K, GQA면 K<NK < N이고 N=KGN = K \cdot G

이 기호들 위에서 transformer-flops를 세고, arithmetic-intensity를 계산한다.