【论文蒸馏】Deepseek_R1 总结
Deepseek-R1的论文概要总结
0. Abstract
提出了第一代推理模型Deepseek-R1-Zero和Deepseek-R1,前者仅通过了大规模的强化学习训练,没有预先的有监督微调,便能达到很好的推理效果。但是可读性较差,于是后者在前者的基础上,在RL之前添加了冷启动数据,最后效果足以匹敌OpenAI-o1-1217
1. Introduction
-
后训练(post-training)兴起,即在预训练模型基础上进行的进一步优化和调整,旨在提升模型在特定任务或应用场景中的性能。一般的方法包括,监督微调(SFT)、强化学习、参数高效微调(PEFT, e.g. LoRA + Prompt Tuning)等。
-
为了提高推理能力,OpenAI搞了推理时扩展(Inference-time scaling),即无需修改模型本身的参数或架构,仅仅通过增加模型在推理阶段的计算资源来提升其性能的技术(调整解码步数等)。
-
对于测试时拓展(Test-time scaling,即通过多步推理、搜索或验证优化输出质量,需要外接组件评估中间结果)而言,之前的研究都没有达到OpenAI的Inference-time scaling的效果。
- 其他内容会在后续具体介绍
贡献
- 后训练方面
- 在base模型上纯强化学习,不加SFT也能得到很好的推理能力
- 提出了2RL-2SFT的pipeline
- 蒸馏方面
- 在小模型上,蒸馏效果比直接强化学习好
2. Approach
2.2. Deepseek-R1-Zero
-
强化学习算法
-
GRPO (Group Relative Policy Algorithm) - 传统方法需要价值函数来计算未来的分(不能只依赖当前的环境反馈),而GRPO则是通过组内基线代替了价值函数(或价值模型)
-
其中min中的第一项即“重要性权重”,表示新策略与旧策略在状态s下选择a动作的概率比;A_i对应优势函数,表示在特定状态下某一动作相对于策略平均表现的优劣程度;KL散度是比较新旧策略差异,使其不做过大幅度的调整
-
-
奖励模型 - 只使用两种基于规则的奖励反馈
- 正确性奖励: 结果的正确性和结果格式的正确性
- 格式奖励: 对于输出的思考过程要放在< think ></ think>当中(便成为了Deepseek的思考框)
- 注:用基于模型的奖励可能会收到"reward hacking"(RL智能体通过奖励函数缺陷或环境漏洞获取高额奖励,但未学习预期行为),所以这里并不采取这种方式
-
训练模板
- 只有< think></ think>和< answer></ answer>的提示,并没有要求反思/提示某种策略,所以得到的这些现象都是通过强化学习得到的
-
表现、自进化过程和“顿悟”时刻
- 表现:不靠监督就已经很好,而且如果采用“多数投票”机制还能暴涨15个点
- 自进化:没有靠外界,自己演化出了“反思”和“探索其他可能”等能力
- “顿悟”时刻:演化得到的行为之一,有时会突然reevaluate之前的输出,然后解决问题——体现了强化学习实现智能突破的潜力(因为没有教过这些,自己得到)
2.3 Deepseek-R1
- 冷启动 - 考虑到Zero中存在的可读性差和混语言输出等问题,这里收集了少量的CoT训练数据(用少样本prompt得到/直接让模型生成结果和反思/Zero输出结果+人工修改)。
- 推理导向的强化学习 - 在Zero的RL基础上添加了对于语言一致性的奖励函数,这样可读性大大增强,但代价是模型表现略微下降。
- SFT
- reasoning data: 相比与之前的阶段,这里除了那些能用基于规则的奖励处理的数据之外,还引入别的训练数据,所以用了一种更通用的奖励模型
- Non-reasoning data: 使用了V3的SFT数据
- 对所有场景的RL - 奖励函数中添加了“有用性(输出和用户输入相关)”和“无害性”的要求
3. Experiment (略)
4. Discussion
-
Distill vs RL
- 对于小模型,使用蒸馏的方法得到的效果要比直接RL好得多(直接RL和原始效果接近)
- 所以推荐蒸馏,有效又经济
-
Process Reward Model (过程奖励模型) - 不成功
- 推理过程不能很有效的分步骤
- 需要标注多,机器标效果不好,人工标难以规模化
- “Reward hacking”问题
-
蒙特卡洛树搜索 - 不成功
- 对于token输出搜索空间过大
- 难以设计一个很好的价值模型
5. Limitation and Future Work (Conclusion略)
- 更普遍的能力 - 现在R1相比于V3在function call, 多轮对话,复杂角色扮演上效果更差
- 语言混合 - 用中文问,用英文回
- 提示词工程
- 软件工程任务 - 这方面没有大规模的强化学习训练
更多推荐
所有评论(0)