DeepSeek-R1 小白入门 学习笔记

18 阅读13分钟

时间:2026-1-4 更新为86页 原文链接:arxiv.org/abs/2501.12…

核心贡献

  1. 验证了一个激进的假设:高质量的推理能力可以通过纯粹的强化学习激励产生,而无需依赖大规模的人类标注数据作为先决条件
  2. 引入分组相对策略优化(Group Relative Policy Optimization, GRPO)算法,DeepSeek 成功地消除了传统 PPO 算法中对评论家(Critic)模型的依赖,极大地降低了训练成本并提高了稳定性。
  3. 证明了强大的推理模式可以从巨型模型(671B)高效迁移至小型模型(1.5B-70B),这直接挑战了“智能仅源于规模”的传统认知,为端侧 AI 的落地打开了新的窗口

背景与动机

Scaling Laws:增加模型参数量和预训练数据量来换取性能的提升

  • 以“知识广度”为核心的增长模式
  • 基于直觉的、快速的单次前向传递生成
  • 处理复杂逻辑推理任务时遭遇了瓶颈(需要多步推导、反事实推理和深度规划的数学或编程问题)

监督微调(SFT)的局限性

业界普遍采用:思维链提示工程 + 基于人类演示的监督微调(SFT)提升模型推理能力

缺陷:模型的上限被锁定在人类演示者的水平

测试时计算(Test-Time Compute)的崛起

DeepSeek-R1 引入了显著的推理延时,利用这段时间生成成千上万个“思考 token”(thinking tokens)

一个动态的计算资源分配过程:

  • 计算资源由训练 --> 推理
  • 传统的 LLM 推理中,无论问题难易,模型通常消耗相对固定的计算资源
  • R1 通过强化学习学会了根据问题的复杂度自适应地扩展思考长度
    • 简单问题简单答
    • 复杂问题可能会生成长达数万 token 的思考过程

DeepSeek-R1-Zero:纯强化学习的“顿悟”实验

证明了:纯强化学习可以从零诱导推理能力

训练方式:直接在预训练的 DeepSeek-V3-Base 模型上启动强化学习,完全跳过 SFT 阶段(即无任何人类行为先验的干扰)

奖励函数:准确性奖励 + 格式奖励

  1. 准确性奖励 (Accuracy Rewards) --> 结果奖励
    • 数学题,检查最终答案是否与标准答案一致。
    • 代码题,通过编译器运行测试用例,全对才给分
  2. 格式奖励 (Format Rewards)
    • 强制模型把思考过程放在 和 之间

“Aha Moment”:自我进化的涌现

在训练的特定阶段,模型的中间思维输出中开始频繁出现诸如“Wait, let me re-evaluate”(等等,让我重新评估一下)或“Specifically, step-by-step”(具体来说,一步步来)等词汇。

这标志着模型学会了回溯(Backtracking)和自我纠错(Self-Correction)。例如,模型在推导出一个中间结论后,会自发地通过代入验算来检查其正确性,如果发现错误,它会废弃当前的推理路径,重新尝试另一种方法

  • 随着训练步数(Steps)的增加,R1-Zero 的平均响应长度呈现出指数级增长,从最初的数百 token 迅速扩展至数万 token。
  • 这种长度的增长与 AIME 基准测试上的准确率提升呈现出极强的正相关性 。这表明模型正在通过延长思考时间来换取智能水平的提升,真正实现了“三思而后行”

Pass@1 (Single-pass Accuracy) :一个问题,一次过的准确率。代表了模型最本能、最稳定的能力

Cons@16 (Consensus@16 / Majority Vote) :一个问题,16次回答的答案中,众数答案通过准确率。代表了模型的上限潜力和鲁棒性

缺陷:

  • 语言混合(Language Mixing): 模型倾向于在同一个思维链中混用多种语言(如中英夹杂)。这可能是因为在预训练数据中,不同语言的逻辑密度不同,模型在纯 RL 压力下会选择当下最能表达逻辑的语言片段,而不考虑语言的一致性 。
  • 可读性差(Poor Readability): 思维过程充满了无序的尝试、重复和自我否定的片段,缺乏人类专家那种结构清晰的推导,使得普通用户难以理解其逻辑脉络 。
  • 指令遵循能力弱: 除了解决特定推理问题,R1-Zero 在处理通用任务(如创意写作、角色扮演)时表现不佳,因为它没有经过通用指令微调

DeepSeek-R1:四阶段工业级训练流水线

第一阶段:冷启动(Cold Start)—— 注入人类先验

方法:

  • 引入少量的、高质量的“冷启动”数据。这些数据包含了长思维链的示例,但经过了人类专家+DeepSeek-V3 的清洗和格式化,确保了语言的一致性和逻辑的条理性
  • 研究表明,仅需数千条高质量的长 CoT 数据,就能显著改善模型的输出质量

