超越单一路径: BranchOut 如何彻底改变多模态自动驾驶
想象一下,你正行驶在一条繁忙的街道上,看到一辆送货卡车停在路肩上。作为一名人类驾驶员,你会怎么做?是稍微向旁边的车道偏一点?还是减速等待?亦或是完全变道超车?
答案很可能是“视情况而定”,而且关键在于, 所有这些选择可能都是合理且安全的。
这种有效选择的多样性被称为多模态性 (Multimodality) 。 然而,长期以来,自动驾驶 (AV) 模型的训练和评估方式仿佛只有一个标准答案: 即训练数据中人类驾驶员实际走的具体路径。这导致了僵化、机械的驾驶方式,无法捕捉现实世界交互中的细微差别。
在这篇文章中,我们将深入探讨波士顿大学的一篇新研究论文 BranchOut 。 研究人员引入了一种新颖的端到端规划器,结合了扩散模型 (Diffusion Models) 和高斯混合模型 (GMMs) ,以捕捉多样化、类人的行为。此外,他们还揭示了我们目前给自动驾驶评分的一个缺陷,并提出了一个新的“人在回路 (Human-in-the-Loop) ”基准来解决这个问题。
问题所在: “单一未来”谬误
标准的运动规划通常是通过观察当前场景——摄像头、激光雷达、地图——来预测汽车应该去哪里。模型通常在像 nuScenes 这样的数据集上进行训练,其中每个场景都只有一条真值轨迹 (即数据采集车实际行驶的路径) 。
当我们仅根据模型与那一条轨迹的匹配程度来评估模型时,问题就出现了。如果自动驾驶汽车规划了一次安全的变道,但原来的人类驾驶员保持在车道内,自动驾驶汽车就会因“高误差”而受到惩罚。
这鼓励模型通过平均所有可能性来“求稳”,通常导致模式坍塌 (mode collapse) 。 模型不再选择一种独特的机动 (向左走或向右走) ,而是可能预测一条正中间的路径——这可能会直接撞上障碍物。

如上图 1 所示,像绕过停放车辆或通过十字路口这样的现实场景,允许许多截然不同且安全的路径。研究人员认为,要构建真正类人的自动驾驶汽车,我们必须对这种可能性的分布进行建模,而不仅仅是单一路径。
解决方案: BranchOut
为了解决这个问题,作者提出了 BranchOut 。 这是一个端到端规划器,意味着它接收原始传感器数据并直接输出驾驶轨迹。
BranchOut 的独特之处在于它处理不确定性和多样性的方式。它利用了扩散模型 (与 Midjourney 等图像生成器背后的技术相同) 的生成能力,但使用高斯混合模型 (GMMs) 来构建输出结构,以确保预测是独特且合理的。
架构
让我们分解图 2 中展示的系统架构。

该流程包含三个主要阶段:
- 场景编码器 (\(\mathcal{F}\)): 模型将多视角摄像头图像和高清 (HD) 地图作为输入。它处理这些数据以创建世界的丰富特征表示。
- 场景感知去噪器 (\(\mathcal{D}\)): 这是一个基于 Transformer 的模块。它接收带噪声的轨迹估计,并根据场景上下文对其进行“去噪”。
- 分支 GMM 头 (\(\mathcal{G}\)): 模型不是输出单一路径,而是输出高斯混合模型的参数,提供可能轨迹的分布。
让我们看看这些组件背后的数学和机制。
1. 扩散过程
核心生成引擎是一个扩散模型。在训练期间,系统获取真值轨迹 (\(\mathbf{Y}_{\text{ego}}\)) 并加入噪声对其进行破坏。噪声量由时间步 \(t\) 决定。

这里,\(\mathbf{X}_{\text{ego}}^{(t)}\) 是在时间步 \(t\) 的噪声轨迹。\(\alpha(t)\) 控制信噪比。模型的工作是逆转这一过程: 从纯噪声开始,它尝试重构干净的轨迹。
2. 场景感知去噪
扩散模型需要上下文。它不能凭空臆造路径;它需要看路和其他车辆。BranchOut 使用一个Transformer , 通过多头交叉注意力 (MHCA) 整合场景特征。

在这个公式中:
- \(\mathbf{P}\) 是轨迹嵌入。
- \(\mathbf{P}_{\text{agent}}\) 和 \(\mathbf{P}_{\text{map}}\) 代表来自其他车辆和道路地图的特征。
- MHCA 允许模型在决定如何优化轨迹时“关注 (attend) ”场景的相关部分 (例如,看着你前面的车) 。
3. 分支 GMM 头
这是关键创新点。标准的扩散模型采样速度可能很慢,如果不加以仔细引导,仍可能遭遇模式坍塌。BranchOut 在去噪过程的末端附加了一个 GMM 头 (\(\mathcal{G}\))。
模型以高级指令 \(c\) (例如,左转、直行、右转) 为条件。对于选定的指令,网络预测 \(K\) 个不同的高斯分量。

