📄 论文信息

  • 标题EMMA: End-to-End Multimodal Model for Autonomous Driving
  • 作者机构:Waymo LLC(Hwang, Xu, Lin, Hung, Ji, Choi, Huang, He, Covington, Sapp, Zhou, Guo, Anguelov, Tan)
  • arXiv2410.23262
  • 收录:TMLR(2025)
  • 博客waymo.com/blog/2024/10/introducing-emma
  • 一句话总结:基于 Gemini 多模态大模型,把感知、预测、规划、场景理解全部"翻译"成自然语言 VQA,用一个模型、一套语言空间统一所有驾驶任务。

EMMA 总览:以环视相机视频 + 高层导航指令 + 历史自车状态为输入,直接输出未来轨迹、感知目标与道路图元

📌 一个常见误解:EMMA 来自 Waymo(作者邮箱 @waymo.com),而非英国公司 Wayve。Wayve 的代表作是 LINGO/Ghost 系列的视觉-语言-动作模型,二者路线相近但完全独立,请勿混淆。


🤔 要解决什么问题?

自动驾驶系统过去几十年基本走分模块路线:感知 → 预测 → 规划 → 控制,每个模块单独训练、用规则串联。UniAD(CVPR 2023 最佳论文)之后的显式端到端路线虽然打通了梯度,但仍然要为每个任务设计专门的头、专门的表征(栅格图、矢量、轨迹…)。

这些方案共同的痛点是:

痛点表现后果
接口僵硬模块间靠专家设计的结构化接口通信难以适配新场景,长尾泛化差
任务割裂感知、预测、规划各训各的,头不共享任务间知识无法共享,互相正反哺无从谈起
缺乏常识训练数据只有驾驶日志,规模有限没有"世界知识",复杂推理与长尾场景弱
解释性差黑盒回归轨迹,出错不可读出了事故不知道模型当时"想"了什么

而近两年崛起的多模态大模型(MLLM)——如 Gemini、GPT-4V——恰恰擅长两件事:(1) 从互联网级数据中学到海量世界知识,远超任何驾驶日志;(2) 通过**链式思维(Chain-of-Thought)**做复杂多步推理。这两点正是传统驾驶系统最缺的。

EMMA 的灵魂拷问:既然 MLLM 这么强,为什么不让它成为驾驶系统的"一等公民"——把所有驾驶任务都塞进同一个语言模型里? 与之前"用 VLM 给驾驶系统打补丁"的思路不同,EMMA 是从底层就把 MLLM 当作整个系统的核心。


💡 核心思想:把驾驶变成 VQA

EMMA 的设计哲学可以一句话概括:

把所有非传感器输入和输出,统一表示成自然语言文本,让 Gemini 一次前向解决所有任务。

公式上,它直接复用 Gemini 的自回归形式:

  • 输入:文本提示 T + 图像/视频 V
  • 输出:文本 O = G(T, V),逐 token 生成,概率为 P(O|T,V) = Π P(oᵢ | o_{<i}, T, V)

关键挑战是:驾驶任务里有大量三维坐标(轨迹路点 (x,y)、3D 检测框的位置和尺寸),怎么塞进"文本"里?EMMA 给出两条路并做了取舍。

🔤 坐标如何文本化

表示方式做法代表工作EMMA 选择
直接文本化(9.01, 3.22) 直接写成数字字符串RT-2(机器人控制)
离散 token 化把空间划分网格,每个位置一个专用 tokenMotionLM(轨迹预测)

EMMA 选择直接文本化,理由很关键:只有所有任务共享同一套语言表征空间,才能最大化复用 Gemini 预训练权重里的世界知识。代价是坐标 token 数更多、序列更长、生成更慢,但作者认为统一性带来的收益远大于效率损失——这是 EMMA 整篇论文最根本的设计取舍。


⚙️ 方法细节

🛣️ 端到端轨迹规划

EMMA 的规划输入只有三样东西,刻意模仿人类开车:

  1. 环视相机视频 V:唯一的传感器输入,把多路相机拼成一张图或视频
  2. 高层导航指令 T_intent:“直行/左转/右转”,来自路由器(如 Google Maps),相当于手机导航给的下一动作
  3. 历史自车状态 T_ego:过去若干帧的 BEV 路点 (x,y),保证轨迹时序平滑

输出是未来 T_f 帧的 BEV 路点:

O_trajectory = G(T_intent, T_ego, V)

这套公式有三个非常优雅的特性:

特性含义工程意义
自监督监督信号只有自车未来位置无需人工标注,可大规模扩数据
纯相机不依赖 LiDAR/雷达传感器成本最低
无图(HD-map free)只要高层导航不依赖昂贵高精地图

