一句话定位
GenAD 用从 YouTube 抓来的 2059 小时全球驾驶视频(OpenDV-2K,比 nuScenes 大 374 倍)训练了自动驾驶领域第一个大规模视频预测模型:在冻结的 SDXL 图像扩散模型里插入「因果时间注意力 + 解耦空间注意力」的 temporal reasoning block,做到对未见数据集的零样本未来预测,并可微调为动作可控的仿真器(GenAD-act)或用 0.8M 参数 MLP 挂在冻结编码器上做开环规划。CVPR 2024 Highlight。
背景与定位
结构化自动驾驶系统的核心痛点是泛化:感知模型换地理位置 / 传感器 / 天气就失效,预测规划模型面对罕见场景和不同意图的非确定未来也会崩。作者主张把「驾驶视频」当成能泛化到多样环境和动态未来的通用接口——一个视频预测模型同时学到两件事:世界如何演化、如何安全操控。
与前作相比,这是「用互联网规模数据训驾驶世界模型」的路线的第一次系统化尝试。之前的驾驶世界模型都被数据分布卡死了泛化:drivedreamer 用 nuScenes(新加坡+波士顿)、gaia-1-wayve 虽然缩放到约 10B 参数但只用了 4700 小时 London 内部视频,二者都是固定/相似相机设置,且很少探索下游规划应用;drive-wm-driving-into-the-future、unisim 等则依赖布局条件或采集资产。GenAD 的差异化在于:数据来自开放网络(40+ 国家、244+ 城市、任意相机设置),并显式打通了仿真(动作条件)和规划两条下游链路。范式上属于 latent-diffusion 视频预测世界模型,与游戏域的 gamengen、diamond 及通用视频世界模型 unipi-universal-policies-video 同源但面向驾驶的剧烈视角迁移做了专门设计。同队后续工作 Vista(NeurIPS 2024)在 OpenDV 之上继续做高保真长时程可控世界模型。
模型架构
Backbone:SDXL latent diffusion。 以 SDXL(2.7B 去噪 UNet 文生图 LDM)为起点,继承其高质量视觉细节、大模型容量和更强文本编码器。像素↔latent 由预训练 autoencoder(83.7M 参数)压缩,denoising 在压缩 latent 空间进行。文本条件由两个冻结 CLIP 变体编码——CLIP ViT-L + OpenCLIP ViT-bigG,合计 817M 参数。
核心创新:Temporal Reasoning Block(TRB)。 第二阶段把 TRB 插入(interleave)到 SDXL 原有的每个 transformer block(空间自注意力、cross attention、FFN)之前。每个 TRB 由三层注意力串联:
- Causal Temporal Attention(因果时间注意力):在时间轴上交换帧间信息,加因果 mask 让预测只依赖过去帧、不偷看未来帧(避免 causal confusion);加相对位置编码(temporal bias)区分序列内不同帧。作者实测因果约束显著提升预测帧与历史帧的连贯性。
- 两层 Decoupled Spatial Attention(解耦空间注意力):驾驶视频视角变化剧烈、同一 grid 特征在不同时刻差异巨大,时间注意力感受野有限难以关联。两层解耦自注意力分别在水平轴、垂直轴传播 grid 特征,为时间注意力聚合信息;解耦变体是线性复杂度(对比 full self-attention 的二次复杂度)。
Deep Interaction(深度交互): 空间 block(stage 1 微调,负责单帧写实)与时间 block(stage 2 引入,负责跨帧一致性)交错排布,最大化时空特征交互——消融显示这一步单独把 FVD 降了 17%。
Zero Initialization: stage 2 每个新引入 block 的最后一层参数全部零初始化,避免破坏图像生成模型的先验、稳定训练。
动作条件(GenAD-act): 未来轨迹(6 个 waypoint @ 2Hz)经 Fourier embedding 升维,再由零初始化 linear 层投影到与文本条件 c 相同维度、相加后经 cross-attention 注入网络,把 ego 意图注入未来想象。
规划头: 只取冻结 GenAD 去噪 UNet 的 encoder 部分(约整模型一半)提取两帧历史的时空特征,喂给一个随机初始化 MLP(6 linear + 5 ReLU,仅 0.8M 参数)回归未来 6 个 waypoint @ 2Hz(3s)。前两层通道降采样,两帧特征在通道维拼接后再降采样,空间池化后由最后两层投影出轨迹。
规模: GenAD 总参数 5.9B(其中 stage-2 新增的 temporal reasoning block 为 2.5B),计算复杂度 5.27 TFLOPs。输入分辨率 256×448。
数据
OpenDV-2K:截至发表时最大的公开驾驶数据集,共 2059 小时视频-文本对。
- 组成:1747 小时来自 YouTube(OpenDV-YouTube split)+ 312 小时来自 7 个公开授权数据集(nuScenes、nuPlan、Talk2Car、ONCE、Honda-HAD、Honda-HDD-Action、Honda-HDD-Cause)。
- 帧数:OpenDV-2K 共 65.1M 前视帧;其中 OpenDV-YouTube 60.2M 帧。比广泛使用的 nuScenes 大 374 倍。
- 地理多样性:40+ 国家、244+ 城市(由 GPT 从视频标题估计);美国 36.4M clip(覆盖 50 州中的 40 个),中国 12.9M clip(覆盖 34 省中的 26 个)。相机为 uncalibrated(任意/未标定),覆盖各种车型与相机设置(含双层巴士前视等)。
YouTube 采集与清洗:
- 手选 43 个持续发布高质量驾驶视频的 YouTuber,共 2139 条高质量前视驾驶视频;其中 3 个 YouTuber(Pete Drives USA、KenoVelicanstveni、Driving Experience)全部视频作验证集,无 train/val 泄漏。
- 原始视频 ≥720p(16:9 通常 1280×720),以 10Hz 抽帧;raw 视频约 3 TB,处理成图像约 24 TB(官方 mini 子集 raw 44 GB / 图像 390 GB;2024-09 又发布 25 小时 mini 版)。
- 清洗:丢弃每条视频开头 90s + 结尾 30s(部分 YouTuber 开头丢 180s 或 300s)去掉频道介绍/订阅提醒;再借 BLIP-2 caption 里的关键词(words、watermark、dark night、dark street、blur 等)检出黑帧/转场帧,配合人工核查删除。
语言标注(两类文本,拼成条件 c = “command, context”):
- Context(帧描述):用 BLIP-2 对每帧生成描述,prompt 为 “Question: Describe the image of a driving scenario concisely. Answer:”。
- Command(ego 驾驶命令):13 类高层驾驶命令(附录枚举出 forward / intersection passing / left turn / right turn / left+right lane change / left+right lane branch / crosswalk passing / rail passing / merge / U-Turn / stop-decelerate / deviate;正文称 14 类)。训练一个基于光流的动作模型标注:用预训练 GMFlow 抽相邻帧光流 + distance map,喂 ResNet-18 对每 4s clip 分类,训练集为 Honda-HDD-Action + Honda-HDD-Cause(清洗后 Honda-HDD-Action 剩 32 小时、Honda-HDD-Cause 约 1 小时)。每类命令映射到词典里多个自由表达,训练时随机取一条。
- 公开数据集原有的稀疏 metadata(如 “sunny road”)用 GPT 增强成描述性 context,command 由记录轨迹归类生成。
训练序列构造: 把 10Hz YouTube 视频的每一帧都当作起始帧构造 4s @ 2Hz 序列,得到 65M 训练视频序列;每序列 8 帧,随机取前 m∈{1,2} 帧作 clean 条件帧(概率 p={0.1,0.9}),其余 n∈{7,6} 帧加噪预测。
训练方法
两阶段。目标均为扩散噪声预测(ε-prediction),文本条件以 p=0.1 概率丢弃以启用 classifier-free guidance。
Stage 1 — 图像域迁移(Image Domain Transfer):
- 把 SDXL 从通用视觉域(人像/艺术画)迁到驾驶域:在 OpenDV-2K 的 65.1M 图文对上按 Eq.(1) 的逐图去噪目标微调 UNet 全部 2.7B 参数;CLIP 文本编码器与 autoencoder 保持冻结。
- 300K 迭代,32× NVIDIA Tesla A100,总 batch 256,AdamW;LR 线性 warmup 10⁴ 步后恒定 1.25×10⁻⁶。
Stage 2 — 视频预测预训练(Video Prediction Pre-training):
- 冻结 stage-1 图像模型全部 block,只训练新插入的 temporal reasoning block(2.5B 可训练参数),避免扰动图像生成能力、专注学时间依赖。目标 Eq.(2):conditioned on clean 历史帧 latent vₘ 和文本 c,预测被加噪的未来帧 latent vₜⁿ 的噪声;只有 corrupted 未来帧贡献 loss,条件帧不加噪也不计损失。同一 recipe 稍改(交换条件帧索引)即可做视频插值。
- 64× GPU(默认 A100),112.5K 迭代,总 batch 64,LR warmup 10⁴ 步后 1.25×10⁻⁵。
下游扩展微调:
- 动作条件(GenAD-act):在 nuScenes 上连同轨迹投影层一起微调预训练 GenAD,16× GPU、100K 步、总 batch 16,其余协议同 stage 2。
- 规划:只训 0.8M 参数的 MLP(冻结 GenAD encoder 预抽特征),12 epoch、batch 16、LR 5×10⁻⁴,单卡 V100 上仅 10 分钟收敛——比训 UniAD 规划器快 3400 倍。
Infra(训练 / 推理工程)
- 训练算力:Stage 1 用 32× A100;Stage 2 用 64× GPU(论文注明默认设备为 NVIDIA Tesla A100)。GPU-hours、并行策略、精度均未披露。
- 模型规模:5.9B 总参数,5.27 TFLOPs 计算复杂度。
- 推理 / 采样:DDIM 采样,100 步,classifier-free guidance scale 7.5,输出 256×448 @ 2Hz 的 6 帧未来。采样速度 539.41 ms/step——按 100 步计单次生成约 54 秒,作者明确承认 SDXL 采样慢、算力开销大是本模型的局限,未针对实时部署优化(未给 FPS/控制 Hz/边缘硬件指标)。
- 规划推理:预抽 UNet encoder 特征后,规划自适应训练单 V100 仅 10 分钟。
评测 benchmark
1) nuScenes 视频生成质量(Table 2,越低越好):
| 方法 | 训练集 | 需 3D 布局 | FID↓ | FVD↓ |
|---|---|---|---|---|
| DriveGAN | nuScenes | — | 73.4 | 502 |
| DriveDreamer | nuScenes | 是 | 52.6 | 452 |
| DrivingDiffusion | nuScenes | 是 | 15.8 | 332 |
| GenAD-nus(仅 nuScenes) | nuScenes | 否 | 15.4 | 244 |
| GenAD | OpenDV-2K | 否 | 15.4 | 184 |
GenAD 在 FID 与 FVD 上全面领先;相比 DrivingDiffusion FVD 降低 44.5% 且不需要 3D 未来布局输入。GenAD-nus 在 nuScenes 上与 GenAD 相当,但迁到 Waymo 等未见集会退化到 nuScenes 视觉模式——OpenDV-2K 训练带来的泛化是关键。
2) 消融(Table 3,YouTube 子集训 75K 步):
| 配置 | FID↓ | FVD↓ | CLIPSIM↑ |
|---|---|---|---|
| Baseline(普通时间注意力) | 18.32 | 244.44 | 0.8405 |
| + Deep Interaction | 17.96 | 201.69 | 0.8409 |
| + Temporal Causality | 16.54 | 207.45 | 0.8550 |
| + Decoupled Spatial Attn. | 17.67 | 189.54 | 0.8652 |
Deep Interaction 把 FVD 降 17%;temporal causality 与 decoupled spatial attn 主要提升 CLIPSIM(预测帧与条件帧的时间一致性)。作者说明第 3/4 行 FID/FVD 的轻微上升不真正反映质量下降(与 [8,10,79] 讨论一致)。
3) 动作条件预测(Table 4,nuScenes,Action Prediction Error↓): 用 nuScenes 上训练的逆动力学模型(IDM)把预测帧反投影成轨迹 ŵ,算与输入轨迹 w 的 L2。Ground truth 0.90 / GenAD(仅文本)2.54 / GenAD-act(文本+轨迹)2.02——比纯文本条件误差降低 20.4%。
4) 开环规划(Table 5,nuScenes,越低越好):
| 方法 | 可训练参数 | 输入 | ADE↓ | FDE↓ |
|---|---|---|---|---|
| ST-P3 | 10.9M | 多视角 | 2.65 | 3.73 |
| UniAD | 58.8M | 多视角 | 1.03 | 1.65 |
| GenAD | 0.8M | 前视单图 | 1.23 | 2.31 |
冻结 GenAD encoder + 一个轻量 MLP,用 73× 更少的可训练参数、仅前视单图就拿到有竞争力的规划结果(评测协议对齐 UniAD)。
5) 零样本视频预测: 在 OpenDV-YouTube、Waymo、KITTI、Cityscapes 的未见集上(train/val 按 YouTuber 做 geofencing 隔离),给相同起始帧,GenAD 的未来预测比 I2VGen-XL、VideoCrafter1(image-to-video,无法严格跟随给定帧)、DMVFN(Cityscapes 训练,形变严重)更鲁棒真实(Fig. 5,定性)。
创新点与影响
- 第一个大规模、基于互联网数据的驾驶视频预测/世界模型:把「网络驾驶视频当通用接口」这条泛化路线做成了系统方案。
- OpenDV-2K:截至发表最大公开驾驶数据集(2059 小时 / 65.1M 帧 / 40+ 国 / 244+ 城),并开源了完整视频清单、下载处理工具链与 YouTube 语言标注,成为后续驾驶世界模型(如同队 Vista)的标准底座。
- Temporal Reasoning Block:因果时间注意力 + 解耦空间注意力的组合,专治驾驶场景的因果推理与剧烈视角迁移,在冻结图像扩散模型上以两阶段、零初始化方式高效插接。
- 一套预训练打通两条下游:动作条件仿真(GenAD-act)与超轻量规划头(0.8M 参数、训练快 3400 倍),证明视频预测预训练学到的时空表征可直接迁移到 planning。
作者自陈局限:
- 模型容量增大带来训练效率与实时部署的双重挑战;SDXL 采样慢、算力开销大,本工作未针对计算 overhead 优化(明确留给未来做快速采样/更高效扩散模型)。
- BLIP-2 标注偏短且平淡、易同质化,图文对齐待提升,且不感知观察者自身状态、无法推断 ego 意图(可能与高层 command 冲突),无时间感知——需更强、有时序意识的 VLM。
- 定位为「起点」:把统一视频预测当作表征学习与策略学习的可扩展目标,蒸馏所学知识到更多下游任务是后续方向。
原始链接
- arXiv 论文(v2, 2024-08):https://arxiv.org/abs/2403.09630
- PDF:https://arxiv.org/pdf/2403.09630
- 代码 / 数据集工具链(DriveAGI,含 OpenDV):https://github.com/OpenDriveLab/DriveAGI
- OpenDV-YouTube 数据准备:https://github.com/OpenDriveLab/DriveAGI/tree/main/opendv
- 语言标注数据集(HF):https://huggingface.co/datasets/OpenDriveLab/OpenDV-YouTube-Language
- OpenDV 完整视频清单(YouTube license):https://docs.google.com/spreadsheets/d/1bHWWP_VXeEe5UzIG-QgKFBdH7mNlSC4GFSJkEhFnt2I
- 项目主页 / news:https://opendrivelab.com/
- HF papers 页:https://huggingface.co/papers/2403.09630
一手源存档(sources/)
- genad-generalized-predictive-model—github-readme — DriveAGI GitHub README 的 GenAD/OpenDV/Vista 段(fetched 2026-07-16)
- arXiv 全文 PDF(arXiv:2403.09630v2):仅在线引用,不入 git