FR3E
Paper · arXiv 2025 · v1

First Return, Entropy-Eliciting Explore:先回到高熵岔路口,再重新探索

RLVR 只有最终答案的对错,GRPO 把同一个轨迹级优势摊给所有 token。FR3E 先找出一条推理轨迹里熵最高的 K 个位置,从这些中间状态重放 M 条部分轨迹,用成功率估 V(Sj),再据此调制优势。 它不需要 critic,也不需要过程标签;代价是部分 rollout 带来的不同计算足迹,论文没有给出定量对比。

Tianyu Zheng 等 · ByteDance / M-A-P / University of Manchester arXiv 2507.07017v1 ↗ 项目页 ↗
TL;DR · 30 秒抓住核心

RLVR 的奖励是最终答案的 0/1 判定;一条长推理里,哪一步是关键、哪一步是填充,奖励本身不区分。GRPO 的做法是用最终结果估一个轨迹级优势,再把它摊到轨迹里的所有 token。

FR3E 把探索起点从 prompt 移到高熵中间状态:先跑一条 base trajectory,算每个 token 的熵,取 top-K 位置作锚点,把轨迹切成 K+1 个块;再从每个前缀状态 Sj 重放 M 条部分轨迹,用成功率估 V(Sj)。

最后用 αj = 1 / exp(V(Sj) − V(Sj−1)) 调制优势:有进步就压低信号,停滞就放大信号。它不训练 critic,也不训练 PRM;中间信号是采样出来的,不是学出来的。

40.2%
AIME24 · Qwen2.5-32B · FR3E
avg@32;GRPO++ 34.1
+6.1pp
AIME24 绝对点差
40.2 − 34.1;相对 17.9%
+1.8pp
Qwen2.5-Math-7B 平均分点差
60.3 − 58.5;专精模型增益有限
01

奖励只在终点,信用却要分给每一步

RLVR 的奖励是最终答案的对错;真正的难题是判断哪一步推理值得保留。

数学推理的轨迹可以很长,但奖励通常只有一个 0/1 的最终判定。于是所有中间步骤共享同一个结果信号:答案错了,前面某一步可能才是罪魁祸首;答案对了,某一步也可能只是碰巧。论文把这件事称为 granular assignment of credit to intermediate steps(§1)。

GRPO 是这条路上常见的基线,也是论文的主要对照。它不训练 critic,而是对同一个 prompt 采样一组完整轨迹,用组内相对奖励估一个轨迹级优势,再把这个优势分配给轨迹里的所有 token。论文的原话是:GRPO 用最终结果奖励去估计所有中间动作的价值,“incorrectly averages the contribution of each step”(§1)。关键步骤和填充步骤拿到同样的信用,模型没有动力去强化真正决定成败的那一步。

核心矛盾

奖励稀疏,轨迹很长,信用却要分到 token 级

如果只用最终奖励,信用分配不可避免地变粗;如果训练 critic 或 PRM,又引入新的不稳定、偏差或标注成本。论文要做的,是在不训练 critic、不用过程标签的前提下,构造一个语义上站得住的中间信号。

Eπ[ Σt γt r(st, at) ]
Eq. 1 · MDP 的目标;在 LLM 的生成过程里,r 通常只在完整 rollout 结束时给出(§3.1)

PPO 和 VAPO 试图用 critic 估计中间状态的价值,但论文指出:为 LLM 的巨大状态空间训练一个稳定、准确的 critic 很难,常常带来不稳定、偏差和显著的计算开销(§1)。这为后面的两条路——过程奖励与轨迹级比较——埋下了伏笔。

02

三条旧路:Critic、过程奖励、轨迹级比较,各缺一块

PPO 有细粒度但难训;PRM 有过程信号但贵;GRPO 简单但把整条轨迹当成一个动作。

已有方案可以粗分成三条路。它们都能提供某种中间信号,但每条路都留下了一个缺口。

