新智元报道

编辑:KingHZ 乔杨

【新智元导读】Ai2研究科学家Nathan Lambert总结语言推理现状,揭开OpenAI o1训练中强化学习的秘密。

关注NLP领域的人们,一定好奇「语言模型能做什么?」「什么是o1?」「为什么思维链有效?」


在NeurIPS的Latent Space非官方Industry Track上,Ai2研究科学家Nathan Lambert发表相关演讲,直接回答语言模型能否推理,以及o1和强化微调 (RFT) API给大家的启发。

演讲内容亮点摘要:

  1. 2025年,推理语言模型(Reasoning Language Models,RLMs)将取代后训练;强化学习训练不是后训练。

  2. 我们正在看到一些新的语言模型推理形式,它们看起来不像人类的推理方式。

  3. 当o1推理时,本质上就是不断地输出token,而token流则相当于某种中间状态。

  4. o1本质上是大规模的预训练强化学习,而且规模极大。

  5. 我们正在探索模型中应用思维链的边界。

  6. 强化学习微调会多次处理数据, 这就是只需要几十个token样本就能实现有效学习的秘诀。

  7. 评估器模型起源于模型评估领域,并将成为开放强化学习基础设施的一部分。

Nathan Lambert在Interconnects上发文表示: 在2025年,后训练(post-training)、推理(reasoning)和推理时计算(inference-time compute)三大主题仍然会相互交织,但OpenAI的o1系列模型的强化学习训练不是后训练。


视频和原文地址:https://www.interconnects.ai/p/the-state-of-reasoning

什么是推理(reasoning)?

Lambert表示,「我不会说推理是我主要的研究领域。我更倾向于说,我是从强化学习的背景转向语言模型的。」

「现在,推理被颠覆为一种方法,而不是一个领域。」

这被称为「推理的现状」。

这次演讲绝不是全面的调查,因为推理有许多争论,而我们需要重新审视一下非常基础的定义。

推理:以一种逻辑和理智的方式思考某件事情的行为。

而这是字典上的定义,即以合乎逻辑、合乎情理的方式思考某件事情的行为。目前,我们可以勉强同意这个足够模糊的定义。

正如这次讨论中将会看到的,对于「语言模型是否进行推理」这个问题,人们正逐渐失去理性。

我们以前在通用人工智能(AGI)中见过这种情况。

现在,推理看起来好像和AGI是同一回事,这相当荒谬,因为推理是非常通用的技能,而且之后会有更多的理由或证据来证明,向语言模型提问时,它们的确在进行某种形式的推理。

语言模型能否推理?

关于语言模型没有做推理的论点太多了,但这些论点本身并不成立。


然而,这个问题确实很棘手。 确实有一些非常有说服力的论点认为推理并不是语言模型应追求的方向,因为语言模型在这方面不可能像人类一样出色

但要说它们不能进行推理,也没有什么证据。 问题是,为什么语言模型的推理能力必须看起来像人类的推理方式呢?


语言模型和人脑非常不同,并且它们有随机性。这种随机性存在的原因有很多,我们应该接受这一点,并继续推动研究。今年一个重要的趋势是,我们正在看到新的语言模型推理形式,它们看起来不像人类的推理方式


Lambert回忆,他与时任Meta推理负责人的Ross Taylor进行过一次谈话,这是一次非常宝贵的学习经历。这段话(见上图)直接摘自访谈记录。

这些内容的本质可以概括为一句话:如果在语言模型上使用思维链,实际上它不过是在输出中间步骤。

如果现在向大家提出一个数学问题,大家可以在脑海中完成大部分计算,同时存储一些中间变量。但语言模型并没有这种能力。它们更像是逐个计算token的设备,也就是说每个token输出前必须向前传递

在这个过程中,并没有专门的结构来存储这些中间状态。所以,语言模型接受思维链及中间值非常合理,这表明它们在做真正产生价值的工作。


Ross Taylor

这就像是引导o1的许多方式之一,即语言模型天生有随机性。

在语言模型的推理中,很多人看到的失败,实际上只是模型按照死板的链条推理而犯了非常具体的错误。但模型没有能力在之后改正这些错误。

而人类并不是这样推理的。如果是人类,通常会在下一步意识到并纠正错误。但我们需要用不同的方式来处理语言模型。

o1和它的「亲戚」

