Lucio Patone
前沿

把一个 world model 放上试验台:在家实测,哪些站得住

第一部分里, 我们讲了理论:LeCun 为什么押注 world model、JEPA 架构如何工作、 LeJEPA 和 LeWorldModel 两篇论文承诺了什么。这一部分我们做另一件事: 亲手验证。两篇论文都公开了代码和可下载的权重,所以可以验证。 我们按小时租了一块 GPU,拿来作者已经训练好的模型,在两个环境上做了 九个实验。算力总花费:几美元。这篇笔记就是实验记录:哪些站得住, 哪些开始松动,以及我们的测量在哪些地方超出了论文本身。

试验台

两个微缩世界。PushT 是 2D 的:一张俯视的桌子,一只小"手" 把一个 T 形方块推向目标轮廓。Cube 是 3D 的:一个仿真机械臂 (MuJoCo)移动一个立方体。两个环境都有 LeWorldModel 的公开 checkpoint——也就是第一部分说的那个 1500 万参数的 world model:我们 下载下来原样使用,自己零训练,下面所有结果测的都是作者的模型。

工作方法:不轻信任何说法。论文里我们关心的每一个论断,都变成一个 可以运行的实验,我们的数字和他们的数字并排对照。脚本和原始数据都在 我们的工作笔记里,这里只写要点。

第一个问题:它会用自己会的东西吗?

点火测试。我们给模型一张桌子的图像和一张目标的图像,让它真的开局: 每一步它在潜空间里想象几千种动作序列,评估哪一种最终离目标最近, 执行第一个动作,然后重新思考。五十局,规则与论文完全相同。

在 PushT 上它赢了 90% 的对局(论文是 96%,三个训练 seed; 我们只测了公开 checkpoint 这一个 seed——在统计噪声范围内)。在 Cube 上是 70%(论文约 74-84%,从图上读出来的数值;而且 Cube 是唯一 一个对手 DINO-WM 表现更好的环境)。换句话说:实验 setup 站得住,论文 的数字对得上,模型确实会做 planning:起点和目标都是我们随机抽的, 每一局都是新情况。

planning,每个环境 50 局 · pusht 90%(论文 96±3%) · cube 70%(论文约 74-84%)

第二个问题:192 个数字里写了什么?

对模型来说,每一帧就是 192 个数字的列表。问题是:这些数字里写的是 场景的物理,还是只有纹理?测试故意做得很朴素:叫 linear probing。取几千帧,送进模型,然后让一个回归——这是最简单的工具, 故意选它因为它诚实:如果信息以可读的形式在那里,一条直线就能找到 它——从这 192 个数字里猜出方块的真实位置、角度和速度。作为对照, 同样的回归直接从原始像素出发:如果潜表示赢不了像素,说明模型什么也 没提炼出来。

位置确实在,而且近乎完美:在方块位置上,直线读潜表示的 R² 达到 0.95-0.99(1 表示完美猜中),两个世界都是如此,比从像素读更好 (比如 Cube 上的深度距离:0.99 对 0.66)。论文报告的是同一数量级: 确认。

散点图:方块的水平位置,真实值对线性回归从潜表示读出的值;点沿对角线分布
在 PushT 上做 probing:用一条直线从 192 个数字读出方块位置 (R² = 0.955)。每个点都是从未参与训练的一局里的一帧。

真正的惊喜出现在速度上:从单帧里根本读不出来,就这样。换更 灵活的回归也不行。这不是工具的限制,而是关于模型的事实。因为速度是 位置随时间的差分,模型把它保存在历史里,而不是单帧里:如果把 最近三个潜状态而不是最后一个交给直线,速度就变得可读(R² 最高 0.81)。用一种稍微牵强的说法:模型知道东西在往哪走,但只有你看着它 动,它才告诉你。

第三个问题:它会惊讶吗?

这是给婴儿做的测试:用布盖住一个小球,掀开时球不见了——如果这时 婴儿盯着场景看得比平时久,说明它对世界有所期待(物体不会凭空消失)。 我们的等价版本:让模型跑正常的对局,跑到一半,砰,方块瞬移到 一个不可能的位置。如果模型有预期,它的预测必然恰好在那一刻失败。