本页按 §1–§2 整理的对照,不是论文表格;引文为原文英文句子。

路线论文原句(§)留下的缺口(本页概括)
PPO / VAPO
critic-based
“training a stable and accurate critic for the vast state space of LLMs is difficult, often leading to instability, bias, and significant computational overhead”(§1) 需要额外训练 critic;长程奖励传播仍然困难。
GRPO
trajectory-level
“use the final outcome reward to estimate the value of all intermediate actions”; “incorrectly averages the contribution of each step”(§1) 轨迹级信号,无法区分关键步骤与填充步骤。
VinePPO / PRM
process-level
VinePPO “segments trajectories heuristically and uses Monte Carlo (MC) sampling for step-level advantages”; PRMs “face challenges with heuristic quality, sampling variance, labeling costs for explicit PRMs, or the granularity of implicitly derived rewards”(§1) 依赖启发式分段、过程标签或采样方差。

FR3E 选择的是第四条路:不训练 critic,不训练 PRM,也不把最终奖励直接摊到所有 token。它先从 base trajectory 里找出高熵位置,再从这些位置重新生成,用部分 rollout 的成功率估一个中间状态的 value。这个 value 不是学出来的,是采样出来的。

这个思路借自 Go-Explore 的 “First Return, Then Explore”:先回到一个有希望的状态,再从那里探索(§2、§3.4)。论文把「回到」落到 LLM 的自回归生成上:回到高熵前缀,重新采样后续。

03

先找到高熵岔路口,再从那里分叉

FR3E 把一条完整轨迹切成 K+1 个语义块,在 K 个高熵锚点上做 M 次部分 rollout,用成功率估每个中间状态的价值。

First Return:用 token 熵找岔路口

给定 query q,先让当前策略生成一条 base trajectory:

Pbase = (q, t1, t2, …, tL)
Eq. 3 · 一条完整的推理轨迹;后面所有锚点都从这条轨迹上选

然后在每个位置 k 计算 token 级熵:

Hk = − Σv∈𝒱 πθ(v | q, t<k) log πθ(v | q, t<k)
Eq. 5 · 熵高说明模型在这个位置对下一个 token 更「犹豫」

论文取整条轨迹上熵最高的 K 个位置作为锚点:

𝒦 = TopK({ Hk }k=1L)
Eq. 7 · 只看熵值排序,不看位置

这 K 个锚点把轨迹切成 K+1 个块:

Pbase = B1 ∪ B2 ∪ … ∪ BK+1
Bn = (tkn−1+1, …, tkn),   k0=0, kK+1=L
Eq. 8–9 · 每个块是两个锚点之间的 token 区间

由这些块定义中间状态 Sj:

Sj = (q, B1, B2, …, Bj)
Eq. 10 · 到第 j 个锚点为止的前缀,用来重置上下文

Entropy-Eliciting Explore:从每个 Sj 重放 M 条

对每个 Sj,重置上下文,从该状态生成 M 条部分轨迹:

Yj,m ~ πθ(· | Sj),   m = 1, …, M
Eq. 11 · 不是从 prompt 重跑,而是从中间状态续写

每条轨迹的奖励是二元的:答案正确为 1,否则为 0(Eq. 12)。于是 Sj 的经验价值就是这 M 条轨迹的平均成功率:

V(Sj) = (1/M) Σm=1M rj,m
Eq. 13 · value 不是网络估的,是采样出来的

这一步是 FR3E 与 GRPO 的关键差别:GRPO 从 prompt 开始跑完整轨迹,FR3E 从中间状态开始跑部分轨迹。它不需要过程标签,但需要从中间状态做 M 次采样。

Adaptive Advantage Modulation:用相邻状态的价值差调学习信号

有了 V(Sj),论文定义调制因子:

αj = 1 / exp( V(Sj) − V(Sj−1) )
Eq. 14 · 进步时 α<1,停滞时 α≥1

