자연어 처리 / LLM2025년 2월 9일
DeepSeek-R1 논문리뷰
느낀점
- 우선 굉장히 재미있었습니다.
- 우선 성능이 좋은 DeepSeek-R1보다 DeepSeek-R1-Zero에 더 관심이 갔습니다.
- RL 학습으로 DeepSeek-R1-Zero가 “aha moment”를 만났다는 게 흥미로웠습니다.
- DeepSeek-R1-Zero RL의 평가 모델을 규칙 기반으로 사용했다는 것도 재미있었습니다.
- 정말 이게 가능하다면 굉장한 발견이고 이후 많은 것들을 시도해 볼 수 있다는 생각이 들었습니다.
논문 주소
Abstract
- DeepSeek-R1-Zero
- SFT 없에 RL만으로 학습한 모델
- 강력하고 흥미로운 추론 행동을 자연스럽게 보여 줌
- 가독성이 좋지 않거나 언어가 혼합되는 등의 문제 발생
- DeepSeek-R1
- DeepSeek-R1-Zero의 문제 해결을 위해, RL(강화 학습) 전에 다단계 학습과 콜드 스타트 데이터를 통합한 모델
- 추론 영역에서 OpenAI-o1-1217과 비슷한 성능 달성
- DeepSeek-R1-Zero, DeepSeek-R1 소소코드 공개
- Qwen과 Llama를 기반으로 6개 모델(1.5B, 7B, 8B, 14B, 32B, 70B) 공개
- Benchmark performance of DeepSeek-R1
1. Introduction
- Post-training
- 추론 작업의 정확도 향상
- 사회적 가치에 부합
- 사용자 선호도에 적응
- 사전학습에 비해 상대적으로 적은 컴퓨팅 자원 사용
- Reasoning capabilities
- OpenAI, 2024b 시리즈 모델은 CoT 추론의 길이를 늘리는 방식 도입
- 수학, 코딩, 과학적 추론 등 다양한 분야에서 성능 개선을 이룸
- This Paper
- DeepSeek-R1-Zero
- 학습 과정에서 강력하고 흥미로운 추론 행동이 자연스럽게 나타남
- 수천 번의 RL 단계 후 추론 벤치마크에서 뛰어난 성능을 나타냄
- AIME 2024의 pass@1 점수는 15.6%에서 71.0%로 증가
- LLM 다수결 투표 (Majority Voting) 점수는 86.7%까지 향상, OpenAI-o1-0912와 비슷한 성능
- DeepSeek-R1
- DeepSeek-R1-Zero는 가독성이 좋지 않거나 언어가 혼합되는 등의 문제 발생
- 이러한 문제들을 해결하고 추론 성능을 향상시키기 위해, 소량의 콜드 스타트 데이터 및 다단계 학습 파이프라 사용
- 수천 개의 콜드 스타트 데이터 수집 및 DeepSeek-V3-Base 모델 미세 조정
- DeepSeek-R1-Zero와 같이 추론 중심적인 RL을 수행
- RL 과정에서 수렴에 가까워지면, RL의 rejection sampling(잘 예측하지 못한 셈플)을 통해 새로운 데이터 생성 (글쓰기, 사실 기반 QA, 자기 인지 등 도메인)
- DeepSeek-V3-Base을 다시 학습
- 추가 RL 과정 수행
- DeepSeek-R1 체크포인트 획득 및 OpenAI-o1-1217과 동등한 성능 달성
- Distillation
- DeepSeek-R1을 작은 모델로 distillation 하는 것에 대한 연구
- Base model: Qwen2.5-32B
- Distillation이 RL을 적용하는 것보다 성능이 좋음
- 큰 기본 모델에 의해 발견된 추론 패턴이 추론 능력을 향상시키는 데 매우 중요하다는 것을 보여줌
- Qwen, Llama의 distillation 모델을 공개 함
- Distillation된 14B가 QwQ-32B-Preview의 성능을 능가함
- Distillation된 32B, 70B는 추론 벤치마크에서 새로운 기록 달성
1.1. Contributions
- Post-Training: Large-Scale Reinforcement Learning on the Base Model
- SFT를 사용하지 않고 RL 적용
- 모델은 복잡한 문제 해결하기 위한 CoT 능력 확보
- 결과로 DeepSeek-R1-Zero 개발
- SFT 없이 순수하게 RL만으로 LLM의 추론 능력을 강화할 수 있음을 검증 최초의 연구
- DeepSeek-R1 개발 파이프라인 공개
- 두 단계의 RL: 개선된 추론 패턴을 발견하고 인간 선호도에 맞추는 것을 목표
- 두 단계의 SFT: 모델의 추론 및 비추론 능력을 위한 시드 역할
- Distillation: Smaller Models Can Be Powerful Too
- 큰 모델의 추론 능력을 작은 모델에 distillation 할 수 있음
- 작은 모델에서 강화 학습(RL)을 통해 발견된 추론 패턴에 비해 더 나은 성능을 가져옴
- DeepSeek-R1-Distill-Qwen-7B
- AIME 2024에서 55.5% 달성, QwQ-32B-Preview 성능을 능가
- DeepSeek-R1-Distill-Qwen-32B
- AIME 2024에서 72.6%
- MATH-500에서 94.3%
- LiveCodeBench에서 57.2%
- 이전의 오픈 소스 모델을 크게 능가하며 o1-mini와 비슷한 성능
- Qwen2.5 및 Llama3을 기반으로 하는 distillation된 1.5B, 7B, 8B, 14B, 32B 및 70B 체크포인트 공개
1.2. Summary of Evaluation Results
- Reasoning tasks
- AIME 2024에서 79.8%의 Pass@1 달성, OpenAI-o1-1217 성능을 능가 함
- MATH-500에서 97.3% 달성, OpenAI-o1-1217 동등한 성능
- Codeforces에서 2,029 Elo 레이팅을 달성, 96.3%의 사람보다 뛰어난 성적
- 엔지니어링 관련 작업 DeepSeek-V3보다 약간 더 나은 성능
- Knowledge
- MMLU 90.8%, MMLU-Pro 84.0%, GPQA Diamond 71.5%, OpenAI-o1-1217보다 약간 낮은 성능
- SimpleQA에서 DeepSeek-R1은 DeepSeek-V3보다 뛰어난 성능 달성, OpenAI-o1이 4o를 능가하는 것과 유사한 경향
- Others
- 창의적인 글쓰기, 일반적인 질의응답, 편집, 요약 등 광범위한 작업에서도 뛰어난 성능을 보임
- AlpacaEval 2.0에서 87.6%의 승률
- ArenaHard에서 92.3%의 승률
- 시험 중심적이지 않은 질의를 지능적으로 처리하는 강력한 능력
- 긴 문맥 이해가 필요한 작업에서 뛰어난 성능을 보임, 긴 문맥 벤치마크에서 DeepSeek-V3의 성능을 능가
2. Approach
2.1. Overview
- 기존에는 모델 성능을 향상시키기 위해 많은 양의 supervised data 필요
- SFT를 콜드 스타트로 사용하지 않고도 RL을 통해 추론 능력을 향상시킬 수 있음을 보임
- 소량의 콜드 스타트 데이터를 포함하면 성능을 더욱 향상시킬 수 있음
2.2. DeepSeek-R1-Zero: Reinforcement Learning on the Base Model
2.2.1. Reinforcement Learning Algorithm
- GRPO(Group Relative Policy Optimization)
- 질문 $q$에 대해 이전 정책 $\pi_{\theta_{\rm old}}$의 출력 ${o_1, o_2, \cdots, o_G }$를 아래 목표를 최대화 하도록 정책 $\pi_{\theta}$를 최적화
- $\epsilon$과 $\beta$는 하이퍼파라미터, $A_i$는 ${r_1, r_2, \cdots, r_G }$에 의해 계산된 어드벤티지
2.2.2. Reward Modeling
- 보상은 강화 학습의 최적화 방향을 결정
- 두 가지 보상으로 구성된 규칙 기반 보상 시스템 채택
- Accuracy rewards
- 응답이 정확한지 평가
- 예) 수학 문제의 경우, 지정된 형식의 최종 답안을 규칙 기반으로 검증
- 예)LeetCode 문제의 경우, 미리 정의된 TestCase를 기반으로 컴파일러를 사용하여 피드백
- Format rewards
- 모델이 사고 과정을 '<think>'와 '</think>' 태그 사이에 넣도록 강제하는 형식 보상
- 신경망 보상 모델을 적용하지 않음
- 신경망 보상 모델이 대규모 강화 학습 과정에서 보상 해킹으로 어려움을 겪을 수 있음
- 보상 해킹: 에이전트가 의도하지 않은 방식으로 보상을 최대화하는 현상
- 보상 모델을 재학습하는 데 추가적인 학습 자원이 필요
- 전체 학습 파이프라인을 복잡하게 만듬
2.2.3. Training Template
- 지정한 지침을 따르도록 안내하는 간단한 템플릿 사용 (아래 표1)
- 먼저 추론 과정을 생성한 다음 최종 답변을 생성하도록 요구
- 반성적 추론을 의무화하거나 특정 문제 해결 전략을 장려하는 것과 같은 것은 적용하지 않음
2.2.4. Performance, Self-evolution Process and Aha Moment of DeepSeek-R1-Zero
- Performance of DeepSeek-R1-Zero
- RL 학습에 따른 AIME 2024 벤치마크에서 DeepSeek-R1-Zero의 성능 (아래 그림2)
- RL 훈련이 진행됨에 따라 성능이 안정적이고 지속적으로 향상
- AIME 2024의 평균 pass@1 점수가 15.6%에서 71.0%로 증가, OpenAI-o1-0912와 비슷한 성능
- 이러한 성능 개선은 RL 알고리즘의 효율성을 보임
- 벤치마크에서 DeepSeek-R1-Zero와 OpenAI의 o1-0912 모델을 비교 분석한 결과 (아래 표2)
- RL만으로 supervised data 없이 강력한 추론 능력 획득 가능
- 모델이 RL만을 통해 효과적으로 학습하고 일반화할 수 있는 능력을 얻을 수 있음
- Majority voting을 적용하면 성능을 더욱 향상시킬 수 있음
- AIME 벤치마크에서 majority voting을 사용했을 때 성능은 71.0%에서 86.7%로 상승, OpenAI-o1-0912의 성능을 능가
- 강력한 기본 능력과 추론 작업에서 추가적인 발전을 위한 잠재력을 보임
- Self-evolution Process of DeepSeek-R1-Zero
- DeepSeek-R1-Zero의 자기 진화 과정은 RL이 모델의 추론 능력을 자율적으로 향상시키는 방법을 보여주는 흥미로운 사례
- 기본 모델에서 직접 RL을 시작함으로써 SFT 없이 모델의 진행 상황을 면밀히 관찰할 수 있음
- 복잡한 추론 작업을 처리하는 능력과 관련하여 모델이 시간이 지남에 따라 어떻게 진화하는지 보여줌
- DeepSeek-R1-Zero의 사고 능력은 훈련 과정 전반에 걸쳐 꾸준히 향상 (아래 그림 3)
- 이러한 향상은 외부 조정의 결과가 아니라 모델 내의 내재적인 발전
- 확장된 테스트 시간 계산을 활용하여 점점 더 복잡한 추론 작업을 해결하는 능력을 자연스럽게 획득
- 모델이 사고 과정을 더 심층적으로 탐색하고 개선할 수 있도록 수백 개에서 수천 개의 추론 토큰을 생성하는 범위까지 확장 됨
- 테스트 시간 계산이 증가함에 따라 정교한 행동이 나타남
- 모델이 이전 단계를 다시 방문하고 재평가하는 반성과 같은 행동과 문제 해결에 대한 대안적 접근 방식을 탐색하는 행동이 자발적으로 발생
- 이런 행동은 명시적으로 프로그래밍된 것이 아니라 모델이 RL 환경과 상호 작용한 결과로 나타남
- Aha Moment of DeepSeek-R1-Zero
- 훈련 중에 관찰된 특히 흥미로운 현상은 “aha moment” 발생
- 이 순간은 모델의 중간 버전에서 발생 (아래 표 3)
- 이 단계에서 초기 접근 방식을 재평가함으로써 문제에 더 많은 사고 시간을 할애하는 것을 배움
- 이 행동은 모델의 성장하는 추론 능력에 대한 증거일 뿐만 아니라 RL이 어떻게 예상치 못한 정교한 결과로 이어질 수 있는지에 대한 매혹적인 예시
- 모델에게 “aha moment” 순간일 뿐만 아니라 모델의 행동을 관찰하는 연구자들에게도 “aha moment” 순간
- RL 힘과 아름다움을 강조
- 문제를 어떻게 풀어야 하는지 모델에게 명시적으로 가르치는 대신, 단순히 올바른 동기를 제공하고, 모델은 자율적으로 고급 문제 해결 전략을 개발
- “aha moment”는 RL이 인공 시스템에서 새로운 수준의 지능을 열어줄 수 있는 잠재력을 강력하게 상기시켜 주며, 미래에는 더욱 자율적이고 적응력 있는 모델을 위한 길을 열어줌
- Drawback of DeepSeek-R1-Zero
- 가독성이 좋지 않거나 언어가 혼합되는 등의 문제 발생
- 추론 과정을 더욱 읽기 쉽게 만들고 공개 커뮤니티와 공유하기 위해, 인간 친화적인 콜드 스타트 데이터를 사용한 RL 방법 탐색
2.3. DeepSeek-R1: Reinforcement Learning with Cold Start
- 다음 두가지 질문이 생김
- 1) 고품질 데이터를 소량의 콜드 스타트로 통합하면 추론 성능을 더욱 향상시키거나 수렴을 가속화할 수 있을까?
- 2) 명확하고 일관성 있는 CoT를 생성할 뿐만 아니라 강력한 일반 능력을 보여주는 사용자 친화적인 모델을 어떻게 훈련할 수 있을까?
- 위 질문에 답하기 위해, 우리는 DeepSeek-R1을 훈련하기 위한 4단계로 구성된 파이프라인을 설계함
2.3.1. Cold Start
- RL 훈련의 초기 불안정한 콜드 스타트 단계를 방지하기 위해
- 소량의 긴 CoT 데이터를 구축하고 수집
- 긴 CoT를 예시로 사용하는 few-shot 프롬프팅
- 반성 및 검증과 함께 자세한 답변을 생성하도록 모델에 직접 프롬프팅
- 읽기 쉬운 형식으로 DeepSeek-R1-Zero 출력 수집
- 인간 주석자의 후처리
- 등 여러 가지 방식 사용
- 수천 개의 콜드 스타트 데이터를 수집하여 DeepSeek-V3-Base를 미세 조정 후 RL의 시작점으로 사용
- DeepSeek-R1-Zero와 비교했을 때, 콜드 스타트 데이터의 장점
- 가독성
- DeepSeek-R1-Zero는 응답이 여러 언어를 혼합하거나 사용자를 위해 답변을 강조하는 마크다운 형식이 부족한 경우 발생
- DeepSeek-R1의 콜드 스타트 데이터의 각 응답의 끝에 요약을 포함하고 읽기 쉬운 패턴 사용
- 출력 형식
|special_token|<reasoning_process>|special_token|<summary>
- reasoning process: 쿼리에 대한 CoT
- summary: 추론 결과를 요약
- 잠재력
- 인간의 사전 지식을 바탕으로 콜드 스타트 데이터의 패턴을 신중하게 설계함으로써 DeepSeek-R1-Zero에 비해 더 나은 성능 달성
- 반복적인 훈련이 추론 모델에 더 나은 방법 으로 보임
2.3.2. Reasoning-oriented Reinforcement Learning
- 콜드 스타트 데이터로 DeepSeek-V3-Base를 미세 조정한 후, DeepSeek-R1-Zero와 동일한 RL 과정 적용
- 이 단계는 명확한 해답이 있는 추론 집약적인 작업에서 모델의 추론 능력을 향상시키는 데 중점
- 훈련 과정에서 RL 프롬프트가 여러 언어를 포함할 때 CoT는 언어 혼합을 자주 나타내는 것을 관찰
- 언어 혼합 문제를 완화하기 위해, 우리는 RL 훈련 중에 CoT에서 목표 언어 단어의 비율로 계산되는 언어 일관성 보상 도입
- Ablation experiments에서 언어 일관성 보상이 모델의 성능을 약간 저하시키지만, 인간 선호도에 부합하여 가독성을 높임
- 마지막으로, 추론 작업의 정확성과 언어 일관성에 대한 보상을 직접 합산하여 최종 보상을 계산 후 미세 조정된 모델에 RL을 적용하여 추론 작업에서 수렴에 도달할 때까지 진행
2.3.3. Rejection Sampling and Supervised Fine-Tuning
- 추론 중심적인 RL이 수렴 후, 다음 라운드를 위해 생성된 체크포인트를 활용하여 SFT 데이터를 수집
- 추론에 초점을 맞춘 초기 콜드 스타트 데이터와 달리, 이 단계에서는 모델의 글쓰기, 역할극 및 기타 일반적인 작업 능력을 향상시키기 위해 다른 도메인의 데이터를 사용
- Reasoning data
- RL 체크포인트에서 거부 샘플링을 수행하여 추론 프롬프트를 선별하고 추론 궤적을 생성
- 이전 단계에서는 규칙 기반 보상을 사용하여 평가할 수 있는 데이터만 포함
- 이 단계에서는 일부 데이터가 ground-truth와 모델 예측을 DeepSeek-V3에 입력하여 판단하는 생성적 보상 모델 사용
- 모델 출력이 때때로 혼란스럽고 읽기 어렵기 때문에 혼합된 언어, 긴 단락 및 코드 블록이 포함된 CoT를 필터링
- 각 프롬프트에 대해 여러 응답을 샘플링하고 올바른 응답 한개만 유지
- 총 60만 개 이상의 추론 관련 훈련 샘플 수집
- Non-Reasoning data
- 글쓰기, 사실 기반 QA, 자기 인지, 번역과 같은 비추론 데이터는 DeepSeek-V3 파이프라인 채택
- DeepSeek-V3의 SFT 데이터의 일부 재사용
- 특정 비추론 작업의 경우, 질문에 답변하기 전에 DeepSeek-V3를 호출하여 CoT를 생성하도록 함
- "안녕하세요"와 같은 간단한 쿼리의 경우 응답에 CoT를 제공하지 않음
- 추론과 관련 없는 총 20만 개 이상의 훈련 샘플을 수집
- 약 80만 개의 샘플 데이터로 DeepSeek-V3-Base를 2 epochs 미세 조정
2.3.4. Reinforcement Learning for all Scenarios
- 모델을 인간 선호도에 더욱 맞추기 위해 두번째 RL 적용
- 보상 조합 및 다양한 프롬프트 조합을 사용하여 모델을 훈련
- 추론
- 규칙 기반 보상 DeepSeek-R1-Zero의 방법론 따름
- 수학, 코드 및 논리적 추론 영역
- 일반 데이터
- 복잡하고 미묘한 시나리오에서 인간 선호도를 포착하기 위해 보상 모델 사용
- DeepSeek-V3 파이프라인을 기반으로 구축하고 선호도 쌍과 훈련 프롬프트의 유사한 분포 채택
- 유용성: 최종 요약에만 집중하여 평가가 기본 추론 과정을 방해하지 않으면서 응답의 유용성과 사용자 관련성을 강조하도록 함
- 무해성
- 생성 과정에서 발생할 수 있는 잠재적 위험, 편견 또는 유해 콘텐츠를 식별하고 완화하기 위해 추론 과정과 요약을 포함한 모델의 전체 응답을 평가
- 결론적으로, 보상 신호와 다양한 데이터 분포의 통합을 통해 유용성과 무해성을 우선시하면서 추론에 탁월한 모델 훈련
2.4. Distillation: Empower Small Models with Reasoning Capability
- 2.3.3과 같이 DeepSeek-R1로 선별한 80만 개의 샘플을 사용하여 Qwen 및 Llama 모델을 직접 미세 조정
- 이런 직접적인 distillation 방법이 소형 모델의 추론 능력을 크게 향상시킴
- Qwen2.5-Math-1.5B
- Qwen2.5-Math-7B
- Qwen2.5-14B
- Qwen2.5-32B
- Llama-3.1-8B
- Llama-3.3-70B-Instruct
- distillation 모델의 경우, RL을 포함하면 모델 성능을 크게 향상시킬 수 있지만 SFT만 적용하고 RL 단계를 포함하지 않음
- RL 단계에 대한 탐색은 연구 커뮤니티에 맡김
3. Experiment
3.1. DeepSeek-R1 Evaluation
3.2. Distilled Model Evaluation
DeepSeek-R1 논문리뷰 | with-RL