加利福尼亚大学提出 EM-VLM4AD | 轻量级、多帧的视觉-语言模型,减少10倍的内存和浮点运算!

技术

picture.image

视觉-语言模型(VLMs)和多模态语言模型(MMLMs)在自动驾驶研究中日益突出,因为这些模型能够使用交通场景图像和其他数据模态为端到端的自动驾驶安全任务提供可解释的文本推理和响应。然而,目前这些系统的实现方法使用了昂贵的大型语言模型(LLM)主干网络和图像编码器,这使得这些系统不适合存在严格内存限制和需要快速推理时间的实时自动驾驶系统。

为了解决这些问题,我们开发了EM-VLM4AD,这是一个高效、轻量级、多帧的视觉-语言模型,用于执行自动驾驶的视觉问答。与之前的方法相比,EM-VLM4AD至少需要减少10倍的内存和浮点运算,同时在DriveLM数据集上的BLEU-4、METEOR、CIDEr和ROGUE得分也超过了现有基线。EM-VLM4AD还展现出从与提示相关的交通视图中提取相关信息的能力,并能为各种自动驾驶子任务回答问题。

1 Introduction

视觉-语言模型(VLMs)已经成为一种强大的工具,它们具备整体知识,能够解决视觉和语言交叉领域的问题。这使得它们在自动驾驶(AD)中具有巨大的潜力,允许驾驶员与VLM互动,VLM能够提供各种驾驶安全任务的易于理解的语言表示。此外,VLM可以作为端到端的自动驾驶系统,消除了在自动驾驶特定子任务(如感知和轨迹规划)的单独模型之间的集成和传播错误。这些潜在的好处推动了许多为自动驾驶应用量身定制的视觉-语言模型和多模态语言模型的发展。这些模型涵盖了自动驾驶的各个方面,包括闭环控制、感知任务和交通代理行为分析。

通常,VLM的处理过程如下:视觉文本 特征分别编码,然后通过连接或投影层融合在一起,最后输入到LLM以输出词汇的概率分布。虽然生成文本嵌入相对成本低廉,但LM和图像嵌入往往需要高昂的计算成本。在自动驾驶等实时系统中,优先发展具有高效推理时间的VLM对于实际部署在车辆中至关重要。

然而,目前将多模态语言模型应用于自动驾驶的研究主要使用大型模型,如BLIP-2、GPT 3.5和LLaMA-7b,这些模型都包含超过十亿个参数。因此,这些模型需要昂贵的硬件和更长的推理时间,限制了它们在现有车辆中的应用潜力,以及计算资源有限的研究人员的可访问性。

本文关注于开发参数少于十亿的轻量级视觉-语言模型,这些模型能够准确高效地回答与自动驾驶安全任务相关的问题。我们开发了模型EM-VLM4AD:高效的多帧视觉-语言模型 ,用于自动驾驶。我们使用DriveLM数据集DriveLM-Agent,该数据集提供真实的、多视角的交通场景图像,以及与问题/答案对,来训练这个模型。我们的贡献如下:

  • 我们开发了高效的、较小的视觉-语言模型EM-VLM4AD,其内存消耗和浮点运算(FLOPs)至少比当前的AD-VLMs少10倍 ,并且能够响应基于多帧的问题。
  • 我们探索了两种不同的轻量级LM骨干网络用于EM-VLM4AD:一种经过微调的Text-to-Text Transfer Transformer(T5)基础LM,以及一种经过8位量化并使用低秩适应(LoRA)微调的T5-Large LM。
  • 我们在BLEU-4(双语评估替补)、CIDEr(基于共识的图像描述评估)、ROUGE-L(以回忆为导向的摘要评估替补)和METEOR(具有显式排序的翻译评估指标)上比较了我们的模型效率与性能,与DriveLM数据集DriveLM-Agent的基线相比,即使使用更小的模型,所有指标上的表现也更加强劲。
2 Related Research
Vision-Language Models

