引言

几十年来,自动驾驶的“圣杯”一直是造出一辆不仅能从 A 点导航到 B 点,还能真正理解世界并与乘客沟通的车辆。我们已经看到了大语言模型 (LLM) 在推理复杂话题方面的惊人进步,以及自动驾驶系统在城市街道导航方面的独立进展。然而,将这两个领域融合在一起却被证明是困难重重。

目前大多尝试在汽车中结合视觉和语言的方法,往往会导致一种“后座司机”的局面: 模型可以回答有关场景的问题 (视觉问答,即 VQA) ,但它的回答往往与其实际驾驶决策完全脱节。一个模型可能正确地回答“我看到了红灯”,却同时输出加速的指令。这种脱节就是语言-动作对齐 (language-action alignment) 的失败。

SimLingo 应运而生,这是由 Wayve 和图宾根大学的研究人员提出的一种新型视觉-语言-动作 (VLA) 模型。SimLingo 不仅仅是一个旁边粘着个聊天机器人的驾驶模型。它是一个统一的系统,旨在同时处理闭环驾驶、视觉-语言理解,以及至关重要的——语言-动作对齐。

SimLingo 概览,展示了驾驶模式、场景理解和做梦模式。

如图 1 所示,SimLingo 在多种模式下运行,包括一种新颖的“做梦模式 (Dreaming Mode) ”。在这种模式下,汽车会模拟对指令 (甚至是危险指令) 的反应,以确保它真正理解语言与物理动作之间的关系。在这篇文章中,我们将深入探讨 SimLingo 如何在仅使用摄像头 (无需昂贵的激光雷达传感器) 的情况下实现最先进的性能,以及它如何引入“动作梦境 (Action Dreaming) ”的概念来解决对齐问题。

背景: 言语与行动之间的鸿沟

要真正欣赏 SimLingo,我们需要先了解端到端 (E2E) 自动驾驶的现状。

模仿学习的主导地位

最先进的驾驶模型通常使用模仿学习 (IL) 。它们接收传感器输入 (摄像头、激光雷达) 并试图模仿人类专家或基于规则的专家算法的轨迹。虽然很成功,但这些模型通常是“黑盒”。你给它们像素,它们输出转向和油门指令。它们无法解释为什么停车,也无法接受像“跟着那辆银色 SUV”这样复杂的自然语言指令。

视觉语言模型 (VLM) 的兴起

最近,研究人员开始将 VLM (如 GPT-4V 或 LLaVA) 集成到机器人技术中。在驾驶领域,这通常以视觉问答 (VQA) 的形式出现。你可能会问车子,“变道安全吗?”,模型会分析图像并给出文本回复。

对齐问题

现有方法的关键缺陷在于,“说话”的大脑部分和“驾驶”的大脑部分往往是松散耦合的。模型可能因为在文本说明中看到过而学会说“为行人停车”,但其运动规划头 (基于不同信号训练) 可能实际上并没有将行人识别为障碍物。

SimLingo 针对这一问题提出: 机器人技术中真正的语言理解要求动作必须随语言而改变。 要证明一辆车理解“停止”,它不应该只是“我会停止”;它必须生成一个停止的轨迹。

SimLingo 方法

研究人员提出了一种统一的架构,可以同时处理三个不同的任务:

  1. 闭环驾驶: 自主导航路线。
  2. 视觉-语言理解: 回答问题并解释决策。
  3. 语言-动作对齐: 通过称为“动作梦境 (Action Dreaming) ”的新任务执行特定指令。

让我们分解一下使其成为可能的架构和创新。

架构概览

SimLingo 建立在 InternVL-2 架构之上,这是一个强大的开源视觉语言模型。它使用了一个 10 亿参数的模型 (InternVL2-1B) ,在性能和驾驶所需的推理速度之间取得了平衡。

SimLingo 架构图,展示了图像切片、Token 交错和解耦的输出头。

如图 2 所示,该架构由三个主要阶段组成: 编码、融合 (交错) 和解码 (LLM 处理) 。

1. 高分辨率图像编码

自动驾驶中的一个微妙挑战是分辨率。大型十字路口的交通信号灯在标准图像中可能只占几个像素。大多数预训练的 VLM 将图像调整为 \(224 \times 224\) 或 \(336 \times 336\),这会模糊掉这些关键细节。

