도구스개발

MoE(전문가 혼합) 파라미터 계산기

전문가 수·top-k·전문가당 파라미터를 넣으면 총 파라미터와 토큰마다 실제로 쓰는 활성 파라미터, 희소율을 계산합니다.

전문가 하나가 갖는 FFN 파라미터 수(전 층 합계)

어텐션·임베딩·라우터 등 모든 토큰이 항상 거치는 부분

희소율 (활성 ÷ 총 파라미터)

63.7%

29.08억개 중 토큰마다 18.52억개만 실제로 쓰입니다

총 파라미터 vs 활성 파라미터

전문가 파라미터 합 (E × 전문가당)14.08억개
공유 파라미터15억개
총 파라미터 (저장 크기)29.08억개
활성 파라미터 (연산 크기)18.52억개
겉보기 크기가 활성 대비 몇 배인가1.57배
총 파라미터는 공유 파라미터 + E × 전문가당 파라미터로, GPU 메모리에 얼마나 올려야 하는지를 정합니다. 활성 파라미터는 공유 파라미터 + top-k × 전문가당 파라미터로, 토큰 하나를 처리하는 데 실제로 쓰이는 크기입니다. top-k가 E보다 작을수록 두 값의 차이가 벌어집니다.

토큰 하나를 처리하는 연산량

추론 (활성 파라미터 × 2)3.70 × 10^9 FLOP
학습 (활성 파라미터 × 6)1.11 × 10^10 FLOP
dev/transformer-flops와 같은 어림입니다 — 가중치 하나는 순전파에 2 FLOP, 역전파까지 합치면 6 FLOP이 듭니다. 다만 여기서는 활성 파라미터만 셉니다. 라우팅되지 않은 나머지 전문가는 그 토큰에 대해 계산 자체가 일어나지 않기 때문입니다.
라우팅이 완전히 균등하게 분산된다고 본 이론치입니다. 실제로는 특정 전문가에 토큰이 쏠리는 부하 불균형이 있어, 이를 막는 보조 손실이나 용량 제한 때문에 실제 처리량은 이 값과 달라질 수 있습니다.

사용 방법

  1. 1전문가(expert) 총 개수 E와 토큰마다 실제로 통과시키는 개수 top-k를 입력합니다.
  2. 2전문가 1개당 파라미터 수와, 모든 토큰이 항상 거치는 공유 파라미터 수를 입력합니다.
  3. 3총 파라미터(저장 크기)와 활성 파라미터(연산량을 정하는 크기), 희소율을 확인합니다.

자주 묻는 질문

총 파라미터는 GPU 메모리에 얼마나 올려야 하는지를 정하는 크기이고, 활성 파라미터는 토큰 하나를 처리할 때 실제로 곱셈·덧셈에 쓰이는 크기입니다. 총 파라미터 = 공유 파라미터 + 전문가 수(E) × 전문가당 파라미터, 활성 파라미터 = 공유 파라미터 + top-k × 전문가당 파라미터로 계산됩니다.

활성 파라미터를 총 파라미터로 나눈 값입니다. 예를 들어 8개 전문가 중 2개만 쓰면(top-2) 희소율은 대략 25% 근처가 되어, 저장된 파라미터의 4분의 1 정도만 토큰 하나에 실제로 쓰인다는 뜻입니다(공유 파라미터가 있으면 정확히 1/4는 아닙니다).

dev/transformer-flops와 같은 방식으로, 활성 파라미터 1개는 추론(순전파)에 2 FLOP, 학습(순전파+역전파)에 6 FLOP이 든다고 어림합니다. MoE는 활성 파라미터만 이 계산에 들어가고, 라우팅되지 않은 나머지 전문가는 그 토큰에 대해 계산되지 않습니다.

이론상 어림입니다. 실제 서비스에서는 특정 전문가에 토큰이 쏠리는 부하 불균형이 생길 수 있어, 이를 막으려는 보조 손실(auxiliary loss)이나 용량 제한(capacity factor) 때문에 실제 처리량이 이 계산과 달라질 수 있습니다. 라우터 자체의 연산량도 전문가에 비하면 작지만 이 계산기에는 넣지 않았습니다.

모든 전문가를 항상 다 쓰는 셈이라 밀집(dense) 모델과 같아지고, 희소율은 1(100%)이 됩니다. MoE의 이점(저장은 크게, 연산은 작게)이 사라지는 경계 조건입니다.

알아두면 좋은 점

  • 라우팅이 완전히 균등하게 분산된다고 가정한 이론치입니다. 실제 처리량은 라우팅·배치 구현에 따라 달라질 수 있습니다.
  • 라우터 자체의 파라미터·연산량은 전문가에 비해 작다고 보고 계산에 넣지 않았습니다.
  • 입력값은 서버로 전송되지 않습니다.

함께 보면 좋은 도구

마지막 검증: 2026년 9월 8일 · 결과는 참고용 추정치입니다.