多模态大模型简介

摘要

        最近,以GPT-4V为代表的多模态大语言模型(MLLM)成为一个新的研究热点,它利用强大的大语言模型(LLMs)作为大脑来执行多模态任务。MLLM令人惊讶的新兴能力,如根据图像编写故事和无OCR数学推理,在传统多模态方法中是罕见的,这为人工通用智能的发展提供了一条潜在的道路。为此,学术界和产业界都在努力开发可与 GPT-4V 竞争甚至优于 GPT-4V 的 MLLM,以惊人的速度突破研究极限。本文旨在追溯和总结 MLLM 的最新进展。首先,我们介绍了 MLLM 的基本表述,并划分了其相关概念,包括体系结构、训练策略和数据以及评估。然后,我们介绍有关如何扩展 MLLM 以支持更多粒度、模式、语言和场景的研究课题。我们继续介绍多模态幻觉和扩展技术,包括多模态 ICL(M-ICL)、多模态 CoT(M-CoT)和 LLM辅助视觉推理(LAVR)。最后,我们讨论了现有的挑战,并指出了有前途的研究方向。鉴于 MLLM 时代才刚刚开始,我们将不断更新这份调查报告,并希望它能激发更多研究。

1. 简介

        近年来,LLMs取得了显著的进步。通过扩大数据规模和模型规模,这些LLMs提高了非凡的新兴能力,通常包括指令跟随、情境学习(ICL)和思维链(CoT)。尽管LLMs在大多数自然语言处理(NLP)任务中都表现出了惊人的推理性能,但由于它们只能理解离散文本,因此在视觉方面天生就是 "盲人"。与此同时,大型视觉模型(LVM)也能看得很清楚,但在推理方面却普遍落后。

        鉴于这种互补性,LLM和 LVM 相辅相成,形成了多模态大语言模型(MLLM)这一新领域。从结构上讲,它是指基于 LLM 的模型,具有接收、推理和输出多模态信息的能力。在 MLLM 出现之前,已经有很多人致力于多模态的研究,这些研究可分为判别式和生成式两种类型。CLIP是前者的代表,它将视觉和文本信息投射到统一的表示空间,为下游的多模态任务搭建了桥梁。相比之下,OFA则是后者的代表,它以sequence到sequence的方式统一了多模态任务。MLLM由于使用sequence to squence的方式实现数据处理因此归类为后者,但它和这些早期的sequence to squence模型相比,有两个代表性的特点:

  • MLLM 基于 LLM 架构搭建十亿参数级的模型,就能实现以往模型所不具备的能力。
  • MLLM 使用新的训练方式来释放其全部潜能,例如使用多模态指令调整,来鼓励模型遵循新指令。

        有了这两个特点,MLLM 展现出了新的能力,例如根据截图编写网站代码、理解备忘录的深层含义以及不通过OCR直接实现数学推理。

        自从 GPT-4发布以来,由于 MLLMs 展示了令人惊叹的多模态示例,因此掀起了一股研究热潮。学术界和产业界的努力推动了该技术的快速发展。关于 MLLMs 的初步研究主要集中在以文本提示为基础的图像,视频,音频和文本内容生成。随后的工作扩展了功能或使用场景,包括:(1) 更好的粒度支持。开发了更精细的用户提示控制,通过方框支持特定区域,或通过点击支持特定对象。(2) 增强对输入和输出数据模态的支持,如图像、视频、音频和点云。除输入外,NExT-GPT等项目还进一步支持不同模式的输出。(3) 改进语言支持。在训练语料相对有限的情况下,人们努力将 MLLM 的成功经验扩展到其他语言(如中文)[33]、[34]。(4) 扩展到更多领域和使用场景。一些研究将 MLLMs 的强大功能转移到了其他领域,如医学图像理解和文档解析。此外,人们还开发了多模态代理(multimodal agents)来协助现实世界中的交互,例如具身代理、和图形用户界面代理。图 1 展示了 MLLM 研究的技术时间轴。

图 1:具有代表性的 MLLM 的时间轴。我们正在见证这一领域的快速发展
图 1:具有代表性的 MLLM 的时间轴。我们正在见证这一领域的快速发展。

        我们撰写本调查报告的目的是让研究人员掌握 MLLM 的基本思想、主要方法和当前进展。请注意,我们主要关注视觉和语言模式,但也包括涉及视频和音频等其他模式的研究。

后续的综述排版如下:调查首先全面回顾了 MLLM 的基本方面,包括

  • 主流架构(第2章);
  • 训练策略和数据的完整技术路线(第3章);
  • 性能评估的常见做法(第4章)。

然后,我们深入讨论有关 MLLM 的一些重要话题,每个话题都围绕一个主要问题:

  • 哪些方面可以进一步改进或扩展(第5章)?
  • 如何缓解多模态幻觉问题(第6章)?
  • 调查报告继续介绍了三种关键技术(第7章),每种技术都针对特定场景:MICL (7.1) 是一种有效的技术,通常用于推理阶段,以提高少数几个镜头的性能。另一项重要技术是M-CoT (7.2),它通常用于复杂推理任务。随后,我们阐述了开发基于LLM的系统以解决复合推理任务或解决常见用户查询($7.3)的总体思路。

最后,我们以总结和潜在的研究方向结束我们的调查。

2. 架构设计

        典型的 MLLM 可抽象为三个模块,即一个预训练的模态编码器、一个预训练的 LLM 和一个连接它们的模态接口。与人类类比,图像/音频编码器等模态编码器是人类的眼睛/耳朵,用于接收和预处理光学/声学信号,而LLMs就像人类的大脑,用于理解和推理处理过的信号。在这两者之间,模态接口的作用是使不同的模态保持一致。有些 MLLM 还包括一个生成器,用于输出文本以外的其他模态。图 2 是该架构的示意图。在本节中,我们将依次介绍各个模块。

图 2:典型 MLLM 架构示意图。它包括一个编码器、一个连接器和一个 LLM 。LLM可附加一个可选的生成器,来生成文本以外的更多数据模式。编码器接收图像、音频或视频数据后经过处理后输出特征,经连接器处理后,LLM就能更好地理解。连接器大致有三种类型:基于线性投影的连接器、基于查询的连接器和基于特征融合的连接器。前两种类型采用标记级融合,将特征处理成标记,与文本标记一起发送,而最后一种类型可在 LLM 内部实现特征级融合。
图 2:典型 MLLM 架构示意图。它包括一个编码器、一个连接器和一个 LLM 。LLM可附加一个可选的生成器,来生成文本以外的更多数据模式。编码器接收图像、音频或视频数据后经过处理后输出特征,经连接器处理后,LLM就能更好地理解。连接器大致有三种类型:基于线性投影的连接器、基于查询的连接器和基于特征融合的连接器。前两种类型采用标记级融合,将特征处理成标记,与文本标记一起发送,而最后一种类型可在 LLM 内部实现特征级融合。

 2.1. 模态编码器

        模态编码器将图像或音频等原始信息压缩为更紧凑的表示形式。与从头开始训练相比,最常见的方法是使用已与其他模态对齐的预训练编码器。 例如,CLIP通过对图像-文本对进行大规模预训练,将视觉编码器与文本语义对齐。因此,通过对齐预训练(见第 3.1 节),使用此类初始预对齐编码器与 LLMs 进行对齐会更加容易。

        表 1 总结了一系列常用的图像编码器。除了普通的 CLIP 图像编码器[13],一些作品还探索使用其他变体。例如,MiniGPT-4 [21] 采用了 EVA-CLIP(ViT-G/14)编码器,该编码器通过改进的训练技术进行训练。相比之下,Osprey引入了基于卷积的 ConvNext-L 编码器,以利用更高分辨率和多层次特征。一些研究还探索了无编码器架构。例如,Fuyu-8b [49] 的图像补丁在发送到 LLMs 之前被直接投影。因此,该模型自然支持灵活的图像分辨率输入。

