专栏名称: 机器学习算法与自然语言处理
一个有情怀的公众号。机器学习、自然语言处理、算法等知识集中营、期待与你相遇~
51好读  ›  专栏  ›  机器学习算法与自然语言处理

一文理解推理大模型-Understanding Reasoning LLMs

机器学习算法与自然语言处理  · 公众号  ·  · 2025-02-07 09:00

正文


MLNLP 社区是国内外知名的机器学习与自然语言处理社区,受众覆盖国内外NLP硕博生、高校老师以及企业研究人员。
社区的愿景 是促进国内外自然语言处理,机器学习学术界、产业界和广大爱好者之间的交流和进步,特别是初学者同学们的进步。
来源 | NLP工作站
作者 | 刘聪NLP

今天刷到Sebastian的blog,《Understanding Reasoning LLMs》,特此翻译一下,带给大家。

原文: https://magazine.sebastianraschka.com/p/understanding-reasoning-llms

概述:

  • 解释“推理模型”的含义

  • 讨论推理模型的优缺点

  • 概述DeepSeek R1的训练方法

  • 描述构建和改进推理模型的四种主要方法

  • 分享DeepSeek V3和R1发布后的LLM领域的看法

  • 提供在小成本下训练推理模型的技巧

如何定义“推理模型”?

如果你在AI(或机器学习)领域工作,你可能对模糊且备受争议的定义很熟悉。“推理模型”这个术语也不例外。最终,会有人在论文中正式定义它,但很快就会在下一篇论文中被重新定义~
在本文中,我将“推理”定义为回答需要复杂、多步骤生成并包含中间步骤的问题的过程。例如,像“法国的首都是哪里?”这样的事实问答不涉及推理。相反,像“如果一列火车以每小时60英里的速度行驶3小时,它能走多远?”这样的问题需要一些简单的推理。例如,它需要认识到距离、速度和时间之间的关系,然后才能得出答案。
一个普通的LLM可能只提供一个短的答案(如左图所示),而推理模型通常包括显示部分思维过程的中间步骤(请注意,许多未专门为推理任务训练的LLMs也可以在其答案中提供中间推理步骤)
大多数LLMs都具备基本的推理能力,能够回答像“如果一列火车以每小时60英里的速度行驶3小时,它能走多远?”这样的问题。所以,当我们提到推理模型时,指的是那些在更复杂的推理任务(如解决谜题、谜语和数学证明)中表现出色的LLMs。
此外,现在大多数被称为推理模型的LLMs在其回复中都包含一个“思考”或“思维”过程。
而推理模型的中间步骤可以以两种方式出现,第一种可能明确地包含在回复中,如图所示。第二种,如OpenAI的o1等一些推理LLMs,会运行多个迭代的中间步骤,且不显示给用户。
"推理"在两个不同的层次上使用:1)处理输入并通过多个中间步骤生成,2)在响应中向用户提供某种推理

何时使用推理模型?

推理模型旨在擅长解决复杂任务,如解决谜题、高级数学问题和具有挑战性的编程任务。然而,对于简单的任务(如摘要、翻译或基于知识的问题回答)并不是必需的。如果将推理模型用于所有任务,会导致效率低下且昂贵,并且有时由于“过度思考”而更容易出错。推理模型的推理模型的优劣势如下图所示,我们需要为任务选择合适的工具或LLM。
推理模型的优劣势

概述 DeepSeek 训练流程

DeepSeek发布了三个不同的变体:DeepSeek-R1-Zero、DeepSeek-R1和DeepSeek-R1-Distill。
模型的训练过程总结,如下图所示。
DeepSeek三种不同推理模型的训练过程
  • DeepSeek-R1-Zero:在DeepSeek-V3基模基础上,直接应用强化学习,不使用任何SFT数据进行冷启动。
  • DeepSeek-R1:在DeepSeek-V3基模基础上,先通过额外的SFT阶段和进一步的RL训练进一步精炼,改进了“冷启动”的R1-Zero模型。
  • DeepSeek-R1-Distill*:使用前面步骤中生成的SFT数据,对Qwen和Llama模型进行了微调,以增强其推理能力,纯SFT。

四种构建和改进推理模型的方法

概述目前用于增强LLMs推理能力和构建专门推理模型(如DeepSeek-R1、OpenAI的o1和o3等)的关键技术。
注意:o1和o3的确切工作原理尚不清楚,纯猜测。

Inference-time scaling

