한줄 요약: 8개 전문가 중 2개만 선택하여 활성화하는 Sparse MoE 구조로, 12.9B 활성 파라미터만으로 LLaMA-2-70B와 동등한 성능을 달성하며 추론 비용을 대폭 절감했다.
| 항목 | 내용 |
|---|---|
| 저자 | Albert Q. Jiang, Alexandre Sablayrolles, Antoine Roux, Arthur Mensch, Blanche Savary, Chris Bamford, Devendra Singh Chaplot, Diego de Las Casas, et al. |
| 소속 | Mistral AI |
| 발표 | arXiv 2024.01 (ICLR 2024 제출) |
| 링크 | arxiv.org/abs/2401.04088 |
| 키워드 | Mixture of Experts, Sparse MoE, Routing, Efficient LLM |
Dense 모델의 스케일링 문제:
Dense 모델: 모든 입력에 대해 모든 파라미터 사용
LLaMA-2-70B: 매 토큰마다 70B 파라미터 전체 연산
→ 성능은 높지만 추론 비용도 높음
관찰: 모든 파라미터가 모든 입력에 필요하지 않을 수 있음
수학 문제 → 수학 관련 파라미터만 활성
코딩 문제 → 코드 관련 파라미터만 활성
Mixture of Experts (MoE):
여러 "전문가"를 두고, 입력에 따라 일부만 활성화
→ 총 파라미터는 크지만, 활성 파라미터는 적음
→ "모델 용량은 크고, 연산 비용은 적은" 이상적 구조
Transformer의 FFN을 MoE로 교체:
기존 (Dense):
FFN(x) = W₂ · ReLU(W₁x) ← 하나의 FFN
Mixtral (Sparse MoE):
y = Σᵢ G(x)ᵢ · FFNᵢ(x) ← 8개 FFN 중 2개만 활성
G(x) = TopK(softmax(Wg · x), k=2)
→ 라우터(Wg)가 입력 x를 보고 8개 전문가 중 상위 2개 선택
→ 선택된 2개의 출력을 가중 합산
어텐션 레이어는 공유 (MoE 미적용)
각 토큰마다 독립적으로 라우팅:
토큰 "The" → Expert 1, Expert 5 활성
토큰 "cat" → Expert 3, Expert 7 활성
토큰 "sat" → Expert 2, Expert 5 활성
라우터 = 단순 Linear Layer + Softmax + Top-2
→ 학습 가능한 파라미터 (엔드투엔드 학습)
→ 추가 loss 없이 표준 언어 모델링으로 학습
Mixtral 8x7B:
총 파라미터: 46.7B (8개 전문가 × FFN 크기 + 공유 어텐션)
활성 파라미터: 12.9B (2개 전문가 + 공유 어텐션)
→ 토큰당 연산량 = 12.9B dense 모델 수준
비교:
LLaMA-2-70B: 70B 활성 파라미터
Mixtral 8x7B: 12.9B 활성 파라미터 → 5.4배 적은 연산
| 모델 | 활성 파라미터 | MMLU | HellaSwag | ARC-C | GSM8K |
|---|---|---|---|---|---|
| LLaMA-2-70B | 70B | 69.8% | 87.3% | 67.3% | 56.8% |
| Mistral-7B | 7B | 60.1% | 81.3% | 55.5% | 35.4% |
| Mixtral 8x7B | 12.9B | 70.6% | 86.7% | 66.0% | 58.4% |
| GPT-3.5 | — | 70.0% | — | — | 57.1% |
→ 12.9B 활성으로 70B Dense와 동등, GPT-3.5와도 경쟁
| 모델 | 활성 파라미터 | 처리량 (상대적) | 메모리 |
|---|---|---|---|
| LLaMA-2-70B | 70B | 1.0x | 140GB |
| Mixtral 8x7B | 12.9B | ~5x | ~94GB |
→ 같은 성능에서 5배 빠른 추론 (활성 파라미터 기준)
→ 단, 전체 파라미터를 메모리에 올려야 하므로 메모리 절감은 1.5배 수준
각 전문가가 어떤 토큰에 활성화되는지 분석:
관찰: 도메인별 전문화보다는 구문적 패턴 전문화
Expert 1: 주로 기능어, 접속사
Expert 3: 기술 용어, 전문 단어
Expert 5: 코드 토큰
...
동일 주제 내에서도 토큰마다 다른 전문가 활성화
→ "수학 전문가", "코드 전문가"처럼 깔끔한 분업이 아님
→ 더 세밀한 토큰 수준의 전문화
| 모델 | MT-Bench | AlpacaEval |
|---|---|---|
| GPT-3.5-Turbo | 7.94 | 89.4% |
| LLaMA-2-70B-Chat | 6.86 | 92.7% |
| Mixtral-Instruct | 8.30 | 94.8% |
→ Instruction-tuned 버전에서도 GPT-3.5 초과
Mixtral의 핵심 가치는 "성능-비용 파레토 곡선의 이동"이다. 기존에 70B Dense가 점유하던 성능 영역을 12.9B 활성 파라미터로 달성했다. 이는 서빙 비용이 곧 비즈니스 마진을 결정하는 LLM 서비스에서 혁명적이다.
MoE의 가장 직관적이지 않은 관찰: 전문가가 "수학 전문가", "언어 전문가"로 깔끔하게 나뉘지 않는다는 것이다. 대신 토큰 수준에서 복잡한 패턴으로 전문화된다. 이는 "뇌의 모듈화"보다는 "뇌의 분산 표현"에 더 가까운 모습이다.
실전 관점에서 MoE의 가장 큰 도전은 메모리다. 추론 속도는 12.9B 수준이지만 메모리는 46.7B을 올려야 한다. 이 격차를 양자화나 오프로딩으로 해결하는 것이 MoE 서빙의 핵심 과제다.
관련 논문: Switch Transformer, GShard, Mistral-7B, DeepSeek-V2, DBRX