Qwen 自身具备检查答案并修正错误的能力。不过,在知晓其原理之后,我们能够让 Llama 学会进行自我改进。
如果给到额外的计算资源和“思考”时间,为什么有的模型能够好好利用这些资源,从而将性能提升一大截,然而有的模型却做不到呢?
遇到困难问题时,人类会花费时间进行深入思考,从而找到解决方案。在 AI 领域,最近一些大语言模型在通过强化学习进行自我改进训练的过程中,已经开始展现出类似的推理行为。
但是,在相同的强化学习训练条件下,不同模型自我改进的能力有着很大的差别。例如在一个游戏里,Qwen-2.5-3B 的自我改进能力比 Llama-3.2-3B 要远远超出很多。这两个模型起初的表现都很差,然而经过强化学习训练结束后,Qwen 达到了大约 60%的准确率,而 Llama 只有 30%。这其中是什么原因呢?
最近斯坦福大学提交了一项工作,在这项工作中,挖掘出了大模型自我改进能力背后的机制。该研究重点关注的是基础语言模型中存在着关键的认知行为。
这项研究一经发布便引发了众多讨论。Synth Labs 的 CEO 认为这个发现十分令人激动,因为它能够被整合进任何模型之中。
作者把研究重点置于两个基础模型上,一个是 Qwen - 2.5 - 3B,另一个是 Llama - 3.2 - 3B。在使用强化学习对 Countdown 游戏进行训练时,二者显示出明显差异,即 Qwen 解决问题的能力有大幅提升,而 Llama2 在相同训练过程中提升有限。那么,语言模型的哪些属性导致了这种不同呢?
作者为了系统地研究这个问题,开发了一个框架,用于分析对解决问题有用的认知行为。这个框架描述了四种关键的认知行为:一是验证,也就是进行系统错误检查;二是回溯,即放弃失败的方法;三是子目标设定,也就是将问题分解为可管理的步骤;四是逆向思考,即从期望结果推理到初始输入。这些行为反映了专家级问题解决者处理困难任务的方式。数学家会去验证证明的每一个步骤,当遇到矛盾时会进行回溯,并且会将复杂的定理分解为更简单的引理。
初步分析显示,Qwen 能自然地展现出这些推理行为,其中包括验证和回溯,然而 Llama 却不具备这些行为。基于这些观察,作者得出了核心假设:初始策略中的某些推理行为对于有效利用增加的测试时间计算(test-time compute),通过扩展推理序列是必不可少的。AI 模型若想在有更多时间思考时真正变得更聪明,就必须先具备一些基本的思考能力,例如具备检查错误、验证结果的习惯。倘若模型一开始就不会这些基本的思考方法,即便给它再多的思考时间和计算资源,它也无法有效地利用这些资源来提升自己的表现。这就如同人类的学习情况。倘若一个学生欠缺基本的自我检查以及纠错的能力,仅仅给予他更多的考试时间,是不会使他的成绩有明显提升的。
研究人员又通过对初始模型进行干预来检验这一假设。
他们首先发现,用包含那些行为(特别是回溯)的人工合成推理轨迹去引导 Llama,能够让 Llama 在强化学习过程中的表现大幅变好,还能达到与 Qwen 相近的性能提升。其次,即便这些引导用的推理轨迹含有错误答案,只要它们呈现出正确的推理模式,Llama 仍然可以取得进步。这表明,实现成功自我改进的关键因素是推理行为的存在,而非正确答案本身。最后,他们从 OpenWebMath 数据集中挑选出着重体现这些推理行为的内容,以此来对 Llama 进行预训练。结果表明,这种针对性的预训练数据调整可以成功地诱导出一种推理行为模式,这种模式能够高效利用计算资源。同时,Llama 的性能提升轨迹与 Qwen 是一致的。
这项研究表明模型的初始推理行为与自我改进能力有紧密关联。这种关联有助于解释为何有些语言模型能找到有效利用额外计算资源的办法,而有些模型却停滞不前。理解这些动态变化或许是开发能显著提升问题解决能力的 AI 系统的关键。
如何让 AI 学会自我改进?
参与对比的模型有 Qwen-2.5-3B 以及 Llama-3.2-3B 。
研究起始于一个令人诧异的观察情况:规模相近的语言模型,尽管它们来自不同的家族,然而通过强化学习却展现出了提升能力差异极为巨大的现象。
Countdown 游戏被当作主要测试平台。这是一个数学方面的难题。玩家必须运用四种基本算术运算,即“+”“−”“×”“÷”,把一组输入数字组合起来以达成目标数字。例如,当给定数字 25、30、3、4 以及目标 32 时,玩家需要通过一系列操作将这些数字组合起来,从而得到准确的 32,像(30 − 25 + 3) × 4 这样。
选择 Countdown 进行分析,是因为它涉及到数学推理、规划以及搜索策略。和更复杂的领域不一样,Countdown 提供了一个受限的搜索空间,这样就使得可行的分析得以进行,并且依然需要复杂的推理。另外,相较于其他数学任务,在 Countdown 游戏中取得成功更依赖于问题解决能力,而不是数学知识。
研究者用两个基础模型来对比不同模型家族的学习差异,这两个模型分别是 Qwen-2.5-3B 和 Llama-3.2-3B。强化学习实验是以 VERL 库为基础,通过 TinyZero 来实现的。他们运用 PPO 方法对模型进行了 250 步的训练,并且每个提示都采样了 4 个轨迹。选择 PPO 而不选择 GRPO 和 REINFORCE 等替代方案。原因在于,在各种超参数设置下,PPO 表现出更优的稳定性,然而各算法的性能其实是非常相似的。
结果显示出学习轨迹有很大不同。这两种模型在任务开始时表现相近,得分都很低。然而,Qwen 在大约第 30 步时出现了显著提升。其特点是响应变长且准确性提高,这从下图可以看出。到训练结束时,Qwen 的准确率达到约 60%,比 Llama 的 30% 高很多。
在训练后期,能观察到 Qwen 行为有一个有趣的变化。模型先是从语言中的显式验证语句,比如“8*35 是 280,太高了”,过渡到隐式的解决方案检查。接着模型会依次尝试不同的解,一直到找到正确的答案,并且在这个过程中不会使用文字来评估自己的工作。
这种对比引出了一个基本问题,即哪些潜在的能力能够成功地实现基于推理的改进呢?要回答这个问题,就需要有一个系统的框架来对认知行为进行分析。
分析认知行为的框架
研究者为了理解这些不同的学习轨迹,开发了一个框架,用于识别和分析模型输出中的关键行为。他们将重点放在了以下四种基本行为上:
回溯或者在检测到错误的时候进行显式修改方法,例如“这种方法行不通,因为……”;
验证中间结果,例如通过……来验证这个结果;系统地检查中间结果,例如通过……来检查这个结果。
子目标设定,就是把复杂问题分解成能够进行管理的步骤,比如说“要解决这个问题,我们首先得……”;
逆向思考,在目标导向的推理问题里,从期望的结果开始,一步一步向后进行推导,从而找到解决问题的路径。比如,“要达成 75 的目标,就需要一个能够被……整除的数字”。
选择这些行为,是因为它们代表了一种问题解决策略,这种策略与语言模型中常见的线性、单调推理模式不同。这些行为使得更加动态的推理轨迹成为可能,并且解决方案能够以非线性的方式演变。这组行为并非是完整无缺的。之所以选择这些行为,是因为它们易于被识别,并且与 Countdown 游戏以及更广泛的数学推理任务(像证明构建等)中的人类问题解决策略相契合。
每种行为都能依据其在推理 token 中的模式被识别出来。回溯这一行为被当作显式否定,并且会替换先前步骤的 token 序列。验证这一行为会产生将结果与解决方案标准进行比较的 token。逆向思考是从目标开始,逐步构建通往初始状态的解决方案路径的 token。子目标设定则是显式地提出在通往最终目标的路径上要瞄准的中间步骤。研究者开发了一个分类 pipeline,这个 pipeline 使用了 GPT-4o-mini,能够可靠地识别出模型输出中的那些模式。
初始行为在自我提升中的作用
这个框架应用于初始实验后,揭示出一个关键洞察:Qwen 的性能有显著改进,且这种改进与认知行为的出现相契合,尤其是验证和回溯(在图 1 中)。而相比之下,Llama 在整个训练过程中几乎没有展现出这些行为的证据。
研究者为了更好地理解这种差异,对三个模型的基线推理模式进行了分析,这三个模型分别是 Qwen-2.5-3B、Llama-3.2-3B 和 Llama-3.1-70B。分析结果揭示,与两种 Llama 变体相比较而言,Qwen-2.5-3B 产生各种行为的比例都更高,具体情况如图 4 所示。较大的 Llama-3.1-70B 在这些行为的激活频率方面通常比 Llama-3.2-3B 要高。然而,这种提升并非均匀的,尤其是回溯行为,即便在规模更大的模型中,其表现依然受到限制。
这些观察结果表明两个洞察:
初始策略中的一些认知行为或许是模型依靠扩展推理序列来有效利用增加的测试时间进行计算所必需的。
增加模型规模能够改善这些行为的上下文激活情况。这种模式具有重要意义,因为强化学习仅仅能够放大在成功轨迹中出现的行为,从而使这些初始行为能力成为有效学习的前提条件。
干预初始行为
确立了基础模型中认知行为的重要性之后,接着去研究能否通过有针对性的干预来人为诱导这些行为。
研究者提出的假设是,创建基础模型变体,使其在 RL 训练前能选择性地表现特定认知行为,这样就能更好地理解哪些行为模式对于实现有效学习是至关重要的。
他们首先策划了七个不同的启动数据集,通过使用 Countdown 问题。其中有五个数据集着重于不同的行为组合,分别是:所有策略组合;仅为回溯;回溯与验证同时进行;回溯与子目标设定一同进行;回溯与逆向思考相结合。他们借助 Claude-3.5-Sonnet 来生成这些数据集,凭借其能够生成具有精确指定行为特征的推理轨迹的这种能力。
研究引入了两个控制条件,目的是验证改进源于特定的认知行为而非简单的计算时间增加。一个控制条件是一个空的思维链,另一个控制条件是一个与所有策略数据集的数据点长度匹配的填充占位符 token 的链。这些控制数据集能够帮助作者验证观察到的任何改进到底是源于特定的认知行为,还是仅仅源于简单的计算时间增加。作者创建了全策略数据集的一种变体,这种变体仅包含不正确的解决方案,并且在保持所需推理模式的情况下进行创建。此变体使得作者能够将认知行为的重要性与解决方案的准确性区分开来。
当使用包含回溯行为的数据集来进行初始化的时候,Llama 表现出了明显的改进,并且 Qwen 也通过 RL 训练展现出了明显的改进(图 2)。
行为分析显示,RL 会有选择性地将经验上有用的行为进行放大,并且会对其他行为进行抑制,这种情况在图 3 中有所体现。
在全策略的条件下(如 1(左下)所示),模型会保留并且强化回溯以及验证这两个方面,与此同时,会减少逆向思考和子目标设定的情况。但是,当仅仅与回溯进行配对的时候,那些被抑制的行为(也就是逆向思考和子目标设定)会在整个训练过程当中一直存在。
当以空的思维链控制来启动时,在两种情形下,模型的性能与基本 Llama 模型相近(≈30 - 35%;参照图 5),这意味着仅仅分配额外的 token 且不包含认知行为,就无法有效利用测试时间的计算。另外,通过使用空的思维链进行训练会带来不利影响,Qwen 模型会停止进行探索行为。这表明这些认知行为是特别必要的。这些认知行为对于模型能够通过更长的推理序列来有效利用扩展计算。
令人惊讶的是,模型以不正确的解决方案启动但却有正确行为,它与在有正确解决方案的数据集上训练的模型性能相同(图 6)。这表明认知行为的存在(而非获得正确解决方案)是通过强化学习成功实现自我改进的关键因素。因此,较弱模型的推理模式能够有效地引导学习过程,从而构建出更强大的模型。这表明,认知行为的存在比结果的正确性更为重要。
在预训练数据中选择性地放大行为
上述结果显示,一些认知行为对于自我提升是必需的。不过,作者在最初的模型中促使行为启动的方式是特定领域的,且依赖于 Countdown 游戏。这或许会给最终推理的泛化带来不良影响。我们能否通过改变模型的预训练分布,以增加有益推理行为的出现频率,进而实现自我完善呢?
作者为了探究预训练数据中的行为频率,首先对预训练数据中认知行为的自然频率进行了分析,并且重点关注了专门为数学推理而构建的 OpenWebMath 和 FineMath。接着,使用 Qwen - 2.5 - 32B 作为分类器,研究对 20 万份随机抽样的文档进行了分析,以查找目标行为的存在。在这个以数学为重点的语料库里,回溯和验证这类认知行为很少出现。这显示出标准预训练在接触这些关键模式方面是有限的。(见图 7)
为了测试人为增加认知行为的接触能否增强自我提升的潜力,作者从 OpenWebMath 开发了一个针对性的持续预训练数据集。首先,以 Qwen - 2.5 - 32B 作为分类器,对来自预训练语料库的数学文档进行分析,目的是了解目标推理行为的存在情况。人们以此为基础创建了两个对比集。其中一个对比集具有认知行为,而另一个对比集是极少认知内容的控制集。
接着,他们借助 Qwen - 2.5 - 32B 把集合里的每个文档改写成结构化的问答形式,源文档中认知行为的自然存在或缺失得以保留。最终的预训练数据集每一个都包含总计 830 万 token 。这种方式让作者能够将推理行为的影响隔离开来,同时对预训练期间数学内容的格式和数量进行控制。
在这些数据集上对 Llama-3.2-3B 进行预训练且应用强化学习后,作者观察到:其一,行为丰富模型达到了与 Qwen 相近的性能,然而控制模型的改进较为有限(如图 8a 所示);其二,对训练模型的行为进行分析可以发现,行为丰富变体在整个训练过程中始终保持着较高的推理行为激活度,而控制模型则展现出与基本 Llama 模型类似的行为(如图 8c 所示)。
这些结果显示,对预训练数据进行有针对性的修改,能够借助强化学习顺利地生成对于有效自我改进来说必需的认知行为。