跳转至

Fast-WAM 讨论笔记:从 single forward 看 generative objective 作为 representation learning

这份文档是 Fast-WAM 论文笔记 之后的一场对话整理。从一个具体的 "video DiT 单次前向是什么意思" 的提问出发,逐步推到一个更大的命题:video generation foundation model 可以作为 robot policy 的 pretraining objective


1. 讨论缘起

最初的提问很具体:

论文里说 "\(z(o,l)\) 是 video DiT 单次前向得到的 latent",这个 "单次前向" 是不是意思是 noise 只做 1 步 denoise?

后面顺着这个问题,把推理流程拆开看,意外发现里头藏着一个挺漂亮的 framework — 把 Fast-WAM、Marigold / Lotus 这类 perception-via-diffusion 工作、以及 MAE-style 的 "train generative head, ship encoder" 模式串了起来。这份文档把整段讨论沉淀下来。


2. 讨论脉络

2.1 "单次前向" 不是 1 步 denoise,而是 0 步 denoise

第一个澄清是名词的:Fast-WAM 推理时 video DiT 完全不做 denoising,它被当成 plain encoder 来用。两条分支的工作方式不同:

分支 推理时是否 denoise 跑几次 forward 输入
Video DiT 不 denoise 1 次 干净的 \(f_0\),无噪声
Action DiT denoise(flow matching) 10 步 加噪 action token,每步迭代去噪

省下来的 9 次 video DiT forward 就是 810 ms → 190 ms 的物理来源(5B video DiT 比 1B action expert 重得多)。

2.2 Wan2.2 的 VAE 为什么支持这种用法

第二个问题:Wan2.2 是 video VAE,能输入单帧吗?答案是 可以,因为它是 causal video VAE + i2v 兼容

  • 时间维度 causal:第 \(t\) 帧 latent 只依赖 \(\le t\) 的输入帧;
  • 显式支持 "first frame 单独 encode" 模式:1 raw frame → 1 latent frame(anchor);
  • Fast-WAM 推理就是把 Wan2.2 的 i2v inference path 截断在 "encode \(f_0\) + 一次 forward" 这一刻,不让它真去生成 future video。

所以这不是 hack,是直接复用了 Wan2.2 自己的 image-to-video 启动路径。

2.3 训练/推理在 token level 的对账

第三个澄清在数据流上:

阶段 输入 raw frames VAE 输出 latent Video DiT 处理 Action
训练 33 frames(1 + 32) \(f_0\) + \(f_{1:8}\),9 个 latent frame 9 个 latent 一起进;\(f_0\) clean、\(f_{1:8}\) 加噪 → flow matching denoise \(f_{1:8}\)(co-train) \(a_{1:32}\) 加噪 → denoise(main)
推理 1 frame(current obs) 只产生 \(f_0\) \(f_0\) 一次 forward \(a_{1:32}\) 10 步 denoise,每步 attend cached \(f_0\) representation

关键观察:\(f_0\) 这条 path 在训练和推理时完全一致。原因是论文 mask 设计上"\(f_0\) 不 attend 任何其他 token"——它的输出 representation 在两个 mode 下结构性等同,没有 train-infer mismatch。

2.4 "Motion 信息内蕴在 feature 上"

接下来的洞察来自对方的一句话:

可以理解成 Motion 的信息内蕴在了一次 forward 之后,得到了这个 feature 上。

这个 framing 准但要加一句精细化 — motion 信息不是在 forward 时被"展开",而是在训练阶段被编译进了 video DiT 的权重;推理时 \(f_0\) 一过这些权重,就自动"染上"了 motion-aware 的成分

训练阶段做了什么 信息最终在哪里
Video co-train loss 强迫 DiT 学会"看到 \(f_0\) → 预测 \(f_{1:8}\)" 权重里:DiT 的 attention pattern、MLP、cross-attention 都被塑形成"能推演 motion"
给定 \(f_0\) 时,DiT 内部的中间 activation 自动 encode 了 "given this scene + this instruction, future will roughly move this way" 激活里:处理后的 \(z(o,l)\) 是 motion-aware 的 representation

论文 ablation 的核心证据:同样的架构、同样一次 forward、同样的 \(f_0\)只差训练目标里有没有 video loss,结果天差地别(RoboTwin 91.8% → 83.8%,真实世界 → 10%)。这只能解释为"权重里编码进去的东西不一样了"。

2.5 拓展到 generative objective 作为 representation learning proxy

这一步把 Fast-WAM 放到了更大的 ML 命题里:

Generative objective 不是为了生成本身,而是作为 representation learning 的 proxy。

这条 thesis 在 ML 历史里反复出现过:

范式 Train objective Inference path 扔掉了什么
MAE / BEiT 重建被 mask 的像素 只用 encoder decoder(生成头)
GPT pretraining 预测下一个 token 各种下游 prompt 严格说啥也没扔(train = inference)
CLIP 对比 image-text 各种下游分类/检索 contrastive head
JEPA 预测 mask 区域的 representation 只用 encoder predictor head
VPP / UVA 联合 video + action 只用 video latent,不解码 video decoder
Fast-WAM flow-matching video + action 单次 forward,扔 future video token 整条 video 生成 path

Fast-WAM 的位置是 "MAE 模式 + diffusion":训练一个生成头,部署时砍掉它,只留 encoder。

2.6 与 diffusion-as-encoder for perception 的类比

对方接下来又把这条线索接到了一个具体的工作脉络上:

这操作让我想到之前一些用 diffusion 网络去做分割、depth 预测的工作。他们也是用最后一步比较小的 noise 做一个 denoise,然后用那个特征来输出结果。

这条类比非常准。整理出来的工作脉络:

工作 任务 用 diffusion 模型做什么 推理跑几步
VPD (ICCV'23) seg / depth / referring freeze SD,抽某个 \(t\) 的中间 feature 1 步
DIFT (NeurIPS'23) dense correspondence SD 中间 activation 当 feature 1 步
Marigold (CVPR'24) depth fine-tune SD,输出 depth map 论文 50 步 → 发现 1 步几乎一样好
Lotus / GenPercept (2024) depth / normal / seg 显式按 single-step 训练 1 步
Fast-WAM (2026) robot policy Wan2.2 当 video encoder video DiT 0 步;action 仍 10 步

Fast-WAM 在这条线上是最激进的一步:连那"一步小 noise"都省了,干净 \(f_0\) 直接进,把 video DiT 当纯 encoder

2.7 关键概念区分:\(f_0\) vs \(z(o,l)\)

最后一个精细化是对"feature"这个词的拆解:

名字 是什么 跟训练目标的关系
\(f_0\) 第一帧经 VAE 得到的 latent 无关。VAE 来自 Wan2.2 pretrained 冻结,给同一张图永远输出同一个 \(f_0\)
\(z(o,l)\) \(f_0\) 经过 video DiT 所有 layer 之后的输出 有关。video co-train 改 video DiT 权重 → 改 \(z\)

Fast-WAM 的论点准确表述应该是:video co-train 训练让 video DiT 的权重变成好的 motion-aware encoder,使得 \(z = \text{VideoDiT}(f_0)\) 成为好的 conditional feature。不是 "\(f_0\) 是好 feature"。


3. 精华:四条 framework-level 的洞察

把上面这堆讨论收紧到四条最核心的命题。这是我认为这场对话的真正"精华"。

洞察 1 — Extraction vs Sampling 的二分

Diffusion iterative loop 的本质是从分布中 sample。当任务是 "extract from representation"(确定性映射)时,sample 这一步没意义;当任务是 "sample from distribution"(多模态生成)时,iteration 才有价值。

[确定性映射 — 1 步够]                              [多模态采样 — iteration 必要]
   ↓                                                              ↓
depth, segmentation, dense correspondence       text-to-image, video gen, action sampling
   ↓                                                              ↓
Marigold/Lotus/VPD/DIFT                          Stable Diffusion / Wan2.2 / π₀ action head

Fast-WAM 把 robot policy 拆成两半: - conditioning extraction\(z(o,l)\) 提取)→ 确定性 → 1 步 - action sampling\(a_{1:32}\) 生成)→ 多模态 → 10 步

而 Joint/IDM 范式的错误就是 把本来确定性的那一半也当成 multimodal sampling 来跑了,浪费了 9× 冗余 forward。

洞察 2 — Diffusion 训练的 structural advantage

Diffusion / flow matching 的损失是 per-noise-level、per-step 的,不是 per-rollout 的。所以推理路径(要不要 iterate)和训练目标在结构上是解耦的。

这是一个 underappreciated 的点。Autoregressive LLM 的训练目标和推理路径是同构的(都是 next-token),所以 GPT 没法像 Fast-WAM 那样把 train 和 infer 解耦。而 diffusion 训练定义在"任意 noise level 下都能还原",逼迫 representation 在每个抽象 scale 上都 robust — 这恰好让模型可以被"截取"在任何中间点使用。

这一点跟 MAE 一脉是同源的(MAE 的 reconstruction loss 也是 per-patch、与 inference 路径解耦)。

洞察 3 — MAE pattern 是更广的模板

训练一个 generative head,部署时砍掉它,只留 encoder。生成损失的价值在于训练时塑形 encoder,不在于推理时真生成。

  • MAE: 训练重建被 mask patch,部署砍 decoder;
  • VPD/Marigold/Lotus: 训练用 generative loss,部署 1 步 / 0 步当 encoder;
  • Fast-WAM: 训练 video co-train,部署 0 步扔掉 future video,video DiT 当 encoder。

三者 schema 同构。Fast-WAM 在 robot policy 这个 domain 里复制了同一个 trick。

洞察 4 — Video generation 可以充当 robot policy 的 pretraining objective

这是这场对话的高潮命题:

Video generation 任务可以替代"在大量带 action label 的机器人数据上预训练"这套昂贵 pipeline。 因为它只需要 video(互联网上无穷多),就能塑形出对 motion / dynamics 敏感的 encoder。

如果这个命题成立,影响是: - 不再需要 Open-X / GR00T 那种大规模 robot demo collection 来做 pretraining; - 任何 video generation foundation model(Wan / Cosmos / Sora)都可以直接当 robot policy 的初始化; - Fine-tune 阶段只需要少量 teleoperation 数据。

Fast-WAM 用 controlled ablation 给出了这条 thesis 的 第一份 evidence:在没有 embodied pretraining、只有 30k step fine-tune 的条件下,追平了带 embodied pretraining 的 LingBot-VA / Motus。

这其实就是论文标题那个反问 "do WAMs need test-time future imagination?" 的真正含义 —— 不需要,因为 video generation foundation model 已经在训练时把 robot policy 需要的所有东西编码进权重了


4. 一段精炼的复述

把上面四条收成一句话:

Video generation foundation model 通过训练目标的塑形,把 motion / dynamics 先验编码进 backbone 权重;这套权重在被 robot data fine-tune 时,等价于做了一次低成本的 embodied pretraining;推理时只需 single forward 提取 \(z(o,l)\),就能拿到几乎全部 gain,因为 robot policy 中 "conditioning extraction" 本质是确定性映射,不需要 iterative sampling。

这一条话覆盖了: - 训练侧(co-train objective 塑形权重); - 推理侧(single forward 足够,diffusion 解耦使其可能); - 性能侧(替代 embodied pretraining); - 哲学侧(extraction vs sampling 的二分)。


5. 由此引出的 open question

讨论结束时几个仍然 open、值得后续实验的问题:

  1. Inference-time scaling 曲线 — 固定权重,让三种 path 各自加 compute budget(更多 denoising step),看 Pareto frontier。预测:Fast-WAM 给 action denoising 加 step 有用,给 video denoising 加 step 没用。这是上面 "extraction vs sampling 二分" 的可证伪预测。
  2. Long-horizon / deformable 任务上 imagination 是否回归 — 论文里 IDM 在 real-world towel folding 上 success rate 反而最高,是这个假设的早期信号。
  3. JEPA-WAM 的可能性 — 把 pixel-level video co-train 替换成 representation-level prediction(DINOv3-token-level),能否在更低算力下复制 Fast-WAM 的 gain?
  4. Scaling laws — 论文用 5B backbone。当 backbone scale 到 30B+ / 100B+ 时,test-time imagination 是否重新有价值(参照 LLM o1-style test-time compute trend)?
  5. 跨 embodiment transfer — 在大量 human / 互联网 video 上 video co-train,再跨到机器人 embodiment fine-tune — Fast-WAM 这套 i2v-based 架构对这种 transfer 是否友好?
  6. 辅助目标的替代 — inverse dynamics、masked autoencoding、optical flow prediction 能否在更低成本下替代 full video diffusion loss?若可以,连 video co-train 都不需要全套 diffusion。

6. 这场讨论给 Fast-WAM 论文本身的反向建议

如果让作者重写 §5,可以把现在那个 "video co-train > test-time imagination" 的 ablation framing 升级成 "diffusion as representation learning for robot policy" 的 thesis framing

  • 把 Marigold / Lotus / VPD 这条 perception-via-diffusion 线接进 related work;
  • 把 §5 的发现重述成 "我们在 robot policy 这个 domain 复制了 MAE pattern:训练用 generative head,部署只用 encoder";
  • 把 §6 future work 从 "scaling" 扩展到 "JEPA-style co-train" / "inference-time scaling curve" / "替代辅助目标"。

这样 paper 不再只是一个 negative ablation 报告,而是一个 positive thesis paper。读者拿走的东西就从"原来 imagine-then-execute 不必要"变成"我可以用 video generation 当 robot policy 的 free pretraining"。后者的传播力强得多。


参考

  • 原论文笔记: Fast-WAM_summary.md
  • 论文 PDF: paper.pdf
  • 相关工作 — diffusion as perception encoder:
  • VPD — Zhao et al., ICCV 2023
  • DIFT — Tang et al., NeurIPS 2023
  • Marigold — Ke et al., CVPR 2024
  • Lotus — He et al., 2024
  • 相关思想 — generative objective as representation learning:
  • MAE — He et al., CVPR 2022
  • I-JEPA — Assran et al., CVPR 2023
  • VPP — Hu et al., 2024