CURE
LLM-RL · 熵坍缩 · arXiv 2025

CURE:在高熵 token 处重拼接,给 RLVR 续上探索

RLVR 训练里,模型会很快变得自信:GRPO 的熵迅速塌向 0,DAPO 与 Clip-Cov 停在中等熵水平。CURE 不去改损失,而是改采样——先让模型生成一批回答,找到熵最高的若干位置,随机取一个,把它前面的前缀拼回问题,再让模型从这个「自己曾经犹豫过」的上下文继续生成。第一阶段抬高熵,第二阶段切回 DAPO 收 accuracy;Qwen2.5-Math-7B 上六基准平均 First Stage 52.1、Second Stage 54.3(基座 26.2),AIME24 从基座 16.6 到 35.5。

Qingbin Li、Rongkun Xue、Jie Wang、Ming Zhou 等 · ByteDance / Xi'an Jiaotong University / Shanghai AI Laboratory 原文 v2 ↗
TL;DR · 30 秒抓住核心

论文把熵坍缩归因于「静态初始状态采样」:每个采样阶段都从数据集分布里抽同样的 prompt,模型逐渐只会走最熟的路径。CURE 的第一阶段用 token 级熵找关键分岔:每条初始回答里取 top-K 高熵位置,均匀随机选一个 t*,把 o1:t*−1 拼到原问题后面形成 q',再生成 N2 条分支;原始 N1 条与分支回答合成一个组,用去掉 KL 项的 GRPO 式目标联合优化。第二阶段换回 DAPO,在原始问题上继续训练 100 步,把探索压成准确率。

结果集中在竞赛数学:AIME24 35.5、AIME25 18.5、AMC23 89.7;六基准平均 54.3,比最强基线 NFT 的 51.7 高 2.6 分(相对 5.0%)。但 MATH500 只有 83.4,低于 LUFFY 的 87.0 与 Clip-Cov 的 84.8;第二阶段对 MATH500 只加 1.0 分。论文的「5% gain」是相对值,不是 5 个百分点;AMC23 的「107% improvement」按表格复算是 71.8%。

54.3
CURE Second Stage · 六基准平均;First Stage 52.1,基座 26.2,最强基线 NFT 51.7
+2.6pp
Second Stage 相对 NFT(54.3−51.7);相对提升 5.0%
89.7
AMC23 · CURE Second Stage;基座 52.2,First Stage 82.7
01

熵塌下去之后,RLVR 只是在重复自己已经会的解法

读完这节你应该知道:论文把熵坍缩的原因指向了「采样起点」,而不是损失函数。

RLVR 用规则 verifier 给最终答案 0/1,GRPO 或 DAPO 再把这个信号变成策略梯度。问题在于:每个采样阶段都从数据集分布里抽同样的 prompt、用同一个策略生成一组回答;训练越久,模型越倾向于输出它已经会的少数几种解法,token 级熵持续下降。Figure 3 里 GRPO 的熵很快塌向 0,DAPO 与 Clip-Cov 在中等熵水平平台化,KL-Cov 前期低、后期才回升。熵一低,探索就停,准确率也随之进入平台。

论文把这种现象称为「static initial-state sampling」导致的熵坍缩:初始状态始终来自同一分布,模型没有机会走到训练分布之外、但仍然语义连贯的状态。CURE 的切入点不是给熵加正则,而是改写采样起点——把模型自己生成到一半、正处在高不确定位置的上下文,变形成下一次生成的 prompt。这样新状态既超出原训练分布,又由模型自己的前缀保证连贯。

现象

GRPO 熵快速归零

Figure 3 的熵曲线里,GRPO 下降最快;DAPO、Clip-Cov 停在中等熵平台,探索没有恢复。Figure 3

原因

起点始终来自同一分布

每个采样阶段都从数据集分布抽同样的初始 prompt,模型反复走熟悉路径,回答越来越确定。§3.2

代价

后期训练不再带来新能力

熵低意味着策略分布窄;论文称这会限制持续训练中的性能增益,而不是只影响多样性指标。§1

02

已有方案在损失或梯度上控熵,CURE 改的是训练状态分布

读完这节你应该知道:KL 正则、KL-Cov / Clip-Cov、Forking Tokens 与 CURE 各自作用在哪一层。

路线 A

KL 正则与熵奖励

GRPO 的 KL 项把策略拉向参考模型,防止更新过远;也有工作直接把熵加进损失鼓励随机性。§3.1 论文认为这类做法是「全局」的:它不区分哪些 token 值得探索,只是整体抬高或压住熵,容易在探索与任务目标之间拉扯。§5