这三点加起来,意味着 EMMA 的数据扩张成本极低——只要有行车记录和自车轨迹就能训,这是大模型"scaling"最看重的前提。

🧠 链式思维(CoT)推理

EMMA 最有意思的设计是在输出轨迹之前,先输出一段结构化 rationale(推理依据),从粗到细分四级(R1–R4):

层级内容示例
R1 场景描述天气、时段、路况、车道“晴天白天,四车道未分隔,两侧有泊车,前方有人行横道”
R2 关键目标影响驾驶的 agent + 精确 3D/BEV 坐标“行人 [9.01, 3.22],车辆 [11.58, 0.35]”
R3 元决策关键目标对自车的影响“前方行人正在横穿,需减速让行”
R4 行动具体驾驶动作“减速至约 15 km/h,保持当前车道”

这种 CoT 不仅提升了规划性能(论文实验证实),还把黑盒模型变成了可解释的系统——事故复盘时能看到模型"当时是怎么想的",这对监管和公众信任至关重要。R2 里要求模型输出精确坐标,相当于把"视觉定位"也融进了推理链,是一种巧妙的视觉锚定

🦾 EMMA 通用模型(Generalist)

如果只做规划,就浪费了 MLLM 的通用性。EMMA 进一步把多个任务混在一起共训练,用任务特定提示切换输出:

  • 运动规划:输出未来路点序列
  • 3D 目标检测:输出目标类别 + 3D 框坐标
  • 道路图估计:输出车道线、边界的折线坐标
  • 场景理解 QA:回答"前方有几个行人?路面是否湿滑?能见度如何?"

EMMA Generalist:单一模型用任务特定提示切换,覆盖规划、检测、道路图、场景问答

实验中最振奋人心的结论是:联合训练(co-training)让三个领域都涨点——规划、检测、道路图互相正反哺。例如,检测任务学到的目标定位知识,帮助规划更准确地避让;道路图任务学到的拓扑结构,帮助规划理解车道走向。这正是 EMMA 作为通用模型最大的价值:一个模型越练越强,而不是越拆越碎


📊 实验结果

任务数据集结果
运动规划nuScenesSOTA,超越此前所有方法
运动规划WOMD(Waymo Open Motion Dataset)有竞争力的结果
3D 检测(纯相机)WOD(Waymo Open Dataset)精度/召回超 SOTA
道路图估计内部数据高质量、可解释输出

此外,加入 CoT 推理更多内部训练数据能进一步提升规划质量,证明这条路线有清晰的扩展性(scaling)——数据越多、模型越强,符合大模型的规模法则。在长尾场景的可视化中,EMMA 还展现出对复杂路口、施工区域等罕见情况的推理能力。


🔧 工程实现与训练细节

基础模型的选择

EMMA 并不绑定某一个具体模型,论文里在 GeminiPaLI 两类多模态大模型上都做了验证,但主线结果来自 Gemini。选择 Gemini 的理由有三:(1) 原生支持图文交错输入,能把多路环视相机自然地喂进去;(2) 预训练阶段见过的海量图文数据带来强世界知识;(3) 自回归生成天然适合输出结构化的 rationale + 轨迹序列。这也意味着 EMMA 的能力上限很大程度上继承自底层基础模型——基础模型越强,EMMA 越强,这是"大模型驱动"范式的根本特征。

训练范式

EMMA 采用指令微调(instruction tuning)的方式在驾驶日志上训练:每条数据被构造成一个"提示-答案"对,提示里写明任务(如"请输出未来轨迹"),答案就是标注(轨迹路点 / 检测框 / 场景描述)。不同任务通过任务特定提示区分,共享同一套模型权重。通用模型(Generalist)则是把这些任务混合采样共训练,让一个模型同时掌握所有技能。

一个值得注意的取舍

文本化坐标带来统一性,但也带来数值精度的隐患:浮点数被切成若干 token(如 9.019 . 0 1),一旦某个 token 生成错误,整段坐标就会偏移。EMMA 通过限定小数位数统一的单位约定来缓解,但这本质上是把"连续数值回归"问题转成了"离散序列生成"问题——这也是后来 ReCogDrive、SparseDrive 转向扩散头或分类词表的动机之一。EMMA 的选择是"用精度换统一",在科研探索阶段是合理的。

输入输出的具体样例