然后把它乘到优势上:

A′(Sj, Pj,m) = αj · A(Sj, Pj,m)
Eq. 15 · 只改学习信号的强度,不改优势的方向

两个分支的原文是:当 V(Sj) > V(Sj−1),αj < 1,“This reduces the influence of the advantage signal for successful paths, preventing premature convergence and preserving exploration diversity”;当 V(Sj) ≤ V(Sj−1),αj ≥ 1,“This amplifies the learning signal, encouraging more aggressive exploration to overcome reasoning bottlenecks”(§4.3)。换句话说,进步时踩一点刹车,停滞时踩一点油门。

论文还给出一个理想化性质:如果同一个块内所有轨迹等长,调制后的优势在整个 batch 上的平均恰为 0(Eq. 16–17)。实际轨迹长度不一,论文说会有偏差,但估计量仍近似无偏(§4.3)。

自己动手:拖动 K,看锚点、块和 α 怎么变

下面是一个简化模拟。12 个 token 的熵值是页面设定的示意值,M=8,成功次数也由页面设定;论文没有报告 K、M 的具体取值,也没有给出逐 token 熵表。拖 K 看 top-K 锚点如何改变块划分与调制因子。

当前状态

示例数据声明:12 个 token 的熵值、每个锚点的成功次数、M=8 都是页面设定的示意值,仅用于演示机制;不是论文实验数据。

手算对账:K=2 与 K=4 两组与上方滑块输出逐位一致

共同设定:12 个 token 的熵值依次为 t1=1.2, t2=3.6, t3=0.8, t4=3.1, t5=1.9, t6=2.9, t7=0.6, t8=2.5, t9=1.4, t10=2.2, t11=0.9, t12=1.7; M=8;成功次数固定为 t2=3, t4=5, t6=6, t8=2;V = 成功次数 / 8;锚点按位置升序排列。

K=2:熵值前 2 是 t2=3.6、t4=3.1 → 锚点 {t2, t4} → 块 B1=t1–t2, B2=t3–t4, B3=t5–t12。 V(S1)=3/8=0.375,V(S2)=5/8=0.625。 α2 = 1/exp(0.625−0.375) = 1/exp(0.25) = 0.7788。 α1 不计算:原文未定义 V(S0)。

K=4:熵值前 4 是 t2=3.6、t4=3.1、t6=2.9、t8=2.5 → 锚点 {t2, t4, t6, t8} → 块 B1=t1–t2, B2=t3–t4, B3=t5–t6, B4=t7–t8, B5=t9–t12。 V(S1)=3/8=0.375,V(S2)=5/8=0.625,V(S3)=6/8=0.750,V(S4)=2/8=0.250。 α2 = 1/exp(0.625−0.375) = 1/exp(0.25) = 0.7788; α3 = 1/exp(0.750−0.625) = 1/exp(0.125) = 0.8825; α4 = 1/exp(0.250−0.750) = 1/exp(−0.5) = 1.6487。 α1 不计算。

这个模拟覆盖了什么、没覆盖什么?简化模拟,不是原文算法复现

覆盖:Eq. 7 的 top-K 选择;Eq. 8–10 的块/状态切分(按位置升序展示);Eq. 13 的经验价值 V = 成功数 / M;Eq. 14 的 αj(仅 j≥2)。

未覆盖:真实的策略 rollout 与奖励判定;可变轨迹长度;拒绝采样与 PPO / Clip-Higher 目标;V(S0)(原文未定义);优势 A 的具体估计与 Eq. 16–17 的等长假设。页面不声称与原文逐行一致。

两处原文表述并列:§1 说锚点取自 “correctly completed reasoning trajectories”;§4.1.1 的生成步骤只写从 policy 生成 base trajectory,没有写正确性过滤条件。Eq. 9–10 把 Bj 定义到 tkj 为止,§4.1.4 的文字却说 Sj 在 kj “just prior to”;本模拟按 Eq. 9–10 的区间(含 kj)切分。

