微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 用一句话思考题开场:如果让一个大模型少说点话,但又不让它变笨,你会怎么做?

用一句话思考题开场:如果让一个大模型少说点话,但又不让它变笨,你会怎么做?

2026-11-12 10:58
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2026-11-12 10:58 • 科技行者

你有没有遇到过这种情况:问一个很简单的数学题,AI 却要先在心里"嘟囔"半天,写出一大段看起来像是在自言自语的思考过程,然后才给你答案?

这段"嘟囔"在技术圈有个专门名字,叫**思维链**。

> 思维链*:指大模型在给出最终答案之前,先生成一段逐步推理的文字过程,常用 `<think>...</think>` 这样的标签包裹起来。

这东西确实管用,能让模型在数学、代码这类需要多步推理的任务上表现大幅提升。但它也有个很现实的毛病:生成这段思考过程特别费时间。因为大模型吐字是一个一个来的,叫做**自回归解码**。

> 自回归解码*:模型每生成一个字,都要把前面已经生成的所有字重新过一遍,再预测下一个字,这个过程必须严格按顺序进行,没法跳步。

想象你在用对讲机和朋友聊天,你说一句,对方才能接一句,中间不能同时说话插话。如果你的朋友每次回答之前都要先把整件事从头捋一遍再开口,哪怕捋的内容再有道理,你们俩这通话也得拖上老半天。思维链的问题就是这样:它想得越全面,说得就越多,而说得越多,等待的时间就越长。

这就是这篇论文要解决的核心矛盾:思考得深入和回答得快速,这两件事能不能同时兼顾?

**核心问题:省了思考,连带省掉了可靠性**

面对思维链太慢这个问题,业界已经有了一个常见的应对思路,叫**非思考模式**。

> 非思考模式*:跳过显式的思考过程,模型直接根据问题生成答案,省去中间那一大段推理文字。

有些模型比如 Qwen3,专门做了后训练,让用户可以手动关掉思考模式,直接要答案。还有研究发现,哪怕是本来就带思考功能的模型,你把它的思考标签硬塞成空的,它照样能给出答案,而且速度明显变快。

听起来挺美好对吧?但问题来了:非思考模式牺牲的不只是时间,还牺牲了可靠性。

论文里提到一个很实际的数据对比。拿 Qwen3-0.6B 这个小模型在 GSM8K 这个经典小学数学题数据集上测试:完整思考模式的准确率能到 73.81%,但如果换成原生非思考模式,直接掉到 58.82%,整整少了 15 个百分点。换句话说,每做 7 道题,非思考模式就要比完整思考模式多错 1 道。这不是小数目。

为什么会这样?因为很多多步骤的数学题,没有中间推理的"脚手架",模型很容易靠蒙、靠套路蒙混过关,产生那种看起来头头是道、但实际上压根没真正推导出来的答案。这就好比盖房子不打地基,直接往上搭,看着挺快,可一遇到稍微复杂点的结构,墙说塌就塌。

那有没有折中的办法:既不用非思考模式那种"裸奔"式的直接作答,又不用完整思考模式那种拖拖拉拉的长篇大论?

这正是研究者们动手去想办法的地方。

**研究者的灵感:思考的作用,其实是在给模型"量身定制"**

要解决这个矛盾,研究者先问了一个更底层的问题:思维链为什么管用?它到底在模型内部做了什么事?

答案是:思维链让模型针对每一道具体的题目,临时调整了自己处理信息的方式。换句话说,模型并不是对所有题目都用同一套"脑回路"去算,而是会根据这道题的具体内容,现场微调自己的内部状态。

这个洞察非常关键,因为它意味着:思考过程本质上提供的是一种"针对这道题的定制化调整",而不是单纯的"多算几步"。

那如果我们能用别的办法,更快地给模型做出这种"针对这道题的定制化调整"呢?

研究者们注意到一个现成的工具箱,叫**参数高效微调**。

> 参数高效微调*:不去动一个大模型里成千上万亿的全部参数,而是只调整其中极小一部分(比如偏置项),就能让模型行为发生明显改变,常见方法有 LoRA、BitFit 等。

已经有不少研究证明,哪怕只调整模型里极小一部分参数,比如那些叫做**偏置**的小数值,也能明显地把模型的行为"掰"向某个方向。这就跟开车一样,你不需要把整台发动机都换了,有时候只是调一下方向盘的角度,车就能明显往左或往右偏。