标表 1:常用图像编码器概述题

         在选择编码器时,人们通常会考虑分辨率(Resolution)、参数大小(Parameter Size)和预训练数据库(Pretraining Corpus)等因素。值得注意的是,许多研究已经通过经验验证,使用更高的分辨率可以实现显著的性能提升提高输入分辨率的方法可分为直接缩放法和补丁分割法。

  • 直接缩放法是向编码器输入更高分辨率的图像,这通常需要进一步调整编码器 [34] 或更换预先训练好的更高分辨率的编码器 [50]。同样,CogAgent [44] 采用双编码器机制,由两个编码器分别处理高分辨率和低分辨率图像。高分辨率特征通过交叉关注(cross-attention)注入低分辨率分支。
  • 补丁分割法将高分辨率图像切割成补丁,然后使用低分辨率编码器进行编码。例如,Monkey [51] 和 SPHINX [53]将大图像分割成较小的斑块,并将子图像和降采样的高分辨率图像一起发送到图像编码器,其中子图像和低分辨率图像分别捕捉局部和全局特征。相反,经验研究发现,参数大小和训练数据组成与输入分辨率相比并不那么重要[52]

        其他模态下的数据也能够使用相同的encoder。举个例子,Pengi [27] 使用 CLAP [54] 模型作为音频编码器。ImageBind-LLM[30]使用 ImageBind [55] 编码器,支持图像、文本、音频、深度、热和惯性测量单元(IMU)数据的编码。借助强大的编码器,ImageBind-LLM可对多种模式的输入做出响应。

2.2. 预训练LLM

        和模态编码器一样,与其从头开始训练 LLM,不如从预训练的 LLMs开始,这样会更有效、更实用。通过对网络语料的大量预训练,LLMs已经嵌入了丰富的世界知识,并显示出强大的泛化和推理能力。

        我们在表 2 中总结了常用和公开的 LLMs 。可以看出,多数 LLMs 都属于因果解码器类别,GPT-3[7] 类似。其中,FlanT5 [56] 系列是相对较早的 LLMs ,用于 BLIP-2 [59] 和 InstructBLIP [60] 等工作。LLaMA 系列[5]、[57]和 Vicuna 系列[4]是具有代表性的开源 LLMs ,已引起学术界的广泛关注。由于这两个LLMs主要是在英语数据库中进行预训练,因此在多语言支持(如中文)方面受到限制。相比之下,Qwen[58] 是一个双语 LLM,能够很好地支持中文和英文。

表 2:常用开源 LLMs 摘要。en、zh、fr 和 de 分别代表英文、中文、法文和德文

        此外,扩大 LLMs 的参数大小也会带来额外的收益,这与提高输入分辨率的情况类似。具体来说,Liu 等人[50]、[61] 发现,只需将 LLM 从 7B 放大到 13B,就能在各种基准上带来全面的改进。此外,当使用 34B LLM 时,由于在训练过程中只使用了英语多模态数据,该模型显示出了新出现的 zero-shot 的中文能力。Lu 等人[62]通过将 LLMs 从 13B 扩展到 35B 和 65B、70B,也看到了类似的现象,更大的模型规模在专门为 MLLMs 设计的基准上带来了一致的收益。还有一些作品使用较小的 LLMs 以方便在移动设备上部署。例如,MobileVLM 系列[63]、[64] 使用缩小的 LLaMA [5](称为 MobileLLaMA 1.4B/2.7B),从而在移动处理器上实现了高效推理。

        最近,针对LLMs的专家混合(MoE)架构的探索引起了越来越多的关注[65], [66], [67]。与稠密模型(dense model)相比,稀疏架构通过选择性激活参数,可以在不增加计算成本的情况下扩大总参数大小。MM1 [52] 和 MoE-LaVA [68] 发现,在几乎所有的基准测试 (benchmark) 中,MoE 实现的性能都优于密集模型(dense counterpart)。

2.3. 模态交互 multimodal interface

        由于 LLMs 只能感知文本,因此有必要在自然语言和其他模态之间架起一座桥梁。然而,以端到端方式训练大型多模态模型的成本很高。更实用的方法是在预先训练好的视觉编码器和 LLM 之间引入一个可学习的连接器。另一种方法是借助专家模型将图像翻译成语言,然后将语言发送给 LLM 。

2.3.1. 可学习的连接器(Learnable Connector)

        可学习负责弥合不同模式之间的差距。具体来说,该模块将信息投射到 LLM 能够有效理解的空间。根据多模态信息的融合方式,大致有两种方法来实现这种接口,即token级融合和特征级融合。

  • token级融合

        编码器输出的特征被转换为标记(tokens),并与文本标记连接(concatenated),然后被发送到 LLMs 中。一种常见可行的解决方案是利用一组可学习的查询标记,以基于查询的方式提取信息[69],这种方法首先在 BLIP-2[59] 中实现,随后被各种工作[26]、[60]、[70]所继承。这种 Q-Former(Q-Former-style)式方法可将视觉标记压缩成较少的表示向量。相比之下,有些方法只是使用基于 MLP 的界面来弥合模态差距 [20]、[37]、[71]、[72]。例如,LLaVA 系列采用一/二线性 MLP [20], [50] 来投影视觉标记,并将特征维度与词嵌入对齐。

        与此相关,MM1[52]对连接器的设计选择进行了分析,发现对于标记级(toten-level)融合来说,模态适配器的类型远不如视觉标记(token)的数量和输入分辨率重要。不过,Zeng 等人[73] 比较了标记级(toten-level)融合和特征级融合的性能,经验表明标记级融合变体在 VQA 基准方面表现更好。关于性能差距,作者建议交叉注意力模型(cross-attention models)可能需要更复杂的超参数搜索过程才能达到可比性能。

  • 特征级融合

        作为另一条线,特征级融合插入了额外的模块,使文本特征和视觉特征之间能够进行深度交互和融合。例如,Flamingo[74] 在 LLMs 的冻结 Transformer 层之间插入了额外的交叉注意(cross-attention )层,从而用外部视觉线索增强了语言特征。同样,CogVLM [75] 在每个转换器层中插入了一个视觉专家模块,以实现视觉和语言特征之间的双重交互和融合。为了获得更好的性能,引入模块的 QKV 权重矩阵由预先训练的 LLM 初始化。同样,LLaMA-Adapter [76] 将可学习的提示引入变换器层。这些提示首先嵌入视觉知识,然后作为前缀与文本特征连接。

        就参数大小而言,与编码器和LLMs相比,可学习接口通常只占很小一部分。以 Qwen-VL [34] 为例,Q-Former 的参数大小约为 0.08 B,占整个参数的1%不到,而编码器和LLM分别约占(1.9 B)和(7.7 B)。

2.3.2. 专家模型

        专家模型。除了可学习模态交互外,使用专家模型(如图像标题模型 image caption model)也是弥合模态差距的一种可行方法 [77], [78], [79], [80]。其基本思想是无需训练即可将多模态输入转换为语言。这样,LLMs就能通过转换后的语言理解多模态。例如,VideoChat-Text [25] 使用预先训练好的视觉模型来提取动作等视觉信息,并使用语音识别模型来丰富描述。虽然使用专家模型很简单,但可能不如采用可学习的界面灵活。将外来模态转换为文本会造成信息损失。例如,将视频转换为文本描述会扭曲特征空间的关系[25]。

