您现在的位置是:首页 >学无止境 >DeepSeek-R1: 通过强化学习激励大型语言模型的推理能力网站首页学无止境
DeepSeek-R1: 通过强化学习激励大型语言模型的推理能力
简介DeepSeek-R1: 通过强化学习激励大型语言模型的推理能力
DeepSeek-R1: 通过强化学习激励大型语言模型的推理能力
摘要:
我们介绍了第一代推理模型 DeepSeek-R1-Zero 和 DeepSeek-R1。DeepSeek-R1-Zero 是一个通过大规模强化学习(RL)训练的模型,没有经过监督式微调(SFT)作为初步步骤,展示了显著的推理能力。通过 RL,DeepSeek-R1-Zero 自然地展现了许多强大且有趣的推理行为。然而,它面临可读性差和语言混合等挑战。为了解决这些问题并进一步提升推理性能,我们引入了 DeepSeek-R1,它在 RL 之前结合了多阶段训练和冷启动数据。DeepSeek-R1 在推理任务上的表现与 OpenAI-o1-1217 相当。为了支持研究社区,我们开源了 DeepSeek-R1-Zero、DeepSeek-R1 以及从 DeepSeek-R1 基于 Qwen 和 Llama 蒸馏出的六个密集模型(1.5B、7B、8B、14B、32B、70B)。
- 引言
近年来,大型语言模型(LLMs)经历了快速迭代和演变,逐渐缩小了与人工通用智能(AGI)的差距。最近,后训练已成为完整训练流程中的一个重要组成部分。它已被证明可以在推理任务上提高准确性,符合社会价值观,并适应用户偏好,同时相对于预训练所需的计算资源较少。在推理能力方面,OpenAI 的 o1 系列模型首次引入了通过增加链式推理过程的长度来进行推理时的扩展。这种方法在数学、编程和科学推理等各种推理任务上取得了显著改进。然而,有效的测试时扩展仍然是研究社区的一个未解之决的问题。此前的工作探索了多种方法,包括基于过程的奖励模型、强化学习以及蒙特卡洛树搜索和束搜索等搜索算法。然而,这些方法都没有达到与 OpenAI 的 o1 系列模型相当的一般推理性能。
在本文中,我们迈出了通过纯强化学习(RL)改进语言模型推理能力的第一步。我们的目标是探索 LLMs 在没有任何监督数据的情况下通过纯 RL 过程发展推理能力的潜力,重点关注它们的自我进化。具体来说,我们使用 DeepSeek-V3-Base 作为基础模型,并采用 GRPO 作为 RL 框架来提高模型在推理任务上的性能。在训练过程中,DeepSeek-R1-Zero 自然地展现了许多强大且有趣的推理行为。经过数千步 RL 训练后,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 一样进行面向推理的 RL。当 RL 过程接近收敛时,我们通过 RL 检查点的拒绝采样创建新的 SFT 数据,并结合 DeepSeek-V3 在写作、事实问答和自我认知等领域的监督数据,然后重新训练 DeepSeek-V3-Base 模型。经过新数据的微调后,检查点经历了额外的 RL 过程,考虑了所有场景的提示。经过这些步骤后,我们获得了称为 DeepSeek-R1 的检查点,其性能与 OpenAI-o1-1217 相当。
我们还探索了从 DeepSeek-R1 蒸馏到更小的密集模型。使用 Qwen2.5-32B 作为基础模型,直接从 DeepSeek-R1 蒸馏出的模型在推理能力上优于在它上面应用 RL 的模型。这表明大型基础模型发现的推理模式对于提高推理能力至关重要。我们开源了基于 Qwen 和 Llama 系列的蒸馏模型。值得注意的是,我们的蒸馏 14B 模型在推理基准测试中大幅超越了最先进的开源 QwQ-32B-Preview,而蒸馏的 32B 和 70B 模型在密集模型中创下了推理基准测试的新纪录。 - 方法
2.1 概述
以往的工作严重依赖大量的监督数据来提高模型性能。在本研究中,我们证明了即使不使用监督式微调(SFT)作为冷启动,通过大规模强化学习(RL)也可以显著提高推理能力。此外,通过包含少量冷启动数据,性能可以进一步提升。在以下部分中,我们介绍:(1)DeepSeek-R1-Zero,它在没有任何 SFT 数据的情况下直接对基础模型应用 RL,以及(2)DeepSeek-R1,它从经过数千个长链推理(CoT)示例微调的检查点开始应用 RL。(3)从 DeepSeek-R1 蒸馏推理能力到小型密集模型。
2.2 DeepSeek-R1-Zero:基础模型上的强化学习
强化学习在推理任务中已被证明具有显著效果,但这些工作严重依赖于耗时收集的监督数据。在本节中,我们探索 LLMs 在没有任何监督数据的情况下通过纯强化学习过程发展推理能力的潜力,重点关注它们的自我进化。我们首先简要介绍我们的 RL 算法,然后展示一些令人兴奋的结果,希望这能为社区提供有价值的见解。
2.2.1 强化学习算法
为了节省 RL 的训练成本,我们采用了组相对策略优化(GRPO),它放弃了与策略模型大小相同的评论家模型,而是从组分数中估计基线。具体来说,对于每个问题 𝑖,GRPO 从旧策略 𝜋𝑜𝑙𝑑 中采样一组输出 {𝑖1, 𝑖2, · · · , 𝑖𝐴},然后通过最大化以下目标来优化策略模型 𝜋:
J(𝜋)=E[i∼A,iiAi=1∼𝜋old(i∣i)]A1∑i=1Amin(𝜋old(i∣i)𝜋(i∣i),1−𝜀,1+𝜀)Ai−𝛽D(𝜋∣∣𝜋old)
其中,𝐴𝑖 是优势,使用每个组内输出对应的一组奖励 {𝑖1, 𝑖2, . . . , 𝑖𝐴} 计算:
Ai=ii−mean(i1,i2,…,iA)
2.2.2 奖励建模
奖励是训练信号的来源,决定了 RL 的优化方向。为了训练 DeepSeek-R1-Zero,我们采用了基于规则的奖励系统,主要包括两种类型的奖励:
准确性奖励:评估响应是否正确。例如,在数学问题中,模型被要求以指定格式提供最终答案,从而实现可靠的基于规则的正确性验证。
格式奖励:除了准确性奖励模型外,我们还采用了一个格式奖励模型,强制模型将其思考过程放在‘’和’’标签之间。
我们没有在 DeepSeek-R1-Zero 的开发中应用结果或过程神经奖励模型,因为我们发现神经奖励模型可能在大规模强化学习过程中遭受奖励黑客攻击,重新训练奖励模型需要额外的训练资源,并使整个训练流程复杂化。
2.2.3 训练模板
为了训练 DeepSeek-R1-Zero,我们设计了一个简单的模板,指导基础模型遵循我们指定的指令。如表 1 所示,该模板要求 DeepSeek-R1-Zero 首先产生推理过程,然后是最终答案。我们有意将约束限制在这种结构格式上,避免任何内容特定的偏见,例如强制反思推理或促进特定的解决问题策略,以确保我们可以准确观察模型在 RL 过程中的自然进展。
2.2.4 DeepSeek-R1-Zero 的性能、自我进化过程和顿悟时刻
DeepSeek-R1-Zero 的性能如图 2 所示,DeepSeek-R1-Zero 在 AIME 2024 基准测试中的表现随着 RL 训练过程的推进而稳步提升。值得注意的是,AIME 2024 的平均 pass@1 分数从初始的 15.6% 显著提高到 71.0%,达到了与 OpenAI-o1-0912 相当的性能水平。这一显著改进突显了我们的 RL 算法在优化模型性能方面的有效性。
DeepSeek-R1-Zero 的自我进化过程是 RL 如何驱动模型自主提高推理能力的一个有趣展示。通过直接从基础模型开始 RL,我们可以密切监控模型的进展,而不受监督式微调阶段的影响。这种方法提供了模型随时间演变的清晰视图,特别是在其处理复杂推理任务的能力方面。
DeepSeek-R1-Zero 的一个最显著的方面是,随着测试时计算的增加,出现了复杂行为。例如,模型会自发地进行反思——重新审视和评估其之前的步骤——并探索解决问题的替代方法。这些行为不是显式编程的,而是模型与强化学习环境交互的结果。这种自发发展显著增强了 DeepSeek-R1-Zero 的推理能力,使其能够更高效、更准确地处理更具挑战性的任务。
在 DeepSeek-R1-Zero 的训练过程中,观察到一个特别有趣的“顿悟时刻”。这一时刻发生在模型的一个中间版本中,DeepSeek-R1-Zero 学会通过重新评估其初始方法为问题分配更多的思考时间。这种行为不仅证明了模型日益增长的推理能力,也是强化学习如何导致意外且复杂结果的一个引人入胜的例子。
2.3 DeepSeek-R1:具有冷启动的强化学习
受 DeepSeek-R1-Zero 的有希望的结果启发,自然会产生两个问题:(1)通过纳入少量高质量数据作为冷启动,是否可以进一步提高推理性能或加速收敛?(2)如何训练一个用户友好的模型,不仅产生清晰连贯的推理链(CoT),还展示强大的通用能力?为了解决这些问题,我们设计了一个训练 DeepSeek-R1 的流程,该流程包括四个阶段,如下所述。
2.3.1 冷启动
与 DeepSeek-R1-Zero 不同,为防止从基础模型开始的 RL 训练的早期不稳定冷启动阶段,对于 DeepSeek-R1,我们构建并收集了少量长 CoT 数据,用于微调模型作为 RL 的初始演员。为收集此类数据,我们探索了多种方法:使用少量示例提示,直接提示模型生成带有反思和验证的详细答案,收集 DeepSeek-R1-Zero 的可读格式输出,并通过人工注释者进行后处理来完善结果。
在本工作中,我们收集了数千个冷启动数据,用于微调 DeepSeek-V3-Base 作为 RL 的起点。与 DeepSeek-R1-Zero 相比,冷启动数据的优势包括:
可读性:DeepSeek-R1-Zero 的一个关键限制是其内容通常不适合阅读。响应可能混合多种语言或缺乏用于突出答案的标记格式。相比之下,在为 DeepSeek-R1 创建冷启动数据时,我们设计了一个可读模式,包括每个响应末尾的摘要,并过滤掉不用户友好的响应。这里,我们定义输出格式为 |special_token|<reasoning_process>|special_token|,其中推理过程是查询的 CoT,摘要用于总结推理结果。
潜力:通过使用人类先验精心设计冷启动数据的模式,我们观察到与 DeepSeek-R1-Zero 相比性能更好。我们相信迭代训练是推理模型的更好方法。
2.3.2 面向推理的强化学习
在用冷启动数据微调 DeepSeek-V3-Base 后,我们应用了与 DeepSeek-R1-Zero 相同的大规模强化学习训练过程。这一阶段重点提升模型在推理密集型任务上的推理能力,如涉及明确定义问题和清晰解决方案的编码、数学、科学和逻辑推理。在训练过程中,我们观察到 CoT 经常出现语言混合,特别是当 RL 提示涉及多种语言时。为减轻语言混合问题,我们在 RL 训练中引入了语言一致性奖励,计算为 CoT 中目标语言单词的比例。尽管消融实验表明这种对齐导致模型性能略有下降,但这一奖励符合人类偏好,使其更易读。最后,我们通过直接求和将推理任务的准确性和语言一致性奖励结合起来,形成最终奖励。然后我们在微调后的模型上应用 RL 训练,直到其在推理任务上收敛。
2.3.3 拒绝采样和监督式微调
当面向推理的 RL 收敛时,我们利用所得检查点为下一轮收集 SFT(监督式微调)数据。与主要关注推理的初始冷启动数据不同,此阶段纳入了其他领域的数据,以增强模型在写作、角色扮演和其他通用任务上的能力。具体来说,我们按以下方式生成数据并微调模型。
推理数据:我们策划推理提示并通过从上述 RL 训练的检查点进行拒绝采样生成推理轨迹。在之前的阶段,我们仅纳入可以使用基于规则的奖励进行评估的数据。然而,在此阶段,我们通过纳入一些使用生成奖励模型的数据来扩展数据集,将 ground-truth 和模型预测输入 DeepSeek-V3 进行判断。此外,由于模型输出有时混乱且难以阅读,我们过滤掉了混合语言、长段落和代码块的推理链。对于每个提示,我们采样多个响应并仅保留正确的响应。总共,我们收集了约 600k 个与推理相关的训练样本。
非推理数据:对于写作、事实问答、自我认知和翻译等非推理数据,我们采用 DeepSeek-V3 流程并重用了 DeepSeek-V3 的部分 SFT 数据集。对于某些非推理任务,我们通过提示 DeepSeek-V3 在回答问题之前生成潜在的推理链。然而,对于更简单的查询,例如“hello”,我们不在响应中提供 CoT。最终,我们收集了总共约 200k 个与推理无关的训练样本。
我们使用上述策划的约 800k 个样本的数据集对 DeepSeek-V3-Base 进行了两个周期的微调。
2.3.4 面向所有场景的强化学习
为使模型更符合人类偏好,我们实施了一个次级强化学习阶段,旨在提升模型的有用性和无害性,同时完善其推理能力。具体来说,我们使用奖励信号和多样化的提示分布来训练模型。对于推理数据,我们遵循 DeepSeek-R1-Zero 中概述的方法,使用基于规则的奖励来指导数学、代码和逻辑推理领域的学习过程。对于通用数据,我们诉诸奖励模型以捕捉复杂且微妙场景中的人类偏好。我们基于 DeepSeek-V3 流程,采用了类似的偏好对和训练提示分布。对于有用性,我们仅关注最终摘要,确保评估强调响应对用户的实用性和相关性,同时最小化对底层推理过程的干扰。对于无害性,我们评估模型的整个响应,包括推理过程和摘要,以识别和减轻在生成过程中可能出现的任何潜在风险、偏见或有害内容。最终,奖励信号和多样化数据分布的结合使我们能够训练出在推理方面表现出色且优先考虑有用性和无害性的模型。
2.4 蒸馏:赋予小型模型推理能力
为使更高效的小型模型具备 DeepSeek-R1 的推理能力,我们直接使用 DeepSeek-R1 策划的 800k 个样本对开源模型 Qwen 和 Llama 进行微调,如第 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。
对于蒸馏模型,我们仅应用了 SFT,未包括 RL 阶段,尽管纳入 RL 可能会大幅提升模型性能。我们的主要目标是证明蒸馏技术的有效性,将 RL 阶段的探索留给更广泛的研究社区。 - 实验
3.1 DeepSeek-R1 评估
在教育导向的知识基准测试(如 MMLU、MMLU-Pro 和 GPQA Diamond)上,DeepSeek-R1 展示了优于 DeepSeek-V3 的性能。这一改进主要归因于通过大规模强化学习在 STEM 相关问题上取得的显著增益。此外,DeepSeek-R1 在 FRAMES 上表现出色,这是一个依赖长上下文的 QA 任务,展示了其强大的文档分析能力。这突显了推理模型在 AI 驱动的搜索和数据分析任务中的潜力。在事实基准测试 SimpleQA 上,DeepSeek-R1 优于 DeepSeek-V3,展示了其处理基于事实的查询的能力。类似的趋势是 OpenAI-o1 在此基准测试中超越了 GPT-4o。然而,DeepSeek-R1 在中文 SimpleQA 基准测试中的表现不如 DeepSeek-V3,主要是因为在安全 RL 之后,DeepSeek-R1 倾向于拒绝回答某些查询。没有安全 RL,DeepSeek-R1 可以实现超过 70% 的准确率。
DeepSeek-R1 在 IF-Eval 上也取得了令人印象深刻的结果,这是一个评估模型遵循格式指令能力的基准测试。这些改进可以归因于在监督式微调(SFT)和 RL 训练的最后阶段纳入了遵循指令的数据。此外,在 AlpacaEval2.0 和 ArenaHard 上观察到显著性能,表明 DeepSeek-R1 在写作任务和开放域问答方面的优势。其显著超越 DeepSeek-V3 强调了大规模 RL 的泛化优势,这不仅提升了推理能力,还提高了在不同领域的性能。此外,DeepSeek-R1 生成的摘要长度简洁,在 ArenaHard 上平均为 689 个 token,在 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 的工程性能将在下一个版本中得到改进,因为目前相关的 RL 训练数据量仍然非常有限。
3.2 蒸馏模型评估
如表 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。这些结果展示了蒸馏的强大潜力。此外,我们发现对这些蒸馏模型应用 RL 会带来进一步的显著提升。我们认为这值得进一步探索,因此这里仅呈现简单的 SFT 蒸馏模型的结果。 - 讨论
4.1 蒸馏与强化学习
在第 3.2 节中,我们可以看到,通过蒸馏 DeepSeek-R1,小型模型可以取得令人印象深刻的结果。然而,仍有一个问题:模型是否可以通过在本文中讨论的大规模 RL 训练而无需蒸馏就能实现相当的性能?
为回答这个问题,我们在 Qwen-32B-Base 上进行了大规模 RL 训练,使用数学、代码和 STEM 数据,训练超过 10K 步,得到了 DeepSeek-R1-Zero-Qwen-32B。实验结果如表 6 所示,经过大规模 RL 训练的 32B 基模型在性能上与 QwQ-32B-Preview 相当。然而,从 DeepSeek-R1 蒸馏得到的 DeepSeek-R1-Distill-Qwen-32B 在所有基准测试中显著优于 DeepSeek-R1-Zero-Qwen-32B。
因此,我们可以得出两个结论:首先,将更强大的模型蒸馏到更小的模型中可以取得出色的结果,而依赖本文中讨论的大规模 RL 的小型模型需要巨大的计算能力,甚至可能无法实现蒸馏的性能。其次,尽管蒸馏策略既经济又有效,但要超越智能的边界,可能仍需要更强大的基模型和更大规模的强化学习。
4.2 不成功的尝试
在开发 DeepSeek-R1 的早期阶段,我们也遇到了失败和挫折。我们在此分享我们的失败经验,以提供一些见解,但这并不意味着这些方法无法开发有效的推理模型。
过程奖励模型(PRM):PRM 是引导模型采用更好方法解决推理任务的合理方法。然而,在实践中,PRM 有三个主要限制,可能会阻碍其最终成功。首先,很难明确定义一般推理中的细粒度步骤。其次,确定当前中间步骤是否正确是一项具有挑战性的任务。使用模型进行自动化注释可能无法取得令人满意的结果,而人工注释不利于规模化。第三,一旦引入基于模型的 PRM,就不可避免地会导致奖励黑客攻击,重新训练奖励模型需要额外的训练资源,并使整个训练流程复杂化。总之,尽管 PRM 在重新排序模型生成的 top-N 响应或协助引导搜索方面表现出良好的能力,但其优势有限,与在大规模强化学习过程中引入的额外计算开销相比,我们的实验结果并不理想。
蒙特卡洛树搜索(MCTS):受 AlphaGo 和 AlphaZero 的启发,我们探索了使用 MCTS 来增强测试时的计算可扩展性。这种方法涉及将答案分解为更小的部分,以允许模型系统地探索解决方案空间。为此,我们提示模型生成与搜索所需的特定推理步骤对应的多个标签。在训练中,我们首先使用收集的提示通过由预训练的价值模型引导的 MCTS 找到答案。随后,我们使用生成的问答对来训练演员模型和价值模型,迭代完善过程。
然而,当扩大训练规模时,这种方法遇到了几个挑战。首先,与棋类游戏的搜索空间相对明确定义不同,令牌生成呈现出呈指数级增长的搜索空间。为解决此问题,我们为每个节点设置了最大扩展限制,但这可能导致模型陷入局部最优解。其次,价值模型直接影响生成质量,因为它指导搜索过程的每一步。训练细粒度的价值模型本质上是困难的,这使得模型难以迭代改进。尽管 AlphaGo 的核心成功依赖于训练价值模型以逐步提升其性能,但由于令牌生成的复杂性,这一原则在我们的设置中难以复制。
总之,虽然在与预训练的价值模型配对时,MCTS 可以在推理过程中提高性能,但通过自我搜索迭代提升模型性能仍然是一个重大挑战。 - 结论、局限性和未来工作
在本工作中,我们分享了通过强化学习增强模型推理能力的历程。DeepSeek-R1-Zero 代表了一种纯 RL 方法,无需依赖冷启动数据,即可在各种任务上实现强大的性能。DeepSeek-R1 更加强大,利用冷启动数据和迭代 RL 微调。最终,DeepSeek-R1 在一系列任务上的性能与 OpenAI-o1-1217 相当。
我们还探索了将推理能力蒸馏到小型密集模型中。我们使用 DeepSeek-R1 作为教师模型生成 800K 训练样本,并微调了几个小型密集模型。结果是令人鼓舞的:DeepSeek-R1-Distill-Qwen-1.5B 在数学基准测试中超越了 GPT-4o 和 Claude-3.5-Sonnet,在 AIME 上取得了 28.9% 的成绩,在 MATH 上取得了 83.9% 的成绩。其他密集模型也取得了令人印象深刻的结果,显著超越了基于相同底层检查点的其他指令调优模型。
未来,我们计划在以下方向上对 DeepSeek-R1 进行研究:
通用能力:目前,DeepSeek-R1 在函数调用、多轮、复杂角色扮演和 JSON 输出等任务上的能力仍不及 DeepSeek-V3。未来,我们计划探索如何利用长 CoT 来增强这些领域的能力。
语言混合:DeepSeek-R1 当前针对中文和英文进行了优化,这可能导致在处理其他语言的查询时出现语言混合问题。例如,即使查询不是英文或中文,DeepSeek-R1 也可能使用英文进行推理和响应。我们计划在未来的更新中解决这一限制。
提示工程:在评估 DeepSeek-R1 时,我们观察到它对提示非常敏感。少量示例提示会持续降低其性能。因此,我们建议用户直接描述问题并使用零样本设置指定输出格式,以获得最佳结果。
软件工程任务:由于评估时间长,影响 RL 过程的效率,大规模 RL 尚未在软件工程任务中得到广泛应用。因此,DeepSeek-R1 在软件工程基准测试上尚未展现出对 DeepSeek-V3 的巨大改进。未来版本将通过在软件工程数据上实施拒绝采样或在 RL 过程中纳入异步评估来解决这一问题,以提高效率。
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。





U8W/U8W-Mini使用与常见问题解决
QT多线程的5种用法,通过使用线程解决UI主界面的耗时操作代码,防止界面卡死。...
stm32使用HAL库配置串口中断收发数据(保姆级教程)
分享几个国内免费的ChatGPT镜像网址(亲测有效)
Allegro16.6差分等长设置及走线总结