于是研究者产生了一个大胆的想法:既然思考过程本质上是在给模型做"临时定制",那能不能跳过生成那一长串思考文字,直接根据题目预测出一组参数调整值,把这些值"打"进模型里,让模型瞬间变成"懂这道题"的状态,然后直接写出简洁的分步解答?

这就是本文提出的 HYPERTHINK 的核心思路。

![HYPERTHINK 概念对比图:非思考模式直接从问题到答案,思考模式要生成一长串思考轨迹,HYPERTHINK 用超网络预测一次参数更新,之后直接生成答案](placeholder)

从图上能看出三种模式的对比。非思考模式是问题直接变答案,一步到位但容易出错。思考模式是问题变成一堆思考字再变答案,准但慢。HYPERTHINK 是用一个叫**超网络**的小模块,看一眼问题,瞬间算出一组参数更新,塞进原模型里,之后原模型就直接写答案,不用啰嗦。

> 超网络*:一个专门用来生成另一个网络参数的网络,输入是问题文本,输出是一组数值,用来调整主模型的部分参数。

这里有个很形象的类比:这就像你去看医生,普通模式是医生看一眼就直接开药(可能有误诊风险),完整问诊模式是医生跟你详细聊半小时病史才开药(准但慢),而 HYPERTHINK 相当于医生先快速看一眼你的检查报告(这一步很快,不需要你多说话),心里立刻有了判断方向,然后直接给出靶向用药方案。那份检查报告扮演的角色,就是超网络一次性生成的参数调整,它不需要你(也就是模型自己)再啰嗦地自言自语。如果没有这份"检查报告",医生要么乱猜(非思考模式的风险),要么必须让你把病史从头讲一遍(思考模式的慢)。

**技术拆解一:只调一小撮参数,为什么偏偏选偏置?**

既然要用超网络去预测参数更新,第一个要解决的现实问题是:大模型动不动就有几亿、几十亿个参数,超网络要是对着这么大的输出空间去预测,那也太费劲了,等于把问题从"思考慢"换成了"预测参数慢",没解决根本问题。

所以研究者做了一个大胆的收缩:只调整模型里一小部分叫**偏置参数**的东西。

> 偏置参数*:神经网络每一层计算中加的一个常数项,相比于占大头的权重矩阵,偏置的数量少得多,但依然能明显影响模型行为。

在论文给出的例子里,一个 0.6B(6 亿参数)的模型,经过这样筛选之后,需要超网络预测的目标参数只剩下 9 万个左右,占整个模型参数的 0.015%。

这个数字对比一下会更有体感:9 万和 6 亿,比例差了四位数。这就好比给一辆车做调校,不是把整个发动机拆了重装,而是只调一下胎压和座椅角度。调整幅度很小,但如果调对了地方,依然能让这辆车开起来手感完全不一样。如果非要调整全部参数,那超网络自己要输出的东西比原模型还大,这事就根本做不动了,速度优势也就荡然无存。

为什么偏偏是偏置而不是别的小部件?论文里专门做了对比实验,拿偏置调整和另外两种常见的参数高效微调方式比较,一种叫 **LoRA**(低秩适配,往权重矩阵里插入两个小矩阵的乘积),一种叫**提示微调**(往输入前面加一些可学习的"虚拟词")。结果显示,偏置调整在数学题的准确率上都略胜一筹,比如在 GSM8K 上,偏置方案准确率 61.06%,LoRA 是 60.71%,提示微调是 60.18%。差距不算特别悬殊,但偏置确实是三者里表现最稳的。

**技术拆解二:VQ 瓶颈,让参数更新变成"套餐"而不是"私人定制"**

光靠超网络预测偏置更新,还不够。研究者在实验中发现了一个麻烦:如果让超网络完全自由地给每道题生成一组独一无二的参数调整,这套系统在训练集上表现不错,但一换到没见过的题目类型,表现立刻跳水。

这就是典型的**过拟合**问题,模型学会了"认题目",但没学会"真的会解题"。这好比一个学生死记硬背了课本上每一道例题的答案,一到考试换了说法就不会做了。

研究者的解法叫**向量量化**,简称 VQ。

