Abstract
这篇摘要原文写得挺好的,就直接放了
introduction
- LLM 的发展: LLM 通过扩大数据规模和模型规模,展现出惊人的涌现能力,包括指令遵循、上下文学习和思维链等。
- LLM 的局限性: 虽然 LLM 在 NLP 任务中表现出色,但它们无法理解视觉信息,因为它们只能理解离散的文本。
- LVM 的发展: LVM 能够清晰地看到图像,但通常缺乏推理能力。
- MLLM 的出现: LLM 和 LVM 的互补性导致了 MLLM 的出现,这是一种能够接收、推理和输出多模态信息的大语言模型。
- MLLM 的优势: MLLM 比传统的多模态方法具有两个显著的特性:
- 基于拥有亿级参数的 LLM。
- 使用新的训练范式,例如多模态指令微调,来释放其潜力。
- MLLM 的能力: MLLM 表现出新的能力,例如根据图像编写网站代码、理解模因的深层含义以及进行无 OCR 的数学推理。
- MLLM 的发展趋势: 学术界和工业界都在努力开发能够与 GPT-4V 竞争或更胜一筹的 MLLM,推动研究的快速发展。
时间线如上
Architecture
- MLLM 架构: MLLM 由三个模块组成:
- 模态编码器: 将不同模态的数据转换为 LLM 可理解的表示。例如,图像编码器将图像转换为特征,音频编码器将音频转换为音频特征。
- 预训练 LLM: 通常使用已经在大规模语料库上预训练的 LLM,例如 Flan-T5、LLaMA、Vicuna 和 Qwen。
- 模态接口: 将编码后的模态特征与 LLM 的文本输入进行连接和融合。例如,使用可学习的查询或 MLP 来将视觉特征转换为文本 tokens,并将其与文本 tokens 连接。
- 生成器: 一些 MLLM 还包含一个生成器,用于生成除文本之外的其他模态,例如图像、音频和视频。
图 2: 展示了 MLLM 的典型架构,包括一个模态编码器( 将不同模态的数据(如图像、音频、视频)转换为 LLM 可理解的表示)、一个模态接口(将编码器输出的特征与 LLM 的文本输入进行连接和融合)和一个预训练 LLM。
Modality encoder
- 编码器的作用: 编码器的主要作用是将原始数据(如图像、音频、视频)转换为更紧凑、更易于处理的表示,以便后续的模型处理。
- 预训练编码器: 为了提高效率,通常使用已经在大规模数据集上预训练的编码器。例如,CLIP 使用图像-文本对进行预训练,将视觉特征与文本特征进行 对齐 。
- 图像编码器: 文章总结了常用的图像编码器,包括 CLIP、ViT、EVA-CLIP、ConvNext-L 等。一些工作探索使用更高级的训练技术或更复杂的架构来提高编码器的性能。
- 图像分辨率: 使用更高分辨率的图像可以显著提高模型的性能,但需要考虑计算成本和存储需求。文章介绍了两种扩展输入分辨率的方法:
- 直接扩展: 将更高分辨率的图像输入到编码器,并可能需要进一步调整编码器。
- 分块扩展: 将图像分成较小的块,并使用低分辨率编码器处理。
- 其他模态编码器: 文章还介绍了其他模态的编码器,例如音频编码器 CLAP 和图像-文本-音频-深度-热成像-IMU 数据的编码器 ImageBind。
- 多模态输入: 一些 MLLM 支持多种模态的输入,例如图像、文本、音频和视频,这使得它们能够处理更复杂的多模态任务。
模态编码器是 MLLM 的关键组成部分,它负责将不同模态的原始数据转换为 LLM 可理解的表示,从而实现多模态理解和生成。
其中,对齐是指:
- 多模态理解: 对齐使得模型能够理解不同模态之间的语义关系,例如理解图像中的物体与文本描述之间的关系。
- 信息融合: 对齐使得模型能够有效地融合来自不同模态的信息,从而生成更准确的输出。
- 泛化能力: 对齐使得模型能够更好地泛化到未见过的模态数据,例如将图像描述应用于不同的图像。
对齐的方法:
- 基于特征的方法: 通过训练模型将不同模态的特征映射到同一个特征空间。例如,使用 CLIP 模型将图像特征和文本特征映射到相同的嵌入空间。
- 基于深度学习的方法: 使用深度学习模型学习不同模态之间的映射关系。例如,使用对抗性生成网络 (GAN) 来生成与图像相关的文本描述。
- 基于规则的方法: 使用预先定义的规则将不同模态的数据进行映射。例如,将图像中的物体名称与文本描述进行匹配。
pre-trained LLM
- 预训练 LLM 的优势: 使用预训练 LLM 比从头开始训练 LLM 更高效和实用。预训练 LLM 已经在大规模语料库上进行了训练,积累了丰富的世界知识,并展现出强大的泛化和推理能力。
- 常用 LLM: 文章总结了常用的预训练 LLM,包括 Flan-T5、LLaMA、Vicuna 和 Qwen。Flan-T5 是早期 LLM,LLaMA 和 Vicuna 是开源 LLM,Qwen 是支持中文和英文的双语 LLM。
- 模型大小: 扩大 LLM 的参数规模可以提高模型的性能,类似于提高输入分辨率。研究表明,使用更大规模的 LLM 可以在各个基准测试(benchmark)中取得更好的成绩,并展现出更强大的零样本学习能力。
- 移动设备: 一些工作使用较小的 LLM 来方便在移动设备上进行部署,例如 MobileVLM 系列。
- MoE 架构: 最近,研究人员开始探索使用混合专家 (MoE) 架构来构建 LLM。MoE 架构具有稀疏性,可以扩大参数规模而不增加计算成本,并展现出与密集模型相当的性能。
混合专家(Mixture of Experts, MoE)架构是一种在神经网络中使用的结构,旨在通过结合多个专家网络(expert networks)的预测来提高模型的性能和灵活性。以下是混合专家架构的基本概念:
基本原理:
- 专家网络:在MoE架构中,每个专家网络都是针对特定数据分布或任务的一个子网络。这些专家网络通常被训练来专门处理输入数据的一个子集。
- 门控网络(Gating Network):MoE架构中包含一个门控网络,其作用是根据输入数据动态地选择哪些专家网络应该参与到最终的预测中。门控网络输出的是一组权重,这些权重决定了每个专家网络对最终输出的贡献程度。
- 组合输出:每个专家网络的输出根据门控网络的权重进行加权组合,形成MoE的最终输出。
工作流程:
- 输入处理:输入数据首先被送入门控网络。
- 专家选择:门控网络根据输入数据为每个专家网络分配权重,权重高的专家网络会被选中处理当前输入。
- 专家响应:被选中的专家网络处理输入数据并产生输出。
- 输出合并:所有专家网络的输出根据门控网络的权重进行加权求和,得到MoE的总输出。
Modality Interface
模态接口(Modality Interface)
学习型连接器(Learnable Connector)
- 作用:负责连接不同模态的信息,将信息投影到LLM能够有效理解的空间。
- 实现方式:根据多模态信息融合的方式,有两种主要实现接口的方法,即符号级融合(token-level fusion)和特征级融合(feature-level fusion)。
符号级融合(Token-level Fusion)
- 方法:将编码器输出的特征转换为符号,并与文本符号连接后送入LLM。
- 实例:使用一组可学习的查询符号(如BLIP-2中的Q-Former方法)来以基于查询的方式提取信息。其他方法则简单地使用基于MLP的接口来桥接模态差距。
- 性能:研究表明,在视觉问答(VQA)基准测试中,符号级融合的表现优于特征级融合。
特征级融合(Feature-level Fusion)
- 方法:插入额外的模块以实现文本特征和视觉特征的深度交互和融合。
- 实例:Flamingo模型在LLM的冻结Transformer层之间插入额外的交叉注意力层,CogVLM在每个Transformer层中插入一个视觉专家模块,LLaMA-Adapter则引入可学习的提示到Transformer层中。
- 参数大小:学习型接口的参数大小通常只占整个模型参数的一小部分。
专家模型(Expert Model)
- 作用:除了学习型接口之外,使用专家模型(如图像字幕模型)也是桥接模态差距的一种可行方式。
- 方法:将多模态输入转换为文本,而不是进行训练,从而使LLM能够通过转换后的文本理解多模态信息。
- 限制:虽然使用专家模型的方法简单直接,但可能不如采用学习型接口灵活。将外模态转换为文本可能会导致信息丢失。
TRAINING STRATEGY AND DATA
Pre-training
3.1 预训练
3.1.1 训练细节
- 目的:预训练阶段的主要目的是对齐不同模态并学习多模态世界知识。
- 数据:通常使用大规模的文本配对数据,例如图像字幕数据。
“字幕”指的是对图像内容的文字描述
- 方法:模型被训练以自回归地预测图像的描述,遵循标准的交叉熵损失。常见的做法是保持预训练模块(如视觉编码器和LLMs)不变,仅训练可学习的接口。
- 训练策略:有些方法会解冻更多模块(如视觉编码器)以允许更多可训练参数进行对齐。训练方案与数据质量紧密相关,对于短且噪声较大的字幕数据,可以使用较低的分辨率来加速训练过程,而对于长且更干净的数据,则最好使用更高的分辨率以减少幻觉。
3.1.2 数据
- 目的:预训练数据主要用于两个目的,即对齐不同模态和提供世界知识。
- 数据类型:预训练语料库可以根据粒度分为粗粒度和细粒度数据。
粗粒度数据
- 特点:数据量大,通常源自互联网;由于网络爬取的性质,字幕通常较短且有噪声。
- 代表性数据集:
- CC-3M:包含3.3M图像-字幕对的网络级数据集,原始描述来源于图像的alt文本。
- CC-12M:CC-3M的后续工作,包含12.4M图像-字幕对,数据收集流程更为简化。
- SBU Captions:包含1M图像-文本对的带字幕照片数据集,数据来源于Flickr。
- LAION:一系列大规模网络级数据集,图像和alt文本作为字幕从互联网上爬取。
- LAION-5B:包含5.85B图像-文本对的研究用途数据集,数据集是多语言的,包含2B英语子集。
- LAION-COCO:包含从LAION-5B的英语子集中提取的600M图像,字幕是合成的。
- COYO-700M:包含747M图像-文本对的数据集,数据来源于CommonCrawl。
细粒度数据
- 特点:与粗粒度数据相比,细粒度数据通常包含更长的图像描述,因此能够实现图像与文本模态之间更精细的对齐。
- 生成方法:最近的工作通过提示强大的MLLMs(如GPT-4V)生成高质量的细粒度数据。由于这种方法通常需要调用商业用途的MLLMs,成本较高,数据量相对较小。
- 实例:ShareGPT4V首先使用GPT-4V生成的100K数据训练一个字幕生成器,然后使用预训练的字幕生成器将数据量扩展到1.2M。
总结来说,这部分内容详细介绍了多模态语言模型预训练阶段的训练细节和数据使用,包括预训练的目的、训练方法、数据类型和数据集的例子。
这段文字详细介绍了指令调整(Instruction-tuning)在多模态大型语言模型(MLLMs)中的应用,以下是关键点的概述:
3.2 指令调整(Instruction-tuning)
3.2.1 介绍
- 指令:指任务的描述。
- 指令调整目的:教导模型更好地理解用户指令并完成要求任务,从而使模型能够通过遵循新指令来泛化到未见任务,提高零样本性能。
- 与相关学习范式比较:与监督式微调和提示工程相比,指令调整学习如何泛化到未见任务,而不是拟合特定任务。
3.2.2 训练细节
- 多模态指令样本:通常包括一个可选指令和一个输入-输出对。指令通常是描述任务的自然语言句子。
- 样本结构:指令样本的结构可以简化为表5所示模板。
- 形式化表示:多模态指令样本可以表示为三元组(I, M, R),分别代表指令、多模态输入和真实响应。
- 训练目标:通常使用训练LLMs的原始自回归目标,鼓励MLLM预测响应的下一个令牌。
表5
3.2.3 数据收集
- 数据适配:使用现有高质量数据集构建指令格式化数据集。
- 自我指令:使用LLMs生成遵循指令的文本数据,使用手工注释样本作为指导。
- 数据混合:除了多模态指令数据,还可以使用仅语言的用户-助手对话数据来提高对话熟练度和遵循指令的能力。
3.2.4 数据质量
- 提示多样性:指令的多样性对模型性能和泛化能力至关重要。
- 任务覆盖:训练数据中的任务覆盖对模型性能有影响,增强指令的复杂性可能比增加任务多样性和纳入细粒度的空间注释更有益。
在这段文字中,“字幕”指的是图像描述任务中的输出部分,即对给定图像的自然语言描述。这是多模态指令调整中的一个重要组成部分,因为它涉及到模型如何根据图像生成文本描述的能力。
3.3 对齐调整(Alignment tuning)
3.3.1 介绍
对齐调整通常用于需要模型与特定人类偏好对齐的场景,例如减少幻觉(hallucinations)的响应。目前,强化学习与人类反馈(RLHF)和直接偏好优化(DPO)是对齐调整的两种主要技术。
3.3.2 训练细节
RLHF [110], [111]:
- 目的:利用强化学习算法使LLMs与人类偏好对齐,以人类注释为训练循环中的监督。
- 步骤:
- 监督式微调:微调预训练模型以展示初步期望的输出行为。在RLHF设置中的微调模型称为策略模型。这一步可能会跳过,因为监督式策略模型π_SFT可以从指令调整模型初始化(见§3.2)。
- 奖励建模:在这一步中,使用偏好对训练奖励模型。给定一个多模态提示(例如图像和文本)x和响应对(yw, yl),奖励模型rθ学习给偏好响应yw更高的奖励,反之亦然。
- 强化学习:在这一步中,采用近端策略优化(PPO)算法来优化RL策略模型π_RL_ϕ。训练目标中经常加入一个每令牌的KL惩罚,以避免偏离原始策略太远。
DPO [113]:
- 方法:利用简单的二分类损失从人类偏好标签中学习。
- 简化:与基于PPO的RLHF算法相比,DPO不需要学习显式的奖励模型,从而简化了整个流程为两个步骤:人类偏好数据收集和偏好学习。
3.3.3 数据
对齐调整的数据收集的核心是收集模型响应的反馈,即决定哪个响应更好。收集这类数据通常更昂贵,用于此阶段的数据量通常甚至少于前几个阶段。
- LLaVA-RLHF [112]:包含10K个偏好对,收集自人类关于诚实和有用性的反馈。该数据集主要用于减少模型响应中的幻觉。
- RLHF-V [114]:包含5.7K个细粒度的人类反馈数据,通过片段级别的幻觉修正收集。
- VLFeedback [115]:使用AI对模型响应提供反馈。该数据集包含超过380K个比较对,由GPT-4V根据有用性、忠实度和伦理关注进行评分。
Evaluation
4.1 封闭集问题(Closed-set)
封闭集问题是指答案选项预定义且限于有限集合内的问题类型。评估通常在特定任务的 数据集上执行。在这种情况下,响应可以通过基准指标自然判断。
- 评估方法:通常使用零样本设置或微调设置。零样本设置通常选择覆盖不同通用任务的大量数据集,并将它们分为保留集和测试集。在保留集上调优后,在测试集上评估零样本性能,甚至包括未见的数据集或任务。相比之下,微调设置通常用于特定领域的任务评估。
- 基准测试:例如,InstructBLIP报告了ScienceQA的准确性和NoCaps、Flickr30K的CIDEr分数。
- 新基准:为了进行更全面的定量比较,一些努力致力于为MLLMs开发新的基准测试,如MME、MMBench、Video-ChatGPT和Video-Bench。
4.2 开放集问题(Open-set)
与封闭集问题相比,开放集问题的响应更加灵活,其中MLLMs通常扮演聊天机器人的角色。由于聊天内容可以是任意的,因此判断比封闭式输出更为复杂。
- 评估标准:可以分为人工评分、GPT评分和案例研究。
- 人工评分:需要人类评估生成的响应。这种方法通常涉及手工制作的问题,旨在评估特定维度。
- GPT评分:一些研究者探索使用GPT进行评分,这通常用于评估多模态对话的性能。例如,LLaVA提出通过文本-only GPT-4从不同方面评分响应。
- 案例研究:通过比较MLLMs的不同能力来进行补充评估。例如,对GPT-4V和Gemini等商业使用模型进行深入定性分析。
- GPT-4V评估:随着GPT视觉接口的发布,一些工作开始使用更先进的GPT-4V模型来评估MLLMs的性能。例如,Woodpecker采用GPT-4V根据图像判断模型答案的响应质量。
这些评估策略和方法有助于更全面地理解MLLMs在不同场景下的表现,从而推动模型的改进和应用。
Extension
最近的研究在扩展MLLMs的能力方面取得了重大进展,这些能力从更强大的基础能力到更广泛的场景覆盖。
粒度支持(Granularity Support)
为了更好地实现代理和用户之间的互动,研究人员开发了具有更细粒度支持的MLLMs,这些支持体现在模型输入和输出上。
- 输入方面:模型逐渐发展,从支持图像输入到区域[28], [138], [139]甚至像素[29], [140], [141]级别的输入。例如,Shikra [28]支持区域级别的输入和理解,用户可以通过引用特定的区域与助手进行更灵活的互动。
- 输出方面:随着输入支持的发展,定位能力也得到了改进。Shikra [28]支持带有框注解的图像响应,提高了精度和更细粒度的引用体验。LISA [142]进一步支持掩码级别的理解和推理,使得像素级定位成为可能。
模态支持(Modality Support)
增加对模态的支持是MLLM研究的一个趋势。
- 输入模态:研究人员探索了将MLLMs适配到支持更多多模态内容的输入,如3D点云[41], [143], [144], [145]。
- 输出模态:MLLMs也被扩展到生成更多模态的响应,如图像[32], [146], [147], [148],音频[32], [147], [149], [150]和视频[32], [151]。例如,NExT-GPT [32]提出了一个支持混合模态输入和输出的框架,特别是文本、图像、音频和视频的组合,借助附加到MLLM的扩散模型[152], [153]。
语言支持(Language Support)
当前模型主要是单语的,可能是因为高质量的非英语训练语料稀缺。一些工作致力于开发多语言模型,以便覆盖更广泛的用户群体。例如,VisCPM [33]通过设计多阶段训练方案将模型能力转移到多语言设置中。Qwen-VL [34]从双语LLM Qwen [58]发展而来,支持中英文。
场景/任务扩展(Scenario/Task Extension)
除了开发通用的多功能助手外,一些研究专注于更具体的场景,在这些场景中需要考虑实际条件,而其他研究将MLLMs扩展到具有特定专业知识的下游任务。
- 实际场景适应:例如,MobileVLM [63]探索了为资源受限场景开发小型MLLM变体。其他工作开发了与真实世界互动的代理[41], [154], [155],例如专门为图形用户界面(GUI)设计的用户友好助手,如CogAgent [44],AppAgent [43]和Mobile-Agent [45]。
- 特定技能增强:MLLMs可以通过注入特定领域知识来扩展到不同领域的任务解决,如文档理解[38], [39], [156], [157]和医学领域[35], [36], [37]。例如,LLaVA-Med [158]将医学知识注入到普通的LLaVA [20]中,开发了一个专门用于医学图像理解和问答的助手。
MULTIMODAL HALLUCINATION
幻觉指的是模型生成的内容与输入数据不匹配或不一致的现象。在多模态模型中,这意味着模型可能会生成与输入图像不相关的文本描述
6.1 基本概念
当前关于多模态幻觉的研究可以进一步分为三种类型:
- 存在幻觉(Existence Hallucination):这是最基本的形式,意味着模型错误地声称图像中存在某些对象。
- 属性幻觉(Attribute Hallucination):错误地描述某些对象的属性,例如未能正确识别狗的颜色。这通常与存在幻觉相关,因为对属性的描述应该基于图像中存在的对象。
- 关系幻觉(Relationship Hallucination):这是一种更复杂的类型,也是基于对象的存在。它指的是对对象之间关系的错误描述,如相对位置和互动。
接下来,我们首先介绍一些具体的评估方法(§6.2),这些方法对于评估减轻幻觉的方法的性能(§6.3)很有用。然后,我们将详细讨论当前减少幻觉的方法,根据每种方法所属的主要类别进行讨论。
6.2 评估方法
- CHAIR [160]:这是一个早期评估开放式字幕中幻觉水平的指标。该指标测量包含幻觉对象或幻觉对象在所有提及对象中的比例。
- POPE [132]:这是一种评估封闭集选择的方法。具体来说,会制定多个带有二元选择的提示,每个提示都查询图像中是否存在特定对象。该方法还涵盖了更具有挑战性的设置,以评估MLLMs的鲁棒性,并考虑了数据统计。
- MME [123]:提供了一个更全面的评估,涵盖存在、计数、位置和颜色等方面。
与之前使用匹配机制检测和决定幻觉的方法不同,HaELM [161] 提出使用仅文本的LLMs作为判断,自动决定MLLMs的字幕是否正确,与参考字幕相比。Woodpecker [77] 使用GPT-4V直接评估模型响应是否基于图像。FaithScore [162] 是一个更细粒度的指标,基于一个将描述性子句子分解并分别评估每个子句子的程序。AMBER [163] 是一个无需LLM的基准,涵盖区分性任务和生成性任务,涉及三种可能的幻觉类型(见§6.1)。
6.3 减轻方法
根据高级想法,当前的方法大致可以分为三类:预校正、过程中校正和后校正。
- 预校正(Pre-correction):一种直观且直接的解决方案是收集专门的数据(例如负数据)并使用这些数据进行微调,从而产生较少幻觉响应的模型。
- LRV-Instruction [164]:引入了一个视觉指令调整数据集。除了常见的正指令外,该数据集还包含了在不同语义层次上精心设计的负指令,以鼓励对图像内容忠诚的响应。
- LLaVA-RLHF [112]:收集人类偏好对并使用强化学习技术进行微调,使模型更加符合较少幻觉的答案。
- 过程中校正(In-process-correction):另一种方法是改进架构设计或特征表示。这些工作试图探索幻觉的原因,并设计相应的补救措施,以在生成过程中减轻幻觉。
- HallE-Switch [159]:对对象存在幻觉的可能因素进行了实证分析,并假设存在幻觉源于视觉编码器未锚定的对象,实际上是基于LLM中嵌入的知识推断的。基于这个假设,引入了一个连续的控制因素和相应的训练方案,以控制在模型输出中的想象程度。
- VCD [165]:指出对象幻觉源于两个主要原因,即训练语料中的统计偏差和LLMs中嵌入的强烈语言先验。作者注意到,当向图像注入噪声时,MLLMs倾向于依赖语言先验而不是图像内容来生成响应,从而导致幻觉。相应地,这项工作设计了一个放大-然后-对比解码方案,以抵消错误的偏差。
- HACL [166]:研究了视觉和语言的嵌入空间。基于观察,设计了一个对比学习方案,将配对的跨模态表示拉得更近,同时将非幻觉和幻觉的文本表示推开。
- 后校正(Post-correction):与之前的范式不同,后校正以事后补救的方式减轻幻觉,并在输出生成后纠正幻觉。
- Woodpecker [77]:是一个无需训练的通用框架,用于纠正幻觉。具体来说,该方法结合了专家模型来补充图像的上下文信息,并设计了一个逐步纠正幻觉的流程。这个方法是可解释的,因为每一步的中间结果都可以检查,并且对象是基于图像的。
- LURE [167]:训练了一个专门的修订器,以掩盖描述中具有高度不确定性的对象,并再次生成响应。
EXTENDED TECHNIQUES
7.1 多模态即时学习(Multimodal In-Context Learning)
即时学习(ICL)是LLMs的重要涌现能力之一。ICL有两个优点:
- 与传统的监督学习范式不同,后者从大量数据中学习隐含模式,ICL的关键在于通过类比学习[168]。在ICL设置中,LLMs通过几个示例以及可选的指令来学习,并推广到新的问题,以少量样本的方式解决复杂和未见过的任务[22], [169], [170]。
- ICL通常以无训练的方式实现[168],因此可以灵活地集成到不同的框架中,在推理阶段使用。
在多模态语言模型(MLLM)的背景下,ICL已经扩展到更多模态,导致多模态即时学习(M-ICL)。在推理时,M-ICL可以通过添加演示集(即一组上下文样本)到原始样本来实现。这里的模板可以如表格9所示扩展。需要注意的是,我们列出了两个示例以供说明,但示例的数量和顺序可以灵活调整。实际上,模型通常对演示的排列敏感[168], [171]。
7.1.1 ICL能力的提升
最近,越来越多的工作专注于在各种场景下提升ICL的性能。在这一节中,我们追踪了这一领域的发展,并总结了一些相关的工作。
- MIMIC-IT [172]:通过构建一个格式化的多模态上下文指令数据集,将即时学习与指令调整结合起来。在该数据集上调整的模型在字幕任务上显示了改进的少量样本性能。
- Emu [173]:通过在模型生成和对应训练语料库中引入额外的模态来扩展Flamingo [74]的想法。借助引入的视觉解码器(即Stable Diffusion),模型从额外的视觉监督中学习,并支持输出格式的更多灵活性以及上下文推理。
- Sheng等人[174]:尝试将输出模态扩展到文本和图像。该工作采用统一的量化方案,并共享嵌入层,而不是采用专门用于图像的编码器。
其他一些工作探索了在特定设置下提高少量学习性能的方法。 - Link-context learning [175]:专注于加强图像-标签对之间的因果关系,并通过制定正负图像-描述对来制定对比训练方案。
- MMICL [176]:旨在增强对多个相关图像进行推理的能力。为了加强图像和文本之间的联系,该工作提出了一种上下文方案,将交织的图像-文本数据转换为统一格式。
- Jeong [177]:发现当插入一小部分不连贯的图像/文本作为噪声时,MLLMs可能会被误导,给出与上下文不一致的响应。基于这一观察,该工作相应地提出了一种预过滤方法,以去除无关的上下文,促进更连贯的响应。
7.1.2 应用
在多模态应用方面,M-ICL主要用于以下两种场景:
- 解决各种视觉推理任务[22], [74], [178], [179], [180]。
- 教LLMs使用外部工具[169], [170], [181]。
前者通常涉及从几个特定于任务的示例中学习,并推广到新的但相似的问题。从指令和演示中提供的信息中,LLMs了解任务的内容和输出模板,并最终生成预期的答案。相比之下,工具使用的示例更为精细。它们通常包含一系列步骤,可以按顺序执行以完成任务。因此,第二种场景与CoT(见§7.2)密切相关。
7.2 多模态思维链(Multimodal Chain of Thought)
7.2.1 学习范式
多模态思维链(M-CoT)的能力可以通过以下三种方式获得:微调、少量/零样本学习。这些方法的样本大小需求依次递减。
- 微调方法通常涉及为M-CoT学习精心策划特定的数据集。例如,Lu等人[116]构建了一个科学问答数据集ScienceQA,其中包含讲座和解释,可以作为学习思维链推理的来源,并在该数据集上微调模型。Multimodal-CoT[185]也使用了ScienceQA基准,但以两步方式生成输出,即先产生推理链(理由),然后基于理由得出最终答案。CoT-PT[187]通过提示调整和针对特定步骤的视觉偏置组合来学习隐含的思维链。
- 相比于微调,少量/零样本学习在计算上更高效。少量样本学习通常需要手工制作一些上下文示例,以便模型可以更容易地逐步学习推理。而零样本学习不需要任何特定的示例来进行CoT学习。在这种情况下,模型通过设计好的指令(如“让我们一帧一帧地思考”或“这两帧之间发生了什么”)来学习使用嵌入的知识和推理能力,而无需显式指导。[184], [186]等研究采用了这种方法。类似地,一些工作[22], [188]通过提示模型描述任务和工具使用来将复杂任务分解为子任务。
7.2.2 链配置
结构和长度是思维链的两个关键方面。在结构方面,当前方法可以分为单链和树形链方法。单链推理是各种方法[116], [185]中广泛使用的范式,其中逐步推理过程形成了一个单一的问答链。最近,一些方法探索了使用更复杂的树形链来进行推理。例如,DDCoT[189]将问题分解为多个子问题,每个子问题由LLM自身或视觉专家解决以生成理由。然后LLM汇总并推理这些理由以形成最终答案。关于链长度,可以分为自适应和预定义形式。自适应配置要求LLM自行决定何时停止推理链[22], [116], [169], [170], [185], [188],而预定义设置则以预定义的长度停止链[79], [184], [186], [187]。
7.2.3 生成模式
思维链的构建方式是值得研究的问题。当前工作可以总结为两种模式:基于填充的模式和基于预测的模式。基于填充的模式要求推断周围上下文(前一步和后一步)之间的步骤以填补逻辑空白[184], [186]。而基于预测的模式则需要根据指令和之前的推理历史等条件来扩展推理链[22], [116], [169], [170], [185], [188]。这两种模式都要求生成的步骤应保持一致性和正确性。
CoT(Chain of Thought)是一种在人工智能领域中使用的技术,特别是在大型语言模型(Large Language Models, LLMs)和推理任务中。CoT的基本思想是让模型在生成最终答案之前,先产生一系列的中间推理步骤。这些推理步骤构成了一个“思考链”,它们可以帮助模型更准确地解决需要复杂推理的问题。以下是CoT的几个关键点:
- 中间步骤:CoT鼓励模型在给出最终答案之前,先输出一系列的中间推理步骤。这些步骤可以是逻辑推理、问题分解、假设检验等。
- 透明度:通过展示推理过程,CoT提高了模型决策的透明度。用户可以理解模型是如何得出最终答案的,而不仅仅是得到一个结果。
- 可解释性:CoT使得模型的输出更加可解释,因为它展示了模型是如何逐步推理的,这对于需要解释或验证推理过程的场景非常重要。
- 引导推理:在某些情况下,CoT可以帮助引导模型进行更深入的推理,而不是仅仅依赖于模型在预训练期间学到的模式。
- 与LLMs结合:在LLMs中,CoT可以通过特定的提示(prompting)技术来实现,这些技术鼓励模型在生成答案时产生推理链。
举个例子,如果一个问题是“苏格拉底是哲学家吗?”一个使用CoT的模型可能会这样推理:
- 苏格拉底是古希腊的一个著名人物。
- 哲学家是研究哲学的人。
- 苏格拉底经常探讨关于知识、道德和存在等哲学问题。
- 因此,苏格拉底可以被归类为哲学家。
在这个例子中,模型不仅仅是给出“是”或“不是”的答案,而是通过一系列的中间步骤来展示它是如何得出结论的。这种方法对于提高模型在需要复杂推理的任务上的性能是非常有用的。
7.3 大型语言模型辅助的视觉推理(LLM-Aided Visual Reasoning)
7.3.1 引言
受到工具增强型大型语言模型(LLMs)成功的启发,一些研究探索了调用外部工具[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]。
7.3.2 训练范式
根据训练范式,LLM辅助视觉推理系统可以分为两种类型,即免训练和微调。
- 免训练:利用预训练LLMs中丰富的先验知识,一种直观简单的方法是冻结预训练模型,并直接提示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作为控制器
- LLM作为决策者
- LLM作为语义细化器
前两个角色与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]。这意味着LLMs在处理视觉信息时,不仅能够理解图像内容,还能够将这些内容转换成准确、连贯的语言描述,从而提高系统的整体表达能力和用户交互的质量。
CHALLENGES AND FUTURE DIRECTIONS(挑战与未来方向)
多模态大型语言模型(MLLMs)的发展仍处于初级阶段,因此还有很大的改进空间。以下是我们总结的一些主要挑战和未来发展方向:
- 当前的MLLMs在处理长上下文的多模态信息方面存在限制。这限制了具有更多多模态令牌的高级模型的发展,例如长视频理解以及穿插图像和文本的长文档。
- MLLMs需要升级以遵循更复杂的指令。
不断提升模型性能
例如,生成高质量的问题-答案对数据的主流方法仍然是提示封闭源的GPT-4V,因为其具有先进的指令遵循能力,而其他模型通常无法达到。 - 在M-ICL和M-CoT等技术上仍有很大的改进空间。当前关于这两种技术的研究还处于初级阶段,MLLMs的相关能力较弱。因此,探索底层机制和潜在的改进是很有前景的。
- 基于MLLMs开发具身代理
agent
是一个热门话题。开发能够与真实世界互动的代理将具有重要意义。这样的努力需要模型具备关键的能力,包括感知、推理、规划和执行。 - 安全问题。与LLMs类似,MLLMs可能容易受到精心设计的攻击[177],[207],[208]。换句话说,MLLMs可能会被误导输出偏见或不希望的响应。因此,提高模型安全性将是一个重要的议题。