RAG-Driver: 多模态大语言模型中具有检索增强上下文学习的通用驱动解释

本文主要是介绍RAG-Driver: 多模态大语言模型中具有检索增强上下文学习的通用驱动解释,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

RAG-Driver: 多模态大语言模型中具有检索增强上下文学习的通用驱动解释

  • 摘要
  • Introduction

RAG-Driver: Generalisable Driving Explanations with Retrieval-Augmented In-Context Learning in Multi-Modal Large Language Model.

摘要

由“黑箱”模型驱动的机器人需要提供人类可理解的解释,这些解释是作者能够信任的。因此,可解释性在促进自主决策的可信度、透明度和最终用户接受度方面发挥着关键作用,尤其是在复杂的自动驾驶领域。多模态大型语言模型(MLLMs)的最新进展已经显示出在提高作为驾驶主体的可解释性方面的巨大潜力,它可以生成控制预测以及自然语言解释。然而,由于昂贵的标注成本导致的数据稀缺以及不同数据集之间的显著领域差距,开发一个健壮且可泛化的系统变得极其具有挑战性。此外,MLLM的高昂训练要求以及未解决的灾难性遗忘问题进一步限制了它们部署后的泛化能力。为了应对这些挑战,作者提出了RAG-Driver,这是一个新颖的检索增强型多模态大型语言模型,它利用上下文学习来实现高性能、可解释且可泛化的自动驾驶。通过在检索到的专家示范中进行定位,作者经验性地验证了RAG-Driver在生成驾驶动作解释、辩护和控制信号预测方面达到了最先进的表现。更重要的是,它展现出卓越的零样本泛化能力,无需进一步训练即可适应未见过的环境。

Introduction

受到深度学习新兴发展的驱动,自动驾驶技术已经经历了从基于规则的决策系统向数据驱动的学习方法的范式转变。然而,这在决策透明度上是要付出代价的,特别是对于被认为是黑箱性质的全栈自动驾驶系统。因此,除了在行动控制上的精确性之外,提供解释对于确保可信赖的决策制定至关重要,这样可以调和系统的决策与终端用户期望之间的关系,以促进在动态驾驶环境中的信心和接受度。

传统方法主要依赖于注意力可视化作为代理来解释黑盒系统的决策,或者通过辅助的中间任务,如语义分割,目标检测和可供性预测,为决策提供有意义的中间表示。然而,这些方法并没有让最终用户参与到对话中,因为它们是单向的,而且对于一般用户来说不容易理解,这不利于培养信任和信心。一种有前景的替代方法是整合自然语言解释,特别是通过多模态大型语言模型(MLLMs)。这些模型在广泛的网页规模数据集上进行了预训练,显示出卓越的推理能力,能够将复杂的车辆决策过程转化为更易理解的叙述格式,从而为传统系统提供新的解释层次。

尽管早期的一些尝试已经展示了多语言大模型(MLLMs)作为一般可解释驾驶代理的潜力,但这些方法在达到人类 Level 的理解方面仍有不足。其中一个局限性是它们未能泛化到未见过的环境。一个主要的障碍是缺乏高质量标注数据,以及不同数据集之间显著的领域偏移,这阻碍了模型将泛化能力扩展到训练数据分布之外的新环境。

另一个关键挑战是训练成本过高以及灾难性遗忘问题未解决,这使得由于巨大的计算需求和严重的性能退化的原因,重新训练或微调成为不切实际的解决方案。因此,这进一步限制了模型在部署后泛化能力,因为它们在持续变化的环境和驾驶场景中有效利用新数据方面存在困难。

为了应对这些挑战,作者推出了RAG-Driver,这是一个新颖的检索增强型多模态大型语言模型,专为具有泛化能力和可解释性的端到端驾驶而定制。如图1所示,它基于驾驶视频输出自然语言文本,对应于**(1)驾驶动作和(2)该驾驶动作的依据,以及(3)**数值控制信号。