示例数据:12 个熵值、成功次数、M=8 都是页面设定;论文未报告 K 与 M 的取值,也未给出逐 token 熵表。

04

训练能跑,但成本账没有算完

VeRL、512 batch、1e-6、16k 响应、16 rollouts/prompt、KL=0、entropy loss=0;论文没有给出与 GRPO++ 的定量成本对比。

训练配置(§5.1)

项目设置
框架VeRL
batch size512
learning rate1 × 10−6
clip range0.22 – 0.28
max response length16k tokens
rollouts per prompt16
KL coefficient0
entropy loss0
mini-batch size128
训练数据DeepScaler(低难度)+ SimpleRL difficulty 3–5(高难度)
评测采样greedy;AIME24 用 avg@32

拒绝采样:对每个 prompt 先跑多条 rollout;如果奖励全 0 或全 1,这个 prompt 被视为退化,从当前 batch 里剔除(§3.2)。因为剔除后 batch 可能不满,论文采用累积样本直到凑满一个完整 batch 再更新(§5.1)。

数据设置有一个附录说明:这套 DeepScaler + SimpleRL 的组合是在 Qwen2.5 7B math base 上做初步实验后选定的;作者提醒,这个结论不一定能直接迁移到 Qwen2.5 32B 等其他 base model(Appendix 7)。

成本:论文明确说,FR3E 与 GRPO++ 的 group size 对齐 “inherently infeasible”;即使匹配 rollout 数,推理成本也会因为部分 rollout 机制而不同。FR3E 只从中间状态生成,而不是从 prompt 跑完整序列;论文称这带来更高效的探索和更好的信用分配,代价是 “a different computational footprint”(§5.2)。论文没有给出与 GRPO++ 的定量成本对比,也没有断言更高或更低。

K 与 M:§5.1 只写了每个 prompt 16 次 rollout;论文没有说明这 16 次与 §4.2 的 M 是否同一参数,也没有报告 K 的取值。复现时这两个数需要自己定。

05

两阶段流程 + 优势调制:一条基础轨迹,变成一组可比较的中间状态

Figure 1 只画了 Stage 1 与 Stage 2;③ 是 §4.3 的调制机制,不是第三个阶段,本图把它单列出来以便读公式。

① First Return(Stage 1) base trajectory P_base token entropy H_k top-K anchors → K 个位置 这些位置即分段点 → blocks B1..B(K+1) → states S_j ② Entropy-Eliciting Explore(Stage 2) M partial rollouts from each S_j binary reward r → V(S_j) = 成功数 / M ③ Adaptive Advantage Modulation(§4.3,非 Figure 1 的阶段) α_j = 1 / exp(V(S_j) − V(S_{j−1})) A′ = α_j · A → policy update
按 §4.1–4.3 与 Figure 1 的文字重绘;保留数据流,省略论文图中的模型图标与配色,不是逐像素复制。
图里每一步对应原文哪条式子?按数据流拆开
  • base trajectory:Eq. 3,一条从 q 生成的完整推理轨迹。
  • token entropy:Eq. 5,每个位置的策略熵。
  • top-K anchors:Eq. 7,熵最高的 K 个位置。
  • blocks / states:Eq. 8–10,锚点把轨迹切成 K+1 块,前缀状态 Sj 用于重置上下文。
  • partial rollouts:Eq. 11–12,每个 Sj 生成 M 条,奖励为 0/1。
  • V(Sj):Eq. 13,M 条轨迹的平均成功率。
  • αj:Eq. 14–15,按相邻状态的价值差调制优势。

这个流程的关键在于「重置上下文」:Sj 是一个真实的前缀,模型可以从它继续生成;因此 FR3E 不需要把整条轨迹重新跑一遍,只需要从锚点续写。论文用这一点解释它的探索效率,也用它解释为什么 inference cost 与 GRPO++ 不同(§5.2)。