o1之所以令人兴奋,是因为它是一种新类型的语言模型,它充分利用「推理」这一观念。也就是说,思维链和前向token流可以大大提高结果的质量。

当在需要某种推理能力或动作时,本质上就是不断地输出token,以推动某个智能任务的进展。所以,它通过增加计算消耗来向前传递,而token流则相当于某种中间状态。

o1自发布以来一直广受争议,但促使Lambert 思考更久的是:我们应该根据模型的实际表现来评判它们,特别是在大规模强化学习(RL)和验证结果这两方面, 尤其是在发布了强化学习API背景下。

然而,许多人支持更复杂的方法,如过程奖励、模型、自我博弈、蒙特卡罗树搜索,但主要理由是基于以前的文献和对高级推理在语言模型中的期待,而非基于他们提供的证据或行为,不管是通过评估结果,还是通过模型实际推理时的表现。


这就引出了模型的复制品,可以说它们是o1的「亲戚」模型。这些模型来自社区,而且昭示了一个令人振奋的事实:我们正在探索模型中应用思维链的边界

Lambert要强调的一下来自Deep Seek和QwQ的模型。我认为这些模型相比于完整的OpenAI o1模型,其应用范围的局限性要大得多。 使用o1模型可以处理更多任务。

DeepSeek是为数学或代码任务而设计的,但这类模型 应用范围限制得太死,以至于即便在范围内,如果你问它一个代码问题,它有时甚至会回答: 「我只应该处理数学或代码问题。 」o1以及未来类似模型的成功,关键在于能否处理更多领域或类型的任务

什么是o1模型?


SemiAnalysis曾发表一篇文章,即便只看标题,也能对o1的定义或特性做一些推测。

目录中的两个要点已经提供了一些信息:训练过程中大量的前向计算,以及超越预训练的后训练计算量。

训练过程中大量的前向计算

当在进行RL时,有两种方式可以多次查看数据,从而导致多次前向计算。

第一种方式是,当针对提示进行RL时,可以采样多个补全(completion)版本,然后对它们进行评分,或者用不同的方式利用它们来更新策略。所以,如果问一个数学问题,可以查看八个补全(completion)版本,选择最好的,或者对比最差和最好的,这种分级方式有助于强化学习策略的学习

第二种方式是,因为损失函数比指令微调之类的方式更灵活,可以在相同的提示上进行更多的训练,而不像指令微调或预训练那样只训练少量样本。这意味着他们从模型中进行了大量采样,这与过去在预训练和后训练完全不同。

后训练比预训练计算量大

接下来,有个亮点:后训练的浮点运算量(flops)超过了预训练。Lambert认为这基本上明确表明OpenAI正在使用强化学习,并且为这种大规模强化学习投入了大量计算资源。

而在这一阶段,这可能意味着某种不同的方式,比如预训练强化学习。但o1的「亲戚」模型目前还做不到,因为没有哪个团队像OpenAI一样拥有如此多的基础设施。这需要时间,但人们终会实现它。

强化学习微调

现在我们进入了强化学习(RL)微调的讨论。


图片来源:https://openai.com/form/rft-research-program/

这是讨论中的重要转折点,因为o1本质上是大规模的预训练RL,属于极大规模的RL

不过,我们目前并不清楚OpenAI的这个新Beta API项目的数据的所有细节,它只是整体基础设施的一小部分。

那么,利用少量的基础设施能实现什么呢?

微调负责人曾回复过Swyx的推文。这条推文虽然简短,但透露出很多有价值的信息。例如,这个API使用的基础设施和训练o1的一模一样。仅这一点就能说明很多问题了。

Lambert表示,他对特定方面的应用持乐观态度,特别是在答案质量比文本风格更重要的情况下。

就像之前提到的o1,这种强化学习微调会多次处理数据。这也是为什么他们声称只需要几十个token样本就能实现有效学习的原因。

这种方式与以往的训练方法完全不同。

具体来说,模型在答案正确时会获得奖励,模型学会强化那些能给出正确答案的行为。

进行强化学习,并在答案正确时给予奖励,这就是全部过程。

其关键创新和简洁之处在于,现代语言模型已经具备了足够强大的基础,因此仅通过轻微的强化学习微调,就能增强这些特定能力,而不削弱模型的其他功能

很多人担心将强化学习引入训练过程中。

但对于像ChatGPT这样的通用指令模型,最大的难题是这种方法会破坏模型在其他任务上的表现,尤其是聊天能力。

