AI VIDEO BRIEFING
MoE 라우팅 완전 해설: 믹스트랄·딥시크가 쓰는 전문가 혼합 구조와 로드 밸런싱, 용량 계수
혼합 전문가(MoE)는 토큰마다 일부 전문가만 깨워 밀집 모델급 품질을 더 적은 연산으로 낸다. 라우터의 상위 k개 선택, 로드 밸런싱 손실, 전문가 용량, GPU 간 통신 병목까지 실제 작동 원리를 정리했다.

핵심 메시지
쉽게 이해하기
일반적인 트랜스포머의 피드포워드 블록은 토큰 하나가 지나갈 때마다 모든 파라미터가 계산에 참여한다. 혼합 전문가(MoE)는 이 구조를 바꿔, 여덟 개의 전문가 중 두 개에게만 토큰을 보내고 나머지는 잠들어 있게 한다. 그래서 총 파라미터는 470억이어도 토큰당 실제 계산량은 130억 파라미터 수준에 머문다. 밀집 모델에 가까운 품질을 희소한 연산량으로 얻는다는 것이 이 구조의 핵심 주장이다.
토큰은 평소처럼 어텐션을 통과한 뒤 라우터를 만난다. 라우터는 토큰 임베딩을 보고 전체 전문가에 대한 확률 분포를 만드는 작은 학습 신경망이다. 여기서 점수가 가장 높은 상위 k개(대개 2개)를 골라 각 출력을 가중합한다. 소프트맥스로 만들어진 가중치를 쓰기 때문에 학습 중에는 승자뿐 아니라 3등 전문가에게도 "조금만 더 잘하면 됐다"는 신호가 흘러가고, 이 점이 승자독식형 라우팅보다 학습을 안정적으로 만든다.
문제는 라우터의 분포가 점점 뾰족해질 때 생긴다. 인기 있는 전문가에 확률과 토큰이 계속 쌓이면 그 전문가를 올려둔 GPU가 병목이 되고, 전체 처리량은 평균이 아니라 가장 느린 경로를 따라간다. 각 전문가는 배치당 처리할 수 있는 토큰 수, 즉 용량이 정해져 있어 넘치면 세 가지 선택지밖에 없다. 초과분을 버리거나(빠르지만 품질 손실), 예비 전문가로 돌리거나(특화가 흐려지고 조정 비용 증가), 전부 순차 처리해 지연을 감수하는 것이다.
그래서 등장한 것이 보조 로드 밸런싱 손실이다. 전문가별로 실제 받은 토큰 비율과 라우터가 배분한 확률 총량을 곱해 합산하고, 특정 전문가가 두 값 모두에서 독주하면 벌점이 급격히 커지도록 만든다. 학습 초기에는 라우터 엔트로피를 높여 탐색을 유도하고 후반에는 이를 서서히 줄여 특화를 허용하는 방식도 함께 쓰인다. 여기에 모든 토큰이 항상 통과하는 공유 전문가를 두어 기본적인 언어 이해를 담당시키면, 라우팅이 흔들려도 모델이 무너지지 않는다. 딥시크 V2가 공유 전문가 두 개에 다수의 라우팅 전문가를 두고 토큰마다 상위 6개를 고르는 방식이 대표적이다.
여러 GPU에 전문가를 나눠 올리면 토큰이 네트워크를 건너다니는 all-to-all 통신이 발생한다. 라우팅이 한쪽으로 쏠리면 특정 GPU만 과부하가 걸리고 나머지는 놀면서 배치 전체가 멈춘다. 전문가 용량은 대략 배치 크기 × 상위 k × 용량 계수 ÷ 전문가 수로 계산하는데, 배치 2048에 전문가 8개, 상위 2개, 용량 계수 1.25라면 전문가당 약 640개 토큰 버퍼가 된다. 용량 계수는 보통 1.25~1.5가 적정선으로, 너무 낮으면 토큰이 버려지고 너무 높으면 메모리를 낭비해 희소 구조의 의미가 사라진다.
주요 인사이트
- MoE의 라우팅은 확률적 가중합이라 학습 신호가 승자에게만 몰리지 않는다. 이 설계 덕분에 전문가들이 서서히 역할을 나눠 갖는다.
- 전문가 용량 초과에는 공짜 해법이 없다. 품질, 특화, 지연 중 무엇을 포기할지 고르는 문제로 봐야 한다.
- 운영 지표로는 전문가별 토큰 분포, 오버플로 발생률, 라우팅 분포의 엔트로피, GPU 간 디스패치 시간 비중, 로드 밸런싱 손실의 감소 추이 다섯 가지를 함께 봐야 한다.
- 모델이 크고 데이터가 다양하며 인프라가 충분하고 처리량이 중요할 때 MoE가 빛난다. 반대로 모델이 작고 지연이 중요하거나 대역폭이 좁다면 단순한 밀집 구조가 낫다.
- 구조 자체보다 균형 잡힌 라우팅과 디스패치 효율이 실제 체감 속도를 좌우한다.
자주 묻는 질문
믹스트랄 8x7B는 파라미터가 470억인데 왜 훨씬 작은 모델처럼 빠른가요?
토큰마다 여덟 전문가 중 상위 두 개만 활성화되기 때문입니다. 실제 계산에 쓰이는 파라미터는 130억 안팎이라 추론 속도는 작은 밀집 모델에 가깝고, 총 용량이 크기 때문에 품질은 더 큰 모델 쪽으로 기웁니다. 다만 배치 크기와 시퀀스 길이, 하드웨어에 따라 체감 속도는 달라집니다.
전문가 용량이 넘치면 어떤 일이 생기나요?
초과된 토큰을 버리거나, 다른 전문가로 돌리거나, 전부 순차적으로 처리하는 세 가지 방법이 있습니다. 버리면 가장 빠르지만 정보가 사라져 품질이 떨어지고, 돌리면 토큰은 지키지만 전문가의 특화가 약해지며, 전부 처리하면 품질은 지키되 지연이 늘어납니다.
로드 밸런싱 손실은 정확히 무엇을 벌하나요?
각 전문가가 실제로 받은 토큰의 비율과 라우터가 그 전문가에게 배정한 확률 총량을 곱해 더한 값을 벌점으로 씁니다. 한 전문가가 두 지표 모두에서 독주하면 벌점이 크게 늘어나 라우터가 일감을 고르게 퍼뜨리도록 학습됩니다.
공유 전문가는 왜 두나요?
모든 토큰에 공통으로 필요한 기본 처리를 항상 켜져 있는 전문가가 담당하게 하려는 것입니다. 라우팅이 다소 흔들려도 기본적인 언어 이해가 유지되므로 학습이 안정되고, 나머지 전문가는 특화된 처리에 집중할 수 있습니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