在上下文学习过程中,自然语言文本与控制信号对齐,以实现真实内省解释的提供。RAG-Driver的创新之处在于集成了检索增强的上下文学习(RA-ICL)机制,这些机制显著提高了在未见过的驾驶环境中的泛化性能。它允许通过隐式元优化(第III-C节)高效回忆类似的驾驶场景作为增强MLLM预测的上下文信息。
在这里插入图片描述
通过大量实验,作者展示了RAG-Driver在域内部署以及未见环境(无需任何微调)的部署上均优于现有方法。通过基于类比演示实现,作者的框架显著减少了持续重新训练的需求,同时提高了生成的解释文本的泛化能力和质量。

作者的主要贡献如下:

提出一种新颖的检索增强型情境学习方法,用于基于多模态大型语言模型(MLLM)的可泛化和可解释驾驶。

在标准基准BDD-X 上实现最先进的自省驾驶解释性能。

展示了通过一个定制数据集Spoken-SAX,该数据集包含由专业驾驶教练解说的视频序列,实现了在未见过的场景中无需训练努力即可达到异常出色的零样本泛化能力。
Related Work
Explainable End-to-End Autonomous Driving
端到端学习驾驶直接从原始传感器输入映射到车辆控制信号。这种数据驱动的、感知、预测和规划的联合优化可以简单而高效。在这个领域,各种基于学习的方法都有前景,包括行为克隆,逆最优控制和强化学习。这个领域的一个关键关注点是可解释性,这对于提高透明度,建立对自主系统更广泛公众接受的信任至关重要。一项工作利用了注意力可视化——要么直接识别输入图像中对驾驶决策重要的显著区域,要么辅助下游运动规划任务的特征聚合。另一项工作使用中间辅助任务,如语义分割,目标检测和可供性预测,这些任务帮助将隐含表示解码为人类可理解的表现形式。尽管这些方法通过将决策过程与语义或视觉表示相关联提供了可解释的机制,但它们并不容易被普通用户理解,以达到培养信任和信心的目的。

另一方面,近期的研究显示出利用自然语言解释的潜力。一些工作开发了专门的解释器,通过在视觉输入和文本生成中对齐注意力来解释具体化的驾驶动作。ADAPT使用了一个视觉-语言 Transformer ,并配有单独的解码器用于生成标题以及控制信号预测。

近来,一些研究探索了多模态大型语言模型(MLLMs)的潜力。例如,DriveGPT4,Lingo,和DrivingMLM在驾驶和动作规划的通用问题回答方面显示出有希望的可能性。然而,无论是专业模型还是基于MLLM的通用模型,都面临着一个共同的障碍,即数据稀缺,这是由于昂贵的标注成本以及不同数据集之间的巨大领域差距造成的,这使得开发一个健壮且具有泛化能力的模型变得极其具有挑战性。在作者的工作中,作者通过采用一种更健壮的推理范式——检索增强的上下文学习,来克服这些障碍,并弥合领域差距,避免在新领域中进行标注的需求。

Multi-Modal Large Language Model
近期大型语言模型(LLM)的进展为多模态大型语言模型(MLLM)的出现铺平了道路。得益于可扩展的基于 Transformer 的架构和网页规模的训练数据,这些模型在通用视觉理解任务中展现了显著的能力。一项工作聚焦于潜在空间中的模态融合,为MLLM提供了一种可扩展的端到端解决方案。例如,Flamingo 和 BLIP2 分别通过门控注意力和 Query Transformer 将视觉标记融合到冻结的LLM中。

LLaVA 和 MiniGPT4 使用带有视觉指令调整的简单多层感知机(MLP)来对齐预训练的图像编码器与LLM。与作者最相关的是关注于视频语言模型的工作,例如 Video-LLaVA 和 Video-LLaMA,它们使用与基于图像模型类似的策略将预训练的视频编码器整合到LLM中。