结果:

  • 使 R1 从一个已经具备基本推理格式和语言规范的状态开始探索
  • 加快了后续 RL 的收敛速度
  • 有效地抑制了语言混合现象的产生

产物: 一个懂格式规范的推理模型雏形

第二阶段:面向推理的强化学习(Reasoning-oriented RL)

目的:使模型具备逻辑推理能力,大幅解决 R1-Zero 的语言混合问题

方法:

  • GRPO 算法,大规模强化学习阶段
  • 奖励函数中加入了一项语言一致性奖励(Language Consistency Reward):如果思维链中的语言与提示词(Prompt)的目标语言一致,模型将获得额外奖励(可能会对推理性能产生微小的负面影响)

产物:“格式正确”+“逻辑深邃”的 DeepSeek-R1 Dev-2

问题:只会推理,不太会讲话。通用语言能力弱

第三阶段:拒绝采样与通用 SFT(Rejection Sampling & General SFT)

目的:

  1. 把强化学习摸索出的“能力”,通过 SFT 的方式蒸馏 (Distill) 给基座模型。SFT 的学习效率比 RL 高得多,能让模型快速、稳定地掌握这些能力。
  2. 通过混合通用数据,让模型既拥有 R1 强大的逻辑推理能力,又保留了 V3 流畅的通用对话能力。

方法:拒绝采样 + 通用SFT

拒绝采样:收集大约 60 万条 (600k) 极高质量的推理训练数据

  1. 让第二阶段得到的强大推理模型 DeepSeek-R1 Dev-2 大量做推理题(数学题、编程题)
  2. 每一道题生成多个不同的回答(具体多少个原文没说)
  3. 自动判卷(拒绝/保留):
    • 对于有标准答案的题目(数学、代码):直接验证答案是否正确。答案不对的直接“拒绝”(丢弃),答案对的保留。
    • 对于没有标准答案的题目(逻辑分析):使用一个“生成式奖励模型”去评价思维链是否合理。
  4. 在保留下来的正确答案中,去掉那些思维混乱的、重复的、语言不统一的,只留下思维链最清晰、步骤最完美的样本

通用SFT:约 20 万条 (200k)

  • 数据来源:DeepSeek-V3 生成或抽取非推理类(如写作、问答)的数据
  • 内容类型:
    • 写作任务: 创意写作、邮件撰写。
    • 知识问答: 历史、地理、常识。
    • 角色扮演与翻译。
    • 自我认知: 确保模型知道自己是 DeepSeek 开发的
  • 处理技巧: 对于部分通用任务,也让 DeepSeek-V3 模型尝试生成潜在思维链(CoT);对于简单的问答,则保持直接回答
    • 让模型养成凡事先思考的习惯,保持思维一致性(推理任务、通用任务数据均有“思考痕迹”)
    • 这种人工诱导的思考痕迹能帮助模型更好地澄清用户意图、规划输出结构,提高生成质量

结果:

  1. 60万推理数据 + 20万通用数据 = 共 80万数据
  2. 利用这部分数据回过头去微调 DeepSeek-V3 Base 模型

Q&A

Q:为什么要回过头去微调 DeepSeek-V3 Base,而不是直接微调 DeepSeek-R1 Dev-2模型?

A: 如果直接在“语言混乱”的 RL 模型上继续练,RL 模型的 可读性差、语言混乱 等坏习惯很难改掉。不如把 RL 模型生成的“完美逻辑数据”拿出来,去教一张白纸(Base 模型),这样既学到了逻辑,又保持了 Base 模型原本良好的语言能力

第四阶段:全场景强化学习(RL for All Scenarios)

目的:实现人类价值观的对齐(有用 + 无害)

奖励函数:

  1. 推理类奖励 (Reasoning Reward)
    1. 目的: 确保模型在学习通用的同时,数学和代码的解题能力不退化
    2. 基于规则的奖励 (Rule-based Reward)
    3. 准确性 (Accuracy): 答案对不对?(通过编译器运行代码或数学答案匹配)
    4. 格式 (Format): 是否按要求使用了 标签包裹思维链?
  2. 通用类奖励 (General Reward)
    1. 基于模型的奖励 (Model-based Reward)
    2. 有用性奖励 (Helpfulness Reward): 使用一个专门训练的 Reward Model (RM) 给模型的**最终总结(Summary)**打分,判断回答是否有用、相关 。注意:为了不干扰推理过程,有用性只看最终结果,不看思维链。
    3. 安全性奖励 (Safety Reward): 使用另一个 Safety RM 给模型的**整个回答(包含思维链和结果)**打分,确保没有偏见、有害内容或危险诱导 。
    4. 格式奖励 (Format Reward): 同样要求符合输出格式规范
  3. 语言一致性奖励 (Language Consistency Reward)
    1. 解决 R1-Zero 早期出现的“语言混乱”问题
    2. 方式:计算思维链(CoT)中目标语言单词的比例