为了解决这个问题,SimLingo 将输入图像 \(I\) 分割成切片。具体来说,它将高分辨率摄像头图像分割成 \(N_I\) 个大小为 \(448 \times 448\) 的切片。每个切片都使用视觉 Transformer (ViT) 独立编码。

提取视觉特征 \(e_I\) 的数学表示为:

使用切片和像素去混洗提取视觉特征的公式。

这里,\(\rho\) 代表“像素去混洗 (pixel unshuffle) ”操作,它对特征进行下采样以保持 LLM 的 Token 数量可控,确保模型在不导致计算成本爆炸的情况下看到精细的细节。

2. 多模态 Token 交错

图像编码后,必须与其他输入结合:

  • 导航条件: GPS 目标点 (去哪里) 或高级语言命令 (例如,“左转”) 。
  • 系统提示: 告诉模型执行什么任务的指令 (例如,“预测路点”或“解释你在做什么”) 。

这些输入被处理成嵌入 (\(e_{nav}\), \(e_L\)) 并交错成单个序列,以便大语言模型消化:

交错语言、图像和导航 Token 的公式。

3. 解耦的动作输出

这是保持驾驶稳定性的一个关键创新。标准的驾驶模型通常输出一系列路点,代表汽车在特定时间戳的未来位置。然而,混合“在哪里” (几何) 和“何时在那里” (速度) 会导致转向草率,尤其是在汽车需要减速或急转弯时。

SimLingo 将这些预测解耦。LLM 在单次前向传递中预测两组不同的输出:

  1. 几何路径路点 (\(p\)) : 每隔 1 米的一系列点。这严格地告诉汽车在哪里转向,与时间无关。
  2. 时间速度路点 (\(w\)) : 每隔 0.25 秒预测的坐标。这告诉汽车沿着该路径移动的速度

最终输出生成建模为:

通过 LLM 生成语言和动作输出的公式。

通过使用单独的查询 Token (\(q_p\) 和 \(q_w\)) 以及用于转向和加速的独立 PID 控制器,模型实现了更平滑的控制。

核心创新: 动作梦境 (Action Dreaming)

这篇论文最迷人的贡献可能就是动作梦境的概念。

训练汽车遵循语言指令很难,因为真实的驾驶数据很无聊。你很少能找到人类被指示“开上人行道”或“撞上那个施工锥筒”的专家驾驶数据。然而,要测试一个模型是否真正理解语言,它需要能够将任何指令映射到相应的物理动作。

如果你只在“安全”指令 (如“直行”) 上进行训练,模型可能会忽略文本,只是根据视觉特征 (道路) 直行。这被称为“因果混淆 (causal confusion) ”。

“梦境”如何运作

研究人员使用“轨道上的世界 (world-on-rails) ”模拟创建了一个合成数据集。他们获取一个记录下来的驾驶场景,并数学模拟不同的未来:

  • 如果汽车现在加速会怎样?
  • 如果它变道进入逆行交通会怎样?
  • 如果它急转弯撞上那个物体会怎样?

然后,他们将这些模拟轨迹与语言指令 (例如,“现在加速”或“撞击物体”) 配对。在训练期间,模型接收图像和指令,并且必须预测相应的轨迹——即使它是危险的。

注意: 这种模式仅用于训练或测试理解能力。在现实世界中,“梦境标志 (Dreamer flag) ”会被停用,模型的任务是拒绝不安全的指令。

姿态做梦的定性结果,展示模型根据各种指令调整路径和速度。

图 4 展示了这种能力。在场景 (e) 中,模型被指示“撞击物体”,它正确地规划了一条朝向障碍物的轨迹。在场景 (g) 中,指示为“开快点”,蓝色速度曲线飙升。这证明模型不仅仅是在看路;它还在听用户的指令。

实验与结果

研究人员在两个主要基准上评估了 SimLingo: 官方 CARLA 排行榜 2.0Bench2Drive 基准测试。

驾驶性能

CARLA 排行榜 2.0 的结果令人印象深刻。这个基准测试以其难度著称,在各种天气、光照和交通场景中测试车辆。

排行榜 2.0 结果,比较 SimLingo-BASE 与其他方法。