路线 B

KL-Cov / Clip-Cov / Forking Tokens

KL-Cov 对高协方差 token 加选择性 KL,Clip-Cov 裁剪高协方差 token 的梯度;Forking Tokens 直接丢弃低熵 token 的梯度。三者都在「哪些 token 参与更新」上做文章,但仍然从固定数据集 prompt 出发采样;CURE 改的是「从哪里开始生成」。

Appendix B.1

CURE 与它们正交:它不替换优化器,也不改奖励函数;第一阶段仍是 GRPO 式裁剪目标,只是把原始轨迹和重拼接产生的分支放进同一个组,并去掉 KL 项。§3.3 论文把这种关系描述为「data-generation intervention」,可以直接插进现有 RLVR 管线。§5

03

核心机制:找 top-K 高熵位置,随机取一个,把前缀拼回问题

读完这节你应该知道:第一阶段的 8 个步骤、组怎么构造、第二阶段为什么用 DAPO。

3.1 第一阶段:关键 token 引导的重拼接

对每个数据集问题 q,先采样 N1 条初始回答;对每条回答的每个位置计算策略熵 Hi,t。然后按熵排序取 top-K 位置集合 T(i)K,从里面均匀随机选一个 t*i——论文特意避免直接取最高熵位置,以防总是偏向同一个 token。截取 t* 之前(不含该 token)的前缀 pi = oi,1:t*−1,拼到原问题后面:q'i = q ∥ pi。

每个 q'i 再生成 N2 条分支回答。最终一个组由「N1 条原始回答 + N1 × N2 条分支回答」组成,组大小 N1 + N1N2。组内做 GRPO 式优势归一化,联合优化所有轨迹;全对或全错的组按 DAPO 的动态采样规则丢弃并重采。目标函数去掉 KL 项,只在组内做标准化。§3.2.1

3.2 第二阶段:回到 DAPO 的静态起点

第一阶段结束时模型熵高、探索广,但准确率还没完全兑现。第二阶段停止重拼接,直接在原始数据集问题上用 DAPO 继续训练:10 步 warmup,之后固定学习率 1×10−6 训练到第 100 步;不衰减学习率,也不加 KL 正则。§3.2.2 论文的解释是:DAPO 本身是低熵训练动态,正好把第一阶段探索到的多样路径压缩成高奖励行为。Figure 7 显示,第二阶段在低温 0.6 时以更低熵取得更高 AIME24 分数,在高温 1.0 时则保留更高熵;论文称在整个温度区间内相对 DAPO 有约 5% 的准确率提升。§4.4

3.3 两个阶段的分工

§3.2 的两阶段设计;超参数取值来自 Appendix B Table 3。
阶段采样起点优化目标作用
Stage 1原始 q + 高熵前缀 q'GRPO 式组内标准化,去 KL抬高熵、制造新状态
Stage 2原始 q(静态)DAPO压低熵、兑现准确率
04

工程账:32 张 H20、17K 数学题、N₁=4、N₂=3、K=20

读完这节你应该知道:复现这套两阶段训练需要哪些设置,以及论文没有报告什么。

数据与模型

Qwen2.5-Math-7B-Base + DAPO-Math-17K

训练集是 DAPO-Math-17K,只有数学题与整数答案;基座是 Qwen2.5-Math-7B-Base。评估六个数学基准:AIME24、AIME25、AMC23、MATH500、Minerva、OlympiadBench;AIME/AMC 报 avg@32,MATH500/Minerva/Olympiad 报 avg@1。评测用 temperature 0.6、top-p 0.7。§4.1

训练设置

32 × H20,batch 512,16 条回答

4×8 张 H20;AdamW,学习率 1×10−6,10 步 warmup,weight decay 0.1,grad clip 1.0;train batch 512、mini batch 32、generation batch 1024;每个 prompt 16 条回答;clip ratio 0.2/0.28;KL 系数与熵系数都为 0。第一阶段 N1=4、N2=3、K=20。Appendix B

论文没有报告第一阶段/第二阶段各自的 GPU 小时、总训练时长、显存占用,也没有把「重拼接 + 再生成」的额外采样成本与 DAPO 做量化对比;只给了 32 张 H20 Appendix B 与 17K 数据。第二阶段的步数写作「训练到第 100 步」§3.2.2,第一阶段的步数没有单独给出(Algorithm 1 只写按 epoch 循环)。对复现来说,这两项都是空白。

05

一条样本的旅程:初始回答 → 找关键 token → 拼前缀 → 分支生成 → 联合更新

