DeepSeek-R1:通过强化学习激励大语言模型的推理能力

在开始之前,需要了解以下术语。

什么是强化学习?

强化学习(RL)是一种机器学习方式,人工智能通过采取行动,并根据这些行动获得奖励或惩罚来进行学习,其目标是在一段时间内最大化奖励。

举个例子:想象教一个机器人玩游戏,机器人尝试不同的动作,每做出一个好的动作(比如得分),它就能获得奖励(比如加1分);而做出不好的动作(比如失分),就会受到惩罚(比如扣1分)。随着时间推移,机器人会逐渐学会哪些动作能带来最高分,从而更擅长玩这个游戏。

什么是SFT微调?

微调模型,就是在一个已经预训练好的人工智能模型基础上,进行一些小的调整,让它在特定任务上表现得更好。这种方式不用从头开始训练模型,而是通过额外的数据对模型进行“调校”,以提升其在特定应用场景中的性能。

SFT(监督式微调)是一种特殊的微调方式,模型会在有标记的数据集上进行训练。这意味着,模型会被提供包含输入数据(如图像或文本)和正确答案(标签)的示例,它通过学习这些有标记的示例来进行预测,从而提高在特定任务上的准确性。

什么是知识蒸馏?

模型蒸馏是一种将大型复杂模型(教师模型)的知识,转移到更小、更简单模型(学生模型)的方法。

其目的是开发出一个更紧凑的模型,这个模型既能保留大型模型的大部分性能,又能在计算能力、内存使用和推理速度方面提高效率。

现在,准备好深入探讨论文的详细内容(逐节讲解)。

介绍

大型语言模型(LLM)发展迅速,正日益接近通用人工智能(AGI)—— 那种能够像人类一样思考和推理的人工智能。

近年来,大型语言模型最大的进步之一就是后训练,这是在模型初始训练完成后的一个步骤。后训练能帮助大型语言模型:

  • 更好地思考(提升推理能力);
  • 与人类价值观保持一致(减少有害输出);
  • 根据用户偏好实现个性化回复;
  • 完成上述所有任务,且无需像从头开始训练那样消耗大量计算资源。

OpenAI的o1模型取得了一项突破,它在推理时(即模型生成回复的时候)扩展了推理过程。这意味着模型在回答问题前会花更多时间思考,从而显著提升了在数学、编程、科学推理等任务上的表现。

然而,在实时使用(测试时扩展)中有效提升这种推理能力,仍然是一个有待解决的难题。

研究人员尝试过多种方法来增强推理能力,其中包括:

  • 奖励模型(评估回复质量);
  • 强化学习(RL)(通过试错来训练模型);
  • 搜索算法(蒙特卡洛树搜索、束搜索等 )。

但到目前为止,这些方法在推理能力上都还无法与OpenAI的o1模型相媲美。

本文介绍

本文探索了一种利用纯强化学习(RL)提升推理能力的新方法,这种方法不依赖监督数据(人工标记的示例)。相反,模型通过一个名为GRPO的强化学习框架自主学习。

研究人员以DeepSeek-V3-Base为基础,训练出了一个名为DeepSeek-R1-Zero的模型。经过数千次强化学习步骤,这个模型:

  • 培养出了强大的推理能力;
  • 将2024年美国数学邀请赛(AIME)的基准测试成绩从15.6% 提升到了71.0%(在多数投票的情况下,甚至能达到86.7%);
  • 达到了与OpenAI-o1–0912相当的推理能力。

不过,DeepSeek-R1-Zero也存在一些问题:

  • 可读性较差;
  • 语言混杂(难以保证回复的一致性) 。

为了解决这些问题,研究人员推出了DeepSeek-R1,它结合了以下几种方法:

  • 冷启动微调(使用少量标记数据进行训练);
  • 专注于推理的强化学习;
  • 使用高质量人工标记数据进行监督式微调(SFT)。

经过这些步骤,DeepSeek-R1在推理能力上达到了与OpenAI-o1-1217相当的水平。

最终贡献:模型蒸馏

研究人员还将DeepSeek-R1的知识蒸馏到更小的模型(如Qwen2.5-32B)中,这证明了:

  • 更大的模型能够学习到更好的推理模式;
  • 较小的模型无需复杂的强化学习训练,就能继承这些知识。

他们的140亿参数蒸馏模型甚至超越了最好的开源模型,为密集型模型的推理性能设立了新的基准。

因此,DeepSeek发布了两款主要模型:DeepSeek-R1和DeepSeek-R1-Zero。

此外,他们还发布了一些DeepSeek的蒸馏版本,主要用于模型部署。

这项研究的主要发现是,直接利用强化学习可以有效提升模型的推理能力。

方法

下面将对此进行解释。

训练DeepSeek所采用的方法,涉及一种全新的强化学习(RL)框架。该框架能够在不高度依赖监督式微调(SFT)的情况下,显著提升模型的推理能力。训练过程主要分为两个变体:DeepSeek-R1-Zero和DeepSeek-R1,之后再将模型蒸馏成更小的版本。