蒸馏技术

蒸馏优于直接强化学习

研究团队尝试了两种路径来提升小模型(如 Qwen-32B)的推理能力:

  • 直接 RL: 对小模型直接应用 R1-Zero 的纯 RL 训练流程。
  • 蒸馏: 使用 DeepSeek-R1(671B)生成的高质量推理数据对小模型进行监督微调(SFT)。

实验结果表明,蒸馏的效果显著优于直接 RL。暗示了推理能力的涌现可能需要一定的“模型容量”门槛。小模型很难像大模型那样通过自我探索“悟”出复杂的推理模式,但它们具有极强的模仿能力,可以通过学习大模型的思维链来掌握这些技能。

举例:

  • DeepSeek-R1-Distill-Qwen-32B 在多项基准测试中超越了 OpenAI 的 o1-mini,重新定义了 30B 参数级模型的 SOTA 标准
  • DeepSeek-R1-Distill-Qwen-1.5B 甚至在数学任务上展现出了非凡的潜力,证明了即使是极小的模型,在高质量思维链数据的滋养下,也能具备可观的逻辑能力

边缘计算与本地部署的革命

  • 以往,具备高级推理能力的模型只能运行在云端巨大的 GPU 集群上。现在,通过蒸馏,开发者可以在消费级显卡(如 RTX 4090)甚至高端笔记本(MacBook M-series)上运行具备 o1 级推理能力的 14B 或 32B 模型
  • 企业可以在本地服务器部署这些模型处理敏感数据,无需担心隐私泄露;开发者可以在端侧设备上集成复杂的逻辑处理能力。
  • 这极大地降低了高智力 AI 的使用门槛和边际成本,将推动 AI 应用从“云端集中式”向“云边协同”甚至“完全本地化”的形态演进

失败的尝试:科研中的宝贵负样本

过程奖励模型(PRM)的困境

虽然 PRM 在理论上被认为是提升推理能力的“圣杯”,但 DeepSeek 团队在实际大规模实施中遇到了三个难以逾越的障碍:

  1. 细粒度定义的模糊性: 在一般的推理任务中,很难明确界定什么是一个“步骤”。
  2. 标注困难: 判定中间步骤的正确性极其耗时且容易出错,自动化标注的效果往往不尽如人意。
  3. 奖励黑客: 一旦引入模型作为奖励者,RL 优化极其容易找到模型的漏洞进行攻击,导致训练过程变得复杂且不可控(需要不断重新训练奖励模型)。

因此,DeepSeek 最终选择了更简单、更鲁棒的结果奖励(Outcome-based Reward)

蒙特卡洛树搜索(MCTS)的局限

受 AlphaGo 启发,MCTS 常被认为是增强推理的有效手段。然而,DeepSeek 发现将 MCTS 应用于文本生成面临根本性挑战:

  1. 搜索空间爆炸: 与围棋有限的动作空间不同,文本生成的 token 组合空间是指数级增长的,导致搜索效率极低。
  2. 局部最优陷阱: 即使设置了搜索限制,模型也很容易陷入局部最优解。
  3. 价值估值难题: 训练一个能精确评估当前文本片段未来价值(Value Function)的模型极其困难,这直接限制了 MCTS 的指导作用 。

这表明,在大语言模型领域,简单的自回归生成配合长思维链(即 R1 的做法),目前看来比显式的树搜索更为有效。

安全性与风险评估

“思维链”带来的安全悖论

DeepSeek-R1 的一个显著特点:思维链是透明的。

  • 增加了可解释性,也引入了新的攻击面。
  • 暴露思维链可能会泄露模型在拒绝回答有害问题时的内部逻辑,甚至攻击者可以利用这一点,通过操纵思维过程来绕过最终的拒绝机制 。
  • 思维链的存在使得模型在处理敏感话题时,可能在“思考”阶段就已经生成了部分有害信息

越狱(Jailbreak)脆弱性

DeepSeek-R1 在面对复杂的越狱攻击(如算法生成的对抗性提示词)时,其防御能力弱于 OpenAI 的 o1

原因:R1 极强的指令遵循能力

解决方案:DeepSeek 在其 API 服务中引入了外部风控系统

坏处:拒答率(Rejection Rate)上升,影响了部分正常用户的使用体验

越狱举例: image.png

训练成本

DeepSeek-R1 的训练成本据报道仅为 560 万美元左右