点击下方
卡片
,关注“
自动驾驶之心
”公众号
>>
点击进入→
自动驾驶之心
『
大模型
』
技术交流群
本文只做学术分享,如有侵权,联系删文
论文:https://arxiv.org/pdf/2412.14446
0. 摘要
人类驾驶员依赖常识推理来应对复杂多变的真实世界场景。现有的端到端(E2E)自动驾驶(AD)模型通常被优化以模仿数据中观察到的驾驶模式,而没有捕捉到背后的推理过程。这一限制制约了它们处理具有挑战性的驾驶场景的能力。为了弥补这一差距,我们提出了VLM-AD,这是一种利用视觉-语言模型(VLMs)作为教师来增强训练的方法,通过提供额外的监督,结合非结构化推理信息和结构化动作标签。这种监督增强了模型学习更丰富的特征表示的能力,这些特征表示能够捕捉驾驶模式背后的理由。重要的是,我们的方法在推理时不需要VLM,使其适合实时部署。当与最先进的方法结合时,VLM-AD在nuScenes数据集上实现了规划精度的显著提高和碰撞率的降低。
1. 创新点
1.1 知识蒸馏与特征表示学习
VLM-AD在知识蒸馏与特征表示学习方面做出了显著的创新与贡献。通过利用视觉语言模型(VLM)作为教师模型,VLM-AD能够将VLM中蕴含的丰富推理知识和语义信息有效地传递给端到端自动驾驶模型,从而显著提升后者的特征表示能力和决策性能。
-
知识蒸馏机制
:VLM-AD采用了独特的知识蒸馏方法,将VLM生成的自由形式推理注释和结构化动作注释作为额外的监督信号,融入到端到端自动驾驶模型的训练过程中。这种蒸馏机制使得自动驾驶模型不仅能够学习到传统的轨迹监督信息,还能够吸收VLM所提供的深层次推理知识,从而更好地理解驾驶场景中的各种因素及其相互关系。例如,在nuScenes数据集上的实验表明,经过VLM-AD训练的模型在面对复杂场景时,能够更准确地识别潜在的风险和机会,做出更合理的决策,这正是知识蒸馏效果的直接体现。
-
特征表示学习
:借助VLM的指导,VLM-AD显著增强了端到端自动驾驶模型的特征表示学习能力。模型能够学习到更丰富、更细致的特征表示,这些特征不仅涵盖了视觉信息,还融合了语言知识和推理逻辑。具体来说,VLM-AD通过文本特征对齐和结构动作分类等辅助头设计,使得自动驾驶模型的内部特征表示与VLM提供的文本特征和动作标签进行有效对齐和匹配。这种对齐过程促使模型关注那些对驾驶决策至关重要的特征,从而提高了模型对驾驶环境的感知和理解能力。实验结果显示,经过VLM-AD训练的模型在特征空间中能够更清晰地区分不同的驾驶场景和动作,为准确的决策提供了坚实的基础。
1.2 实时部署的可行性
VLM-AD在保证模型性能提升的同时,充分考虑了实时部署的可行性,这是其另一大创新与贡献所在。与一些依赖大型基础模型进行实时推理的方法不同,VLM-AD巧妙地将VLM的推理过程仅限于训练阶段,而在推理阶段则完全不依赖VLM,从而显著降低了推理成本和延迟,使得模型能够满足实时自动驾驶应用的要求。
-
推理效率优化
:在VLM-AD的设计中,通过一系列优化措施,如多头交叉注意力机制的高效实现、特征归一化策略的合理应用等,提高了模型在推理阶段的计算效率。这些优化措施使得模型能够在有限的计算资源下,快速地处理输入数据并生成准确的决策输出。例如,在实际的自动驾驶场景中,VLM-AD能够在毫秒级的时间内完成对复杂交通环境的感知、理解和决策规划,为车辆的实时控制提供了有力支持。
-
硬件兼容性与资源利用
:VLM-AD还考虑到了与现有自动驾驶硬件平台的兼容性。由于在推理阶段不依赖VLM,模型可以更容易地部署在各种计算资源受限的车辆环境中,如仅配备中等性能GPU或专用自动驾驶芯片的车辆。此外,VLM-AD对计算资源的高效利用也降低了系统的功耗和成本,提高了自动驾驶系统的整体性价比。这使得VLM-AD不仅在技术上具有创新性,而且在实际应用中具有很高的可行性和推广价值,为自动驾驶技术的大规模商业化应用奠定了基础。
2. VLM-AD方法概述
2.1 VLM作为教师模型的角色
VLM-AD方法中,视觉语言模型(VLM)扮演着至关重要的教师模型角色。VLM通过其强大的多模态处理能力,能够将视觉信息与语言知识相结合,为自动驾驶模型提供丰富的推理信息。在训练过程中,VLM作为教师,向端到端自动驾驶模型提供额外的监督信号,这些信号不仅包括结构化的动作标签,还涵盖了非结构化的推理信息。这种监督方式使得自动驾驶模型能够学习到更深层次的特征表示,从而更好地理解驾驶环境中的各种因素及其相互关系。
VLM的教师角色主要体现在以下几个方面:
-
提供推理知识
:VLM能够根据视觉输入生成详细的文本描述,这些描述包含了对驾驶场景的深入理解和推理。例如,VLM可以解释为什么在特定情况下需要减速或变道,这种推理知识对于自动驾驶模型来说是宝贵的补充,有助于其学习如何在复杂场景中做出合理的决策。
-
增强特征表示
:通过与VLM的交互,自动驾驶模型可以学习到更丰富的特征表示。VLM的输出作为监督信号,引导自动驾驶模型关注那些对驾驶决策至关重要的视觉和语言特征,从而提高模型对驾驶环境的感知和理解能力。
-
促进知识迁移
:VLM在预训练过程中积累了大量的通用知识,这些知识可以通过教师模型的角色传递给自动驾驶模型。这种知识迁移使得自动驾驶模型能够在有限的标注数据下,更好地泛化到未见过的驾驶场景中,提高模型的适应性和鲁棒性。
2.2 结构化与非结构化监督信息的结合
VLM-AD方法的核心创新之一是将结构化和非结构化的监督信息相结合,以加强端到端自动驾驶模型的训练。这种结合方式充分利用了VLM在多模态推理方面的优势,为自动驾驶模型提供了更全面的指导。
-
结构化监督信息
:结构化监督信息主要指明确的动作标签,如加速、减速、左转、右转等。这些标签为自动驾驶模型提供了清晰的指令,使其能够直接学习到在特定情况下应采取的具体行动。通过这种方式,模型可以快速掌握基本的驾驶规则和操作,提高其在常见场景下的性能。
-
非结构化监督信息
:非结构化监督信息则侧重于对驾驶场景的详细描述和推理。VLM生成的文本描述包含了对环境的观察、对潜在风险的评估以及对驾驶决策的解释等内容。这些信息有助于自动驾驶模型理解驾驶行为背后的逻辑和原因,从而在面对复杂或未知场景时,能够进行更合理的推理和决策。
将结构化和非结构化监督信息相结合,具有以下优势:
-
提高模型泛化能力
:结构化监督信息使模型能够学习到明确的驾驶规则,而非结构化监督信息则帮助模型理解这些规则背后的原理。这种结合使得模型不仅能够在已知场景中表现良好,还能更好地适应新的、未见过的场景,提高其泛化能力。
-
增强模型的可解释性
:非结构化监督信息中的详细描述和推理过程为模型的决策提供了清晰的解释。这使得自动驾驶模型的决策过程更加透明,便于开发者和研究人员理解模型的行为,也为模型的安全性和可靠性提供了保障。
-
促进模型的优化和调整
:通过分析非结构化监督信息中的推理内容,开发者可以发现模型在特定场景下的不足之处,并针对性地进行优化和调整。同时,结构化监督信息的明确性也有助于快速定位和解决模型在执行具体动作时的问题,从而不断提高模型的性能。
3. VLM文本注释生成
3.1 自由形式推理注释
在VLM-AD方法中,自由形式推理注释是通过视觉语言模型(VLM)生成的,以增强端到端自动驾驶模型对驾驶场景的理解。这种注释方式允许VLM以自然语言的形式表达对驾驶环境的观察、分析和推理,从而为自动驾驶模型提供丰富的背景信息和决策依据。
-
注释生成过程
:首先,VLM接收来自车辆传感器的视觉输入,如摄像头捕捉的图像序列。然后,VLM根据预设的提示(prompts),生成关于当前驾驶状态、未来可能动作以及背后推理的自由形式文本。例如,VLM可能会描述当前道路状况、周围车辆的行为、交通信号的状态,并解释为什么建议采取特定的驾驶动作。这些文本注释不仅包含了对视觉场景的直接描述,还融入了VLM对驾驶逻辑和常识的推理,使得自动驾驶模型能够学习到更深层次的驾驶知识。
-
注释的应用
:生成的自由形式推理注释被用作训练数据的一部分,与传统的轨迹监督标签相结合。在训练过程中,自动驾驶模型通过学习这些注释,能够更好地理解驾驶场景中的各种因素及其相互作用,从而提高其在复杂环境下的决策能力。例如,当模型面对一个未见过的交通场景时,它可以根据之前学习到的推理知识,推断出合理的驾驶策略,而不是仅仅依赖于记忆中的轨迹模式。
-
数据集的构建
:为了充分利用VLM生成的自由形式推理注释,研究者构建了一个包含大量此类注释的数据集。这个数据集不仅涵盖了各种常见的驾驶场景,还包括了一些长尾事件和具有挑战性的场景,以确保自动驾驶模型能够在广泛的条件下进行有效的学习和泛化。通过对这个数据集的训练,模型能够学习到更全面的驾驶知识,提高其在实际应用中的性能和安全性。
3.2 结构化动作注释
结构化动作注释是VLM-AD方法中另一种重要的监督信息,它以明确的动作标签形式提供给端到端自动驾驶模型。这些动作标签定义了车辆在特定情况下的具体操作,如加速、减速、左转、右转等,为模型提供了清晰的指令和目标。
-
注释的定义与分类
:结构化动作注释将驾驶动作分为多个类别,每个类别对应一种特定的驾驶操作。例如,可以将动作分为“控制动作”(如加速、减速、保持速度)、“转弯动作”(如左转、右转、直行)和“车道动作”(如变道、并线、保持车道)等。这种分类方式使得模型能够更精确地理解和执行驾驶任务,同时也便于对模型的性能进行评估和优化。
-
注释的生成与应用
:VLM根据视觉输入和预设的提示,为每个驾驶场景生成相应的结构化动作注释。这些注释直接指导自动驾驶模型在特定情况下的操作,帮助模型快速掌握基本的驾驶规则和技能。在训练过程中,模型通过学习这些结构化动作注释,能够更准确地预测和执行驾驶动作,提高其在常见场景下的性能和可靠性。例如,当模型检测到前方有障碍物时,它可以根据之前学习到的结构化动作注释,迅速做出减速或变道的决策,以避免碰撞。
-
与自由形式推理注释的结合
:结构化动作注释与自由形式推理注释相结合,为自动驾驶模型提供了更全面的监督信息。结构化注释明确了具体的驾驶动作,而自由形式注释则提供了这些动作背后的推理和解释。这种结合使得模型不仅能够知道在特定情况下应该做什么,还能够理解为什么这样做,从而在面对复杂或未知场景时,能够进行更合理的推理和决策。例如,当模型需要在交叉路口转弯时,结构化动作注释告诉它应该左转,而自由形式推理注释则解释了为什么在这个时候左转是安全的,以及需要注意哪些潜在的风险。通过这种方式,模型能够在保证安全的前提下,更加灵活和智能地完成驾驶任务。
4. 辅助头设计与功能
4.1 文本特征对齐
在VLM-AD方法中,文本特征对齐是辅助头设计的关键组成部分,旨在将视觉语言模型(VLM)生成的文本特征与端到端自动驾驶模型的内部特征表示进行有效对齐。这一过程对于模型学习如何将VLM提供的丰富文本信息转化为可操作的驾驶决策至关重要。
-
对齐机制
:文本特征对齐通过多头交叉注意力(MHCA)机制实现。具体来说,初始化三个可学习的文本查询(text queries),分别对应于当前动作、未来动作预测和推理描述。这些查询与自车特征(ego features)进行交互,其中文本查询作为注意力的查询(query),而自车特征同时充当键(key)和值(value)。通过这种方式,模型能够学习到如何将文本信息与视觉感知到的驾驶场景特征相结合,生成更新的文本查询,这些查询随后与自车特征拼接,并通过多层感知机(MLP)层处理,以生成最终的特征对齐输出。
-
归一化策略
:受到DINO中控制特征向量平滑度和锐度的知识蒸馏方法启发,VLM-AD采用类似的策略对文本和输出特征进行归一化处理。通过引入不同的温度参数,模型能够产生特征分布而非原始特征值,这有助于输出特征和监督标签之间更好地对齐,从而提高知识蒸馏的对齐质量。这种归一化策略不应用居中操作,因为监督标签被认为是真值。
-
对齐效果
:文本特征对齐的效果通过交叉熵损失来衡量,该损失用于对齐监督和输出特征,以捕获文本传达的关键信息。通过这种方式,模型能够学习到如何将VLM提供的文本特征与自身的特征表示进行有效匹配,从而增强对驾驶场景的理解和推理能力。实验结果表明,这种对齐机制显著提高了模型在复杂驾驶场景下的性能,特别是在nuScenes数据集上的测试中,模型的规划准确性和碰撞率都有了显著的改善。
4.2 结构动作分类
结构动作分类是VLM-AD辅助头设计中的另一个重要功能,它使得模型能够根据VLM提供的结构化动作标签进行精确的动作预测。这一功能对于提高模型在实际驾驶场景中的操作性和安全性至关重要。
-
分类机制
:结构动作分类通过构建一个以自车特征为输入的动作分类头来实现。与文本特征对齐阶段类似,初始化三个可学习的动作查询(action queries),分别对应于控制动作、转弯动作和车道动作。这些查询通过MHCA块与自车特征交互,生成更新的动作查询。然后,这些更新的查询与自车特征拼接,形成动作分类头的特征表示,并传递给MLP层,最终通过Softmax函数生成动作预测。
-
标签生成
:VLM根据预设的问题集生成结构化动作标签,这些问题集涵盖了控制动作、转弯动作和车道动作等多个方面。例如,VLM可以回答“请从控制动作列表中描述自车的动作:{直行、慢行、停止、倒车}”等问题,为每个问题生成一个具体的动作标签。这些标签为模型提供了明确的指导,帮助模型学习在特定情况下应采取的具体行动。
-
分类效果
:结构动作分类的效果同样通过交叉熵损失来衡量,确保模型能够准确地对动作进行分类。这种分类机制使得模型能够根据VLM提供的动作标签,快速准确地做出驾驶决策,提高了模型在实际驾驶场景中的响应速度和准确性。在nuScenes数据集上的实验结果表明,结构动作分类显著提高了模型的动作预测准确率,减少了因错误动作导致的碰撞风险,从而提高了自动驾驶的安全性和可靠性。
5. 实验与评估
5.1 数据集与实验设置
在 VLM-AD 的实验中,nuScenes 数据集被选为测试平台,这是一个广泛使用的自动驾驶数据集,包含了多种复杂的城市场景和驾驶条件,能够充分检验模型在不同环境下的性能。该数据集涵盖了 1000 个场景,每个场景持续约 20 秒,关键帧在整个数据集上以 2Hz 的频率均匀注释,为模型训练和评估提供了丰富的数据资源。
实验设置方面,VLM-AD 定义了两个平行的辅助任务,以使端到端自动驾驶模型能够从 VLM 中提取所需的知识。对于特征对齐任务,采用交叉熵损失来对齐监督和输出特征,从而捕获文本传达的关键信息。对于动作分类任务,同样应用交叉熵损失来确保准确分类。在训练过程中,使用了 UniAD 和 VAD 的官方代码,并遵循其官方实现中指定的超参数。对于 VLM-AD,定义了两个辅助任务头,每个任务头包含一个具有 8 个头和 3 个交叉注意层的 MHCA 块,并且为 Q1 和 Q2 分别设置了 3 个文本查询。在训练期间,设置了温度参数 τs = 0.1 和 τt = 0.04 来控制特征的锐度,并设置了 λ1 = 1 和 λ2 = 0.1 来平衡 Lalign 和 Laction。所有模型均使用 PyTorch 框架在 8 个 NVIDIA H100 GPU 上进行训练。
5.2 性能提升与碰撞率降低
实验结果表明,VLM-AD 在 nuScenes 数据集上的表现显著优于现有的端到端自动驾驶模型。具体来说,与 UniAD 和 VAD 这两种当前最先进的方法相结合时,VLM-AD 在 L2 规划误差上分别实现了 14.6% 和 33.3% 的显著改善。这表明 VLM-AD 能够更准确地规划车辆的行驶轨迹,减少因规划不准确导致的潜在风险。此外,VLM-AD 还显著降低了碰撞率,对于 UniAD 和 VAD,碰撞率分别降低了 38.7% 和 57.4%。这一结果凸显了 VLM-AD 在提高自动驾驶安全性方面的巨大潜力,通过引入 VLM 的推理能力,模型能够更好地理解和应对复杂的驾驶场景,从而减少事故发生的可能性。
这些性能提升和碰撞率的降低,归功于 VLM-AD 方法中 VLM 作为教师模型所提供的额外监督信息。VLM 生成的自由形式推理注释和结构化动作注释,为模型训练提供了更丰富的数据和更明确的指导,使得模型能够学习到更深层次的驾驶知识和更准确的决策逻辑。此外,辅助头设计中的文本特征对齐和结构动作分类功能,进一步增强了模型对 VLM 知识的吸收和应用能力,从而在实际驾驶场景中实现了更优的性能表现。
6. 相关工作与对比
6.1 端到端自动驾驶系统
端到端自动驾驶系统是近年来自动驾驶领域的一个重要研究方向,它将感知、预测和规划等多个模块整合到一个统一的框架中,旨在减少信息在模块间传递过程中的丢失,提高系统的整体性能和效率。与传统的模块化自动驾驶系统相比,端到端系统具有显著的优势,但也面临着一些挑战。
优势
-
信息无损传递
:在传统的模块化系统中,信息在不同模块之间传递时可能会出现丢失或失真,导致最终的决策不够准确。端到端系统通过直接从传感器输入到控制输出的映射,避免了这种信息丢失,使得模型能够更全面地利用原始数据进行决策。
-
全局优化
:端到端系统可以对整个驾驶过程进行全局优化,而不是像模块化系统那样分别优化各个模块。这种全局优化能够更好地协调不同任务之间的关系,提高系统的整体性能,例如在规划轨迹时可以同时考虑感知到的障碍物和预测的交通流,从而生成更安全、更高效的行驶路径。