以规划任务为例,EMMA 的输入提示形如:“给定左转指令,自车历史轨迹为 [(x₁,y₁), (x₂,y₂), …],请输出未来轨迹。“模型输出的则是一串文本化的坐标点。对于场景理解任务,提示则变成"描述当前场景的关键目标和风险”,输出是一段自然语言加坐标。这种统一的"提问-回答"格式让所有任务可以无缝混在一起训练,也让人能直接读懂模型的输出——这是传统黑盒回归模型做不到的。论文附录里提供了大量具体的 prompt 和 answer 样例,值得对照查看。


⚖️ 与 DriveVLM / ReCogDrive 对比

三者都是"把大模型搬上自动驾驶”,但路线截然不同:

维度EMMADriveVLMReCogDrive
底层模型Gemini(闭源 MLLM)开源 VLM开源 VLM + 扩散规划器
轨迹输出纯文本 token 化坐标小模型回归扩散模型去噪生成
架构单一大模型全包双系统(VLM 慢 + 小模型快)三段式(认知→扩散→RL)
统一性⭐⭐⭐⭐⭐ 完全统一⭐⭐⭐ 部分统一⭐⭐⭐ 解耦设计
推理速度❌ 慢(最大短板)✅ 双系统保实时✅ 扩散头加速 7.8×
强化学习❌ 纯模仿❌ 纯模仿✅ DiffGRPO

核心差异:EMMA 走的是**“激进统一”路线——宁可慢,也要一个模型全包;DriveVLM/ReCogDrive 走的是“务实解耦”**路线——把"想"和"开"分开,用专门的轻量头保证车端实时。EMMA 像"用 GPT-4 直接开车",后两者像"用 GPT-4 当副驾指挥一个小司机"。


⚠️ 优势与局限

✅ 优势

  • 极致统一:感知/预测/规划/理解共享一套语言空间、一套权重,任务间互相正反哺
  • 世界知识:继承 Gemini 的海量预训练知识,长尾场景推理潜力大
  • 可解释:CoT rationale 让决策过程可读、可审计,满足监管需求
  • 无图、纯相机、自监督:部署门槛低,数据扩张成本低

❌ 局限(作者自述,附录 A.5)

局限细节影响
推理慢Gemini 级大模型自回归生成,单帧开销大车端实时性存疑
3D 空间推理弱无法融合 LiDAR/雷达,纯相机深度估计难远距离/遮挡场景受限
闭环评估昂贵需要逼真的传感器仿真难以大规模做闭环测试
不可开源Gemini 闭源,社区只能看不能复现可复现性差

📝 个人思考

统一 vs 解耦的根本张力:EMMA 把"统一性"推到了极致,但代价是推理速度和可部署性。这其实折射出当前 VLA 领域的核心争论——到底要不要用一个端到端大模型全包? 我的看法是:EMMA 更像一份**“上限探索”的论文,它告诉我们"如果计算无限,统一模型能到什么高度";而 DriveVLM/ReCogDrive 这类解耦方案才是工程落地的现实路径**。两者并不矛盾,前者定上限,后者保下限。从产业规律看,最终量产方案很可能是"解耦架构 + 大模型蒸馏"的折中——用 EMMA 式统一模型做教师,蒸馏出轻量的解耦学生。

文本化坐标的隐忧:把 (9.01, 3.22) 直接当 token 输出,虽然换来了统一性,但数值精度和 token 效率都是硬伤——一个小数点错位就是一米误差,而且坐标越长、序列越慢。这恰恰是 ReCogDrive 用扩散头、SparseDrive 用分类词表替代的根本原因。EMMA 的选择适合科研上限验证,未必适合车端量产。

对我们 Flow-GRPO 工作的启示:EMMA 验证了"通用知识 + 驾驶任务"能互相增益,但它没有用强化学习——纯靠模仿专家轨迹,上限被专家数据锁死。如果把 EMMA 的 CoT 推理和 DiffGRPO/Flow-GRPO 这类 RL 优化结合,用奖励信号去突破模仿学习天花板,会是非常有想象力的方向。EMMA 给出了"认知"这一半,缺的是"持续进化"这一半。

开源问题是硬伤:Gemini 闭源意味着 EMMA 目前是"Waymo 的内部演示"。社区真正能复现和迭代的是基于开源 VLM(Qwen-VL、InternVL 等)的同类工作。未来谁能用开源模型逼近 EMMA 的统一性,谁就掌握话语权——这也是为什么 ReCogDrive、SparseDrive-V2 等开源工作如此重要。


📖 论文精读系列。EMMA 是大模型时代的"激进统一派"代表作,建议和 UniAD、DriveVLM、ReCogDrive 放在一起对比阅读,能看清端到端驾驶在大模型时代的两条主线。