3. 训练策略和数据集

        成熟的 MLLM 需要经过三个阶段的训练,即预训练、指令调整和对齐调整。每个训练阶段需要不同类型的数据,并实现不同的目标。在本节中,我们将讨论每个训练阶段的训练目标、数据收集和特征。

3.1. 预训练

3.1.1. 训练细节

        作为第一个训练阶段,预训练的主要目的是调整不同模态并学习多模态世界知识。预训练阶段一般需要大规模的文本配对数据,例如标题数据(caption data)。通常,标题对(caption pair)以自然语言句子描述图像/音频/视频。

        在此,我们考虑一种常见的情况,即训练 MLLM 使视觉信息与文本信息相对齐。如表 3 所示,在给定图像的情况下,按照标准的交叉熵损失,训练模型来自回归预测图像的标题(caption)。预训练的常见方法是冻结预训练模块(如视觉编码器和 LLMs)并训练可学习模态交互器[20]、[35]、[72]。这样做的目的是在不丢失预先训练的知识的情况下对不同模态进行调整。有些方法 [34]、[81]、[82] 也会尝试解冻更多的模态解码器(如视觉编码器),以获得更多可训练的对齐参数。

图 3:结构化标题数据的简化模板。{<image>} 是视觉标记(visual token)的占位符,{caption} 是图像的标题。请注意,只有标为红色的部分才用于计算损失

        需要注意的是训练方案的选择和数据库的质量有着密切的关系。对于较短且具有噪声的caption数据,适合用较低分辨率(224)的图像数据来加快训练过程。而对于较长,较干净的caption,最好采用较高分辨率(448或者更高)来减少幻觉。此外,ShareGPTV4发现,在预训练阶段使用高质量的caption数据,能够使视觉编码更好的对齐。

3.1.2. 数据

        预训练数据主要有两个用途, 即 (1) 对齐不同模态和 (2) 提供世界知识。预训练数据库按粒度可分为粗粒度和细粒度数据,我们将依次介绍。表 4 总结了常用的预训练数据集。

        粗粒度标题数据有一些共同的典型特征:(1)数据量大,因为样本一般来自互联网。(2) 由于具有网络抓取的性质,标题通常较短且嘈杂,因为它们来自网络图像的alt-text。这些数据可以通过自动工具进行清理和过滤,例如,使用 CLIP [13] 模型过滤掉相似度低于预设阈值的图像文本对。下面,我们将介绍一些具有代表性的粗粒度数据集。

  • CC-3M[84]

一个网络规模的标题数据集,包含 330 万个图像-标题对,其中的原始描述来自与图像相关的alt-text。作者设计了一个复杂的pipeline来清理数据:

  1. 对于图片,过滤那些内容或长宽比不合适的图片。
  2. 对于文本,使用 NLP 工具获取文本注释,并根据设计的启发式方法过滤样本。
  3. 对于图像-文本对,通过分类器为图像分配标签。如果文本注释与图像标签不重叠,则放弃相应的样本。
  • CC-12M [85]

        是 CC-3M 的后续作品,包含 1240 万个图像标题对。与之前的工作相比,CC-12M 放宽并简化了数据收集pipeline,从而收集到了更多数据。

  • SBU 标题[86]

        这是一个包含 100 万个图像-文本对的标题化(captioned)照片数据集,其中的图像和描述均来自 Flickr。具体来说,初始图像集是通过在 Flickr 网站上查询大量查询条件获得的。图片所附的描述(description)可作为标题。然后,为确保描述与图片相关,保留的图片必须满足以下要求:(1) 通过观察决定图片说明(description)的长度是否令人满意。(2) 图片说明中至少包含 2 个预定义术语列表中的单词和一个一般暗示空间关系的命题词(如 "上"、"下")。

  • LAION

        该系列是大型网络规模的数据集,包含从互联网上潦草抓取的图片和相关的alt-text作为标题。为了过滤图像-文本对,需要执行以下步骤:(1) 删除长度较短的文本或尺寸过小或过大的图像。(2) 根据 URL 重复删除图片。(3) 为图像和文本提取 CLIP [13] 嵌入,并使用嵌入来删除可能非法的内容和嵌入间余弦相似度较低的图像-文本对。在此,我们简要介绍一些典型的变体:

    • LAION-5B [87]:这是一个包含 58.5 亿个图像-文本对的研究用途数据集。该数据集是多语言的,其中有 20亿 的英语子集。
    • LAION-COCO:它包含从 LAION-5B 的英文子集中提取的 6亿 幅图像。caption是合成的,使用BLIP[89]生成各种图像caption,并使用CLIP挑选最适合图像的caption。
    • COYO-700M:这是一个包含7.47亿图像文本对的子集,在数据过滤方面,作者采用了以下策略:对于数据过滤,作者设计了以下策略:(1) 对于图片,过滤那些大小、内容、格式或长宽比不合适的图片。此外,还根据 pHash 值对图片进行过滤,以去除与 ImageNet 和 MS-COCO 等公共数据集重叠的图片。(2) 对于文本,只保存长度、名词形式和适当单词令人满意的英文文本。句子前后的空格将被删除,连续的空格字符将被替换为单个空格。此外,出现 10 次以上的文本(如 "image for")将被删除。(3) 对于图像-文本对,会根据 (image pHash,文本)tuple 去删除重复样本。

        最近,越来越多的研究 [83]、[91]、[92] 探索通过提示强 MLLM(如 GPT-4V)来生成高质量的细粒度数据。与粗粒度数据相比,这些数据通常包含更长、更准确的图像描述,从而实现图像和文本模态之间的细粒度对齐。不过,由于这种方法一般需要调用商业用途的 MLLM,因此成本较高,数据量相对较小。因此为了解决这个问题,ShareGPT4V [83] 先通过 GPT-4V 生成的 100 K 数据训练标题器(train a captioner),然后使用这个预训练的标题器将数据量扩展到 1.2 M,从而达到平衡。

3.2. 指令调整 Instruction-tuning

3.2.1. 前言

指令是对任务的描述,直观地说,指令调整的目的是教会模型更好地理解用户的意图,并完成所要求的任务。通过这种方式的调整,LLMs可以通过遵循新指令来泛化到未见过的任务中,从而提高零样本学习的性能。这一简单而有效的想法引发了后续 NLP 作品的成功,如 ChatGPT [2]、InstructGPT [95]、FLAN [19]、[56] 和 OPT-IML [96]。

图 3 展示了指令微调几个典型学习范式,并对他们做了比较。

    • 有监督的微调方法通常需要大量特定任务数据来训练特定任务模型。
    • 提示(prompt)方法减少了对大规模数据的依赖,可以通过提示工程(prompt engineering)完成特定任务。在这种情况下,虽然少发性能有所提高,但零样本学习的性能仍然相当一般[7]。
    • 指令调整学习的是如何泛化到未见过的任务中,而不是像上述两种方法那样去适应特定的任务。此外,指令调整与多任务提示高度相关[97]。

图 3:三种典型学习范式的比较

        在本节中,我们将介绍指令(instruction)样本的格式、训练目标、收集指令数据的典型方法以及与这些指令样本相关的常用数据集。 

3.2.2. 训练细节

        多模态指令样本通常包括一个可选指令(optinal instruction)和一对输入-输出对。

  • 指令通常是描述任务的一句话,例如 "详细描述图像"--‘describe the image detail’
  • 输入可以是图像-文本对,如 VQA 任务[99],也可以仅是一个图像(在VQA任务中,模型需要处理一个图像和一个与图像相关的问题(文本),然后生成一个答案,在图像标题(caption)生成任务中,模型只需要处理一个图像,并生成一个描述该图像内容的文本)。
  • 输出是以输入为条件的指令答案。

        如表 5 所示,指令模板非常灵活,可由人工设计 [20]、[25]、[98]。需要注意的是,指令模板也可以推广到多轮对话的情况 [20]、[37]、[71]、[98]。

