mPLUG-Owl2: Revolutionizing Multi-modal Large Language Model with Modality Collaboration——阅读笔记

Paper:https://arxiv.org/abs/2311.04257
Code & Demo & Models: https://github.com/X-PLUG/mPLUG-Owl/tree/main/mPLUG-Owl2

摘要:

多模态大型语言模型(MLLM)在各种开放式任务中表现出令人印象深刻的教学能力。本文引入多模态大型语言模型mPLUG-Owl 2,它有效地利用模态协作来提高文本和多模态任务的性能。采用模块化网络设计,语言解码器作为管理不同模态的通用接口。具体来说,mPLUG-Owl 2集成了共享的功能模块,以促进模态协作,并引入了一个保留模态特定功能的模态自适应模块。大量的实验表明,mPLUG-Owl 2是能够推广文本任务和多模态任务,并实现国家的最先进的性能与一个单一的通用模型。值得注意的是,mPLUG-Owl 2是第一个在纯文本和多模态场景中展示模态协作现象的MLLM模型,为未来多模态基础模型的开发开辟了一条先驱之路。

动机:

以前的多模态学习研究表明,不同的模态可以有效地合作,从而同时提高文本和多模态任务的表现。然而,MLLM是一个统一的模型,它支持不同的模式和任务,而无需针对特定任务进行微调。最近的工作利用跨模态对准模块将视觉特征从视觉编码器映射到冻结的LLM中,以通过利用保留的语言功能执行多模态任务。不幸的是,这种策略限制了模态协作的潜力。因此,一些研究人员选择在多模态指令调整期间微调LLM。虽然微调显著提高了多模态任务,但它有可能削弱文本任务的性能。MLLM中模态协作的挑战在于应用单个模块来平衡模态协作和模态干扰的增益,其中模态可能在多个模态的大量指令数据集上相互干扰。

解决办法:

为了减轻这一挑战,提出了一个新的通用多模态基础模型mPLUG-Owl 2,模型采用模块化的网络设计,考虑到模态协作和模态干扰,使用语言解码器作为管理多模态信号的通用接口。具体而言,mPLUG-Owl 2结合了某些共享功能模块以促进模态协作,并引入了一个模态自适应模块,作为不同模态之间的枢纽。因此,视觉和语言模态被投射到一个共享的语义空间进行跨模态交互,而建议的模块有助于保留特定的模态功能。与我们的新架构,具有不同的信息密度的模态屏蔽模态干扰由于模态自适应模块,可以有效地合作,在捕获共享信息。此外,我们引入了一个创新的两阶段训练范式,包括视觉语言预训练和联合视觉语言教学调整。这种范例在两个阶段训练视觉编码器,使其能够更有效地捕获低级和高级语义视觉信息

mPLUGOwl 2和现有MLLM之间的整体性能比较以及现有MLLM和我们提出的模型之间的差异。

(a)先前的方法利用标准语言解码器(即LLM)来管理不同类型的指令,从而导致模态干扰和性能下降。

(b)介绍mPLUG-Owl 2,使用一个模态自适应语言解码器来处理不同模块内的不同模态,同时共享一些模态协作参数。这种方法减轻了模态干扰的问题。


旨在通过额外的模态来增强LLM的感知能力。先前的方法的一个重要限制是创建冗长的视觉序列。为了解决这个问题,研究者已经有效地减少视觉特征的序列长度。但这些方法直接将视觉特征与LLM对齐,将视觉和语言信号视为等同,从而忽略了视觉和语言模态之间的独特粒度

为了缓解这个问题,我们引入模态自适应模块。mPLUG-Owl 2不仅可以防止这种灾难性遗忘现象,而且在模态自适应模块的帮助下,可以通过仅使用语言和多模态指令数据进行联合训练来从模态的协作努力中获益,从而增强多模态和仅语言性能。

模型:

模型架构:

模型包括一个视觉编码器,视觉抽象器,文本嵌入层和语言解码器。

使用ViT-L/14作为视觉编码器,LLaMA-2- 7 B [58]作为语言解码器。视觉编码器处理具有H ×W分辨率的输入图像,并产生H/14 × W/14令牌序列。然后,这些视觉标记特征与文本标记嵌入相结合,并输入到语言解码器中,该语言解码器用作将各种视觉语言任务转换为文本生成任务的通用接口

