DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning
论文笔记:DeepSeek-R1
元信息
| 项目 | 内容 |
|---|---|
| 机构 | DeepSeek |
| 日期 | January 2025 |
| 对比基线 | OpenAI o1, GPT-4o, Claude 3.5 Sonnet, Qwen 2.5 |
| 链接 | arXiv / GitHub |
一句话总结
通过纯强化学习训练(无 SFT 冷启动) 在 DeepSeek-V3 基础模型上涌现出 Chain-of-Thought 和自我验证能力,并提出 GRPO 算法替代 PPO,最终通过蒸馏将推理能力迁移到 1.5B-70B 的小模型,在数学和代码推理 benchmark 上匹敌 OpenAI o1。
核心贡献
RL-only 训练涌现推理: DeepSeek-R1-Zero 证明了不需要 SFT 数据,纯 RL 训练即可让大模型自发涌现 CoT 推理、自我验证和反思行为
GRPO 算法: 提出 Group Relative Policy Optimization,用组内相对奖励替代 critic 模型,大幅降低 RL 训练的内存和计算开销
推理能力蒸馏: 将 DeepSeek-R1 的推理能力蒸馏到 Qwen 和 Llama 系列的 1.5B-70B 模型,小模型在推理任务上超越同量级的非蒸馏模型数十个百分点
涌现行为的发现与分析: 详细记录了 RL 训练过程中 “aha moment”(顿悟时刻)的出现——模型学会重新审视自己的答案并纠正错误
问题背景
要解决的问题
大语言模型在数学推理、代码生成等需要深度推理的任务上仍有明显短板,OpenAI o1 通过 RL + CoT 取得突破但方法未公开
现有方法的局限
SFT-based 推理增强: 需要大量人工标注的 CoT 数据,数据质量是瓶颈;且 SFT 本质上是模仿学习,无法超越标注者的推理水平
PPO-based RLHF: PPO 需要训练独立的 critic 模型(与 actor 同等规模),内存开销翻倍
Standard CoT prompting: 仅靠 prompt 工程激发推理能力有上限,模型不会主动进行自我纠错
本文的动机
探索一个根本性问题:推理能力能否通过纯 RL 信号从头涌现? 如果可以,就不再依赖昂贵的人工 CoT 标注数据
方法详解
阶段 0: DeepSeek-R1-Zero(纯 RL,无 SFT)
基础模型: DeepSeek-V3-Base(671B MoE,37B 激活参数)
训练方式: 直接在基础模型上做 RL,不经过任何 SFT
奖励信号:
- 准确性奖励: 数学题验证答案正确性(规则匹配);代码题通过单元测试判断
- 格式奖励: 强制模型将推理过程放在
<think>...</think>标签内,最终答案放在标签外 - 无过程奖励模型(No PRM): 不使用过程级奖励,仅用结果级奖励
涌现行为:
- CoT 长度自然增长: 训练过程中模型的平均 thinking token 数从数百增长到数千
- “Aha moment”: 模型在某个训练阶段突然学会了 “Wait, let me reconsider…” 式的自我纠错
- 自我验证: 模型开始主动验算自己的中间步骤
- 多策略探索: 模型学会尝试不同的解题方法
阶段 1: DeepSeek-R1(完整流水线)
R1-Zero 虽然涌现了推理能力,但存在可读性差、语言混杂等问题,因此完整版 R1 采用多阶段流水线:
- 冷启动 SFT: 收集数千条高质量 CoT 数据微调基础模型,提供更好的 RL 起点
- 推理 RL 阶段: 使用 GRPO 在数学和代码任务上做大规模 RL 训练
- 拒绝采样 + SFT: 用 RL 后的模型生成大量推理数据,过滤正确的用于 SFT
- 通用 RL 对齐: 在更广泛的任务上(写作、对话、角色扮演等)做 RL 对齐
GRPO 算法(Group Relative Policy Optimization)
核心改进: 去掉 PPO 中的 value function(critic 模型),用同一 prompt 的一组回答之间的相对奖励作为 advantage 估计
具体流程:
- 对每个 prompt ,用当前策略采样 个回答
- 用奖励模型对每个回答打分
- 计算组内归一化 advantage:
- 用 clipped PPO-style 目标更新策略
蒸馏到小模型
教师模型: DeepSeek-R1 (671B MoE)
学生模型: Qwen-2.5 系列(1.5B, 7B, 14B, 32B)和 Llama-3 系列(8B, 70B)
蒸馏方式: 用 R1 生成的 ~800K 条推理数据对小模型做 SFT(直接模仿 R1 的推理链)
不使用 RL 训练小模型: 纯 SFT 蒸馏已经足够有效,小模型上的 RL 收益有限
关键公式
公式1: GRPO 目标函数
含义: 类 PPO 的 clipped 目标函数,但 advantage 来自组内相对奖励而非 critic 模型
符号说明:
- : 每个 prompt 采样的回答组大小(通常 16-64)
- : 第 个回答的组内归一化 advantage
- : clip 范围(如 0.2)
- : KL 惩罚系数
- : 参考策略(SFT 模型)
公式2: 组内 Advantage 计算
含义: 用同组回答的奖励均值和标准差做 z-score 归一化,完全不需要 critic 模型
优势: 相比 PPO 的 ,GRPO 省去了训练和维护一个与 actor 同等规模的 value function
公式3: 奖励函数
含义: 总奖励由准确性奖励和格式奖励组成
符号说明:
- : 答案正确性(数学: 规则匹配;代码: 测试用例通过率)
- : 是否正确使用
<think>...</think>格式
实验结果
数学推理
| 模型 | AIME 2024 (pass@1) | MATH-500 | Gaokao 2024 |
|---|---|---|---|
| GPT-4o | 9.3% | 76.6% | — |
| Claude 3.5 Sonnet | 16.0% | 78.3% | — |
| OpenAI o1-mini | 63.6% | 90.0% | — |
| OpenAI o1 | 79.2% | 96.4% | — |
| DeepSeek-R1-Zero | 71.0% | 95.9% | — |
| DeepSeek-R1 | 79.8% | 97.3% | 91.4% |
R1 在 AIME 2024 上达到 79.8%,略超 OpenAI o1 (79.2%)
R1-Zero(纯 RL,无 SFT)就达到了 71.0%,证明推理能力可以从 RL 中涌现
代码推理
| 模型 | Codeforces (rating) | LiveCodeBench (pass@1) |
|---|---|---|
| GPT-4o | 808 | 33.4% |
| Claude 3.5 Sonnet | 717 | 33.8% |
| OpenAI o1 | 1807 | 63.4% |
| DeepSeek-R1 | 2029 | 65.9% |
R1 在 Codeforces 竞赛评分上达到 2029(超过 96.3% 的人类选手),超越 o1 的 1807
蒸馏模型结果
| 蒸馏模型 | 参数量 | AIME 2024 | MATH-500 | LiveCodeBench |
|---|---|---|---|---|
| Qwen-2.5-1.5B (base) | 1.5B | 0% | 34.3% | 6.2% |
| R1-Distill-Qwen-1.5B | 1.5B | 28.9% | 83.9% | 16.9% |
| Qwen-2.5-7B (base) | 7B | 3.3% | 52.5% | 12.8% |
| R1-Distill-Qwen-7B | 7B | 55.5% | 92.8% | 37.6% |
| Llama-3-70B (base) | 70B | 6.7% | 65.0% | 19.2% |
| R1-Distill-Llama-70B | 70B | 70.0% | 94.5% | 57.5% |
| OpenAI o1-mini | ~100B? | 63.6% | 90.0% | 53.8% |
1.5B 蒸馏模型的 MATH-500 从 34.3% → 83.9%(+49.6%),效果惊人
70B 蒸馏模型在 AIME 达到 70.0%,接近 o1-mini 的 63.6%,体现了蒸馏的高效性
蒸馏(纯 SFT)在小模型上比直接做 RL 更有效——小模型的 RL 训练不稳定且收益有限
R1-Zero 涌现行为分析
思维链长度与训练步数: 训练初期平均 CoT 长度 ~200 tokens,训练后期增长到 ~10,000 tokens,说明模型自发学会了更深入的推理
“Aha moment”: 在训练过程中的某个阶段,模型突然开始输出 “Hmm, wait. Let me reconsider.” 并纠正之前的错误——这一行为完全是 RL 信号驱动的涌现,非人工设计
语言混杂问题: R1-Zero 的输出常常中英文混杂且可读性差,这是纯 RL 训练缺乏格式约束的副作用,在完整版 R1 中通过 SFT 冷启动解决
局限性
训练成本极高: 671B MoE 模型的 RL 训练需要大量 GPU 资源,论文未公开具体训练成本,但可推测为数百万美元量级
通用能力折损: R1 在推理任务上出色,但在写作、角色扮演等非推理任务上可能不如通用对话模型——需要额外的通用 RL 对齐阶段
长上下文推理的效率问题: R1 的推理链可能非常长(>10K tokens),增加了推理成本和延迟
奖励设计限制: 准确性奖励仅适用于有明确答案的任务(数学、代码),开放式任务(如写作)难以定义类似的奖励信号
蒸馏的局限: 蒸馏模型的能力仍受限于教师模型的生成数据质量,且蒸馏后的小模型在 RL 上的进一步提升空间有限
相关概念
- GRPO
- PPO
- RLHF
- Chain-of-Thought
- Self-Verification
- Knowledge Distillation
- OpenAI o1
- DeepSeek-V3
- MoE
- Scaling Law
- Emergent Abilities
- Reward Hacking
速查卡片
DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning
- 核心: 纯 RL 训练(无 SFT)可涌现 CoT 推理和自我验证能力;GRPO 替代 PPO 省去 critic 模型
- 方法: R1-Zero(纯 RL 涌现)→ R1(冷启动 SFT + RL + 拒绝采样 SFT + 对齐 RL)→ 蒸馏到小模型
- 结果: AIME 2024 79.8%(≈o1);Codeforces 2029 rating(>o1);1.5B 蒸馏模型 MATH +49.6%
- 代码: GitHub,模型权重开源
笔记创建时间: 2026-04-03