如表 1 所示,该模型的基础版本 (SimLingo-BASE) 实现了 6.256.87 的驾驶得分 (DS) 。这看起来可能是一个很小的数字,但在排行榜 2.0 的背景下,这是一个巨大的飞跃。它的表现比之前的最先进水平 (CaRINA hybrid) 高出约 4 倍,重要的是,它仅使用摄像头就做到了这一点。大多数顶级竞争对手都需要激光雷达和雷达地图。

本地 Bench2Drive 基准测试的结果进一步证实了这种优势:

Bench2Drive 上的闭环结果,比较 SimLingo 与 TCP、UniAD 等。

在这里,SimLingo 获得了 85.07 的驾驶得分,大大优于以前的方法,如 TCP (40.70) 和 UniAD (45.81)。该表强调,添加语言能力 (VQA 和梦境任务) 并不会降低纯驾驶性能——实现了“两全其美”的结果。

语言能力

模型是真的理解场景,还是仅仅是一个好的驾驶员?

VQA 和解说的定性结果,展示了准确的场景理解。

图 3 显示了模型回答视觉问答 (VQA) 提示的能力。在上面的例子中,模型正确识别出它需要向左移动以避开自行车。在下面,它正确分析了交通信号灯场景。

展示 DriveLM 和解说基准测试语言能力得分的表格。

表 3 对此进行了量化。SimLingo 在 DriveLM-VQA 基准测试中获得了 58.48 的 GPT-Score (由 GPT-4 对答案进行评分的指标) ,几乎是基础 InternVL2-1B 模型分数的两倍。这表明在特定驾驶数据上进行微调可以将通用 VLM 转变为领域专家。

“梦境”有效吗?

为了验证“动作梦境”的对齐效果,研究人员测试了模型遵循偏离正常驾驶行为指令的能力。

展示动作梦境指令成功率的表格。

表 5 揭示了梦境数据集的影响。如果没有它 (w/o Dreamdata) ,模型无法遵循像“慢点” (22% 成功率) 或“变道” (21% 成功率) 这样的指令,因为它只会默认执行标准驾驶行为。经过梦境训练后,成功率飙升至 80% 以上

梦境模式下变道指令的定性示例。

我们可以在图 11 中直观地看到这一点。模型可以解释复杂的指令,如“从 1 米处开始向右过渡一条车道”,并生成执行该操作的精确路径路点 (红点) 。

消融研究: 什么最重要?

研究人员进行了消融研究,以查看哪些组件对成功的贡献最大。

消融表,展示输出表示和视觉编码器的影响。

表 9 强调了两个关键发现:

  1. 输出表示 (列 a) : 与仅使用路点相比,使用解耦的“路点 + 路径”表示 (分离速度和转向) 极大地减少了与静态布局物体的碰撞。碰撞率从 0.68 降至 0.0
  2. 视觉编码器 (列 b) : 预训练至关重要。从头开始训练视觉编码器会导致失败 (0.45 DS) ,而使用 CLIP 预训练的编码器则产生最先进的结果 (6.87 DS) 。

导航 vs. 语言命令

一个有趣的附加实验是比较标准 GPS 导航点与自然语言命令 (例如,简单地告诉汽车“右转”) 。

比较 GPS 目标点与语言命令条件的表格。

表 4 显示,无论是通过精确的 GPS 点引导 (85.07 DS) 还是通过高级语言命令引导 (86.08 DS) ,SimLingo 的表现几乎相同。这表明我们正迈向一个未来,我们可以简单地通过与汽车交谈来指路,而无需输入坐标。

结论

SimLingo 代表了大语言模型与自动驾驶融合的重要一步。通过引入动作梦境 , 研究人员找到了一种弥合“看”与“做”之间鸿沟的方法,确保模型的语言理解建立在物理动作之上。

主要收获:

  1. 纯视觉 SOTA: SimLingo 在无需昂贵激光雷达的情况下,在 CARLA 排行榜 2.0 上树立了新标准。
  2. 通过梦境实现对齐: 模拟替代未来使模型能够学习超越模仿安全专家驾驶的指令跟随能力。
  3. 统一模型: 单个架构既可以驾驶,也可以解释其动作并回答问题,而无需牺牲性能。

虽然目前的工作是基于模拟的,但其对现实世界机器人的影响是深远的。如果机器人能够基于语言学会“梦见”动作,它们将变得更安全、更可解释,并且更容易被人类控制。未来的工作可能会集中在将这些轻量级 VLM 部署到实车上,让我们离科幻小说中承诺的智能副驾驶更近一步。