推理时间扩展,指的是在推理时增加计算资源以提高输出质量。
一个粗略的类比是,人类在有更多时间思考复杂问题时往往会生成更好的回答。同样,我们可以应用一些技术,鼓励LLM在生成答案时“多思考”。
一个直接的推理时扩展方法是提示工程。一个经典例子是思维链(CoT)提示,在输入提示中加入“逐步思考”之类的短语。鼓励模型生成中间推理步骤,而不是直接跳到最终答案,会在更复杂的问题上通常(但不总是)会导致更准确的结果。
来自https://arxiv.org/abs/2205.11916
上述CoT方法可以被视为推理时间扩展,因为它通过生成更多的输出标记使推理变得更昂贵。
另一种推理时间扩展的方法是使用投票和搜索策略。一个简单的例子是多数投票,让LLM生成多个答案,然后通过多数投票选择正确答案。同样,可以使用束搜索和其他搜索算法来生成更好的回答。
想了解更多关于这些不同策略的详细信息可阅读《Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters》文章。
不同的基于搜索的方法依赖于基于过程-奖励的模型来选择最佳答案

纯强化学习

DeepSeek R1论文中的一大亮点是,发现推理可以从纯的强化学习(RL)中学习。与典型的RL方法(在RL之前先监督微调SFT)不同,DeepSeek-R1-Zero仅使用强化学习进行训练,没有初始的SFT阶段,也就是为什么其为“纯”的RL。,如下图所示。
DeepSeek-R1-Zero模型的训练过程
对于奖励,没有使用基于人类偏好的训练奖励模型,而是使用了两种类型的奖励:准确性和格式奖励。
  • 准确性奖励,使用LeetCode编译器验证编码答案,并使用确定性系统评估数学回答。
  • 格式奖励,依赖于一个LLM裁判,以确保回答遵循预期的格式,例如将推理步骤放在 标签内。
令人惊讶的是,这种方法是可以让LLM具备更强推理能力的。尽管R1-Zero不是表现最好的推理模型,但通过生成中间“思考”步骤展示了推理能力,如上图所示。证实了使用纯粹的RL训练推理模型是可能的,DeepSeek团队是第一个展示(或者至少是发表)这种方法的团队。
来自DeepSeek R1技术报告

监督微调和强化学习

实际上在RL之前包含一个SFT阶段是很常见的。OpenAI的o1很可能是使用类似的方法训练的。
DeepSeek-R1模型的训练过程
如上图所示,使用DeepSeek-R1-Zero生成了所谓的“冷启动”SFT数据。
首先使用这些“冷启动”SFT数据,通过指令微调训练了模型;然后再经过一个RL阶段,在这个RL阶段中,不仅保留了DeepSeek-R1-Zero的RL过程中使用的准确性和格式奖励,还增加了一个一致性奖励,以防止语言混合,在回答中切换多种语言情况。
在RL阶段之后是又一轮的SFT数据收集,使用最新的模型checkpoint生成了600k 个思维链(CoT)SFT样本,同时使用DeepSeek-V3基础模型创建了额外的200K个基于知识的SFT样本。再经过另一轮RL,使用基于规则的方法为数学和编码问题提供准确性奖励,而人类偏好标签用于其他问题类型。
最终的模型,DeepSeek-R1,与DeepSeek-R1-Zero相比,性能有了显著提升,如下表所示。
来自DeepSeek-R1技术报告

纯监督微调(SFT)和蒸馏

DeepSeek还发布了通过“蒸馏”过程训练的较小模型。这里的蒸馏指的是在由较大LLMs生成的SFT数据集上对较小的LLMs(如Llama 8B和70B以及Qwen 2.5模型(0.5B到32B))进行指令微调。在下图中突出了蒸馏部分。
DeepSeek-R1-Distill模型的训练过程
为什么要训练这些蒸馏模型?有两个关键原因:
  • 较小的模型更高效。这意味着它们运行成本更低,而且可以在较低端的硬件上运行,更吸引研究者和大模型爱好者。
  • 纯SFT的方法研究。这些蒸馏模型作为一个有趣的基准,展示了纯监督微调(SFT)可以在没有强化学习的情况下将模型带到多远。
下表比较了这些蒸馏模型与其他流行模型的性能,以及DeepSeek-R1-Zero和DeepSeek-R1。
蒸馏与非蒸馏模型的基准比较
正如我们所见,蒸馏模型明显弱于DeepSeek-R1,但与DeepSeek-R1-Zero相比,尽管它们小了几个数量级,但效果却很强。与o1 mini相比,这些模型的表现也相当不错(我怀疑o1-mini本身可能是o1的一个类似的蒸馏版本)。
同时还测了在DeepSeek-R1-Zero中看到的纯RL方法,是否也能出现在较小的模型中,将DeepSeek-R1-Zero的相同纯RL方法直接应用于Qwen-32B。
32B模型的蒸馏和RL的基准比较
结果表明,对于较小的模型来说,蒸馏比纯RL更有效。

