课程进度 课程大纲 已发布 48/48 课
第 0 部分——阅读指南:我们究竟要学什么?
第 1 部分——世界模型:智能体内部的沙盒
第 2 部分——把图像变成状态:LeWM 架构
第 3 部分——防止模型作弊:预测损失与 SIGReg
第 4 部分——让模型行动起来:在潜在空间中规划
第 5 部分——工程复现:从论文到可运行系统
第 6 部分——LeWM 究竟学到了什么?
第 7 部分——为什么“预测准确”仍可能“规划很差”
第 8 部分——从复现者到研究者
附录
先看全景
- 图像帧224 × 224 像素
- 图块256 个视觉片段
- [CLS]一个摘要载体
- 通行证含 192 个数的潜变量

一个小故事
摄像头画面太大,无法随身带进数百个想象动作方案。于是 LeWM 为每一帧签发一份小小的“状态通行证”。预测器让这份通行证沿时间移动,比重新绘制整个场景便宜得多。
真实通行证之所以有效,是因为人们已经约定了哪些字段重要。LeWM 没有得到这样的字段清单;训练施加的压力决定什么会被保留下来。它可能保留门口,也可能只保留一种与门口偶然相关、但更容易学习的墙壁颜色。
技术背包
冻结的入口首先采用 ImageNet 统计量进行预处理,并把图像缩放为 224×224。默认 ViT-Tiny 将图像划分为 14×14 大小的图块。因为 224 / 14 = 16,所以共有 16×16 = 256 个图块 token。再加入一个学习得到的 [CLS] token,序列长度就变成 257。
默认骨干网络宽度为 192,包含 12 层 Transformer 和 3 个注意力头。注意力使空间片段能够交换信息。一个图块并不是被单独识别出的物体,[CLS] 也不会神奇地获得语义;只有训练目标才能让它逐渐变得有用。
视觉编码器独立处理每一帧。它先展平 batch 和时间维,用共享权重处理 B×T 张图像,再恢复时间维。时间推理属于后续的动力学预测器。
[B,T,3,224,224]
-> [B×T,3,224,224]
-> [B×T,257,192]
-> take [CLS]: [B×T,192]
-> projector: [B×T,192]
-> restore time: [B,T,192]
投影器并不是简单的降维器。冻结代码通过线性层、BatchNorm 和 GELU,把 192 → 2048 → 192。论文所说的“1-layer MLP”与代码里的两个线性映射,可以稳妥地描述为单隐藏层投影 MLP。它的输出就是用于预测和 SIGReg 的潜在状态。
LayerNorm 在单个 token 内部对特征进行归一化。投影器的 BatchNorm 则针对每个特征,使用展平后 batch-time 样本的统计量。SIGReg 是一个独立的群体损失。说“归一化会让表征变成高斯分布”,错误地混淆了三种机制。
原始 v3 设置 pretrained: false:ViT、投影器、动作路径和动力学模型全部从离线轨迹中联合学习。
容易骗过我们的把戏
假设训练数据中,墙壁颜色能够完美预测哪扇门开着。编码器便可以储存颜色,而忽略细小的门缝。在不移动门的情况下重刷墙壁,通行证会变化过多;保持颜色不变而移动门,通行证又变化过少。
可以测试三组受控样本:固定几何结构而改变纹理;匹配纹理而改变几何结构;只交换干扰因素,然后运行冻结的规划器。编码紧凑、方差非零,或重建良好,都不能证明模型保留了正确事实。
机械性的断言仍然重要。不要把时间维变成通道维,不要忘记恢复时间轴,也不要在每帧只应产生一个状态的位置传入图块级输出。形状能揭示错误实现,但形状本身永远不能证明表征良好。
证据凭据
LeWorldModel v3、冻结的 jepa.py、模型配置 和冻结的投影模块,支持这条精确的默认路径。论文还报告了 ResNet-18 消融实验,因此 ViT-Tiny 只是基准选择,并不是 LeWM 的定义。
允许的表述是:[CLS] 加投影器构成了 LeWM 优化的潜在信息载体。不要把它称为完整的世界状态,不要说 BatchNorm 强制实现了 SIGReg 的高斯目标,也不要从紧凑性推断物理规律。
快速检查
- 为什么边长 224 像素、图块大小 14 会产生 256 个图块?
- 各帧被独立编码后,由哪个组件处理时间关系?
- 怎样揭示一个只追随墙壁颜色而忽略门口几何的通行证?