> 向量量化*:不让模型输出任意连续的数值,而是先准备好一本"参数更新词典"(叫做码本),每次超网络给出的更新结果,都要被"吸附"到词典里最接近的那一个条目上,相当于强制从有限选项里选一个。

这个设计的巧妙之处在于,它把原本连续、无限多样的参数调整空间,压缩成了一本有限的"词典"。每道题来了之后,超网络不是凭空捏造一套独一无二的调法,而是从词典里挑最匹配的几个条目拼出来。

拿点菜打个比方。如果一家餐厅允许顾客任意自定义每一道菜的所有配料比例,厨房的灵活度确实无上限,但顾客稍微换一种口味组合,厨房很可能从没练过这个搭配,手忙脚乱做不好。而如果餐厅准备了十几种搭配好的"套餐",顾客只能在套餐里微调,看起来自由度变小了,但每个套餐都是厨房反复练过的、稳定靠谱的组合,哪怕顾客的需求和之前某个顾客不完全一样,套餐机制也能保证"大差不差"地给出一份过得去的菜。VQ 瓶颈起的就是这个"套餐化"的作用:它牺牲了一部分针对单一题目的极致贴合,换来的是面对没见过的新题目时,依然有一套经过反复验证、靠得住的调整方式可用。如果不加这个限制,超网络面对训练里没出现过的题型,往往会生成一些"自信但错误"的参数更新,这正是过拟合最危险的地方。

论文里有一组对照实验专门验证了这件事。在同样是 Qwen3-0.6B 模型、同样训练数据的情况下,去掉 VQ 瓶颈的版本,在 MATH-500(一个比训练集更难、也更"陌生"的数学题测试集)上准确率是 43.32%,加上 VQ 瓶颈之后直接提升到 48.76%。而且更关键的是,研究者还专门去对比了两个版本在训练集本身上的表现,发现两者几乎一样,都在 67% 左右。这说明 VQ 瓶颈并不是让模型把训练题目背得更熟了,它真正起作用的地方是在训练之外的新题目上。这就坐实了前面那个"套餐化"的类比:套餐机制本身不会让你在家常菜上做得更好吃,它的价值体现在应付没练过的新订单时。

**技术拆解三:超网络内部的三件套,怎么把文字变成参数**

搞清楚了"为什么调偏置"和"为什么要套餐化",接下来就该看超网络内部具体长什么样了。

它由三个部件串联而成。第一个叫**文本编码器**,用一个冻结不动的预训练语言模型,把输入的题目文字变成一组数值表示,这一步只需要一次前向计算,不涉及逐字生成,所以非常快。第二个叫**偏置编码器**,用一种叫 **MM-DiT** 的架构,把题目的文字信息和一组"占位用"的可学习参数标记放在一起联合处理,让每个参数标记都能"读懂"这道题目的内容,同时各个参数标记之间也能互相"商量"。第三个就是前面提到的 VQ 解码器,把偏置编码器输出的连续表示,吸附到码本里最接近的条目上,再解码成最终要注入模型的偏置更新值。

> MM-DiT*:一种架构,把两种不同性质的信息(这里是文字和参数占位标记)当作两种"模态"分别处理,再通过联合自注意力让它们互相交流,原本是从图像生成领域借用过来的设计。

这三件套合起来,就相当于一条流水线:先读懂题目,再把题目信息灌进一组参数坑位,最后把这些坑位里的内容规整成标准化的"套餐"条目,打包输出。

有一个细节值得单独说一下:VQ 解码器的输出投影层,一开始被人为设成了全零。这意味着模型在训练刚开始的时候,超网络给出的参数调整量其实是零,相当于什么都没改,模型行为和原本的非思考模式完全一样。这个"零初始化"的设计有点像新手厨师刚上岗先原样复刻菜单,不敢乱加任何自己的调料,等练出手感之后再逐渐加入自己的判断。这样做的好处是训练一开始不会因为乱改参数而把模型直接搞坏,给了一个稳妥的起点。

**训练怎么教:拿模型自己的思考结果当老师**

超网络的结构定下来了,怎么训练它?

答案出乎意料地简单:拿基础模型自己思考模式下生成的答案,当作训练目标,教非思考模式下(经过超网络调整参数之后)的模型去模仿。

