DeepSeek-V3 惊艳全场后:DeepSeek-R1 模型深度拆解
为什么 DeepSeek-R1 模型如此引人注目?
在 DeepSeek-V3 展现强大实力之后,DeepSeek 再次开源了 DeepSeek-R1 模型(简称 R1),引发了广泛关注。R1 遵循 MIT 许可证,允许用户通过蒸馏技术借助 R1 训练其他模型,并且开放了 API 接口,支持思维链输出。更令人惊讶的是,R1 在数学、代码、自然语言推理等任务上的性能,可以与 OpenAI o1 正式版 相媲美,甚至在小模型上超越了 OpenAI o1-mini,而价格却只有 OpenAI 的几十分之一。那么,R1 是如何炼成的呢?
DeepSeek-R1 的训练方法是什么?
R1-Zero:纯强化学习的典范
DeepSeek 团队首先推出了 R1-Zero 模型,它基于 DeepSeek-V3-Base,纯粹通过 RL(强化学习) 训练,没有任何 SFT(监督微调)。这证明了即使没有 SFT,仅通过 RL,大模型也能具备强大的推理能力。
- R1-Zero 的核心思想: 纯强化学习。
- 算法应用: 直接在 DeepSeek-V3-Base 模型上使用 GRPO算法 进行强化学习训练。
- 奖励机制: 使用基于规则的奖励机制,包括准确性奖励和格式奖励,来指导模型学习。
- 训练模板: 采用简洁模板,要求模型先输出推理过程,再给出最终答案。
- “顿悟”现象: R1-Zero 在训练中出现了“顿悟”现象,能够自发学习新的推理策略,例如,在解决数学题时,模型会突然意识到可以重新评估之前的步骤,并尝试新的解题方法。
- 性能表现: 在 AIME 2024 上,R1-Zero 的 pass@1 指标从 15.6% 提升至 71.0%,经过投票策略后更是提升到了 86.7%,与 OpenAI-o1-0912 相当。
R1:冷启动与强化学习的融合
R1 模型 基于 R1-Zero,采用了更精细的训练方法:
- 冷启动微调: 利用少量人工标注的高质量数据进行冷启动微调,作为强化学习的初始模型,以提高效率和性能。
- 面向推理的强化学习: 在冷启动阶段之后,R1 采用了与 R1-Zero 类似的强化学习训练流程,并引入了语言一致性奖励(Language Consistency Reward),以解决训练中的语言混杂问题。
- 拒绝采样与监督微调: 利用训练好的 RL 模型进行拒绝采样,生成新的 SFT 数据,以提升模型的通用能力。这些数据不仅包含推理任务,还涵盖了其他领域,例如写作、角色扮演、问答等。
- 面向全场景的强化学习: 进行第二阶段强化学习,训练目标扩展到所有任务类型,并针对不同任务类型优化了奖励信号和提示分布。
- 例如,对于数学、代码和逻辑推理等任务,采用基于规则的奖励;
- 对于开放式问答、创意写作等任务,则采用基于模型的奖励。
DeepSeek-R1 的性能如何?
多维度的性能评估
DeepSeek 团队在多个维度对 R1 的性能进行了评估,包括:
- 知识密集型任务:如 MMLU、MMLU-Pro 和 GPQA Diamond 等。
- 推理密集型任务:如 AIME 2024、MATH-500 和 Codeforces 等。
- 长文本理解任务:如 FRAMES 数据集。
- 开放式问答任务:如 AlpacaEval 2.0 和 Arena-Hard 等。
性能对比
R1 与多个业界领先的模型进行了对比,包括 DeepSeek-V3、Claude-3.5-Sonnet-1022、GPT-4o-0513、OpenAI-o1-mini 以及 OpenAI-o1-1217 等。评估结果显示:
- 推理任务: R1 在 AIME 2024、MATH-500 和 Codeforces 等任务上,取得了与 OpenAI-o1-1217 相媲美甚至超越的成绩。
- 知识密集型任务: 在 MMLU、MMLU-Pro 和 GPQA Diamond 等基准测试中,R1 的性能显著超越了 DeepSeek-V3 模型。
- 长文本理解能力: 在 FRAMES 数据集上,R1 的准确率达到了 82.5%,优于 DeepSeek-V3 模型。
- 开放式问答任务: 在 AlpacaEval 2.0 和 Arena-Hard 基准测试中,R1 分别取得了 87.6% 的 LC-winrate 和 92.3% 的 GPT-4-1106 评分,展现了其在开放式问答领域的强大能力。
DeepSeek-R1 核心技术是什么?
GRPO 算法
R1 采用的核心算法是 Group Relative Policy Optimization (GRPO) 算法。GRPO 通过比较一组样本的奖励来估计优势函数(Advantage),降低了训练过程的复杂度和所需的计算资源。
奖励系统
- 准确性奖励:评估模型生成的响应是否正确。对于具有确定性答案的任务(如数学题),模型需要将最终答案放在特定格式中,以便进行自动验证。对于代码生成任务(如 LeetCode 题目),则利用编译器对生成的代码进行测试。
- 格式奖励:强制模型将推理过程放在
<reasoning>
和</reasoning>
标签之间,以便于分析和理解模型的推理过程。
DeepSeek-R1 的模型蒸馏效果如何?
DeepSeek 团队将 R1 的推理能力蒸馏到了 Qwen 和 Llama 系列的多个小模型中。结果显示:
- 经过 R1 蒸馏的小模型,在推理能力上得到了显著提升,甚至超越了在这些小模型上直接进行强化学习的效果。
- 例如,R1-Distill-Qwen-7B 在 AIME 2024 上的得分达到了 55.5%,远超 QwQ-32B-Preview; R1-Distill-Qwen-32B 在 AIME 2024 上得分 72.6%,在 MATH-500 上得分 94.3%,在 LiveCodeBench 上得分 57.2%,这些结果显著优于之前的开源模型,并与 o1-mini 相当。
- 这说明,R1 学到的推理模式具有很强的通用性和可迁移性,可以通过蒸馏的方式传递给其他模型。
DeepSeek-R1 模型的局限性与未来方向
局限性
- 通用能力:R1 的通用能力(例如函数调用、多轮对话、复杂角色扮演和 json 输出)仍落后于 DeepSeek-V3。
- 语言混杂:R1 在处理非中英文问题时,可能会出现语言混杂现象。
- 提示词工程:R1 对提示词较为敏感,使用 few-shot 提示可能会降低其性能。
- 软件工程任务:由于 RL 训练的评估周期较长,R1 在软件工程任务上的性能提升有限。
未来工作
- 探索如何利用长 CoT 提升 R1 在通用能力上的表现。
- 解决 R1 的语言混杂问题。
- 优化 R1 的提示词策略。
- 将 RL 应用于软件工程任务,提升 R1 在该领域的性能。
- 继续探索更有效的强化学习算法和奖励机制,进一步提升模型的推理能力。
- 研究如何将 R1 的推理能力更好地应用于实际场景,例如科学研究、代码生成、药物研发等。
DeepSeek 团队的其他尝试
DeepSeek 团队在研究过程中也尝试了一些其他方法,但并未取得理想的效果,例如:
- Process Reward Model (PRM):PRM 的构建和训练都存在较大挑战,且容易导致奖励“hack”。
- Monte Carlo Tree Search (MCTS):MCTS 在 token 生成任务中面临搜索空间过大的问题,且 value model 的训练较为困难。
我的感悟
我认为:DeepSeek-R1 的出现,就像寒冬里的一把火,烧出了国产大模型的一片新天地。它不单单是一个模型,