DeepSeek-R1:通过强化学习激励大语言模型的推理能力
DeepSeek-AI
research@deepseek.com
摘要
我们介绍了第一代推理模型DeepSeek-R1-Zero和DeepSeek-R1。DeepSeek-R1-Zero是通过大规模强化学习(RL)训练的模型,无需将监督微调(SFT)作为初步步骤,展现出卓越的推理能力。通过强化学习,DeepSeek-R1-Zero自然地展现出许多强大且引人注目的推理行为。然而,它面临着诸如可读性差和语言混杂等挑战。为了解决这些问题并进一步提升推理性能,我们推出了DeepSeek-R1,它在强化学习前融入了多阶段训练和冷启动数据。DeepSeek-R1在推理任务上的性能与OpenAI-o1-1217相当。为支持研究社区,我们开源了DeepSeek-R1-Zero、DeepSeek-R1,以及基于Qwen和Llama从DeepSeek-R1中提炼出的六个密集模型(15亿、70亿、80亿、140亿、320亿、700亿参数)。
1. 引言
近年来,大语言模型(LLMs)经历了快速的迭代和演进(Anthropic, 2024; Google, 2024; OpenAI, 2024a),与通用人工智能(AGI)的差距逐渐缩小。
最近,后训练已成为完整训练流程的重要组成部分。研究表明,后训练可以提高推理任务的准确性,使模型与社会价值观保持一致,并适应用户偏好,同时与预训练相比,所需的计算资源相对较少。在推理能力方面,OpenAI的o1(OpenAI, 2024b)系列模型率先通过增加思维链推理过程的长度来实现推理时的扩展。这种方法在数学、编码和科学推理等各种推理任务中取得了显著的改进。然而,如何在测试时有效扩展模型能力仍然是研究界面临的一个开放性问题。此前已有多项研究探索了各种方法,包括基于过程的奖励模型(Lightman等人, 2023; Uesato等人, 2022; Wang等人, 2023)、强化学习(Kumar等人, 2024)以及蒙特卡洛树搜索和波束搜索等搜索算法(Feng等人, 2024; Trinh等人, 2024; Xin等人, 2024)。然而,这些方法都未能达到与OpenAI的o1系列模型相媲美的通用推理性能。
在本文中,我们迈出了使用纯强化学习(RL)提升语言模型推理能力的第一步。我们的目标是探索大语言模型在无需任何监督数据的情况下发展推理能力的潜力,专注于通过纯强化学习过程实现自我进化。具体来说,我们使用DeepSeek-V3-Base作为基础模型,并采用GRPO(Shao等人, 2024)作为强化学习框架,以提高模型在推理任务中的性能。在训练过程中,DeepSeek-R1-Zero自然地展现出许多强大且有趣的推理行为。经过数千次强化学习步骤后,DeepSeek-R1-Zero在推理基准测试中表现出超强的性能。例如,在AIME 2024基准测试中,其单次通过率(pass@1)得分从15.6% 提高到71.0%,通过多数投票法,该得分进一步提高到86.7%,与OpenAI-o1-0912的性能相当。
然而,DeepSeek-R1-Zero也面临着一些挑战,例如可读性差和语言混杂。为了解决这些问题并进一步提升推理性能,我们推出了DeepSeek-R1,它结合了少量冷启动数据和多阶段训练流程。具体而言,我们首先收集数千条冷启动数据,对DeepSeek-V3-Base模型进行微调。随后,我们像训练DeepSeek-R1-Zero一样进行面向推理的强化学习。在强化学习过程接近收敛时,我们通过对强化学习检查点进行拒绝采样,结合来自DeepSeek-V3在写作、事实性问答和自我认知等领域的监督数据,创建新的监督微调(SFT)数据,然后重新训练DeepSeek-V3-Base模型。使用新数据进行微调后,该检查点会经历额外的强化学习过程,考虑所有场景的提示。经过这些步骤,我们得到了一个名为DeepSeek-R1的检查点,其在推理任务上的性能与OpenAI-o1-1217相当。
我们进一步探索了从DeepSeek-R1到较小密集模型的蒸馏技术。以Qwen2.5-32B(Qwen, 2024b)为基础模型,直接从DeepSeek-R1进行蒸馏的效果优于对其应用强化学习。这表明较大基础模型发现的推理模式对于提高推理能力至关重要。我们开源了基于Qwen和Llama(Dubey等人, 2024)系列的蒸馏模型。值得注意的是,我们的140亿参数蒸馏模型在性能上大幅超越了最先进的开源模型QwQ-32B-Preview(Qwen, 2024a),320亿和700亿参数的蒸馏模型在密集模型的推理基准测试中创下了新纪录。
1.1 贡献
- 后训练:基于基础模型的大规模强化学习:我们直接将强化学习应用于基础模型,而不依赖监督微调(SFT)作为初始步骤。这种方法使模型能够探索思维链(CoT)来解决复杂问题,从而开发出DeepSeek-R1-Zero。DeepSeek-R1-Zero展示了自我验证、反思和生成长思维链等能力,为研究社区树立了重要的里程碑。值得注意的是,这是首次公开研究验证大语言模型的推理能力可以仅通过强化学习来激发,而无需监督微调。这一突破为该领域的未来发展铺平了道路。
- 我们介绍了开发DeepSeek-R1的流程:该流程包含两个强化学习阶段,旨在发现改进的推理模式并与人类偏好对齐,以及两个监督微调阶段,作为模型推理和非推理能力的基础。我们相信这个流程将通过创建更好的模型使行业受益。
- 蒸馏:小模型也可以很强大:我们证明了较大模型的推理模式可以蒸馏到较小模型中,与在小模型上通过强化学习发现的推理模式相比,能带来更好的性能。开源的DeepSeek-R1及其API将有助于研究社区在未来提炼出更好的小模型。
- 使用DeepSeek-R1生成的推理数据:我们对研究社区中广泛使用的几个密集模型进行了微调。评估结果表明,蒸馏后的较小密集模型在基准测试中表现出色。DeepSeek-R1-Distill-Qwen-7B在AIME 2024上的得分达到55.5%,超过了QwQ-32B-Preview。此外,DeepSeek-R1-Distill-Qwen-32B在AIME 2024上的得分达到72.6%,在MATH-500上达到94.3%,在LiveCodeBench上达到57.2%。这些结果显著优于以前的开源模型,与o1-mini相当。我们向社区开源了基于Qwen2.5和Llama3系列的15亿、70亿、80亿、140亿、320亿和700亿参数的蒸馏模型检查点。
1.2 评估结果总结
- 推理任务:(1)DeepSeek-R1在AIME 2024上的单次通过率(Pass@1)得分达到79.8%,略高于OpenAI-o1-1217。在MATH-500上,它取得了令人瞩目的97.3%的高分,与OpenAI-o1-1217相当,并且显著超越了其他模型。(2)在与编码相关的任务中,DeepSeek-R1在代码竞赛任务中展现出专家级水平,在Codeforces竞赛中获得2029 Elo评分,超过了96.3%的人类参赛者。在与工程相关的任务中,DeepSeek-R1的表现略优于DeepSeek-V3,这对实际工作中的开发者很有帮助。
- 知识:在MMLU、MMLU-Pro和GPQA Diamond等基准测试中,DeepSeek-R1取得了出色的成绩,在MMLU上的得分达到90.8%,在MMLU-Pro上达到84.0%,在GPQA Diamond上达到71.5%,显著超过DeepSeek-V3。虽然在这些基准测试中,其性能略低于OpenAI-o1-1217,但DeepSeek-R1超越了其他闭源模型,展示了其在教育任务中的竞争优势。在事实性基准测试SimpleQA上,DeepSeek-R1的表现优于DeepSeek-V3,证明了它处理基于事实的查询的能力。在这个基准测试中,OpenAI-o1也超越了GPT-4o,呈现出类似的趋势。
- 其他方面:DeepSeek-R1在广泛的任务中也表现出色,包括创意写作、通用问答、编辑、总结等。它在AlpacaEval 2.0上的长度控制胜率达到87.6%,在ArenaHard上的胜率达到92.3%,展示了其强大的智能处理非考试导向查询的能力。此外,DeepSeek-R1在需要长上下文理解的任务中表现出色,在长上下文基准测试中大幅超越DeepSeek-V3。
2. 方法
2.1 概述
以往的研究工作严重依赖大量监督数据来提升模型性能。在本研究中,我们证明了即便不将监督微调(SFT)作为冷启动手段,通过大规模强化学习(RL)也能够显著提升模型的推理能力。此外,加入少量冷启动数据可进一步优化性能。在后续章节中,我们将介绍:(1)DeepSeek-R1-Zero,该模型直接在基础模型上应用强化学习,无需任何监督微调数据;(2)DeepSeek-R1,它从一个经数千条长思维链(CoT)示例微调后的检查点开始进行强化学习;(3)将DeepSeek-R1的推理能力蒸馏到小型密集模型中。
2.2 DeepSeek-R1-Zero:基于基础模型的强化学习
强化学习在推理任务中已展现出显著成效,我们之前的工作(Shao等人, 2024; Wang等人, 2023)已证实这一点。然而,这些工作高度依赖监督数据,而收集监督数据颇为耗时。在本节中,我们探索大语言模型在无任何监督数据情况下发展推理能力的潜力,重点关注其通过纯强化学习过程实现自我进化的过程。我们先简要介绍强化学习算法,随后展示一些令人振奋的结果,期望能为研究界提供有价值的见解。
2.2.1 强化学习算法:组相对策略优化
为降低强化学习的训练成本,我们采用组相对策略优化(GRPO)(Shao等人, 2024)。该方法摒弃了通常与策略模型规模相同的价值评估模型,转而从组分数中估算基线。具体而言,对于每个问题
q
q
q,GRPO从旧策略
π
θ
o
l
d
\pi_{\theta_{old}}
πθold中采样一组输出
{
o
1
,
o
2
,
⋯
,
o
G
}
\{o_{1}, o_{2}, \cdots, o_{G}\}
{o1,o2,⋯,oG},然后通过最大化以下目标来优化策略模型
π
θ
\pi_{\theta}
πθ:
J
G
R
P
O
(
θ
)
=
E
[
q
∼
P
(
Q
)
,
{
o
i
}
i
=
1
G
∼
π
θ
o
l
d
(
O
∣
q
)
]
1
G
∑
i
=
1
G
(
m
i
n
(
π
θ
(
o
i
∣
q
)
π
θ
o
l
d
(
o
i
∣
q
)
A
i
,
c
l
i
p
(
π
θ
(
o
i
∣
q
)
π
θ
o
l
d
(
o
i
∣
q
)
,
1
−
ε
,
1
+
ε
)
A
i
)
−
β
D
K
L
(
π
θ
∥
π
r
e
f
)
)
,
\begin{aligned} \mathcal{J}_{GRPO}(\theta) & = \mathbb{E}\left[q \sim P(Q),\{o_{i}\}_{i = 1}^{G} \sim \pi_{\theta_{old}}(O | q)\right] \\ & \frac{1}{G} \sum_{i = 1}^{G}\left(min \left(\frac{\pi_{\theta}(o_{i} | q)}{\pi_{\theta_{old}}(o_{i} | q)} A_{i}, clip\left(\frac{\pi_{\theta}(o_{i} | q)}{\pi_{\theta_{old}}(o_{i} | q)}, 1 - \varepsilon, 1 + \varepsilon\right) A_{i}\right) - \beta \mathbb{D}_{KL}\left(\pi_{\theta} \| \pi_{ref}\right)\right), \end{aligned}
JGRPO(θ)=E[q∼P(Q),{oi}i=1G∼πθold(O∣q)]G1i=1∑G(min(πθold(oi∣q)πθ(oi∣q)Ai,clip(πθold(oi∣q)πθ(oi∣q),1−ε,1+ε)Ai)−βDKL(πθ∥πref)),
其中
D
K
L
(
π
θ
∥
π
r
e
f
)
=
π
r
e
f
(
o
i
∣
q
)
π
θ
(
o
i
∣
q
)
−
l
o
g
π
r
e
f
(
o
i
∣
q
)
π
θ
(
o
i
∣
q
)
−
1
\mathbb{D}_{KL}\left(\pi_{\theta} \| \pi_{ref}\right)=\frac{\pi_{ref}(o_{i} | q)}{\pi_{\theta}(o_{i} | q)} - log \frac{\pi_{ref}(o_{i} | q)}{\pi_{\theta}(o_{i} | q)} - 1
DKL(πθ∥πref)=πθ(oi∣q)πref(oi∣q)−logπθ(oi∣q)πref(oi∣q)−1,
ε
\varepsilon
ε和
β
\beta
β为超参数,
A
i
A_{i}
Ai是优势值,通过每组输出对应的一组奖励
{
r
1
,
r
2
,
⋯
,
r
G
}
\{r_{1}, r_{2}, \cdots, r_{G}\}
{r1,r2,⋯,rG}计算得出:
A
i
=
r
i
−
m
e
a
n
(
{
r
1
,
r
2
,
⋯
,
r
G
}
)
s
t
d
(
{
r
1
,
r
2
,
⋯
,
r
G
}
)
A_{i}=\frac{r_{i} - mean(\{r_{1}, r_{2}, \cdots, r_{G}\})}{std(\{r_{1}, r_{2}, \cdots, r_{G}\})}
Ai=std({r1,r2,⋯,rG})ri−mean({r1,r2,⋯,rG})
2.2.2 奖励建模
奖励是训练信号的来源,决定着强化学习的优化方向。为训练DeepSeek-R1-Zero,我们采用基于规则的奖励系统,主要包含两种奖励类型:
- 准确性奖励:准确性奖励模型用于评估响应是否正确。例如,对于有确定答案的数学问题,模型需按指定格式(如在框内)给出最终答案,以便基于规则可靠地验证其正确性。类似地,对于LeetCode问题,可利用编译器依据预定义测试用例生成反馈。
- 格式奖励:除准确性奖励模型外,我们还采用格式奖励模型,强制模型将思考过程置于“”和“”标签之间。
- 在开发DeepSeek-R1-Zero时,我们未应用基于结果或过程的神经奖励模型:因为我们发现神经奖励模型在大规模强化学习过程中可能出现奖励作弊问题,且重新训练奖励模型需要额外的训练资源,会使整个训练流程更为复杂。
2.2.3 训练模板
为训练DeepSeek-R1-Zero,我们首先设计了一个简洁的模板,引导基础模型遵循我们设定的指令。如表1所示,该模板要求DeepSeek-R1-Zero先生成推理过程,再给出最终答案。我们有意将约束限定于这种结构格式,避免任何特定内容的偏向,比如强制要求反思推理或推崇特定的解题策略,以确保能准确观察模型在强化学习过程中的自然发展。
用户 | 助手 |
---|---|
提问 | 先在脑海中思考推理过程,然后为用户提供答案。推理过程和答案分别包含在和标签内,即推理过程答案。 |
表1 DeepSeek-R1-Zero的模板。在训练过程中,prompt将被具体的推理问题替换。
2.2.4 DeepSeek-R1-Zero的性能、自我进化过程和顿悟时刻
- DeepSeek-R1-Zero的性能:图2展示了DeepSeek-R1-Zero在AIME 2024基准测试中强化学习训练期间的性能变化轨迹。如图所示,随着强化学习训练的推进,DeepSeek-R1-Zero的性能稳步提升。值得注意的是,AIME 2024上的平均单次通过率(pass@1)得分显著提高,从最初的15.6% 跃升至71.0%,达到了与OpenAI-o1-0912相当的性能水平。这一显著改进突显了我们强化学习算法随时间优化模型性能的有效性。
- DeepSeek-R1-Zero与OpenAI的o1-0912模型在各种推理相关基准测试中的比较分析:结果显示,强化学习使DeepSeek-R1-Zero在无需任何监督微调数据的情况下获得了强大的推理能力。这是一项值得关注的成果,因为它表明模型仅通过强化学习就能有效学习和泛化。此外,DeepSeek-R1-Zero的性能可通过多数投票法进一步提升。例如,在AIME基准测试中采用多数投票法时,DeepSeek-R1-Zero的性能从71.0% 提升到86.7%,超过了OpenAI-o1-0912的性能。DeepSeek-R1-Zero在使用和不使用多数投票法的情况下都能取得如此具有竞争力的性能,这突出了其强大的基础能力以及在推理任务中进一步提升的潜力。
- DeepSeek-R1-Zero的自我进化过程:DeepSeek-R1-Zero的自我进化过程生动展示了强化学习如何驱动模型自主提升推理能力。通过直接从基础模型启动强化学习,我们能够在不受监督微调阶段影响的情况下,密切监测模型的发展。这种方式清晰呈现了模型随时间的演变,尤其是在处理复杂推理任务能力方面的变化。
- 随着训练的进行,DeepSeek-R1-Zero的思考时间不断改善:这一提升并非源于外部调整,而是模型内部的自发发展。DeepSeek-R1-Zero通过利用更长的测试时计算,自然而然地获得了解决日益复杂推理任务的能力。其计算过程从生成数百个推理标记扩展到数千个,使模型能够更深入地探索和完善其思维过程。
- 在测试时计算增加的过程中,模型出现了复杂的行为:例如反思(模型回顾并重新评估之前的步骤)和探索解决问题的替代方法等行为自发出现。这些行为并非预先编程设定,而是模型与强化学习环境交互的结果。这种自发发展显著增强了DeepSeek-R1-Zero的推理能力,使其能够更高效、准确地处理更具挑战性的任务。
- DeepSeek-R1-Zero的顿悟时刻:在训练DeepSeek-R1-Zero时,观察到一个特别有趣的现象——“顿悟时刻”。如表3所示,这一时刻出现在模型的一个中间版本中。在此阶段,DeepSeek-R1-Zero学会通过重新评估初始方法,为一个问题分配更多思考时间。这一行为不仅证明了模型推理能力的提升,也是强化学习能够带来意外且复杂结果的生动例证。
- 这一时刻对模型和研究人员来说都是“顿悟时刻”:它凸显了强化学习的力量与魅力:我们无需明确教导模型如何解决问题,只需给予正确的激励,模型就能自主开发出先进的解题策略。“顿悟时刻”有力地证明了强化学习在解锁人工智能系统新智能水平方面的潜力,为未来开发更自主、自适应的模型奠定了基础。
- DeepSeek-R1-Zero的缺陷:尽管DeepSeek-R1-Zero展现出强大的推理能力,并自主发展出意外且强大的推理行为,但它也面临一些问题。例如,DeepSeek-R1-Zero存在可读性差和语言混杂等挑战。为使推理过程更具可读性并与开源社区共享,我们探索了DeepSeek-R1,这是一种利用强化学习和对人类友好的冷启动数据的方法。
2.3 DeepSeek-R1:冷启动强化学习
受DeepSeek-R1-Zero有前景的结果启发,自然产生了两个问题:1)通过引入少量高质量数据作为冷启动,能否进一步提升推理性能或加快收敛速度?2)如何训练一个对用户友好的模型,使其不仅能生成清晰连贯的思维链(CoT),还能展现出强大的通用能力?为解决这些问题,我们设计了一个训练DeepSeek-R1的流程。该流程包含四个阶段,具体如下。
2.3.1 冷启动
与DeepSeek-R1-Zero不同,为避免从基础模型进行强化学习训练时早期冷启动阶段的不稳定,对于DeepSeek-R1,我们构建并收集了少量长思维链(CoT)数据,用于对模型进行微调,作为初始的强化学习参与者。为收集此类数据,我们探索了多种方法:以长思维链作为示例进行少样本提示、直接促使模型生成带有反思和验证的详细答案、以可读格式收集DeepSeek-R1-Zero的输出,以及通过人工标注对结果进行后处理优化。
在本研究中,我们收集了数千条冷启动数据,对DeepSeek-V3-Base进行微调,作为强化学习的起点。与DeepSeek-R1-Zero相比,冷启动数据具有以下优势:
- 可读性:DeepSeek-R1-Zero的一个关键局限是其内容往往不适合阅读。回复可能混合多种语言,或缺乏markdown格式来突出答案,不便于用户查看。相比之下,在为DeepSeek-R1创建冷启动数据时,我们设计了一种可读模式,在每个回复末尾添加总结,并过滤掉对读者不友好的回复。这里,我们将输出格式定义为|特殊标记|<推理过程>|特殊标记|<总结>,其中推理过程是对查询的思维链,总结用于概括推理结果。
- 潜力:通过结合人类先验知识精心设计冷启动数据模式,我们观察到其性能优于DeepSeek-R1-Zero。我们认为迭代训练对推理模型而言是更好的方式。
2.3.2 面向推理的强化学习
在利用冷启动数据对DeepSeek-V3-Base进行微调后,我们采用与训练DeepSeek-R1-Zero相同的大规模强化学习训练过程。此阶段聚焦于提升模型的推理能力,特别是在编码、数学、科学和逻辑推理等推理密集型任务中,这些任务涉及定义明确、有清晰解决方案的问题。在训练过程中,我们发现思维链常常出现语言混杂的情况,尤其是当强化学习提示涉及多种语言时。为缓解这一问题,我们在强化学习训练中引入语言一致性奖励,其计算方式为思维链中目标语言单词的比例。尽管消融实验表明这种调整会导致模型性能略有下降,但该奖励符合人类偏好,使输出更具可读性。最后,我们通过直接将推理任务的准确性和语言一致性奖励相加,形成最终奖励。然后,我们对微调后的模型进行强化学习训练,直至其在推理任务上达到收敛。
2.3.3 拒绝采样和监督微调
当面向推理的强化学习收敛后,我们利用得到的检查点收集监督微调(SFT)数据,用于后续轮次的训练。与最初主要聚焦于推理的冷启动数据不同,此阶段纳入了其他领域的数据,以提升模型在写作、角色扮演和其他通用任务中的能力。具体而言,我们按以下方式生成数据并微调模型。
- 推理数据:我们整理推理提示,并通过对上述强化学习训练的检查点进行拒绝采样生成推理轨迹。在之前的阶段,我们仅纳入了可使用基于规则的奖励进行评估的数据。然而,在此阶段,我们通过纳入更多数据来扩展数据集,其中部分数据使用生成式奖励模型,将真实答案和模型预测输入DeepSeek-V3进行判断。此外,由于模型输出有时较为混乱且难以阅读,我们过滤掉了语言混杂的思维链、冗长的段落和代码块。对于每个提示,我们采样多个回复,仅保留正确的回复。总体而言,我们收集了约60万个与推理相关的训练样本。
- 非推理数据:对于写作、事实性问答、自我认知和翻译等非推理数据,我们采用DeepSeek-V3的流程,并复用DeepSeek-V3的部分监督微调数据集。对于某些非推理任务,我们在通过提示回答问题前,调用DeepSeek-V3生成潜在的思维链。然而,对于像“hello”这样的简单查询,我们不提供思维链作为回复。最终,我们共收集了约20万个与推理无关的训练样本。
- 我们使用上述整理的约80万个样本的数据集,对DeepSeek-V3-Base进行两轮微调。
2.3.4 全场景强化学习
为使模型更符合人类偏好,我们实施了二次强化学习阶段,旨在提升模型的实用性和无害性,同时进一步优化其推理能力。具体而言,我们结合奖励信号和多样化的提示分布来训练模型。对于推理数据,我们遵循DeepSeek-R1-Zero中概述的方法,利用基于规则的奖励在数学、代码和逻辑推理领域引导学习过程。对于一般数据,我们借助奖励模型捕捉复杂和微妙场景中的人类偏好。我们基于DeepSeek-V3的流程,采用类似的偏好对和训练提示分布。在实用性方面,我们仅关注最终总结,确保评估重点在于回复对用户的实用性和相关性,同时尽量减少对底层推理过程的干扰。在无害性方面,我们评估模型的整个回复,包括推理过程和总结,以识别并减轻生成过程中可能出现的任何潜在风险、偏差或有害内容。最终,奖励信号和多样化数据分布的整合使我们能够训练出在推理方面表现出色,同时优先考虑实用性和无害性的模型。
2.4 蒸馏:赋予小模型推理能力
为使更高效的小模型具备类似DeepSeek-R1的推理能力,我们使用通过DeepSeek-R1整理的80万个样本,直接对Qwen(Qwen, 2024b)和Llama(AI@Meta, 2024)等开源模型进行微调,具体细节见2.3.3节。我们的研究结果表明,这种直接的蒸馏方法显著提升了小模型的推理能力。这里使用的基础模型包括Qwen2.5-Math-1.5B、Qwen2.5-Math-7B、Qwen2.5-14B、Qwen2.5-32B、Llama-3.1-8B和Llama-3.3-70B-Instruct。我们选择Llama-3.3是因为其推理能力略优于Llama-3.1。
对于蒸馏模型,我们仅进行监督微调,不包含强化学习阶段,尽管加入强化学习可大幅提升模型性能。我们在此的主要目标是展示蒸馏技术的有效性,将强化学习阶段的探索留给更广泛的研究社区。
3. 实验
3.1 DeepSeek-R1评估
我们在多个基准测试中评估模型,包括MMLU(Hendrycks等人,2020)、MMLU-Redux(Gema等人,2024)、MMLU-Pro(Wang等人,2024)、C-Eval(Huang等人,2023)、CMMLU(Li等人,2023)、IFEval(Zhou等人,2023)、FRAMES(Krishna等人,2024)、GPQA Diamond(Rein等人,2023)、SimpleQA(OpenAI,2024c)、C-SimpleQA(He等人,2024)、SWE-Bench Verified(OpenAI,2024d)、Aider 1、LiveCodeBench(Jain等人,2024)(2024年8月-2025年1月)、Codeforces 2、中国国家高中数学奥林匹克竞赛(CNMO 2024)3和美国数学邀请赛2024(AIME 2024)(MAA,2024)。除标准基准测试外,我们还使用大语言模型作为评判,对模型在开放式生成任务上进行评估。具体来说,我们遵循AlpacaEval 2.0(Dubois等人,2024)和Arena-Hard(Li等人,2024)的原始配置,利用GPT-4-Turbo-1106作为评判进行两两比较。这里,我们仅将最终总结输入评估,以避免长度偏差。对于蒸馏模型,我们报告其在AIME 2024、MATH-500、GPQA Diamond、Codeforces和LiveCodeBench上的代表性结果。
评估提示
按照DeepSeek-V3的设置,对于MMLU、DROP、GPQA Diamond和SimpleQA等标准基准测试,我们使用simpleevals框架中的提示进行评估。对于MMLU-Redux,我们在零样本设置下采用Zero-Eval提示格式(Lin,2024)。对于MMLU-Pro、C-Eval和CLUE-WSC,由于原始提示是少样本的,我们将提示略微修改为零样本设置。少样本中的思维链(CoT)可能会损害DeepSeek-R1的性能。其他数据集遵循其原始评估协议,使用创建者提供的默认提示。对于代码和数学基准测试,HumanEval-Mul数据集涵盖了八种主流编程语言(Python、Java、C++、C#、JavaScript、TypeScript、PHP和Bash)。LiveCodeBench上的模型性能使用思维链格式进行评估,数据收集于2024年8月至2025年1月之间。Codeforces数据集使用10场Div.2竞赛的问题以及专家精心设计的测试用例进行评估,之后计算预期评分和参赛者的百分比。SWE-Bench verified的结果通过无代理框架(Xia等人,2024)获得。AIDER相关基准测试使用“diff”格式进行测量。DeepSeek-R1在每个基准测试中的输出最大限制为32,768个词元。
基线
我们对几个强大的基线模型进行了全面评估,包括DeepSeek-V3、Claude-Sonnet-3.5-1022、GPT-4o-0513、OpenAI-o1-mini和OpenAI-o1-1217。由于在中国内地访问OpenAI-o1-1217的API具有挑战性,我们根据官方报告来呈现其性能。对于蒸馏模型,我们还与开源模型QwQ-32B-Preview(Qwen,2024a)进行比较。
评估设置
我们将模型的最大生成长度设置为32,768个词元。我们发现,使用贪心解码来评估长输出推理模型会导致较高的重复率,并且在不同的检查点之间存在显著差异。因此,我们默认采用pass@k评估(Chen等人,2021),并使用非零温度报告pass@1。具体来说,我们使用0.6的采样温度和0.95的top-P值为每个问题生成k个响应(通常在4到64之间,具体取决于测试集的大小)。然后,pass@1的计算方式为:
[pass @ 1=\frac{1}{k} \sum_{i=1}^{k} p_{i}]
其中,
p
i
p_{i}
pi表示第i个响应的正确性。这种方法能够提供更可靠的性能估计。对于AIME 2024,我们还报告使用64个样本的共识(多数投票)结果(Wang等人,2022),记为cons@64。
基准测试(指标) | Claude-3.5-Sonnet-1022 | GPT-4o-0513 | DeepSeek-V3 | OpenAI-o1-mini | OpenAI-o1-1217 | DeepSeek-R1 | |
---|---|---|---|---|---|---|---|
架构 | MoE | MoE | |||||
#激活参数 | 370亿 | 370亿 | |||||
#总参数 | 6710亿 | 6710亿 | |||||
英文 | MMLU(Pass@1) | 88.3 | 87.2 | 88.5 | 85.2 | 91.8 | 90.8 |
MMLU-Redux(EM) | 88.9 | 88.0 | 89.1 | 86.7 | 92.9 | ||
MMLU-Pro(EM) | 78.0 | 72.6 | 75.9 | 80.3 | 84.0 | ||
DROP(3-shot F1) | 88.3 | 83.7 | 91.6 | 83.9 | 90.2 | 92.2 | |
IF-Eval(Prompt Strict) | 86.5 | 84.3 | 86.1 | 84.8 | 83.3 | ||
GPQA Diamond(Pass@1) | 65.0 | 49.9 | 59.1 | 60.0 | 75.7 | 71.5 | |
SimpleQA(Correct) | 28.4 | 38.2 | 24.9 | 7.0 | 47.0 | 30.1 | |
FRAMES(Acc) | 72.5 | 80.5 | 73.3 | 76.9 | 82.5 | ||
AlpacaEval2.0(LC-winrate) | 52.0 | 51.1 | 70.0 | 57.8 | 87.6 | ||
ArenaHard(GPT-4-1106) | 85.2 | 80.4 | 85.5 | 92.0 | 92.3 | ||
代码 | LiveCodeBench(Pass@1-CoT) | 38.9 | 32.9 | 36.2 | 53.8 | 63.4 | 65.9 |
Codeforces(Percentile) | 20.3 | 23.6 | 58.7 | 93.4 | 96.6 | 96.3 | |
Codeforces(Rating) | 717 | 759 | 1134 | 1820 | 2061 | 2029 | |
SWE Verified(Resolved) | 50.8 | 38.8 | 42.0 | 41.6 | 48.9 | 49.2 | |
Aider-Polyglot(Acc) | 45.3 | 16.0 | 49.6 | 32.9 | 61.7 | 53.3 | |
数学 | AIME 2024(Pass@1) | 16.0 | 9.3 | 39.2 | 63.6 | 79.2 | 79.8 |
MATH-500(Pass@1) | 78.3 | 74.6 | 90.2 | 90.0 | 96.4 | 97.3 | |
CNMO 2024(Pass@1) | 13.1 | 10.8 | 43.2 | 67.6 | 78.8 | ||
中文 | CLUEWSC(EM) | 85.4 | 87.9 | 90.9 | 89.9 | 92.8 | |
C-Eval(EM) | 76.7 | 76.0 | 86.5 | 68.9 | 91.8 | ||
C-SimpleQA(Correct) | 55.4 | 58.7 | 68.0 | 40.3 | 63.7 |
表4 DeepSeek-R1与其他代表性模型的比较
对于MMLU、MMLU-Pro和GPQA Diamond等以教育为导向的知识基准测试,DeepSeek-R1相比DeepSeek-V3展现出更优越的性能。这种提升主要归因于在STEM相关问题上准确率的提高,通过大规模强化学习在这些问题上取得了显著进展。此外,DeepSeek-R1在FRAMES(一个依赖长上下文的问答任务)上表现出色,展示了其强大的文档分析能力。这突出了推理模型在人工智能驱动的搜索和数据分析任务中的潜力。在事实性基准测试SimpleQA上,DeepSeek-R1的表现优于DeepSeek-V3,证明了它处理基于事实的查询的能力。在这个基准测试中,OpenAI-o1超越GPT-4o也呈现出类似的趋势。然而,DeepSeek-R1在中国简单问答基准测试中表现不如DeepSeek-V3,这主要是因为在进行安全强化学习后,它倾向于拒绝回答某些查询。如果不进行安全强化学习,DeepSeek-R1在该基准测试上的准确率可以超过70%。
DeepSeek-R1在IFEval(一个用于评估模型遵循格式指令能力的基准测试)上也取得了令人印象深刻的结果。这些改进可归因于在监督微调(SFT)和强化学习训练的最后阶段纳入了遵循指令的数据。此外,在AlpacaEval2.0和ArenaHard上,DeepSeek-R1表现卓越,表明其在写作任务和开放域问答方面的优势。它显著超越DeepSeek-V3的表现强调了大规模强化学习的泛化优势,不仅提升了推理能力,还改善了在不同领域的性能。而且,DeepSeek-R1生成的总结长度简洁,在ArenaHard上平均为689个词元,在AlpacaEval 2.0上平均为2,218个字符。这表明DeepSeek-R1在基于GPT的评估中避免了引入长度偏差,进一步巩固了其在多个任务上的稳健性。
在数学任务上,DeepSeek-R1的表现与OpenAI-o1-1217相当,大幅超越其他模型。在编码算法任务(如LiveCodeBench和Codeforces)中也观察到类似趋势,推理导向的模型在这些基准测试中占据主导地位。在面向工程的编码任务上,OpenAI-o1-1217在Aider上的表现优于DeepSeek-R1,但在SWE Verified上两者性能相当。我们认为,随着相关强化学习训练数据量的增加,DeepSeek-R1在工程性能方面将在后续版本中得到提升,因为目前相关的强化学习训练数据量仍然非常有限。
3.2 蒸馏模型评估
模型 | AIME 2024 | MATH-500 pass@1 | GPQA Diamond pass@1 | LiveCode Bench pass@1 | CodeForces rating | |
---|---|---|---|---|---|---|
pass@1 | cons@64 | |||||
GPT-4o-0513 | 9.3 | 13.4 | 74.6 | 49.9 | 32.9 | 759 |
Claude-3.5-Sonnet-1022 | 16.0 | 26.7 | 78.3 | 65.0 | 38.9 | 717 |
OpenAI-o1-mini | 63.6 | 80.0 | 90.0 | 60.0 | 53.8 | 1820 |
QwQ-32B-Preview | 50.0 | 60.0 | 90.6 | 54.5 | 41.9 | 1316 |
DeepSeek-R1-Distill-Qwen-1.5B | 28.9 | 52.7 | 83.9 | 33.8 | 16.9 | 954 |
DeepSeek-R1-Distill-Qwen-7B | 55.5 | 83.3 | 92.8 | 49.1 | 37.6 | 1189 |
DeepSeek-R1-Distill-Qwen-14B | 69.7 | 80.0 | 93.9 | 59.1 | 53.1 | 1481 |
DeepSeek-R1-Distill-Qwen-32B | 72.6 | 83.3 | 94.3 | 62.1 | 57.2 | 1691 |
DeepSeek-R1-Distill-Llama-8B | 50.4 | 80.0 | 89.1 | 49.0 | 39.6 | 1205 |
DeepSeek-R1-Distill-Llama-70B | 70.0 | 86.7 | 94.5 | 65.2 | 57.5 | 1633 |
表5 DeepSeek-R1蒸馏模型与其他可比模型在推理相关基准测试中的比较
如表5所示,通过简单地蒸馏DeepSeek-R1的输出,高效的DeepSeek-R1-7B(即DeepSeek-R1-Distill-Qwen-7B,以下简称类似)在所有指标上都超过了非推理模型,如GPT-4o-0513。DeepSeek-R1-14B在所有评估指标上都超越了QwQ-32B-Preview,而DeepSeek-R1-32B和DeepSeek-R1-70B在大多数基准测试中显著超过o1-mini。这些结果证明了蒸馏技术的强大潜力。此外,我们发现对这些蒸馏模型应用强化学习会带来进一步的显著提升。我们认为这值得进一步探索,因此在此仅展示简单的仅经过监督微调的蒸馏模型的结果。
4. 讨论
4.1 蒸馏与强化学习
在3.2节中,我们可以看到,通过对DeepSeek - R1进行蒸馏,小模型能够取得令人瞩目的成绩。然而,仍有一个问题有待解答:模型能否通过本文中讨论的大规模强化学习训练(不进行蒸馏)达到类似的性能呢?
为了回答这个问题,我们使用数学、代码和STEM领域的数据,对Qwen - 32B - Base进行大规模强化学习训练,训练步数超过10,000步,得到了DeepSeek - R1 - Zero - Qwen - 32B模型。实验结果如表6所示,经过大规模强化学习训练后,320亿参数的基础模型的性能与QwQ - 32B - Preview相当。然而,从DeepSeek - R1蒸馏得到的DeepSeek - R1 - Distill - Qwen - 32B,在所有基准测试中的表现都显著优于DeepSeek - R1 - Zero - Qwen - 32B。
模型 | AIME 2024 | MATH - 500 pass@1 | GPQA Diamond pass@1 | LiveCodeBench pass@1 | |
---|---|---|---|---|---|
pass@1 | cons@64 | ||||
QwQ - 32B - Preview | 50.0 | 60.0 | 90.6 | 54.5 | 41.9 |
DeepSeek - R1 - Zero - Qwen - 32B | 47.0 | 60.0 | 91.6 | 55.0 | 40.2 |
DeepSeek - R1 - Distill - Qwen - 32B | 72.6 | 83.3 | 94.3 | 62.1 | 57.2 |
表6 蒸馏模型与强化学习模型在推理相关基准测试中的比较
因此,我们可以得出两个结论:第一,将更强大的模型蒸馏到较小的模型中能产生优异的效果,而依赖本文中提到的大规模强化学习的小模型,不仅需要巨大的计算资源,甚至可能无法达到蒸馏模型的性能。第二,虽然蒸馏策略既经济又有效,但要突破智能的边界,可能仍然需要更强大的基础模型和大规模的强化学习。
4.2 失败尝试
在开发DeepSeek - R1的早期阶段,我们也遇到了失败和挫折。我们在此分享这些失败的经验,希望能提供一些见解,但这并不意味着这些方法无法开发出有效的推理模型。
4.2.1 过程奖励模型(PRM)
PRM是一种合理的方法,旨在引导模型找到更好的解决推理任务的途径(Lightman等人, 2023; Uesato等人, 2022; Wang等人, 2023)。然而,在实践中,PRM存在三个主要限制,可能会阻碍其最终成功。第一,在一般推理中,明确界定细粒度的步骤具有挑战性。第二,判断当前中间步骤是否正确是一项艰巨的任务。使用模型进行自动标注可能无法获得令人满意的结果,而手动标注不利于大规模应用。第三,一旦引入基于模型的PRM,不可避免地会导致奖励作弊(Gao等人, 2022),并且重新训练奖励模型需要额外的训练资源,这会使整个训练流程更加复杂。总之,虽然PRM在对模型生成的前N个响应进行重新排序或辅助引导搜索方面表现出良好的能力(Snell等人, 2024),但在我们的实验中,与大规模强化学习过程中引入的额外计算开销相比,其优势有限。
4.2.2 蒙特卡洛树搜索(MCTS)
受AlphaGo(Silver等人, 2017b)和AlphaZero(Silver等人, 2017a)的启发,我们探索使用蒙特卡洛树搜索(MCTS)来提高测试时计算的可扩展性。这种方法将答案分解为较小的部分,使模型能够系统地探索解决方案空间。为了实现这一点,我们促使模型生成多个与搜索所需的特定推理步骤相对应的标签。在训练过程中,我们首先使用收集到的提示,在预训练的值模型的引导下通过MCTS找到答案。随后,我们使用得到的问答对来训练策略模型和值模型,迭代地优化这个过程。
然而,在扩大训练规模时,这种方法遇到了几个挑战。第一,与国际象棋不同,在国际象棋中搜索空间相对明确,而令牌生成的搜索空间呈指数级增大。为了解决这个问题,我们为每个节点设置了最大扩展限制,但这可能导致模型陷入局部最优解。第二,值模型直接影响生成的质量,因为它指导搜索过程的每一步。训练一个细粒度的值模型本身就很困难,这使得模型难以通过迭代提高性能。虽然AlphaGo的核心成功在于训练一个值模型来逐步提升其性能,但由于令牌生成的复杂性,在我们的设置中很难复制这一原则。
总之,虽然MCTS在与预训练的值模型结合时可以在推理过程中提高性能,但通过自我搜索迭代提升模型性能仍然是一个重大挑战。
5. 结论、局限性和未来工作
在这项研究中,我们分享了通过强化学习提升模型推理能力的探索历程。DeepSeek-R1-Zero代表了一种不依赖冷启动数据的纯强化学习方法,在各种任务中都取得了不错的性能。DeepSeek-R1则更为强大,它借助冷启动数据以及迭代的强化学习微调。最终,DeepSeek-R1在一系列任务上达到了与OpenAI-o1-1217相当的性能。
我们进一步探索了将推理能力蒸馏到小型密集模型中。以DeepSeek-R1作为教师模型,生成80万个训练样本,对多个小型密集模型进行微调。结果很有前景:DeepSeek-R1-Distill-Qwen-1.5B在数学基准测试中表现出色,在AIME上得分28.9%,在MATH上得分83.9%,超过了GPT-4o和Claude-3.5-Sonnet。其他密集模型也取得了令人瞩目的成绩,显著超越了基于相同基础检查点的其他指令微调模型。
未来,我们计划在以下几个方向对DeepSeek-R1展开研究:
- 通用能力:目前,DeepSeek-R1在函数调用、多轮对话、复杂角色扮演和JSON输出等任务上的能力不如DeepSeek-V3。未来,我们计划探索如何利用长思维链(CoT)来提升在这些领域的任务表现。
- 语言混杂:DeepSeek-R1目前针对中文和英文进行了优化,在处理其他语言的查询时可能会出现语言混杂的问题。例如,即使查询使用的是中文和英文以外的语言,DeepSeek-R1也可能会用英文进行推理和回答。我们希望在未来的更新中解决这一限制。
- 提示工程:在评估DeepSeek-R1时,我们发现它对提示很敏感。少样本提示会持续降低其性能。因此,为了获得最佳结果,我们建议用户直接描述问题,并使用零样本设置指定输出格式。
- 软件工程任务:由于评估时间较长,影响了强化学习过程的效率,大规模强化学习在软件工程任务中尚未得到广泛应用。因此,在软件工程基准测试中,DeepSeek-R1相比DeepSeek-V3并没有显著的提升。未来版本将通过对软件工程数据实施拒绝采样,或在强化学习过程中纳入异步评估来提高效率,从而解决这一问题。
总结
“DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning”由DeepSeek-AI撰写。论文提出DeepSeek-R1-Zero和DeepSeek-R1模型,通过强化学习提升大语言模型推理能力,并探索蒸馏技术赋予小模型推理能力,在多任务上取得优异成果,为模型推理能力研究提供新思路。
- 研究背景与目标:大语言模型(LLMs)发展迅速,后训练成为提升模型性能的关键环节。OpenAI的o1系列模型通过增加思维链长度提升推理能力,但测试时缩放问题仍待解决。本文旨在探索利用纯强化学习提升语言模型推理能力,减少对监督数据的依赖。
- 研究方法
- DeepSeek-R1-Zero:基于基础模型进行强化学习,采用组相对策略优化(GRPO)算法降低训练成本。通过准确性奖励和格式奖励引导模型学习,设计特定训练模板,使模型在无监督微调下展现强大推理能力,如在AIME 2024基准测试中性能显著提升。
- DeepSeek-R1:为解决DeepSeek-R1-Zero的可读性和语言混杂问题,引入冷启动数据和多阶段训练。冷启动阶段收集长思维链数据微调模型;推理导向的强化学习阶段提升推理能力,引入语言一致性奖励解决语言混杂;拒绝采样和监督微调阶段收集多领域数据进一步优化模型;全场景强化学习阶段使模型更符合人类偏好。
- 蒸馏技术:使用DeepSeek-R1生成的数据微调开源模型,将大模型推理能力迁移到小模型,提升小模型性能,且仅进行监督微调以突出蒸馏效果。
- 实验设计与结果
- 实验设置:选用多种基准测试评估模型,包括知识、数学、编程等领域。以DeepSeek-V3、GPT-4o-0513等为基线模型,采用pass@1评估方法,设置特定采样温度和top-P值。
- 实验结果:DeepSeek-R1在推理任务表现出色,AIME 2024上Pass@1得分79.8%超OpenAI-o1-1217,MATH-500上97.3%与OpenAI-o1-1217相当。在编码任务和知识基准测试中也有优异表现。蒸馏模型同样成果显著,DeepSeek-R1-Distill-Qwen-7B在AIME 2024上得分55.5%超QwQ-32B-Preview ,多个蒸馏模型在不同基准测试中超越同类模型。
- 研究结论与展望:通过强化学习成功提升模型推理能力,DeepSeek-R1-Zero展示了纯强化学习的潜力,DeepSeek-R1性能更优,蒸馏技术有效提升小模型推理能力。未来研究将聚焦提升模型通用能力、解决语言混杂问题、优化提示工程以及提高在软件工程任务中的表现。
- 研究贡献:首次验证大语言模型推理能力可通过纯强化学习激发,为该领域发展开辟新方向;提出的训练流程有助于创建更优秀的模型;证明蒸馏技术能提升小模型性能,开源模型推动研究社区发展。
资源内是 DeepSeek_R1 论文原文。
DeepSeek_R1 论文链接:https://github.com/deepseek-ai/DeepSeek-R1/blob/main/DeepSeek_R1.pdf