读完这节你应该知道:重拼接发生在哪一步,以及两阶段在哪里切换。

问题 q DAPO-Math-17K N1 条回答 N1 = 4 token 熵 H(i,t) top-K K = 20 均匀取 t* 从 top-K 中随机 前缀 + 原问题 p = o[1:t*−1] q' = q ∥ p 再生成 N2 条 N2 = 3 分支回答 合并成组 N1 + N1 × N2 = 16 原始 + 分支轨迹 动态采样过滤 全对 / 全错组丢弃 Stage 1 更新 GRPO 式,去 KL Stage 2:DAPO 原始 q,继续 100 步 Stage 1 用高熵前缀制造新起点;Stage 2 回到静态起点,把探索压成准确率
按 Figure 1、§3.2.1 与 Algorithm 1 重绘。组大小按论文默认 N1=4、N2=3 算得 4 + 4×3 = 16;实际训练时还会做动态采样过滤。
06

效果:平均分 54.3,但 MATH500 不是第一

读完这节你应该知道:提升来自哪些基准、第二阶段加了多少,以及论文百分比口径与表格的对应。

6.1 Table 1 完整转录

Table 1(完整转录):六个数学基准;AIME24/25、AMC23 为 avg@32,MATH500、Minerva、Olympiad 为 avg@1。
方法AIME24AIME25AMC23MATH500MinervaOlympiadAvg.
Qwen-Math-7B-Base16.66.352.252.410.719.026.2
Qwen-Math-7B-Instruct13.310.057.184.241.544.441.8
Previous Classical RLVR Methods
Eurus-2-7B-PRIME-Zero18.911.757.779.841.548.042.9
SimpleRL-Zero26.79.360.877.432.041.541.3
OpenReasoner-Zero15.413.456.580.639.045.941.8
Oat-Zero28.810.865.280.042.343.745.1
LUFFY25.822.371.787.044.955.951.3
NFT32.018.388.583.240.847.351.7
Previous Entropy Control Methods
KL-Cov33.417.177.183.843.049.950.7
Clip-Cov32.414.381.684.844.548.050.9
Our Methods
CURE First Stage33.415.382.782.448.250.552.1
CURE Second Stage35.518.589.783.448.250.554.3

6.2 三种读法:平均分、AIME24、两阶段增量

前两个视图按数值降序排列,柱高分别以 60 与 40 为上限;第三个视图按六个基准并列 Stage 1 / Stage 2,柱高按 100 满格。

手算对账 Stage 视图的柱高与两阶段差值

组 1:AIME24。Table 1 给 CURE First Stage 33.4、Second Stage 35.5。差值 35.5 − 33.4 = 2.1,与正文「+2.1」一致;Stage 视图柱高按 v / 100 × 100% 为 33.4% 与 35.5%,readout 输出 33.4 → 35.5。

组 2:AMC23。Table 1 给 82.7 与 89.7。差值 89.7 − 82.7 = 7.0;柱高为 82.7% 与 89.7%,readout 输出 82.7 → 89.7。

组 3:平均分。First Stage 52.1、Second Stage 54.3,差值 54.3 − 52.1 = 2.2;相对 NFT 51.7 的差 54.3 − 51.7 = 2.6,相对提升 2.6 / 51.7 × 100 = 5.0%。JS 读数只输出表内原值,不额外计算差值;以上差值均可在 Table 1 对应单元格复算。

平均分第一,但不是每个基准第一。CURE Second Stage 的 Avg. 是 54.3,高于 NFT 的 51.7(+2.6 点)与 Clip-Cov 的 50.9;First Stage 的 52.1 也已经高于所有基线。AIME24 35.5 比基座 16.6 高 18.9 点,AMC23 89.7 比 52.2 高 37.5 点(相对 71.8%)。但 MATH500 只有 83.4:低于 LUFFY 的 87.0、Clip-Cov 的 84.8、Qwen-Math-7B-Instruct 的 84.2;论文没有把「MATH500 不是第一」写进结论。

第二阶段主要加在竞赛题。从 First Stage 到 Second Stage:AIME24 33.4→35.5(+2.1)、AIME25 15.3→18.5(+3.2)、AMC23 82.7→89.7(+7.0)、MATH500 82.4→83.4(+1.0)、Minerva 与 Olympiad 都持平在 48.2 / 50.5。平均分从 52.1 到 54.3(+2.2)。推断 第二阶段不是全面提升,而是把第一阶段的探索集中兑现到 AIME/AMC 这类难题上;Minerva/Olympiad 的瓶颈不在探索。(依据:Table 1 六个基准的两阶段差值。)