表 5:简化的多模态指令数据结构模板。 <instruction>是任务的文字描述。{<image>, <text>} 和 <output> 是数据样本的输入和输出。有些数据集的输入<text>可能会被遗漏,如图像标题(caption)数据集仅有<image> .该示例来自 [98]

        从形式上看,多模态指令样本可以三元组形式表示,即(I, M, R) ,其中 I, M, R 分别代表指令、多模态输入和真实答案(the ground truth response)。MLLM 根据指令和多模态的输入进行预测:

A = f(I, M, \theta)

其中,A表示预测答案,\theta 是模型参数。训练目的是用来训练 LLMs 的原始自回归目标 [20], [37], [71], [101],在此基础上MLLM进行下一个token的预测。目标可以表示为:

其中,N为真实答案的长度。

3.2.3. 数据收集

        由于指令数据的格式更加灵活,任务形式也更加多样,因此收集数据样本通常更加棘手,成本也更高。在本节中,我们将总结大规模收集教学数据的三种典型方法,即数据调整(data adaptation)、自指令(self-instruction)和数据混合(data mixture)。

  • 数据调整 data adaption

        特定任务数据集是高质量数据的丰富来源。因此,大量研究[60] [70] [76] [82] [101] [102] [103] [104]利用现有的高质量数据集构建指令格式化数据集。

        以 VQA 数据集的转换为例,原始样本是输入-输出对,其中输入由图像和自然语言问题组成,输出是以图像为条件的问题文本答案。这些数据集的输入输出对自然可以包含指令样本的多模态输入和响应(见第 3.2.2 节)。指令 instruction,即任务描述,既可以来自人工设计,也可以来自 GPT 辅助下的半自动生成。具体来说,一些研究[21]、[35]、[60]、[70]、[102]、[105]手工制作了一个候选指令库,并在训练过程中对其中一个指令库进行了采样。我们提供了一个 VQA 数据集的指令模板示例,如表 6 所示。其他工作则是手工设计一些种子指令,并使用这些指令促使 GPT 生成更多指令 [25][82][98]。

        由于现有 VQA 和标题数据集的答案通常比较简洁,直接使用这些数据集进行指令调整可能会限制 MLLM 的输出长度。这里有两种解决方案。第一种是 在指令中明确指出,例如,ChatBridge [104] 在指令中明确声明了简短和简洁的要求(简答题数据类型),以及一句和单句的要求(传统的粗粒度标题数据)。第二种是扩展现有答案的长度 [105]。例如,M3IT [105] 提出通过向 ChatGPT 提供原始问题、答案以及图像的上下文信息(例如,标题和OCR)来重新表述原始答案。

  • 自指令 self-instruction

        虽然现有的多任务(multi-task)数据集可以提供丰富的数据源,但它们通常不能很好地满足现实世界场景中的人类需求,例如多轮对话。一些研究通过自指令来收集样本 [106],即利用 LLMs 来生成文本指令跟随数据。具体来说,首先人工制作一些指令跟随样本的示范,ChatGPT/GPT-4 会被提示(prompted)以示范为指导生成更多的指令样本。LLaVA [20] 将该方法扩展到多模态领域,将图像翻译成标题和边界框的文本,并提示纯文本 GPT-4 在需求和演示的指导下生成新数据。通过这种方式,一个多模态教学数据集被构建出来,名为 LLaVA-Instruct-150k。按照这一思路,MiniGPT-4[21]、ChatBridge[104]、GPT4Tools[107]和 DetGPT [72] 等后续作品针对不同需求开发了不同的数据集。最近,随着功能更强大的多模态模型 GPT4 V 的发布,许多工作都采用了 GPT-4V 来生成更高质量的数据,例如 LVIS-Instruct4V [91] 和 ALLaVA [92]。我们在表 7 中总结了通过自我指导生成的流行数据集。

  • 数据混合

        除了多模态指令数据外,纯语言用户辅助对话数据也可用于提高对话熟练程度和指令遵循能力 [81], [98], [101], [103]。LaVIN [101] 通过从纯语言数据和多模态数据中随机抽样,直接构建了一个小批量数据。MultiInstruct [102]探究了使用单模态和多模态数据融合训练的不同策略,包括混合指令调整(结合两种类型的数据并随机洗牌)和顺序指令调整(文本数据后是多模态数据)。

3.2.4. 数据质量

        最近的研究表明,指令调优样本的数据质量与数量同样重要。Lynx [73] 发现,在大规模但噪声较多的图像-文本对上预训练的模型表现不如在较小但更干净的数据集上预训练的模型。同样,Wei 等 [108] 发现,较少的高质量指令调优数据可以实现更好的性能。对于数据过滤,该工作提出了一些评估数据质量的指标,并相应地提出了一种自动过滤劣质视觉-语言数据的方法。在这里,我们讨论关于数据质量的两个重要方面。

  • Prompt多样性

        提示多样性。指令(instruction)的多样性被发现对模型性能至关重要。Lynx [73] 实证验证了多样化的提示(prompt)有助于提高模型性能和泛化能力。

  • 任务覆盖

        在训练数据涉及的任务方面,Du 等人[109]进行了一项实证研究,发现视觉推理任务在提升模型性能方面优于标题(caption)生成和问答任务。此外,该研究表明,增强指令的复杂性可能比增加任务多样性和引入细粒度空间注释更有益。

3.3. 对齐调整 Alignment tuning

3.3.1. 前言

        模型需要根据人类用户或特定应用场景的特定需求进行调整,以生成更加符合人类期望的输出,例如较少的幻觉响应(见第 6 节),目前,人类反馈强化学习(RLHF)和直接偏好优化(DPO)是对齐调整的两种主要技术。在本节中,我们将依次介绍这两种技术思想,并举例说明图和利用他们解决实际问题,最后提供数据集汇编。

3.3.2. 训练细节

RLHF[110], [111]。这项技术旨在利用强化学习算法,将 LLMs与人类偏好保持一致,并将人类注释作为训练循环中的监督。以 InstructGPT [95] 为例,RLHF 包含三个关键步骤:

  1. 监督微调(Supervised fine-tuning, SFT)。这一步骤的目的是对预先训练好的模型进行微调,以呈现初步的预期输出行为。在 RLHF 设置中,微调后的模型称为策略模型。请注意,由于监督策略模型 \pi^{SFT} 可以从指令调整模型初始化,因此可以跳过这一步(参见第 3.2 节)。
  2. 奖励模型(reward modeling)。在这一步骤中,奖励模型使用偏好对(preference pairs)进行训练。给定一个多模态提示(如 图像和文本) x 和一对respond (yw, yl) ,奖励模型 r_\theta  会根据以下目标,学习给首选反应 yw 更高的奖励,反之亦然:

        其中, D=(x,y_w,y_i)  是由人工标注者标注的对比数据集。实际上,奖励模型 r_\theta 与策略模型的结构类似。

        3. 强化学习。在这一步中,采用近端策略优化(PPO)算法来优化 RL 策略模型 \pi_\phi^{RL} 。通常会在训练目标中加入每个token的 KL 惩罚,以避免偏离原始策略太远 [95],从而实现目标:

\mathcal{L}(\phi) = - \mathbb{E}_{x \sim \mathcal{D}, y \sim \pi_\phi^{RL}(y|x)} \left[ r_\theta(x, y) - \beta \cdot \mathcal{D}_{KL}\left( \pi_\phi^{RL}(y|x) \| \pi^{REF}(y|x) \right) \right]

        其中 \beta 是 KL 惩罚项的系数,通常RL 策略 \pi_\phi^{RL} 和参考模型 \pi^{REF} 都是从监督模型 \pi^{SFT}初始化而来。通过这一调整过程,得到的 RL 策略模型有望与人类偏好保持一致。

        研究人员已经探索使用 RLHF 技术更好地进行多模态配准。例如,LLaVARLHF [112] 收集了人类偏好数据,并在 LLaVA [20] 的基础上调整了一个幻觉较少的模型。

        DPO [113]。它利用简单的二元分类损失从人类偏好标签中学习。与基于 PPO 的 RLHF 算法相比,DPO 无需学习明确的奖励模型,从而将整个流程简化为两个步骤,即人类偏好数据收集和偏好学习。学习损失函数如下:

\begin{aligned} \mathcal{L}(\phi) &= -\mathbb{E}_{(x, y_w, y_l) \sim \mathcal{D}} \left[ \log \sigma \left( \beta \log \frac{\pi_\phi^\text{RL}(y_w | x)}{\pi^\text{REF}(y_w | x)} - \beta \log \frac{\pi_\phi^\text{RL}(y_l | x)}{\pi^\text{REF}(y_l | x)} \right) \right] \end{aligned}

        RLHF-V [114] 通过纠正模型响应中的幻觉来收集细粒度(段落级)偏好数据对,并使用这些数据进行密集的DPO(Dense Prediction Optimization)。Silkie [115] 则通过提示GPT-4V来收集偏好数据,并通过DPO将偏好监督提炼成通过指令调优的模型。

3.3.3. 数据

用于对齐调整(alignment-tuning)的数据收集重点是收集模型响应的反馈,即决定哪种响应更好。一般来说,收集这类数据的成本较高,而且这一阶段使用的数据量通常比前几个阶段使用的数据量还要少。在这一部分,我们将介绍一些数据集,并在表 8 中对其进行总结。

LLaVA-RLHF [112]。该数据集包含从人类反馈中收集的 10 K 个关于诚实性honesty和有用性helpful的偏好对。该数据集主要用于减少模型响应中的幻觉。

RLHF-V [114]。它拥有通过分段级幻觉修正收集的 5.7 K 精确人类反馈数据。

VLFeedback [115]。它利用人工智能对模型响应提供反馈。该数据集包含 380K 多个对比对,由 GPT-4V 根据有用性、忠实性和道德问题进行评分。

4. 评估

模型效果评估是开发 MLLM 的重要组成部分,因为它为模型优化提供反馈,并有助于比较不同模型的性能。与传统多模态模型的评估方法相比,MLLMs 的评估呈现出以下几个新特点:(1)由于 MLLMs 通常具有多功能性,因此对 MLLMs 进行全面评估非常重要。(2) MLLM 展示了许多需要特别关注的新兴能力(如无 OCR 数学推理),因此需要新的评估方案。根据问题类型,MLLMs 的评估大致可分为两类,包括封闭式和开放式。

4.1. 封闭式 Closed-set

封闭式问题(Closed-set questions)指的是那种答案选项预先定义并且限定在一个有限集合中的问题类型。评估通常在特定任务数据集上进行。在这种情况下,responses自然可以通过基准指标来评判 [20]、[60]、[70]、[76]、[101]、[102]、[103]、[104]。例如,InstructBLIP [60] 报告了 ScienceQA [116] 的准确度,以及 NoCaps [118] 和 Flickr30K [119] 的 CIDEr 分数 [117]。评估设置通常为零样本学习 [60]、[102]、[104]、[105] 或微调 [20]、[35]、[60]、[70]、[76]、[101]、[103]、[105]。第一种设置通常会选择涵盖不同一般任务的大量数据集,并将其分为保留数据集和留出数据集。在第一种调优(tuning)完成之后,零样本(zero-shot)性能会在留出(held-out)数据集上进行评估,这些数据集是模型在训练时没有见过的,甚至是全新的任务。与此相反,第二种设置(留出数据集上的评估)在评估特定领域任务时更为常见。例如,LLaVA [20] 和 LLaMA-Adapter [76] 在 ScienceQA [116] 数据集上报告了微调后的性能。LLaVA-Med [35] 在生物医学视觉问答(VQA)任务上报告了结果。

上述评估方法通常局限于小范围的选定任务或数据集,缺乏全面的定量比较。为此,一些人努力开发专门为 MLLM 设计的新基准 [123], [124], [125], [126], [127], [128], [129]。例如,Fu 等人[123] 构建了一个综合评估基准 MME,其中包括总共 14 个感知和认知任务。MME 中的所有指令-答案对都是人工设计的,以避免数据泄漏。MMBench [124] 是专门为评估模型能力的多个维度而设计的基准,使用 ChatGPT 将开放式回答与预先定义的选择相匹配。Video-ChatGPT [130] 和 Video-Bench [131] 专注于视频领域,并提出了专门的基准和评估工具。还有一些评估策略旨在评估模型的特定方面[102],例如 POPE [132] 用于评估幻觉程度。

4.2. 开放式 Open-set

与封闭式问题相比,开放式问题的回答可以更加灵活,MLLM 通常在其中扮演聊天机器人的角色。由于聊天内容可以是任意的,因此评判起来比封闭式输出更棘手。评判标准可分为人工评分、GPT 评分和案例研究。手动评分需要人工对生成的回复进行评估。这种方法通常涉及手工设计的问题,旨在评估特定的维度。例如,mPLUG-Owl [81] 收集了一个视觉相关的评估集,用于判断自然图像理解、图表和流程图理解等能力。同样,GPT4Tools[107]分别为微调和zeroshot性能建立了两个问题集,并从思想、行动、论据和整体等方面对回答进行评估。

由于人工评估耗费大量人力,一些研究人员探索了使用 GPT 进行评分的方法,即 GPT 评分法。这种方法通常用于评估多模态对话的性能。LLaVA [20] 建议通过纯文本 GPT-4 从不同方面(如有用性和准确性)对回复进行评分。具体来说,从 COCO [133] 验证集中抽取了 30 幅图像,每幅图像都与一个简短的问题、一个详细的问题和一个通过 GPT-4 自我指导的复杂推理问题相关联。模型和 GPT-4 生成的答案都会发送到 GPT-4 进行比较。随后的工作沿用了这一思路,提示 ChatGPT [81] 或 GPT-4 [35]、[70]、[101]、[104]、[105] 对结果进行评分 [35]、[70]、[81]、[101]、[104] 或判断哪个更好 [103]。

应用纯文本 GPT-4 作为评估工具的一个主要问题是,评判只基于与图像相关的文本内容,如标题或边界框坐标,而不访问图像 [35]。因此,在这种情况下将 GPT-4 设置为性能上限可能会有问题。随着 GPT 视觉界面的发布,一些作品 [77]利用更先进的 GPT-4V 模型来评估 MLLM 的性能。例如,Woodpecker [77] 采用 GPT-4V 根据图像判断模型答案的响应质量。由于 GPT-4V 可以直接访问图像,因此评估结果有望比使用纯文本 GPT-4 更准确。