1. DeepSeek-R1-Zero:纯强化学习

  • 目标:使用纯强化学习训练基础模型,不使用任何监督式微调(SFT)数据。

  • 算法:采用组相对策略优化(GRPO)算法。对于每个问题,GRPO会对一组输出进行采样,计算奖励,并通过带有KL散度约束的截断目标来优化策略,以此确保更新的稳定性。

  • 奖励系统

    • 准确性奖励:针对正确答案给予基于规则的奖励(例如,对于有确定答案的数学问题)。
    • 格式奖励:确保模型在<think></think>标签内构建推理过程。
    • 自我进化:随着时间推移,模型能够自主提升推理能力,在无需显式编程的情况下,展现出反思和采用替代解题策略等行为。

2. DeepSeek-R1:冷启动强化学习

  • 目标:通过引入少量高质量的冷启动数据,提升推理性能和回复的可读性。

冷启动数据是指少量高质量的监督数据,用于初始化或 “启动” 机器学习模型的训练,尤其适用于模型从头开始训练或转向新任务的场景。

冷启动数据就像是一颗 “种子”,用来初始化模型,让模型对任务有一个基本的理解,确保强化学习过程更加顺畅、高效。

  • 冷启动:使用数千个长思维链(CoT)示例对基础模型进行微调,以此提高回复的可读性和推理质量。
  • 强化学习训练:将GRPO应用于微调后的模型,重点关注推理密集型任务(如数学、编程、逻辑)。同时引入语言一致性奖励机制,减少语言混杂现象,提高回复的可读性。
  • 拒绝采样和监督式微调:强化学习收敛后,通过拒绝采样收集高质量的推理和非推理数据(如写作、角色扮演相关数据),并利用这些高质量数据对模型进行微调,使其能够处理通用任务。

拒绝采样是一种通过过滤掉模型输出中的低质量或错误结果,来生成高质量数据的技术。其工作流程如下:

  1. 对于给定的输入(如推理问题),模型生成多个回复;
  2. 使用奖励函数或基于规则的标准(如正确性、可读性或与人类偏好的一致性)对每个回复进行评估;
  3. 仅保留最佳回复(如奖励最高或符合特定标准的回复),其余回复则被舍弃。
  • 第二轮强化学习阶段:进行第二轮强化学习,使模型更符合人类偏好,在保持强大推理能力的同时,提高回复的实用性和无害性。

为什么DeepSeek-R1需要进行第二轮强化学习训练?

对DeepSeek-R1进行第二轮强化学习(RL)训练,是为了进一步优化模型性能,使其更符合人类偏好。具体原因如下:

在完成初始强化学习训练后,模型在推理任务(如数学、编程、逻辑)方面已经表现出色。第一轮强化学习主要采用基于规则的奖励机制(如数学问题的准确性奖励 )。

然而,在写作、角色扮演和事实问答等通用任务方面,模型仍有待提升。

第二轮强化学习旨在扩展模型除推理之外的能力,使其在更多场景中发挥作用。在这一阶段,引入了奖励模型,用于捕捉人类在复杂、微妙场景中的偏好(如回复的帮助性、无害性、连贯性)。

3. 蒸馏:将推理能力转移到更小的模型

  • 目标:将DeepSeek-R1的推理能力蒸馏到更小、更高效的模型中。
  • 方法:使用DeepSeek-R1整理的数据集,对开源模型(如Qwen、Llama)进行微调。
  • 结果:较小模型的推理能力得到显著提升,证明了蒸馏方法的有效性。

指标和性能

这些模型,尤其是DeepSeek-R1,在各种基准测试中击败了一些当前最优的大语言模型(SOTA LLMs)。由于之前已经讨论过相关内容,这里就不再赘述。

讨论

本文的这部分内容探讨了一些未成功的尝试,以及蒸馏为何是实现可扩展解决方案的有效途径:

  • 对于较小模型,蒸馏优于强化学习:从大型模型中提取知识,比使用大规模强化学习训练小型模型更高效、更经济。
  • 强化学习资源消耗大,但可能是突破的关键:尽管蒸馏方法有效,但要突破当前的限制,可能仍需要更强大的基础模型和大规模的强化学习。
  • PRM和MCTS面临重大挑战:PRM(强化学习中的过程奖励模型)和MCTS(蒙特卡洛树搜索,强化学习的一种)虽展现出潜力,但最终受限于可扩展性、计算成本和令牌生成的复杂性。

结论

通过强化学习增强推理能力

  • DeepSeek-R1-Zero使用纯强化学习(GRPO),无需冷启动数据,就取得了出色的性能。
  • DeepSeek-R1借助冷启动数据和强化学习微调,达到了与OpenAI-o1–1217相当的性能。

蒸馏成功

DeepSeek-R1的推理能力被蒸馏到更小的模型(如Qwen-1.5B)中,这些小模型在数学基准测试中的表现优于GPT-4o和Claude-3.5-Sonnet。

未来研究方向

  • 通用能力:提升在函数调用、多轮交互和复杂任务方面的性能。
  • 语言混合:解决非英文/中文查询中的语言混合问题。
  • 提示工程:优化零样本提示,提高模型性能。
  • 软件工程:应用拒绝采样或异步评估,提升软件相关任务的效率。

近日热文:全网最全的神经网络数学原理(代码和公式)直观解释
欢迎关注知乎和公众号的专栏内容
LLM架构专栏
知乎LLM专栏
知乎【柏企
公众号【柏企科技说】【柏企阅文