2026-10-28 14:31:49 来源: 科技行者
你可能听说过这样一个反直觉的事实:训练一个大模型做强化学习后训练,往往要花费数百万美元的算力,但它换来的提升,有时候还不如推理时换一种采样方式。
这不是夸张。这篇论文里有个数据很扎眼:Qwen3-8B 这个8B参数的小模型,通过一种叫做并行功率退火(Parallel Power Tempering,简称PPT)的采样技术,在不更新任何模型参数、不需要任何奖励信号的情况下,准确率反超了用GRPO强化学习训练过的同一个模型。在GPQA-Diamond这个研究生水平的推理测试上,PPT拿到60.1%,而GRPO只有53.0%,整整高出7个百分点。更夸张的是,换成稍强一点的Qwen3.5-9B模型后,PPT在GPQA、AIME竞赛数学、LiveCodeBench编程这三个硬核测试上的表现,直接摸到了GPT-5、Claude Opus 4.5这些顶级闭源模型的水平线。
(资料图片)
一个几十亿参数的开源小模型,不训练,只是换个采样方法,就能打到frontier model(指当前最先进、能力最强的一批大语言模型,通常是GPT、Claude、Gemini这类顶尖闭源模型)的级别。这件事值得我们停下来想一想,到底发生了什么。
为什么“把答案调得更自信”这件事这么难
先说清楚问题出在哪。
大语言模型生成文本的本质,是一个接一个地预测下一个词。每次预测,模型会给词表里的每个词打一个概率分,然后按概率随机抽样。标准做法里,模型怎么训练出来的,就怎么采样,不做任何干预。
但研究者们发现了一件有意思的事:如果把整个回答(不是单个词,而是完整的推理链条)的概率做一次幂次放大,也就是把原始概率 p(x) 变成 p(x) 的 α 次方(α大于1),那些本来就比较可能、比较连贯的回答会被进一步放大,而那些本来就不太靠谱的回答会被进一步压低。
这个操作叫做功率锐化(power sharpening):把模型原本的输出分布 p0 提升到 α 次幂,α越大,分布越"尖",高概率的答案占比越高,低概率的答案被压得越狠。
这个思路背后的假设很有意思:模型在训练过程中,其实已经"知道"很多正确的推理路径,只是这些路径不一定是概率最高的那一条。锐化操作相当于把这些潜藏的好答案从背景噪音里拽出来,不需要额外训练,只需要在采样这一步做文章。
问题来了:这个α到底该调多大?
调得太小,没什么效果,分布还是那么散,好答案和坏答案混在一起,很难挑出来。调得太大,灾难就来了。
这里需要讲清楚锐化为什么不能直接采样。锐化后的分布,归一化常数(也就是让所有概率加起来等于1所需要除的那个数)需要枚举所有可能的完整回答才能算出来,这在实际中是不可能完成的任务,词表动辄几万个词,一段几千字的回答有天文数字级别的可能组合。所以没法直接从锐化分布里抽样,只能用一种叫做
Metropolis-Hastings(MH):一种马尔可夫链蒙特卡洛(MCMC)算法,用于从一个只能算出"相对大小"但算不出精确归一化概率的分布里抽样。它的做法是不断提议一个新状态,然后按一个接受率公式决定要不要接受这个新状态,这样跑很多步之后,抽到的样本就会越来越逼近真实的目标分布。
的方法来间接逼近。具体做法是:挑一个位置,保留这个位置之前的文本,把后面的内容重新生成一遍,然后用一个接受/拒绝规则判断这次重新生成要不要采纳。
这个马尔可夫链的采样过程本身就带有一个权衡:如果α调得很大(强锐化),MH链会迅速收敛到一个局部的"看起来很对但其实错了"的推理路径里出不来,因为分布太尖锐,稍微偏离这条路径的提案都会被拒绝。反过来,α调小一点(弱锐化),链能跑得更开,但最后抽出来的答案也更随意,质量没保证。
这就是论文里讲的探索-利用权衡(exploration-exploitation trade-off):既要让采样器能跳出局部陷阱去探索别的可能性,又要让它最终收敛到高质量的答案上,单独一个α怎么调都不可能两头讨好。
这个两难,其实生活里特别常见。你准备一场考试,如果只刷一道题的十种解法(强利用),你会对这道题特别熟练,但换一道新题可能完全不会;如果你把所有知识点都浅尝辄止地过一遍(强探索),你知道的东西很广,但任何一道题都做不精。单靠调整"刷题策略的专注度"这一个旋钮,没法同时做到"见多识广"和"精通一道题",这两件事本质上需要不同的资源分配方式,而不是同一种策略的强弱调节。
有意思的是,真正厉害的学习策略从来不是在两者之间找一个折中点,而是让"广泛涉猎"和"深度钻研"同时发生,并且让两者互相喂养,刷题刷到一个不错的思路时赶紧拿去深挖,深挖卡住了再回去看看广度上有没有别的思路可以借用。这正是接下来要讲的核心方法的设计初衷。
并行退火:让多条链同时跑,还互相交换笔记
PPT的解法是:别只跑一条链,跑一组链,每条链用不同的α。
具体来说,论文设置了一个由弱到强的α阶梯,比如α?=2.0(锐化程度最弱,最"开放"),一直到α_K=4.0(锐化程度最强,最"收敛")。每条链独立地用自己的α值做MH采样,锐化程度弱的链在整个回答空间里游荡得更自由,容易发现一些锐化程度强的链根本想不到的新思路;锐化程度强的链则紧盯着高概率区域,把已经发现的好思路打磨得更精细。
光是让这些链各跑各的还不够,关键的设计是让相邻的链定期尝试交换彼此当前持有的完整回答。
交换的规则同样来自MH框架,用一个接受概率公式决定两条链的回答要不要互换。这个公式算起来极其便宜:只需要两条链各自回答的对数似然(也就是模型认为这段话有多"合理"的打分),这个值在生成过程中已经被缓存下来了,交换这一步完全不需要再调用一次模型,是纯粹的查表计算。
这个设计思路脱胎于物理学里一个叫做并行退火(parallel tempering,也叫replica exchange)的经典技术,最早用在模拟自旋玻璃这种有很多局部能量低谷的复杂系统里。高温副本(对应这里的低α链)能量起伏大,容易越过势垒去别的区域探索;低温副本(对应高α链)能量起伏小,倾向于待在一个能量谷里精细搜索。让它们定期交换状态,低温副本就能借助高温副本的"侦察"结果跳到更好的能量谷,而不必自己费力翻山越岭。
这个机制放到生活场景里,很像一个科研团队的运作方式。假设你带着一个课题组攻关一个难题,组里有人专门负责到处看文献、找新思路(对应低α的探索链),有人专门负责把已经确定靠谱的思路做深做透、写成论文(对应高α的利用链)。如果这两拨人完全不交流,各干各的,探索者找到的好苗子会烂在抽屉里没人跟进,深耕者则只能在自己原有的思路里打转,很容易在一个局部最优的方案上耗尽所有精力却不知道隔壁组早就有更好的点子。而PPT的交换机制,相当于强制这个课题组定期开组会,探索者把刚发现的好苗子拿出来,深耕者如果觉得这个苗子比自己手头的更有潜力,就直接接手往下做。如果不开组会(也就是不做交换),实验里能看到的后果是明确的:论文做了对照实验,让每条链独立跑、互不交换,最后在AIME 24&25竞赛数学题上,Qwen3-8B的准确率从78.3%掉到76.7%,GPQA上从60.1%掉到57.6%,差距虽然不是毁灭性的,但足以说明"交换"这个动作本身在创造价值,而不只是多跑几条链凑人数。
论文还专门做了一个计算量对齐的实验来验证这一点:给单链更多的MCMC精炼步数,让它消耗的总token数和多链PPT一样多,结果单链始终打不过PPT,在AIME上单链75.3%对PPT的78.3%,在LiveCodeBench上54.9%对58.4%。这说明PPT的优势不是来自"算力更多",而是来自"算力分配的方式更聪明",交换这个动作本身在创造信息增量,而不只是在烧钱。
一个藏得很深的bug:提前结束的回答,会悄悄污染整个采样过程
这篇论文里我觉得最值得单独拎出来说的,是他们发现的一个结构性截断偏差(structural truncation bias)。
这个问题出在怎么处理"回答提前结束"这件事上。
语言模型生成文本时,会在某个位置输出一个终止符(EOS,end of sequence),表示这段话说完了。之前的实现方式里,MH重新生成某段后缀时,只会生成到"当前这个回答的实际长度"为止。
问题就藏在这里。假设当前链上的回答有10个词,这次提议把它替换成一个只有4个词就结束的新回答,这个提议是合法的(有正向提议的路径),系统会用截断到4个词的似然分数去算接受率,然后可能接受了这次替换。
但是,一旦接受了这个4词版本,下一次想要提议改回原来那个10词的版本就无路可走了,因为重新生成被限制在当前长度(4个词)以内,提议分布在这个方向上的概率是0。这就是论文说的"单向截断":短的可以换长的(概率流向短),但长的换不回短的(没有反向流)。MH算法要正确工作,必须保证提议是可逆的,正向和反向都要有非零概率,只有单向流动的话,整个采样过程会被不平衡的概率流系统性地推向"回答越来越短"的方向,而这跟你真正想要采样的目标分布完全不是一回事。
论文给出了一个漂亮的小例子来量化这个偏差:在一个只有两个词、词表只有"a"和结束符"e"的玩具场景里,正确的做法(固定长度,允许任意位置重新生成到底)能让误差随着迭代次数指数级下降到0;而有缺陷的截断做法,误差会先降后升,最终稳定在一个1/2的渐近误差地板上,怎么跑都降不下去。
这就好比你在写一篇文章,编辑要求你可以随时回头重写任何一段,包括把已经写短的段落重新写长。如果编辑的规则变成"你只能在当前这篇文章的篇幅范围内修改",那么一旦你某次把文章写短了,你就再也没法把它写回原来的长度,因为修改范围被锁死在了"当前篇幅"。时间一长,你的文章只会越改越短,哪怕这篇文章其实应该很长才完整。而真正公平的修改规则,应该是不管当前写了多短,你随时可以在任何位置重新展开写到原本设定的最大篇幅。
论文的修复方案是固定地平线构造(fixed-horizon construction):所有链共享一个统一的、固定的生成长度上限T,提前结束的部分用一个占位符⊥填充到这个长度。这样一来,不管当前的回答实际多短,重新生成的提议始终可以覆盖到整个T的范围,正向和反向的提议概率都是非零的,MH的可逆性条件就被满足了,之前的那个单向偏差也就从根上被消除了。
实验数据证实了这个修复确实有用:在MATH500上,固定地平线的单链版本比原本截断版本的准确率从83.5%提升到84.5%(Qwen3-4B),同时"撞到生成上限还没说完"的比例(hit-capacity rate)从9.2%降到8.0%,说明修复后模型更容易把话说完整,而不是被迫拦腰截断。
阶梯怎么搭:α之间的间距,藏着另一个设计智慧
搭好一组不同α的链还不够,α具体怎么取值,直接决定了交换能不能发生。
如果相邻两条链的α差得太远,它们的回答分布几乎没有重叠,交换提议几乎总是被拒绝,整条链就被切成了互不往来的孤岛;如果α挨得太近,交换倒是很容易成功,但浪费了副本名额,没有真正探索出新的东西。
论文借用了经典并行退火里的等接受率阶梯(equi-accepting ladder)设计思路:让相邻链对之间的交换接受率尽量相等,不要出现某一对链之间的接受率特别低(成为整条链路的瓶颈),也不要出现某一对特别高(说明这两个α其实没必要分开设置)。理论推导表明,如果似然的波动程度大致按1/α的比例缩放,那么等接受率条件会自然导出一个几何等比数列式的阶梯安排,也就是α_k之间按固定比例递增,而不是固定差值递增。
实验里也验证了这个设计原则确实重要:在相同的5个副本、相同计算预算下,随机挑选阶梯值的效果最差(在HumanEval编程测试上甚至比单链基线还低1个百分点),等差数列阶梯效果一般,几何等比阶梯有明显提升,而严格按等接受率原则调出来的阶梯效果最好,在MATH500上带来3.2个百分点的提升,在HumanEval上带来4.5个百分点的提升。
这个道理放到接力赛跑里也成立。假如你安排一队接力选手,每一棒之间的速度差距如果太大,交接棒的时候很容易掉棒(对应交换接受率太低),因为后一个人根本跟不上前一个人冲过来的速度;但如果每一棒的选手速度都差不多,那你其实可以用更少的人跑完全程,没必要安排那么多人(对应阶梯浪费副本)。真正高效的接力阵容,是让每一棒之间的速度差保持在"刚好能顺利交接"的水平上,这样既不会掉棒,也不会浪费人力。
交换顺序也有讲究:论文比较了两种经典的交换调度策略。一种是有序相邻扫描(ADJ),按顺序依次尝试1-2、2-3、3-4……这样的相邻交换,每次交换成功就立刻生效,允许一个回答在一轮扫描里连续跳好几级;另一种是确定性奇偶交错(DEO),先统一尝试所有奇数位置的交换,再统一尝试所有偶数位置的交换,交替进行,这样同一轮内的交换可以并行执行。理论分析显示,在副本数不多的情况下,ADJ完成一次"往返旅行"所需的预期迭代次数只有DEO的一半;但ADJ的通信开销随副本数平方增长,副本数一多,DEO反而更快。论文实测也印证了这个理论:在他们使用的副本数规模下(4到5个),ADJ在所有测试基准上都优于DEO,比如Qwen3-8B在AIME上ADJ拿78.3%,DEO只有75.7%。
这套方法到底换来了什么,代价是什么
把所有实验结果摆在一起看,PPT在15个"模型-测试集"组合里拿到了全部的最优或并列最优成绩,唯一的平局出现在已经接近满分的GSM8K小学数学题上(这个测试集本身太简单,提升空间有限)。更关键的是,它在所有测试里从没有低于标准解码的水平,这意味着这套方法是"稳赚不赔"的改进,不会因为换了采样策略反而变差。
当然,天下没有免费的午餐。多条链同时跑,显存占用会显著上升:论文测的数据显示,4个副本的PPT相比单链,峰值显存要高出3.73倍(Qwen3-8B)到2.47倍(Qwen3.5-9B)。不过好消息是,由于论文把各副本的生成过程做了批处理(放在同一个支持连续批处理的推理引擎上跑),实际的生成时间增幅远没有想象中那么大,4个副本只比单链多花3%的时间,而交换这个动作本身的开销只占总时间的0.1%,几乎可以忽略不计。
这个代价结构其实挺像团队协作里常见的那种权衡:多雇几个人确实要多发工资(显存开销),但如果这几个人能并行干活而不是互相干扰,团队整体完成任务的时间并不会线性增加,反而可能因为分工和信息共享而加速完成(通过交换机制把探索成果迅速转化为产出)。
写在后面
读这篇论文时,有一个细节让我反复琢磨:论文作者专门做了一个思想实验级别的对照组,叫做"K个不交换的链"(uncoupled ladder)。这个设计特别狡猾,因为它精确地回答了一个很容易被忽略的质疑,会不会PPT的提升只是因为"多跑了几条链,取个投票结果"这种朴素的集成效应?
答案是否定的,交换本身在创造信息增量,不是简单的算力堆砌在起作用。这提醒我一件事:很多看起来"效果好"的方法改进,如果不做这种拆解实验,很容易被误判成"只是用了更多资源"。真正有价值的创新,应该是在相同资源下创造出了额外的结构性收益,而这篇论文用一个干净利落的对照实验把这件事证明清楚了。
另一个让我意外的地方是那个截断偏差的发现。这种bug很容易被忽视,因为它不会让程序报错,只会让采样结果悄悄地、持续地偏离你本来想要的目标,而且短期内这个偏差甚至看起来在变小(论文图里那条先降后升的曲线)。这种"看起来在改善、实际在累积系统性误差"的现象,在很多工程系统里都可能存在,只是不一定每次都有人愿意花力气去做严格的数学证明把它揪出来。
一个几十亿参数的开源小模型,不需要额外训练,只靠重新设计"怎么从它自己的脑子里抽样",就能摸到千亿级闭源模型的门槛。这件事如果放在三年前,大概没多少人会相信。那么下一个问题自然就冒出来了:如果采样策略本身还有这么大的潜力可以挖,我们现在拼命砸钱去做的那些训练后优化,到底有多少比例,其实原本可以在推理这一端,用聪明得多却便宜得多的方式解决掉?
Q&A
Q1:并行功率退火PPT是什么?
A:PPT是一种推理阶段的采样技术,通过运行多条不同锐化强度的采样链并让它们定期交换生成结果,解决了单条链采样时探索与利用无法兼顾的问题,能让小模型在不训练的情况下显著提升推理准确率。
Q2:PPT和强化学习后训练(比如GRPO)相比有什么优势?
A:PPT不需要更新模型参数,不需要奖励信号或验证器,纯粹在推理阶段起作用,计算成本远低于强化学习训练,但在多项测试中(如GPQA、AIME竞赛数学)准确率反而超过了GRPO训练后的模型。
Q3:论文发现的结构性截断偏差具体是什么问题?
A:之前的功率采样方法在处理提前结束的回答时,重新生成只能在当前长度内进行,导致短回答能换成功但无法换回长回答,造成概率只能单向流动,使采样结果系统性偏离真实目标分布,论文通过固定长度构造修复了这个问题。







































































































































































































