DeepSeek-R1 之后 RL post-training 有一条被反复强调的假设:任务必须有可判定的正确性。数学题答案对错可算、代码 unit test 可跑、编译器可判——只有在这些"verifiable reward"存在的任务上,纯 RL 才能把 reasoning 能力推到 emergence。我在 Chinchilla → 2026 的 §9.5 里把这条论断当作 R1 范式的核心承诺。
但真实世界里大部分有价值的任务恰好在这个边界之外——视频里"某个动作发生在第几秒到第几秒"、图像里"这段描述对应哪块像素"、机器人里"这段动作 chunk 对不对"——这些都不是二值可判的。IoU 之类的连续 metric 是有的,但 IoU 只告诉你"答案对不对",不告诉你"reasoning 好不好"。用 answer-correctness reward 训 RL,模型学会的往往是投机取巧的 pattern matching 而非真正的推理——output 里堆一段看起来 plausible 的 thinking,答案却是靠 shortcut 蒙对的。
Peking University × Huawei Noah’s Ark 的 TaRO(ICML 2026)给出了一个我觉得很有推广价值的 workaround:当任务本身没有 verifiable reward,就扰动关键因素、观察模型自己的 logit 是否下降,把 drop 本身当 reward。这套 “self-critique via perturbation sensitivity” 不是 VTG 领域的小 trick,它是 RL post-training 里一种通用的方法论范式——本文的目标是把它抽出来讲清楚。

一、问题:VTG 里 reasoning RL 的两个具体困境
Video Temporal Grounding(VTG)的任务定义很简单:给一段视频 和一句自然语言查询 (比如"the guy plays the saxophone again"),预测目标事件的起止时间戳 。
Time-R1(Wang et al. 2026)是 VTG 上第一个把 GRPO 引进来的工作——直接用 IoU + format reward 训一个 MLLM,让它先输出一段 <think>...</think> reasoning 再给最终 :
这套 recipe 效果不错(比纯 SFT 强),但作者发现两个明显的坏习惯:
- 随机 exploration 效率极低。GRPO 是 on-policy——每步从当前 policy 采样 个 rollout,用 group-relative advantage 更新。冷启动阶段模型的 reasoning 完全是随机噪声,其中真正 anchor 到关键时间戳的 rollout 极少,训练 sample efficiency 很差。Time-R1 需要 154 步才收敛,训练 wall-clock 是 baseline SFT 的 5-6 倍。
- Reward 只看答案对错。 只在最终 上算,reasoning path 里的每个 token 都拿不到直接监督。模型完全可以学会"生成一段 plausible-sounding 但跟真实时间戳无关的 reasoning,然后靠 shortcut 蒙对答案"——reasoning 变成 output template 的装饰。
Fig 1 的 IoU 对比图正是这两个问题的直接症状。Direct(不带 reasoning)、Superficial Reasoning(Time-R1 风格的表面 reasoning)、Effective Reasoning(TaRO 风格的 anchor 到时间戳的 reasoning)三种模式在同一个 base model 上的 IoU 分别是 ~40 / ~46 / ~55——表面 reasoning 只带来 6 个点提升,而真正 anchor 到证据的 reasoning 能到 15 个点。差距不在 reasoning 是否存在,而在 reasoning 是否真的做了 anchor。
二、TaRO 三件套:让 reasoning 真正 anchor 在时间上
TaRO 的 framing 是 “think with time"——推理必须显式引用具体时间戳和视觉线索。为此设计了三个环环相扣的组件:

flowchart LR
Q["Query 'plays saxophone'
+ Video V"] --> CAP["Dense Captioner
预生成每帧描述"]
CAP --> CRE["Constructive Reasoning
Exploration (CRE)
随机采 caption → 构造 <think>"]
CRE --> ROUT["Router (progressive)
early: use CRE
late: free rollout"]
ROUT --> MLLM["MLLM
Qwen2.5-VL / Qwen3-VL"]
MLLM --> ROLL["G rollouts
{o_1, ..., o_G}"]
ROLL --> TR["Temporal-Sensitive
Reward"]
TR --> ADV["Advantage-Weighted
Behavioral Cloning Loss"]
ADV --> MLLM
style CRE fill:#fde047,stroke:#1e293b,color:#1e293b
style TR fill:#93c5fd,stroke:#1e293b,color:#1e293b
style ROUT fill:#a7f3d0,stroke:#1e293b,color:#1e293b2.1 Constructive Reasoning Exploration(CRE)—— 解决冷启动
思路简单:既然模型自己 rollout 出的 reasoning 大部分是垃圾,那就先手动构造一批高质量 reasoning 塞给它。
具体做法:
- 用现成的 dense captioner(VideoLLaMA、VideoChat 之类)在训练视频上预生成每帧或每几帧的描述,形如 “from to : caption";
- 对每个训练样本 ,均匀随机采样 条 caption,按 timestamp 排序;
- 把采样的 caption 拼成
<think>I need to find the specific moment {query}. from $t_1^s$ to $t_1^e$: ... from $t_2^s$ to $t_2^e$: ... </think><answer>$t^s$ to $t^e$</answer>作为 constructed reasoning path。
代码层的一个诚实澄清:我最初以为 CRE 会"针对性地混采 GT 边界附近 caption 和 distractor caption"以形成对比,但看了 src/utils.py 的 sample_reasoning 后发现——采样是完全均匀随机的, 从 里均匀抽,caption 索引也均匀抽。没有针对 GT 边界的偏置采样。多样性完全来自"每次采几条、采哪几条"的随机组合。
这类构造出来的路径天然 anchor 到具体时间戳(因为 caption 本身带 timestamp)。对模型来说,这是一份高质量 curriculum:不像 rollout 的完全随机 exploration,也不像纯 SFT 的固定模板——每次 sample 出来的 reasoning path 都不同,但都由 dense captioner 保证了 timestamp 一致性。
2.2 Temporal-Sensitive Reward(TR)—— 真正的 novelty
这是整篇论文最有推广价值的一块。核心问题是:怎么在没有 ground-truth reasoning 的情况下,评估一段 reasoning 的质量?
TaRO 的答案基于一个具体的因果推理:如果 reasoning 真的 anchor 在关键事件上,那么打乱这些事件应该让 reasoning 变得"无效”,模型给这段 reasoning 的置信度必然下降。反过来——如果打乱边界之后 reasoning 的 logit 几乎不变,说明这段 reasoning 根本没在看边界。
形式化:给定原视频 、query 、模型采样出的 reasoning path ,先算它在原视频上的 log-prob:
然后构造扰动视频 ——具体扰动方式是在 GT 起点 前后 s 一个窗口、GT 终点 前后 s 另一个窗口,两个窗口各自内部 shuffle 帧顺序,其他帧全部保持不变。这个细节从 src/utils.py 的 shuffle_boundary_frames 里精确可读:两个窗口独立处理、time_radius=1.0 默认硬编码。再在 上算同一段 reasoning 的 log-prob:
Temporal-sensitivity 定义为 drop:
越大,说明这段 reasoning 越依赖边界处的具体时序信息——这段 reasoning 越"真”。反之 说明 reasoning 跟边界无关。
最终 reward 用一个阈值把 drop 转成 shaping 项:
其中 是组内 drop 的均值。加到主 IoU reward 上:
IoU > τ 那个 gate 关键——它防止一段 reasoning “看起来很敏感但答案错的离谱"也拿 reward。只有答案本身可信、reasoning 又对扰动敏感,才两倍奖励。
从训练脚本 scripts/run_qwen2_5_vl_7b.sh 硬编码可读的超参:(temp_alpha)、(temp_iou_thresh)、temp_margin=0.0(阈值不加 margin,就是 mean)。GRPO group size (rollout.n=8),KL 系数 ,训练 3 个 epoch、warmup 1 个 epoch、vision tower 全程 frozen。
另一个代码级细节:训练时的 用的是加权版——IoU × (1 - |起点误差|) × (1 - |终点误差|)(起终点都用 duration 归一化),src/rewards.py 里的 iou_timestamp_reward_v2 明确写着这个加权形式;只有 evaluation 时才回到纯 IoU。加权版本对边界估计精确度给了额外权重——单纯 IoU 高但边界估偏的 rollout 拿不到全额 reward。这一条论文正文没显式提及,但在实际训练动力学里是关键的(reasoning 一旦 anchor 错时间戳,IoU 加权会双倍惩罚)。
2.3 Progressive Curriculum
CRE 提供高质量 exploration,但完全依赖 dense caption 意味着模型永远学不到"caption 里没写的推理”。TaRO 用一个 router:
- Warm-up phase:CRE 的采样占比 ,模型几乎全部时间在 imitate 构造的 reasoning path。
- Free exploration phase:,模型自己 rollout,但已经带着 CRE 阶段学到的 “think-with-time” 习惯。
这种"从 imitation warmup 平滑过渡到 autonomous exploration"在 R1 也用过(cold-start SFT + 后续 RL),但 TaRO 是把两个阶段的 loss 无缝拼在了一起——CRE 阶段的 loss 变成一个 advantage-weighted behavioral cloning:
只对 advantage 为正的 rollout 做 BC。这一步把 CRE 的高质 sample 和 GRPO 的 online exploration 用同一个 optimizer state 无缝拼起来,不需要显式切两阶段训练。
三、实验:VTG 四个 benchmark 上 SOTA
TaRO 用了 Time-R1 的训练数据(2500 samples),backbone 覆盖 Qwen2.5-VL-3B/7B 和 Qwen3-VL-8B。四个 benchmark:Charades-STA(20K 短活动)、ActivityNet Captions(长活动)、QVHighlights(生活风格)、TVGBench(跨数据集综合)。评估指标 R1@0.3 / R1@0.5 / R1@0.7 mIoU。

几个关键结论:
- Qwen2.5-VL-7B 上 TaRO 全面超 Time-R1:Charades-STA R1@0.5 从 60.5 → 63.5(+3 points)、ActivityNet R1@0.5 从 44.7 → 48.3、QVHighlights R1@0.5 从 46.2 → 51.4、TVGBench R1@0.5 从 46.9 → 48.5。四个 benchmark 全涨、涨幅稳定 3-5 点。
- Qwen3-VL-8B 版本更强:Charades-STA R1@0.5 到 65.1、ActivityNet 到 55.0、QVHighlights 到 55.4。
- 3B 尺寸也 work:Qwen2.5-VL-3B + TaRO 能匹敌一些 7B baseline。
训练效率是另一个显著的赢面:Time-R1 的 rollout 训练需要 154.1 步,TaRO 只用 39.5 步——约 4× 加速。CRE 的意义在这里体现得最直接:模型冷启动阶段不再靠随机 exploration 撞运气,直接从高质量 constructed reasoning 起步。

Fig 3 值得单独拎出来——它揭示了 CRE 和 temporal-sensitive reward 的独立贡献。CRE 让训练早期 IoU reward 快速拉起(相比 baseline 的缓爬),temporal reward 让 response length 稳步收敛到一个合理长度(既不是模型学会 short-cut 出短 reasoning,也不是无节制变长)。

Table 5 揭示了 CRE 的实际杠杆——这是整篇论文最大的一个数字变化:
- 纯 GRPO Loss(无 CRE、无 TR、无 AW-BC):R1@0.5 = 46.7
- CRE + AW-BC Loss(无 TR):R1@0.5 = 64.8(+18.1 点)
CRE + AW-BC 一步就吃掉了 18 个点的绝对提升,是 TaRO 全部数字改进里最大头的一块。原因也可以从 Table 5 里再拆开看:AW-BC Loss(对 advantage 为正的 rollout 做 BC)比纯 GRPO Loss 强 17+ 点、比 AW-BC without weighting 强 1.8 点、比 without filter 强 1.7 点——advantage-weighted + positive-only filter 两个 trick 都不可少。CRE 的 caption 采样策略里,“CRE w/ Sample Captions”( 从 均匀抽)比"CRE w/ All Captions"(全部塞进去)强 1.2 点,说明 caption 的多样性来源本身也重要。

Temporal Reward 的边际提升相对更小:Shuffle GT Boundary(64.8)比 Random Cropping(63.1)高 1.7 点、比 Shuffle Full Video(63.5)高 1.3 点。这一节的价值不在数字大小,而在方向验证——扰动必须精确打在"关键因素"上,随机扰动或全局扰动都会稀释信号。这也直接证明了 TaRO 范式的核心 assumption:perturbation sensitivity 只有针对关键因素时才是有效 reward signal。
综合起来:CRE 是主 lever(+18 点),Temporal Reward 是精调(+1.3-1.7 点)——把两者贡献等量并列是错的。工程上如果只能实装一个组件,先做 CRE。

Fig 4 的定性对比是这套方法最直观的证据:同一个 query(“the woman wipes her face with a brush”),Time-R1 生成一段 “The event ‘Woman wipes her face with a brush’ occurs towards the beginning of the video” 这种模糊描述,TaRO 生成的是 “From 0s to 2.7s: The woman applies makeup and looks at the camera. From 2.7s to 4.4s: The woman applies makeup on her face with a brush” —— 直接引用时间戳 + 视觉线索,正是"think with time"承诺的行为。
四、通用范式:扰动敏感度在 VLA、T2I、AD 上的可能应用
TaRO 的核心 idea 抽掉 VTG 皮之后是这样一句话:
当任务本身缺乏 verifiable reward,找一个"关键因素" ,扰动它、观察模型 logit 下降 ,把 当作 reasoning 质量的 self-critique reward。
这个 pattern 的通用性来自三个特征:
- 不依赖外部 verifier——logit drop 是模型自己算的;
- 奖励的是 reasoning 而非 answer——直接监督
<think>段落; - 扰动方式定义了"什么是关键因素"——是 domain-specific inductive bias。
这三条几乎可以直接搬到我博客里已经讨论过的几个方向:
4.1 VLA closed-loop RL
VLA 训练里的 verifiable rewards(Chinchilla §9.5 里讨论过)仅限于闭环仿真里的碰撞、到达 GT、违规——都是 trajectory-level 的 outcome。VLA 里 reasoning path(“why this action”)本身没有可判 reward。TaRO 范式的 VLA 版可能是:
- 关键因素:某个 waypoint 的观测帧、某段 action chunk 的关键帧、gripper 状态切换点;
- 扰动方式:打乱关键帧顺序 / 遮住关键帧 / 替换成同场景其他帧;
- Reward:模型对 “why I chose this action chunk” 这段 reasoning 的 logit 下降。
Qwen-VLA 的 Stage IV 用的还是经典 PPO,如果换成 TaRO 风格的 self-critique,就能对长尾场景的 reasoning 质量(不只是 outcome)做直接监督。
4.2 T2I alignment reward
MiniT2I paper-read 里讨论过的 alignment fine-tune,本质上是用少量高质数据把 prompt-image alignment 强化上去。但**“哪段 prompt 对应图上哪个 patch"这件事没有 verifiable ground truth**。TaRO 范式的 T2I 版:
- 关键因素:prompt 里某个 attribute(“red hat”)对应生成图像的某个空间区域;
- 扰动方式:把 prompt 里的 “red” 换成 “blue”,或 mask 掉图像的对应 patch;
- Reward:模型对"这段 prompt 生成了这块像素"的 reasoning logit 下降。
这套 idea 已经在 grounded T2I 和 attention-guided sampling 里零散出现,但没人把 logit drop 直接当 GRPO reward 用过——TaRO 的 recipe 可以直接搬。
4.3 自动驾驶时序推理
自动驾驶 VLA 场景里,“why brake now"这类时序 reasoning 的价值远超"是否 brake"这个二值 outcome。TaRO 范式的 AD 版:
- 关键因素:某个前车 cut-in 帧、某个红灯亮起帧、某个行人 emergence 帧;
- 扰动方式:打乱这些"决策事件"帧的时序;
- Reward:模型对 “brake because pedestrian appeared at t=3.2s” 这段 reasoning 的 logit 下降。
这套 recipe 可能是"让 AD VLA 学会解释自己决策"的最直接工程路径——比手动 label 大量 reasoning traces 便宜得多。
五、局限:不是万能钥匙
TaRO 范式有三个不能回避的局限:
- 需要能定义"关键因素"的 domain prior。VTG 里"边界附近的帧"是自然定义的关键因素,但在没有明确 boundary 概念的任务上(比如开放对话、创造性写作),“扰动什么"本身就是个开放问题。
- 扰动方式的选择带黑箱性。TaRO 报告 “shuffle GT boundary” 比 “shuffle random” 好 2 个点,但为什么这两种扰动方式的效果差距是 2 个点而不是 10 个点,理论上没有量化答案。这套 recipe 移植到新任务时需要 pilot experiment 试 3-5 种扰动方式再挑最好的。
- 不能替代 verifiable reward,只是补充。TaRO 的 total reward 里 IoU 项仍在——temporal-sensitive reward 是 shaping 项,不是 primary reward。如果一个任务连粗粒度 verifiable metric 都没有(比如"这段翻译好不好”),TaRO 范式站不住。
六、放回博客视角
TaRO 值得写的原因不在 VTG SOTA 那几个点——VTG 是一个足够 niche 的领域,纯 benchmark 提升的社区受众有限。真正值得关注的是它把 “self-critique via perturbation sensitivity” 抽成了一个可迁移的 recipe。
RL post-training 从 2024 到 2026 一直在追问一个问题:verifiable reward 之外,还有什么可靠的 reward source?
R1 给了一个答案:找可判定的任务(math、code)。 Process reward model(PRM)给了另一个:训一个 reward model 打 step-level 分数。 Kaiming 系 iMF 在 flow matching 上给了第三个:用模型自己的 boot-strap 目标做 self-supervision。
TaRO 加上了第四个:用 controlled perturbation 探测模型的 reasoning 是否 grounded。这四条 recipe 覆盖了不同的场景,没有哪一条能通吃——但把它们放在一起,2026 年 RL post-training 的工具箱基本齐了。
对做 VLA、做 T2I、做 AD reasoning 的实践者,TaRO 具体的贡献是:在"没有直接 verifiable metric 又需要 anchor 到具体证据"的任务上,你不必再手动 label reasoning traces,也不必训 process reward model——扰动 + logit drop 是一条几乎零额外成本的 self-critique 通道。这一条工程结论比 VTG SOTA 有意义得多。
References
| # | 引用 | 链接 |
|---|---|---|
| 1 | Zheng, M., Yin, Z., Yang, Y., Peng, Y., Liu, Y. (2026). Temporal-Aware Reasoning Optimization for Video Temporal Grounding. ICML 2026. | arXiv:2606.09248v1 · GitHub · Project Page |
| 2 | Wang, Y. et al. (2026). Time-R1: Post-training LLM for Temporal Reasoning. | arXiv:2503.13377 |
| 3 | Shao, Z. et al. (2024). DeepSeekMath: Pushing the Limits of Mathematical Reasoning (GRPO). | arXiv:2402.03300 |
| 4 | DeepSeek-AI (2025). DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning. | arXiv:2501.12948 |
| 5 | Gao, J. et al. (2017). TALL: Temporal Activity Localization via Language Query (Charades-STA benchmark). | ICCV 2017 |
| 6 | Krishna, R. et al. (2017). Dense-Captioning Events in Videos (ActivityNet Captions). | arXiv:1705.00754 |
| 7 | Lei, J. et al. (2021). QVHighlights: Detecting Moments and Highlights in Videos via Natural Language Queries. | arXiv:2107.09609 |
| 8 | Bai, S. et al. (2025). Qwen2.5-VL Technical Report. | arXiv:2502.13923 |
| 9 | Bai, S. et al. (2025). Qwen3-VL Technical Report. | arXiv:2511.21631 |
同主题强相关阅读
- 训练大模型的 Scaling Law — §9.5 R1 verifiable rewards 讨论;TaRO 是这条论证的重要补丁。
- MiniT2I paper-read — T2I alignment fine-tune 的 reward 设计问题;§4.2 里的 T2I 迁移思路直接呼应 MiniT2I。
- 凯明的方法论:从 ResNet 到 iMF — 另一种 self-critique 范式(用 stop-gradient 的自身 bootstrap 做监督)。
- Qwen-VLA — VLA 里 PPO Stage IV 的 reward 设计;§4.1 里 VLA 迁移思路的具体锚点。