一种补充方法是通过案例研究来比较 MLLM 的不同能力。例如,一些研究对 GPT-4V 和 Gemini 这两种典型的高级商业用途模型进行了评估。Yang等人[135]通过制作一系列横跨不同领域和任务的样本,对GPT-4V进行了深入的定性分析,这些样本涵盖了从初步技能(如caption和物体计数)到需要世界知识和推理的复杂任务(如笑话理解和作为self-agent的室内导航)。Wen 等人[136]通过设计针对自动驾驶场景的样本,对 GPT-4V 进行了更有针对性的评估。Fu等人[137]通过将Gemini-Pro模型与GPT-4V进行比较,对Gemini-Pro进行了全面评估。结果表明,尽管 GPT-4V 和 Gemini 的反应风格不同,但它们的视觉推理能力相当。

5. 多模型模型的能力扩展

最近的研究在扩展 MLLM 的能力方面取得了重大进展,从更强大的基础能力到更广泛的场景覆盖。我们将追溯 MLLM 在这方面的主要发展。

细粒度支持。为了促进agents与用户之间更好的互动,研究人员开发了在模型输入和输出方面支持更精细粒度的 MLLM。在输入方面,从图像到区域[28]、[138]、[139]甚至像素[29]、[140]、[141],支持根据用户提示进行更精细控制的模型在逐步发展。具体来说,Shikra [28] 支持区域级输入和理解。用户可以更灵活地与助手进行交互,方法是通过自然语言形式的边界框来表示特定区域。Ferret [141] 则更进一步,通过设计一种混合表示方案来支持更灵活的指代。该模型支持不同形式的提示(prompt),包括点、框和草图。同样,Osprey [29] 通过使用分割模型 [9] 支持点输入。借助预先训练好的分割模型的卓越功能,Osprey 只需单击鼠标即可指定单个实体或实体的一部分。在输出方面,随着输入支持的发展,接地能力也得到了提高。Shikra[28]支持在图像中使用方框注释进行响应接地,从而带来更高的精度和更精细的参照体验。LISA[142]进一步支持掩码级理解和推理,从而使像素级接地成为可能。

模态支持。增加对模态的支持是 MLLM 研究的一个趋势。一方面,研究人员探索如何调整 MLLM 以支持输入更多的多模态内容,如 3D 点云 [41], [143], [144], [145]。另一方面,MLLM 也被扩展用于生成更多模态的响应,如图像 [32]、[146]、[147]、[148]、音频 [32]、[147]、[149]、[150] 和视频 [32]、[151]。例如,NEXT-GPT [32]在扩散模型的帮助下,提出了一个支持混合模态输入和输出的框架,具体来说就是文本、图像、音频和视频的组合。该框架采用编码器-解码器架构,将 LLM 作为理解和推理的枢纽。

语言支持。目前的模型主要是单语模型,这可能是由于高质量的非英语训练语料稀缺。有些研究致力于开发多语言模型,以便覆盖更广泛的用户。VisCPM [33] 通过设计一种多阶段训练方案,将模型能力转移到多语言环境中。具体地说,该方案以英语为核心语言,拥有丰富的训练语料。利用预先训练的双语 LLM,通过在指令调整过程中添加一些翻译样本,将多模态功能转移到中文中。Qwen-VL [34] 采用类似的方法,由双语 LLM Qwen [58] 发展而来,同时支持中文和英文。在预训练期间,中文数据被混合到训练语料中,以保持模型的双语能力,占整个数据量的22.7%。

场景/任务扩展。除了开发通用的通用辅助工具外,一些研究还侧重于应考虑实际条件的更具体场景,而另一些研究则将 MLLM 扩展到具有特定专业知识的下游任务。

一个典型的趋势是使 MLLM 适应更具体的现实生活场景。MobileVLM [63]探讨了为资源有限的场景开发小型 MLLM 变体的问题。一些设计和技术被用于在移动设备上部署,例如尺寸较小的 LLMs 和量化技术,以加快计算速度。其他作品则开发了与现实世界交互的代理[41]、[154]、[155],例如专门为图形用户界面(GUI)设计的用户友好型助手,例如 CogAgent [44]、AppAgent [43] 和 Mobile-Agent [45]。这些助手擅长规划和指导每个步骤,以完成用户指定的任务,是人机交互的辅助代理。另一种方法是利用特定技能增强 MLLM,以解决不同领域的任务,例如文档理解 [38], [39], [156], [157] 和医疗领域 [35], [36], [37]。在文档理解方面,mPLUG-DocOwl [38] 利用各种形式的文档级数据进行调整,从而增强了无 OCR 文档理解模型。TextMonkey[39]结合了与文档理解相关的多个任务来提高模型性能。除了传统的文档图像和场景文本数据集外,还增加了与位置相关的任务,以减少幻觉,帮助模型学会在视觉信息中做出反应。通过灌输医疗领域的知识,MLLMs 也可以扩展到医疗领域。例如,LLaVA-Med [158] 将医学知识注入 vanilla LLaVA [20],并开发了一个专门从事医学图像理解和问题解答的助手。

6. 多模态幻觉

多模态幻觉是指 MLLM 产生的响应response与图像内容不一致的现象[77]。作为一个基本而重要的问题,这一问题已受到越来越多的关注。本节将简要介绍一些相关概念和研究进展。

6.1. 储备知识

目前关于多模态幻觉的研究可进一步分为三种类型 [159]:

  1. 存在幻觉(Existence Hallucination):错误地声称图像中存在某些物体。
  2. 属性幻觉(Attribute Hallucination):描述某些物体的属性错误。例如无法正确识别狗的颜色。
  3. 关系幻觉(Relationship Hallucination):物体之间关系的虚假描述。例如相对位置和相互作用。

在下文中,我们首先介绍一个具体的评估方法(6.2节),这些方法有助于衡量减轻幻觉的方法之间的性能比较。

6.2. 评估方法

CHAIR[160]是一个早期的指标,用于评估开放式标题(open-ended captions)中的幻觉水平。该指标衡量了包含幻觉对象或在所有提及的对象中幻觉对象所占的比例。相比之下,

POPE [132] 是一种评估封闭式(closed-set)选择的方法。具体来说,该方法制定了多个具有二元选择的提示,每个提示都询问图像中是否存在特定对象。该方法还包括更具挑战性的设置,以评估 MLLM 的鲁棒性,并将数据统计考虑在内。最后的评估使用了简单的观察词机制,即通过检测关键词 "是/否",将开放式回答转换为封闭式二元选择。MME [123] 采用类似的评估方法,提供了更全面的评估,涵盖了存在、计数、位置和颜色等方面,如 [77] 所示。

HaELM [161] 建议使用纯文本 LLMs 作为判定标准,对照参考字幕自动判定 MLLMs 的caption是否正确。鉴于纯文本 LLMs 只能访问有限的图像上下文并且需要参考注释,Woodpecker [77] 使用 GPT-4V 直接评估基于图像的模型响应response。FaithScore [162] 是一种更精细的度量方法,它基于一种分解描述性子句并单独评估每个子句的程序。基于之前的研究,AMBER[163]是一个LLM-free基准,包括辨别任务和生成任务,并涉及三种可能的幻觉(见第 6.1 节)。

6.3. 优化方法

根据高层次的思路,目前的方法大致可分为三类:预修正、进程内修正和后修正。

预修正

解决幻觉问题的一个直观而简单的办法是收集专门数据(如负面数据),并利用这些数据进行微调,从而使模型中的幻觉反应减少。

LRV-Instruction引入了一个视觉指令调整数据集。除了常见的正面指令外,该数据集还在不同语义层次上加入了精心设计的负面指令,以鼓励忠实于图像内容的反应。LLaVA-RLHF [112] 收集人类偏好对,并利用强化学习技术对模型进行微调,从而使模型更符合较少幻觉的答案。

进程中修正(In-process-correction)

