多模态自动驾驶检索方法!BEV-CLIP带着大语言模型+BEV感知来啦

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

>>点击进入→自动驾驶之心【大语言模型】技术交流群  

78b0bdfc72da39fc93a6e6544ea4904d.png

写在前面 && 笔者的个人理解

目前,随着自动驾驶技术的快速迭代和发展,基于城区场景或者复杂道路场景的自动驾驶算法也取得了长足的进步。但想要训练出可以在复杂场景下做出及时和准确感知结果的算法模型就需要更加全面和准确的数据来让模型进行学习。

就目前情况来看,各个自动驾驶公司每天都会有比较多的路采车进行自动驾驶场景的数据采集,通过产生大量且真实的路采数据从而帮助模型去学习多种多样情况下的驾驶场景,提高感知算法模型的感知和泛化能力。因此,训练数据的场景和质量对于模型的学习是非常重要的,这就使得挖掘训练数据的检索方法需要具备很强的检索能力,从而可以根据人们的需要从众多的路采数据中得到感兴趣的驾驶场景。

但由于检索算法大多数时候可以在精确描述文本的作用下得到希望的场景,但缺乏不同数据集上的泛化性。所以,对于场景检索算法的泛化性具有较高的要求。

此次将要介绍的算法模型——BEV-CLIP,就是首个利用多模态数据的BEV空间的数据检索方法。该算法模型利用现在火爆的大语言模型(LLM)的语义特征提取能力来促进大量文本描述的零样本的检索效果,并从知识图谱中集成半结构化的信息来提高语义丰富性,从而在数据集中更好的检索需要的驾驶场景。

论文的链接:https://arxiv.org/pdf/2401.01065.pdf

BEV-CLIP算法模型整体架构

在介绍BEV-CLIP算法模型的整体结构之前,先介绍一下在自动驾驶场景中视觉文本检索系统的两个基本问题。

  • 在自动驾驶场景当中,由于算法模型提取到的二维图像特征其固有的局限性,导致对于全局特征的表示比较差,如何提高二维图像特征表示的有效性?

  • 在自动驾驶领域当中,有哪些方法可以用来增强当前性能欠佳的文本表示能力?

基于上述提到的两点思考,我们从特征提取语言表达两个方向展开讨论。

  • 特征提取部分:选用可以为自动驾驶场景提供统一特征表示的BEV框架来完成特征提取任务。BEV框架通过将多视角的相机采集到的图像,利用从自上而下的方式将2D图像特征投影到3DBEV空间,从而方便的为规划和控制等下游任务提供统一的感知表达形式。同时,考虑到BEVFormer是一种基于Transformer架构的BEV感知算法,并且可以实现End-to-End的感知结果,所以采用了BEVFormer作为BEV特征的提取算法。

  • 语言表达部分:通过结合复杂的语义特征作为算法模型的额外输入可以补偿图像数据中不明显的抽象特征。目前,大语言模型在文本模态上表现出了非常不错的效果。其中,CLIP通过利用对比学习方法具备了零样本的推理能力。所以我们选择CLIP为出发点,构建了一个采用fine-tuning策略的改进大语言模型来为BEV特征提供更丰富的语义信息。此外,还将结合知识图谱特征来增强自动驾驶领域知识的显着性。

9d2f4e6d9c74ab7b4b98f79ebe9eee11.png
与左侧的2D图像检索方法相比,将环视图像映射到BEV空间后,BEV空间的上下文特征可以与全局特征相关的语义特征进行交互,从而使模型可以从文本的描述中检索出复杂的驾驶场景

介绍完BEV-CLIP所想要讨论的问题后,接下来就是介绍BEV-CLIP算法模型的网络结构~

656dbb3a0d5242f7912df03d2580f55d.png
BEV-CLIP算法模型的整体结构

通过上图可以看出,BEV-CLIP算法模型主要包含三个子网络,首先是利用参数冻结的BEV-Encoder模块获取环视图像的全局BEV特征,以及利用Language-Encoder模块对文本输入进行处理,得到各自的图像和文本表达。然后是采用跨模态提示策略对齐同一隐藏空间的BEV特征和语言特征。最后是对字幕生成和检索任务进行联合的监督。

在整体介绍完BEV-CLIP算法模型的思路之后,接下来就是对其各个子网络进行详细的介绍~

全局BEV特征构建

通过对多种不同的BEV特征生成方法进行实验对比发现,BEVFormer算法模型中的BEV特征生成方法具有最好的普适性(因其具有空间注意力模块和时序注意力模块可以更好的表达场景中的动态物体,提高对于整个场景的表达能力)。

BEV-CLIP选择采用BEVFormer算法中的BEV-Encoder实现对输入环视相机完成BEV空间特征的构建。需要注意的是在检索任务中,需要将BEVFormer模型的所有参数保持冻结,并直接使用生成的特征进行下游后处理和检索。因此,该方法最小化了与训练相关的开销,并提高了检索方法的整体效率。

知识图谱Prompt

在对驾驶场景的文本描述中,语义信息具有离散特征,所以BEV-CLIP结合了图神经网络来训练自动驾驶领域的知识图谱。图神经网络中的每个节点对应一个与自动驾驶相关的关键字,与这些节点相关的嵌入捕获自动驾驶关键字的关联表示。随后,这些关键字嵌入被连接到标记化的句子中,从而扩展编码文本的表示。

