,复旦大学数据智能与社会计算实验室
Fudan DISC
综述链接(点击文末阅读原文即可跳转):
https://www.preprints.org/manuscript/202411.0685
01
引言
✦
如何通过不同的方式,将或离散或连续的模态表示与文本空间结合得到多模态的输入输出空间? 如何设计模型架构及对应的训练策略来对齐所构建的多模态输入输出空间? 如何在所拓展的输入输出空间的基础上对多模态大模型进行全面可靠的评测? 以具身智能场景为例,输入输出扩展的框架如何进一步扩展到任意形式的输入输出信号,最终达到具有一般性能力的世界基座模型?
本文将以从视觉-语言的角度出发,并自然地拓展到对任意模态的讨论上。在本文的最后,我们对上述问题进行了简单的总结,并提供了对应的take-home messages以及对未来的展望。希望本综述能够为多模态领域的研究者提供一个直观全面的概述并给未来的发展带来一些启示。
02
✦
图2:多模态模型的演变发展历程
在介绍LMM之前,我们希望简单地回顾深度学习场景下多模态研究范式的演变,来说明LMM的特别以及先进之处。具体而言,多模态的研究的范式经历了从“任务专用”到“通用架构”三个阶段的演进过程:
任务导向阶段:早期的多模态模型大多是为特定的,具有应用场景的任务设计的,比如视觉问答(VQA)、图像描述(Image Captioning)和图文检索(Image-Text Retrieval)等。每个任务通常需要专门的形式和数据集进行定义。主流的模型架构也根据对应的任务进行设计,因此通用性较差。模型的设计和发展依赖于大量训练样本和特定任务的指标,这样的范式在跨任务应用中表现不佳,且迁移成本高。 视觉-语言预训练阶段:为了提升模型的通用性,研究者们引入了类似BERT的自监督预训练方法。在大规模图文对(Image-Text Pair)数据上进行自监督学习,获得的多模态表示可用于多个下游任务。这种方式使模型能够适应更广泛的任务场景,但依然需要在特定任务上引入特定的参数进行微调,未能实现真正的零样本应用。 多模态大模型阶段:受大语言模型的启发,研究者们希望利用语言作为用户与模型的统一交互工具,通过将不同模态的信息与语言对齐,使得模型能够在零样本场景中理解多模态信息并生成响应。这种通用性和交互性的提升使得大规模多模态模型有望成为多模态领域的基础模型,支持未来的广泛应用。
03
✦
图3:不同的输入输出空间说明
大规模多模态模型的核心问题是如何构建和扩展输入输出空间,从而实现多模态信息的对齐和生成的问题。如图3所示,我们从以下几方面对拓展后的多模态的输入输出空间结构进行了分类:
多模态输入空间拓展:为了让模型能够处理不同的模态,需要为文本、图像和音频等模态构建不同的表示方式。例如,文本通常以离散的token表示,而图像则可以通过视觉编码器转化为连续的特征向量(比如通过CLIP)或离散的视觉代码(比如通过VQ-VAE)。这样的输入表示可以分为两类:混合的输入空间(输入类型A)和统一的离散输入空间(输入类型B)。前者将文本作为离散表示,而图像和音频则是连续表示,需要后续设计对应的架构进行对齐;后者通过进一步离散化其他模态的表示,使所有模态的数据在统一的离散空间中表示,减少了跨模态对齐的难度。 多模态输出空间扩展:在输出端,LMM可以根据需要生成不同模态的内容。常见的输出空间结构分为三类:仅文本输出空间(输出类型1)、混合多模态输出空间(输出类型2)和统一的离散多模态输出空间(输出类型3)。只输出文本的模型可以生成语言描述,适用于多模态理解类任务;混合多模态输出的模型则划分了输出的空间,并将连续的输出引入到特定的模态解码器(如Stable Diffusion)中来生成多模态的回复;而统一离散输出则通过建立统一的离散表示,让模型自由的在各模态间切换,实现更灵活的多模态内容生成。 输入输出空间结构的组合:通过组合上述不同结构的输入空间,主流的LMM可以分为:(i)LLaVA,Qwen-VL为代表的多模态理解模型,利用类型A的输入和类型1的输出,能够以文本进行回复;(ii)以GILL,DreamLLM为代表的多模态生成模型,利用类型A的输入和类型2的输出,能产生多模态混合的回复;(iii)以Chameleon,Any-GPT为代表的统一离散化模型,利用类型B的输入和类型3的输出,以统一的离散形式支持多模态的输入和输出。当然也存在这三类以外的架构,具体请参阅原文表格1,2中的总结。
04
✦
在扩展输入输出空间之后,如何在不同模态之间实现对齐是多模态大模型设计中的关键。首先需要根据所构建的输入输出设计对应的模型架构,大致可以分为以下几个模块:
基座模型用于统一建模不同模态的表示,主流为多层的Transformer架构,与此同时,基座模型通常会从预训练的LLM进行初始化,得到更好的文本表示能力。 输入对齐模块来帮助模型理解和对齐来自多个模态的输入。对于类型A的输入空间,需要引入连接模块(如多层感知器或注意力模块)来将视觉或音频信息转换为与文本表示兼容的形式,从而进行统一处理。对于类型B的输入空间则直接通过拓展输入词表的形式即可完成对齐。上述方法都能保证不同模态输入的一致性。 内部对齐模块通过在基座模型内部,通常是Transformer架构基础上引入跨模态注意力层或“视觉专家”模块,增强了对于跨模态建模的能力。这种方式增强了模态之间的内部关联,使得模型能够更深层次地理解复杂的多模态信息。 输出对齐模块来将基座模型的输出对齐到特定模态的生成器(例如图像生成器或音频生成器)上。类型1和3的输出空间可以直接通过分类解码方式进行完成,无需额外模块,而类型2的输出空间则需要额外的映射模块(通常为线性层和Transformer)来连接基座模型的输出和模态生成器的输入。这最终使模型不仅能生成文本,还可以在需要时生成图像或音频,为多模态生成提供了更多可能性。
05
✦
图4:多模态大模型的不同阶段的训练配置
上一节中构建的架构需要学习到不同模态之间的关联,从而在各种任务中准确地处理多模态信息。通常训练包括两个阶段:
第一阶段是基于大规模的多模态交错数据(multimodal interleaved data)进行预训练,以建立初步的跨模态关联:
训练数据:通常包括简单的X-Text Pairs(X-文本对)数据,多模态交错文档以及各种特定场景下的数据,这些数据可以通过标注、网络爬取以及模型生成的方式得到。请参阅原文表格3,4,5。 训练目标:通常会根据上述数据构建对应的多模态序列,采用对于文本生成的损失进行训练,帮助模型从多模态语境中生成相关的文本。而对于具有多模态生成能力的模型,则同样会需要对序列其他模态内容进行生成。 其他训练设定:针对不同的模型架构,需要考虑在预训练阶段激活不同的模块,在保证足够的可学习参数容量的同时引入更多高质量的数据。进一步还可以将预训练进一步拆分成多个阶段,逐步进行学习。
接着通过指令微调,让模型理解和遵循多模态场景下的用户指令:
训练数据:类似LLM,通常需要引入了多模态信息的指令数据进行支持。常见的构造方法为重构已有的任务数据集以及通过self-instruct类方式构造新的数据,具体请参阅原文表格6,7,8。具体训练中需要合理地根据目标合理地混合不同的指令数据来提高模型的泛化性。 训练目标:类似预训练,本阶段同样利用生成的损失进行训练,需要额外考虑的是仅需要考虑对指令数据中模型回复部分进行生成和损失的计算,而不用考虑用户输入的指令。 其他训练设定:在指令微调过程中,由于语境较为复杂,通常需要激活基座模型来提供足够的可学习参数,还可以通过引入parameter-efficient模块(比如LoRA),或者引入纯文本的训练数据来更好地保持基座模型本身的能力。
除此之外,一些特殊的模型架构还会引入额外的训练阶段,比如生成类模型可能需要额外的生成训练来更好地对齐多模态的输出空间;而引入了基于MoE的稀疏内部对齐模块的模型则需要通过sparse upcycling后进行额外的训练来更好地学习稀疏化的模型参数。
06
✦
在将输入输出空间拓展到多个模态后,LMM就可以支持各种各样的下游应用。为了保证可靠性,对于其实际能力的评估就显得尤为重要。本文根据不同任务要求的输出空间的不同,将评测任务分为以下类别:(详细论述请读者参阅原论文Section 5,6)
图5:模态理解任务的输出输出和评估方式概览
这类评测的目标在于探究模型是否很好地理解了多模态信息,通常以“X+Text→Text”的输入输出形式存在。如图5所示,理解类Benchmark通常根据目标的模态和对应任务场景设计对应的多模态语境输入(数据样本),并设计合适的问题形式,结合数据构造对应的指令,最终根据不同的评估目标,设计对应的指标和评估方法来判断自然文本形式的输出是否包括了正确的信息。
6.2 模态生成任务
07
✦
除了对于模态的拓展,我们发现多模态大模型的输入和输出能够进一步扩展,容纳更多形式的信号,具有很强的可扩展性,其中最具有应用场景的即为具身智能体(Embodied Agent)的构建。
具身智能体指的是能够在物理环境中感知、理解并执行任务的智能系统,例如机器人、自动驾驶汽车等。这类智能体需要处理来自多种模态的信息(如视觉、听觉、触觉等),并能够实时地与环境交互。因此,具身智能体不仅要求多模态信息的理解,还需具备实时决策和行动规划的能力。
如果需要将多模态大模型应用到具身场景下,则需要如图7所示,在输入端拓展对环境的感知能力,并在输出端拓展对于不同行为的行动和规划能力。目前已经有了一些相关的研究工作,对于输入端,研究者通过将环境地图、价值函数加入多模态大模型的输入空间,可以帮助智能体识别场景中的物体、人物、障碍物等,从而增强智能体的环境感知能力。在输出端,通过为不同的具身智能任务设计动作空间和对应的输出空间,具身智能体可以将不同模态的信息对齐并整合,并在动态环境下的实时决策。同样,针对具身目标的输入输出扩展,相应的模型架构、训练方法、以及评估方法也被提出。
08
✦
”
问题1:如何通过不同的方式,将或离散或连续的模态表示与文本空间结合得到多模态的输入输出空间?
目前常见可行的策略为(1)构建混合的空间,以连续形式引入模态信息,与离散文本进行对齐;(2)以统一化的离散表示建模多个模态。两类结构对于输入和输出空间都适用。 两类结构各有优劣,混合的空间能够更有效地利用预训练的模态编码器(大多为连续,如CLIP),在理解类任务上表现较好,但无法直接支持多模态的生成;离散的空间很好地统一了生成和理解,但由于缺少强大的离散编码器,在理解类任务上表现稍逊。 目前很多研究表明模态的表示方式对于多模态大模型非常重要,学术社区也在积极探索更好的模态表示方法和编码器,易用高效并且能兼顾生成和理解任务。在此基础上,我们认为离散和连续的选择和优化的目标是息息相关的,两者的设计思路和训练方法也存在着互相借鉴和促进的可能性。
”
问题2:如何设计模型的架构以及对应的训练策略来对齐所构建的多模态输入输出空间?
模型的架构需要适应所构建的输入输出空间结构,根据输入空间设计对应的输入端对齐模块,根据不同模态的输出形式设计对应的输出对齐模块,同时可以在基座模型内部引入额外的内部模块更好的建模跨模态的交互。 针对上述的输入端、输出端以及内部对齐模块,目前都存在着多种多样的结构,且不同结构的设计间大多存在着各方面的tradeoff,不存在能够在所有场景和需求下都表现更好的结构。 对于训练的策略,通常LMM需要经过预训练和指令微调,前者对齐多模态的表示,后者学习多模态场景下的指令遵循能力。研究者需要根据应用和优化的目标选择和混合训练的数据,同时保证数据的丰富度、质量以及规模是提高模型表现的关键。同时需要根据模型的架构设定合适的参数,比如可训练的参数等。 总体而言,LMM的对齐架构的设计是一个可行空间非常大的研究问题,需要经过一定的实证性分析才能获取相对较优的设定,但也会额外带来大量的计算成本。如何快速地验证当前设计和优化方向的有效性非常关键,除此之外,目前已经有的一些工作,尝试为研究者提供一些启发性的结论,帮助缩减模型设计的可行空间也是对于学术和工业社区非常宝贵的经验。
”
问题3:如何在所拓展的输入输出空间的基础上对多模态大模型进行全面可靠的评测?
由于LMM以语言作为人机交互的方式,评估具有非常强的可扩展性。研究者可以灵活地通过文本指令定义任务,构建理解类的Benchmark,要求模型完成“X+Text→Text”的任务来考察模型对于多模态信息的理解能力
类似地也可以构建生成类的Benchmark,要求模型完成“X+Text→X”的任务来评估模型生成多模态内容的质量。 目前多数的多模态Benchmark聚焦于以Zero-shot的形式进行评估,同时多模态大模型的能力也展现了通过In-context learning,提供示例样本的方式定义任务的可能。 目前的Benchmark能够覆盖多样化的场景和能力维度,但目前仍然存在着评估指标和实际用户感知的差异,包括评估任务和用户实际需求的差异,以及评估指标与人类偏好之间的差异。这也是很多模型在指标上明显超过GPT-4V但是其用户体验仍然稍逊的原因。如何更好地对齐benchmark score和人类感知对于多模态的模型的构建非常重要,能够防止现有的模型过拟合到冰冷的数字上。
”
问题4:以具身智能场景为例,输入输出扩展的框架如何进一步扩展到任意形式的输入输出信号,最终达到具有一般性能力的世界基座模型?
在具身场景下,多模态大模型可以在输入端对环境感知进行扩展,在输出端对动作决策进行扩展,最终构建能够自主适应环境完成任务的智能体。
进一步我们认为,输入输出扩展的思路可以进一步得到拓展到任意形式的信号上。在当我们构建的输入输出空间能够覆盖足够多的信息的时候,所构建的世界模型或许就能验证“predicting the next token is to understand the world”的猜想。
复旦大学数据智能与社会计算实验室
Fudan DISC
联系方式:disclab@fudan.edu.cn
地址:复旦大学邯郸校区计算中心
点击“阅读原文”跳转项目主页