精读笔记
Problem Setting
论文标题:FORGE: Towards Functional Tool-Use Generalization via Keypoint Trajectory Reasoning(arXiv preprint / 2026)
这篇论文解决的不是常规 manipulation generalization,而是工具使用里的 functional generalization:同一个目标功能保持不变,但可用工具变了,导致接触区域、工具姿态、运动轨迹都必须随之改变。这里的难点不在于识别新物体,也不只是鲁棒控制,而是视觉上“功能相似”的工具在动作空间里可能完全不相似。
以前方法卡住的地方是 action representation 太贴近具体工具和 embodiment。端到端 visuomotor policy 会把 seen tools 的动作模式和视觉外观绑定起来;category-level 或 scene-level generalization 假设底层动作结构大体不变,但这里恰好要求动作结构改变。关键矛盾是:功能意图需要跨工具共享,但执行动作必须高度工具特定。
Motivation
作者的出发点是已有路线缺少一个合适的中间层。raw video 太密,混入大量外观、纹理、背景和人手运动细节;affordance image 太静态,只告诉哪里可能接触,不告诉如何运动;generic keypoint tracking 虽然结构化,但不一定包含任务功能意图。
真正缺的是一种 representation:它要足够抽象,能跨工具表达“用这个部位打到那个目标”;又要足够几何化,能被低层控制策略转成动作。论文的核心观察是,对 hitting 这类工具功能而言,功能相关点的时序轨迹比完整图像、视频 latent 或静态 affordance 更接近 causal bottleneck。
Core Idea
FORGE 的核心思想是把 functional tool-use 从直接的 observation-to-action 映射,改写成 observation-to-functional-trajectory 再到 functional-trajectory-to-action。这个改写改变了泛化发生的位置:模型不再要求在动作空间中跨工具外推,而是在 keypoint trajectory 空间中外推功能几何,再让低层策略学习如何执行这些几何约束。
它引入的 inductive bias 很明确:工具的功能可以由少量接触相关 keypoints 及其相对目标的运动来表达。这个 bias 会主动丢掉工具外观和无关像素,同时保留接触、对齐、接近、击打这些对任务有用的时序结构。和 prior 的本质区别不是“用了 keypoint”,而是 keypoint trajectory 被当作功能计划,而不是被动 tracking signal 或辅助视觉特征。
Method
方法层面真正必要的机制有三个。
第一,选择 2D keypoint trajectory 作为 functional intermediate representation。它解决的是功能意图无法直接落到动作的问题:接触点、目标点、工具上若干几何点的未来轨迹,把“该怎么用这个工具”表达成可执行的几何约束。
第二,System-2 在 action-free data 上预测未来 keypoint trajectories。它解决的是动作标注稀缺问题:功能运动模式可以从无机器人动作的视频/观测中学习,而不必为每个工具采集大量 robot demonstrations。这里的核心变化是把 expensive supervision 从 action labels 换成 keypoint trajectories。
第三,System-1 学习从 predicted keypoint plan 到 robot action 的 grounding。它解决的是 keypoint plan 本身不能执行的问题。低层策略仍需要动作数据,但学习对象变成“如何实现给定功能轨迹”,而不是从原始视觉中同时推断功能、接触、轨迹和控制。
conditional flow matching 是生成连续 trajectory/action chunk 的实现方式;SAM2、FPS、CoTracker 是构造 keypoint 数据的工程管线。它们重要,但不是论文的主要 conceptual move。
Key Insight / Why It Works
这篇最有价值的 insight 是:functional generalization 的难点可以通过 representation alignment 显著降低。不同工具在动作空间不对齐,但在“接触点相对目标如何运动”的 keypoint 空间中更容易对齐。FORGE 有效的主要原因不是更强的策略网络,而是把学习问题投影到一个跨工具共享结构更强的空间。
最可能的核心贡献是 keypoint trajectory 作为 functional bottleneck。它同时满足三个条件:低维、时序、接触相关。affordance image 缺少 temporal intent;human video prompt 太稠密且 embodiment mismatch 明显;generic keypoint tracker 缺少任务导向。FORGE 的 gain 很大概率来自这个 bottleneck 让模型少学了很多无关因素。
需要直接指出的是,所谓 reasoning 在这里更像 learned functional trajectory generation,而不是显式推理或规划。它没有展示符号式组合、长时程状态搜索、约束求解或 test-time deliberation。System-2 的“推理”本质上是从训练分布中生成一个 plausible keypoint motion prior。
也存在隐性监督问题。训练中 hitting point 和 target point 是给定的,keypoint 由 SAM2/CoTracker 或 simulator 得到,action-free data 还覆盖全部工具集合。这样一来,泛化可能部分来自功能点监督和工具几何覆盖,而不完全是模型自主发现功能。增益来源不清:representation bias 是核心,但 data coverage / hidden supervision 也可能贡献很大。
Relation To Prior Work
这篇属于 visuomotor policy + structured intermediate representation + action-free pretraining 的技术谱系。它和 MimicPlay/视频先验类工作相近,都是把高层计划和低层执行拆开;也和 ATM/ReKep/KPAM 等 keypoint-based manipulation 相近,都是用点轨迹或关键点约束降低控制难度。
真正不同点在于任务定义和 keypoint 的语义角色。ATM 类方法更多把 keypoint trajectory 当作 generic motion cue;FORGE 要求 keypoint trajectory 表达功能意图,即特定工具接触区域如何对齐目标并完成击打。它不是简单地“加入 keypoints”,而是把 keypoints 变成跨工具功能迁移的中间语言。
看似新的部分中,two-stage policy、flow matching、action chunking、video/keypoint pretraining 都是已有思想重组。实质创新在于把 functional generalization 明确化,并指出 dense visual plans 与 static affordance 都不是最佳中间层;对 hitting tool-use 来说,function-aware keypoint trajectory 是更合适的 abstraction。
Dataset / Evaluation
评估覆盖了一个七工具 hitting benchmark 和真机 Franka 实验,有 simulation 和 real-world validation,这比只做离线 imitation 指标更有说服力。实验也比较有针对性:端到端 FM/DP 测 perception-to-action gap,ATM 测 generic keypoint 是否足够,representation ablation 测 keypoint trajectory 是否优于 affordance/video prompt。
但 benchmark 的覆盖仍然窄。功能只有 hitting,且多为短时程、单接触目标、固定 grasp 后的执行问题。它验证的是“在 hitting 这个功能族中,keypoint trajectory 有助于跨工具泛化”,而不是一般工具使用的 functional generalization。
评估还有一个重要边界:action-free keypoint trajectory 数据覆盖所有工具,训练 System-2 时并非只在 seen action tools 上学习功能运动。这样设计符合利用无动作数据的设定,但会削弱“完全 unseen tool”的纯泛化含义。benchmark 是否存在工具级几何 overlap、trajectory template overlap,文中未充分说明。
Limitation
第一,方法依赖功能相关点已知。hitting point 和 target point 在训练/测试中被指定或手工标注,这实际上绕过了工具使用中最难的一部分:发现哪个部位承担功能。若 functional keypoint proposal 做不好,整个 pipeline 会明显退化。
第二,2D keypoint trajectory 的表达上限明显。它适合平面投影下的接触对齐,但对深度、姿态、遮挡、接触法向、力控制、多点接触和非刚性工具表达不足。论文自己的 failure case 也显示 2D plan 会导致精细对齐误差。
第三,方法把问题从 action generalization 转移到了 keypoint trajectory generation 和 action grounding。System-2 需要高质量 keypoint data,System-1 仍需要足够多样的 action-labeled tools。表 3 中工具多样性增加带来单调提升,说明核心能力可能主要来自数据覆盖;moderate data 是否足够取决于工具族复杂度。
第四,所谓 reasoning / planning 可能是假象。模型没有显式建模工具动力学、接触结果或失败恢复;它生成的是短 horizon keypoint plan。真实 deployment 中如果 grasp 不稳定、工具滑动、接触反馈异常,FORGE 没有展示闭环修正能力。
第五,增益归因不完全干净。FORGE 同时改变了 representation、训练数据类型、两阶段结构和 function-aware trajectory supervision。文中证明 keypoint trajectory 好于其他条件,但没有完全拆开 data scale、keypoint supervision、planner architecture 和 perturbation robustness 的贡献。
Takeaway
- 最值得记住的不是 FORGE 这个具体架构,而是 functional tool-use 需要一个跨工具对齐的中间空间;直接在 action space 做泛化很不经济。
- keypoint trajectory 是一个强 inductive bias:它把功能从外观中剥离出来,又保留足够的几何和时间结构,适合做 action-free pretraining 与 robot grounding 的接口。
- 未来更有价值的问题不是把 flow model 做大,而是自动发现功能点、从 2D 走向 3D/contact/force-aware representation,并验证这种 functional bottleneck 是否能跨任务组合,而不只是跨工具复用。
- 这篇论文推动的是工具使用泛化的建模方式:从“学一个更强的 end-to-end policy”转向“设计一个能承载功能意图的可执行中间表示”。
一句话总结
FORGE 是一篇把工具使用泛化问题重新表述为 function-aware keypoint trajectory alignment 的工作,其真正贡献在于提出并验证了低维时序几何 bottleneck 比端到端动作学习更适合跨工具功能迁移。