「5%」是相对值,不是 5 个点。论文摘要与结论写「a 5% performance gain across six math benchmarks」;Table 1 的绝对差是 54.3 − 51.7 = 2.6,相对提升 2.6 / 51.7 = 5.0%。§4.4 又说相对 DAPO 在 AIME24 上「consistent 5% accuracy improvement」§4.4,但 Table 1 的 CURE Second Stage AIME24 35.5 与 Table 2 的 DAPO 28.9 是跨表数值 Table 1 Table 2,差 6.6 点(相对 22.8%),两种算法都对不上原文的 5%;Table 2 内的同表比较(33.4 对 28.9,+4.5 点 / 15.6%)另见 §6.3。页面把原文写法与表格复算并列,不替原文消解。

AMC23 的「107%」也复算不出来。§4.2 写「AMC23 (89.7% vs. 52.2%), representing a 107% improvement over the base model」。按表格,绝对提升 37.5 点,相对提升 37.5 / 52.2 = 71.8%;107% 不是这组数的相对提升。论文没有解释 107% 的口径。§4.2

6.3 Table 2:消融转录与原文 26.6 的缺口

Table 2(完整转录):关键 token 选择策略消融;Avg. 是 AIME24/AMC/Minerva/Olympiad 四个基准的平均,与 Table 1 的六基准平均不可直接比较。
方法AIME24AMCMinervaOlympiadAvg.
Qwen-Math-7B-Base16.652.210.719.024.6
GRPO31.080.840.144.949.2
DAPO28.984.747.447.052.0
CURE_Random35.780.341.548.251.4
CURE_Entropy33.482.748.250.553.7

Table 2 内部同表比较。CURE_Entropy 平均 53.7 比 DAPO 52.0 高 1.7 点、比 CURE_Random 51.4 高 2.3 点;CURE_Random 比 DAPO 低 0.6 点。AIME24 上 CURE_Entropy 33.4 比 DAPO 28.9 高 4.5 点(相对 15.6%)。注意 CURE_Random 的 AIME24 是 35.7,反而高于 CURE_Entropy 的 33.4,但它的四基准平均仍低 2.3 点。Table 2

§4.2 的 26.6 在 Table 1 里找不到对应行。§4.2 写 AIME24「35.5% vs. 26.6%」;Table 1 的 AIME24 列没有 26.6(基座 16.6、SimpleRL-Zero 26.7、Oat-Zero 28.8),原文未说明 26.6 的来源或口径。页面只并列,不替原文解释。§4.2 Table 1

07

边界:一个 7B 模型、一个数学域、一笔没有算清的成本

读完这节你应该知道:哪些结论有表格支撑,哪些是论文没有验证的空白。

模型

只有 Qwen2.5-Math-7B

所有实验都基于 Qwen2.5-Math-7B-Base;更大模型、不同架构、或非数学专用模型上是否同样有效,没有实验。§4.1

领域

只有数学

六个基准全是数学竞赛/考试题;代码、科学推理、多模态与工具调用都没有测。论文在结论里把跨域列为未来工作。§5

成本

额外采样没有量化

第一阶段每条原始回答要再生成 N2 条分支,采样量是原来的 1+N2 倍。Appendix B 只给 GPU 型号/数量(4×8 张 H20,即 32 张),未给 GPU 小时、训练时长或显存。

还有三点。第一,超参数只做了关键 token 策略的消融(Table 2:CURE_Entropy 53.7 vs CURE_Random 51.4 vs DAPO 52.0),没有扫 N1、N2、K 的敏感性;这三个参数直接决定额外采样成本与探索强度。第二,Table 1 只给单次结果,没有随机种子、标准差或置信区间;54.3 与 51.7 之间的 2.6 分是否稳定,无法从表格判断。第三,Table 2 的 53.7 是在四个基准(AIME24/AMC/Minerva/Olympiad)上的平均,Table 1 的 54.3 是六个基准的平均,两者不能直接比较;论文没有提醒这一点。Table 2

最后是机制解释:论文把高熵 token 当作「关键决策点」,但高熵也可能来自词表多样性或模板化表达 推断(页面推断:原文没有拆解熵的来源);Figure 5 用 connector token 频率(check/verify/hence)支持「有意义的探索」,但这只是相关性证据,没有证明所有高熵位置都值得重拼接。跨到非数学域时,「关键 token」的定义可能需要重新设计——论文自己在结论里也这样写。§5