四种方法小结

  • 推理时扩展不需要额外的训练,但会增加推理成本,随着用户数量或查询量的增加,大规模部署会变得更加昂贵。然而,对于已经表现强劲的模型来说,它仍然是一个不假思索的选择。我强烈怀疑o1利用了推理时扩展,这有助于解释为什么它在每个标记上的成本比DeepSeek-R1更高。
  • 纯RL对于研究目的很有趣,因为它提供了关于推理作为一种新兴行为的见解。然而,在实际的模型训练中,RL + SFT是首选方法,因为它可以产生更强大的推理模型。
  • RL + SFT是构建高性能推理模型的关键方法。
  • 蒸馏是一种有吸引力的方法,特别是用于创建更小、更高效的模型。然而,它的局限性在于蒸馏不能推动创新或产生下一代推理模型。例如,蒸馏总是依赖于一个现有的、更强的模型来生成监督微调(SFT)数据。

关于 DeepSeek R1 的思考

在最近几周,许多人问我对DeepSeek-R1模型的看法。简而言之,我认为它们是一个了不起的工作。作为一名工程师,我特别欣赏详细的技术报告,它提供了我可以学习的方法论见解。
其中一个最有趣的收获是推理作为一种行为从纯RL中出现。而且令人印象深刻的是,DeepSeek在一个宽松的开源MIT许可证下开源了他们的模型,这比Meta的Llama模型限制更少。

它与o1的比较

DeepSeek-R1是否优于o1?
我会说它们大致在同一水平。但DeepSeek-R1在推理时更高效。这表明DeepSeek可能在训练过程中投入了更多,而OpenAI可能更多地依赖于o1的推理时间扩展。
也就是说,直接比较o1和DeepSeek-R1是困难的,因为OpenAI没有披露太多关于o1的信息。例如,我们不知道:
  • o1是否也是专家混合(MoE)?
  • o1有多大?
  • o1是否只是GPT-4o的一个稍微改进的版本,只有最少的RL + SFT和广泛的推理时扩展?
在不知道这些细节的情况下,直接比较仍然是苹果与橙子的比较。

训练DeepSeek-R1的成本

另一个讨论点是训练DeepSeek-R1的成本。有人提到约600万美元的训练成本,但他们可能混淆了DeepSeek-V3和DeepSeek-R1。
600万美元的估计是基于每GPU小时2美元的假设和DeepSeek-V3最终训练运行所需的GPU小时数,这在2024年12月最初讨论过。
然而,DeepSeek团队从未披露R1的确切GPU小时或训练成本,因此任何成本估计都纯属猜测。
无论如何,最终,DeepSeek-R1是开源推理模型的一个重要里程碑,其推理时的高效性使其成为OpenAI的o1的一个有趣替代品。

在小成本下训练推理模型

训练一个DeepSeek-R1级别的推理模型可能需要数十万到数百万美元,即使是从一个开源基础模型如DeepSeek-V3开始。这对于预算有限的研究人员或工程师来说可能令人沮丧。

好消息:蒸馏可以走很远

模型蒸馏提供了一种更具成本效益的替代方案。DeepSeek团队的R1蒸馏模型展示了这一点,这些模型尽管比DeepSeek-R1小得多,但在推理性能上却很出色。当然这种方法也不是完全便宜的,蒸馏80万个SFT样本,也需要大量的计算资源。
就在DeepSeek-R1发布前几天,我看到了一篇关于Sky-T1的文章,使用仅1.7w SFT样本训练了一个开源32B模型,总成本只有450美元。
这个说明,较小的、有针对性的微调工作仍然可以取得令人印象深刻的结果。
Sky-T1:在450美元内训练你自己的推理模型-https://novasky-ai.github.io/posts/sky-t1/
根据他们的基准测试,Sky-T1的表现大致与o1相当。

预算上的纯RL:TinyZero

Sky-T1专注于模型蒸馏,也有在“纯RL”领域的一些工作-TinyZero,一个3B参数模型,复制了DeepSeek-R1-Zero的方法(训练成本不到30美元)。
即使只有3B参数,TinyZero也表现出一些新兴的自我验证能力,这支持了“推理可以通过纯RL在小模型中出现”的观点。
对应Github:https://github.com/Jiayi-Pan/TinyZero
上述两个项目都是在有限的预算下,训练推理模型的工作,一个专注于纯RL(TinyZero),另一个专注于纯SFT(Sky-T1)。

超越传统SFT:旅程学习







请到「今天看啥」查看全文