具体来说,先让原模型用完整思考模式生成一批带有思考过程的答案,筛掉做错的,只留下对的。然后训练超网络,让它根据题目预测出一组参数更新,注入模型之后,模型不看那段思考过程,直接生成的答案要尽量跟"有思考过程"时生成的答案一致。这个过程用的是标准的**交叉熵**损失,是训练语言模型最常用的一种衡量预测准不准的指标。

这套训练流程还搭配了两个辅助的小机制。一个是前面提到的 VQ 本身的匹配损失,用来让码本里的条目和实际需要的参数值对齐。另一个叫**使用率正则**,专门防止码本"塌缩"。

> 使用率正则*:防止训练过程中,所有题目都挤到码本里的少数几个条目上,导致剩下的条目完全没人用,这种现象叫码本塌缩。使用率正则会鼓励各个条目被尽量均匀地用到。

如果没有这个正则,训练很容易走捷径,变成"反正这几个条目效果凑合就行",然后把码本里剩下的几十个条目都废置不用。这就好比一本词典本来准备了几百个词条,结果大家图省事,天天就用那十个最常用的,剩下的条目全都荒废了。加上使用率正则,相当于强行要求"大家轮流用一下其他词条",逼着模型把词典里的多样性真正用起来。

**码本里到底学到了什么:按科目自动分类的数学题**

训练完之后,一个很自然的问题是:码本里那些条目,到底学到的是什么?是不是真的有意义,还是纯粹的黑箱随机分配?

研究者做了一个挺讨巧的分析:把 MATH-500 测试集里的题目按被分配到的码本条目分组,再看看每一组题目主要属于哪个数学科目,用了哪些高频词。

结果相当漂亮。第一个代表性的码本条目,主要被分配给代数、中级代数、初级代数和数论类的题目,高频词是"log"(对数)"equation"(方程)这类代数味很浓的词。第二个条目主要对应概率题,高频词是"bag"(袋子)"probability"(概率)"randomly"(随机)。第三个条目主要对应三角函数和解析几何,高频词是"pi"(圆周率)"tan"(正切)"sin"(正弦)"cos"(余弦)。

这说明码本并不是在瞎分配,它确实学到了某种"按题型归类"的内在结构,相当于自己悟出了一本按科目分类的解题手册。这个发现其实挺让人意外的,因为训练过程中研究者从没明确告诉模型"这是代数题""那是概率题",这种分类完全是模型自己从数据里摸索出来的。

**实际效果:在小模型和大模型上都验证了低延迟区的优势**

说了这么多设计思路,最终还是要看实际跑分表现。

论文在两套场景下做了实验:数学推理和综合推理。数学推理用的基础模型是 Qwen3-0.6B 和 SmolLM3-3B,分别在 GSM8K 和 DeepScaleR 数据集上训练,再测试 GSM8K 测试集和作为"陌生题库"的 MATH-500。综合推理则换了更大一点的 SmolLM3-3B 和 Olmo-3-7B-Think,训练数据混合了代码题、逻辑推理题(LogiQA)、开放书本问答(OpenBookQA)等多种类型,测试覆盖 AIME 奥赛数学、LiveCodeBench 代码生成、BIG-Bench Hard 多步推理、CommonsenseQA 常识问答四个方向。

| 推理模式 | GSM8K-测试 准确率 | MATH-500 准确率 | FLOPs(计算量) |

|---|---|---|---|

| 完整思考模式 | 73.81% | 52.64% | 最高 |

| 预算受限思考模式 | 36.15% | 43.76% | 中等 |

| 原生非思考模式 | 58.82% | 46.84% | 低 |

| System 2 蒸馏 | 61.91% | 31.40% | 中等 |

| TokenSkip | 61.64% | 37.12% | 中等 |

| **HYPERTHINK** | 61.06% | **48.76%** | 低 |

(基础模型为 Qwen3-0.6B 的部分结果)

这张表里最值得玩味的一行对比是 HYPERTHINK 和"预算受限思考模式"。后者是把完整思考模式强行砍短,用差不多的计算量去跑,结果 GSM8K 准确率只有 36.15%,MATH-500 只有 43.76%,而 HYPERTHINK 在差不多的计算开销下,分别做到了 61.06% 和 48.76%,差距相当明显。这说明单纯把思考过程砍短,效果损失很大;而把思考过程换成参数调整,损失要小得多。