最初设计用于处理序列数据,Transformer模型在自然语言处理任务上取得了最先进的表现。这推动了大型语言模型的发展,这些模型通过在大量标记语料库上预训练编码器、编码器-解码器和解码器Transformer架构,学习语言的通用统计特性。这些预训练模型随后可以针对下游的、更专业的语言任务进行微调。Dosovitskiy等人[10]引入了Transformer在图像任务上的应用,即Vision Transformer(ViT),它将图像转换成图像块序列表示,以便由Transformer处理。

视觉-语言模型弥合了大型语言模型和Vision Transformer之间的差距,将图像和文本编码为组合的潜在表示,并利用跨模态预训练任务来学习文本和图像的相关性。这种多模态学习的一般方法催生了许多视觉-语言模型。Radford等人[28]设计了一种将文本标题与图像匹配的预训练任务来开发CLIP,它学习最先进的图像表示,并在许多图像分类任务中展现出强大的零样本迁移能力。BLIP-2引入了两阶段预训练过程来训练查询Transformer“QFormer”,作为冻结图像编码器与语言模型之间的中介。这种方法胜过更大的视觉-语言模型,如Flamingo,并能够进行零样本图像到文本生成。

Instruct-BLIP基于BLIP-2并是一个通用目的的VLM,它汇总了公共视觉-语言数据集并将它们转换为指令调优格式。与本文介绍的模型最相似的VLM是VLT5,它扩展了预训练的T5,以学习在文本和图像嵌入组合条件下生成文本标签。使用预训练的大型语言模型作为多模态任务的框架,利用了这些模型的文本生成能力,这对于我们研究中涉及的问题回答任务至关重要。

尽管这些大型模型在许多任务上表现出色,但部署这些通常超过十亿个参数的模型对于实时应用来说仍然困难。因此,研究压缩技术,如蒸馏、量化和剪枝,对于减少VLM的延迟和计算成本是至关重要的。

Multimodal LLMs for Autonomous Driving

在自动驾驶系统主要使用视觉特征的同时,引入语言特征可以增强这些系统的可解释性,甚至有助于识别新的交通情况。这一优势激发了将多模态数据集成到训练语言模型中,使其成为自动驾驶代理的研究兴趣。Chen等人[5]设计了一种架构,将向量化数值模态与预训练的LLaMA-7b融合在一起,以解决驾驶问答任务。他们采用两步训练方法,首先将向量表示转化为可解释的嵌入,供冻结的LLaMA模型使用,然后使用LoRA对LLM进行微调。

DriveGPT4也采用LLaMA作为骨干LLM和CLIP作为视觉编码器,使用交通场景视频和提示文本作为输入,生成答案和低级车辆控制信号。为了扩展来自BDD-X数据集的固定和刚性的QA标签,DriveGPT4在由ChatGPT/GPT4生成的指令调整数据上进行训练。DriveGPT4只使用单个视角的摄像头,这限制了它只能处理涉及单一视角的问题。Wang等人[35]引入了DriveMLM,它使用多视角图像、激光雷达点云、交通规则以及来自真实模拟器的用户命令来执行闭环驾驶。这个多模态模型由LLaMA-7B和ViT-g/14作为图像处理器构建而成。

Sha等人[30]为驾驶场景设计了基于ChatGPT 3.5的推理链框架,为自动驾驶系统提供可解释的、逻辑上的推理。Mao等人[24]也利用GPT-3.5模型为自动驾驶车辆创建了一个运动规划器。他们的模型GPT-Driver将运动规划重新定义为语言建模问题,通过将规划器的输入和输出表示为语言标记。

最近,Sima等人DriveLM-Agent发布了DriveLM数据集,这是一个图视觉问答数据集,它提供了关于感知、行为和自车规划的问答对,基于NuScenes数据集的多视角图像数据。为了引入一个基线,Sima等人对BLIP-2进行了针对这一新数据集的微调。

