分支化在策略蒸馏(BranchOPD) Branching On-Policy Distillation
在学生轨迹的关键决策点重采样分支续写,扩展教师监督覆盖,全面超越单/多轨迹 OPD。
前置知识
在策略蒸馏(On-Policy Distillation, OPD)
学生自己从当前策略采样轨迹,冻结的教师大模型对学生生成的每个 token 打分,形成信号 $\Delta\log p_t=\log\pi_T(a_t|s_t)-\log\pi_\theta(a_t|s_t)$,再用类似策略梯度的方式更新学生。区别于离线 KD 在教师写出的固定文本上训练,学生在自己真正会经过的状态上学到教师的偏好。
本文的全部方法(分叉重采样、共享前缀、PBR)都建立在 OPD 框架上,主要对比基线(Vanilla/Multi-Rollout/Entropy-Weighted OPD)也都是 OPD 变体,不懂 OPD 就无法理解改进点。
反向 KL 散度与逐 token 代理信号
OPD 在学生访问过的前缀 $s_t$ 上最小化 $\mathrm{KL}(\pi_\theta(\cdot|s_t)\|\pi_T(\cdot|s_t))$。实践中教师只对采样到的 token 打分,得到逐 token 信号 $\Delta\log p_t$:教师比学生更偏爱该 token 时为正。把 $-\Delta\log p_t$ 作为固定(detached)优势,其期望在支撑集覆盖时恰好等于反向 KL 的梯度。
这是理解方法部分公式 (2)-(5) 与训练目标的基础,也是理解『分支只是提供更多带教师打分的 token』这一核心思想的钥匙。
PPO 裁剪代理目标与重要性比
策略梯度训练常用比率 $r_t=\pi_\theta(a_t|s_t)/\pi_{\theta_{old}}(a_t|s_t)$ 与截断优势构成损失 $\min(r_tA,\mathrm{clip}(r_t,1-\epsilon,1+\epsilon)A)$,限制单次更新幅度、稳定训练。梯度不流过采样的前缀(滚动分布被视为固定)。
BranchOPD 的主损失 $\mathcal{L}_{tree}$ 就是把逐 token 蒸馏优势代入 PPO 裁剪代理($\epsilon=0.2$),看懂它才能理解训练细节和超参设置。
学生不确定性与师生分歧
熵衡量学生在某位置选 token 时的犹豫程度(本文用 top-20 概率估计);分歧衡量『学生喜欢而教师不喜欢』的程度,用局部 128 token 窗口内聚合的 $-\Delta\log p_t$ 度量。两者经秩归一化后加权混合,用于给候选分叉位置打分。
这两个信号是 BranchOPD 选分叉点的核心打分函数,消融(Table 3/6)显示混合使用显著优于随机选择和单一信号。
多轮智能体环境与状态恢复
ALFWorld/WebShop/Search-QA 中轨迹是「回复—观察」交替序列,观察由环境产生、不参与蒸馏损失。要从轨迹中间的前缀续写,必须把环境恢复到该时刻的状态(快照或动作回放),才能保证续写分布与不间断滚动时一致。
智能体分支重采样的可行性依赖这一点;它也是环境交互成本升至 3.02 倍(Table 12)与 Proposition 1 无偏性成立条件的关键。
Unlikelihood 训练
对希望出现的事件用 $-\log p$ 提升概率,对不希望出现的事件用 $-\log(1-p)$ 压低概率,从而直接监督序列中的特定局部事件,而不只是最大化正确 token 的似然。
PBR(协议边界修复)辅助损失正是该思想的二元事件版本:提升完整答案后 EOS 的概率、压低多余闭合思考标签的概率。
研究动机
蒸馏是把大模型推理与交互能力迁移给小模型的标准手段,但传统离线 KD 让学生只在教师写出的前缀上训练,推理时却要 continuation 自己生成的前缀,存在分布错配。在策略蒸馏(OPD)让学生自己采样轨迹、教师对每个生成 token 打分,缓解了该问题,然而单条轨迹在每个决策点只实现一种续写:即使教师在该前缀给出了完整的下一 token 分布,学生也永远学不到「那些没被选中的 token 会走向什么样的多步历史」。这在数学推理中意味着早期一步走岔会约束整个后续推导;在智能体任务中,一个动作会改变之后所有观察。靠增加独立采样条数(如 Multi-Rollout OPD 用 7 条)扩大覆盖,代价是大部分额外 token 都在重复生成相同或近乎相同的前缀,预算浪费严重;而近期 OPD 变体(按 token 熵加权、按推理步/轮次重加权、按难度调度轨迹)都只对「已经采出来的轨迹」重新分配监督权重,没有回答「还应该额外采样哪些轨迹」这一更根本的问题。
本文的目标是本文的目标是在不增加(甚至减少)学生生成 token 预算的前提下扩大 OPD 的监督覆盖:把主路径没有实现的那部分概率质量(分支质量)转化为带有教师逐 token 反馈的额外历史。具体包括四点:其一,自动找到信息量最大的分叉点,即学生自己不确定(高熵)且师生分歧大(学生偏好的 token 教师不喜欢)的决策位置;其二,从这些位置用学生自身策略重采样若干续写,保证分支严格落在学生自己的分布上,维持「在策略」性质;其三,共享前缀在损失中只计一次,从而比 7 条独立轨迹节省 19%(ALFWorld)到 31%(WebShop)的学生生成 token;其四,顺带处理 OPD 常见的不当终止问题——学生给出最终答案后继续啰嗦或输出杂散格式 token——并用「所有方法都加该修复」的实验设计把分支本身的贡献与修复的贡献干净地分开。
与已有工作不同的是,现有工作的切入角度大多是「如何给已采样轨迹分配监督」:Entropy-Weighted OPD 重加权单条轨迹的 token 损失,有的方法按推理步、有的按轮次重加权,TCOD 按难度调度轨迹,EOPD 在教师高熵 token 上补一个前向 KL 项,SPOT 在选定位置强制教师提出的候选 token 并用结果验证器校准局部目标。本文反其道而行,问的是「还应该额外采样哪些轨迹」。树搜索与分支强化学习早就在做共享前缀的局部探索,但它们依赖任务奖励来比较分支优劣;BranchOPD 把共享前缀探索搬进蒸馏场景,每个分支 token 都获得教师的稠密监督,完全不需要任务奖励。与 SPOT、轨迹精炼类方法的另一本质区别是:分支续写来自学生自身而非教师或修正后的轨迹,因此天然保持在学生分布上;作者还用 Proposition 1 证明了条件重采样估计的无偏性,给这一做法一个干净的统计基础。
核心方法
直觉上,一条轨迹就像只探了一条路的地图:在每个岔路口,没走的那条路上有什么,学生和教师都看不到。BranchOPD 让学生在主轨迹的少数关键岔路口「回头重走」几条岔路,教师则对每一步(每个 token)给出指导。技术路线分四步:先从冻结的滚动策略 $\pi_{\theta_{old}}$ 以温度 1、无截断地采样一条主轨迹;再用两个信号给候选位置打分——学生不确定性 $U_t$(top-20 token 概率估计的熵)与师生分歧 $D_t$(128 token 窗口内聚合的 $-\Delta\log p_t$)——轨迹内秩归一化后按 $v_t=\alpha R(U_t)+(1-\alpha)R(D_t)$ 混合($\alpha=0.5$),数学任务直接选 token 位置,智能体任务先选轮次(轮次分 $v_{turn}(m)$ 为轮内 top-20% 位置分的均值)再在轮内选具体位置;然后从每个分叉前缀用 $\pi_{\theta_{old}}$ 独立重采样 $k=2$ 条续写(智能体任务先用快照或动作回放恢复环境状态),每个输入最多得到 $1+Bk=7$ 条轨迹;最后教师对主轨迹与所有分支的生成 token 逐个打分,共享前缀经掩码只计一次,用带 PPO 裁剪的 token 级蒸馏损失加 PBR 辅助损失更新学生。
核心创新是把「监督覆盖」当作 OPD 的瓶颈来攻击:单条轨迹在每个决策点只实现一种续写,教师再强也只教了被走的那条路。BranchOPD 用学生熵与师生分歧定位「分支质量大」的决策点——诊断显示普通被监督位置 80.4%(ALFWorld)和 59.1%(WebShop)的替代质量 $1-\pi_{\theta_{old}}(a_0|s)$ 低于 0.05,而被选中的分叉点该质量高达 0.63 与 0.69——再从学生策略重采样,把主路径丢弃的概率质量变成带教师反馈的真实历史。与 Multi-Rollout OPD 的本质区别在于分支共享前缀:7 条独立轨迹的大量 token 花在重复彼此的前缀上,分支则把这些 token 换成「同一起点、不同后继」的对比监督;与 SPOT 的本质区别在于分支不是教师指定的 token,而是学生自己会写的续写,保持分布一致且无需奖励模型或答案验证器。理论上 Proposition 1 保证:只要每条分支在给定 $F_0$(主轨迹加分叉点)时条件服从 $\pi_{\theta_{old}}(\cdot|s_b)$,重采样均值 $\hat J_{RS}$ 就是条件期望 $J_\theta$ 的无偏估计,分叉选择依赖主轨迹也不引入偏倚。
方法步骤详情
第一步(滚动采样):冻结滚动策略 $\pi_{\theta_{old}}\leftarrow\pi_\theta$,温度 1、无截断地为输入 $x$ 生成一条主轨迹;数学任务是单轮回答,智能体任务是最多 $M$ 轮「回复—观察」交替,观察只作上下文、不参与监督。第二步(分叉点选择):对每个合法 token 位置计算 $U_t$(top-20 概率的熵)与 $D_t$(128 token 窗口聚合的 $-\Delta\log p_t$),秩归一化后混合成 $v_t$;数学任务选得分最高且熵 $\ge 0.5$ 的至多 $B=3$ 个位置;智能体任务按轮次分 $v_{turn}(m)$(轮内 top-20% 位置分均值)选至多 3 个轮次(轮次间至少间隔 1 轮),再从该轮得分前三的合法位置中均匀抽一个作分叉。第三步(分支重采样):固定 $\pi_{\theta_{old}}$ 与 $\theta$,从每个分叉前缀 $s_b$ 独立重采样 $k=2$ 条续写,智能体任务先恢复环境状态;保留所有后缀(含首 token 与主轨迹相同者,它们可能之后才分叉),每个输入最多得 $1+Bk=7$ 条轨迹。第四步(训练):掩码 $M_{i,t}$ 保留主轨迹全部生成 token 与分支从分叉起的 token;蒸馏信号 $\Delta\log p_t=\log\pi_T(a_t|s_t)-\log\pi_\theta(a_t|s_t)$ 经截断与梯度截停成为优势 $A_{i,t}=\mathrm{clip}(\mathrm{sg}[\Delta\log p_{i,t}],-\delta,\delta)$,配重要性比 $r_{i,t}=\pi_\theta(a_{i,t}|s_{i,t})/\pi_{\theta_{old}}(a_{i,t}|s_{i,t})$ 与 PPO 裁剪($\epsilon=0.2$)组成 token 均值损失 $\mathcal{L}_{tree}$,共享前缀只计一次。第五步(PBR):固定规则检测器扫描轨迹产出约束 $(s,C,b)$,加二元交叉熵辅助损失 $\ell_{proto}=-b\log p_\theta(C|s)-(1-b)\log[1-p_\theta(C|s)]$——数学答案完成后提升 EOS($b=1$)、智能体回复开头抑制多余闭合思考标签($b=0$)——总损失 $\mathcal{L}_{train}=\mathcal{L}_{tree}+\Psi[\lambda\,\mathrm{mean}\,\ell_{proto}]$($\lambda=0.01$,损失上限 $c_{PBR}=0.02$)。
技术新颖性
技术新颖性有三点。其一,把分支的目的从 RL 的「奖励比较」改为蒸馏的「监督收集」:树搜索/分支 RL(如 high-entropy forking、Tree-RL)需要任务奖励评判分支优劣,BranchOPD 的每个分支 token 直接获得教师 $\Delta\log p$ 信号,零奖励、零验证器,因此可用于没有可靠奖励信号的蒸馏场景。其二,统计上的干净性:分叉点虽由主轨迹决定,但 Proposition 1 表明只要每条分支满足 $\tau_{b,j}|F_0\sim\pi_{\theta_{old}}(\cdot|s_b)$,$\hat J_{RS}$ 便是条件期望的无偏估计、方差随 $k$ 以 $1/k$ 下降;覆盖概率 $\Pr(\exists j: a_{b,j}\ne a_0)=1-\pi_{\theta_{old}}(a_0|s_b)^k$ 随 $k$ 边际递减,这直接支撑了「多分叉点 × 少续写数」的预算配置($B=3,k=2$ 优于 $B=3,k=3$)。其三,PBR 针对的是「协议级错误」——由任务格式而非教师分布定义对错:教师被条件在重复的学生前缀上时自己也会跟着重复(附录 B.5:教师自身干净,但在学生重复前缀下平均多写 1.64/1.50 个多余闭合标签),所以通用重复惩罚无效,必须在学生前缀上做定点修复——这解释了 PBR(38.94)远超重复惩罚(28.70-30.40)与过长过滤(33.20)的原因。
实验结果
数学(Qwen3-8B→Qwen3-4B-Base,avg@16):BranchOPD 在 MATH-500/AIME24/AIME25 上得 81.24/26.04/25.83,宏平均 44.37,比 Vanilla OPD(25.82)高 18.55 分,比同预算 Multi-Rollout OPD (n=7)(27.84)高 16.53 分;所有方法都加 PBR 的公平比较下,仍比 Vanilla OPD (+PBR) 高 5.43、比 Multi-Rollout (+PBR) 高 5.28、比 Entropy-Weighted OPD (+PBR)(40.98)高 3.39;对 KD/GRPO/EOPD/SPOT 分别领先 11.27/8.81/6.40/5.94 分,且 GRPO 与 SPOT 用了答案验证而本文只用教师监督;对 SPOT 的优势集中在更难的 AIME(+8.54/+7.91,MATH-500 仅 +1.36)。智能体(学生 Qwen3-4B):三基准平均 SR 46.39,高于 KD/GRPO/TCOD 12.87/2.62/2.60 分;ALFWorld ID/OOD 57.86/55.22(均值 56.54,比 Vanilla OPD 高 13.83,无任务奖励下反超教师 Qwen3-30B-A3B 的 51.79 达 4.75 分);WebShop SR 33.59 超教师的 31.25;Search-QA 49.05,仅比 Vanilla OPD (+PBR) 高 0.47。泛化:换 Qwen3-1.7B 学生,ALFWorld +6.56、数学 +4.68 且在 ALFWorld/WebShop 超教师;换 Qwen2.5 家族(7B-RL→3B)ALFWorld +8.76。消融(Table 3):随机分叉仅 40.11 数学 / 50.71-46.27 ALF,熵与分歧混合最优(44.37 / 57.86-55.22),单信号居中,turn-initial 低 2.14/1.49;预算上 $k=1\to 2$ 全面提升而 $k=3$ 无增益,$B=2,k=2$ 以更低成本保留大部分增益。机理:分叉点替代质量 0.63/0.69(ALFWorld/WebShop),74.2%/47.7% 分支改变动作序列,主轨迹失败时至少一支成功的救援率在数学达 42.7%、WebShop 仅 5.0%;效率上 ALFWorld/WebShop 学生 token 较 7 条独立轨迹省 19.1%/31.2%。PBR 单独把 Vanilla OPD 数学从 25.82 提到 38.94,远超重复惩罚(28.70-30.40)、过长过滤(33.20)与早停(22.05),并把 ALFWorld 多余闭合标签从 1.94/1.91 清零。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 数学推理(MATH-500/AIME24/AIME25 宏平均) | avg@16 (%) | 44.37 | Vanilla OPD 25.82 | +18.55 |
| 数学推理(同 7 轨迹预算) | avg@16 (%) | 44.37 | Multi-Rollout OPD (n=7) 27.84 | +16.53 |
| 数学推理(全员加 PBR 的公平比较) | avg@16 (%) | 44.37 | Entropy-Weighted OPD (+PBR) 40.98 | +3.39 |
| 数学推理(对比非 OPD 方法) | avg@16 (%) | 44.37 | SPOT 38.43 / GRPO 35.56 / KD 33.10 | +5.94 / +8.81 / +11.27 |
| ALFWorld(文本家庭任务智能体) | ID/OOD SR (%) | 57.86 / 55.22 | Vanilla OPD 42.14 / 43.28;教师 Qwen3-30B-A3B 53.57 / 50.00 | 均值较 Vanilla OPD +13.83;反超教师 +4.75 |
| WebShop(模拟购物智能体) | SR (%) | 33.59 | Vanilla OPD (+PBR) 30.47;教师 31.25 | +3.12;超教师 +2.34 |
| Search-QA(检索增强问答) | 精确匹配 SR (%) | 49.05 | Vanilla OPD (+PBR) 48.58 | +0.47 |
| 三智能体基准平均 | Avg SR (%) | 46.39 | TCOD 43.80 / GRPO 43.78 / KD 33.52 | +2.60 / +2.62 / +12.87 |
| 跨规模:Qwen3-4B→Qwen3-1.7B | ALFWorld 均值 SR (%) / 数学 Avg (%) | 49.97 / 34.86 | Vanilla OPD (+PBR) 43.42 / 30.18 | +6.56 / +4.68 |
| 跨家族:Qwen2.5-7B-RL→Qwen2.5-3B | ALFWorld ID/OOD SR (%) | 55.71 / 50.75 | Vanilla OPD (+PBR) 47.14 / 41.79 | 均值 +8.76 |
| 学生生成成本(ALFWorld) | 每 prompt 学生生成 token | 15,924(7 轨迹槽) | 7 条独立轨迹 19,691(单条 2,813) | 节省 19.1% |
| 学生生成成本(WebShop) | 每 prompt 学生生成 token | 4,824 | 7 条独立轨迹 7,014 | 节省 31.2% |
局限与改进
作者呈现或可推断的局限:其一,Search-QA 上相对 Vanilla OPD (+PBR) 只提升 0.47 分,接近持平,说明在轨迹短、答案离散的检索问答上分支带来的行为多样性有限(WebShop 每分支平均只有 0.68 个新动作,远低于 ALFWorld 的 2.44);其二,分支需要环境状态恢复或动作回放,Table 12 显示 3 轨迹槽的 ALFWorld 设置要消耗 2.55 倍生成与 3.02 倍环境步,真实网页/工具环境的重放成本会被进一步放大,而实验只覆盖轻量文本环境;其三,PBR 的检测规则是手工固定的、依赖具体模型的协议 token(如 Qwen 的 151668),换模型或换输出协议要重新设计;其四,教师能力上限仍在:数学 Avg 44.37 远低于教师的 64.64,AIME 绝对正确率也只有 26 左右,蒸馏天花板未触及;其五,关键超参($\alpha=0.5$、$\eta=0.2$、$B=3$、$k=2$、128 窗口、top-20)是在固定任务集上调出的,跨任务/跨规模最优配置未必一致;其六,Proposition 1 只保证重采样统计量的无偏性,并不保证「更多覆盖必然带来更好的学生」,救援率与最终提升之间只是相关性证据;其七,智能体基线池较小,且每任务只评估 1 条轨迹(温度 0.4),SR 的评估方差偏大,缺少与最新分支式 RL 方法的直接对比。
独立分析的弱点
独立分析的弱点与改进方向:其一,分叉选择信号是纯启发式的——熵与 128 窗口聚合的 $-\Delta\log p$ 都不是「该分叉会产生有用且不同行为」的预测器;Table 10 显示即使强制以噪声 token(!)开分支也能比 Vanilla OPD (+PBR) 多得约 1 分,说明当前增益中可能混有「任何额外采样都有用」的成分,改进方向是训练轻量价值头直接预测分叉的期望信息增益。其二,$B=3,k=2$ 对所有输入一视同仁,直觉上更难的题应分更多支;但论文中「只从失败主轨迹分叉」的消融反而掉到 36.82,说明朴素自适应不成立,需要按替代质量与历史救援率联合调度预算。其三,环境回放成本在真实环境会被放大,可用学习到的世界模型或观察缓存避免真实重放,同时保持续写分布近似不变。其四,PBR 只覆盖 EOS 与格式标签两类事件,更广义的协议约束(必须调用某工具、禁止越权动作)需要可组合的约束规范语言与自动检测器。其五,评估每任务仅 1 条轨迹,Table 3 内 57.86 对 55.71 这类差距可能落在噪声范围内,应报告多种子或多轨迹平均与置信区间。其六,数学教师是通用 8B 指令模型而非数学专用或 RL 后模型,18.55 分的提升在更强教师下是否仍成立未知;分支与序列级信用分配(过程奖励、优势加权)的结合完全空白。
未来方向
作者提出的与可延伸的方向:其一,自适应预算——论文的覆盖分析($\Pr(\exists j: a_{b,j}\ne a_0)=1-\pi_{\theta_{old}}(a_0|s_b)^k$ 及 $E[N_k]$ 的边际递减)天然指向按分叉质量动态分配 $B$ 与 $k$ 的预算优化器;其二,把分支从 token/轮次级推广到语义级或子目标级,与层次化智能体结合;其三,与序列级信用分配结合——本文目标刻意保持 token 局部,分支历史恰好为过程级价值估计提供了同前缀对照数据,可学习分支条件价值来加权 $\Delta\log p$;其四,分支与验证器结合:救援率高达 42.7%(数学)说明「失败主轨迹上的成功分支」是高价值样本,在有可靠验证器的域可对其筛选或加权,融合 SPOT 式结果校准;其五,PBR 的事件检测可由固定规则升级为可学习判别器,处理更微妙的格式漂移与协议迁移;其六,系统侧把共享前缀的节省从生成扩展到训练前向(分支感知的 KV 缓存复用),进一步压低 4.24-5.68 倍的生成开销;其七,跨域检验代码生成、工具调用、网页导航等有真实状态恢复成本的环境;其八,理论上把「分支多样性 → 学生分布收敛」的关系形式化,例如分支覆盖度与泛化误差的定量联系。
复现评估
复现条件较好:代码在 github.com/chendy25/BranchOPD,模型权重在 huggingface.co/BranchOPD 开源,论文首页直接给出链接。数据全部公开:训练用 DAPO-Math-17K(17,398 例)与 ALFWorld/WebShop/Search-QA 环境数据,评测用 MATH-500、AIME 2024/2025、ALFWorld(140 ID + 134 OOD)、WebShop(128 held-out)与统一混合验证集。算力门槛中等偏高:数学训练中 rollout 与教师推理各占一台 8 卡机(张量并行 1/2),智能体任务为 8+8 卡(TP 2/8),需要 FSDP、动态批量、梯度检查点与异步 vLLM 的成熟基础设施;但训练量不大(数学 2 epochs 共 270 步,ALFWorld 2 epochs/6,400 例,学习率 $10^{-6}$)。复现难点:PBR 依赖具体协议 token id 与手工规则,跨模型需重写;分叉选择涉及秩归一化、top-20 熵、128 窗口聚合、资格过滤等多处工程细节(附录 D 给了较完整列表);智能体分支需要精确的环境快照/回放以保证 Proposition 1 的条件分布成立,实现质量直接影响结果;EOPD、SPOT、TCOD 等基线需自行复现对齐。总体而言,附录 D/E/F/G 提供了超参、评测协议、伪代码与全部 prompt 模板,透明度很高;有 RLHF/agent 训练经验的团队可以复现,缺基础设施的小团队难度较大。
论文图表
左右两个例子展示「从同一前缀重采样会产生截然不同的后续」。数学题 $3(x+2)-5=16$ 中,主路径选 divide 得 $x=5$(正确),分支 1 expand 也正确,分支 2 subtract 得 $x=16$(错误);ALFWorld 加热马克杯任务中,主路径「去橱柜」失败,两条分支「先查看可用存储位置」一条成功一条失败。各续写首 token 的学生概率 $q$ 分别为 0.41/0.23/0.13 与 0.027/0.377/0.377,都不算小。
一图点明全文动机:单条轨迹只实现一种续写,而未走的路可能更好也可能更差,这些「未实现的历史」正是 BranchOPD 想让教师补充监督的对象。