现有的信息检索(IR)模型通常假设一个同质化的格式,限制了它们对多样化用户需求的适用性,例如用文本描述搜索图像,用新闻标题图片搜索新闻文章,或用查询图像找到类似的图片。为了满足这些不同的信息检索需求,我们引入了UniIR,这是一个统一的、由指令引导的多模态检索器,能够处理跨模态的八种不同的检索任务。UniIR是一个单一的检索系统,联合训练了十个不同的多模态IR数据集,解释用户指令以执行各种检索任务,在现有数据集上展示了强大的性能,并对新任务进行了零样本泛化。我们的实验强调了多任务训练和指令调整是UniIR泛化能力的关键。此外,我们构建了M-BEIR,一个多模态检索基准,具有全面的结果,以标准化通用多模态信息检索的评估。
我们翻译解读最新论文:UniIR训练和基准测试通用多模态信息检索器
,文末有论文链接。
作者:
张长旺,图源:
旺知识
1. 引言
信息检索(IR)是一个关键任务,涉及从庞大的数据集中获取相关信息以满足特定用户需求[50]。随着生成性AI的出现,这一过程变得日益重要[3, 9, 49, 58],因为它不仅能够实现精确的归属,还能够减少生成内容中的不准确和伪造风险[2, 48]。尽管IR在当前技术格局中扮演着重要角色,但现有文献——特别是在多模态IR领域——大多范围狭窄,主要关注预定义格式的同质化检索场景,通常限于单一领域。例如,MSCOCO[35]考虑通过文本说明检索Flickr图像,而EDIS[39]考虑用新闻标题检索新闻头条图片。这种同质化设置不足以满足用户跨越领域和模态的多样化信息检索需求。例如,一些用户可能通过文本查询搜索网络图像,而其他用户可能使用一张裙子的照片以及文本输入“类似款式”或“红色”来寻找特定裙子的类似时尚产品。当前的多模态检索系统在容量上不足以满足这些多样化的用户需求,仅限于对预训练的CLIP[47]模型进行特定任务的微调。认识到这些局限性,迫切需要概念化和发展一个更灵活、通用的神经检索器,它能够连接不同的领域、模态和检索任务,以满足用户的多样化需求。
图1。
我们通过指令调整构建了一个通用的多模态信息检索器UniIR。
UniIR能够接受任何形式的查询和指令来检索任何模态的信息。
在这篇论文中,我们提出了UniIR框架,学习一个单一的检索器来完成(可能)任何检索任务。与传统的IR系统不同,UniIR需要遵循指令,以异构查询检索来自异构候选池中的数百万候选项。为了训练UniIR模型,我们构建了M-BEIR,一个基于现有10个不同数据集的指令遵循多模态检索任务的基准,统一了它们的查询和目标在一个统一的任务表述中。查询指令被策划以定义用户的检索意图,从而指导信息检索过程。我们在M-BEIR上的300K训练实例上训练了基于预训练视觉-语言模型如CLIP[47]和BLIP[33]的不同UniIR模型,并采用了不同的多模态融合机制(评分级融合和特征级融合)。我们展示了UniIR模型能够精确地遵循指令,从异构候选池中检索所需的目标。我们最好的UniIR模型是基于评分融合的CLIP,它不仅在微调数据集上取得了非常有竞争力的结果,而且还泛化到了保留的数据集(图6)。我们的消融研究揭示了两个洞见:(1)UniIR(BLIP)中的多任务训练是有益的,这在recall@5方面带来了+9.7的改进(表6);(2)指令调整对于帮助模型泛化到未见过的检索数据集至关重要,并在recall@5方面带来了+10的改进(图5)。
我们的贡献总结如下:
• UniIR框架:一个旨在将各种多模态检索任务整合到一个统一系统中的通用多模态信息检索框架。
• M-BEIR:一个大规模多模态检索基准,汇集了来自多个领域的10个不同数据集,涵盖了8种不同的多模态检索任务。
• 我们引入了在M-BEIR上训练的UniIR模型,为未来的研究设定了一个基础基线。此外,我们评估了SOTA视觉-语言预训练模型在M-BEIR基准上的零样本性能。
2. UniIR框架
2.1. 问题定义
在通用多模态搜索引擎中,用户可以根据特定需求启动各种搜索任务。这些任务涉及不同类型的查询和检索候选项。查询q可以是文本qt、图像qi或甚至是图像-文本对(qi, qt),而检索候选项c也可以是文本ct、图像ci或图像-文本对(ci, ct)。在表1中定义了八种现有的检索任务。请注意,组合查询(qi, qt)通常涉及一个关于图像qi的基于文本的问题qt。另一方面,组合目标(ci, ct)通常包括一个图像ci,伴随着描述性文本ct,提供上下文信息。为了适应不同的检索意图,我们引入了一个语言任务指令qinst来代表检索任务的意图。这个指令清晰地定义了搜索的目标,无论是寻找图像、文本还是两者的混合,并指定了相关领域。更多信息可以在第3节中找到。更正式地说,我们的目标是构建一个统一的检索器模型f,能够接受任何类型的查询来检索由指令qinst指定的任何类型的目標:
这里,C表示异构候选池,f(·)是我们正在优化的最大点积检索函数,c∗是预测结果。通过包含任务指令,我们将不同的多模态检索任务统一到一个单一框架中,从而使我们能够构建一个通用的多模态检索器。此外,通过指令微调的语言模型已经展示了通过遵循指令执行零样本泛化到未见任务的能力。然而,将这种零样本泛化的概念应用于多模态检索领域面临着挑战,因为缺乏为此目的量身定制的现有数据集。为了解决这一差距,我们创建了一个全面的、统一的数据集,名为MBEIR,详细内容见第3节。M-BEIR将作为探索和推进多模态检索模型能力的基凊资源。
2.2. UniIR模型
在这一节中,我们介绍了UniIR模型,我们的统一多模态信息检索系统。UniIR模型擅长同时处理不同的检索任务。我们为UniIR实验了两种多模态融合机制,即评分级融合和特征级融合。为了探索这些方法的有效性,我们适应了像CLIP[47]和BLIP[33]这样的预训练模型,如下所示。
评分级融合。
如图2(a)所示,CLIP和BLIP的评分级融合变体(分别表示为CLIPSF和BLIPSF)使用不同的编码器进行视觉和文本处理。具体来说,视觉编码器被标记为fi,单模态文本编码器为ft。在这些方法中,图像和文本输入(无论是来自查询还是目标)被处理成两个单独的向量。这些向量经过加权和以形成一个统一的表示向量。这个过程在数学上表示为f(qi, qt, qinst) = w1fI(qi) + w2fT (qt, qinst)用于查询,f(ci, ct) = w3fI(ci) + w4fT (c)用于目标。因此,查询q和目标c之间的相似性分数被计算为模态内和跨模态相似性分数的加权和:
w1, w2, w3, w4是一组可学习的参数,反映了重要性权重。
特征级融合。
与分别处理单峰数据的方法不同,特征级融合在编码阶段集成特征。这种融合方法使用混合模态注意力层计算多模态查询或候选者的统一特征向量。如图2(b)所示,对于CLIP特征级融合(CLIPFF),我们增强了预训练的视觉编码器fI和文本编码器fT,增加了一个2层多模态变换器,其架构与T5相同,形成了混合模态编码器fMIX。在BLIP特征级融合(BLIPFF)的情况下,过程从通过视觉编码器fI提取图像嵌入开始。这些嵌入然后通过BLIP的图像基础文本编码器的交叉注意力层与文本嵌入集成,也标记为fMIX。在CLIPFF和BLIPFF中,查询和目标的最终表示,分别表示为fMIX(qi, qt, qinst)和fMIX(ci, ct),是分别获得的,但使用相同的fMIX。然后通过以下方式计算查询和目标之间的相似性分数:
我们在M-BEIR训练数据上微调了上述四种模型变体(详细见第3节),采用查询-目标对比目标。为了遵循统一的指令调整格式,将指令qinst作为前缀集成到文本查询qt中。见图3中的例子。我们为缺少图像或文本模态的查询或候选项输入填充令牌。
3. M-BEIR基准
为了训练和评估统一的多模态检索模型,我们构建了一个名为M-BEIR(多模态指令检索基准)的大规模检索基准。M-BEIR基准包括八个多模态检索任务和十个来自不同领域和图像源的数据集。每个任务都伴随着人类编写的指令,总共包含150万个查询和560万个检索候选池(见表1)。
3.1. 数据格式
为了统一多模态检索任务,这些任务由源查询和目标候选者中的不同模态组成,M-BEIR中的每个任务都包括查询Q = {q1, q2, ...},一组候选者C = {c1, c2, ...},其中q和c都支持文本和图像模态,并且提供了人类编写的指令qinst以指定检索任务的意图。M-BEIR数据集中的每个查询实例都包括一个查询q,一个指令qinst,一系列相关(正面)候选数据c+和一系列可能可用的不相关(负面)候选数据c−。见图3中的例子。每个M-BEIR查询实例至少有一个正面候选数据,可能没有负面候选数据。我们的默认检索设置是模型需要从所有不同模态和领域的异构候选池中检索正候选者。
3.2. 数据集收集
M-BEIR基准涵盖了各种领域:日常图像、时尚物品、维基百科条目和新闻文章。它通过利用各种数据集,整合了8个多模态检索任务。数据选择。为了构建一个统一的指令调整多模态检索模型和全面的评估基准,我们旨在涵盖广泛的多模态任务、领域和数据集。这些包括以检索为重点的数据集(OVEN[19], EDIS[39], CIRR[40]和FashionIQ[56]),图像-标题数据集(MS-COCO[35], Fashion200K[18], VisualNews[37]),图像相似性测量数据集(NIGHTS[15]),以及基于检索的VQA数据集(InfoSeek[10], WebQA[6])。这些数据集原本为不同目的设计,但在M-BEIR基准中有效地被重新用作检索任务。对于图像-标题数据集,我们按照MS-COCO的方式重新利用图像-标题对作为检索任务。对于其他数据集,我们采用原始查询,并使用注释的黄金候选者作为正面候选者c+和注释的困难负面作为不相关候选者c−。我们还采用了提供的候选池。总的来说,M-BEIR涵盖了8种不同的多模态检索任务和4个领域,拥有一个全球候选池,共有560万候选者。见表3的完整数据集列表。为确保基准数据的平衡,我们从较大的数据集如VisualNews、OVEN和InfoSeek中修剪了候选池和实例,这些数据集原本包含100万到600万实例,显著大于其他数据集。为了方便训练、验证和测试,我们使用每个数据集的原始数据集拆分。如果数据集只发布验证集,我们将一部分训练数据保留用于验证,并在原始验证集上报告结果。否则,我们使用测试集报告结果。有关数据处理的更多详细信息,请参阅附录。
指令注释指南。指令调整成功的一个关键组成部分是指定任务意图的多样化指令[12, 55]。为了设计多模态检索任务的指令,我们从TART[1]的指令模式中获得灵感。我们的M-BEIR指令通过意图、领域、查询模态和目标候选模态来描述一个多模态检索任务。具体来说,意图描述了检索资源与查询的关系。领域定义了目标候选者的预期资源,例如维基百科或时尚产品。对于像Fashion200K[18]这样的文本到图像检索数据集,我们的指令将是:“基于以下时尚描述,检索最佳匹配的图像。”更多例子见表1和图3。按照指令注释指南,我们为每个检索任务的每个查询编写了4个指令。完整的指令列表在附录表9和表10中。
3.3. 评估指标
我们遵循标准检索评估指标,即在MSCOCO上报告的recall@k,并为所有数据集报告结果。具体来说,我们遵循CLIP[47]/BLIP[33]在MSCOCO上的召回实现,如果检索到的实例与相关实例重叠,则将其计为正确。我们主要报告所有数据集的Recall@5,除了Fashion200K和FashionIQ,按照先前的工作[56]报告Recall@10。完整的Recall@1/5/10结果可以在附录表11中找到。
4. 实验