另一种方法是改进架构设计或特征表示。这些工作试图探索产生幻觉的原因,并设计相应的补救措施,以在生成过程中减轻幻觉。

HallE-Switch[159]对物体存在幻觉的可能因素进行了实证分析,并假设存在幻觉来源于视觉编码器未锚定(not grounded)的对象,它们实际上是根据LLM中蕴含的知识推断出来的。基于这一假设,我们引入了一个连续控制因子和相应的训练方案,以控制推理过程中模型输出的想象力程度。

VCD[165]认为,产生幻觉有两个主要原因,即训练数据库的标注错误和 LLMs中的强语言先验。作者注意到这样一种现象,即当图像中注入噪音时,MLLMs 在生成反应时倾向于语言先验而不是图像内容,从而导致幻觉。因此,这项研究设计了一种 "先放大后对比 "的解码方案来抵消这种错误偏差。

HACL [166] 研究了视觉和语言的嵌入空间(embedding space)。根据观察结果,设计了一种对比学习方案,以拉近成对的跨模态表征,同时推开非幻觉和幻觉文本表征。

后期校正

与之前的范式不同,后矫正以事后补救的方式减轻幻觉,并在输出生成后纠正幻觉。Woodpecker [77] 是一种无需训练的幻觉纠正通用框架。具体来说,该方法结合了专家模型来补充图像的上下文信息,并精心设计了一个管道来逐步纠正幻觉。该方法是可解释的,因为每一步的中间结果都可以检查,而且对象都是基于图像的。另一种方法是 LURE [167],它训练一个专门的修改器来屏蔽描述中不确定性较高的对象,并重新生成反应。

7. 扩展技术

7.1. 多模态情境学习(Mltimodal In-Context Learning)

上下文学习,ICL 是 LLMs 的重要新兴能力之一。ICL 有两个优点:与传统的监督学习范式不同,后者从大量数据中学习隐含模式,ICL(指令对比学习)的关键在于通过类比analogy进行学习[168]。具体来说,在 ICL 设置中,LLMs 从几个例子和一个可选指令中学习,并推断出新的问题,从而以一击即中的方式解决复杂和未知的任务 [22]、[169]、[170]。(2) ICL 通常以无需训练的方式实现 [168],因此可以在推理阶段灵活地集成到不同的框架中。与 ICL 密切相关的一项技术是指令调整(见第 3.2 节),经验表明它能增强 ICL 的能力[19]。通过instruction-tuning来增强ICL。

在 MLLM 的背景下,ICL 被扩展到更多模态,从而产生了多模态 ICL(M-ICL)。基于(第 3.2 节)中的设置,在推理时,M-ICL 可以通过在原始样本中添加演示集(即上下文样本集)来实现。在这种情况下,模板可以如表 9 所示进行扩展。需要注意的是,我们列出了两个上下文中的示例以作说明,但示例的数量和排序可以灵活调整。事实上,模型通常对演示的排列很敏感 [168],[171]。

表 9:简化的 M-ICL 查询结构模板示例,改编自 [98]。为便于说明,我们列出了两个上下文示例和一个用虚线分割的查询。{instruction} 和 {response} 是数据样本中的文本。<BOS>和<EOS>是标记,分别表示输入到 LLM 的开始和结束。

7.1.1. ICL能力提升方法

最近,越来越多的工作集中在提高各种应用场景下的 ICL 性能上。在本节中,我们将追溯这一领域的发展,并总结一些相关工作。

MIMIC-IT [172] 通过建立一个多模态上下文格式化的指令数据集,将上下文学习与指令调整相结合。在引入的数据集上调整后的模型指令在字幕caption任务中显示出更高的少样本few-shot性能。Emu [173] 扩展了 Flamingo [74] 的思路,在模型生成和相应的训练语料中引入了额外的模式。在引入的视觉解码器(即stable diffsion)的辅助下,该模型从额外的视觉监督中学习,并支持更灵活的输出格式和上下文推理。具体来说,除了纯文本回答外,该模型还能以图像的形式给出回答。Sheng 等人[174] 采用了类似的思路,并尝试将输出模式扩展到文本和图像。这项工作没有采用专门用于图像的编码器,而是采用了一个带有共享嵌入层的统一量化方案。

其他一些研究还探讨了如何在特定环境下提高few-shot学习性能。链接上下文学习Link-content learning[175]侧重于加强图像标签对之间的因果联系,并通过制定正反图像描述对来采用对比训练方案。MMICL [176]旨在增强对多个相关图像进行推理的能力。为了加强图像和文本之间的联系,该研究提出了一种上下文方案,将交错的图像-文本数据转换为统一格式。Jeong [177] 发现,当插入一小部分不连贯的图像/文本作为噪声时,MLLMs 会被误导,给出与上下文不一致的响应。基于这一观察结果,该研究相应地提出了一种预过滤方法,以去除不相关的上下文,促进更连贯的响应。

7.1.2. 应用

在多模态应用方面,M-ICL 主要用于两种情况:(1) 解决各种视觉推理任务 [22]、[74]、[178]、[179]、[180] 和 (2) 教 LLMs 使用外部工具 [169]、[170]、[181]。前者通常涉及从一些特定任务的例子中学习,然后归纳出新的但类似的问题。LLMs会从指令和演示中提供的信息中了解任务在做什么以及输出模板是什么,并最终生成预期答案。相比之下,工具使用示例则更为精细。它们通常包括一连串可按顺序执行的步骤,以完成任务。因此,第二种情况与 CoT 密切相关(见第 7.2 节)。

7.2. 多模态思维链 Multimodal Chain of Tought

正如先前的研究[8]所指出的,CoT 是 "一系列中间推理步骤",在复杂推理任务中被证明是有效的[8], [182], [183]。CoT 的主要思想是促使 LLMs 不仅输出最终答案,而且输出得出答案的推理过程,类似于人类的认知过程。受 NLP 成功经验的启发,许多研究 [184]、[185]、[186]、[187] 已提出将单模态 CoT 扩展为多模态 CoT(M-CoT)。我们首先介绍获得 M-CoT 能力的不同范式(7.2.1节)。然后,我们划分了M-CoT更具体的方面,包括链配置($7.2.2)和模式(§7.2.3)。

7.2.1. 学习范式 Learning Paradigms

学习范式也是值得研究的一个方面。获得 M-CoT 能力的途径大致有三种,即通过微调和免训练的少量样本学习和零样本学习。三种方式对样本量的要求依次递减。

直观地说,微调方法通常涉及为 M-CoT 学习策划特定的数据集。例如,Lu 等人[116]构建了一个包含讲座和解释的科学问题解答数据集 ScienceQA,它可以作为 CoT 推理学习的来源,并在这个提出的数据集上对模型进行微调。Multimodal-CoT [185] 也使用了 ScienceQA 基准,但以两步方式生成输出,即理由(推理步骤链)和基于理由的最终答案。CoT-PT [187] 则通过提示调整和特定步骤视觉偏差的组合来学习隐式推理链。

与微调相比,少次/零次学习的计算效率更高。它们之间的主要区别在于,少次学习通常需要手工制作一些上下文中的示例,这样模型就能更容易地逐步学会推理。与此相反,零点学习不需要任何特定的 CoT 学习示例。在这种情况下,模型可以在没有明确指导的情况下,通过 "让我们逐帧思考 "或 "这两个关键帧之间发生了什么 "等设计好的提示指令来学习使用嵌入式知识和推理能力 [184],[186]。同样,一些研究[22]、[188]通过对任务和工具使用的描述来提示模型将复杂任务分解为子任务。

7.2.2. 思维链配置 chain configuration

