点击下方卡片,关注“具身智能之心”公众号
编辑丨具身智能之心
本文只做学术分享,如有侵权,联系删文
>>
更多干货,欢迎加入国内首个具身智能全栈学习社区:(戳我),这里包含所有你想要的。
01. 学到的视觉 latent,读不出机器人的物理状态
把一个训练好的 latent world model 的编码器冻住,用线性探针直接从它的 latent 里回归机器人的物理量。末端执行器的朝向,Pearson r 只有 0.08,基本等于读不出来;从相邻两帧的 latent 里读夹爪速度,也只有 0.44。
这有点反直觉:模型明明能把下一帧的 latent 预测得很准,可它的表征里并没有清楚地写着"机器人此刻处于什么状态"。
原因并不难理解。前向预测的目标只有一条:预测出的下一帧 latent 与真实的下一帧 latent 足够接近。至于 latent 里有没有显式保留机器人的物理状态、一对 latent 之间的差异是否对应某种可解释的物理变化,它一概不管。
也正是从这个问题出发,香港科技大学(广州)的研究团队提出了 PSG-JEPA。

它的做法是:编码器与预测器主干完全不动,前向预测损失完全保留,只在训练阶段额外加两个轻量的锚定目标,把物理状态和状态变化写进 latent。训练一结束,这两个头直接丢弃。
一句话概括:PSG-JEPA 不改变世界模型预测什么,只改变它的表征里必须留下什么。
❝论文名称: Is Forward Prediction Enough? Physical State Grounding for JEPA World Models
论文链接: https://arxiv.org/abs/2608.06799
Project Page: https://haodong-yan.github.io/psg-jepa-project-page/
02. latent world model 的两代演进与它们共同的盲点
世界模型要做的事很简单:给定观测和动作,预测状态怎么变。但"状态"用什么表示,也就是学出一个什么样的 latent 空间,才是决定它下游好不好用的地方。
JEPA 给出的答案是:预测发生在表征空间而不是像素空间,不生成观测,直接在紧凑的特征空间里学动作条件下的动力学。沿着这条路,latent world model 走过了两代,差别就在于谁在塑造表征。
第一代是冻结表征。DINO-WM 建在冻结的 DINOv2 特征上,V-JEPA 2-AC 在冻结的视频预训练 JEPA 编码器上加一个动作条件预测器。好处是有强视觉先验,坏处是动作和机器人状态这些物理信息完全无法塑造表征本身,编码器是冻住的,能学的只剩预测器。
第二代是端到端。LeWM 这类工作把编码器和动作条件预测器一起优化,让前向预测目标去塑造 latent 空间。前向预测的梯度终于能传到编码器,表征由这个目标自己学出来。
但这只是把问题推到了下一层:只靠前向预测这一个目标,学得出适合控制的表征吗?
问题出在这份动力学完全可以由预测器一手包办。不管编码器学出什么样的 latent 空间,只要预测器学会了在这个空间里从 z_t 走到 z_{t+1},前向损失就能压得很低。反过来说,把物理状态在这个空间里摆得清清楚楚,对降低这个损失并没有额外好处。最后学出来的 latent 很可能是"预测得动,却读不出物理"。

换成从相邻两帧的 latent 里读状态变化,情况同样吃力:夹爪速度在 LeWM 上只有 0.44 / 0.47,DINOv2 更低到 0.20 / 0.12。研究团队把这个现象称为以机器人为中心的可辨识性缺口。

这件事之所以重要,是因为控制离不开一件事:把视觉观测、机器人自身的状态、以及动作如何改变这个状态对应起来。如果这层对应在表征里读不出来,这份对齐工作不会消失,只会被转嫁给下游,规划器和策略必须靠各自那点有限的任务监督从头再学一遍。训练预算越紧、演示数据越少,这份负担就越重。

