一句话定位
DINO-WM 在冻结的 DINOv2 patch 特征空间上学习动作条件的潜在动力学(预测未来 patch 特征、完全不做像素重建),从离线预采集轨迹训练出一个任务无关的世界模型;测试时把任务表述成”到达目标观测”的视觉目标到达问题,用 MPC + 交叉熵法(CEM) 在潜空间做零样本规划——不需要专家演示、奖励模型或预训练逆模型。作者含 Yann LeCun,属 JEPA / 非重建潜在世界模型谱系的代表性 offline 规划工作。
背景与定位
论文把”好的世界模型”要满足的三条性质摆在最前面:1) 能在离线、预采集的轨迹上训练;2) 支持测试时行为优化;3) 支持任务无关的推理。围绕这三条,它同时区分开当时两条主流路线:
- 在线 RL 世界模型(dreamer-v3 DreamerV3、iris IRIS、TD-MPC2、STORM 等):世界模型只在被优化策略覆盖的分布上准确,且普遍要预测 reward / discount / termination,把表征训成任务特定的;换任务甚至同环境换目标都要重训。DINO-WM 明确”只建模离线轨迹里可得的信息,不碰 reward/discount/termination”。
- 生成式视频世界模型(GAIA-1、deepmind-genie2 Genie、unisim UniSim、Sora 类):在像素空间建模、常靠文本条件,扩散生成昂贵,既不适合需要精确视觉目标的控制,也难承受 MPC 这种测试时优化。DINO-WM 主张”在潜空间而非像素空间建模”,让规划更精确、更便宜。
它的方法根基在 JEPA 谱系:I-JEPA(i-jepa)、V-JEPA、以及 LeCun 的自主机器智能路线(lecun-path-autonomous-machine-intelligence)都主张”在联合嵌入 / 表征空间里做预测,而不是重建像素”。DINO-WM 可以看作把 JEPA 的 joint-embedding-predictive 思想,落到动作条件 + 离线规划:编码器不自己训,而是直接复用自监督预训练好的 DINOv2 patch 特征,只学”给定历史 patch 特征 + 动作 → 下一帧 patch 特征”的转移。范式命名:冻结自监督 patch 特征上的潜在世界模型 + 测试时 MPC 规划。
模型架构
世界模型由三部分组成:观测模型 encθ、转移模型 pθ、可选解码器 qθ。所有前向计算都在潜空间 z 里完成。
观测模型(冻结 DINOv2,非训练)
- 直接用现成 DINOv2 ViT-S/14(repo 配置
name: dinov2_vits14,取x_norm_patchtokens),全程冻结(train_encoder=False)。 - 把一张图 o_t 编码成 patch 嵌入 z_t ∈ ℝ^{N×E}:224×224 输入、patch_size=14 → N = (224/14)² = 256 个 patch token,嵌入维 E = 384(ViT-S 的
num_features)。 - 论文论点:感知是通用任务、可从海量互联网数据学到,不该让世界模型每换一个新环境都从零学观测模型;DINOv2 在检测/分割/深度上都强,天然带空间 + 物体中心先验。
转移模型(动作条件 ViT,帧级自回归)
- 架构是 ViT(repo
ViTPredictor:depth=6, heads=16, mlp_dim=2048, dropout=0.1, pool=‘mean’),因为要处理 patch 特征序列。 - 输入过去 H 帧的潜状态 z_{t-H:t-1} 与动作 a_{t-H:t-1}(H = 上下文长度,超参),预测下一帧潜状态。用 causal attention 保证 t 时刻只依赖过去,在帧级(frame-level)做自回归:z_t 的每个 patch 向量 z_t^i 注意到过去 H 帧的全部 patch。这与 IRIS 的 token 级自回归相反——IRIS 在一帧内逐 token 生成、还要注意本帧已生成的 token;DINO-WM 把”一帧的全部 patch 当作整体”预测,作者认为更能捕捉全局结构与时序、改善时间泛化。
- 动作条件:K 维动作向量先经一个 MLP 动作编码器 ϕ 映射(
action_emb_dim=10),再拼接到每个 patch 向量 z_t^i(i=1..N)。有本体感觉(proprioception)时同样 concat 进潜状态(proprio_emb_dim=10)。
解码器(可选,仅供可视化/可解释性)
- 一叠转置卷积(做法类 VQ-VAE-2,Razavi 2019;repo
decoder: vqvae),把 patch 表征解回像素。 - 训练完全独立于转移模型:解码器质量不影响世界模型的推理/规划,且规划时根本不需要重建像素,省算力。这正是它相对 Dreamer/IRIS”编码器-解码器耦合训练”的关键简化。
训练目标(潜一致性损失):teacher forcing,把轨迹切成长度 H+1 的片段,对 H 个预测帧各算
L_pred = ‖ pθ(encθ(o_{t-H:t}), ϕ(a_{t-H:t})) − encθ(o_{t+1}) ‖²(式 1),纯潜空间 MSE,无像素重建。解码器另有独立重建损失 L_rec = ‖qθ(z_t) − o_t‖²(式 2)。
数据
五套环境,观测统一为 RGB 224×224,训练数据均为离线随机 / 回放轨迹(规划时不给 reward、不给专家):
| 环境 | 类型 | 训练数据 |
|---|---|---|
| PointMaze(D4RL) | 2D 力控点导航(含速度/加速度/惯性) | 2000 条全随机轨迹 |
| Push-T(Chi et al. Diffusion Policy 环境) | 推 T 形块的接触密集操作,25 步内达标 | 18500 样本:回放官方专家轨迹 + 各级噪声 |
| Wall(自建 2D 双房间过门) | 导航过门 | 固定墙 2000 条×50 步;随机变体 10240 条 |
| Rope(Nvidia Flex,AdaptiGraph) | XArm 操作软绳 | 1000 条×20 步随机动作 |
| Granular(~100 颗粒) | 把上百粒子堆成目标形状 | 1000 条×20 步 |
泛化家族(在训练时未见的配置上部署):
- WallRandom:墙和门位置随机化,测试时是训练未见的墙/门位置。
- PushObj:新增 Tetris 形、”+“形等;用 4 种 shape 训练、在 2 种 unseen shape 上评测。
- GranularRandom:初始化不同数量的粒子(测试时不到训练时一半的粒子数、构成 OOD 图像),直接复用固定粒子数训练出的模型。
动作标注:动力学以采集轨迹里的 ground-truth 动作为条件——作者在局限里明确这是依赖项(纯互联网视频没有真值动作,难以直接训练)。全部为仿真数据(Point/Push-T/Wall 为 2D 仿真,Rope/Granular 为 Nvidia Flex 仿真),无真机数据。
训练方法
- 目标:上文式 1 的潜一致性 L2,无像素重建;解码器用式 2 单独训、与转移模型解耦。
- 共享超参(论文 Table 7):优化器 AdamW,image size 224,Decoder lr 3e-4 / Predictor lr 5e-5 / Action-encoder lr 5e-4,action emb dim 10,epochs 100,batch size 32。frameskip 5(repo)。所有环境用同一套超参训练。
- 注:repo
train.yaml里predictor_lr记为 5e-4(与论文 Table 7 的 5e-5 有出入),encoder_lr 1e-6但因train_encoder=False编码器实际冻结、该 lr 不生效。
- 注:repo
- 上下文长度 H(论文 Table 6,环境相关):PointMaze 3、Push-T 3、Wall 1、Rope 1、Granular 1(repo 默认
num_hist=3)。num_pred=1(一次只预测一帧)。 - 测试时规划:把目标表述成到达目标观测 o_g,成本
𝒞 = ‖ẑ_T − z_g‖²(当前预测潜态与目标潜态的 MSE,逐步 ẑ_t = p(ẑ_{t-1}, a_{t-1}))。- MPC + 交叉熵法(CEM)为首选:每轮采样 N 条动作序列 → 世界模型 rollout 算成本 → 取 top-K 更新高斯分布 → 迭代;执行前 k 个动作后带新观测 receding-horizon 重规划。
- 世界模型可微,也支持梯度下降(GD)直接对动作反传;但实测 CEM 优于 GD(作者推测因训练时未约束世界模型的地形平滑性,梯度不稳)。消融见评测的 Table 5。
Infra(训练 / 推理工程)
- 训练硬件:repo 的 Hydra
submitit_slurmlauncher 声明gres: "gpu:h100:1"、nodes: 1、tasks_per_node: 1、cpus_per_task: 8、mem_gb: 512、timeout_min: 2880(48h)——即单张 NVIDIA H100、单节点训练,作业上限 48 小时。 - GPU-hours / 精度 / 并行策略:未披露(单卡、无多卡并行配置)。论文正文未给训练总耗时。
- 推理:规划全程在潜空间做(因不需重建像素而显著省算力,这是相对像素扩散世界模型如 AVDC 的核心工程优势);具体控制频率 / FPS / 时延:未披露。转移模型仅 depth-6 ViT,规模轻量。
- 依赖:Mujoco210(Point/Push-T/Wall)、Nvidia Flex / PyFleX(Rope/Granular 可变形环境需 docker 编译)。
评测 benchmark
Table 1 — 五环境规划结果(SR↑ 成功率 / CD↓ Chamfer 距离;PointMaze/PushT/Wall 各 50 组初始-目标,Rope/Granular 各 10 组):
| Model | PointMaze SR | PushT SR | Wall SR | Rope CD | Granular CD |
|---|---|---|---|---|---|
| IRIS | 0.74 | 0.32 | 0.04 | 1.11 | 0.37 |
| DreamerV3 | 1.00 | 0.04 | 1.00 | 2.49 | 1.05 |
| TD-MPC2 | 0.00 | 0.00 | 0.00 | 2.52 | 1.21 |
| DINO-WM(Ours) | 0.98 | 0.90 | 0.96 | 0.41 | 0.26 |
简单环境(Wall/PointMaze)与 DreamerV3 持平;接触密集的操作环境(Push-T / Rope / Granular)大幅领先。TD-MPC2 因缺 reward 信号学不到好潜表征而崩。论文口径:最难任务上比 prior SOTA 的成功率平均 +45%、LPIPS +56%。
Table 2 — 编码器消融(换观测模型,SR / CD):
| 观测编码器 | PointMaze | PushT | Wall | Rope | Granular |
|---|---|---|---|---|---|
| R3M(全局向量) | 0.94 | 0.42 | 0.34 | 1.13 | 0.95 |
| ResNet-18(全局向量) | 0.98 | 0.2 | 0.12 | 1.08 | 0.90 |
| DINO CLS(全局向量) | 0.96 | 0.44 | 0.58 | 0.84 | 0.79 |
| DINO Patch(Ours) | 0.98 | 0.90 | 0.96 | 0.41 | 0.26 |
结论:patch 特征 ≫ 单一全局特征向量(R3M/ResNet/DINO CLS 都把图压成一个向量、丢空间信息)——环境越需要精细空间理解,全局特征掉得越狠。
Table 3 — 未见配置泛化(WallRandom/PushObj SR↑,GranularRandom CD↓):
| Model | WallRandom | PushObj | GranularRandom |
|---|---|---|---|
| IRIS | 0.06 | 0.14 | 0.86 |
| DreamerV3 | 0.76 | 0.18 | 1.53 |
| R3M | 0.40 | 0.16 | 1.12 |
| ResNet | 0.40 | 0.14 | 0.98 |
| DINO CLS | 0.64 | 0.18 | 1.36 |
| Ours | 0.82 | 0.34 | 0.63 |
WallRandom 上 DINO-WM 明显领先,说明它学到了”墙 / 门”的一般概念、即便位置未见过也能找到并过门;GranularRandom 里粒子数 OOD 仍最稳(作者归因于 patch 编码让”每个 patch 内的粒子数变化”仍在分布内)。PushObj 对所有方法都难(未见形状的质心/惯性难推断)。
Table 4 — 未来帧重建质量(LPIPS↓ / SSIM↑,用训练好的解码器): DINO-WM 的 LPIPS = PushT 0.007 / Wall 0.0016 / Rope 0.009 / Granular 0.035;SSIM = PushT 0.985 / Wall 0.997 / Rope 0.985 / Granular 0.940,全面优于所有基线——即便对手用的是带环境特定重建目标训出的编码器。DINO-WM 的开环 rollout 重建”视觉上与真值几乎无法区分”。
Table 5 — 规划器消融(DINO-WM 自身): MPC(可重规划)PointMaze 0.98 / PushT 0.90 / Wall 0.96 / Rope 0.41 / Granular 0.26;CEM(开环、不重规划)PointMaze 0.8 / PushT 0.86 / Wall 0.74;GD PointMaze 0.22 / PushT 0.28。→ MPC(重规划) > CEM(开环) > GD。
与生成式视频模型定性对比:AVDC(扩散、文本条件生成整段视频)生成的未来”视觉真实但物理不可信”(单步可发生大跳变,难精确到目标);把 AVDC 改成动作条件逐帧生成(AVDC-AC)长时程仍漂移出真值——都不足以支撑精确规划。
创新点与影响
- 核心贡献:证明在冻结的通用自监督 patch 特征(DINOv2)之上做动作条件预测,就足以得到一个任务无关、可在测试时规划的世界模型——不需要 reward、逆模型、专家演示,也不需要像素重建。一举把世界模型从”在线 RL 的任务特定工具”和”昂贵的像素生成”两条路都区分开,给”offline world model + test-time planning”给出一个简单强基线。
- 帧级自回归 + patch 整体建模(区别于 IRIS 的 token 级自回归),更好捕捉全局结构与时序动力学。
- patch vs 全局特征的实证(Table 2):空间信息对操作类任务是成败关键——这是对”机器人用单向量表征(R3M 等)“路线的直接反例。
- 强泛化:跨环境配置(墙/门位置、物体形状、粒子数)零样本部署仍有效,指向”世界模型学到了可迁移的物理/几何概念”。
- 谱系意义:LeCun 联署,是 JEPA / 非重建潜在世界模型思想在离线视觉规划上的代表落地;与像素扩散世界模型(diamond DIAMOND、decart-oasis)形成”重建 vs 非重建”的对照。项目页显示后续版本把环境从论文 v1 的五套扩到六套(新增 Reacher)。
- 作者自陈局限:① 依赖智能体的 ground-truth 动作,纯互联网视频(无动作标注)难直接训练;② 目前只在动作空间规划,未来应引入分层结构(高层规划 + 低层控制策略)以解更精细的控制任务。
原始链接
- arXiv abstract:https://arxiv.org/abs/2411.04983
- arXiv PDF:https://arxiv.org/pdf/2411.04983
- 项目页(视频/demo):https://dino-wm.github.io/
- GitHub 代码:https://github.com/gaoyuezhou/dino_wm
- 数据集(OSF):https://osf.io/bmw48/
- 依赖:DINOv2 https://github.com/facebookresearch/dinov2 ;ViT 实现基于 https://github.com/lucidrains/vit-pytorch
一手源存档(sources/)
- dino-wm—github-readme — GitHub README 快照(sources/world-model/2024/dino-wm—github-readme.md)
- dino-wm—configs — 关键 config/代码快照:encoder(dinov2_vits14) / predictor(ViT depth6) / train.yaml(H100 launcher+超参)(sources/world-model/2024/dino-wm—configs.md)
- dino-wm—project-page — 项目页正文文本快照(sources/world-model/2024/dino-wm—project-page.md)
- arXiv 全文(HTML v1)已通读,未入 git;引用见上方 arXiv URL(arXiv 原文 PDF/HTML,不入 git)