另外还有个值得留意的现象:在 MATH-500 这个"陌生题库"上,System 2 蒸馏(直接微调整个模型来模仿思考模式输出)的表现反而比 HYPERTHINK 差了不少,只有 31.40%。这再次印证了前面说的 VQ 瓶颈带来的泛化优势:直接微调整个模型,更容易在没见过的题型上"失手"。

模型换大一点之后(SmolLM3-3B),这个优势进一步放大。在 GSM8K 上,HYPERTHINK 做到 84.75% 的准确率,而原生非思考模式只有 74.81%,差了整整 10 个百分点,而且 HYPERTHINK 用的计算量还更低一点。这说明这套方法随着模型变大,不但没有失效,反而优势更明显了。

在综合推理场景下,HYPERTHINK 在 CommonsenseQA 和 BIG-Bench Hard 这两个方向上,相比原生非思考模式有明显提升,而且用的是接近非思考模式的低延迟。论文还提到一个很直观的数字:在 Olmo-3-7B-Think 这个 70 亿参数模型上,HYPERTHINK 能达到和完整思考模式相当的表现,但只花了后者大约 7% 到 9% 的回答时间。这意味着差不多准的答案,等待时间从原来的十几秒缩短到不到一秒。

当然,这套方法也不是万能的。在 AIME 这种奥赛难度的数学题和 LiveCodeBench 代码生成题上,大预算的完整思考模式依然明显更强,HYPERTHINK 并没有全面超越所有基线。这其实挺诚实地指出了这个方法的边界:它更适合那种"有一定难度但不需要海量搜索式推理"的题目,一旦题目难度逼近需要大量试错和回溯的程度,一次性的参数调整终究替代不了反复思考带来的信息量。

**写在后面**

读完这篇论文,让我印象最深的其实不是最终的跑分数字,而是那张分析码本的图。研究者没有刻意告诉模型"这是代数题,那是几何题",但训练完之后扒开码本一看,它真的自己把题目按科目分了类。这意味着这套机制可能摸到了某种更底层的东西:不同数学题目之间确实存在某种可以被压缩进"有限几种调整模式"的共性结构,而不是每道题都需要一次完全独立的思考。

还有一个反直觉的小发现值得单独说一下:把超网络限制得越死(只调极小一部分偏置、还要套餐化到有限码本),模型在陌生题目上反而表现得更好,而在训练集本身上几乎没差。这跟我们直觉里"给模型越多自由度它应该越聪明"是相反的。某种程度上这提醒了一件事:对于"举一反三"这种能力,约束本身可能才是关键,不加约束的灵活性反而容易变成死记硬背的陷阱。

这篇论文没有解决的事情也很明显。它处理不了那种需要真正多步探索、反复试错的难题,比如奥赛级别的数学竞赛题。这是不是意味着"参数调整"这条路,天生就只能替代浅层的思考模式,而没法替代那种需要反复推敲、推了又退回去重新来的深层思考?如果真要用参数更新去模拟那种"算了几步发现走不通,退回去换个思路"的过程,这组参数又该怎么设计?这是个留给人慢慢琢磨的问题。

Q&A

Q1:HYPERTHINK是什么?

A:HYPERTHINK是一种让大模型跳过长篇思考文字、直接通过超网络预测参数调整来快速解题的方法。它用一次非自回归的超网络前向计算,预测出模型少量偏置参数的更新值,注入冻结的基础模型后,模型就能直接生成简洁的分步解答,不需要生成冗长的中间思考轨迹。

Q2:HYPERTHINK和普通的非思考模式有什么区别?

A:普通非思考模式是模型直接根据问题生成答案,没有任何额外调整,准确率往往明显下降,比如在GSM8K上比完整思考模式低15个百分点左右。HYPERTHINK会先用超网络给模型做一次针对该题目的参数微调,再让调整后的模型直接作答,这一步调整只需一次前向计算,速度接近非思考模式,但准确率明显优于普通非思考模式。

Q3:HYPERTHINK里的VQ瓶颈有什么用?

A:VQ瓶颈把超网络输出的连续参数调整值,强制吸附到一本有限的码本条目上,相当于把参数更新限制成有限几种"套餐"而不是任意自由组合。这样能有效防止模型只在训练数据上表现好、却在没见过的新题目上失灵的过拟合问题,实验显示它在陌生测试集MATH-500上把准确率从43.32%提升到了48.76%。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-