토큰당 FLOP 계산기
입력
| 패스 유형 | 순방향 패스(2N) |
|---|---|
| 파라미터 | 70 |
토큰당 FLOP 계산기
2N 순방향 및 6N 학습 규칙을 사용하여 트랜스포머가 토큰당 수행하는 부동소수점 연산을 모델의 억 단위 파라미터 수로부터 추정합니다.
입력
모델
결과
값을 입력하면 계산 결과가 표시됩니다.
세부 정보
토큰당 FLOP
언어 모델은 토큰 하나에 얼마나 많은 연산을 쓰는가. 그 답은 이 분야의 거의 모든 어림 계산 — 학습 예산, 추론 비용, 하드웨어 활용도 — 의 출발점이 된다. 표준적인 지름길은 놀라울 만큼 단순하다. 밀집 트랜스포머는 토큰 하나를 처리하는 데 파라미터당 약 두 번의 부동소수점 연산을, 학습 시에는 약 여섯 번을 수행한다. 이 계산기는 그 규칙을 모델의 파라미터 수에 적용한다.
2N 규칙
트랜스포머의 연산은 큰 행렬 곱셈이 지배하며, 그 각각에서 모든 가중치가 토큰당 한 번씩 사용된다. 단일 곱셈-누산은 두 번의 부동소수점 연산 — 곱 한 번과 합 한 번 — 으로 세므로, 토큰 하나를 개의 파라미터를 가진 모델로 밀어 넣는 데 순방향 패스에서 파라미터당 대략 두 번의 연산, 즉 2N 규칙이 든다. 이는 Kaplan의 스케일링 법칙 연구에서 비롯된 추정값이며, 모델 연산을 따지는 보편적 통화가 되었다. 파라미터 가중 행렬 곱셈이 아닌 모든 것을 의도적으로 무시하는데, 이는 대형 모델에 대해 좋은 근사다.
순방향과 학습 비용
모델을 학습시키려면 기울기를 계산하기 위한 역방향 패스도 필요하다. 역방향 패스는 활성값과 가중치 양쪽에 대한 기울기를 만들어 내며 각각 대략 순방향 패스의 비용이 들므로, 순방향 작업을 대략 두 배로 늘린다. 총합은 약 세 번의 순방향 패스, 즉 토큰당 파라미터당 여섯 번의 연산(6N 추정값)이 된다.
GF=k⋅N(GFLOPs, N in billions)=k⋅N×109계수 는 순방향 패스에 대해 둘, 학습 단계에 대해 여섯이다. 이 억 단위로 입력되므로 순방향 수치는 곧바로 GFLOP 단위로 나온다.
계산 예시
700억 파라미터 모델의 순방향 패스에 대해 보면 다음과 같다.
GF=2×70=140 GFLOPs=2×70×109=1.4×1011 FLOPs생성되는 토큰 하나마다 약 140 GFLOP가 든다. 모델의 전체 처리량을 곱하면 달성 연산 처리율이 나오고, 이를 가속기의 최대치로 나누면 활용도가 나온다. 같은 모델을 학습시키면 토큰당 GFLOP가 들며, 학습 비용에 데이터셋의 전체 토큰 수를 곱하는 것이 학습 실행의 연산 예산을 가늠하는 통상적인 방법이다.
빠뜨리는 것
이 규칙은 파라미터를 지닌 행렬 곱셈만 센다. 어텐션 메커니즘은 시퀀스 길이에 따라 커지고 파라미터 수에 의존하지 않는 별도의 항을 더한다. 적당한 컨텍스트 길이의 전형적인 모델에서는 작지만, 매우 긴 컨텍스트에서는 상당해질 수 있다. 임베딩과 정규화 계층도 마찬가지로 생략된다. 이러한 이유로 이 수치는 정확한 명령어 수가 아니라 스케일링과 예산 산정을 위한 추정값이다. 달성 연산을 하드웨어 최대치의 비율로 보려면 모델 FLOP 활용도 계산기로 이어 보면 된다.
자주 묻는 질문 (FAQ)
2N 추정값은 어디서 비롯되는가
트랜스포머의 연산은 각 가중치가 토큰당 한 번씩 쓰이는 행렬 곱셈이 지배한다. 곱셈-누산은 두 번의 부동소수점 연산 — 곱 한 번과 합 한 번 — 이므로, 토큰 하나를 N개의 파라미터로 처리하는 데 순방향 패스에서 약 2N번의 연산이 든다. 이는 Kaplan의 스케일링 법칙 연구에서 도입되어 이 분야 전반에서 재사용되는 경험 법칙이다. 큰 행렬 곱셈을 세고 나머지는 모두 무시하는 근사값이며, 대형 모델에서는 잘 들어맞는다.
학습은 왜 세 배 더 비싼가
학습은 순방향 패스를 실행한 뒤 기울기를 계산하기 위한 역방향 패스를 실행한다. 역방향 패스는 활성값과 가중치 양쪽에 대한 기울기를 계산하며 각각 대략 순방향 패스의 비용이 드므로, 역방향 패스는 순방향의 약 두 배이고 총합은 약 세 배 — 토큰당 파라미터당 여섯 번의 연산 — 이 된다. 데이터셋의 전체 토큰 수에 6N을 곱하는 것이 학습 실행의 연산 예산을 추정하는 통상적인 방법이다.
여기에 어텐션이 포함되는가
아니다. 2N과 6N 규칙은 파라미터를 지닌 행렬 곱셈만 센다. 어텐션 메커니즘은 시퀀스 길이에 따라 커지며 파라미터 수와는 무관한 항을 더한다. 적당한 컨텍스트 길이의 전형적인 대형 모델에서는 그 항이 행렬 곱셈에 비해 작으므로 추정값이 근사하게 유지된다. 매우 긴 컨텍스트 길이에서는 어텐션이 상당한 비중을 차지할 수 있어 더 세밀한 모델이 필요하다.
면책조항
이는 지배적인 행렬 곱셈을 세고 어텐션, 정규화, 임베딩 항을 생략한 1차 추정값입니다. 실제 연산 수는 아키텍처와 컨텍스트 길이에 따라 달라집니다. 이 수치는 정확한 하드웨어 계산이 아니라 스케일링 비교와 예산 추정에 활용하시기 바랍니다.