尽管这些方法为AD系统提供了有价值的可解释性,并在端到端任务上表现出强大的性能,但所有这些模型都使用了超过十亿个参数的LLM(如GPT 3.5、LLaMA等)和昂贵的图像编码器,如CLIP和ViT-g/14。这使得它们主要适用于延迟不是优先考虑的离线场景,而不适用于实时推理至关重要的在线场景。

Multi-Image Vision-Language Models

在自动驾驶领域,除了文本和图像之外,如激光雷达(LiDAR)、雷达或视频等模态为许多下游任务提供了重要的特征。然而,大多数视觉-语言模型都是针对单图像单文本问题进行预训练的,这使得直接输入多张图像或多种模态与一段文本结合变得不可行。因此,有必要将多种模态和文本整合到单一的嵌入中,以便由视觉-语言模型(VLM)使用。DriveGPT4 通过池化每个视频帧的CLIP视觉编码来编码视频输入。

DriveMLM DriveLM-Agent的多模态分词器使用QFormer将视频和激光雷达数据嵌入,然后将这些嵌入与文本和系统消息嵌入拼接。吴等人[37]发现,在每個个別图像嵌入上使用门控注意力池化有助于引入更多的非线性,并跨多张图像提取视觉信息。重要的是,这种门控注意力方法引入的计算开销微乎其微,使其成为我们模型将多视角交通场景图像聚合为统一嵌入的理想选择。

3 Methods

我们的自动驾驶视觉问答(VQA)模型,EM-VLM4AD,包括一个自定义的图像嵌入网络和一个预训练的T5语言模型[29]。在本节中,我们将描述这些模块以及整个训练过程。

Image Embedding Network

为了解决自动驾驶中的多视角(前、前左、前右、后、后左、后右)问答任务,需要将单个图像嵌入聚合成一个单一的嵌入。这个统一的嵌入随后可以与文本嵌入连接起来,作为LM的输入。在典型的视觉语言模型中,图像嵌入过程使用如CLIP或目标检测网络这样的模型,导致提取过程缓慢。

为了解决这个问题,我们采用了ViT中引入的图像块投影嵌入方案。给定一个RGB图像 ,将图像展平并切成带有线性投影和位置嵌入的图像块。这产生了潜在图像表示 ,其中 是图像嵌入的序列长度, 是图像嵌入的隐藏维度。我们使用在ImageNet上预训练的ViT-B/32的预训练权重来生成这些图像嵌入。

这样,我们得到了每个视角的6个不同的单个图像嵌入,现在需要将这些嵌入结合起来。我们首先将每个图像嵌入展平为一个一维向量,然后使用吴等人[37]描述的门控池化注意力。给定个体图像嵌入 ,门控池化注意力学习一个单一嵌入:

其中 是第i个图像的权重,使得 ,计算方式如下:

其中 ,,,, 是我们设置为128的超参数。门控池化注意力引入了非线性,有助于跨图像汇聚视觉信息。使用这个组合的图像嵌入 ,然后我们将这个嵌入投影以匹配文本嵌入的维度 ,以便可以将文本和图像嵌入的维度 连接起来,其中 是文本嵌入的序列长度。这个连接的多模态嵌入随后输入到LM中以生成答案文本。

Language Model

为了减少视觉-语言模型的计算和推理成本,我们旨在使用参数量少于十亿的轻量级语言模型。为此,采用了两种不同预训练版本的T5语言模型:T5-Base,包含大约2.23亿个参数,以及8位量化的T5-Large(约7.5亿个参数)。使用这些预训练语言模型,我们对模型进行微调,以适应拼接的多视角图像和文本嵌入。在实验中,我们发现对T5-Base进行整体模型的微调效果最佳,但对于量化的T5-Large,我们使用了LoRA-Fine-Tuning-Aware量化,这有助于在LoRA权重的初始化下最小化量化误差。

Training Process