确实恰好在那一刻失败。整局都又平又低的预测误差,在瞬移后的一步 出现一个干脆的尖峰,然后立刻回落——模型吸收了新的现实。在 PushT 上, 正常对局和被做手脚的对局分得干干净净(AUC 1.000——1 表示完美区分, 0.5 等于瞎猜:只要给误差设一个阈值,就能造出一个绝无失误的"不可能 事件"探测器)。在 Cube 上信号在,但噪声更大(AUC 0.900)——这也和 整体图景一致:Cube 是模型最弱的环境。

但要注意:预测误差升高,也可能是对任何视觉变化的反应,不一定 针对"不可能"。需要一次决定性检验:一组只在外观上做扰动的对局—— 中途不瞬移方块,只改它的颜色:物理不变,外观大变。结果:模型 连这个也能察觉(AUC 1.000),但幅度分得清清楚楚:正常对局平均误差 0.08,改颜色 0.92,瞬移 2.02。惊讶既不是纯物理的,也不是 纯视觉的:是一种混合,而且偏向正确的一边。

三条预测误差随时间变化的曲线:对照组是平的,改颜色是中等尖峰,瞬移的尖峰高一倍
婴儿测试,三个组:无扰动(蓝)、改颜色(橙)、瞬移(红)。 物理上不可能的事件,权重是纯视觉事件的两倍以上。

第四个问题:它能做多久的梦?

第一部分提到过的混沌反对意见:模型想象得越远,模拟就应该越偏离现实。 我们来测量:从三个真实状态出发,让模型自主向前做梦十个块——模型以 5 步为一个块来推理,所以是五十个环境步——完全自主:每个预测成为下一个 预测的输入,全程不看现实。然后把梦和真实发生的事情对比。

漂移确实存在:潜空间里的距离稳定增长,论文也承认这一点。但当我们把 潜表示解码成方块位置(用 probing 的那条直线)时,物理误差在整个时间 跨度上保持平稳,而"世界不动"这个平凡预测不断变差:做梦与不 做梦之间的差距每一步都在拉大。想象力会漂移,但在 planning 所需的时间 跨度内保持物理上的一致。说实话:PushT 是一个阻尼很强的世界,混沌本来 就少——正确的度量是与 baseline 的差距,而不是绝对误差。

两张图:左图是梦与现实在潜空间的距离随时间跨度增大;右图是梦的物理误差保持平稳,而静态 baseline 不断变差
十个块的自主做梦。左图是潜空间里的漂移(增长)。右图是同一段 漂移换算成方块位置(平稳),对照"什么都不动"的 baseline(灰)。 论文没有量化这种漂移:这个测量是我们自己做的。

我们带走了什么

浮现出来的图景是自洽的,而且这一次是我们亲手测的。这个 world model 会做 planning(90%/70%,复现了论文的数字),以可读的形式表示 场景的几何(probing,确认并加强),对不可能事件的惊讶是分级的(我们的 测量,比论文的更干净),它的想象力在有用的时间跨度内站得住(我们的 测量,论文里没有)。裂缝也有,必须说出来:在 Cube 上一切都更脆弱; 速度不住在单帧里;甚至连公开数据集都是截断的——这个细节只有你真正 动手重跑一遍才会发现。

深层的反对意见依然在,这种规模的实验无法了结它:预测得好不等于理解。 但现在我们知道了这个反对意见咬下去的确切位置——动力学、因果、分布外 泛化——也知道继续挖下去的工具,就装在一块几美元租来的 GPU 里。这也许 是整个系列最好的消息:这条前沿,今天坐在家里就能验证。

注释与参考

这是两部分中的第二部分;第一部分讲理论。 被验证的论文:LeJEPA (Balestriero & LeCun,2025)和 LeWorldModel (Maes 等,2026;代码:le-wm, 库:stable-worldmodel)。

方法说明,供想复现的人参考:公开 checkpoint 为 Hugging Face 上的 quentinll/lewm-pushtquentinll/lewm-cube;planning 评估采用与官方 eval 相同的流程(CEM 300×30,时间跨度 5 个块、每块 5 步,目标在 +25 步,预算 50);Ridge 探针,按 episode 划分;surprise test 通过环境的特权状态实现瞬移。Hugging Face 上的 cube 数据集是截断的 (最后约 12% 的行无法读取):我们在 Cube 上的结果只用完好的部分。九个 实验都跑在租用的 GPU 上(RTX 4000 Ada / A4500 / A40),算力总成本 几美元。