RLVR 对每条回答的所有词元一视同仁地做策略梯度,但 CoT 里绝大多数词元只是顺着句子往下走,只有少数几个在决定「接下来走哪条推理路」。 论文用量化到词元的熵把这批「分岔词元」找出来,只保留 top 20% 高熵词元的梯度, 做法只是在 DAPO 目标上乘一个指示函数,却在 Qwen3-32B 上把 AIME'24 / AIME'25 的 Acc@16 分别推高 7.71 / 11.04 个百分点,且模型越大优势越大。
观察一:CoT 里超过一半的词元熵低于 10⁻²,只有约 20% 高于阈值 0.672。高熵那批人是 "wait / however / thus / suppose" 这类逻辑转折词,低熵那批人是词尾、代码片段和算式成分——前者是岔路口,后者是沿路走。
观察二:按词元熵分开设解码温度后,AIME'24 + AIME'25 的平均分在 62.71 ~ 72.22 之间浮动(Figure 3 上的标注值)。压低分岔词元的温度时,平均分从 71.04(T=1)掉到 62.71,而同样压低其它词元只掉到 68.33——低端相差 5.62 个百分点(68.33 − 62.71,相对 62.71 高 9.0%);高端把分岔词元调到 3.0 到 72.22,其它词元调到 5.0 却回落到 70.76,相差 1.46 个百分点(72.22 − 70.76)。论文原文的措辞是 "significantly degrades" 与 "substantially better"。
观察三:RLVR 基本延续 base model 的熵分布(训练收敛时 top 20% 高熵位置与初代的 overlap 仍有 86.67%),主要改动的也是高熵词元。
于是方法只有一句话:在 DAPO 的损失里只保留每个 mini-batch 中熵最高 20% 的词元。低熵 80% 的梯度直接丢弃,在 32B 上不仅不掉点,反而大幅超过全词元训练,规模越大越明显。
先把「词元熵」和「分岔词元」两个概念立起来,这一节不涉及任何训练改动。
RLVR 的现状是:算法不断迭代(PPO → GRPO → DAPO),但几乎所有实现都对一条回答里的每一个词元计算策略梯度,并默认它们贡献相同。论文指出,这忽略了词元在推理中承担的不同功能——大量的语法规整词元可能只是噪声,真正决定推理走向的词元却混在里面被平均掉了。§7 Related Work
对生成的第 t 个词元,模型先给出 vocab 上的概率分布 pt,当然可以算出它的香农熵:
作者用 Qwen3-8B、温度 T=1.0、强制 thinking 模式,在 AIME'24 / AIME'25 上生成了超过 10⁶ 个词元,统计结果高度偏斜:熵低于 10⁻² 的占约 50.64%,熵高于 0.672 的恰好是最高的 20%(0.672 就是这批 10⁶ 词元的 80% 分位点)。§3 / Figure 2(a)
示意图:每格代表等数量的词元,颜色按 Figure 2(a) 的统计比例上色(精确到百分比见下方工具栏),不是原始直方图。
从出现频次 > 100 的常用词元里,各取平均熵最高 / 最低的 100 个做词云(Figure 2(b)(c)):
wait、however、unless(转折 / 换路)、thus、also(推进 / 补充)、since、because(因果)。
数学推导里还常出现 suppose、assume、given、define——都在引入假设、已知条件或定义。
多是单词后缀、源码片段或数学表达式中的固定成分,确定性极高——模型在这些位置几乎只有一个合理选择。
它们的作用是「把当前半步走完」,不改变方向。
论文据此把这些高熵词元称为 forking tokens(分岔词元):用熵、而不是「答案对错」来给词元分重要性。这也是整篇工作的立足点——论文自己的说法是,相对前人按输出正误判断词元重要性,它提出"token entropy as a criterion that may more accurately reflect the underlying mechanisms"(§7),用词是 may,不是已证实的结论。§3 / §7
论文把已有工作归成两条路,各自差了一口气,但合起来正好搭出本文的位置。
Qwen3、VAPO 等工作都注意到 entropy 在 CoT 推理中很重要,但核算时对所有词元做平均。§3 开头
平均值被大量近零的低熵词元稀释,看不清「少数词元撑起了探索」这件事,更无法据此挑出要训练哪些位置。推断(依据:§3 只说前人「analyze the entropy of all tokens collectively」,未逐词元分析;「被稀释」与「无法据此挑位置」是据此推出的,原文未就此点做实验)
Vassoyan et al.(2025)识别「critical tokens」——模型容易出错的决策点,用改 KL 惩罚的方式驱动探索;Lin et al.(2024)找对错误结果贡献大的词元。
这个定义是部分结果导向的:Vassoyan et al.(2025)与 Lin et al.(2024)都以输出是否出错来判定词元重要性,而错误要等答案生成完才知道,所以这个判断必须先看到结果。它挑的是「容易出错的点」,不一定是「该探索的分岔点」。§7 Related Work
作者不满足于定性观察,直接在解码时按词元的熵分别调制温度(Eq. 5)——高熵位置用一个温度,其它位置用另一个温度,在 AIME'24 + AIME'25 上评测 Qwen3-8B(最大响应长度 28,672):
把其中一组温度固定在 T = 1(Thigh = 1 或 Tlow = 1),另一组在 0.05 ~ 5.0 间扫(Figure 3 横轴为 T = 0.0 / 0.05 / 0.3 / 0.6 / 1.0 / 2.0 / 3.0 / 5.0),得到 Figure 3 的两条曲线(纵轴是 AIME 2024 与 AIME 2025 的平均分)。下表只收录原图上数值与所属曲线都无歧义的标注;「—」表示该温度处的标注落在两条曲线之间、无法归属(见下表脚注),数字不猜:
| 扫描的温度 | 0.05 | 1.0 | 2.0 | 3.0 | 5.0 |
|---|---|---|---|---|---|
| A · 只动其它词元 Thigh=1,扫 Tlow |
68.33 | 71.04 | — | — | 70.76 |
| B · 只动分岔词元 Tlow=1,扫 Thigh |
62.71 | 71.04 | — | 72.22 | 70.94 |
看两条曲线在低端的差别:把分岔词元的温度压到 0.05,成绩掉到 62.71;而同样把其它词元压到 0.05,还有 68.33,两者相差 5.62 个百分点(68.33 − 62.71,即其它词元组比分岔词元组高 9.0% 相对值)。原文措辞是 "lowering Thigh significantly degrades performance compared to lowering Tlow"。高端方向,分岔词元调到 3.0 时达到 72.22,其它词元调到 2.0 之后一路回落到 5.0 处的 70.76(原文:"increasing Thigh results in substantially better performance than increasing Tlow";此时两者相差 1.46 个百分点,72.22 − 70.76)。论文对此的解读是:分岔词元需要更高的熵才配得上它们作为「岔路口」的角色,而其它词元一味加温,会让模型生成无意义的输出(原文"which can even cause LLMs generating nonsensical outputs";图中 Tlow 越出横轴常规范围、Tlow = 20 处的离群标注为 20.14,Thigh = 0.0 处为 0.14)。
看懂 Eq. 6 相比 Eq. 4 改了什么、没改什么,就掌握全文。
基线是 DAPO,它的目标是在整条回答所有词元上做因 token 级别的裁剪重要性比与 group 内标准化后的优势的乘积之和,再除以总词元数做平均(Eq. 4)。论文的做法是:
pt 与 HtI[H ≥ τ],低熵词元贡献归零与 DAPO(Eq. 4)逐项对照,差异只有红色的两处:
只有在(mini-)batch B 内熵值不低于阈值 τBρ 的词元才进入损失;其余词元的梯度直接不参与反向传播。§5.1
原本除以全 batch 的词元总数,现在除以通过筛选的词元数。§5.1 否则丢掉 80% 词元会让损失缩水 5 倍(只保留 1/5 的词元),有效学习率等于被悄悄改了(1 ÷ 0.2 = 5 倍)。推断(依据:Eq. 6 的分母;原文只给出归一化项的定义,没有讨论学习率影响)
阈值 τ 是每个(mini-)batch 内动态计算的分位点,不是固定常数,所以即便不同问题、不同长度的回答熵分布差异大,「取了多少比例的词元」也是稳定的。§5.1
作者在 Qwen3-8B / 14B / 32B 三个规模上分别只训 top 10%、top 20%、top 50%、100%,或反过来只训最低 80%(Figure 7)。训练过程中的整体平均熵是一条很干净的信号:ρ 取 10%、50% 或 100%(以及只训 bottom 80%)时,整体平均熵都显著更低(原文:"significantly reduced overall entropy"),也就是探索不足。论文的解释是:真正参与探索的只有约 20% 的高熵词元——砍到 10% 误伤了一些有用的分岔点,扩到 50% / 100% 则混进了大量低熵词元(论文原文的措辞是 "adds low-entropy tokens"),反而削弱了探索效果。§5.3 / Figure 7
下面这个模拟把「top-ρ 选择」落在一个 batch 上,看看 ρ 变成多少时被选中的词元里还剩多少真正能推动探索的部分:
模拟里把每个词元按熵排序后按 ρ 截断。手算示例:8,192 个词元里真正的高熵分岔词元是 8,192 × 20% = 1,638 个,ρ=0.20 的截断点正好落在它们之内,选中 1,638 个;ρ=0.50 时选中 4,096 个,其中混入 4,096 − 1,638 = 2,458 个低熵词元;ρ=1.0 时混入 6,554 个。ρ=0.10 时只选中 819 个,仅覆盖真分岔词的 819 / 1,638 = 50.0%——剩下的一半被误伤。
超参数、训练框架、数据全部对齐,唯一变量就是粒度降到词元级的筛选。
| 项目 | 设置 |
|---|---|
| 代码基础 | verl;训练 recipe 沿用 DAPO(Yu et al. 2025) |
| 训练数据 | DAPO-Math-17K |
| 模型 | Qwen3-32B / 14B / 8B base;另测 Llama-3.1-8B(cold-start 后) |
| 选择比例 ρ | 20%(Eq. 6 中 top 20% 高熵词元) |
| clip-higher | εhigh = 0.28,εlow = 0.2 |
| 超长奖励塑形 | 最大回答长度 20,480,cache 长度 4,096 |
| batch / mini-batch | 512 / 32,每轮 16 次梯度步 |
| 学习率 | 10⁻⁶,无 warmup、无调度 |
| KL 损失 / 熵损失 | 均不使用 |
| 评估 | 6 个数学基准,zero-shot,T = 1.0,每题 16 条独立回答,报 Acc@16 与平均长度 |
常见做法是在损失里加 entropy bonus 鼓励探索。论文在讨论部分指出这在 CoT 推理里可能是次优的:它会同时抬高所有词元(包括本该低熵的确定性词元)的熵,反而破坏低熵多数的稳定性。§6 Discussion 3clip-higher(通过给重要性比 r 高的词元更高上限,间接抬高其熵)之所以有效,恰恰是因为「重要比 r 高的词元往往熵也更高」,天然就瞄准了高熵那部分(原文:"tokens with high importance ratios rt(θ) tend to have higher entropy",是经验观察)。
本文的 top-ρ 选择则是哑铃式的:不改变任何词元的分布,只决定哪个词元的梯度在损失函数中说话。结果并不省算力——rollout 仍要生成完整回答,前向仍要算所有词元的 logits 与熵;省下来的只是反向传播里低熵词元那部分梯度计算,以及它们带来的梯度噪声。推断(依据:Eq. 6 的筛选发生在算完 Ht 之后,rollout 与前向不变;「低熵词元带来梯度噪声」是本文的解读之一,论文原话是 low-entropy tokens "may have little effect on or could even hinder reasoning performance",没有单独测量省下多少反向计算或噪声)
对照 Figure 1(b) 的示意,标出新增的「按熵截断」环节到底发生在哪里。
两个设计细节值得重点标出:门槛 τ 是整个(mini-)batch 的一个分位点(不是每条回答各自取 20%),所以长短回答会被放到同一池子里比较——一篇长回答能贡献更多的「被选中词元」,短回答可能几乎全军覆没。这也解释了为什么归一化项用全 batch 被选中词元数(Eq. 6 里对 i、t 一起求和),而不是每条回答自己的选中数。§5.1 长回答占更多名额这一点是直接由「batch 内统一分位点」推出来的。推断(依据:Eq. 6 的阈值 τBρ 在 batch B 内统一;论文未按回答长度分桶统计选中比例)
这是全文最反直觉的地方:丢掉 80% 词元的梯度,不但没掉点,在大模型上还能明显涨。下表 3 摘自原文 Table 2 的 Acc@16(每题 16 条独立回答的平均准确率,zero-shot,T = 1.0)。
| 模型 | 基准 | DAPO 全词元 |
DAPO top 20% |
Δ Acc |
|---|---|---|---|---|
| Qwen3-32B | AIME'24 | 55.83 | 63.54 | +7.71 |
| Qwen3-32B | AIME'25 | 45.63 | 56.67 | +11.04 |
| Qwen3-32B | AMC'23 | 91.88 | 94.22 | +2.34 |
| Qwen3-32B | MATH500 | 94.36 | 94.88 | +0.52 |
| Qwen3-32B | Minerva | 45.70 | 45.82 | +0.12 |
| Qwen3-32B | Olympiad | 66.16 | 69.02 | +2.86 |
| Qwen3-32B | 平均 | 66.59 | 70.69 | +4.10 |
| Qwen3-14B | AIME'24 | 45.21 | 50.42 | +5.21 |
| Qwen3-14B | AIME'25 | 38.13 | 42.92 | +4.79 |
| Qwen3-14B | 平均 | 61.40 | 64.39 | +2.99 |
| Qwen3-8B | AIME'24 | 33.33 | 34.58 | +1.25 |
| Qwen3-8B | AIME'25 | 25.42 | 26.25 | +0.83 |
| Qwen3-8B | AMC'23 | 77.81 | 77.19 | −0.63 |
| Qwen3-8B | 平均 | 53.71 | 54.23 | +0.53 |
Figure 8 把 8B → 14B → 32B 的 Acc@16 提升画成一张趋势图(单位均为绝对百分点):AIME'24 上 +1.25 / +5.21 / +7.71,AIME'25 上 +0.83 / +4.79 / +11.04(顺序为 8B / 14B / 32B)。8B 基本持平(AMC 上甚至是负的),14B 有可观增益,32B 的增益最大。论文把这种随规模放大的模式归因于「较小的模型可能容量不足,限制了它从增强探索中获益的能力」("This may be due to the insufficient capacity of the smaller model, which restricts its ability to benefit from increased exploration."),同样的解释也出现在原文对 Qwen3-8B 的分析中("probably due to the model's lower capacity");原文是直接比较 8B / 14B / 32B 的增益趋势,并没有针对三个规模分别做验证。推断(依据:§5.3 与 introduction 的归因句;论文没有做「限制容量 / 放开容量」的控制实验)
原文 §8 的 Limitations 与本文补充的批判视角,合在一起就是这张「使用时该注意什么」的清单。
论文自己在 Limitations 里写明:换一个 RLVR 设定,"the effective proportion of 20% observed in our experiments may need to be adjusted to a different value to achieve optimal results"。消融(Figure 7)只有 10% / 20% / 50% / 100% / bottom 80% 五档,且都在 Qwen3 + DAPO-Math-17K 上;论文称约 20% 是探索与训练稳定性的「有效平衡」,但没有给出跨任务的 20% 证据。§8 Limitations / §5.3
原文没有讨论「真正驱动推理的词元比率是否随任务结构变化」;推断(依据:Limitations 只笼统地说 20% 可能在别的 RLVR 设定里需要调整,未分析原因,也无跨领域实验)——这属于本文作者视角的提示,不是论文结论,使用时应自行验证。
在 Qwen3-8B 上只训 top 20% 与全词元几乎持平:六个基准的平均 Acc@16 为 54.23 vs 53.71(+0.53 个百分点),AMC'23 上 77.19 vs 77.81(−0.625 个百分点,相对 −0.8%)。论文对 8B 的解释是 "probably due to the model's lower capacity"——用词是「可能」,且论文没有做容量控制实验。如果外推到比 8B 更小的模型,「只训高熵」未必再成立。推断(依据:论文没有小于 8B 的规模结果,原文明说 "these findings are based on specific experimental settings")
所有主结果都在 Qwen3 家族上。Llama-3.1-8B 上直接用 DAPO 时在训练集(DAPO-Math-17K)上准确率只有约 1%,且早期容易输出重复词;作者只能先用 Qwen3-32B 做 teacher 生成回答并从 DAPO-Math-17K 中随机抽 10,000 条正确答案做 cold-start SFT,剩下 7,398 条再做 RL。即便这样 top 20% 仍优于全词元,但作者自己也承认 "the results on Llama-3.1-8B are less convincing compared to those observed on the Qwen3 models"。§5.4 / §8 Limitations
训练数据全是数学(DAPO-Math-17K),评估也以数学竞赛题为主;OOD 只验证了 LiveCodeBench 一个。论文把编程、ARC-AGI 等列为未来方向(§8 Limitations "could be expanded")。在开放、松散的领域(如写作、对话),「高熵词元 = 决策点」这个对应关系未必成立。推断(依据:§8 Limitations 建议把数据扩展到 math 之外;论文未在写作/对话类任务上做实验)
一句话总结:这篇论文的贡献不是「又找到一个调参技巧」,而是把「哪个词元在驱动推理」这个问题从『整条回答』细化到『单个词元』,并用一个几乎零成本的目标函数改动来验证这个视角。把 20% 当成一个经验起点,而不是一个普适常量,是使用这套方法时最该保持的状态。