TTPO: Test-Time Policy Optimization
Aozhe Wang, Zhengxi Lu, Jianze Wang, Shangke Lv, Ying Liu, Weiming Lu, Jun Xiao, Yueting Zhuang, Hua Yang, Qianglong Chen, Yongliang Shen
cs.CL
2026-08-28
无标签用多数票伪标签:同意轨迹做 OPSD 蒸馏,反对轨迹做 GRPO 惩罚。Qwen3-1.7B 在三套竞赛题上从 38.0% 升到 45.2%,与有监督蒸馏持平。
竞赛级数学上,RLVR 和 On-Policy Self-Distillation(OPSD,同一模型看到标准答案后,对学生自己的轨迹做 token 级蒸馏)都要靠标准答案:奖励靠它验对错,teacher 靠它当特权上下文。Test-time training(TTT,在待测题目上当场继续训)没有标签,两条路都走不通。
自然替代是每题采一组 rollout,拿多数票当伪标签。TTRL 已经用这个伪奖励做 GRPO。竞赛题上多数票经常是错的:Qwen3-1.7B 在 AIME 2026 上,伪标签平均错约 85%。错的奖励每条轨迹只误导一次;错的 teacher 会在每个 token 上误导。把伪标签直接塞进 OPSD,错误会被放大。
失败模式不对称。伪标签错了,跟它唱反调的 rollout 里约 79% 既不是伪标签也不是真答案。惩罚「不同意多数票」多数时候仍然正确,并不依赖伪标签写了什么。往伪标签上蒸馏没有这份容错。
TTPO 把信号用在各自还可靠的地方。每题采 K=64 条轨迹,按数学等价聚成答案簇,最大簇当伪标签,再拆成同意集 P 和反对集 N。真正回传梯度的只有 Ktrain=8 条,正负各半,优先更短的完成,因为梯度只打前 1024 个 completion token。
两项加起来,GRPO 支路权 λ=0.1,把量级大约差一个数量级的两条梯度拉平。Teacher 只吃短答案、不喂完整轨迹:完整轨迹会把 teacher 变成续写前缀,AIME26 上从 46.5 掉到 41.1。
两套设定。OpenThoughts 上 OPSD/GRPO 用真标签,TTPO 只用多数票。TTT 直接在测试题上训,谁都没有标签。指标是 Avg@12。
| 设定 | 模型 | Base | 有监督 OPSD | TTPO |
| OpenThoughts | Qwen3-1.7B | 34.6 | 39.7 | 40.1 |
| OpenThoughts | Qwen3-4B | 56.0 | 58.4 | 58.6 |
| OpenThoughts | Qwen3-8B | 58.6 | 61.7 | 62.6 |
TTT(AIME 2026 / HMMT 2026 / BRUMO 2025 平均):
| 模型 | Base | TTRL | OPSD-TTT | TTPO |
| 1.7B | 38.0 | 40.2 | 41.9 | 45.2 |
| 4B | 57.4 | 58.8 | 59.4 | 61.1 |
| 8B | 60.7 | 63.0 | 63.7 | 65.3 |
1.7B 无标签 TTT 绝对涨 7.2 点。4B 的 TTPO(61.1)已经超过 8B base(60.7)。关掉 thinking 再测,涨幅更大:1.7B 从 9.5 到 34.7(+25.2),4B +30.6,8B +36.4;同期有监督 OPSD 只有 +7.1 / +5.8 / +3.5。
消融对齐设计。拿掉正样本加权,AIME26 从 46.5 掉到 43.3;拿掉负样本 mask,BRUMO25 从 54.7 掉到 50.0。正样本 FKL、负样本 GRPO 在 TTT AIME26 上是 48.9,对调后只剩 37.2。难题上把多数票换成真标签,正样本过少,两条支路一起饿死,伪标签版反而更强。Maj@12 随训练一起上升,多数票质量会跟着模型变好。
没有答案的测试分布也能当场继续训,多数票终于能当稠密监督来用,不再只是一条 0/1 奖励。配方绑在 Qwen3 的 thinking / 非 thinking 双模式上:teacher 开思考,student 关思考,蒸馏的是「仔细想」到「直接答」。跨基准迁移成立,在 AIME、HMMT、BRUMO 任一集上训,另外两集也涨,更接近通用推理而不是背题。
想复现要准备每题 64 次采样、16k 生成长度、LoRA 打全线性层。这是小模型上的可跑配方,算力不便宜。
报告的是 100 步里每 25 步存档的峰值,GRPO/TTRL 是 500 步里的峰值,不是固定步数的公平对照。只做了数学可验证题,多数票靠答案等价聚类;开放式生成没有这套脚手架。TTT 在测试题上更新权重,部署时要接受「看见考卷再学」。梯度只覆盖前 1024 token,长思维链后半段不进更新。论文没有把「多数票质量上升」和「蒸馏把 Maj@12 压进 Avg@12」拆开定量。