在知识图谱当中,实体被分为了三个主要的类别,分别是实例、目标和动作。由于节点对应着大部分的实例,而且目标和动作节点则连接到许多不同的实例节点。所以我们想要利用目标和动作节点之间的广泛连接来提取它们之间的关系,获得他们之间的关联表示。基于此,我们采用了一种基于距离的评分函数来评估这种关系。对应的评分函数如下:

在公式中,对于图谱中的每个实例、目标和动作,分别表示主语、谓语和宾语。公式中的代表或者范数。通过采用上述的评分函数可以得到所有三元组表示的翻译转换关系。

语义表达融合

为了使模型能够实现零样本的检索能力,从输入的文本数据中提取全面的语义信息是非常重要的。预训练模型可以实现对单词、整个句子的实质性理解,同时还表现出对于上下文的理解以及生成连贯相应的能力。所以对现有的大语言模型进行微调,以便可以适用于自动驾驶领域当中。同时,BEV-CLIP还利用了sentence embedding来整合和合并graph embedding来构建合成的表示。

在具体实现当中,BEV-CLIP从出现在文本输入中的图中索引关键字,并将它们按照它们的出现顺序连接到文本嵌入序列中。生成的语言嵌入与图表示融合,作为检索任务和字幕生成的监督。

共享跨模态Prompt

在这一部分,BEV-CLIP为了能够支持两种模态分支的训练成本,分别将BEV分支和文本分支在各自模态的数据集上进行了预训练,并将其中的大部分参数进行了冻结。同时受到Q-Former结构的启发,设计了一个交叉注意力的方法来联合两类模态,通过设计可学习的长序列标记将BEV特征和文本特征映射到相同的流形空间中,从而促进两个分支中不同模态信息的对齐。

需要注意的是,为了在训练过程当中采用对比损失,BEV-CLIP将两个模态分支输出的BEV特征和文本特征合并然后使用池化运算变换成一维的向量计算对比损失。此外,为了辅助模型的训练过程,引入了描述生成任务,在BEV分支的基础上接了一个Transformer架构来生成相应的描述并利用对应的文本标签对输出的描述进行监督。

实验结果

在实验过程使用了BEV-CLIP进行BEV检索任务。将预训练的BEVFormer用来提取BEV特征,并将Llama2+LoRA模型微调与知识图谱生成的结果concat到一起作为文本特征。然后利用上文提到的跨模态Prompt来映射两个模态分支生成的特征,生成具有相同维度的BEV特征和文本特征序列。最终基于余弦相似度的BEV-Text对比损失来进行模型训练。

我们选择在nuScenes数据集上来验证提出算法的有效性。整体的实验结果被汇总在了如下的表格当中。

7335783784d914f150320dd94f558f63.png

实验结果表明,在结合Llama2、LoRA、SCP以及distmult知识图嵌入和字幕生成头,得到了最佳的结果为BEV-to-text rank@1为85.78%,text-to-BEV rank@1为87.66%。除此之外,也结合了NuScenes-QA的数据进行了相同的实验,实现了BEV-to-text rank@1为66.37%,text-to-BEV rank@1为67.90%的精度。

除此之外,BEV-CLIP也比较了在不同配置情况下的跨模态Prompt的消融实验。可以看出在不同baseline的情况下,SCP模块都可以进行有效的提点。

744313c6280f860e947c2b78a081d4ee.png

同时我们也比较了在不同大语言模型下的消融实验。

7d780170f5c582df39fb0a3539aed94a.png

最后是展示一下BEV-CLIP的demo效果,可以看出效果还是不错的,通过说明相关的场景,检索模型可以得到与之匹配的驾驶场景。

daf8a3eb50bc98a31d504e02916ab49f.png
总结

目前路采数据日益增多,但是如何从众多的数据中选择所需要的驾驶场景辅助模型的学习变得越来越重要。所提出的BEV-CLIP算法,就是首个利用多模态数据的BEV空间的数据检索方法,希望可以给大家带来帮助~

投稿作者为『自动驾驶之心知识星球』特邀嘉宾,欢迎加入交流!

① 全网独家视频课程

BEV感知、毫米波雷达视觉融合多传感器标定多传感器融合多模态3D目标检测车道线检测轨迹预测在线高精地图世界模型点云3D目标检测目标跟踪Occupancy、cuda与TensorRT模型部署大模型与自动驾驶Nerf语义分割自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习

9b7dcbeb4782478e70c7920bd26b17d6.png 视频官网:www.zdjszx.com

② 国内首个自动驾驶学习社区

近2400人的交流社区,涉及30+自动驾驶技术栈学习路线,想要了解更多自动驾驶感知(2D检测、分割、2D/3D车道线、BEV感知、3D目标检测、Occupancy、多传感器融合、多传感器标定、目标跟踪、光流估计)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频,期待交流!

f3cf4a1328200b118292ea8fbb164f70.png

③【自动驾驶之心】技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多模态感知、Occupancy、多传感器融合、transformer、大模型、点云处理、端到端自动驾驶、SLAM、光流估计、深度估计、轨迹预测、高精地图、NeRF、规划控制、模型部署落地、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向。扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

be85dd37abbf159465e40f6077e8a83d.jpeg

④【自动驾驶之心】平台矩阵,欢迎联系我们!

c5a9b7534401566a42f0bb6d4dce461a.jpeg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值