papers · 2026-03-22
DeepSeek-LLM 리뷰
1. Introduction
1.1 연구 배경
- LLM은 자가 지도형 학습(self-supervised learning)을 통해 다양한 작업(소설 창작, 코드 완성, 텍스트 요약 등)을 수행할 수 있는 능력을 획득함.
- 지도형 미세 조정(SFT) 및 보상 모델링(Reward Modeling)과 같은 발전이 LLM의 사용자 지향적 성능과 대화 능력을 크게 향상시킴.
1.2 주요 트렌드와 한계
- 폐쇄형 제품 주도: ChatGPT, Claude, Bard와 같은 상업적 제품들이 LLM의 발전을 이끌어왔으나, 이는 막대한 컴퓨팅 자원과 주석 비용을 필요로 함.
- 오픈소스 커뮤니티의 대응: 오픈소스 프로젝트들은 LLaMA 시리즈를 필두로 다양한 고정 크기의 모델(7B, 13B, 34B, 70B)을 개발하며 성능과 아키텍처의 기준(de facto benchmark)을 설정함.
- 스케일링 법칙 연구 부족: 오픈소스 모델들이 스케일링 법칙에 대한 연구를 충분히 진행하지 못해, 모델과 데이터 확장의 최적 전략에 대한 명확한 합의가 부재함.
1.3 연구 목적
스케일링 법칙 심층 연구 본 논문은 LLM의 스케일링 동작을 심층적으로 연구하여 두 가지 주요 모델 구성(7B 및 67B)에 이를 적용함.
- 배치 크기와 학습률의 변화에 따른 스케일링 패턴을 분석.
- 데이터 및 모델 확장에 따른 최적 할당 전략을 제시.
데이터셋의 영향 연구 과정에서 데이터셋의 종류에 따라 스케일링 법칙이 상당히 달라짐을 발견.
- 데이터셋 선택이 모델 성능에 큰 영향을 미칠 수 있으므로, 스케일링 법칙의 일반화 시 주의가 필요.
1.4 연구 방법
모델 및 데이터 설계
- 2조 개의 중국어 및 영어 토큰으로 구성된 데이터셋 구축.
- LLaMA의 아키텍처를 기반으로 하되, 코사인 학습률 스케줄러 대신 다단계 학습률 스케줄러를 채택하여 지속적 훈련 지원.
미세 조정 및 최적화
- 지도형 미세 조정(SFT)을 다양한 소스로부터 100만 개 이상의 사례에 적용.
- 대화 성능 향상을 위해 직접 선호 최적화(DPO)를 활용.
1.5 주요 결과
벤치마크 성능
- DeepSeek LLM 67B 모델은 여러 벤치마크에서 LLaMA-2 70B를 능가, 특히 코드, 수학, 추론 분야에서 두각을 나타냄.
- DeepSeek 67B Chat 모델은 중국어 및 영어 개방형 평가에서 GPT-3.5를 능가하는 성능을 보임.
안전성 평가
- DeepSeek 67B Chat 모델은 실질적인 환경에서 무해한 응답을 제공할 수 있음을 입증함.
1.6 논문 구성
- Chapter 2: DeepSeek LLM의 사전 훈련 단계(데이터, 모델 아키텍처, 인프라 등) 설명.
- Chapter 3: 스케일링 법칙 및 그 적용 사례를 상세히 다룸.
- Chapter 4: SFT 및 DPO를 포함한 미세 조정 방법론 논의.
- Chapter 5: 기본 및 채팅 모델에 대한 평가 결과, 개방형 및 안전성 평가 결과 설명.
- Chapter 6: 연구의 한계점과 미래 연구 방향 제시.
2. Pre-Trainin
2.1 Data
- 데이터셋의 다양성과 품질 향상을 위해 중복 제거(deduplication), 필터링(filtering), 재조합(remixing) 세 단계를 적용함.
- Common Crawl 데이터의 중복 제거는 전체 덤프를 대상으로 할 때 단일 덤프 대상보다 4배 많은 중복 문서를 제거하는 효과가 있음.
- 필터링 단계에서는 문서 품질을 언어적 및 의미적 평가 기준을 통해 향상시킴.
- 재조합 단계에서는 특정 도메인의 데이터 출현 빈도를 조정하여 데이터셋의 균형을 맞춤.
- Byte-level BPE 토크나이저를 사용하여 새로운 줄바꿈, 구두점, CJK 기호 등이 병합되지 않도록 사전 토크나이제이션을 수행함.
- 최종 어휘 크기는 102,400으로 설정.
2.2 Architecture
- DeepSeek LLM은 LLaMA 구조를 기반으로 하며, Pre-Norm 구조와 RMSNorm, SwiGLU, RoPE를 사용
- 추론 비용을 줄이기 위해 67B 모델에서는 Multi-Head Attention(MHA) 대신 Grouped-Query Attention(GQA)을 채택.
- 일반적으로 FFN의 중간 폭을 확장하는 것과 달리, 네트워크 깊이를 확장하여 성능을 최적화함.
2.3 Hyperparameters
AdamW 최적화기를 사용하며 주요 하이퍼파라미터는 다음과 같음:
- 초기 표준편차: 0.006
- β₁ = 0.9, β₂ = 0.95, weight decay = 0.1
일반적인 코사인 스케줄러 대신 다단계 스케줄러를 채택함.
- 2000 스텝 동안 학습률을 최대값까지 증가시키고, 이후 학습 토큰의 80%를 처리했을 때 31.6%로 감소, 90%를 처리했을 때 10%로 감소함.
다단계 스케줄러는 결과적으로 성능면에서 코사인 스케줄러와 큰 차이는 없었지만, 지속적 훈련(continual training)에서 더 높은 재사용성을 제공함.
2.4 Infrastructures
DeepseekDeepseek에서는 실험을 돌리기 위해서 대규모 병렬처리 인프라를 구축했는데, 이것이 후일 여러 고성능 모델들을 개발할 수 있었던 기반으로 보임.
2.4.1 병렬 처리 방식 (Parallelism)
데이터 병렬 처리 (Data Parallelism)
- 동일한 모델을 여러 GPU에 복제하여 각 GPU가 다른 데이터 배치를 처리.
- forward/backward 연산 후 각 GPU에서 계산한 그래디언트를 집계(reduce)하여 모든 GPU에 동일한 가중치를 업데이트.
텐서 병렬 처리 (Tensor Parallelism)
- 한 개의 레이어를 여러 GPU에 분할하여 연산을 나눠 수행.
- Multi-Head Attention과 같은 연산에서 특정 행렬 조각을 각 GPU가 동시에 처리함으로써 메모리 부담을 분산.
시퀀스 병렬 처리 (Sequence Parallelism)
- 입력 시퀀스를 여러 조각으로 나누어 병렬로 처리하여, 특히 긴 문장의 입력 처리 속도를 높임.
파이프라인 병렬 처리 (Pipeline Parallelism)
- 모델의 레이어를 여러 GPU에 걸쳐 분할하고, 각 GPU가 특정 레이어를 담당하여 순차적으로 연산을 수행함.
- GPU 1이 첫 번째 레이어를 처리할 때 GPU 2는 두 번째 레이어를 준비하는 방식으로, 각기 다른 마이크로 배치에서 연산이 이어짐.
1F1B 파이프라인 병렬 처리 (1 Forward 1 Backward)
- 파이프라인 병렬 처리에서 발생하는 유휴 시간을 줄이기 위해, forward와 backward 연산을 교차하여 동시에 수행.
- 이 방식은 GPU의 비효율적인 대기 시간을 줄여 전체 훈련 속도를 향상시킴.
2.4.2 최적화 기법
Flash Attention
- Attention 연산에서 메모리 사용량을 최적화하고, 연산 속도를 향상시키기 위해 적용됨.
- 메모리 접근 비용을 줄여 GPU 활용률을 높임.
ZeRO-1 (Zero Redundancy Optimizer)
- Optimizer State를 여러 GPU에 걸쳐 분산하여 메모리 사용을 줄이는 기법.
- 모델의 가중치와 gradient를 효율적으로 분배하고 통신 오버헤드를 최소화.
계산 및 통신 중첩 (Computation-Communication Overlap)
- 마지막 마이크로 배치의 역전파(backward pass)와 reduce-scatter 연산을 중첩하여 동기화 대기 시간을 줄임.
- 시퀀스 병렬 처리에서 GEMM(General Matrix Multiplication) 연산과 all-gather/reduce-scatter 연산을 동시에 수행함으로써 성능 최적화를 달성.
GPU 메모리 최적화
- bf16(bfloat16) 정밀도로 훈련을 수행하여 메모리 사용량을 줄이면서, 그래디언트는 fp32(float32)로 누적하여 훈련 안정성을 유지함.
- Cross-Entropy 연산에서 logit을 bf16에서 fp32로 변환한 후, 계산된 그래디언트를 다시 bf16으로 변환하여 메모리 소모를 효율화.
2.4.3 체크포인트 및 훈련 재개
- 모델 가중치와 최적화 상태를 5분마다 비동기적으로 저장하여, 하드웨어 또는 네트워크 장애가 발생할 경우에도 최대 5분치 훈련 데이터만 손실됨.
- 임시 체크포인트는 저장 공간을 효율적으로 관리하기 위해 정기적으로 삭제됨.
- 컴퓨팅 클러스터의 부하에 따라 3D 병렬 구성에서 훈련을 재개할 수 있음.
2.4.4 평가 (Evaluation)
- vLLM을 사용하여 생성 작업을 평가하며, 토큰 패딩을 줄이기 위해 **연속 배치 방식(continuous batching)**을 사용함.
- 비생성 작업에서도 배치 크기 조정을 자동화하여 수동 조정 없이 효율적인 평가를 진행함.
2.5 리뷰 및 질문 포인트
Data: 중복 제거, 필터링, 재조합을 통한 데이터 품질 관리 부분에서 기존과 무슨 차별점이 있는지
Architecture: 사실상 아키텍처 상의 변화는 없어 보이며, 유일한 차별점인 FFN의 깊이를 확장했다는 것인데 효과는 미미할 것으로 보임.
Hyperparameter: 스케줄러를 지속적 훈련에 맞춰 최적화한 점은 실무적으로 유용할 수 있음.
Infrastructure:
- 가장 핵심적인 부분으로 보임
- 여러 병렬 처리 기법, Flash Attention, ZeRO-1, bf16 등을 적극적으로 활용하여 하드웨어 자원을 효율적으로 관리하고 있음.
- 이미 존재하던 여러 엔지니어링적 최적화 기법들을 총망라해서 현실에서 최적화를 구현.
- 해당 인프라를 구축하는 과정에서 나중에 고성능 모델을 위한 기반이 마련된 것으로 보임.
3. Scaling Laws
스케일링 법칙은 모델 성능이 컴퓨팅 자원(𝐶), 모델 규모(𝑁), 데이터 규모(𝐷)가 증가할 때 예측 가능하게 개선될 수 있음을 설명하는 이론.
모델 규모는 전통적으로 모델 파라미터 수로 표현되었으며, 데이터 규모는 데이터셋 내 토큰 수로 나타냄.
컴퓨팅 자원(𝐶)은 기존 연구에서 다음과 같은 관계로 정의됨:
𝐶 = 6𝑁𝐷그러나 모델 확장과 데이터 확장 간 최적 배분에 대한 연구는 서로 다른 결론을 제시해 왔으며, 초기 연구들은 하이퍼파라미터 설정의 불완전한 설명으로 인해 최적 성능에 도달했는지 확신할 수 없는 한계를 보였음.
이 논문에서는 이러한 불확실성을 해소하고, 컴퓨팅 자원 조건에 따른 최적 모델 및 데이터 확장 전략을 도출하고자 스케일링 법칙을 재검토.
3.1 Scaling Laws for Hyperparameters
초기 실험
- 컴퓨팅 자원 1e17 조건에서 모델을 대상으로 배치 크기와 학습률에 대한 그리드 탐색(grid search)을 수행함.
- 실험 결과, 배치 크기와 학습률의 폭넓은 조합에서 일반화 오류가 안정적으로 유지됨을 확인함. 이는 다양한 설정에서 근접 최적 성능(near-optimal performance)을 달성할 수 있음을 시사함.
multi-step scheduler 활용
- multi-step scheduler를 통해 1e17~2e19 범위의 컴퓨팅 자원 조건에서 모델을 훈련함.
- 일반화 오류가 최소값보다 0.25% 초과하지 않은 모델의 하이퍼파라미터를 근접 최적 값으로 간주하여 피팅을 진행함.
피팅 결과
batch size와 learning rate는 컴퓨팅 자원(𝐶)과 Power Law Relationship를 따름.
optimal learning rate:
η_opt = 0.3118 × C^(-0.1250)optimal batch size:
B_opt = 0.2920 × C^(0.3271)
컴퓨팅 자원이 증가할수록 batch size는 증가하고, learning rat는 감소하는 패턴 → 일반적인 직관과 일치
근접 최적 하이퍼파라미터가 넓은 범위에 걸쳐 분포하고 있어 적절한 값을 선택하기가 상대적으로 용이함.
검증
- 컴퓨팅 자원 1e20 조건에서 특정 모델을 대상으로 피팅된 하이퍼파라미터를 검증함.
- 결과적으로 최적 값들이 파라미터 공간의 중심에 위치하며, DeepSeek LLM 7B 및 67B 모델에서도 일관된 성능 향상을 달성함을 확인함.
향후 과제
- 기존 연구와 달리, 최적의 batch size와 learning rate가 단순히 일반화 오류에만 의존하지 않음을 관찰함.
- 동일한 컴퓨팅 자원을 사용하더라도 모델과 데이터의 배분에 따라 최적 파라미터 공간이 변동하는 현상이 확인됨.
- 향후 연구에서 하이퍼파라미터 선택과 훈련 동역학(training dynamics)에 대한 심층 분석이 필요함.
3.2 Estimating Optimal Model and Data Scaling
최적 확장 전략 탐색
하이퍼파라미터 피팅 결과를 기반으로, 모델과 데이터의 최적 확장 비율을 찾기 위해 스케일링 곡선을 분석함.
목표는 모델 확장 지수 a와 데이터 확장 지수 b를 구하는 것임. 이 관계는 다음과 같이 표현됨:
최적 모델 규모:
N_opt ∝ C^a최적 데이터 규모:
D_opt ∝ C^b
모델 규모 지표 문제
기존 연구에서 모델 규모는 비임베딩 파라미터 N1 또는 완전 파라미터 N2로 표현됨.
컴퓨팅 자원은 기존에 C = 6N × D로 근사되었으나, N1과 N2는 각각 문제점을 가짐:
- N1은 임베딩 파라미터와 어텐션 오버헤드가 포함되지 않음.
- N2는 임베딩 파라미터가 포함되지만, 어텐션 오버헤드는 여전히 포함되지 않음.
이러한 문제로 인해 소규모 모델에서는 최대 50%의 오차가 발생하여 통계적 오류를 유발할 수 있음.
새로운 모델 규모 지표 도입
- 어텐션 연산 오버헤드를 반영한 **비임베딩 FLOPs/token(M)**을 새로운 모델 규모 지표로 사용함.
- 컴퓨팅 자원 공식이 단순화됨: C = M × D
최적 확장 공식 도출
최적 모델 및 데이터 확장은 Power Law를 따름:
최적 모델 규모:
M_opt = M_base × C^(0.5243), M_base = 0.1715최적 데이터 규모: S
D_opt = D_base × C^(0.4757), D_base = 5.8316
실험 및 검증
- 컴퓨팅 자원 조건(1e17~3e20 FLOPs)에서 10가지 모델/데이터 할당 전략을 설계하고, 독립적인 검증 세트(100M 토큰)를 통해 일반화 오류를 측정함.
- 스케일링 곡선이 소규모 실험으로도 대규모 모델의 성능을 정확히 예측할 수 있음을 보여줌.
- DeepSeek LLM 7B 및 67B 모델에서도 스케일링 곡선이 성능을 잘 예측함을 확인함.
3.3 Scaling Laws with Different Data
DeepSeek LLM 개발 과정에서 데이터셋의 품질을 향상시키기 위해 여러 번의 반복적 데이터 조정을 수행.
- 다양한 데이터 소스를 혼합하는 비율을 조정하고 전반적인 품질을 개선하면서 스케일링 법칙에 미치는 영향을 분석.
세 가지 데이터셋을 사용하여 스케일링 법칙을 비교함:
- 초기 사내 데이터(early in-house data)
- 현재 사내 데이터(current in-house data)
- OpenWebText2 (Kaplan et al., 2020 연구에 사용됨)
평가 결과, 데이터 품질은 다음과 같이 순위가 매겨짐: OpenWebText2 > 현재 사내 데이터 > 초기 사내 데이터
- OpenWebText2는 규모가 작아 더 정밀하게 전처리되어 높은 품질을 보임.
분석 결과, 모델/데이터 확장 전략은 데이터 품질과 일관된 패턴을 나타냄.
- 데이터 품질이 높아질수록 **모델 확장 지수(a)**는 증가하고, **데이터 확장 지수(b)**는 감소함.
- 이는 컴퓨팅 자원이 증가할 때 더 많은 자원을 모델 확장에 할당하는 것이 유리하다는 점을 시사함.
이러한 현상은 고품질 데이터가 논리적 명확성이 높고 예측 난이도가 낮기 때문으로 해석됨.
- 충분한 학습이 이루어진 경우, 고품질 데이터는 모델 확장을 통해 더 큰 성능 향상을 가져옴.
3.4 리뷰 및 질문 포인트
Scaling Laws for Hyperparameters
- generalization error가 무엇이고 어떻게 측정하며, 무슨 의미가 있는지 궁금함.
Estimating Optimal Model and Data Scaling
- N1, N2가 소규모 모델에서 M과 실제로 큰 차이가 나는 이유와 그 의미에 대해서 나와있지 않음
- 아마 소규모 모델에서는 임베딩 파라미터가 큰 비중을 차지하는데, N1에서는 임베딩 파라미터가 배제되어 연산량이 실제보다 과소평가 되고 N2에서는 임베딩 파라미터가 포함이 되면서 연산량이 실제보다 과대평가 되는 것으로 보임.
- 작은 모델에서의 최적비율 추정이 큰 모델에서도 정교한 정확도를 보인다는 것은 유의미한 결과로 보임.
- 다만 이것도 GPT technical report에서 나왔던 내용으로, 추정을 조금 더 정교하게 한 데 의의가 있어보임.
Scaling Laws with Different Data
- OpenWebText2는 동일한 데이터셋인데 OpenAI와 Deepseek의 최적비율 추정에서 차이가 나는 이유가 무엇인지 분석 필요.
- 데이터의 품질 외에도, 데이터의 크기가 영향을 끼쳤을 수도 있으므로 데이터 크기도 공개가 필요해보임.
4. Alignment
데이터 수집
총 150M의 instruction data를 영어와 중국어로 수집.
- helpfulness data: 120M (general language31.2%, math 46.6%, coding 22.2%)
- harmlessness data: 30M (다양한 민감 주제 포함)
Alignment Pipeline
1. Supervised Fine-Tuning (SFT)
7B Model: 4 epochs
67B 모델: 과적합 문제로 인해 2 epochs 수행
learning rate: 7B 모델(1e-5), 67B 모델(5e-6)
벤치마크(GSM8K, HumanEval)에서 7B는 일관된 성능 향상, 67B는 상한선 도달
반복 비율(repetition ratio) 평가:
- 총 3868개의 프롬프트로 측정
- 수학 SFT 데이터가 증가할수록 반복 비율 상승 → 두 단계 미세 조정과 DPO로 해결
2. Direct Preference Optimization (DPO)
DPO 알고리즘을 사용하여 helpfulness와 harmlessness 기준의 preference 구성
helpfulness data 창의적 글쓰기, 질문 응답, 명령어 수행 등의 다국어 프롬프트 수집 및 응답 생성
harmlessness data: 유사한 방식으로 생성
config: 1 epoch , learning rate 5e-6, batch size 512
결과:
- Open-ended 응답 생성 능력 강화
- 표준 벤치마크 성능에는 큰 변화 없음
5. Evaluation
5.1 Public Benchmark Evaluation
DeepSeek 모델은 다양한 English와 Chinese public benchmarks에서 평가됨.
Benchmarks:
- Multi-subject multiple-choice: MMLU, C-Eval, CMMLU
- Language understanding and reasoning: HellaSwag, PIQA, ARC, OpenBookQA, BBH
- Closed-book question answering: TriviaQA, NaturalQuestions
- Reading comprehension: RACE, DROP, C3
- Reference disambiguation: WinoGrande, CLUEWSC
- Language modeling: Pile
- Chinese understanding and culture: CHID, CCPM
- Math: GSM8K, MATH, CMath
- Code: HumanEval, MBPP
- Standardized exams: AGIEval
Evaluation Methods:
Perplexity-based evaluation: 다중 선택형 데이터셋에서 사용
- 각 옵션의 perplexity를 계산하여 가장 낮은 값을 가진 옵션을 모델의 예측으로 선택함.
- ARC와 OpenBookQA에서는 unconditional normalization을 적용하고, 다른 데이터셋에서는 length normalization을 사용함.
Generation-based evaluation: TriviaQA, NaturalQuestions, DROP, MATH, GSM8K, HumanEval, MBPP, BBH, AGIEval, CLUEWSC, CMath에 적용
- 자유 텍스트 생성을 통해 결과를 파싱함. Greedy decoding을 사용함.
Language modeling-based evaluation: Pile-test에서 bits-per-byte(BPB)를 계산함.
Additional Evaluation Details:
- 벤치마크별 최대 sequence length는 2048 또는 4096으로 설정됨.
Base Model Results
DeepSeek 모델은 2T bilingual corpus에서 사전 학습되었으며, LLaMA2와 유사한 규모의 토큰을 사용했음에도 English language understanding benchmarks에서 비슷한 성과를 보임.
DeepSeek 67B는 math, coding, 그리고 Chinese benchmarks에서 LLaMA2 70B를 능가함.
GSM8K과 BBH에서 성능 향상이 두드러짐. 이는 few-shot learning 능력 덕분으로 추정됨.
Language conflict가 소규모 모델에 더 큰 영향을 미치는 것으로 나타남.
- DeepSeek 67B와 LLaMA2 70B의 성능 차이는 DeepSeek 7B와 LLaMA2 7B의 차이보다 큼.
- LLaMA2는 CMath와 같은 수학적 작업에서 좋은 성과를 보였으나, 중국어 idiom 평가(예: CHID)에서는 DeepSeek에 미치지 못함.
- 이는 수학적 reasoning과 같은 fundamental abilities가 언어 간 전이될 수 있음을 시사함.
Chat Model Results
대부분의 tasks에서 tuning 후 성능이 전반적으로 개선됨.
일부 knowledge-related tasks(TriviaQA, MMLU, C-Eval)에서는 성능 변동이 관찰됨.
- 그러나 이는 지식의 손실이나 획득이 아닌 zero-shot 성능으로 few-shot 성능을 달성하는 것이 목표임.
- 예: Chat 모델의 0-shot MMLU 성능이 Base 모델의 5-shot MMLU 성능과 비슷하게 나타남.
Reasoning Tasks:
- 대다수의 SFT 데이터가 CoT (Chain-of-Thought) 형식으로 구성되어 있음.
- 이에 따라 BBH, NaturalQuestions에서 reasoning tasks의 성능이 약간 개선됨.
- 다만, 이는 reasoning 능력 자체보다는 올바른 reasoning path 형식을 학습한 결과로 분석됨.
Performance Drop Tasks:
- 일부 tasks(HellaSwag와 같은 cloze tasks)에서 성능이 일정하게 감소하는 경향이 관찰됨.
- Pure language model이 이러한 tasks에 더 적합할 수 있음.
Math and Code Tasks:
- HumanEval과 GSM8K에서 20점 이상의 성능 향상이 관찰됨.
- 이는 base 모델이 수학 및 코딩 작업에서 underfitted 상태였음을 시사함.
- 추가적인 이해를 위해 다양한 데이터가 사전 학습에 포함되어야 한다고 제시함.
Repetition Ratio:
- 7B 모델에서 initial fine-tuning 후 repetition ratio가 **2.0%**였으나, 2단계 fine-tuning을 통해 **1.4%**로 감소.
- 67B 모델에서는 initial fine-tuning 후 이미 repetition ratio가 1% 이하로 유지되어, 2단계가 필요하지 않음.
5.2 Open-Ended Evaluation
Open-ended 질문에서의 성능은 실제 사용자 경험에 큰 영향을 미침. 따라서, DeepSeek Chat 모델의 open-ended generation 능력을 별도로 평가함.
Chinese Open-Ended Evaluation
Benchmark: AlignBench
- 8개 primary categories, 36개 secondary categories, 총 683개의 질문으로 구성됨.
- 각 질문에는 prompt, 참조 정답, GPT-4 기반 평가 템플릿이 제공됨.
Evaluation Process:
AlignBench의 공식 Github 코드를 활용하여 평가 수행.
Generation temperature 설정:
- Role-playing, writing ability, open-ended 질문 → 0.7
- 기타 작업 → 0.1
Results:
- DeepSeek 67B Chat은 GPT-4를 제외한 모든 baseline 모델(예: ChatGPT 등)을 능가함.
- DPO를 통해 대부분의 지표에서 성능이 개선됨.
- Basic Chinese Language tasks: DPO 모델이 GPT-4 최신 버전보다 더 높은 언어 능력을 보임.
- Advanced Chinese Reasoning tasks: 복잡한 논리 및 수학적 계산 작업에서 다른 Chinese LLM들보다 월등히 높은 성과를 기록함.
English Open-Ended Evaluation
Benchmark: MT-Bench (Zheng et al., 2023)
- 8개 multi-turn 질문 카테고리로 구성됨.
Results:
- DeepSeek 67B Chat은 LLaMA-2-Chat 70B, Xwin 70b v0.1, TULU 2+DPO 70B 등 주요 open-source 모델들을 능가함.
- 평균 점수 8.35로 GPT-3.5-turbo와 유사한 성능을 기록함.
- DPO 단계 이후 점수가 8.76으로 향상되어 GPT-4 바로 아래 순위에 위치함.
- 이는 DeepSeek LLM의 multi-turn open-ended generation 능력이 강력함을 시사함.
5.3 Held-Out Evaluation
Held-out evaluation은 data contamination과 benchmark overfitting을 방지하기 위해 최근에 발표된 테스트셋을 활용함.
LeetCode Evaluation
목적: 모델의 coding 능력 평가
Dataset:
- LeetCode Weekly Contest(351~372회)와 Bi-Weekly Contest(108~117회) 문제 활용 (2023년 7월~11월)
- 총 126개 문제, 각 문제당 20개 이상의 test cases 포함
- HumanEval 평가 방식과 유사하게 모든 테스트 케이스를 통과하면 문제를 해결한 것으로 간주
결과:
- 인도메인(in-domain)과 아웃도메인(out-domain) 테스트에서 pass@1 스코어 비교
Hungarian National High-School Exam
목적: 모델의 mathematical reasoning 능력 평가
Dataset:
- 헝가리 국가 고등학교 수학 시험(Grok-1에 기반)
- 총 33개 문제로 구성되며, human annotation을 통해 평가
- 평가 기준은 공식 solution.pdf의 scoring metric을 따름
Instruction Following Evaluation
목적: 명령어 수행 능력 평가
Dataset:
- Google에서 2023년 11월 15일에 발표한 instruction following dataset
- 25개 instruction 타입과 약 500개의 prompts로 구성됨
- Prompt-level loose metric을 활용하여 평가
Comparative Analysis and Observations
Baseline Models: Qwen 72B Chat, ChatGLM3, Baichuan2, Yi-34B Chat 등과 비교
Observations:
Held-out datasets에서 large models과 small models 간의 성능 격차가 명확하게 드러남.
- ChatGLM3는 MBPP에서 DeepSeek 67B에 근접한 52.4점을 기록했으나, 새로운 데이터셋에서는 성능이 크게 하락함.
- GSM8K에서 높은 점수(72.3)를 기록한 ChatGLM3도 헝가리 시험에서는 대규모 모델에 비해 성능이 낮음.
Instruction Following:
- Instruction 수행 능력에서 전체적인 컴퓨팅 리소스가 중요한 요소로 작용함.
DeepSeek 7B vs 67B:
- 동일한 training pipeline을 사용했음에도 불구하고, 67B 모델이 다양한 작업에서 더 높은 수준의 intelligence를 보임.
- DeepSeek 7B는 표준 벤치마크에서 다른 소규모 모델에 비해 뒤처지지만, held-out tasks에서는 경쟁력 있는 성과를 기록함.
5.4 Safety Evaluation
DeepSeek 개발팀은 AI의 안전성을 중요한 핵심 요소로 인식하며, 이를 위해 pre-training, SFT, DPO 전 과정에 걸쳐 안전성을 강화함.
Safety Evaluation Process
전문가 팀 구성: 다양한 분야에서 20명의 전문가가 참여하여 safety taxonomy를 설계.
Test Set:
- 총 2400개의 고품질 질문을 수작업으로 구성.
- 다양한 질문 형식(유도 질문, 역할극, 다중 회차 대화 등)을 통해 모델이 표면적 질문 형식에 속지 않도록 설계함(예: "grandmother" loophole).
검증 방식:
- 각 질문에 대해 safe, unsafe, model refusal의 세 가지 카테고리로 주석 처리.
- 모델이 안전하게 응답했거나 거부한 경우를 secure response로 간주함.
- 결과적으로 DeepSeek 67B Chat 모델은 다양한 safety test categories에서 높은 성과를 기록함.
Safety Categories and Results
- Privacy & Legal Rights: 개인 정보 보호, 정보 권리
- Trade Secrets & Intellectual Property: 지적 재산권 침해, 불공정 경쟁
- Illegal Behavior: 마약, 폭력, 조직 범죄
- Other Sensitive Topics: 환각과 현실 문제, 자가 인식 문제 등
- 총 테스트 케이스 대비 안전 응답 비율은 대부분 90% 이상을 기록함.
"Do-Not-Answer" Dataset Evaluation
추가적으로 "Do-Not-Answer" dataset을 활용하여 모델의 안전 메커니즘을 평가함.
- 이 데이터셋은 939개의 위험 카테고리별 프롬프트로 구성됨.
- DeepSeek 67B Chat 모델은 97.8의 높은 점수를 기록하여, ChatGPT와 GPT-4보다 우수한 성과를 보임.
5.5 Discussion
DeepSeek LLM 개발 과정에서 다양한 흥미로운 발견들을 정리함.
Staged Fine-Tuning
문제: 소규모 모델은 수학 및 코드 데이터에 대한 fine-tuning이 오래 필요하지만, 반복(repetition) 비율이 증가하며 대화 능력이 저하.
해결: 2 step fine-tuning 적용:
- Stage 1: 모든 데이터를 활용한 초기 fine-tuning
- Stage 2: 대화 데이터를 중심으로 추가 fine-tuning
결과: 코드 및 수학 성능을 유지하면서 반복 비율이 감소하고 instruction following 성능이 향상.
Multi-Choice Question (MC) Data
문제: 다중 선택형(MC) 질문은 지식뿐 아니라 옵션의 의미를 정확히 이해해야 함.
실험: Alignment 단계에서 2000만 개의 Chinese MC 데이터를 추가해 C-Eval 및 CMMLU 벤치마크 성능을 평가.
결과
- MC 데이터 추가는 Chinese와 English MC 벤치마크에 긍정적 영향을 미침.
- 그러나 TriviaQA 및 ChineseQA와 같은 generative 평가에서는 성능이 개선되지 않음.
- 사용자 입장에서는 대화형 응답 생성에서 지능이 향상된 것으로 인식되지 않음.
결론: MC 데이터가 모델 지능 향상에 기여하지 않아, pre-training과 fine-tuning에서 제외하기로 결정함.
Instruction Data in Pre-Training
일반적 접근: Instruction 데이터를 pre-training 후반부에 통합하면 벤치마크 성능이 개선됨.
실험:
- 최종 10% pre-training 단계에서 약 500만 개의 instruction 데이터를 추가함.
결과:
- 벤치마크 성능은 개선되었으나, SFT 단계에서 동일 데이터를 추가한 경우와 유사한 결과를 보임.
- Instruction 데이터가 충분히 많을 경우에는 pre-training에서 활용할 수 있음.
- 하지만, DeepSeek에서는 MC 데이터를 배제하는 정책에 따라 pre-training 단계에 instruction 데이터를 포함하지 않음.
System Prompt
설계:
- LLaMA-2의 시스템 프롬프트를 약간 수정하여 적용함.
결과
- 7B 모델: 시스템 프롬프트 추가 시 성능이 약간 저하됨.
- 67B 모델: 프롬프트 추가로 성능이 크게 개선.
해석
- 대규모 모델은 프롬프트의 의미를 더 잘 이해하고, 명령을 효과적으로 수행함.
- 소규모 모델은 프롬프트를 적절히 파악하지 못해 성능이 떨어질 수 있음.
6. Conclusion, Limitation, and Future Work
DeepSeek LLM 개요
- 영어와 중국어로 구성된 2조 개 토큰의 대규모 데이터셋으로 처음부터 훈련된 오픈소스 모델 시리즈.
- 하이퍼파라미터 선택, scaling laws, 다양한 fine-tuning 시도를 상세히 설명.
- 기존 연구의 scaling laws를 보완하여 새로운 모델/데이터 확장 전략을 제안.
- 컴퓨팅 예산에 따른 최적 배치 크기와 학습률 예측 방법 제공.
- 데이터 품질이 scaling behavior에 중대한 영향을 미침을 확인.
- 전 과정에서 벤치마크 편향과 비공개 데이터 활용을 배제하며 종합적인 평가 수행.
Limitation
다른 LLM과 공통된 한계 보유.
- Pre-training 이후 지속적 지식 업데이트 불가.
- hallucination 생성 가능성 존재.
- 초기 중국어 데이터셋의 한계로 특정 중국어 주제에서 성능 저하 가능.
- 영어·중국어 외 언어에서의 성능은 신중히 접근 필요.
Future Work
기술 보고서 발표 예정
- 코드 인텔리전스 및 Mixture-of-Experts (MoE) 관련 세부 내용 제공.
- 고품질 코드 데이터 구축 및 희소 모델(sparse model) 설계 방안 소개.
차기 버전 데이터셋 구축
- 더 크고 개선된 데이터셋 구축 중.
- 논리적 추론, 중국어 지식, 수학 및 코드 능력의 향상 기대.
Alignment 연구 진행
- 모델의 안전성(safety), 정확성(honesty), 친화성(helpfulness) 향상 방안 연구.
- 초기 실험에서 강화학습(RL)이 복잡한 논리적 추론 능력에 긍정적 효과를 미치는 것으로 확인.