将文本和视觉模态连接起来在生成智能中扮演着至关重要的角色。因此,受到大型语言模型成功的启发,大量研究努力正被投入到多模态大型语言模型(MLLMs)的开发中。这些模型能够无缝整合视觉和文本模态,无论是作为输入还是输出,同时提供基于对话的界面和遵循指令的能力。在这篇论文中,我们提供了近期基于视觉的MLLMs的全面回顾,分析它们的架构选择、多模态对齐策略和训练技巧。我们还对这些模型在广泛的任务范围内进行了详细分析,包括视觉定位、图像生成和编辑、视觉理解和领域特定应用。此外,我们编制并描述了训练数据集和评估基准,就性能和计算需求在现有模型之间进行了比较。总的来说,这篇综述提供了当前艺术状态的全面概述,为未来MLLMs的发展奠定了基础。
https://www.zhuanzhi.ai/paper/3c58ed684809b9b936259fd61a4bb074
注意力操作符和Transformer架构(Vaswani et al., 2017)的引入,使得创建能够处理各种模态的模型成为可能,并且这种处理能力在不断扩大的规模上得到应用。这一进步很大程度上归功于操作符的多功能性和架构的适应性。最初,这一突破被用于语言特定模型(Devlin et al., 2018; Brown et al., 2020),但很快扩展到支持视觉处理骨干(Dosovitskiy et al., 2021),最终用于集成多种模态的模型(Radford et al., 2021)。复杂大型语言模型(LLMs)的涌现,特别是它们进行上下文学习的能力,鼓励研究人员将这些模型的应用范围拓宽到多模态,包括作为输入和输出。这一扩展导致了如GPT-4V(Achiam et al., 2023)和Gemini(Anil et al., 2023)等尖端模型的开发,展示了最先进的性能。多模态大型语言模型(MLLMs)的开发涉及将视觉和语言的单模态架构合并,通过视觉到语言的适配器建立它们之间的有效连接,并设计创新的训练方法。这些方法对于确保模态对齐和准确遵循指令的能力至关重要。在新模型快速发布的背景下,我们的目标是提供关于MLLM领域的全面概述,重点关注利用视觉模态的模型。这一概述既是对当前状态的更新,也是对未来发展的灵感来源。我们确定了定义这些模型的三个核心方面:它们的架构、训练方法以及它们被设计来执行的任务。我们首先详细介绍了流行的视觉编码器选择和为LLMs装备跨模态能力的适配器模块。接着,我们深入训练过程和使用的数据。然后,我们探索MLLMs处理的任务范围。综述以对该领域持续存在的挑战和未来研究的有希望方向的讨论结束。关于训练数据、评估数据集以及性能和计算要求的进一步细节在补充材料中报告。
赋予大型语言模型多模态能力
** 前言**
大型语言模型。Brown等人(2020)发现上下文学习,即在提示前附加一些示例以演示大型语言模型(LLM)的期望输出(Chowdhery等人,2023;Hoffmann等人,2022;Tay等人,2022),可以提高其性能,特别是在未见过的任务上。通过为每个训练样本提供所需任务的自然语言描述,可以进一步提高泛化能力。这种技术,称为指令调优(Chung等人,2022;Wang等人,2022b,a;Jiang等人,2024),对于使LLM的行为与人类的行为对齐至关重要,目前赋能了最先进的LLM,最终通过来自人类反馈的强化学习(RLHF)(Ouyang等人,2022;Achiam等人,2023;Chen等人,2023j;Bai等人,2023a)得到提升。PEFT。当一个预训练的LLM需要适应特定领域或应用时,参数高效微调(PEFT)方案代表了训练整个LLM的一个重要替代方案,因为这些策略只引入少量新参数。其中,提示调优(Hambardzumyan等人,2021;Lester等人,2021;Li和Liang,2021;Liu等人,2023j)学习一小组向量作为软提示在输入文本之前输入模型。不同的是,LoRA(Hu等人,2021)通过学习低秩矩阵限制了新权重的数量。这种技术与如QLoRA(Dettmers等人,2023)等量化方法正交,进一步减少了LLM的内存占用,与通常的半精度权重相比。走向多模态LLM。MLLM的发展与LLM的发展路径类似,Flamingo(Alayrac等人,2022)是首个在视觉-语言领域探索大规模上下文学习的模型。然后,视觉指令调优(Liu等人,2023e)迅速成为多模态领域中最突出的训练范式,以及使用PEFT技术微调LLM。任何MLLM至少包含三个组件(图1):作为与用户接口的LLM主干,一个(或多个)视觉编码器,以及一个或多个视觉到语言的适配器模块。对LLM主干的流行选择通常属于LLaMA家族(Touvron等人,2023a,b),鉴于它们的权重是自由可获取的,它们仅在公开数据上进行了训练,并且它们拥有不同的大小以适应各种用例。此外,它们的衍生版本也很受欢迎,例如Alpaca(Taori等人,2023)和Vicuna(Chiang等人,2023)。前者在GPT-3编写的指令上微调LLaMA,而后者利用用户与ChatGPT(OpenAI,2022)的共享对话。其他选择包括OPT(Zhang等人,2022b),Magneto(Wang等人,2023b),MPT(MosaicML,2023),以及经过指令调优(Chung等人,2022)或多语言(Xue等人,2020)版本的T5(Raffel等人,2020),一种为多个任务预训练的编解码器语言模型。 本调查中涵盖的MLLM的总结报告在表1中,指出每个模型基于哪个LLM,视觉编码器,用于连接视觉和语言组件的适配器,MLLM是否经过视觉指令调优训练,以及主要任务和能力的简短列表。视觉编码器在MLLM中,一个关键组件是视觉编码器,它专门设计用于为LLM提供提取的视觉特征。通常采用冻结的预训练视觉编码器,同时只训练一个可学习的接口,将视觉特征与底层LLM连接起来。最常用的视觉编码器基于预训练的Vision Transformer(ViT)模型,具有CLIP-based目标,以利用CLIP嵌入的固有对齐。流行的选择包括CLIP(Radford等人,2021)的ViT-L模型,OpenCLIP(Wortsman等人,2022)的ViT-H主干,以及EVA-CLIP(Fang等人,2023)的ViT-g版本。CLIP和OpenCLIP编码器在从网络收集的图像上训练,采用对比方法对正确的图像-文本对进行对齐。相反,EVA-CLIP是一系列模型,提供了训练CLIP模型的实用有效解决方案。特别是,EVA模型预训练为重建被遮挡的图像-文本对齐视觉特征,条件是可见的图像块。 正如(Li等人,2023f)所示,更强大的图像编码器导致更好的性能。基于这一见解,Lin等人(2023b)和Gao等人(2024)提出了一个冻结视觉主干的集合,以捕获鲁棒的视觉表示和不同级别的信息粒度。同时,PaLI模型(Chen等人,2023i,g),注意到语言和视觉参数之间的不平衡,分别提出将视觉主干扩展到4亿和220亿参数的ViT。使用如此大且强大的模型是通过在训练期间保持视觉编码器冻结的常见做法变得可行的,如(Li等人,2023f;Huang等人,2023a;Gao等人,2023;Chen等人,2023f)中所观察到的。然而,使用冻结的视觉编码器有一些局限性,主要是由于参数数量有限,导致视觉和语言模态之间对齐不足。具体来说,从视觉模型提取的密集特征可能会碎片化细粒度图像信息,并由于输入语言模型的长序列而带来大量计算。为了缓解这个问题,其他方法(Ye等人,2023c,d)采用两阶段训练范式。在第一阶段,他们结合了可训练的视觉主干,同时保持预训练的LLM冻结。根据他们的发现,使视觉编码器可训练可以提高诸如视觉问题回答或视觉描述等任务的性能。然而,它可能导致其他任务的性能下降,表明一定程度的遗忘和对通用视觉表示的损害。
视觉到语言的适配器
来自不同模态的输入的同时存在强调了需要纳入一个能够勾画出这些单模态领域内潜在对应关系的模块的必要性。这些模块,称为“适配器”,旨在促进视觉和文本领域之间的互操作性。在常见的MLLM中使用了不同适配器的范围,从基本架构(如线性层或MLP)到高级方法(如基于Transformer的解决方案),如Q-Former模型,以及添加到LLM的条件交叉注意力层。线性和MLP投影。将视觉输入投影到文本嵌入中的最直接方法涉及学习线性映射,将视觉特征转换为与文本对应部分相同的维度。一些方法,如LLaMA-Adapter(Gao等人,2023)和FROMAGe(Koh等人,2023b)只使用单个线性层来执行多模态连接,而LLaVA-1.5(Liu等人,2023d)采用了两层MLP,显示出改进的多模态能力。尽管在早期MLLM中广泛采用线性投影,但即使在对视觉输入有更深入理解的最新方法中,线性投影的使用也被证明非常有效(Chen等人,2023f;Lin等人,2023a;Wang等人,2023c;You等人,2023;Zhao等人,2023a)。因此,它是一种简单而有效的技术,用于将视觉特征与文本对应部分对齐。不同的方法(Cha等人,2023)提议用卷积层替换线性层,显示出适度的改进。 Q-Former。它是BLIP-2(Li等人,2023f)中提出的基于Transformer的模型,然后在几种其他方法(Chen等人,2023d;Dai等人,2023;Hu等人,2024)中使用。它的特点是具有可适应的架构,由两个共享相互注意力层的Transformer块组成,促进视觉和文本表示之间的对齐过程。它涉及一组可学习的查询,在自注意力层内部交互,并通过交叉注意力机制与视觉特征接口。文本和视觉元素通过模块内的共享自注意进行通信。从Q-Former中汲取灵感,引入了各种修改版本。在这方面,mPLUG-Owl模型(Ye等人,2023c,d)简化了Q-Former架构,并提出了一个视觉抽象器组件,通过将视觉信息压缩为不同的可学习令牌来操作,以获得更富语义的视觉表示。同一线上,Qwen-VL(Bai等人,2023b)使用具有可学习查询的单层交叉注意力模块压缩视觉特征,还结合了2D位置编码。附加交叉注意力层。这种方法在Flamingo(Alayrac等人,2022)中被提出,通过在现有预训练LLM层中集成密集交叉注意力块。新添加的层通常与零初始化的tanh门控机制结合使用,以确保在初始化时,条件模型的行为如其原始版本。使用附加交叉注意力层需要从头开始训练它们,与其他替代方案相比,增加了可训练参数的数量。为了减少计算复杂性,这种策略通常与基于Perceiver的组件(Jaegle等人,2021)配对使用,该组件在将视觉令牌输入LLM之前减少了它们的数量。自从引入以来,几个模型(Awadalla等人,2023;Chen等人,2023b;Laurençon等人,2023;Li等人,2023a)采用这种技术将视觉模态与底层LLM连接起来,显示出提高了训练稳定性和改善了性能。
多模态训练
从预训练的LLM开始,MLLM的训练经历了单阶段或两阶段过程。在这两种情况下,都使用标准的交叉熵损失来预测下一个令牌,作为自回归目标。 单阶段训练。这种可能性由LLaMA-Adapter(Gao等人,2023)探索,它引入了额外的可训练参数以封装视觉知识并同时管理仅文本指令学习。为了实现这一点,模型使用图像-文本对和指令进行联合训练,操作独立的参数。同时,(Koh等人,2023b)中提出的模型通过整合两个对比损失来适应最终损失函数,用于图像-文本检索。在训练期间,只更新三个线性层。另一方面,Kosmos-1(Huang等人,2023a)考虑了一个冻结的视觉主干,并从头开始训练1.3B参数的语言模型。 Flamingo(Alayrac等人,2022)及其开源变体(Awadalla等人,2023;Laurençon等人,2023),相反,训练交叉注意力层和基于Perceiver的组件以将视觉特征与冻结的LLM块连接起来。此外,Otter(Li等人,2023a)扩展了Flamingo的训练以增加其上下文能力。 鉴于目前可用的训练数据量,像SPHINX-X(Gao等人,2024)这样的方法选择执行单一的一体化训练阶段,在此阶段更新所有模型组件,可能还使用仅文本数据以保留LLM的对话能力。
两阶段训练。在两个训练阶段中的第一个,目标是将图像特征与文本嵌入空间对齐。经过这一阶段后,输出往往是碎片化的且不连贯的。因此,进行第二步以提高多模态对话能力。LLaVA(Liu等人,2023e,d)是首批引入视觉指令遵循训练方案的方法之一,作为第二训练阶段执行,更新多模态适配器和LLM的参数。在第一阶段,相反,只有多模态适配器是可训练的。不同的是,MiniGPT4(Zhu等人,2023a)值得注意的是,在两个阶段中仅训练负责多模态对齐的线性层。在第二阶段,它使用经过模型自身在第一阶段后收集和精炼的过滤数据。
另一种方法,如InstructBLIP(Dai等人,2023)所示,涉及冻结视觉编码器和LLM。在两个训练阶段中,只有Q-Former和连接模块是可训练的。与之前保持视觉主干冻结的方法相比,mPLUG-Owl(Ye等人,2023c,d)在初始阶段更新它,便于捕获低层次和高层次的视觉信息。此外,在第二阶段联合使用仅文本和多模态数据以增加对齐。不同地,Shikra(Chen等人,2023f)在两个阶段中更新所有权重,唯一的例外是视觉主干保持冻结。
训练数据。在第一阶段(或单一阶段)训练中,通常使用来自不同来源的图像-文本对,使用的数据集包括LAION-2B(Schuhmann等人,2022)、LAION-400M(Schuhmann等人,2021)、Conceptual Captions(Sharma等人,2018)、COYO-700M(Byeon等人,2022)和DataComp(Gadre等人,2023)。一些方法(Lin等人,2023a)将这些与一个或多个数据集结合使用,这些数据集的特点是文本与图像交错,通常从网络上抓取,如WebLI(Chen等人,2023i)、MMC4(Zhu等人,2023d)、MMDialog(Feng等人,2023b)和OBELICS(Laurençon等人,2023)。
为了解决以前数据集中的偏差和噪声问题,StableLLaVA(Li等人,2023h)引入了在第一阶段使用的新收集数据。这种方法利用ChatGPT生成包含图像生成提示和基于内容的对话的数据,并使用Stable Diffusion(Rombach等人,2022)生成相应的图像。随后的阶段则利用数据集进行视觉指令调优。其中,常用的LLaVA-Instruct(Liu等人,2023e)扩展了COCO(Lin等人,2014)并加入了由GPT-4生成的指令。遵循这一趋势,Zhao等人(2023a)通过结合手动生成的数据和高质量多样性的数据,扩大了尺寸。此外,还提出了其他多轮对话数据集,如(Dai等人,2023)中介绍的将26个公开可用数据集转换为其视觉指令遵循版本的数据集,LRV-Instruction(Liu等人,2023c)旨在通过更稳健的指令减少幻觉,而LLaVAR(Zhang等人,2023h)则专注于文本丰富的图像。
用多模态大型语言模型处理视觉任务
标准的多模态大型语言模型可以处理视觉理解任务,例如视觉问答(VQA)、图像描述和多轮对话。然而,最近对处理更细粒度的视觉任务,如视觉定位和图像生成,有了更大的兴趣。
结论与未来方向
在本综述中,我们提供了最近多模态大型语言模型(MLLMs)进化的全面概述,首先关注如何为LLMs装备多模态能力,然后探讨这些模型处理的主要任务。基于所呈现的分析,以下我们概述了重要的开放挑战和有前景的未来研究方向,以进一步增强MLLMs的能力。 修正幻觉现象。几项研究(Liu等人,2023b;Zhu等人,2023a)表明MLLMs倾向于展现高幻觉率,特别是在生成较长的描述时。尽管一些解决方案正在出现以缓解这个问题(Liu等人,2023b;Wang等人,2023a;Wu等人,2023c;Yin等人,2023a),但理解和纠正幻觉的根本原因仍然是一个重要的开放挑战,值得解决,以允许这些模型在更关键的背景中(例如,医学)应用,并保证它们的准确性和可信度。 预防有害和有偏见的生成。确保大规模模型的安全性和公平性是社区的基本兴趣。近期工作表明,基于网络爬取数据训练的模型倾向于生成不适当和有偏见的内容。尽管最近正在努力在文本到图像生成模型中减少这种现象(Schramowski等人,2023;Friedrich等人,2023),但需要进一步探索以防止MLLMs中出现相同的行为(Pi等人,2024)。 减少计算负荷。如补充材料所示,MLLMs高度依赖于计算。需要有效的策略(Chu等人,2024)来减少计算需求,使MLLMs的开发更加易于获取。可能的方向包括减少训练要求,无论是在模型规模还是数据量方面,以及优化推理阶段。