06

通用模型上稳定抬升,数学专精模型上增益有限

Table 1 的 8 个数学基准、3 个 Qwen2.5 模型;AIME24 用 avg@32,其余 greedy。

Table 1(Accuracy %)。本页只转录 FR3E 与 GRPO++ 两侧的原始分数;论文表中括号写作 (+6.1%) 等,按同一行两侧分数相减,它们是准确率百分点差,不是相对提升。§5.1 的基准列表没有列 AMC23,但 Table 1 有这一行;本页按表转录。

Benchmark Qwen2.5-Math-7B Qwen2.5-7B Qwen2.5-32B
FR3EGRPO++ FR3EGRPO++ FR3EGRPO++
AIME2439.139.125.222.740.234.1
GSM8k91.391.292.891.296.195.8
Math50082.281.679.077.887.485.2
Minerva Math40.838.239.035.345.643.0
Gaokao2023en67.865.267.363.975.371.4
Olympiadbench46.543.042.138.851.748.7
College Math47.447.545.145.148.347.0
AMC2367.562.567.560.080.075.0
Avg60.358.557.354.365.662.5

先看 AIME24:三个模型的 FR3E / GRPO++ 对比如下(Table 1,avg@32)。

Math-7B
FR3E 39.1
GRPO++ 39.1
Qwen2.5-7B
FR3E 25.2
GRPO++ 22.7
Qwen2.5-32B
FR3E 40.2
GRPO++ 34.1
FR3E GRPO++

柱高按准确率 0–100 线性映射;数值直接来自 Table 1。

几个值得单独看的点:

训练动态:熵、优势、All-Right / All-Wrong

Figure 3 的熵损失曲线显示:Qwen2.5-7B 和 32B 上 FR3E 维持略高的熵水平;Qwen2.5-Math-7B 上 FR3E 后期熵回升,GRPO++ 更快收敛到低熵。Figure 5 的优势曲线更贴近 0、波动更小。Figure 7 的 All-Wrong 轨迹下降,Figure 8 的 All-Right 轨迹上升。Figure 9 的热图显示 FR3E 从低准确率区域向高准确率区域稳定迁移。这些图在正文中没有逐点数值,本页未转录。

07

它优化的是「怎么探」,不是「奖励从哪来」

四个边界:专精模型增益有限、成本未定量、K/M 未报告、奖励仍是二元的。

边界一

数学专精模型:增益有限

Qwen2.5-Math-7B 的平均分只从 58.5 抬到 60.3(+1.8 个百分点),AIME24 39.1 vs 39.1,College Math 47.4 vs 47.5(低 0.1 个百分点)。论文的解释是 fine-tuned knowledge 可能受到干扰(§5.2)。

边界二

成本:只说了 footprint 不同

FR3E 从中间状态做部分 rollout,GRPO++ 从 prompt 跑完整轨迹;论文说 group size 对齐不可行,推理成本会不同,但没有给出定量对比(§5.2)。所以「更贵还是更便宜」在这篇论文里没有定量答案。

边界三

K 与 M:没有报告

§5.1 只写每个 prompt 16 次 rollout;论文没有说明它与 M 的关系,也没有报告 K 的取值,正文没有 K/M 的消融。复现时需要自己定这两个超参数。

边界四

奖励与范围:仍是 0/1 结果奖励

Eq. 12 的奖励是二元的;论文的实验集中在数学基准,没有报告代码、Agent 或开放式任务的结果,也没有使用过程标签。FR3E 改变的是中间信号的来源,不是最终奖励的形式。

一句话:FR3E 改的是「中间信号怎么来」,不是「最终奖励怎么来」。最终奖励仍是 0/1 的结果判定;它用高熵锚点和部分 rollout 把中间状态的价值采样出来,再把这个价值反馈到优势。这个思路不依赖 critic 或 PRM,但也没有消除稀疏奖励本身。