对于每个指令,模型输出:
- \(\mu_k^m\): 第 \(k\) 个模式的均值轨迹 。
- \(\pi_k^m\): 该模式的概率权重 。
这种混合方法使 BranchOut 能够显式地捕捉驾驶的“多模态”性质。它不仅仅是说“去这里”;它是说“这里有 \(K\) 条可能的路径,这就是我对每一条路径的信心程度。”
训练目标
该模型使用复合损失函数进行训练:

- \(\mathcal{L}_{\text{plan}}\): 标准重构损失 (让路径看起来像真值) 。
- \(\mathcal{L}_{\text{NLL}}\): 负对数似然。这最大化了预测分布下真值路径的概率。
- \(\mathcal{L}_{\text{constraints}}\): 安全约束 (比如不撞路肩) 。
新挑战: 验证多模态性
构建多模态模型只是成功了一半。你如何证明它有效?
如果你在标准基准 (如 nuScenes) 上评估 BranchOut,你会遇到前面提到的“单一未来”问题。如果 BranchOut 预测了一个合理的超车动作,但数据集显示汽车刹车了,标准指标会判定模型失败。
为了解决这个问题,研究人员创建了一个人在回路 (HITL) 仿真基准 。
模拟现实
他们使用了 HUGSIM , 这是一个利用真实世界驾驶日志创建的照片级真实感模拟器。然后,他们邀请了 40 名人类参与者使用驾驶模拟器设置来“重驾”nuScenes 数据集中的场景。
至关重要的是,参与者多次驾驶同一场景。这产生了一个数据集,其中单个场景可能拥有 15 条不同的、有效的真值轨迹 。

图 3 说明了区别。左图显示了原始数据集中稀疏的单一路径。右图显示了在模拟器中从人类驾驶员那里收集到的密集、多样的“扇形”轨迹。这种密度使得对多模态规划器的评估更加公平。
模拟是否逼真?
你可能会问: “在模拟器中驾驶真的和开真车一样吗?”作者通过将模拟轨迹与真实世界的日志进行比较来验证这一点。

如表 1 所示,模拟轨迹与真实日志相比,实现了非常低的 L2 误差 (0.79m)。这意味着在人类在模拟器中采取的各种路径中,通常至少有一条与真实驾驶员的操作非常接近。这验证了模拟作为现实的可靠替代方案。
实验结果
随着模型的建立和新基准的准备就绪,研究人员将 BranchOut 与 UniAD、VAD 和 DiffusionDrive 等最先进的规划器进行了比较。
1. 开环评估 (轨迹准确性)
首先,他们查看了标准准确性指标。
- L2 误差: 预测路径与实际路径之间的标准距离。
- 弗雷歇距离 (Fréchet Distance) : 一种更适合比较路径分布 (多模态性) 的指标。
- NLL: 负对数似然 (模型解释数据的程度) 。

表 2 揭示了一个有趣的见解。当使用标准单模态指标 (仅与一个真值比较) 时,像 UniAD 这样的旧模型看起来更优越。然而,当切换到多模态评估 (与 15 条人类轨迹比较) 时,排行榜反转了。
BranchOut 在弗雷歇距离和 NLL 方面占据主导地位。 这证明虽然其他模型可能过度拟合数据集中的特定路径,但 BranchOut 成功捕捉了更广泛的安全、类人行为。
2. 闭环评估 (驾驶表现)
开环指标很有用,但真正的考验是让模型在模拟器中驾驶 (闭环) 。它会撞车吗?它能到达目的地吗?
研究人员使用了 HUGSIM 驾驶评分 (HD-Score) , 该评分结合了安全性、舒适性和进度。

表 3 显示 BranchOut 实现了最高的路线完成度 (\(R_c\)) 和 HD-Score 。 它的表现明显优于 UniAD 和 DiffusionDrive。作者将其归因于该模型能够规划多种潜在未来的能力,这使其比确定性规划器能更好地适应动态智能体和复杂的道路布局。
结论与要点
BranchOut 这篇论文提出了一个令人信服的观点: 自动驾驶的未来在于承认不确定性。通过强迫模型预测单一路径,我们一直在人为地限制它们的智能。
以下是给学生和从业者的关键要点:
- 架构很重要: 将 扩散模型 的生成能力与 GMMs 的结构化输出相结合,创造了一个既具有表现力又精确的规划器。
- 评估很难: 标准指标 (如针对单一真值的 L2 误差) 可能会产生误导。即使是安全的,它们也会惩罚创造性和多样性。
- 通过模拟进行数据增强: 我们无法轻易收集到 15 辆真车同时在同一条街上行驶的数据。然而, 人在回路模拟提供了一种可扩展的方式来构建训练和测试下一代自动驾驶汽车所需的多样化数据集。
BranchOut 让我们离自动驾驶汽车更近了一步,它们不再像沿着轨道行驶的机器人,而是像人类一样在复杂、不断变化的世界中航行。
](https://deep-paper.org/en/paper/55_branchout_capturing_realist-2614/images/cover.png)