学习近期备受关注的 DeepSeek R1 论文:《DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning》,主要先理解并整理了训练主要过程的流程图。

初稿: 2025/02/10, 修改: 2025/02/19

论文主要提到了两个模型的训练过程:DeepSeek-R1-Zero和DeepSeek-R1。整个论文读下来很清晰,有“酣畅淋漓”的感觉。其中涉及到较多步骤,先整理了训练主要的过程,以方便直观地看到每个步骤。

image.png

整理下来的几点感受:

  1. DeepSeek-R1-Zero 最让人exciting,不仅因为仅仅基于 Base 模型进行大规模 RL,就能激发模型的 CoT 能力;还因为它的简洁。
  2. 对于 DeepSeek-R1 模型,SFT仍旧是重要的。R1-Zero模型在R1中的一个很大的作用是低成本产生大规模的long CoT数据用来SFT,而 long CoT 数据本身是比较难获取的。
  3. DeepSeek-R1 的 Post-Training (SFT+RL) 核心是数据的制作:1)通过设计了一套精细且复杂的流程来 iterative training 模型以制作数据,这个有点类似“左脚踩右脚飞上天”;2)把类似 R1-Zero 通过 math、code、STEM等学习到的推理能力逐步泛化到其他 domain 的推理(图中intermediate checkpoint做的事情)。

DeepSeek-R1-Zero

R1-Zero 直接对预训练的模型(没有经过 SFT)做大规模 RL,证明了能够激发模型的 CoT 能力,这点让人激动,给人有点 AlphaGo 的感觉。

训练数据

image.png

Rule-based rewards

没有使用神经网络来做 reward model (无论是结果还是过程的reward),他们在大规模 RL 训练中很容易发生“reward hack”。使用了两类rewards: