【VLA与模仿学习】VADv2论文精读
一句话定位
在 VAD 的矢量场景表示之上,把「MLP 直接回归一条未来轨迹」升级为 概率规划:先用最远轨迹采样建约 4096 条 规划词表,再对每条候选打场景条件概率 p(a∣o)p(a|o)p(a∣o) 并采样控车。仅用相机,在 CARLA Town05 / Bench2Drive 等闭环基准上大幅领先。
本页概念卡
- 任务/方法:VADv2 · 概率规划 · 规划词表 · 场景 Token · 冲突损失
- 对照:VAD · UniAD · SparseDrive · 端到端自动驾驶
- 表示与评测:BEVFormer · NAVSIM · PDMS · CARLA DS/RC/IS · 开环 L2/碰撞
1. 背景概念(给新人)
- 端到端自动驾驶(End-to-End Autonomous Driving):从相机(有时加激光雷达)直接到方向盘/油门,中间感知-预测-规划尽量在一个可学习流水线里。见 端到端自动驾驶。
- 矢量化场景(Vectorized Scene):不用稠密栅格地图,而用折线表示车道、用轨迹向量表示他车未来——这是 VAD 的核心。见 VAD。
- 确定性规划 vs 概率规划:旧法假设「场景 → 唯一正确轨迹」并回归;现实里跟车可超可跟、会车可让可抢,可行解常是多峰/非凸。概率规划学 p(a∣o)p(a|o)p(a∣o),再采样。
- 闭环评测:仿真里真开;主指标 Driving Score (DS)。相对 nuScenes 开环 L2,更能暴露「折中轨迹」的危险。
生活类比
确定性规划像只背一种标准过路口方式;概率规划像知道「让」和「抢」都可能合理,按当前车流给每种开法打分,再选一条执行。
2. 论文在干什么
- 问题:大规模人类示范里动作高度随机;直接回归会因目标模糊、非凸可行域而学出「夹在两峰中间」的不安全轨迹。
- 设定:输入环视图像序列(流式);输出未来约 3s(T=6T=6T=6 路点,间隔 0.5s)轨迹,PID 转控制量;主战场 CARLA Town05,并扩到 Bench2Drive、NAVSIM、自建 3DGS 闭环。
- 贡献(论文原文三点,白话版):
- 提出概率规划范式与概率场建模
- 做出 VADv2:场景 token × 规划 token 交互 → 动作分布 → 采样控车
- 多基准 SOTA,且可无规则 wrapper 较稳运行
3. 核心创新点
-
概率规划替代确定性回归
新在:显式建模场景条件随机过程 p(a∣o)p(a|o)p(a∣o),能表达多模态、非凸可行域;消融显示 deterministic 头在高密度交通下掉分更狠。 -
规划词表 + 整段轨迹 token
新在:用 FTS 从示范采样约 4096 条完整轨迹作词表(非逐步动作),自然满足运动学、一次采样无 rollout 累积误差;灵感类比 LLM 词表。 -
概率场打分(类 NeRF 的连续场直觉)
新在:对词表中每条 aaa 做位置编码 → planning token,与场景 token 做 Transformer(aaa 为 query),再加导航/自车状态,sigmoid 出概率——本质是「对整个动作空间上的场做查询」。 -
分布损失 + 冲突损失双监督
新在:一边用专家在词表上的匹配频率做交叉熵式分布对齐,一边用 冲突损失 压低撞车/出路候选;继承 VAD「训练期安全约束」思想但适配离散候选。
4.1 场景编码器
- BEV 编码器(如 BEVFormer 路线)把多相机特征变到俯视图。
- 产出 场景 Token EsceneE_{\rm scene}Escene:
- Map tokens(MapTRv2 式矢量地图)
- Agent tokens(检测 + 多模态运动)
- Traffic element tokens(灯/停车牌,CARLA)
- Image tokens(前视稠密特征补充)
- 导航 EnaviE_{\rm navi}Enavi、自车状态 EstateE_{\rm state}Estate 经 MLP 嵌入。条件写作:
o=(Escene, Enavi, Estate),a=(x1,y1,…,xT,yT).o=(E_{\rm scene},\ E_{\rm navi},\ E_{\rm state}),\quad a=(x_1,y_1,\ldots,x_T,y_T).o=(Escene, Enavi, Estate),a=(x1,y1,…,xT,yT).
4.2 规划词表构造
- 示范轨迹集合 S\mathcal{S}S → Algorithm 1 最远轨迹采样:反复选与当前词表「端点距离」最大的轨迹,直到大小 NNN(默认 4096)。
- 每条词表条目编码:
E(a)=(Γ(xi),Γ(yi))i=1T,Γ 为正弦位置编码.E(a)=\bigl(\Gamma(x_i),\Gamma(y_i)\bigr)_{i=1}^{T},\quad \Gamma\text{ 为正弦位置编码}.E(a)=(Γ(xi),Γ(yi))i=1T,Γ 为正弦位置编码.
4.3 概率场与分布
p(a)=σ(MLP(ϕ(E(a),Escene)+Enavi+Estate))p(a)=\sigma\bigl(\mathrm{MLP}(\phi(E(a),E_{\rm scene})+E_{\rm navi}+E_{\rm state})\bigr)p(a)=σ(MLP(ϕ(E(a),Escene)+Enavi+Estate))
其中 ϕ\phiϕ 为级联 Transformer decoder:E(a)E(a)E(a) 作 query,EsceneE_{\rm scene}Escene 作 key/value。
4.4 训练损失
L=Ldistribution+Lconflict+Ltoken\mathcal{L}=\mathcal{L}_{\rm distribution}+\mathcal{L}_{\rm conflict}+\mathcal{L}_{\rm token}L=Ldistribution+Lconflict+Ltoken
- 分布损失:每帧用 L2 最近邻把专家轨迹匹配到词表一条,标 1,其余 0;全局频率作 pdatap_{\rm data}pdata;优化等价于加权交叉熵(KL 到经验分布)。
- 冲突损失:与他车 GT 未来或路沿冲突的候选压概率。
- Token 损失:地图 / agent / 交通元素各自检测与预测监督(MapTRv2、VAD 运动头、灯与停车牌 focal 等)。
4.5 推理
- 仿真默认:取概率最高动作 → PID → steer/throttle/brake。
- 实车建议:Top-K 提案 + 规则过滤 + 优化精修;概率当置信度,可切换规则/学习规划。
5. 整体框架(Mermaid)
主结果(记住这几个数)
| 基准 | 指标 | VADv2 | 对照印象 |
|---|---|---|---|
| CARLA Town05 Long | DS / RC / IS | 85.1 / 98.4 / 0.87 | 超 DriveMLM(C+L)的 76.1 DS;仅相机 |
| Bench2Drive | DS | 76.15 | 高于 ETA 74.33 等 |
| NAVSIM navtest | PDMS | 89.3 | 高于 DiffusionDrive 88.1 等 |
| 自建 3DGS 闭环 | Collision Ratio | 0.270 | TransFuser 0.320;VAD 0.335 |
关键消融
- 无分布损失:规划几乎崩(开环 L2 飙到数米级)。
- 无冲突损失 / 缺某类场景 token:L2 与碰撞变差。
- 词表越大越好:256→4096,误差与碰撞单调改善。
- 数据量:3e5 → 3e6 clips,碰撞率继续降。
- 概率 vs 确定性:开环 L2 接近;闭环 Town05 DS 85.1 vs 74.6——差距主要在闭环。
- 高密度交通:概率规划更稳(Table 8)。
局限(作者自述)
- 仿真与 3DGS 环境里他车行为仍偏朴素、真实感不足,可能抬高分数或限制上限。
- 词表引入一定算力(论文报约 0.40B 参数、125ms @4090,与 VAD 同级 backbone 比略慢)。
7. 要点总结
- VADv2 = VAD 矢量场景 + 概率规划词表,不是换个 backbone 的小改版。
- 确定性回归怕「多峰折中」;闭环 DS 才是打脸指标。
- 动作 token = 整段轨迹,不是单步油门。
- 训练三件套:分布对齐 + 冲突压分 + 场景 token 监督。
- 推理可纯端到端,也可 Top-K + 规则/优化——分布天然好接后处理。
8. 开放问题
- 实车部署时 Top-K + 规则 wrapper 的具体规则集与切换阈值?
- 词表从 CARLA 迁到真实城市,FTS 是否要按城市场景重采样?
- 与 DiffusionDrive / GoalFlow 等「生成式多模态规划」在延迟-质量曲线上如何取舍?
相关
- https://arxiv.org/abs/2402.13243
- https://github.com/hustvl/VAD
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)