但从目前来看,这种方法似乎是可以开箱即用的。

即便OpenAI允许开放API,也不会允许让用户训练出在其他任务上表现变差的模型。

数据格式

强化学习微调的数据格式如下图所示,本质上由两部分组成:提示和答案。


这与训练时常见的提示和补全(completion)方式不同。如果做偏好微调,要用到一个提示,一个选定的补全(completion)和一个被拒绝的补全。所以这可能是一种新的数据格式。很快,会看到像HuggingFace这样的平台出现更多类似的内容。


举一个项目中的实际例子。屏幕上的数学题就是一个精确指令跟随的例子,意思是,如果有个提示,比如说要求每个句子都以字母A开头。用Python可以很轻松地验证这一点。这正是Ai2在项目中做的事情。模型在这个任务上表现得越来越好。给定了约束数据,强化学习算法学会微调模型,并最终能够达到这些正确答案

评分器模型

对许多人来说,这些评分器模型有点让人迷惑。


Lambert认为,这些模型起源于评估。

评估领域做了大量工作,特别是为了保证答案提取的稳定性,尤其是数学题。

举个例子,Lama 3.1详细描述了他们的评估方法。在数学题中,他们同时使用了SymPy,这是一个用于提取答案的Python包,以及LLM,它作为判断工具来提取数学答案。

评分器的作用本质上是将这一过程扩展到全新的层次,建立了嵌套的配置结构,用于对这些可验证的输出进行奖励塑造

对于数学问题,这其实相对容易,你只需要处理五种格式,用来表示不同的数字和符号。

但OpenAI似乎暗示,当问题变得更加复杂时,要处理这些领域的问题,不仅仅需要简单的「是/否」损失函数。

实际上,已经有很多开源模型,它们在做类似的工作,比如模型评判(judgement)和Prometheus等工具,这些工具就是用LLM作为评判工具。Lambert认为这一趋势将继续成为这种开放强化学习基础设施的一部分

OpenAI的实践

OpenAI有一堆截图,虽然只是他们用来做展示的内容而已,但看起来还是比较标准的。这些截图跟踪了性能随时间的变化。能够查看所有的输出结果。


接下来,他们有一个非常通用的强化学习(RL)图表。最标准的RL图表通常是X轴表示时间或试验次数,Y轴表示奖励。在这个图表中,奖励通常指的是在某个验证集上的准确度或成功率。X轴实际上表示的是训练的进度。

这个图表与Ai2在项目中所做的非常相似,这也是表达RL反馈图的另一种方式。


开源工具

如果见过RL相关的图示,你会看到一个智能体与环境交互的模型。如果你没接触过这类图示,随着RL越来越流行,接触到类似内容的可能性也越来越大,因为RL本质上是基于试错学习的。


Lambert表示,欢迎大家使用Ai2发布的代码。它已经能够处理数学和部分指令微调任务。而且它们打算尝试设计更复杂的评分器,以便处理代码这样的任务, 因为使用二元结果来评判代码质量并不合适。

这也是很好的思路,能帮你理解为什么在评定不同模型输出时,可能需要进行一些奖励塑造(reward shaping)。此外,这也可以与OpenAI展示的图表做对比,后者展示了性能随时间的提升。


项目地址:https://github.com/allenai/open-instruct

上图是在不同评估上进行的实验。左侧列展示的是在学术论文中会使用的语言模型评估方式,而右侧则展示了各种内部的强化学习(RL)统计数据,其中如GSMAK数学和IFVL都在训练集上进行训练。

根据Lambert的描述,这个项目的契机也很有趣:几个月前,它们从某工业实验室成员那里获得了建议,提前做了这项实验,因此抢占了先机。相信现在很多人会尝试复制这个实验。

Nathan Lambert简介

Nathan Lambert是Interconnects AI创始人、Ai2研究所的研究科学家,主要领域研究为强化学习、机器学习、机器人等。

2022年,他于在加州大学伯克利分校取得电气工程与计算机科学博士学位。

2024年,他曾获得ACL最佳主题论文奖以及ACL最佳资源论文奖。

目前, 他的谷歌总引用数为3459,但增长速度惊人:2024年比2023年翻了一番。


参考资料:

https://x.com/natolambert/status/1874851420207452418

https://www.interconnects.ai/p/the-state-of-reasoning

ad1 webp
ad2 webp
ad1 webp
ad2 webp