来自华为云的最新多模态RAG综述,非常全面,对多模态RAG感兴趣的朋友强烈推荐!
复制论文:A Survey on Multimodal Retrieval-Augmented Generation 地址:https://arxiv.org/pdf/2504.08748
1、引言
传统的RAG系统主要依赖于文本数据,通过检索与查询语义相似的相关文档片段,并将其与查询结合,形成增强的输入,供LLMs生成回答。这种方法使得LLMs能够在推理阶段动态整合最新信息,从而提高回答的准确性和可靠性。
尽管传统的RAG系统在减少幻觉方面取得了进展,但它们仅依赖于文本数据,限制了其利用丰富多模态数据(如文本、图像、视频等)的能力。在现实世界中,人类在处理信息时通常会综合考虑多种模态的数据,例如在浏览网页时结合文本、图像和视频来更好地理解内容。
MRAG通过扩展RAG框架,将多模态数据(包括文本、图像、音频、视频等)纳入检索和生成过程,从而更全面地利用多模态知识。这种方法不仅能够提高问答系统的质量,还能显著减少幻觉现象,因为它将回答基于更丰富的多模态事实知识。然而,MRAG的研究仍处于发展阶段,需要解决多模态数据检索和生成中的技术挑战。
本文系统地回顾MRAG的研究现状,从四个关键方面进行分析:核心技术与技术、数据集、评估方法和指标,以及当前的局限性。通过这些分析,为MRAG的有效构建和改进提供详细的指导,并提出未来研究方向,鼓励进一步探索这一有前景的范式。
2、MRAG概览
MRAG的发展可以分为三个阶段,每个阶段都有其特点和改进。
MRAG 1.0
MRAG的初始阶段,通常被称为“伪多模态”阶段。在这个阶段,系统主要通过将多模态数据转换为文本描述,然后利用传统的RAG系统进行检索和生成。
MRAG1.0架构由三个关键组件组成:文档解析与索引(Document Parsing and Indexing)、检索(Retrieval)和生成(Generation)。
- 文档解析与索引:该组件负责处理Word、Excel、PDF和HTML等格式的多模态文档。它使用光学字符识别(OCR)或特定格式的解析技术提取文本内容,随后利用文档布局检测模型将文档分割为结构化元素,包括标题、段落、图像、视频、表格和页脚等。对于文本内容,采用分块策略对语义连贯的段落进行分割或分组;对于多模态数据,则使用专用模型生成描述图像、视频和其他非文本元素的描述。这些分块和描述通过嵌入模型编码为向量表示,并存储在向量数据库中。
- 检索:该组件通过使用与索引阶段相同的嵌入模型将用户查询编码为向量表示,进而处理用户查询。查询向量随后用于从向量数据库中检索前k个最相关的分块和描述,通常采用余弦相似度作为相关性度量。来自分块和描述的重复或重叠信息会被合并,以创建一组统一的外部知识,随后将其整合到生成阶段的提示(prompt)中。
- 生成:在生成阶段,MRAG系统将用户的查询和检索到的文档合成为连贯的提示。大型语言模型(LLM)通过将其参数化知识与检索到的外部信息相结合来生成响应。
尽管MRAG1.0取得了初步成功,但它仍存在一些显著缺陷,制约了其有效性:
- 文档解析繁琐:将多模态数据转换为文本描述为系统引入了显著的复杂性。这需要针对不同数据模态使用不同的模型,增加了计算开销和系统复杂性。此外,转换过程经常导致多模态信息丢失。例如,图像描述通常仅提供粗粒度的描述,无法捕捉对准确检索和生成至关重要的细粒度细节。
- 检索瓶颈:尽管文本向量检索技术已较为成熟,但MRAG1.0在实现高召回准确性方面仍面临挑战。与传统RAG类似,用于文本分割的分块策略常常会分割关键词,导致部分内容无法检索。此外,将多模态数据转换为文本虽然实现了非文本数据的检索,但也引入了额外的信息丢失。这些问题共同形成了瓶颈,限制了系统检索全面且准确信息的能力。
- 生成挑战:与传统RAG不同,MRAG1.0不仅需要处理文本分块,还需要处理图像描述和其他多模态数据。如何有效地将这些多样化元素组织为连贯的提示,同时最小化冗余并保留相关信息,是一项重大挑战。此外,“垃圾进,垃圾出”(Garbage In, Garbage Out, GIGO)原则突显了LLM对输入质量的敏感性。解析和检索过程中的信息丢失会增加引入无关数据的风险,从而损害生成响应的鲁棒性和可靠性。
这种方法虽然能够处理多模态数据,但在转换过程中会丢失一些模态特有的信息,限制了系统的性能。为了减少信息丢失,研究人员开始探索更先进的技术,如使用专门的模型来提取多模态数据的特征,并将其与文本数据结合,以提高检索和生成的准确性。
MRAG 2.0
与前一版本MRAG1.0不同,MRAG 2.0阶段引入了多模态数据的直接处理,不仅支持多模态输入的用户查询,还在知识库中保留了原始多模态数据。这一阶段的系统能够直接处理图像、视频等多模态数据,并利用这些数据进行检索和生成。例如,系统可以通过图像识别技术提取图像中的关键信息,或者通过视频分析技术提取视频中的重要片段,从而为生成过程提供更丰富的上下文信息。
MRAG2.0架构引入了几项关键优化:
- MLLM生成描述:MLLM的表征能力显著提升,尤其是在描述生成任务中。MRAG2.0利用单一统一的MLLM(或多个MLLM)从多模态文档中提取描述。这种方法取代了传统上为不同模态使用单独模型的范式,简化了文档解析模块并降低了其复杂性。
- 多模态检索:MRAG2.0通过保留原始多模态数据并支持跨模态检索,增强了其检索模块以支持多模态用户输入。这使得基于文本的查询能够直接检索相关的多模态数据,将基于描述的召回与跨模态搜索能力相结合。这种双重检索方法丰富了下游任务的数据源,同时最小化了数据丢失,提高了下游任务的准确性和鲁棒性。
- 多模态生成:为了充分利用原始多模态数据,MRAG2.0的生成模块通过整合MLLM进行了增强,使用户查询和检索结果能够合成为连贯的提示。当检索结果准确且输入包含原始多模态数据时,生成模块能够缓解通常与模态转换相关的信息丢失。这一增强显著提升了问答(QA)任务的准确性,尤其是在涉及相互关联的多模态数据的场景中。
尽管取得了这些进展,MRAG2.0仍面临几项新兴挑战:
- 整合多模态数据输入可能会降低传统文本查询描述的准确性。此外,当前的多模态检索能力仍逊色于基于文本的检索,可能限制检索模块的整体准确性。
- 数据格式的多样性为生成模块带来了新的挑战。如何高效组织这些多样化的数据形式并明确定义生成的输入,是需要进一步探索和优先解决的关键挑战。
MRAG 3.0
MRAG 3.0阶段进一步优化了多模态数据的处理和利用,引入了结构和功能上的创新,从多个维度提升了其能力。这一新范式的转变具有三个关键改进:
- 增强的文档解析:在解析过程中保留文档页面截图,最小化数据库存储中的信息丢失。
- 真正的端到端多模态:尽管早期版本强调知识库构建和系统输入中的多模态能力,但MRAG3.0引入了多模态输出能力,完成了端到端多模态框架。
- 场景扩展:超越传统上主要应用于依赖知识库的视觉问答(VQA)场景的理解能力,新范式通过模块调整和补充将理解与生成能力相结合,显著拓宽了系统的适用性。
MRAG3.0适用场景
检索增强场景:该场景针对LLM或MLLM单独无法充分回答用户查询的情况。MRAG3.0从外部知识库检索相关内容以提供准确答案,利用其增强的检索能力。
VQA场景:该场景作为评估MLLM基本能力的关键测试,模型直接从包含文本和多模态查询的用户输入生成响应,无需检索。新的MRAG范式引入了搜索规划模块,支持动态路由和检索,以最小化不必要的搜索和无关信息的引入。
多模态生成场景:这主要涉及多模态生成任务,例如文本到图像或文本到视频生成。虽然原始MRAG框架主要解决理解任务,但新的MRAG范式通过修改多个生成模块扩展了其能力,将理解和生成任务的解决方案统一在单一框架中。在集成后,生成场景通过检索增强(RA)进一步优化,显著提升了生成任务的整体性能。
融合多模态输出场景:该场景与之前提到的场景不同,但代表了新范式的一个重要方面,值得单独讨论。在传统设置中,最终输出通常是纯文本响应。然而,新范式通过增强生成模块,生成整合了多种模态的单一响应(例如结合文本、图像或视频)。这可以进一步分为三个子场景:
MRAG3.0改进的模块
- 文档解析与索引:为了最小化信息丢失并提升文档检索的准确性,文档解析与索引模块通过创新技术进行了升级。这种新方法在解析过程中保留了文档截图,解决了先前方法中固有的信息丢失问题。通过使用微调的MLLM,系统将这些文档截图向量化并建立索引,从而能够基于用户查询高效检索相关文档截图。这一优化不仅提升了知识库的可靠性,还为先进的多模态检索能力铺平了道路。
- 生成:此前,生成模块仅依赖具有理解能力的大型模型。新范式整合了具有生成能力的大型模型,在系统架构层面统一了推理和生成场景。此外,通过引入多模态输出增强子模块,它实现了从基于文本的答案向混合多模态答案的转变。实现方法可分为两种类型:基于原生MLLM的输出:在此任务中,多模态数据的生成完全由模型驱动,无需外部数据源补充模型响应。最直接的方法是使用统一的MLLM一步生成所需的多模态输出,确保在统一框架内无缝整合文本、图像或音频等多样化数据类型。增强的多模态输出:此方法利用预先存在的多模态数据增强文本响应。在生成文本后,系统执行三个顺序子任务以创建最终的多模态输出:
- 位置识别:系统确定文本中插入多模态元素(如图像、视频、图表)的最佳位置,确保多模态数据在上下文上与内容互补或澄清。
- 候选集检索:从外部源(如网络或知识库)检索相关的多模态数据,通过查询和筛选最匹配文本上下文和意图的潜在候选。
- 匹配与插入:系统基于相关性、质量和连贯性从检索到的候选集中选择最合适的多模态元素,随后将其无缝整合到识别的位置中,生成一个连贯且丰富的多模态答案。
MRAG3.0新增模块
多模态搜索规划:该模块通过专注于两项核心任务——检索分类和查询重构,解决了MRAG系统中的关键决策挑战。给定一个多模态查询,其中 q 是文本部分,v 是视觉部分,该模块旨在优化信息获取。具体而言,检索分类涉及确定多模态查询的相关性和类别,以引导搜索朝向最合适的数据源。查询重构则通过整合文本和视觉线索来优化查询,以提高检索的准确性和全面性。通过结合这些任务,该模块增强了系统处理复杂多模态输入的能力,确保更有效和上下文相关的信息检索。
- 检索分类:该任务根据当前查询和可选的检索历史文档,从动作空间
中确定最优检索策略
。决策过程公式化为:
其中检索控制模块
通过考虑查询特征、MLLM的固有能力以及(若可用)先前迭代中检索到的文档 𝒟 来评估检索动作的效用。
- 查询重构:在需要外部信息(
)的场景中,查询重构任务通过整合视觉信息和(若适用)先前迭代的检索文档,生成增强查询
。此过程可公式化为:
其中
表示查询增强函数,利用视觉线索和(若可用)历史检索结果来优化查询的精确性。
这种双任务方法通过最小化不必要的检索同时最大化检索内容的相关性来优化信息获取。结构化的规划框架显著提升了MRAG系统获取全面且准确信息的能力,确保计算效率。
MRAG3.0相比于MRAG2.0来说,更是一个强大的生成系统,在多模态检索的基础上,生成更有效、更准确、多模态的内容。
3、MRAG组件
多模态文档解析和索引
多模态文档解析与索引是MRAG系统的基础,负责将多模态文档(如包含文本、图像、表格等的文档)解析为可检索的格式,并建立索引以便快速检索。多模态知识可以源自知识库中的不同粒度级别,包括单个文档内的局部片段、文档内的跨片段引用,甚至是跨文档的知识集合。因此,如何有效地解析、索引和组织外部知识库中的多模态文档,将在很大程度上影响模型对目标多模态知识的利用,从而决定端到端的性能。
多模态文档可以分为以下几类:
- 非结构化多模态数据:指没有特定格式或模式的各种多模态信息,如文本、图像、视频和音频。
- 半结构化多模态数据:主要指缺乏传统关系数据库严格模式但仍保留某些组织特征的多模态信息,如PDF、HTML、XML和JSON。在此类文档中,基于规则的方法可以直接提取结构特征。例如,在HTML中,可以使用<title>标签识别标题。处理这些文档时的一个常见挑战是,它们对人类易于理解的内在结构在解析过程中经常丢失,导致信息损失。
- 结构化多模态数据:指按照预定义格式排列的多模态信息,通常遵循固定模式,如关系数据库和知识图谱。处理此类数据的主要挑战是制定与自然语言相对应的准确结构化查询语言。
在MRAG场景中,主要关注点是对非结构化和半结构化文档的处理和利用。MRAG中的文档解析方法大致分为两类:基于提取的方法和基于表示的方法。
基于提取的方法
基于提取的方法(Extraction-based Methods)是多模态文档解析与索引中的一个重要技术,主要用于从多模态文档中提取关键信息,并将其转换为可检索的格式。
- 纯文本提取纯文本提取是多模态文档解析中的一个重要步骤,通过直接解析(。)和基于OCR的方法,可以有效地提取文档中的文本内容。直接解析:对于半结构化文档(如PDF、XML、HTML),可以直接根据其结构规则进行解析。常用的解析工具PDF解析(pymupdf 和pdfminer等)、HTML提取(jsoup等)。这种方式无法提取多模态信息(如图像中的文本),且难以处理复杂的文档格式。此外,解析结果通常会丢失大量文档结构信息。OCR方法:包含三个主要阶段文本检测、文本识别和文本解析,能够提高文档解析的准确性和处理复杂文档的能力。但是这种方法存在不利于并行化、处理速度较慢、需要大量的计算资源、OCR流程中的错误会向下传播,影响整体性能等关键问题。基于Transformer架构的改进方法:通过自注意力机制、并行计算和端到端训练,显著提高了文档解析的效率和准确性,为多模态文档解析提供了更强大的技术支持。经典方法有:LayoutLM、LayoutLMv2、LayoutLMv3、DocFormer。
- 多模态数据提取多模态提取是指在文档解析过程中保留多模态数据的原始格式,以便下游任务能够根据需要自主决定后续操作。这种方法不仅提取文本信息,还保留图像、表格、音频等其他模态的数据,从而为后续的处理和分析提供更丰富的信息。基于规则的方法:对于半结构化文档(如HTML、XML),可以使用基于规则的方法提取多模态数据。通过特定标签识别相关多模态数据,例如使用HTML中的<img>标签提取图像。但是这种方法与纯文本提取类似,在处理复杂文档格式时存在局限性,可能无法准确提取所有相关数据。基于OCR的多模态文档解析:通过OCR技术提取多模态文档中的文本和其他模态数据。包含页面分割、文本识别、文本解析三个主要阶段,能够提取多模态数据,为后续任务提供更丰富的信息。但是处理复杂文档时可能面临挑战,如OCR识别错误、布局分析不准确等。
基于表示的方法
尽管基于提取的方法已被广泛采用,但它们存在一些固有局限性:
- 解析过程耗时且多步骤:需要针对不同文档类型使用不同模型,增加了处理时间和复杂性。
- 关键信息丢失:在提取过程中,文档的结构和布局信息可能丢失,影响后续任务的准确性。
- 解析错误传播:提取过程中的错误会传播到下游任务,影响整体性能。
为了克服这些局限性,基于表示的方法应运而生。这种方法直接使用文档的原始截图作为元数据索引的主要数据,通过统一的编码框架处理文档截图及其子图像,从而同时捕获全局和局部信息。
- DSE(Document Semantic Embedding):通过统一编码框架处理文档截图及其子图像,同时捕获全局和局部信息。受ColBERT启发,引入延迟交互机制以提高召回效率。但是,页面级文档分割可能阻碍模型捕捉完整上下文和部分间关系。
- 整体文档表示方法:将大型文档分割为MLLM(多模态大型语言模型)令牌限制内的段落,以捕捉完整的上下文和部分间关系。
实证研究表明,多模态与纯文本检索之间存在性能差距。使用原始多模态数据与仅使用文本或组合模态时,效果存在显著差异。这表明,直接使用文档截图作为主要数据可以显著提高检索的准确性和相关性。因此,出现了一种新范式:利用OCR进行文本索引,使用文档截图进行多模态索引,并行执行文本和视觉RAG,最后通过模态整合融合两个流程的结果生成最终答案。
多模式搜索规划
多模态搜索规划指的是MRAG系统采用的策略,旨在有效地从多模态中检索并整合信息以应对复杂查询。根据规划方式的不同,可以大致分为两种主要方法:固定规划和自适应规划。
固定规划(Fixed Planning)
固定规划策略采用预定义的处理流程,缺乏适应多样化查询需求的灵活性。这些方法可以根据检索模态的选择进行分类:
- 单模态检索规划(Single-Modal Retrieval Planning):单模态检索规划专注于单一模态进行检索。文本中心规划(Text-Centric Planning):优先考虑文本检索,将多模态查询转换为纯文本格式。这种策略将多模态问题简化为传统的基于文本的RAG流程,利用了传统IR系统中成熟的多阶段查询处理技术。然而,这种方法常常会在用户原始意图与生成的文本描述之间引入语义鸿沟,将视觉查询转换为文本可能无法精确捕捉用户特定的信息需求,导致检索到与查询焦点不符的无关或噪声文档。图像中心规划(Image-Centric Planning):不考虑查询特性,始终依赖基于图像的检索。例如Wiki-LLaVA等系统采用这种方式,对多模态查询持续触发从知识库中进行图像检索。这种方法确保了视觉信息的保留,但有研究表明,强制性的图像检索可能会适得其反,特别是当文本信息已经足够或者检索到的图像引入了误导性视觉上下文时,会损害MLLM的性能。
- 多模态检索规划(Multimodal Retrieval Planning)与单模态方法不同,多模态检索规划通过固定的处理流程整合文本和视觉知识源。例如MMSearch采用严格的多模态规划流程,要求对所有包含图像的查询进行Google Lens图像搜索。随后进入“重新查询”阶段,LLM利用原始查询、图像和Google Lens结果重新制定搜索查询。但是,不灵活的设计常常导致不必要的图像搜索,当视觉信息与查询无关时会增加计算开销。
固定规划的局限性
- 适应性不足:固定规划策略难以适应现实世界中查询的多样性特征,最优检索模态往往取决于特定的信息需求。
- 冗余信息:强制性的检索操作常常会引入冗余或无关信息,特别是当某些知识类型对解决查询并非必需时。
- 计算开销:产生显著的计算开销,尤其是在处理大规模知识库的多模态流程中。
- 不必要的检索:并非所有查询都需要外部知识检索,当前的MRAG系统经常不加区分地执行检索,导致不必要的计算成本和响应生成中潜在的噪声干扰。
固定流程方法中的两个关键局限:
- 非自适应检索查询(Non-Adaptive Retrieval Queries):无法根据演化上下文或中间结果调整的僵化检索策略。
- 过载检索查询(Overloaded Retrieval Queries):将视觉内容描述与输入问题拼接成单一查询,导致模糊检索和无关知识。
自适应规划(Adaptive Planning)
自适应规划策略能够根据查询特征和中间结果动态调整检索策略,以提高检索的效率和准确性。
- OmniSearch:引入了用于多模态检索的自适应规划智能体,模拟人类问题解决行为。不依赖固定流程,而是动态将复杂多模态问题分解为带有检索动作的子问题链。在每个步骤中,智能体根据问题解决状态和检索内容调整下一步动作,从而实现对检索信息的更深理解和检索策略的自适应优化。
- CogPlanner:通过迭代优化查询和选择检索策略,支持并行和顺序建模方法。
多模态检索
检索器(RETRIEVER)
检索器是多模态检索系统的核心组件,负责从大规模外部知识库中检索出与用户查询语义相关的文档。检索器的性能直接影响到整个MRAG系统的下游任务表现。根据架构的不同,检索器可以分为单/双流结构(Single/Dual-stream Structure)和生成式结构(Generative Structure)。
- 单 / 双流结构:该结构通过不同方式处理多模态数据的融合与检索。单流结构在统一语义空间中对图像 - 文本关系进行建模,能捕捉细粒度交互,但计算成本高、推理速度慢,限制了在大规模多模态检索任务中的应用;双流结构则使用单独的视觉和语言流,借助对比学习在共享语义空间中对齐全局特征,效率较高,但在处理多模态交互和特征对齐时存在困难,尤其是数据集字幕简短时问题更为突出。
- 单模态检索单模态检索专注于文本和图像检索。文本检索使用自然语言处理技术从数据集中提取相关信息,识别上下文对齐的文档。图像检索则采用计算机视觉算法和特征提取方法将视觉数据编码为高维向量进行相似度匹配。文本检索:文本作为信息检索的核心部分,文本检索从大型语料库或网络资源中识别与用户查询相关的文本信息,广泛应用于问答、对话系统、网络搜索和检索增强生成系统等下游应用。它主要分为稀疏检索和密集检索。稀疏检索早期基于 “词袋” 假设,用向量空间模型表示文档和查询,通过 tf - idf、BM25 等方法加权,并借助倒排索引提高效率,但存在假设词项独立且依赖词汇匹配,难以捕捉上下文词项重要性或词项间语义关系,无法理解更深层的文本含义和查询-文档间的上下文相关性等问题。近年来,预训练语言模型的融入推动了其发展,如通过上下文嵌入和扩展词表等技术改进。稀疏检索模型在跨领域迁移、检索效率和整体效果间实现了最优平衡。密集检索则利用深度学习和预训练语言模型,采用低维欧几里得空间中的密集向量嵌入来建模语义关系,通过欧几里得距离或内积衡量相关性,在多种任务中表现出色。其模型架构包括单向量和多向量表示,训练方法主要有负采样和预训练。图像检索:利用计算机视觉算法和特征提取方法,将视觉数据编码为高维向量进行相似性匹配。然而,单模态检索本质上受限于无法捕捉跨模态关系,这就凸显了整合多模态检索策略的重要性,以桥接文本和视觉语义,实现更全面的信息检索和生成。
- 跨模态检索跨模态检索支持使用一种模态(如图像)的查询识别另一种模态(如文本)的相关数据,通过促进跨多样化模态(包括文本、图像、音频和视频)的信息检索和生成,增强MRAG系统。文本 - 图像检索:旨在通过多模态数据共现或手动注释来匹配图像和相应的文本查询,捕捉语义相关性。现有方法可分为基于 CNN/RNN 的方法、基于 Transformer 的技术和基于视觉语言预训练(VLP)模型的方法。早期基于 CNN/RNN 的方法通过分别提取各模态特征并构建正负样本来强制跨模态约束;基于 Transformer 的方法利用多头自注意力机制编码多模态关系,优化模态特定编码器;基于 VLP 模型的方法则借助大规模视觉 - 语言数据集进行联合预训练,显著提升了跨模态检索性能。文本 - 视频检索:涉及将文本描述与相应视频匹配,需要对视频的时空信息进行有效建模,以实现文本描述与视频的准确匹配,比文本 - 图像检索更为复杂。早期基于 CNN/RNN 的方法将视频和文本编码到共享潜在空间进行相似度测量,后续发展的方法引入了更多模态和自注意力机制等。基于 VLP 的模型利用预训练模型,如 CLIP,来增强文本 - 视频任务的性能。文本 - 音频检索:涉及匹配文本查询与相应音频内容,需要对齐离散文本信息与连续音频信号中的动态声学模式。挑战在于桥接离散文本与连续音频信号间的鸿沟。早期基于 CNN/RNN 的方法分别编码文本和音频并在共享空间对齐,基于 Transformer 的方法则利用多头注意力机制和微调来增强跨模态交互。统一模态检索:旨在使用统一的模型架构(如基于 Transformer 的预训练语言模型)处理多种混合模态数据,将所有模态编码到共享特征空间,实现任意两种混合模态数据之间的高效跨模态检索。当前方法主要利用预训练模型,如 CLIP、BLIP 等进行多模态嵌入。
2. 生成结构:传统的信息检索(IR)方法依赖相似性匹配返回排序后的文档列表,这一范式在信息获取领域长期占据主导地位。然而,随着预训练语言模型的出现,生成式检索(GR)作为一种新兴范式近年来受到越来越多的关注。GR主要由两个基本组成部分构成:模型训练和文档标识符。
- 模型训练:此部分的核心目标是训练生成式模型,使其具备对文档进行有效索引和检索的能力,同时增强模型从文档语料库中记忆信息的容量。通常采用序列到序列(seq2seq)的训练方式,在这个过程中,模型学习将输入的查询映射到相应的 Document Identifiers(文档标识符,简称 DocIDs)。通过不断优化训练过程,模型能够更好地理解查询和文档之间的语义关系,进而提高检索的准确性。例如,在处理大量文本数据时,模型可以通过学习海量的查询 - 文档对,逐渐掌握如何准确地根据查询找到与之匹配的文档标识符。
- 文档标识符(DocIDs):这是生成式检索模型的重要输出,是文档在整个语料库中的唯一表示。DocIDs 的质量对模型的性能起着至关重要的作用,因为它直接影响模型对文档信息的记忆和检索效果。有效的 DocIDs 通常采用密集的低维嵌入或结构化的表示形式,这样可以更好地捕捉文档的核心内容和上下文信息,使模型能够更准确地区分不同的文档,从而提升检索性能。比如,通过将文档的关键信息编码为低维向量作为 DocIDs,模型在检索时可以更高效地比对和筛选出相关文档。
文本模态检索:在基于生成式语言模型的文本检索中,围绕 DocIDs 的应用和优化形成了不同的方法,可分为静态文档标识符方法和可学习文档标识符方法。静态 DocID-based 方法依赖于预定义的固定文档标识符,例如 GENRE 通过约束束搜索生成实体名称作为 DocIDs,DSI 则引入了多种格式的数字 DocIDs 。然而,这些方法大多依赖静态 DocIDs,无法针对检索任务进行优化,在捕捉文档语义和关系方面存在局限性,进而影响检索性能。为解决这些问题,出现了 Learnable DocID-based 方法,该方法在训练过程中优化文档表示,使 DocIDs 能够更好地捕捉文档语义,提升检索效果。像 GenRet 运用离散自动编码器将文档编码为紧凑的 DocIDs 以最小化重构误差,MINDER 利用多视图标识符增强文档表示。
跨模态检索:在跨模态检索场景中,多模态大语言模型(MLLMs)试图在其参数中记忆和检索多模态内容,例如图像和视频。IRGen 利用 seq2seq 模型从查询图像中预测离散视觉令牌(图像标识符),其关键在于语义图像标记器,它能够将全局特征编码为离散视觉令牌,实现端到端的可微搜索,提升检索的准确性和效率。GeMKR 通过生成式多模态知识检索框架,将 LLMs 与视觉 - 文本特征相结合,先利用对象感知前缀调整技术引导多粒度视觉学习,使视觉特征与 LLMs 的文本特征空间对齐,然后分两步进行检索:先生成与查询相关的知识线索,再基于这些线索检索文档 。
重排序器(RERANKER)
Reranker(重排器)作为多模态检索中关键的第二阶段组件,其主要功能是对第一阶段检索器初步检索出的多模态文档列表进行重新排序,通过运用先进的相关性评分机制,如交叉注意力模型,增强查询与文档之间的上下文交互,进而提升检索结果的质量和相关性。依据对大模型(包括 LLMs 和 MLLMs)的利用方式,现有的重排方法主要可分为两类:
- 以微调为重排器(fine-tuning-as-reranker):此范式通过在特定领域的数据集上进行有监督的微调,使预训练语言模型(PLMs)适应特定领域的重排任务,解决其本身缺乏排名意识以及无法有效衡量查询与文档相关性的问题。文本模态重排:依据大模型架构的发展,可进一步细分为encoder-only, encoder-decoder和decoder-only三类。跨模型重排:多模态重排利用多模态问题和多模态知识项来获取相关性分数,在各种知识密集型任务中具有重要意义。例如,Wen 等人通过微调预训练的 MLLM,促进问题和知识项之间的跨项交互,重排序器与答案生成器在相同的数据集上训练,通过检查候选答案是否出现在知识文本中实现远程监督;RagVL RETRIEVAL引入新颖框架,包含知识增强的重排序和噪声注入训练,通过简单有效的模板对MLLM进行指令调优以增强其排序能力,使其能够作为重排序器准确过滤前k个检索图像。这些方法利用大模型的表征能力,并针对特定任务的相关性信号进行优化,通常能实现较高的重排准确率,但需要大量的计算资源和标记训练数据,从而导致成本增加。
- encoder-only 重排器:encoder-only 重排器通过对预训练语言模型(如 BERT)进行微调,来实现对文档的精确相关性估计。在操作过程中,它将查询 - 文档对格式化为查询 - 文档序列,利用模型对该序列进行处理,然后从 “[CLS]” 标记的表示中通过线性层得出相关性分数。这种策略基于已经在大量文本数据上预训练的模型,能够利用模型学习到的语言知识和语义表示,对文档相关性进行较为准确的判断。由于其结构相对简单,在计算资源的消耗上相对较少,适合处理大规模的文档重排任务。但是encoder-only 重排器主要依赖于预训练模型的能力,在面对一些复杂的语义理解和推理任务时,可能存在一定的局限性。
- encoder-decoder 重排器:encoder-decoder 重排器将文档排名任务构建为一个生成任务。以 T5 模型为例,它通过微调来生成用于查询 - 文档对的分类标记(如 “true” 或 “false”),这些标记的 logits 被用于推导相关性分数。通过生成任务的方式,encoder-decoder 重排器能够更好地捕捉查询和文档之间的复杂语义关系,在处理需要深入理解语义和推理的任务时,表现出比 encoder-only 重排器更强的能力。它可以利用解码器生成的信息,对文档的相关性进行更全面的评估。由于涉及到生成任务,其计算复杂度相对较高,需要更多的计算资源和时间来完成重排任务。同时,生成任务的训练和优化也相对复杂,需要更多的标注数据来支持。
- decoder-only 重排器:decoder-only 重排器主要基于像 LLaMA 这样的模型进行微调。在具体操作中,将查询 - 文档对格式化为提示,然后利用模型最后一个标记的表示来进行相关性评分。decoder-only 重排器在处理一些需要灵活生成和推理的任务时具有优势,因为它的架构设计更适合生成式的任务。在面对一些需要根据查询动态调整重排策略的场景中,能够表现出较好的适应性。与 encoder-decoder 重排器类似,decoder-only 重排器的训练和计算成本也相对较高。而且,由于其依赖于特定的模型架构,在模型的选择和适配性上可能存在一定的限制,需要针对不同的任务和数据集进行精细的调整。
- 以提示为重排器(prompting-as-reranker):该范式以零样本或少样本的方式利用大模型,通过设计特定的提示,引导模型直接生成相关性分数或排名。这种方式充分利用了大模型固有的知识和推理能力,无需进行大量的微调,具有更高的灵活性和资源利用效率。研究人员探索利用提示让 LLMs 和 MLLMs 对多模态文档进行排名任务,提示策略一般可分为逐点(point-wise)、逐对(pair-wise)和列表式(list-wise)三种方法。这种范式充分利用了大模型固有的知识和推理能力,无需进行大量的微调,具有更高的灵活性和资源利用效率,尤其在数据和计算资源有限的场景中优势明显。然而,其有效性在很大程度上依赖于提示的质量和设计,以及模型将预训练知识泛化到特定任务需求的能力。如果提示设计不合理,可能导致重排结果不准确,并且不同模型对相同任务的重排结果可能存在差异 。
- 文本模型重排:在文本模态重排任务中,利用LLMs 的先进能力优化文本文档的排序。逐点方法:通过评估查询与单个文档之间的相关性进行重排,依据相关性分数对文档重新排序。例如,Zhuang 等人将细粒度的相关性标签集成到提示中,以更好地区分文档;MCRanker 通过多视角标准生成相关性分数,解决现有逐点重排器存在的偏差问题;UPR 使用零样本问题生成模型对检索到的段落重新评分。虽然这些方法有一定效果,但往往依赖手工制作的次优提示。为改进提示,Co - Prompt 引入离散提示优化方法,PaRaDe 提出基于难度选择上下文示例的方法,DemoRank 则通过依赖感知的示例重排器优化示例选择 。逐对方法:向 LLMs 展示查询和文档对,让其判断哪个文档更相关。PRP - AllPair 通过生成所有可能的文档对,分配离散的相关性判断,并聚合这些判断以得到每个文档的最终相关性分数;PRP - Graph 则通过使用判断生成概率和基于图的聚合来改进评分方式,还有一种后处理技术可优化 LLM 生成的标签 。列表式方法:直接将查询和文档纳入提示中,指示 LLMs 输出重排后的文档标识符。RankGPT 引入指令排列生成和滑动窗口策略来解决上下文长度限制问题;LRL 对候选文档的标识符进行重新排序。然而,这些方法存在性能对文档顺序敏感、滑动窗口策略限制每次迭代排名文档数量等挑战。为此,Tang 等人提出排列自一致性来减轻偏差,TourRank 引入锦标赛机制并行化重排,TDPart 采用自上而下的分区算法,FIRST 利用第一个生成标识符的输出 logits 直接获得候选文档的排名顺序 。
- 跨模型重排:基于提示的多模态重排器利用提示引导 MLLM 对项目进行重排。TIGeR 提出了一种利用多模态 LLMs 通过生成式检索方法进行零样本重排的框架,但该方法仅适用于纯文本查询检索任务;Lin 等人则扩展了这一范围,利用多模态 LLMs 处理各种多模态重排任务,支持文本、图像或文本 - 图像交错格式的查询和文档。
优化器(REFINER)
理论上,当检索和重排序后的上下文中包含更全面的任务相关知识时,大语言模型(LLMs)的性能会得到提升。然而,无限的输入长度会带来实际部署挑战:
(1)受限的上下文窗口:LLMs的输入长度在预训练阶段就已固定,超出限制的文本会被截断,导致上下文语义丢失;
(2)灾难性遗忘:缓存空间不足可能导致LLMs在处理长序列时遗忘先前学习的知识;
(3)推理速度下降。
因此,优化后的提示(prompt)对于提升LLM性能至关重要。
优化器是一个对检索和重排后的信息进行优化的关键组件,对提升大语言模型(LLMs)性能至关重要。优化器通过摘要提炼、知识蒸馏或上下文适配等处理任务,将内容压缩为更易消化和操作的格式,通过提取关键见解、消除冗余内容并使信息与查询上下文对齐,提升了检索数据的效用,使LLM能够生成更连贯、准确且符合上下文的响应。
提示优化可通过两种主要方法实现:硬提示方法(hard prompt methods)和软提示方法(soft prompt methods)。
- 硬提示优化器硬提示方法通过使用自然语言标记,过滤非必要或低信息量的内容,生成通用性强但流畅度较低的提示,适用于不同嵌入配置的LLMs。文本模型优化:在文本模态方面,硬提示优化器旨在提升 LLMs 的效率,其方法包括动态分配上下文示例、利用词汇和信息理论方法提取关键内容、基于上下文感知去除无关句子、采用粗细结合的方式压缩提示组件等。例如,DynaICL 通过元控制器根据输入复杂度和计算资源动态分配上下文示例;FILCO 利用词汇重叠等方法训练上下文过滤和生成模型;CPC 使用上下文感知编码器去除无关句子以保留语义完整性;LLMLingua 则通过小语言模型衡量标记信息性来压缩提示组件 。跨模型优化:在跨模型场景下,硬提示优化器聚焦于提升多模态大语言模型(MLLMs)的效率。例如,LLaVolta 通过减少视觉令牌数量并采用轻量级分阶段训练方案,在不影响性能的前提下提高训练和推理效率;PyramidDrop 通过在不同阶段丢弃一定比例的图像令牌来减少视觉冗余;DeCo 提出将压缩与抽象解耦的原则,在补丁级别压缩视觉令牌;MustDrop 在视觉编码、预填充和解码阶段分别采取不同策略来优化视觉令牌;G-Search 通过贪心搜索算法确定每层保留的最小视觉令牌数量;G-Prune 则基于图的方法进行无训练的视觉令牌修剪 。尽管硬提示可解释且透明,但其固有模糊性常阻碍意图的精确表达,限制其在多样化或复杂场景中的有效性。制作准确且 有效的硬提示需要大量人工努力,可能还需基于模型的优化。此外,即使是微小的硬提示变化也可能导致相同任务的LLM性能不一致。
- 软提示优化器软提示方法则将提示信息编码为连续表示,生成人类不可读但针对模型性能优化的潜在向量(特殊标记)。文本模型优化:软提示优化器将文本提示转换为向量,以实现更密集的表示,进而扩展上下文窗口并提高推理速度。早期主要是将系统提示内化,如 Askell 等人利用知识蒸馏使模型与人类价值观对齐,Choi 等人通过生成伪输入避免冗余推理计算。后续研究则侧重于压缩用户提示上下文,例如 Snell 等人将抽象指令等蒸馏到提示中,Sun 等人将排序技术内化用于零样本相关性任务,xRAG 通过即插即用投影仪集成压缩文档嵌入 。跨模型优化:在跨模型的应用中,软提示优化器致力于解决多模态推荐中的过拟合和信息不准确问题。例如,PromptMM 通过多模态知识蒸馏和提示调整来压缩模型,增强模型的鲁棒性;RACC 压缩和聚合检索到的知识,生成紧凑的键值(KV)缓存调制,以适应下游冻结的 MLLMs 进行高效推理;VTC-CLS 利用视觉编码器中 [CLS] 令牌与视觉令牌之间的先验知识评估视觉令牌的重要性,实现视觉令牌压缩;VisToG 引入分组机制,通过预训练的视觉编码器对相似图像段进行分组,减少计算需求 。但是,随着数据集规模的增大,软提示所需的计算资源也会增加。此外,软提示因为其连续向量无法被人类直接读取或理解,比硬提示更难解释。
多模态生成
基于多模态大语言模型(MLLMs)的多模态生成代表了重大技术进步,使得模型能够生成跨多种模态(如文本、图像、音频和视频)的内容。这些模型利用大语言模型(LLMs)的优势并将其扩展至处理多样化数据类型,从而创造出丰富、连贯且符合上下文的相关输出。主要研究进展如下:
输入模态(MODALITY INPUT)
- 早期探索:融入图像模态:早期研究聚焦于将图像模态融入大模型输入。例如,Blip - 2 提出通用且高效的预训练策略,借助现成的预训练图像编码器和大语言模型,通过轻量级 Querying Transformer 进行视觉 - 语言预训练,分两个阶段分别实现视觉 - 语言表示学习和视觉到语言的生成学习 。
- 拓展阶段:纳入复杂模态:随着研究发展,更复杂的模态如视频被纳入大模型输入。像 Video - ChatGPT 将视频适配的视觉编码器与 LLM 融合,使其能够理解和生成关于视频的详细对话;Video - LaVIT 通过高效的视频分解和设计良好的分词器,将视频表示为关键帧和时间运动,并与 LLM 结合进行统一的生成式预训练,在推理时能恢复生成各种视频内容 。
- 最新进展:统一输入处理:近期,多模态大模型的输入向能处理任意模态数据的统一输入发展。例如,InstructBLIP 基于预训练的 BLIP - 2 模型进行视觉 - 语言指令调整,并引入指令感知的 Query Transformer;InternVL 设计了大规模的视觉 - 语言基础模型,扩大了视觉基础模型的参数规模,并通过网络规模的图像 - 文本数据使其与 LLM 对齐;GPT - 4 能接受图像和文本输入并生成文本输出;HuggingGPT 利用 LLM 连接机器学习社区中的各种 AI 模型来解决 AI 任务;NExT - GPT 通过连接 LLM 与多模态适配器和不同的扩散解码器,实现了对任意组合的文本、图像、视频和音频的感知和生成,并通过模态切换指令调整和高质量数据集,增强了复杂跨模态语义理解和内容生成能力。
输出模态(MODALITY OUTPUT)
- 早期尝试:MIMOQA 的探索:在基本的视觉问答(VQA)任务中,MIMOQA 率先提出多模态输出概念,通过构建名为 MExBERT 的双塔模型,将问题转化为图像 - 文本匹配任务来实现多模态输出。但它存在一定局限性,如需要筛选相关图像、多模态仅局限于图像模态、输入图像需至少包含一个相关图像等 。
- 改进:多种实现范式:当前的研究针对 MIMOQA 的局限进行了改进,形成了多种实现多模态输出的范式。一种常见的工作流程是在生成文本答案后,进行位置识别以确定插入多模态数据的位置,然后检索候选多模态数据,最后通过相关性匹配模型确定最终插入的数据。例如,InternLM - XComposer 在生成文本段落时,会判断是否插入图像,并通过生成图像字幕在网络上搜索候选图像,最终选择最相关的图像插入;InternLM - XComposer2 和 2.5 版本允许用户直接输入一组候选图像;MuRAR 在 RAG 场景中基于此范式实现多模态输出,并创新了位置识别和候选集召回方法,还扩展了多模态数据类型;M2RAG采用不同的范式,通过用户查询同时召回相关文本元素和图像,经过精炼后,利用 MLLMs 将图像矢量化或转换为描述,输入生成模型,最终通过思维链(COT)过程将占位符转换为实际图像;NExT - GPT 则直接训练统一的多模态大模型,统一推理和生成过程,直接生成包含文本、图像、视频等的多模态数据。
4、MRAG数据集
评估多模态检索增强生成(MRAG)多模态理解和基于知识的问答任务中的能力,数据集主要分为两类:检索与生成联合组件类、生成类。
检索与生成数据集
这类数据集用于评估 MRAG 系统从多模态源检索相关知识并生成准确响应的端到端能力,重点关注系统动态利用外部知识提高响应质量和相关性的协同集成能力。
- 综合数据集:像 KB-VQA、FVQA 这类早期基于知识的数据集,依赖封闭知识,问题相对简单,推理需求较少。例如 FVQA 使用固定知识图谱,一旦掌握知识,问题便迎刃而解。OK-VQA 和 A-OKVQA 则利用外部知识评估多模态推理,A-OKVQA 引入 “理由” 注释,能更好地评估知识获取和推理过程。S3VQA 在 OK-VQA 基础上扩展,要求对象检测和网络查询,但常简化为单一检索任务。MultiModalQA 提出复杂问题,需跨片段、表格和图像进行推理,聚焦跨模态知识提取,不过模板式问题使其任务简化。ManyModalQA 使用片段、图像和表格,强调答案模态选择而非知识聚合。MIMOQA 引入 “多模态输入多模态输出”,增强对文本和图像选择的理解。WebQA 是人工制作的多跳多模态问答数据集,但仅提供文本答案,依赖 MLLMs 推理,不适合依赖语言上下文的模型。ViQuAE 专注于基于视觉上下文和知识库回答关于命名实体的问题。InfoSeek 和 Encyclopedic-VQA 针对基于知识的问题,后者使用模型生成的注释。MMSearch 评估 MLLMs 作为多模态搜索引擎的能力,聚焦图像到图像的检索。MRAG-bench 评估 MLLMs 利用以视觉为中心的检索增强知识的能力,识别视觉知识优于文本知识的场景。MRAMG-Bench 评估结合文本和图像的答案,利用语料库中的多模态数据 。
- 视觉常识推理数据集:VCR 和 VisualCOMET 源自电影场景,用于评估视觉常识推理能力。比如 VCR 从 110k 电影场景中衍生出 290k 多项选择问答问题,可检验模型对视觉场景的理解和推理能力。
- 视频理解与推理数据集:KnowIT VQA 和 SOK-Bench 关注视频理解和推理任务,结合视觉、文本和时间推理以及基于知识的问题。如 KnowIT VQA 包含 24,282 个人工生成的关于热门情景喜剧的问答对;SOK-Bench 有 44K 问答对,涵盖 12 种问题类型,源自约 10K 个情景 。
- 视觉广告数据集:Ads 提出自动广告理解任务,具有丰富的主题、情感和说服性推理注释,包含 202,090 个来自图像广告和视频广告的问题,有助于评估模型在广告理解方面的能力。
生成类数据集
生成类数据集评估模型仅依赖预训练知识和内部推理生成上下文准确输出的内在能力。该评估隔离生成组件,提供对模型基础语言理解能力的洞察,支持详细分析MRAG系统在不同场景下的优势与局限性。主要有以下几类:
- 综合数据集:旨在全面评估多模态大语言模型(MLLMs)能力。早期的 VQA v2 有 453K 注释的问答对,聚焦开放式问题;VizWiz 包含视障人士日常生活中的 8K 问答对;NLVR2 则通过评估图像对的字幕来探索多图像视觉能力。但这些难以评估现代 MLLMs 的新兴能力。近期的 LVLM-eHub、MDVP 和 LAMM 等编译大量数据集进行综合评估,发现 MLLMs 在常识任务表现好,但在图像分类、OCR、VQA 等任务存在不足,微调可缓解部分问题。同时,专门的基准测试不断涌现,如 MME 涵盖 14 个感知和认知任务;MMBench 有 20 个能力维度;SEED-Bench 聚焦选择题,其扩展版本增加了对文本和图像生成的评估;MMT-Bench 进一步扩展到 31K 个问答对。此外,还有关注现实世界使用场景的基准测试,如 RealWorldQA 评估空间理解能力,BLINK 强调视觉对应和多视图推理任务,WV-Bench 和 Visit-Bench 关注人类偏好和指令跟随能力,V*-Bench 评估高分辨率图像处理能力,MME-RealWorld 通过大量注释的问答对和高分辨率图像提高评估质量和难度。另外,一些基准测试关注模型的推理过程,如 MM-Vet 使用多种问题格式评估集成视觉语言能力,Touchstone 强调现实世界对话评估,InfiMM-Eval 评估模型在演绎、归纳和类比推理方面的能力。还有针对特定能力评估的基准测试,如 MMStar 解决数据泄露问题,CV-Bench 解决以视觉为中心的基准测试稀缺问题,FOCI 使用特定领域子集和补充分类数据集评估 MLLMs,MMVP 识别 CLIP-based 模型的模式,Q-Bench 评估低级别属性感知能力,Visual COT 引入视觉思维链提示,Mementos 评估顺序图像理解能力,MIRB 关注多图像推理,ReMI 设计多种图像关系和输入格式的任务,MuirBench 包含多图像理解任务,VEGA 评估交错图像文本理解能力 。
- 光学字符识别(OCR)数据集:多模态基准测试越来越关注 OCR 任务评估,推动文档理解进展。早期的 TextVQA 和 OCR-VQA 评估标准文本识别,WebSRC 引入网页布局解释等高级结构推理任务。SEED-Bench-2-Plus 和 OCRBench 将评估扩展到图表、地图和网页等多种数据类型,显示模型在识别各种 OCR 文本方面接近最先进水平。VCR 处理图像中部分模糊文本的 OCR 任务,要求内容重建。尽管取得进展,但许多 MLLMs 在细粒度 OCR 任务上仍存在困难,像 GPT-4V 虽表现较好,但仍落后于专业 OCR 模型,且性能因数据类型而异,知识图谱和地图比图表等简单格式更具挑战性,这表明可通过数据特定优化或专用 OCR 集成来提升性能。
- 结构文档数据集:结构文档(如图表、HTML 网页内容等)在实际应用中至关重要,因其能高效传达复杂信息。为推动相关模型发展,出现了多个针对不同类型结构文档的基准测试。早期的 FigureQA 引入视觉推理论文,关注情节元素之间的关系;ChartQA 强调图表的视觉问答,涵盖数据提取和数学推理任务;ChartX 收集了全面的数据集,包含多种模态;VisualMRC 专注于视觉机器阅读理解;ChartBench 通过复杂推理评估图表理解和数据可靠性;MMC-Benchmark 提供人工注释基准,评估 MLLMs 在视觉图表理解任务上的表现;Web2Code 引入网页到代码的数据集和评估框架,评估 MLLMs 的网页理解和 HTML 代码翻译能力;VisualWebBench 在网站、元素和行动层面评估 MLLMs 在各种网页任务上的能力。随着 MLLMs 的发展,现在的基准测试聚焦于更复杂的图表和文档理解,如 DocGenome 分析科学论文,涵盖多种任务;CharXiv 针对科学论文中的具有挑战性的图表;MP-DocVQA 将 DocVQA 扩展到多页场景;MMLongBench-Doc 专注于长文档理解;SciGraphQA 是一个关于学术图表的合成数据集;SciFIBench 对科学图表解释进行基准测试 。
- 数学数据集:视觉数学问题解决是评估 MLLMs 的关键,催生了专门的基准测试。MathVista 率先整合 28 个现有数据集并引入 3 个新数据集,涵盖多种视觉输入的逻辑、代数和科学推理等多种任务,拥有 6,141 个示例。后续的 Math-Vision 和 OlympiadBench 引入更复杂任务和细粒度评估方法。We-Math 将问题分解以评估基本理解,MathVerse 通过变换问题形式评估 MLLMs 对数学图表的理解。尽管 MLLMs 在该领域取得一定成果,但仍面临解读复杂图表困难、依赖文本线索、通过记忆而非推理解决复合问题等挑战。
- 视频理解数据集:传统视频问答基准测试(如 TGIF-QA 和 ActivityNet-QA )具有领域特异性,主要关注人类活动相关任务。随着 MLLMs 的发展,新的基准测试不断涌现,以应对更复杂的视频理解挑战。Video-MME 通过多模态输入和手动注释探索不同视频领域;MVBench 使用 ChatGPT 重新注释现有数据集;MMBench-Video 针对中短视频设置自由形式问题;MLVU、LVBench、Event-Bench 和 VNBench 等则强调长视频理解,测试模型在扩展多模态上下文中的能力,其中 VNBench 还引入合成框架评估检索和排序等任务;EgoSchema 专注于以自我为中心的视频;TempCompass 评估细粒度时间感知;MovieChat 针对长视频,但常将任务简化为短视频问题。当前 MLLMs,尤其是开源模型,在长上下文处理和时间感知方面面临挑战,这凸显了提升这些能力的必要性。
- 行业数据集:由于缺乏全面评估 MLLMs 在不同行业适用性的基准测试,限制了对其在专业现实场景应用的理解。MME-Industry 专门为此开发,涵盖发电、电子制造等 21 个工业领域,由各领域专家精心注释和验证测试用例,为评估 MLLMs 在工业环境中的表现提供了有力工具。
- 对话式问答数据集:当前 MLLMs 主要用于多轮聊天机器人交互,但多数基准测试集中在单轮问答任务。为更好地模拟现实对话场景,多轮问答基准测试应运而生。SparklesDialogue 评估多图像和多轮对话中的对话能力,支持灵活的文本 - 图像交织;SciGraphQA 基于科学图表构建多轮问答对话,强调复杂科学话语;ConvBench 评估模型在感知、推理和创造方面的能力,揭示 MLLMs 的推理和创造失败常源于细粒度感知不足;MMDU 让模型参与多轮、多图像对话,突出开源和闭源模型之间的性能差距主要归因于对话指令调整数据的有限性。这些基准测试共同提升了对 MLLMs 在复杂现实交互场景中的评估能力。
- 多学科数据集:掌握多学科知识是衡量模型能力的重要指标,为此开发了多个相关基准测试。ScienceQA 包含带讲解和注释的科学问题,用于促进思维链评估,涵盖多学科知识;MMMU 提供更具挑战性的大学水平基准测试,涵盖多个学科,问题格式不限于单图像 - 文本对;CMMU 和 CMMMU 分别提供中文领域特定的年级水平和大学水平知识基准测试;MMMU-Pro 是 MMMU 的增强版本,用于更高级的评估。
关于各数据集的描述,详见原文表2。
5、MRAG评估指标
多模态检索增强生成(MRAG)系统的评估指标对于衡量其性能至关重要,主要涵盖检索与生成指标以及评估策略两方面内容:
评估策略
人类评估:被视为评估 MRAG 系统的黄金标准,通过人类标注来确保模型输出的可靠性和相关性。但是,该方法存在时间和人力成本高的问题,而且少量评估人员的个体偏见可能影响结果可靠性,在大规模评估时会受到一定限制。
基于规则的评估:此方式依据标准化评估工具和预定义标准对 MRAG 系统进行客观、可重复性的评估,与主观的人类评估相比,具有耗时少、不易受偏见影响、评估结果一致性高等优点,在大规模评估或比较不同系统及模型迭代时尤为关键 。但它也存在局限性,在处理多模态环境中复杂的语义和上下文理解时适应性不足。
基于 LLM/MLLM 的评估:利用大语言模型(LLMs)或多模态大语言模型(MLLMs)比较参考答案和生成输出,或直接对响应进行评分。像 MM-Vet 使用 GPT-4 自动评估样本,TouchStone 和 LLaVA-bench 借助 GPT-4 直接对比生成答案和参考答案,简化了评估流程 。不过,这种方法容易受到系统偏差的影响,例如对响应呈现顺序敏感,并且评估结果会受到 LLMs/MLLMs 自身能力和局限性的制约,不同模型对同一任务的评估结果可能差异较大。
检索与生成指标
基于规则的指标
- 精确匹配(EM):用于判断模型输出与真实答案是否完全一致,在对准确性要求较高的任务中作用显著,但无法处理语义相同但词汇不同的情况;
- ROUGE-N :通过测量生成文本与参考文本的 N 元语法重叠程度来评估召回率,能反映生成文本对参考内容的捕捉情况,但在多模态环境下,还需结合其他指标考虑语义连贯和相关性;
Count_match:生成文本与参考文本共现的 n-gram 数量;Count:参考文本中所有 n-gram 数量。假设参考文本为 “the dog runs fast”,生成文本为 “the fast dog runs”,对于 ROUGE - 1,参考文本的 1-gram 有 {the, dog, runs, fast},生成文本的 1-gram 有 {the, fast, dog, runs},共同的 1-gram 数量为 4,参考文本的 1-gram 总数量为 4,则
;
- BLEU:最初用于机器翻译评估,在多模态生成中可衡量生成文本与参考描述的对齐程度,但难以捕捉语义深度和上下文连贯性;
其中,BP是 brevity penalty(简洁性惩罚因子),用于惩罚生成文本过短的情况,公式为
,c是生成文本的长度,r是参考文本的平均长度;
是生成文本中长度为k的 n-gram 与参考文本匹配的比例;
是权重,一般取
。
- 平均倒数排名(MRR,Mean Reciprocal Rank):用于评估系统生成排名列表的性能,反映系统快速找到相关信息的能力;
:第i 个查询的第一个正确答案的排名。
- CIDEr(Consensus-based Image Description Evaluation):利用 TF-IDF 加权机制量化机器生成描述与参考描述之间的一致性;
g、r分别是生成与参考的 TF-IDF 向量(n-gram 加权)
- SPICE(Semantic Propositional Image Caption Evaluation): 通过解析图像描述构建场景图,对比生成图与参考图来评估语义保真度,在评估多模态系统集成视觉和文本信息时表现出色;
- BERTScore: 基于 BERT 的上下文嵌入测量语义相似性,能捕捉更深层次的语义关系;
- 困惑度(Perplexity):衡量模型预测下一个单词的能力,较低的困惑度表示模型预测更准确、对数据分布的理解更强 。
基于 LLM/MLLM 的指标
- 答案精确率(Answer Precision):用于衡量模型生成答案中的知识与真实答案的匹配程度,反映模型利用检索数据生成准确响应的能力;
- 真实答案召回率(Ground Truth Recall):评估模型对真实答案中知识的捕捉程度,体现模型从知识源检索和整合相关信息的能力;
- 检索上下文精确率(Retrieved Context Precision):考察检索到的上下文与真实答案响应中信息的对齐程度,衡量检索系统在生成准确响应时的精确性和上下文适用性;
- 检索上下文召回率(Retrieved Context Recall):衡量检索到的上下文与生成真实答案所需知识的匹配程度,是评估检索系统有效性的关键指标;
- 忠实度(Faithfulness):用于评估生成文本与检索文档信息的一致性,确保输出准确反映源材料,在多模态场景中需保证与多种模态检索内容的一致性;
- 幻觉(Hallucination):用于衡量生成输出中包含幻觉内容的比例,是评估模型响应可靠性和事实一致性的重要指标 。
指标计算
在评估多模态检索增强生成系统时,同一指标的计算方法主要分为粗粒度和细粒度两种。
在评估多模态检索增强生成(MRAG)系统时,选择合适的评估指标计算方法非常重要,需根据具体需求权衡粗粒度和细粒度评估的使用,以全面、准确地评估系统性能。在实际应用中,通常将两者结合,发挥各自优势。
- 粗粒度评估:利用大语言模型(LLMs)或多模态大语言模型(MLLMs)对模型生成的响应和参考回答进行整体比较。该方法将生成的输出和参考内容输入到 LLM/MLLM 中,由其评估两者之间的语义对齐、连贯性和相关性,从而给出一个整体的分数或定性反馈。这种评估方式计算效率高且具有可扩展性,适合在大规模应用中进行快速基准测试和高层次的质量检查。比如在对大量模型进行初步筛选时,粗粒度评估能够快速给出一个大致的性能评估,帮助研究者快速了解模型的整体表现。然而,由于其关注的是整体语义,可能会忽略一些细微的不准确之处,例如微妙的事实错误、逻辑不一致或细微的上下文不匹配等问题。所以,粗粒度评估一般作为初步筛选工具,在需要更精确评估时,还需结合细粒度评估方法。
- 细粒度评估:以 RAGChecker 和 RAGAS 为代表,这种方法将模型生成的响应和参考答案分解为更细粒度的知识要点或语义单元,然后根据准确性、相关性以及与参考内容的对齐程度等标准进行单独评估。通过这种细致的分析,可以精确地识别模型的优势和劣势,尤其在处理复杂或微妙的内容时,能够更深入地了解模型在捕捉和再现复杂信息方面的表现。例如,在评估涉及专业知识的问答系统时,细粒度评估可以准确指出模型在哪些知识点上存在理解或表述错误。但该方法计算成本较高,需要强大的机制来提取、匹配和评估多个语义单元,并且在设计这些机制时需要格外小心,以确保评估的一致性和可靠性。尽管存在挑战,但细粒度评估为推进 MRAG 系统的发展和优化提供了严谨且全面的框架,是该领域中不可或缺的评估工具。
6、挑战
多模态检索增强生成(MRAG)系统在多个关键组件上仍存在挑战,涵盖文档解析与索引、多模态搜索规划、检索、生成、数据集和评估等方面。
文档解析和索引
- 数据准确性和完整性挑战:作为 MRAG 系统的主要输入源,上游数据的准确性和完整性至关重要。若上游数据存在错误或遗漏,会在系统下游产生放大效应,严重降低系统性能。在处理长文档时,即便 MRAG 系统在文档信息保存方面有所进步,比如能够捕获每页的截图,但在维护文档跨页关系上仍存在困难。以一份包含多页的研究报告为例,其中各页的内容相互关联,若系统无法准确捕捉和维护这些跨页关系,在后续的信息检索和生成过程中,就可能因缺乏完整的上下文信息,导致生成的回答不准确或不完整,无法满足用户需求。在实际应用场景中,长文档的跨页关系对于准确理解和处理文档内容至关重要。
- 平衡多模态和文本数据挑战:随着现代 MRAG 系统需要处理包括图像、表格和文本等多模态数据,文档解析模块变得日益复杂。为了减少信息损失,当前的方法通常会保留原始的多模态输入,同时将其转换为文本字幕或描述。然而,仅仅依赖原始多模态数据并不总是最优选择。研究发现,利用从多模态数据中衍生的文本表示有时能带来更好的效果。有研究表明,模型在使用图像的文本字幕进行处理时,生成的回答质量更高,而直接处理原始图像可能效果不佳 。这一现象揭示了多模态系统在有效整合不同类型数据方面存在的局限性,也表明在文档解析流程中可能需要额外的组件来更好地处理多模态数据。这些增强功能虽然提升了系统的功能性,但同时也增加了系统的复杂性,使得需要处理、存储和管理的数据量大幅增加。在处理大量包含多种模态的文档时,系统需要更多的计算资源和更复杂的算法来处理和协调这些数据,这对系统的硬件和软件都提出了更高的要求,增加了系统的运行成本和管理难度。
多模态搜索规划
- 智能自适应规划机制:当前多模态搜索规划系统常依赖预先设定的固定管道来处理查询,然而这种方式难以适应查询的多样性和复杂性。不同的查询在特征和计算需求上差异很大,固定策略在面对复杂查询(如涉及多跳推理或创造性问题解决的查询)时,无法灵活调整检索策略,导致资源分配不合理,系统性能欠佳。在一个需要从大量图文资料中寻找解决复杂工程问题方案的场景中,固定管道可能无法根据问题的具体需求,有效整合文本和图像信息进行多跳推理,导致检索结果不准确或不完整。为解决这一问题,可采用多智能体协作系统。在该系统中,多个专门的智能体并行工作,各自探索不同的推理路径,运用如关键字检索、语义检索、跨模态检索等多样化的检索方法,根据查询特点和系统资源状况动态调整策略。这些智能体还能与 MLLMs 和 LLMs 集成,借助它们强大的理解和推理能力,更精准地处理复杂的多模态查询,提高系统的适应性和检索效率。
- 查询重构和语义对齐:随着查询变得日益复杂,尤其是在多模态环境下,准确捕捉和保持原始查询意图在重构过程中的一致性成为一大难题。多模态查询可能包含文本、图像、音频等多种数据类型,每种类型都需要精确解读,而当前系统在处理这些复杂查询时,难以确保重构后的查询能准确反映用户的原始意图。当用户以一段包含文本描述和相关图片的查询,询问关于某个历史建筑的详细信息时,系统需要准确理解文本和图像所传达的信息,并将其转化为有效的检索查询。为解决这个问题,可采用多视角重构策略。该策略借助基于 Transformer 模型的上下文嵌入技术,深入理解查询的语义细微差别和上下文依赖关系;运用对比学习等先进技术,将查询和多模态数据嵌入到共享的潜在空间,实现跨模态的准确对齐;同时,引入领域特定的本体或知识图谱,利用结构化的领域知识提高重构查询的准确性和相关性,确保重构后的查询与用户的原始意图保持一致。
- 综合评估基准:现有的评估基准在评估多模态搜索规划机制时存在局限性,往往只关注狭窄的性能方面,无法全面反映系统在各种现实场景中的实际表现。这些基准通常不能充分涵盖不同类型的查询,也缺乏对语义对齐、计算效率和可扩展性等多维度指标的综合考量。为了更全面地评估多模态搜索规划系统,需要建立更强大的评估基准。这些基准应包含丰富多样的查询数据集,模拟真实世界中用户与系统的交互,涵盖各种查询类型和模态;采用多维度的评估指标,包括系统对不同查询类型的适应性、在复杂条件下的鲁棒性、资源利用的效率以及查询重构过程中的语义对齐准确性等,以更准确地评估系统的性能、泛化能力和在实际应用中的适应性。
检索
- 跨模态数据的异质性数据结构差异导致的难题:不同模态的数据,如文本、图像、音频和视频,在结构上存在显著差异。文本是离散的、具有顺序性的数据,其语义和语法结构依赖于语言模型进行捕捉;而图像是连续的、空间性的数据,需要借助卷积神经网络(CNN)或视觉 Transformer(ViT)等架构来提取分层的视觉特征。这种结构上的差异使得跨模态数据的对齐和比较变得极为复杂。以文本 - 图像检索为例,从文本中提取的语义特征和从图像中提取的视觉特征,在特征表示和维度上都存在很大不同,难以直接进行匹配和比较。特征提取与统一表示的困境:要实现有效的多模态检索,需要从不同模态中提取有意义且具有可比性的特征,但这并非易事,它要求具备特定领域的专业知识,并使用复杂的模型来捕捉数据的细微属性。尽管 Transformer 在处理文本等序列数据方面表现出色,但在处理图像等空间数据时,通常需要对其架构进行调整,如 ViT 的出现。然而,即使采用了这些改进措施,当前的方法,包括跨模态 Transformer 和 MLLMs,仍然难以创建一个统一的嵌入空间,在这个空间中既能充分捕捉每个模态的语义丰富性,又能确保不同模态之间的一致性。
- 跨模态组件(重排器、优化器)重排器的挑战:在多模态检索中,虽然双塔架构在第一阶段检索时,能够通过高效编码和对齐多模态数据(如文本和图像)取得一定成果,但开发能够实现细粒度多模态交互的先进重排模型仍然是一个难题。重排器需要在检索到的文档列表中,进一步根据多模态数据之间的关系,如文本 - 图像、文本 - 音频或视频 - 文本等关系,对文档进行重新排序,以提高检索结果的相关性和准确性。然而,目前的技术在捕捉这些复杂的多模态语义对齐方面还存在不足,导致重排效果不尽如人意。优化器的挑战:在检索和重排之后,对外部多模态知识的优化处理仍未得到充分研究。尽管优化器有潜力提高检索结果的准确性和相关性,但目前缺乏有效的方法来利用 MLLMs 和 LLMs 的能力,实现对检索到的多模态知识的深度理解和推理,从而进行更有效的优化。在处理包含多种模态信息的文档时,如何利用模型的上下文理解和多模态对齐能力,对检索到的内容进行重新排序、筛选或增强,以生成更符合用户需求的结果,是当前多模态检索面临的重要挑战之一。
生成
- 多模态输入数据结构和表示的整合难题:多模态系统面临的关键挑战之一是如何有效地集成来自不同模态(如文本、图像、音频和视频)的数据结构和表示形式。随着多模态模型的不断发展,它们越来越需要处理任意组合的模态,例如文本与图像、文本与视频、图像与音频的结合等。这就要求系统具备高度灵活和自适应的框架,能够在不依赖预定义结构或进行大量重新训练的情况下,动态地适应各种不同的输入配置。开发一种能够通用地处理多种模态输入的架构并非易事,它需要能够自动识别和提取不同模态数据的相关特征,并以有意义的方式将这些特征融合在一起。设计通用架构的挑战:实现这种灵活性意味着要设计出能够跨模态通用的架构,这些架构要能够从各种输入组合中提取相关特征,并将它们有效地融合起来,而不受输入组成的限制。这需要深入理解不同模态数据的特性和潜在联系,以及如何在模型中对这些特性和联系进行建模。在处理文本 - 图像组合时,模型需要理解文本中的语义信息与图像中的视觉元素之间的对应关系,从而实现两者的有效融合。这不仅涉及到技术层面的创新,还需要大量的实验和优化来确定最佳的模型结构和参数设置。
- 多模态输出确保模态一致性:在多模态输出中,保证不同模态之间的一致性是一个重大挑战。在生成文本 - 图像对时,图像必须准确反映文本中描述的场景或对象,而文本也应精确传达图像所包含的视觉内容。如果生成的图像与文本描述不符,或者文本无法准确描述图像的关键信息,就会导致输出的信息不准确或不完整,影响用户对信息的理解和使用。在一个旅游推荐系统中,如果文本推荐提到某个景点有壮观的瀑布,而生成的图像却显示的是普通的河流,这就会给用户带来困惑,降低系统的实用性。定位和整合多模态元素:在多模态输出(如包含嵌入式图像或视频的文本)中,模型需要智能地确定非文本元素的插入位置。这需要模型深入理解内容的叙事流程,识别出最佳的插入点,以增强输出的连贯性和可读性。模型还需要能够根据上下文动态地生成或检索相关的多模态内容。在生成一篇图文并茂的新闻报道时,模型需要根据文本的内容和逻辑,在合适的位置插入相关的图片,并确保图片与文本紧密相关,相互补充,以提升整个报道的质量和吸引力。输出多样性的平衡:在某些应用场景中,生成多样化的输出(如对应于给定文本描述的多个图像或视频)非常重要。然而,要在保持输出多样性的同时,确保其相关性和高质量是一个巨大的挑战。模型需要在广泛探索各种可能性的同时,保证每个输出都符合上下文要求,并达到较高的质量标准。在一个创意设计辅助系统中,当用户输入一段描述希望生成多个不同风格的设计草图时,模型不仅要生成多样化的草图,还要确保这些草图都符合用户的设计要求和描述的主题,同时在绘画质量和细节上也要达到一定的水平。
数据集和评估
- 缺乏统一标准和全面性能力分类法不统一:当前,在 MLLMs 的评估领域,缺乏一个被广泛接受的标准化能力分类法。不同的基准测试各自定义了不同的能力维度,这种差异使得在比较不同模型的性能时缺乏统一的标准,难以进行客观、准确的评估。一个基准测试可能侧重于模型的语言理解能力,而另一个可能更关注视觉感知能力,这就导致无法直接对比不同模型在综合能力上的优劣。关键领域评估缺失:现有的基准测试在一些关键领域存在显著的评估空白。在指令遵循方面,当前的评估无法充分检验模型对复杂、多步骤指令的理解和执行能力,以及在面对模糊或不完整指令时的应对能力。在复杂多模态推理方面,多数基准测试仅关注数学和考试类问题,难以涵盖实际应用中复杂多样的推理场景,如在医疗影像诊断、金融风险评估等领域的多模态推理。多轮对话作为人类与多模态模型交互的主要方式,目前的评估还处于起步阶段,无法全面评估模型在长对话中的上下文理解、连贯性和适应性。对于模型的创造力评估也较为缺乏,无法有效衡量模型在生成创意内容(如故事创作、艺术设计等)方面的能力。特定任务和模态评估不足:针对 MLLMs 在特定任务上的评估还不够充分,尤其是在一些具有商业价值的领域,如发票识别、多模态知识库理解和 UI 理解等。这些领域对模型的实际应用至关重要,但目前的基准测试未能提供足够的测试用例和评估指标来准确评估模型在这些场景下的性能。此外,现有的多模态基准测试主要集中在图像和视频模态,对音频和 3D 表示等其他模态的评估相对较少,无法全面评估模型对各种模态数据的处理能力。
- 与实际应用脱节评估重点与实际需求不符:目前对 MLLMs 的评估主要集中在感知和推理能力上,通过客观问题进行评估。这种评估方式与实际应用场景存在较大差距,因为在实际应用中,用户更关注模型在复杂任务中的综合表现和实际效果。过度依赖客观评估可能导致开发者在优化模型时,过于关注特定的客观问题语料库,从而忽视了其他重要方面,如对话体验的质量、在实际工作流程中的应用效果等,进而降低了模型在实际应用中的实用性。缺乏多技能集成评估:现有的评估策略主要依赖于精心设计或挑选的问题来评估模型的特定能力,但复杂的多模态任务往往需要模型整合多种技能才能完成。在处理与图表相关的问题时,模型不仅需要具备 OCR 能力来识别图表中的文字信息,还需要能够理解空间关系、进行推理和计算等。然而,现有的评估框架缺乏对这些不同技能的解耦评估,无法准确判断模型在各个技能环节的表现以及整体的技能集成能力。关键能力评估不足:在当前的评估中,一些关键能力,如指令遵循,没有得到充分的评估。多轮对话作为人类与多模态模型交互的主要方式,对于大多数模型来说仍然是一个薄弱环节,相应的评估也还不够成熟。在复杂多模态推理方面,当前的评估主要集中在特定类型的问题上,与实际应用中的多样性和复杂性存在差距,需要进一步提高评估的难度和与实际场景的相关性。此外,对于多模态创意任务(如基于图像和文本提示的文本生成)的评估在很大程度上尚未得到探索,这在当前的评估体系中是一个明显的缺口。面向实际应用的评估框架缺失:MLLMs 目前仍处于发展的早期阶段,商业应用相对有限。因此,当前的评估主要侧重于基础能力的评估,而忽视了对模型在实际应用中性能的评估。未来需要开发针对特定任务的评估框架,这些框架不仅要考虑性能指标,还要关注计算成本和推理速度等实际因素,并与传统的计算机视觉方法(如 OCR、对象检测和动作识别)进行对比,以确定模型在实际应用中的适用性。此外,MLLMs 作为智能体在规划和与环境交互以解决复杂问题方面的潜力尚未得到充分评估,开发多样化的虚拟环境来测试模型的这种能力将是未来评估的一个重要方向。
7、总结
这是目前看过最有逻辑最清晰最全面的一篇多模态RAG综述,并且文中提出的MRAG3.0非常值得思考,也是多模态RAG结合多模态大模型的能力,未来肯定会发展到的一个阶段。希望这篇综述能给做多模态RAG的朋友带来帮助。