凭借卓越的感知和推理能力,多模态大型语言模型(MLLMs)在各种机器人任务中显示出巨大的潜力,如推理和规划。与作者最相似的是一种将通用基础模型用于端到端具身代理的想法。PaLM-e将图像、状态估计和其他传感器模态注入到LLM中,并自回归地生成自然语言命令。RT-2和RT-X在图像和低级机器人控制信号对上进行微调,以执行端到端的机器人控制。

特别是在驾驶方面,众多方法利用仅语言的LLM进行决策,然后通过外部感知模块反馈,设计思维链推理模板或下游规划器形成系统级的驾驶代理。另一项更相关的工作是端到端的驾驶代理。DriveGPT4利用在驾驶特定视觉指令调整方面基于BDD-X进行微调的视频语言模型Valley。Dolphins进一步使用设计的接地思维链来增强推理能力。DrivingMLM和Reason2Drive分别通过模拟器生成数据和现有大规模数据集的标注来扩展驾驶视觉指令调整数据集。

尽管这些方法展示了MLLM的潜力,但高昂的训练成本以及未解决的灾难性遗忘问题(这使得部署后重新训练或微调具有挑战性)进一步限制了它们在未知驾驶环境中的泛化能力。为了解决这个问题,作者采用了无需训练的检索增强上下文学习机制。

In-Context Learning and Retrieval-Augmented Generation
尽管大型语言模型(LLMs)展现出强大的生成和推理能力,但它们的输出仍然存在一些问题,比如产生幻觉[29]和知识更新缓慢。上下文学习(In-context Learning,ICL)已成为LLM推理中一个有前景的方法,可能解决其中一些问题。这个范式包括提供一个测试 Query 和几个演示示例作为上下文信息。然后,LLM基于从上下文中绘制的类比生成测试实例的输出,而无需更新其参数。

尽管观察到ICL在各种自然语言处理(NLP)任务中增强了泛化能力,但在多模态上下文中的应用仍然探索较少,这可能是因为与策划结构化高质量的多模态ICL数据集相关的挑战。检索增强生成(Retrieval-Augmented Generation,RAG)是LLM的另一个重要的推理范式。它提供一个外部知识数据库,通过动态检索相关信息片段作为上下文信息,增强推理中LLM内压缩的模型知识。其一个有前景的应用是采用系统化的方法来策划In-Context Learning(ICL)示例。

在这项工作中,作者基于这些推理范式,并将它们的应用扩展到多模态大型语言模型(Multimodal Large Language Models,MLLMs)。作者引入了一个检索增强的上下文学习机制,通过策划的多模态驾驶上下文指令调优数据集和一个特定为驾驶应用量身定制的基于向量相似度的检索引擎。

III Method
RAG-Driver是一个检索增强的、多模态大型语言模型(MLLM),用于可泛化的可解释端到端驾驶。其多任务能力包括三个关键领域:

  1. 行为解释,提供人类可理解的驾驶行为描述;
  2. 行为辩护,阐明特定驾驶行为背后的推理;
  3. 下一控制信号预测,预测在应对驾驶条件下的即将出现的控制信号。
    在这里插入图片描述
    如图3所示,它主要由两个组成部分构成:

一个基于MLLM Backbone 网络的统一感知规划单元
一个基于混合向量和文本数据库的记忆单元
这些组件通过检索引擎进行交互,使得在决策过程中能够进行稳健的多模态上下文学习(ICL)。

Multi-modal Large Language Model Architecture
遵循Video-LLaVA成功的多模态大语言模型(MLLM)范式,作者通过视觉指令调整来对齐视觉和语言嵌入。作者利用预训练的视频编码器和大型语言模型(LLM),并通过多层感知机(MLP)投影器将视频嵌入注入LLM中,以构建一个完全可微分的MLLM。

