大模型的测试时计算优化展开讨论。先指出优化大模型测试时计算对提升模型部署效率和节省资源的重要性,目前改进大模型主要靠数据微调等策略但即将遇到瓶颈,急需数据高效的方法。接着阐述一种改变训练目标、重用现有数据和更多测试时计算来提升模型表现的方法,包括将学习“如何做”形式化为目标、将其解释为元强化学习问题,还介绍了元强化学习相关概念,最后提及解决元强化学习问题的一些方法等内容。
优化大模型的测试时计算在提升模型部署效率和节省计算资源方面扮演着至关重要的角色。就像黄仁勋在CES 2025的演讲中所提到的,测试时Scaling是大模型发展的三条曲线之一,所以如何优化测试时计算成为了业界关注的焦点。到现在为止,提升大型语言模型(LLM)的主要手段是运用越来越多的高质量数据来进行监督微调(SFT)或者强化学习(RL)。然而,这种扩展方式似乎很快就会触碰到天花板。预训练的扩展定律即将趋于稳定,有报告显示,用于训练的高质量文本数据可能在2028年就会枯竭。特别是对于像解决推理问题这样更具挑战性的任务,似乎需要将当前的数据扩展大约100倍才可能看到显著的提升,但目前LLM在这些困难任务中的表现仍未达到理想状态。因此,寻找数据高效的LLM训练方法迫在眉睫,这些方法要能够突破数据扩展的限制并且解决更复杂的难题。在这篇文章里,我们要探讨这样一种方法:通过改变LLM的训练目标,重新利用现有的数据以及更多的测试时计算来让模型表现得更好。从目前来看,训练模型的主要原则是监督模型针对输入产生特定的输出。例如,监督微调试图匹配给定输入的直接输出token,这和模仿学习很相似;而RL微调训练响应以优化奖励函数,这个函数通常在oracle响应上取最高值。不管是哪种情况,我们都是在训练模型产生它所能表示的y*的最佳近似值。抽象地讲,这种范式训练模型产生单个输入输出映射,当目标是直接解决给定分布中的一组类似查询时这种方法很有效,但对于发现分布外查询的解决方案就无能为力了。固定的、一刀切的方法无法有效地适应任务的异质性。我们更期望有一个强大的模型,它能够尝试多种方法,在不同程度上寻求信息,或者在无法完全解决问题时表达不确定性,从而推广到新的、未见过的问题。那我们该如何训练模型来满足这些要求呢?学习“如何回答”为了解决上述问题,一个新的思路是允许模型在测试时利用计算资源去寻找“元(meta)”策略或者算法,这些策略或算法能够帮助模型理解如何得出一个好的答案。要实现能够赋予模型系统性程序运行能力的元策略,就应该让模型在测试时能够外推和泛化到不同复杂度的输入查询。例如,如果一个模型被教授了柯西 - 施瓦茨不等式的含义,那么它就应该能够在简单和困难的证明问题上适时地运用这个知识。换句话说,给定一个测试查询,我们希望模型能够执行包含多个基本推理步骤的策略,这可能需要消耗更多的token。将学习“如何做”形式化为一个目标对于每个问题x∈X,假设我们有一个奖励函数r (x,⋅):Y↦{0,1},可以针对任何输出token流y进行查询。比如对于数学推理问题x,其token输出流为y,奖励r (x,y)可以是检查某个token子序列是否包含正确答案的函数。我们只获得了训练问题数据集D_train,所以也只有奖励函数集合{r (x,⋅):x∈D_train}。我们的目标是在事先未知的测试问题分布P_test上获得高奖励,而且测试问题的难度可能与训练问题不同。对于未知的测试问题分布P_test和有限的测试时计算预算C,我们可以从训练问题数据集D_train中学习一个算法A∈A_C (D_train),这个算法属于推理计算受限的测试时算法类A_C。这个类中的每个算法都以问题x∼P_test作为输入,并输出一个token流。将 (Op - How)解释为元强化学习问题接下来的问题是:我们如何解决由语言模型参数化的、在计算受限算法类A_c上的优化问题 (Op - How)?很明显,我们既不知道测试问题的结果,也没有任何监督信息。所以计算外部期望是没有意义的。对问题x猜测最佳可能响应的“标准”大语言模型策略似乎也不是最优的,因为如果充分利用计算预算C,它可能会做得更好。主要思路是优化 (Op - How)的算法A_θ(x)∈A_c,类似于强化学习中的自适应策略,它使用额外的token预算来实现某种算法策略来解决输入问题x。有了这个联系,我们可以从类似问题通常的解决方式中得到启发:通过元学习的视角来看待 (Op - How),具体来说是元强化学习:“元”是因为我们希望学习算法而不是直接回答给定问题,而“强化学习”是因为 (Op - How)是一个奖励最大化问题。一个非常简短的元强化学习入门通常,强化学习训练一个策略来最大化马尔可夫决策过程 (MDP)中的给定奖励函数。相比之下,元强化学习问题设定假设可以访问任务分布(每个任务都有不同的奖励函数和动态特性)。在这种设定下,目标是在来自训练分布的任务上训练策略,使其能够在从相同或不同测试分布抽取的测试任务上表现良好。此外,这种设定不是根据策略在测试任务上的零样本表现来评估它,而是让它通过在测试时执行几个“训练”回合来适应测试任务,在执行这些回合之后再评估策略。适应性策略如何适应测试问题?在元强化学习中,对于每个测试MDP M_x,策略A_θ在通过A_θ生成最终响应进行评估之前,可以通过消耗测试时计算来获取信息。在元强化学习术语中,获得的关于测试MDP M_x的信息可以被视为在测试问题x引发的MDP上收集“训练”回合的奖励,然后再在测试回合上进行评估。注意,所有这些回合都是在模型部署后执行的。因此,为了解决 (Op - How),我们可以将来自A_θ(x)的整个token流视为分成几个训练回合的流。为了优化测试时计算,我们需要确保每个回合都能提供一些信息增益,以便在测试MDP M_x的后续回合中表现更好。如果没有信息增益,那么学习A_θ(x)就退化为一个标准的强化学习问题——只是计算预算更高——这样就不清楚学习“如何做”是否有用。学习自适应策略的元强化学习我们如何解决这样一个元强化学习问题呢?也许解决元强化学习问题最明显的方法是采用黑盒元强化学习方法。这将涉及最大化输出轨迹A_θ(x)中想象的“episodes”的奖励总和。例如,如果A_θ(x)对应于使用自我纠正策略,那么每个episode的奖励将对轨迹中出现的单个响应进行评分。如果A_θ(x)规定了一种在生成和生成验证之间交替的策略,那么奖励将对应于生成和验证的成功。然后我们可以优化。一般情况下,输出token流可能无法清晰地分成生成和验证片段。在这种情况下,可以考虑元强化学习问题的更抽象形式,直接使用信息增益的某种估计作为奖励。可以通过多轮强化学习方法来解决相关的优化问题,实际上,只要能够使用某种执行定期在线策略采样的强化学习算法来解决优化问题,强化学习方法的选择(基于价值还是基于策略)可能并不重要。我们还可以考虑另一种制定元强化学习训练目标的方法:只优化测试回合获得的奖励,而不是训练回合的奖励,从而避免量化信息增益的需要。
文章重点阐述了大模型测试时计算优化的重要性,指出当前大模型改进策略面临瓶颈,急需新方法。介绍了一种改变训练目标,利用现有数据和更多测试时计算提升模型的方法,包括将学习“如何做”形式化为目标、将相关问题解释为元强化学习问题,还讲述了元强化学习概念、适应性策略适应测试问题的方式以及解决元强化学习问题的方法等内容。
原创文章,作者:购物狂魔,如若转载,请注明出处:https://www.gouwuzhinan.com/archives/13599.html