结构和长度是推理链的两个关键方面。就结构而言,目前的方法可分为单链法和树形法。单链推理是各种方法中广泛使用的一种范式 [116], [185]。具体来说,一步步的推理过程形成了一个单一的问题-推理-答案链。最近,一些方法探索使用更复杂的方案(即树形链)进行推理。具体来说,DDCoT [189] 将一个问题分解为多个子问题,每个子问题由 LLM本身或视觉专家来生成理由。然后,LLM将理由汇总并推理,形成最终答案。关于链的长度,可分为自适应和预定义两种形式。前一种配置要求 LLMs 自行决定何时停止推理链 [22]、[116]、[169]、[170]、[185]、[188],而后一种设置则在预先定义的长度下停止推理链 [79]、[184]、[186]、[187]。

7.2.3. 思维链生成方式

如何构建思维链是一个值得研究的问题。我们将目前的工作总结为(1)基于填充的模式和(2)基于预测的模式。具体来说,基于填充的模式要求在周围上下文(前一步和后一步)之间推导步骤,以填补逻辑空白 [184], [186]。与此相反,基于预测的模式则要求根据指令和以前的推理历史等条件扩展推理链[22], [116], [169], [170], [185], [188]。这两类模式都要求生成的步骤应一致且正确。

7.3. LLM辅助视觉推理

7.3.1. 前言

受工具增强型 LLMs [190][191][192][193] 的成功启发,一些研究人员探索了在视觉推理任务中调用外部工具 [22][107][169][170] 或视觉基础模型 [22][79][80][188][194][195][196] 的可能性。将 LLMs作为辅助工具,以构建特定任务 [79][197][198] 或通用 [22][169][170][181][188] 视觉推理系统。与传统的视觉推理模型相比[199][200][201],这些作品表现出以下几个优良特性:

  • 强大的泛化能力。这些系统配备了从大规模预训练中学到的丰富的开放世界知识,可以轻松地泛化到未见过的物体或概念上,并在零次/少量拍摄中表现出色 [169][170][195][197][198][202]。
  • 新兴能力。在LLMs强大推理能力的帮助下,这些系统可以完成复杂的任务。例如,给定一幅图像,MMREACT[22]就能解释其表面之下的含义,如解释为什么一个备忘录很有趣。
  • 更好的交互性和控制性。传统模型通常只允许有限的控制机制,而且往往需要昂贵的数据集[203][204]。相比之下,基于LLM的系统能够在用户友好的界面(如点击和自然语言查询)上进行精细控制[79]。

在这一部分,我们首先介绍了在构建LLM辅助视觉推理系统时所采用的不同训练范式(7.3.2)。然后,我们将深入探讨LLMs在这些系统中所扮演的主要角色(7.3.3)。

7.3.2. 训练范式

根据训练范式,LLM辅助视觉推理系统可分为两种类型,即免训练型和微调型。

免训练。

由于预先训练的 LLMs 中存储了丰富的先验知识,一种直观而简单的方法是冻结预先训练的模型,并直接提示(prompt) LLMs 已满足各种需求。根据设置,推理系统还可进一步分为少量样本训练模型[22]、[169]、[170]、[181]和零样本训练模型[79]、[197]。少训练样本模型需要一些手工制作的上下文样本(见第 7.1 节)来引导 LLMs 生成一个程序或一系列执行步骤。这些程序或执行步骤可作为相应基础模型或外部工具/模块的指令。零训练样本模型则更进一步,直接利用 LLMs 的语言学/语义学知识或推理能力。例如,PointCLIP V2 [197] 提示 GPT-3 生成具有 3D 相关语义的描述,以便更好地与相应图像对齐。在 CAT [79] 中,LLMs被指示根据用户查询完善标题。

微调

一些研究采用了进一步的微调来提高工具使用方面的规划能力[107],或提高系统的定位能力[142]、[205]。例如,GPT4Tools [107] 引入了指令调整方法(见第 3.2 节)。因此,收集新的工具相关指令数据集,并用于对模型进行微调。

7.3.3. 功能

为了进一步探究 LLMs在LLM辅助视觉推理系统中究竟扮演什么角色,现有的相关工作分为三种类型:LLM 作为控制器 controller、决策制定者 Decision Maker和语义精炼器 Semantics Refiner。前两个角色与 CoT 有关(见第 7.2 节)。它经常被使用,因为复杂的任务需要分解成中间的简单步骤。当 LLMs 充当控制器时,系统通常只需一轮就能完成任务,而在决策者的情况下,多轮任务则更为常见。我们将在下文中介绍 LLMs 如何扮演这些角色。

LLM 作为控制器。在这种情况下,LLMs 充当中央控制器,

(1) 将复杂的任务分解为较简单的子任务/步骤,

(2) 将这些任务分配给适当的工具/模块。

第一步通常是通过利用 LLMs 的 CoT 能力来完成的。具体来说,LLMs会被明确提示输出任务规划[181],或者更直接地输出要调用的模块[107], [169], [170]。例如,VisProg [170] 提示 GPT-3 输出一个可视化程序,其中每一行程序都调用一个模块来执行一个子任务。此外,还要求 LLMs 输出模块输入的参数名。为了处理这些复杂的要求,我们使用了一些手工制作的上下文示例作为参考 [169]、[170]、[181]。这与推理链的优化(见第 7.2 节)密切相关,或者更具体地说,与从最少到最多的提示[206]技术密切相关。这样,复杂的问题就被分解成一个个子问题,依次解决。

LLM作为决策制定者。在这种情况下,复杂的任务通常以迭代的方式多轮解决 [195]。决策者通常要履行以下职责:(1) 总结当前上下文和历史信息,并决定当前步骤中可用的信息是否足以回答问题或完成任务;(2) 组织和总结答案,以用户友好的方式呈现答案。

LLM作为语义精炼器。当LLM被用作语义精炼器时,研究人员主要利用其丰富的语言学和语义学知识。具体来说,LLMs经常被指示将信息整合为一致、流畅的自然语言句子[202],或根据不同的特定需求生成文本[79], [197], [198]。

8. 挑战与发展方向

目前,MLLM 的发展仍处于初级阶段,因此还有很大的改进余地,我们将在下文对此进行总结:

  • 目前的 MLLM 在处理长语境的多模态信息方面受到限制。这就限制了具有更多多模态标记的高级模型的发展,例如长视频理解,以及图像和文本交错的长文档。
  • 应升级 MLLM,使其能够遵循更复杂的指令。例如,生成高质量问答对数据的主流方法仍然是提示闭源 GPT-4V,因为它具有高级指令跟随能力,而其他模型一般无法实现。
  • M-ICL 和 M-CoT 等技术仍有很大的改进空间。目前对这两种技术的研究还很不成熟,MLLMs 的相关能力也很薄弱。因此,对其潜在机制和改进潜力的探索大有可为。
  • 开发基于 MLLM 的智能代理是一个热门话题。开发能够与真实世界互动的代理将是非常有意义的。这些工作需要具备关键能力的模型,包括感知、推理、规划和执行能力。
  • 安全问题。与 LLMs 类似,MLLMs 也容易受到精心设计的攻击 [177]、[207]、[208]。换句话说,MLLM 可能会被误导,输出有偏差或不理想的响应。因此,提高模型的安全性将是一个重要课题。

9. 总结

在本文中,我们对现有的 MLLM 文献进行了调查,并对其主要方向提供了一个广阔的视角,包括基本配方和相关扩展。此外,我们还强调了当前需要填补的研究空白,并指出了一些有前景的研究方向。我们希望这份调查报告能让读者对 MLLM 目前的进展有一个清晰的认识,并激发更多的研究工作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值