为了训练EM-VLM4AD,我们使用了DriveLM数据集DriveLM-Agent,这是最新的、最全面的自动驾驶多视图视觉问答(VQA)数据集,其中包含与安全任务相关的問題,如感知、规划、预测以及自车行为预测。我们使用了DriveLM数据集的训练集,它包含了来自NuScenes的656个不同场景,4,072个不同的多视图帧,以及377,983个不同的多视图/问答对。为了评估我们的方法,我们使用了DriveLM中交通场景的90%/5%/5%分割,以便评估我们的模型在未见情况下的表现。

picture.image

与一次性训练我们模型的所有组件不同,我们采用了如图1所示的两阶段方法:

  • 在第一阶段,我们首先冻结图像块编码器和语言模型,只训练门控池化注意力和投影层。这强制多视图图像嵌入与语言模型期望的嵌入类型对齐。
  • 然后在最后阶段,我们只保持图像块编码器冻结,并开始对语言模型进行微调。

总结来说,图像块编码器始终冻结以保持从预训练中获取的通用图像信息,门控池化注意力和投影层始终被训练,而语言模型只在训练的最后阶段进行微调。

我们每个训练阶段执行六个周期,每个模型大约需要2.5天来完成。我们使用NVIDIA RTX 3090 Ti来训练T5-Large版本的EM-VLM4AD,使用V100 Google Colab实例来训练T5-Base版本的EM-VLM4AD。我们注意到,我们的模型可以适应单个T4 GPU实例,这使得可以在Google Colab上免费评估这些模型。对于超参数,我们使用了1e-4的学习率,0.05的权重衰减,指数学习率调度程序以及两种方法均为4的批量大小。

4 Experiments

本节展示了对EM-VLM4AD在定量、定性和计算性能方面的分析。我们使用了图像字幕任务中常用的以下指标来评估模型生成答案的质量:

  • BLEU-4:测量生成文本中有多少4-gram与参考文本中的匹配。
  • ROUGE-L:使用生成文本与真实文本之间的最长公共子序列来计算句子相似性分数。
  • METEOR:考虑精确匹配、词干提取、同义词和词语顺序来衡量模型输出与参考之间的对齐情况。
  • CIDEr:为了考虑生成文本与参考文本之间的词汇和语义相似性,CIDEr用相应的TF-IDF权重对n-gram进行加权。这有助于降低在所有示例中普遍出现的n-gram的重要性,这些n-gram可能不具有重要的含义。

对于计算分析,我们旨在分析我们模型的内存和计算效率,这些是在存在资源限制且推理效率至关重要的实时系统中的关键方面。

Quantitative Results

我们使用我们创建的未见交通场景的测试集来评估BLEU-4、ROUGE-L、METEOR和CIDEr分数。目前在DriveLM数据集上唯一存在的做法是DriveLM-Agent,这是BLIP-2的一个微调版本。由于这个模型尚未公开,且我们没有计算资源去执行BLIP-2的全精度LoRA训练,所以我们使用DriveLM-Agent在其私有评估集上提供的结果来基准测试我们的方法。

picture.image

表1的结果显示,尽管模型参数至少减少了30亿,但EM-VLM4AD的两个版本在所有指标上都超过了DriveLM-Agent。在所有三个模型中,使用T5-Base的EM-VLM4AD版本是表现最佳的模型。

尽管8位量化T5-Large版本相比,使用T5-Base骨干网络的EM-VLM4AD表现出色,这可以归因于前者能够训练更大的参数集,这使得语言模型更好地适应输入的视觉-语言嵌入。相反,针对8位量化T5-Large LM的LoRA微调方法只改变了网络权重的3.4%。尽管我们确实尝试了对量化LM进行完全微调,但这导致了过拟合LM和模式崩溃。

与仅使用前视图帧作为输入的DriveLM-Agent不同,多帧集成是EM-VLM4AD相对于DriveLM-Agent表现优越的一个关键优势。我们的模型通过自定义多视图嵌入网络成功地跨多个视图聚合信息。此外,尽管某些LM执行的任务被定义为“涌现”的,需要更大的模型才能获得足够的结果,但我们的研究强调,在DriveLM数据集上学习执行VQA可以不增加模型复杂性来完成。因此,对于这项特定任务,简单地增加模型复杂性可能不会带来最佳改进。