然而,随着图像分辨率的增加,编码的视觉令牌序列可以呈指数增长。另外,图像中大量冗余的存在导致计算浪费并引入相当大的噪声为了解决这个问题,提出了一个视觉抽象配备了一个固定的学习查询集从图像中提取更高的语义特征

模态自适应模块:

先前的方法通常试图通过将图像特征投影到语言语义空间中来将视觉特征与语言特征对齐。然而,这种策略可能会导致粒度不匹配,与文本嵌入特征中的离散语义信息相比,图像特征通常包含丰富的语义信息。这些方法忽略了视觉和文本信息的独特特征,从而潜在地限制了模型的性能。

为此,我们提出了一种新的方法,即模态自适应模块(MAM),它通过将视觉特征和语言特征投影到共享的语义空间中,同时保留每个模态的独特属性,来实现视觉语言表示。

训练范例:

在训练mPLUG-Owl 2时采用了两阶段方法,其目的是在预训练阶段对齐预训练的视觉编码器和语言模型,然后在指令调优阶段微调语言模型。然而,我们发现,简单地冻结预先训练的视觉编码器并训练视觉语言投影仪将视觉数据与语言模型对齐,可能会限制它们解释复杂视觉信息的能力,例如场景文本和视觉知识。

为了解决这个问题,我们使视觉编码器在预训练和指令调整阶段都是可训练的。这种策略使模型能够更有效地捕获低级别和高级别的语义视觉信息。具体来说,对于预训练阶段,我们使视觉编码器、视觉抽象器和模态自适应模块的一部分能够被训练,同时保持预训练的语言模型被冻结。同时,多模态学习的先前研究表明,通过单模态和多模态源的协作学习可以实现显著的增强。在此基础上,我们采用了一种联合训练方法,通过在指令调整阶段调整整个模型,将文本和多模态指令结合起来。该方法通过多模态指令增强了模型对文本中嵌入的视觉概念的理解。同时,文本指令数据增强了模型对复杂自然指令的理解,从而确保了其语言能力的保留。

实验:

图像字幕和视觉问答的性能比较。

用于文本性能的模态协作。为了展示模态协作如何不仅增强多模态性能,而且增强MLLM的文本能力,评估了文本基准测试在各种能力方面的性能,包括考试、知识、理解和推理。由于模态自适应模块促进了模态协作的好处,MLLM的考试和知识能力都得到了显着提高。这种改进是因为多模态数据允许模型利用视觉信息来理解无法通过语言描述的概念。同样,由于对这些概念有了更具体的理解,该模型可以产生更丰富、更实质性的反应。此外,多模态数据增强了模型的推理能力,因为图像包含丰富的信息(如关系和空间方面)。模型从这些方面进行学习,并将其与文本相关联,从而间接增强文本的推理能力。

联合视觉语言教学调整的影响。表给出了使用各种类型的数据以及是否使用模态自适应模块进行指令调优的结果。这些结果表明,即使没有多模态指令数据,由于在预训练期间实现了有效的视觉语言对齐,该模型在多模态基准测试中的性能也是值得尊敬的。然而,当单独使用多模态指令数据时,我们观察到多模态数据集的性能有所提高,而文本任务的性能下降了约5.7%。这种现象可以通过所提出的联合视觉语言调优来抵消,如表的第三行所示,由于模态干扰,多模态性能开始略有下降。为了克服这个缺点,我们将我们提出的模态自适应模块应用于模型。结果表明,多模态和文本基准测试的性能都有所提高,VQAv2数据集的性能最低提高了0.6%,MMLU的性能最低提高了1.6%。

模态自适应模块在不相关模态情景中的影响。我们提出一个问题:彩虹的七种颜色是什么?“沿着一张随机选择的图片。在该示例中,图像输入充当对模型的干扰。我们的目标是研究我们的模块对包含不相关模态的数据的影响。模型的响应和注意力图如图所示。我们提出的模型,mPLUG-Owl 2,它结合了模态自适应模块,准确地识别所有七种颜色。在生成过程中,可以观察到该模型主要关注文本输入。另一方面,当不使用模态自适应模块时,mPLUG-Owl 2仅识别六种颜色。模型理解文本指令的能力被破坏了,而且很明显,它在生成过程中更加强调图像。得益于模态自适应模块,mPLUG-Owl 2在建模多模态输入时能够更好地捕获模态特定特征。这增强了模态协作的适应性,从而减少了文本和图像不相关时的干扰。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值