논문 · arXiv 2412.19437
DeepSeek-V3 기술 보고서 (DeepSeek-V3 Technical Report)
DeepSeek-V3 Technical Report
세 줄 요약
- 🎯 프론티어급 규모의 MoE 모델은 막대한 연산 예산이 필요하고, 보조 밸런싱 손실로 인한 성능 저하를 겪으며, 대규모 노드 간 all-to-all 통신 병목 현상에 직면합니다.
- 🔧 Multi-head Latent Attention (MLA), 보조 손실 없는 밸런싱을 적용한 DeepSeekMoE, 미세 단위 양자화를 결합한 FP8 혼합 정밀도 학습, DualPipe 오버랩 스케줄링, Multi-Token Prediction (MTP)을 적용했습니다.
- 📈 단 2.788M H800 GPU 시간(약 557.6만 달러)만으로 14.8T 토큰에 대해 671B 파라미터(활성 37B)를 학습하여 최고 수준의 오픈 소스 점수를 기록하고 GPT-4o 및 Claude-3.5-Sonnet과 대등한 성능을 달성했습니다.
초록
본 논문에서는 토큰당 37B 파라미터가 활성화되는 총 671B 파라미터 규모의 강력한 Mixture-of-Experts (MoE) 언어 모델인 DeepSeek-V3를 소개합니다. 효율적인 추론과 비용 효율적인 학습을 달성하기 위해 DeepSeek-V3는 DeepSeek-V2에서 철저히 검증된 Multi-head Latent Attention (MLA) 및 DeepSeekMoE 아키텍처를 채택했습니다. 또한, DeepSeek-V3는 부하 분산을 위한 무보조 손실(auxiliary-loss-free) 전략을 개척하고 더 강력한 성능을 위해 다중 토큰 예측(multi-token prediction) 학습 목표를 설정했습니다. 당사는 14.8조 개의 다양하고 고품질인 토큰으로 DeepSeek-V3를 사전 학습한 후, 지도 미세 조정(SFT) 및 강화 학습(RL) 단계를 거쳐 모델의 능력을 완전히 끌어올렸습니다. 종합적인 평가 결과 DeepSeek-V3는 다른 오픈 소스 모델들을 능가하며 주요 폐쇄형 모델들과 필적하는 성능을 보여줍니다. 이러한 뛰어난 성능에도 불구하고 DeepSeek-V3의 전체 학습에는 단 2.788M H800 GPU 시간만이 소요되었습니다. 아울러 학습 과정은 놀라울 정도로 안정적이었습니다. 전체 학습 과정 동안 복구 불가능한 손실 급증(loss spike)을 겪거나 롤백을 수행한 적이 전혀 없습니다. 모델 체크포인트는 https://github.com/deepseek-ai/DeepSeek-V3 에서 확인할 수 있습니다.
영어 원문 초록
We present DeepSeek-V3, a strong Mixture-of-Experts (MoE) language model with 671B total parameters with 37B activated for each token. To achieve efficient inference and cost-effective training, DeepSeek-V3 adopts Multi-head Latent Attention (MLA) and DeepSeekMoE architectures, which were thoroughly validated in DeepSeek-V2. Furthermore, DeepSeek-V3 pioneers an auxiliary-loss-free strategy for load balancing and sets a multi-token prediction training objective for stronger performance. We pre-train DeepSeek-V3 on 14.8 trillion diverse and high-quality tokens, followed by Supervised Fine-Tuning and Reinforcement Learning stages to fully harness its capabilities. Comprehensive evaluations reveal that DeepSeek-V3 outperforms other open-source models and achieves performance comparable to leading closed-source models. Despite its excellent performance, DeepSeek-V3 requires only 2.788M H800 GPU hours for its full training. In addition, its training process is remarkably stable. Throughout the entire training process, we did not experience any irrecoverable loss spikes or perform any rollbacks. The model checkpoints are available at https://github.com/deepseek-ai/DeepSeek-V3.
논문 해설
문제 및 동기
프론티어 대규모 언어 모델(LLM)은 AGI를 향한 격차를 계속해서 좁혀가고 있지만, 오픈 소스 모델을 확장하는 데는 일반적으로 감당하기 힘든 연산 예산과 인프라가 필요합니다. 또한 Mixture-of-Experts (MoE) 아키텍처의 확장은 다음과 같은 구체적인 엔지니어링 과제를 수반합니다:
- 보조 손실로 인한 성능 저하: 기존의 보조 부하 분산 손실은 라우팅 유연성을 크게 제한하고 언어 모델링 능력을 저해합니다.
- 통신 병목 현상: 세분화된 노드 간 라우팅은 심각한 all-to-all 통신 오버헤드를 발생시켜 연산 대 통신 비율이 1:1에 도달하는 경우가 많습니다.
- 수치 정밀도 및 메모리: 표준 16비트 학습은 메모리 집약적인 반면, 단순한 FP8 학습은 활성화 이상치와 제한된 Tensor Core 누적 정밀도로 인해 수치적 불안정성과 언더플로우를 겪습니다.
DeepSeek-V3는 상호 설계된 알고리즘 전략과 하드웨어 수준의 인프라 최적화를 통해 이러한 과제를 해결함으로써 최소한의 학습 비용으로 프론티어급 성능을 달성합니다.
핵심 아이디어
- 아키텍처 효율성: **Multi-head Latent Attention (MLA)**를 통한 저차원 Key-Value 압축과 DeepSeekMoE(공유 전문가 1개 + 라우팅 전문가 256개, 활성화 8개)를 통한 세분화된 라우팅 전문가를 결합합니다.
- 보조 손실 없는 부하 분산(Auxiliary-Loss-Free Load Balancing): 성능을 저하시키는 보조 손실을 동적으로 업데이트되는 전문가 편향(bias) 항으로 대체하여 라우팅 붕괴 없이 뚜렷한 도메인 특화 성능을 확보합니다.
- 다중 토큰 예측(Multi-Token Prediction, MTP): 인과적 체인을 유지하면서 각 위치에서 순차적으로 여러 미래 토큰을 예측하여 학습 신호를 풍부하게 하고 추측 디코딩(speculative decoding, 1.8배 TPS 향상)을 지원합니다.
- DualPipe 병렬성: 순전파 및 역전파 연산을 노드 간 MoE all-to-all 및 파이프라인 병렬화(PP) 통신과 완전히 중첩하는 양방향 파이프라인 스케줄입니다.
- FP8 혼합 정밀도 학습: 모든 텐서에 E4M3 형식을 사용하고 타일 단위() 활성화 및 블록 단위() 가중치 스케일링을 적용하며, 매 스텝마다 CUDA Core 레지스터의 FP32로 누적 연산을 오프로드합니다.
- 추론 증류(Reasoning Distillation): DeepSeek-R1 시리즈의 검증 및 반성 기반 롱 체인 오브 쏘트(Long-CoT) 추론 패턴을 SFT 및 RL 사후 학습 단계에 직접 증류합니다.
방법론
1. Multi-head Latent Attention (MLA)
토큰 은닉 상태 에 대해 MLA는 KV 캐시를 공유 잠재 벡터 로, 쿼리 상태를 로 압축합니다:
추론 중에는 와 만 캐싱하도록 제한되어 메모리 사용량을 획기적으로 낮춥니다.
2. 무보조 손실 밸런싱 기반 DeepSeekMoE
피드포워드 네트워크의 출력은 개의 공유 전문가와 개의 라우팅 전문가를 결합합니다:
전문가 친화도(affinity)는 로 계산됩니다. 게이팅 값 는 를 정규화하여 계산되며, 여기서 라우팅 결정에는 동적 편향 항 가 포함됩니다:
스텝 종료 시 전문가 에 부하가 초과되면 로 갱신되고, 부하가 미달하면 로 갱신됩니다(). 보완 수단으로 매우 작은 시퀀스 단위 밸런스 손실()이 사용됩니다.
3. Multi-Token Prediction (MTP)
예측 깊이 ()에 대해, 표현 는 시프트된 토큰 임베딩과 결합됩니다:
전체 학습 손실에는 가 추가됩니다.
결과
- 사전 학습 예산: 2.664M H800 GPU 시간(2048개 GPU에서 1T 토큰당 3.7일)만으로 14.8T 토큰을 사전 학습했습니다. 전체 학습에는 2.788M GPU 시간(시간당 2달러 기준 약 557.6만 달러)이 소비되었습니다.
- 안정성: 14.8T 토큰 전체에 걸쳐 롤백과 복구 불가능한 손실 급증이 전혀 없었습니다.
- 기반 모델(Base Model) 벤치마크:
- MMLU (87.1 대 84.4), BBH (87.5 대 82.9), HumanEval (65.2 대 54.9), MATH (61.6 대 49.0)에서 LLaMA-3.1 405B Base를 능가합니다.
- C-Eval (90.1 대 89.2) 및 GSM8K (89.3 대 88.3)에서 Qwen2.5 72B Base를 능가합니다.
- 대화 모델(Chat Model) 벤치마크:
- 수학 및 코드: non-o1 최고 점수를 기록: MATH-500 (90.2), AIME 2024 (39.2), LiveCodeBench CoT (40.5).
- 광범위한 지식: MMLU (88.5), MMLU-Pro (75.9), GPQA-Diamond (59.1).
- 개방형 평가: Arena-Hard에서 85% 이상의 승률(85.5%)을 달성하고, 길이 제어된 AlpacaEval 2.0에서 70.0%를 기록했습니다.
한계점 및 향후 과제
- 추론 하드웨어 최소 사양: 효율적인 서빙을 위해서는 대규모 배포 단위(프리필 단위 32개 GPU, 디코딩 단위 320개 GPU)가 필요하므로 소규모 조직에는 인프라 장벽이 존재합니다.
- 노드 간 SM 할당: GPU당 20개의 SM이 행렬 연산이 아닌 노드 간 all-to-all 통신 루틴을 관리하는 전용으로 할당되었습니다.
- 사실성 격차: 중국어 SimpleQA(64.8%)에서는 앞서고 있지만, 영어 사실성 태스크인 SimpleQA(24.9% 대 38.2%)에서는 폐쇄형 프론티어 모델(예: GPT-4o, Claude-3.5-Sonnet)에 비해 뒤처집니다.
핵심 용어
- Multi-head Latent Attention (MLA)
- 추론 중 KV 캐시 소모량을 대폭 최소화하기 위해 Key와 Value를 공유 잠재 벡터로 저차원 압축하는 어텐션 메커니즘.
- DeepSeekMoE
- 전용 공유 전문가와 세분화된 라우팅 전문가를 활용하여 특화 성능과 라우팅 표현력을 향상시키는 Mixture-of-Experts 아키텍처.
- Auxiliary-Loss-Free Load Balancing
- 목적 함수에 큰 정규화 보조 손실을 추가하는 대신 배치 부하에 따라 전문가별 친화도 편향 항을 동적으로 수정하는 라우팅 접근 방식.
- Multi-Token Prediction (MTP)
- 메인 모델의 어휘 임베딩과 출력 헤드를 재사용하면서 인과적 모듈을 사용하여 위치당 여러 미래 토큰을 순차적으로 예측하는 학습 프레임워크.
- DualPipe
- 순전파, 입력에 대한 역전파, 가중치에 대한 역전파 연산을 all-to-all 및 파이프라인 통신과 중첩하는 양방향 파이프라인 병렬화 알고리즘.
- Warp Specialization
- 동시 IB 및 NVLink 데이터 디스패치 및 결합을 위해 GPU 스트리밍 멀티프로세서(SM)를 전용 태스크 워프로 분할하는 실행 모델.
- Group Relative Policy Optimization (GRPO)
- 샘플링된 응답 그룹을 기준으로 이점(advantage)을 계산하여 별도의 비평가(critic) 모델 필요성을 제거한 강화 학습 알고리즘.
자주 묻는 질문
DeepSeek-V3의 총 파라미터 수와 활성 파라미터 수는 얼마인가요?
DeepSeek-V3는 총 671B 파라미터를 보유하고 있으며, 토큰당 37B 파라미터가 활성화됩니다(공유 전문가 1개 + 256개 중 선택된 라우팅 전문가 8개).
DeepSeek-V3를 학습시키는 데 비용이 얼마나 들었나요?
전체 학습에는 2.788M H800 GPU 시간(사전 학습 2.664M, 컨텍스트 확장 119K, 사후 학습 5K)이 소요되었으며, GPU 시간당 약 2달러로 추산할 때 약 557.6만 달러의 비용이 들었습니다.
무보조 손실 부하 분산 방식이 표준 보조 손실보다 우수한 이유는 무엇인가요?
표준 시퀀스 수준 보조 손실은 개별 시퀀스에 대해 전문가 사용을 균등하게 강제하므로 도메인 전문화를 저해합니다. DeepSeek의 동적 편향 업데이트는 주 언어 모델링 그래디언트 목적 함수를 오염시키지 않으면서 배치 수준의 부하 균형을 보장합니다.
FP8 혼합 정밀도 학습에서 손실 발산 없이 성공적으로 학습할 수 있었던 비결은 무엇인가요?
타일 단위(1x128) 활성화 양자화, 블록 단위(128x128) 가중치 양자화, 순수 E4M3 표현을 사용하고 중간 Tensor Core 합산 결과를 128개 요소마다 CUDA Core의 FP32 레지스터로 복사하여 저정밀도 누적으로 인한 언더플로우를 방지했기 때문입니다.
이 페이지의 해설은 AI가 논문을 바탕으로 작성했으며 오류가 있을 수 있습니다. 자세한 내용은 원문을 확인하세요.