Computational Analysis

picture.image

我们还进行了计算分析,以查看EM-VLM4AD与其他用于自动驾驶的多模态LM的对比情况。具体来说,我们关注三个关键的计算指标:参数数量、浮点运算次数(FLOPs)以及内存(GB)。对于这些方法,图像编码器和LM是这些模型中最计算密集的部分,因此在计算这些指标时,我们只关注这两个方面。为了估计这些模型中每个模型的FLOP计数,我们使用A100 GPU上的fvcore FLOP计数器模块对DriveLM数据集中的示例进行估计。

picture.image

对于我们要比较的方法,我们将图像编码器和LM的FLOPs相加。表2中的结果强调了EM-VLM4AD比其他方法更高效,它在内存、计算和模型参数方面的需求都更少。

值得注意的是,带有T5-Base骨干的EM-VLM4AD具有最少的参数和FLOP计数,而带有T5-Large骨干的EM-VLM4AD由于模型权重仅以8位存储,具有最小的内存需求。这些优化的模型设计选择使得EM-VLM4AD能够提供快速的推理时间,并需要较少的计算资源,这对于任何实时场景中实施的LM来说都是至关重要的属性。

Qualitative Results

picture.image

图2和图3展示了由EM-VLM4AD生成的部分选定多帧答案。我们的模型能够准确回应与感知、识别交通代理行为、规划安全的自我车辆行为以及识别场景中重要的交通元素等多种问题。通过利用预训练的补丁嵌入网络和T5-LM中的通用知识,我们的系统能够回答涵盖端到端自动驾驶系统的一系列问题。

此外,EM-VLM4AD展示了理解DriveLM所采用的c-tag格式的能力,这种格式将交通对象编码为 <c,cam,x_pos,y_pos><c,cam,x\_{\text{pos}},y\_{\text{pos}}>. 此外,这个模型学会了为每个问题智能提取最相关的帧,使其成为一个有效的多帧VLM系统。然而,EM-VLM4AD表现出两个特定的弱点:语法问题和与行为相关的问题回答。EM-VLM4AD偶尔会生成带有语法错误的答案,这会阻碍人们理解问题的答案。</c,cam,x_{\text{pos}},y_{\text{pos}}>

采用如蒸馏等训练技术,结合对语法规则有更好理解的大型视觉-语言模型,将有助于这个小模型学习这些复杂规则。EM-VLM4AD在处理与行为相关的问题上也存在困难,例如提示是“预测自我车辆的行为”。向我们的网络输入多视角视频以增加时间上下文,将提高这类问题的结果,因为行为相关问题通常需要超过一帧来做出准确预测。

5 Conclusion

我们引入了EM-VLM4AD,这是一个轻量级的多帧视觉-语言模型,专为跨各种自动驾驶任务进行视觉问题解答而设计。与其他专为自动驾驶定制的语言模型相比,EM-VLM4AD在内存效率和计算要求方面具有显著优势,并且在DriveLM测试数据集上,在BLEU-4、METEOR、ROUGE和CIDEr指标上的表现超过了DriveLM-Agent的报道分数。EM-VLM4AD在回答各种自动驾驶问题方面表现出色,并通过我们的门控池化注意力层动态关注相关的相机视角,有效地整合了视角嵌入。

在未来的研究中,我们希望将我们的模型发展成一个能够从多视角视频输入生成响应的视频-语言模型,从而增强EM-VLM4AD处理与时间相关问题的能力。此外,结合多模态检索增强生成以提供上下文,可以使我们的模型从类似交通场景中提取洞察。

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
火山引擎大规模机器学习平台架构设计与应用实践
围绕数据加速、模型分布式训练框架建设、大规模异构集群调度、模型开发过程标准化等AI工程化实践,全面分享如何以开发者的极致体验为核心,进行机器学习平台的设计与实现。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论