视频编码器 作者采用了预训练的LanguageBind视频编码器作为作者固定的视觉基础网络,该编码器基于ViT-B/32视觉 Transformer。
在这里插入图片描述

如图4所示,对于给定的输入视频帧序列 V = { v ′ , v , . . . } ∈ R 3 × k × 224 × 224 V=\{v', v,...\} \in \mathbb{R}^{3 \times k \times 224 \times 224} V={v,v,...}R3×k×224×224,作者首先将视频分割成多个时间序列,每个序列包含在不同帧中具有相同空间位置的块。然后这些块通过一个线性投影进行转换,以便视觉Transformer输出视频嵌入 z n ∈ R 2048 × 1024 z_n \in \mathbb{R}^{2048 \times 1024} znR2048×1024。视频编码器通过视频-语言对比学习进行预训练(即CLIP4clip),而没有进一步的微调。

跨模态投影器然后,作者利用一个双层多层感知机(MLP)来投影并校准编码的视频嵌入 z n z_n zn与语言标记嵌入 z ∈ R 2048 × 4096 z \in \mathbb{R}^{2048 \times 4096} zR2048×4096
f 1 ( z v o ) = GELU ( W ⋅ GELU ( W ⋅ z v o ) ) f_1(z_{vo}) = \text{GELU}(W \cdot \text{GELU}(W \cdot z_{vo})) f1(zvo)=GELU(WGELU(Wzvo))
特别是,投影器 f 1 f_1 f1的形式如公式(1)所示,其中作者使用GELU作为激活函数。作者采用两阶段训练策略来训练投影器,具体细节在第三节B中描述。

大型语言模型Backbone网络最后,LLM(大型语言模型)接收对齐的视频嵌入 z z z和文本上下文信息以及任务说明的语言嵌入 z z z来预测文本动作解释和数值控制信号。作者采用Vicuna 1.5 7B,这是基于LLaMA2进行了指令调优的模型作为作者的LLM Backbone网络。

对于仅解码器的LLM,在长度为 N N N的多模态上下文前缀 z 1 : n = [ z v , z ] z_{1:n} = [z_v,z] z1:n=[zv,z]条件下,输出的联合概率 x n + 1 : L x_{n+1:L} xn+1:L如公式(2)所示,其中 P P P是基于Transformer的LLM Backbone网络,由参数 Θ \Theta Θ表征。
P ( n + 1 : L ∣ z 1 : n ) = 1 n + 1 ∏ i = 1 n + 1 P ( x i ∣ x 1 : i − 1 , z 1 : n ) P(n+1:L|z_{1:n}) = \frac{1}{n+1} \prod_{i=1}^{n+1} P(x_i | x_{1:i-1},z_{1:n}) P(n+1:Lz1:n)=n+11i=1n+1P(xix1:i1,z1:n)
每个输出标记 x x x然后基于之前的输出和上下文自动回归地采样,并最终通过文本去标记化器解码到语言空间。

这篇关于RAG-Driver: 多模态大语言模型中具有检索增强上下文学习的通用驱动解释的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/946675

相关文章

【半夜学习MySQL】内置函数(含日期、字符串、数学等函数常用用法介绍及示例详解)

🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。 🎯每天努力一点点,技术变化看得见 文章目录 日期函数字符串函数数学函数其他函数 日期函数 函数名称描述current_date()当前日期current_time()当前时间current_time()当前时间戳date(datetime)返回datetime参数的日期date_add(dat

智能文档处理:解析文档场景下多模态大模型的应用与研究前沿

解析文档场景下多模态大模型的应用与研究前沿 一、TextIn 文档解析技术1. 现有大模型文档解析问题2. 文档解析技术背景3. TextIn 文档解析技术架构4. 版面分析关键技术 Layout-engine 二、TextIn 文本向量化技术三、TextIn.com Text Intelligence 一、TextIn 文档解析技术   hello,大家好我是恒川,今

人工智能领域向量化技术加速多模态大模型训练与应用

目录 前言1、TextIn文档解析技术1.1、文档解析技术1.2、目前存在的问题1.2.1、不规则的文档信息示例 1.3、合合信息的文档解析1.3.1、合合信息的TextIn文档解析技术架构1.3.2、版面分析关键技术 Layout-engine1.3.3、文档树提取关键技术 Catalog-engine1.3.4、双栏1.3.5、非对称双栏1.3.6、双栏+表格1.3.7、无线表格1.3.

C语言宏的高阶用法

关于"#和##" 在C语言的宏中,#的功能是将其后面的宏参数进行字符串化操作(Stringfication),简单说就是在对它所引用的宏变量通过替换后在其左右各加上一个双引号。比如下面代码中的宏: #define WARN_IF(EXP)     \     do{ if (EXP)     \             fprintf(stderr, "Warning: " #EXP "\n"

C语言的指针 指针常量 只读 多维数组的指针

带C语言实验课,又复习了一边,指针老朋友 void a; //错,C语言变量必须指定类型以表示需要多大的存储空间,以及如何解释该存储空间的二进制数据。void 没有说多大,所以不行。 地址是内存单元的编号,以字节为单位。存放地址的叫指针。指针分两种:指针变量、指针常量。 int a,b; int * p = &a; //p是指针变量,因为p的值是可以被改变的,改成别的地址值 p=&b; int

RustGUI学习(iced/iced_aw)之扩展小部件(十八):如何使用badge部件来凸显UI元素?

前言 本专栏是学习Rust的GUI库iced的合集,将介绍iced涉及的各个小部件分别介绍,最后会汇总为一个总的程序。 iced是RustGUI中比较强大的一个,目前处于发展中(即版本可能会改变),本专栏基于版本0.12.1. 概述 这是本专栏的第十八篇,主要讲述badge标记部件的使用,会结合实例来说明。 系列博客链接: 1、RustGUI学习(iced)之小部件(一):如何使用按钮butto

力扣数据库题库学习(5.15日)--180. 连续出现的数字

180. 连续出现的数字 问题链接👍 思路 要解决这个问题,我们可以使用MySQL的窗口函数来找出至少连续出现三次的数字。具体方法是使用**窗口函数LAG()**来比较当前行的数字与前两行的数字,如果它们相同,就说明该数字连续出现了三次。 解答 具体的sql语句如下: SELECT DISTINCT num AS ConsecutiveNumsFROM (SELECTnum,LAG

学习MySQL(四):记录的增删改查

记录的增、删、改 增 -- 插入一条数据INSERT INTO 表名(字段 1,字段2,字段3) VALUES(值 1,值2,值3) INSERT INTO 表名 VALUES(值 1,值2,值3)-- 插入多条数据INSERT INTO 表名(字段 1,字段2,字段3) VALUES(值 1,值2,值3),(值4,值5,值6)··· INSERT INTO 表名 VALUES(

Java | 增强for底层工作机制

✍🏼作者:周棋洛,bilidown开发者。 ♉星座:金牛座 🏠主页:我的个人网站 🌐关键:Java 增强for 工作机制 目录 引言增强for循环语法增强for工作机制探究简单总结1.对于实现了Iterable接口的集合2.对于数组个人理解 彩蛋:forEach方法 引言 Java中的增强for循环(也称为for-each循环)是对集合(如数组,Iterabl

OpenAI 推出 GPT-4o:实现多模态 AI 交互

一、前言 OpenAI 推出了其最新的 AI 模型——GPT-4o,此次发布的并非 GPT-4.5 或 GPT-5,而是一款全新的“全模态模型(Omnimodel)”。这是一个将文本、语音和视觉能力集成到单一无缝 AI 体验中的突破性发展。 GPT-4o 于 2024 年 5 月 14 日发布,其中的 “o” 代表 “omni”,预示着人机交互方式的一次重大变革,使得交互过程更加自然和直观。