03. PSG-JEPA:主干不动,训练期加两个锚定目标
PSG-JEPA 的改动很小:编码器与预测器主干完全不动,前向预测损失完全保留,只在训练阶段额外加两个互补的锚定目标。
01|静态状态锚定:让单个 latent 读得出本体状态
一个轻量状态头把每一个 latent 回归到机器人的本体状态,包括关节角、夹爪和末端位姿。
关键在于它读的是下游真正要用的那个共享 latent,而不是另开一条分支。这项损失只能靠编码器把物理状态暴露在主干表征里来降低,没有旁路可走。
02|动态转移锚定:让一对 latent 读得出状态变化
状态锚定只是分别监督两个端点,并没有直接要求"从一对 latent 读出它们之间的变化"。所以研究团队又加了一个转移头,从每一对 latent 预测关节角变化 Δq = q_{t+k} − q_t。
为什么监督目标是关节角变化,而不是中间的动作序列?因为动作序列给不出一个确定的答案:同样从 A 走到 B,中间可以有很多条不同的动作路径,同一对 latent 于是对应了一堆"都算对"的目标,学不出确定的映射,而且这个目标的维度还随跨度变长。净关节角变化就没这个问题,它由两端状态唯一确定,维度固定、不随跨度变化,每一对 latent 都只有一个明确的目标。训练窗口内每一个跨度都参与监督,短程与长程的物理变化都能从端点被读出。
03|训练结束即丢弃,没有推理overhead
两个头只在训练时存在,训练一结束直接丢弃。PSG-JEPA 与原前向 JEPA 的推理架构和计算开销完全一致,全部收益都来自那个学出来的表征,而非任何额外的推理期模块。本体状态也始终只作监督目标,从不作为模型输入。

04. 如何评估学习到的表征是否适合机器人学习?
既然主张是"学出更好的表征",就得按表征评测的方式来验。研究团队设计了三层评估,一层比一层更接近真实用途:探针测表征里有没有,冻结表征上训规划器测好不好被利用,再拿它去学策略测能不能真的帮到 policy learning。每一层里所有方法用的下游模块完全相同,因此差异只可能来自表征本身。
第一层,探针。 加上锚定之后,末端朝向从 0.08 抬到 0.94 / 0.98,关节角从 0.71 抬到 0.83,夹爪速度从 0.44 / 0.47 抬到 0.69 / 0.76。前面读不出来的物理量,现在都能从 latent 里直接读出。
第二层,冻结表征上的规划。 丢掉锚定头、冻结编码器,对每种表征训同一个 GC-IDM 规划器做目标到达规划。环境用 OGBench 的 Cube 与 Scene,后者是构成完全不同的复合目标任务,方块、两个按钮、抽屉、窗户都要到位。

最值得看的是 Full data / 5 epoch 那一列:PSG-JEPA 只训 5 个 epoch 就达到 95.0%,而 LeWM 训满 100 个 epoch 也只有 89.7%。物理锚定过的 latent,把规划器的优化预算需求压低了一个数量级以上。数据轴上同样成立,PSG-JEPA 只用 5% 的演示数据就达到 84.5%,这个水平 LeWM 大约需要五倍以上的数据才能追平。

第三层,策略学习。 在 LIBERO-Goal 的十个任务上,成功率从 77.7% 提升到 85.3%,并且超过加了动作监督的 ActionIDM(82.6%)与 DINOv2(80.1%)。动作级监督、大规模视觉预训练,单靠任何一个都给不出同等收益。

真机换到 AgileX 双臂 Cobot,三个桌面任务各采 100 条遥操作演示、各测 50 次,三个任务全部提升:Place-to-Bread 84% 对 62%,Place-to-Plate 74% 对 58%,Pour-Water 80% 对 60%,平均 79.3% 对 60.0%。

05. 从「预测得动」到「读得出」
PSG-JEPA 关注的是世界模型中的表征本身。与其把视觉与动作的对齐负担推给下游任务,不如在 world modeling 阶段就让 latent 不只是能预测下一帧,还要读得出机器人自己此刻是什么状态、以及这个状态正在怎么变。而做到这一点,只需要在训练目标上加两个轻量约束。
接下来,研究团队想把这套锚定思路推到更大的数据规模与更多的机器人本体形态上,看它能不能作为一种通用的训练期约束;也想继续追问:除了本体状态与关节角变化,还有哪些物理量值得被显式写进表征。
推荐阅读 :
