腾讯最新综述高效多模态大模型:性能要强,规模要小

科技有夕小瑶 2024-06-02 07:00:46

在过去一年里,多模态大语言模型(MLLMs)在视觉问答、视觉理解和推理等任务中展现了卓越性能。OpenAI的GPT-4V和Google的Gemini的惊人表现拉高了人们对MLLMs的期待。

他们的成功很大程度归功于scaling law,即投入的数据、计算能力或模型越大,模型的性能就越强。

3.5研究测试:hujiaoai.cn4研究测试:askmanyai.cn Claude-3研究测试:hiclaude3.com

然而,就像一台重型机器需要巨大的能源支持和高昂的“维护费”,庞大的模型规模和高昂的训练与推理成本限制了MLLMs在学术界和工业界的广泛应用,更别说在边缘设备上运行。

据计算,训练MiniGPT-v2在使用NVIDIA A100 GPU的情况下也需要超过800个小时。除此之外,推理过程的资源消耗也是个大头。以一个典型场景为例,当模型输入为336x336像素的图像和40个token的文本提示时,使用LLaVA-1.5和Vicuna-13B LLM核心进行推理,这个过程需要高达18.2万亿次的浮点运算(FLOPS)和41.6GB的内存。

这促使学者不得不开始研究如何降低MLLM的资源消耗,使其能在更广泛的场景下得到应用,同时还要尽量保持其高性能,也就是高效轻量级的MLLMs。

近一年来,不少高效轻量级的MLLMs崭露头角。比如美团的mobileVLMv2支持端侧实时运行,3B模型在某些标准测试基准上甚至优于7B ;Google发布规模从2B到34B的mini-Gemini,各个版本都取得了相似参数量下领先的效果。

为了更深入探索这一领域,腾讯优图实验室13位作者总结了近两百篇相关文献,从架构、高效视觉、高效LLMs、训练、数据和基准、应用等六个方面纵览高效轻量级的MLLMs领域的发展历程与最新进展,一起来看看吧~

论文标题:Efficient Multimodal Large Language Models:A Survey

论文链接:https://arxiv.org/pdf/2405.10739v1

作者还在GitHub上建立了一个仓库,整理了综述中提及的论文,按照分类体系进行组织,正在不断更新中~

GitHub仓库:https://github.com/lijiannuist/Efficient-Multimodal-LLMs-Survey

架构

高效MLLM遵循标准框架,主要由三个核心模块构成:1)视觉编码器,它负责接收并处理视觉信息;2)预训练语言模型,用于管控接收到的多模态信号并执行推理;3)视觉-语言投影器,充当视觉和语言两种模态之间的连接纽带。如下图所示:

不同的高效MLLM在选择组件时各有侧重点,总体来说如下表所示:

1. 视觉编码器

将输入图像作为输入,视觉编码器负责将原始图像压缩为更紧凑的特征向量。与主流的MLLM一致,高效的MLLM会选择视觉与文本语义对齐的预训练模型,如CLIP。由于视觉编码器在MLLM参数中所占比例相对较小,因此与语言模型相比,轻量级优化的优势不那么明显。因此,高效的MLLM通常继续使用大型MLLM中广泛使用的视觉编码器。

2. 视觉-语言投影器

视觉语言投影器的任务是将视觉嵌入映射到文本特征空间,得到映射后的视觉嵌入。对齐的视觉特征被用作提示,与文本嵌入一起输入到语言模型中。视觉语言投影器避免了从头开始训练端到端多模态模型的高昂成本,并有效地利用了预训练语言和视觉模型的能力。

视觉语言投影器一般有几种结构:

1)可直接使用多层感知器(MLP),即几个线性投影器与非线性激活函数交替;

2)使用更加复杂的如Q-Former、MEQ-Former等基于注意力的方法;

3)基于CNN的LDPv2[1],由MobileVLMv2提出,由特征变换、token减缩和位置信息增强三部分组成,参数相比LDP减少了99.8%;

4)基于 Mamba 的 VL-Mamba[2],实现了二维视觉选择性扫描技术,促进了不同学习方法的融合;

5)基于混合结构的Honeybee[3],使用C-Abstractor 和 D-Abstractor两种视觉投影器保持视觉token数量的灵活性以及局部上下文的有效性。

3. 小型语言模型(SLM)

预训练的小语言模型(SLM)是MLLMs的核心组成部分,它接受包含多种模态的输入序列,并输出相应的文本序列。通常会附带一个文本分词器,将文本提示映射为文本token 。文本token 和视觉token 被连接起来,作为语言模型的输入,模型以自回归的方式输出最终响应序列,如下公式所示:

由于MLLM的参数主要由SLM提供,其选择对于实现MLLM的轻量化至关重要。高效的MLLM常采用小于30B参数的语言模型,例如微软的phi2-2.7B和谷歌的Gemma-2B。经过特殊数据配方训练后phi-2,其性能可媲美比它大25倍的常规模型。下图展示了Phi模型与与Llama-2家族的比较。

而phi-3-mini不仅能在手机上轻松部署,其质量还与Mixtral 8x7B和GPT-3.5不相上下。此外,MobileVLM通过缩减LLaMA的规模并使用开源数据进行全新训练,实现了另一种优化路径。

4. 视觉Token压缩

在需要精细识别的任务,如人群计数和小字符OCR中,提高图像分辨率,即增加视觉token数量是一个不错的方法。然而,这样做会极大增加MLLMs的计算负担,特别是在Transformer架构中,因为计算成本与输入token数量成平方增长。因此视觉token压缩技术成为了高效MLLMs的核心。目前可采用以下几种方法:

多视角输入:为了让MLLM在利用低分辨率视觉编码器的同时也能感知细节,通常会输入多视角的高分辨率图像。包括全局视角的低分辨率图像和局部视角的图像块。例如,LLaVA-UHD[4]通过图像模块化策略,将原始图像切分成大小可变的切片,实现高效且可扩展的编码。而InternLM-XComposer2-4KHD[5]则采用动态调整分辨率的策略,通过自动布局保持图像原始比例,并动态调整切片布局和数量,从而提升图像信息提取效率。token处理:LLaVA-UHD采用压缩模块大幅压缩图像token以及空间架构用于组织切片token供LLMs使用。另外,LLaVA-PruMerge[6]和MADTP[7]提出了适应性减少视觉token的方法,能在大幅减少token数量的同时保持模型性能。多尺度信息融合:比如Mini-Gemini包含两个编码器分别处理高分辨率图像和低分辨率视觉嵌入,通过“Patch Info Mining”方法,使用低分辨率视觉嵌入作为查询,从高分辨率图像中检索相关视觉线索。视觉专家agent:P2G[8]使用专家agent进行实时定位,通过多模态提示实现高效和目的性的推理。MoVA[9]通过引入专家路由策略,解决了单个视觉编码器在不同内容上的泛化能力减弱问题。针对视频的方法:视频理解需要处理大量帧,Elysium[10]引入了T-Selector,以使LLMs能够在减少视觉token使用的同时区分单独的帧。VideoLLaVA[11] 建立在LanguageBind 的基础上,将视觉表示统一到语言特征空间。5. 高效的架构

高效的架构主要包括Mixture-of-Experts(MoE)和Mamba,两者架构对比如下图所示。MoE通过调整模型参数总数,同时保持激活参数不变,增强了模型能力, 从而在保持推理速度方面影响较小。Cobra[12]将高效的Mamba语言模型融入视觉模态,探索不同的模态融合方案,开发出有效的多模态Mamba。

高效的视觉编码器

视觉编码器大都采用ViT架构。然而,随着ViT模型规模的增长,可训练参数和操作的数量也在增加,从而影响了它们的部署和性能。而优化VIT的方法也层出不穷,可大致分为紧凑型架构、剪枝、知识蒸馏、量化四种类别:

在VIT架构中,这四种方法专注的组件又各不相同,如下图所示,虚线的橙色方块突出了每个优化技术主要关注的组件:

1.紧凑型架构

紧凑型架构旨在减小模型大小、计算复杂度和内存占用,而不牺牲性能。这些策略主要可以分为三类:

架构设计方法:创新架构或调整现有架构,例如Reformer利用局部敏感哈希减少注意力机制的复杂性,并通过可逆残差层高效存储激活。EfficientFormer则提出维度一致的纯Transformer范式,运用轻量化技术生成优化模型,而EfficientFormerV2进一步推出了低延迟、高参数效率的超网络。架构搜索方法:利用神经架构搜索算法探寻针对特定任务或约束的紧凑架构。如Autoformer通过层间交织权重充分训练子网,NASViT采用梯度投影、可切换层缩放及精简数据增强来提升收敛性和性能等。注意力机制优化方法:集中于降低计算复杂度,方法包括引入自适应注意力、学习稀疏模式及动态调整。2.剪枝

剪枝技术涉及从视觉Transformer中移除不那么重要的权重,通常分为无结构剪枝、结构化剪枝和混合剪枝方法。

无结构剪枝:专注于消除单个权重,不考虑他们模型中的结构布局。结构化剪枝则针对如注意力头或层的组件进行删除。混合剪枝结合二者,引入一种基于一阶重要性近似的方法来移除注意力头。比如SPViT开发了一种基于动态注意力的多头token选择器,用于自适应实例级别的token选择,同时采用软剪枝技术,将不重要的token合并成包tokens,而不是直接丢弃。ViT-Slim利用可学习的统一稀疏约束,结合预定义因素,在不同维度的连续搜索空间中表示全局重要性。3. 知识蒸馏

知识蒸馏通过让较小的模型从更大、更复杂的模型中学习,以复制其性能,从而实现高效部署并保持预测准确性。ViT的知识蒸馏方法可以分为两类:

同构蒸馏:可细分为logit级、patch级、模块级和特征级四种。Logit级方法中,如DeiT通过在自注意力模块中加入蒸馏token,模拟教师模型的类别标签推断,以促进学生各层之间的交互学习。Patch级技术则训练学生模型在patch结构上与教师模型相匹配,并用分解的流形匹配损失来优化计算成本。模块级方法则是将预训练的教师模块与模块化模型的学生模块相分离,这些模块与元模型结合,使学生能够模仿教师的行为。特征级蒸馏如MiniViT所示,通过组合连续的Transformer块权重进行,包括在层间共享权重并引入变换以增强多样性,同时使用自注意力的权重蒸馏,将大规模ViT模型的知识转移至紧凑模型。异构蒸馏:涉及在不同架构的模型之间转移知识。CiT通过从多样化的模型(如CNN和卷积神经网络)中迁移知识,来提升ViT学生模型的性能。4. 量化

ViT量化是降低ViT模型中数值表示精度的过程,通常是从浮点算法过渡到定点算法。

后训练量化(PTQ): 通过将训练好的ViT模型的参数从高精度浮点数转换为较低精度的定点数(如8位整数)来压缩模型。量化感知训练 (QAT): 将量化融入训练周期。 当需要降至超低精度 (如4位或更低)时,这种整合优于PTQ。硬件感知量化:针对特定硬件平台如GPU 、FPGA优化神经网络模型的量化过程。它调整精度级别和量化策略,以在推理时最大化性能和能效。高效的LLMs

在MLLMs中, LLMs占据庞大的参数量,因此采用高效的LLMs是提升MLLMs效率的关键之一。LLMs的优化包括注意力机制、框架、微调几个方面:

1. 注意力机制

标准的自注意力机制时间复杂度是,这里的n指的是序列的长度。这种复杂度主要是因为所有的输入都要进行对称交互,所以在处理大语言模型(LLMs)中的长序列时,会遇到扩展性的难题。

为了解决这个问题,研究者们探索了各种技术来提速注意力机制并降低时间复杂度,比如共享注意力、压缩特征信息、使用核化或低秩方法、采用固定和可学习的模式策略,以及利用硬件来辅助注意力机制。

共享注意力:通过在多个键值头之间共享计算资源来加速推理时的注意力计算。例如,Llama-2 采用了分组查询注意力GQA,以优化自回归解码时的内存带宽。GQA在性能和效率之间取得平衡,介于多头注意力和多查询注意力机制之间。

特征信息减缩:由于Transformer模型中保持全长度隐藏表示的存在潜在冗余,Funnel-Transformer通过逐层减小自注意力模型中隐藏表示的序列长度,不仅降低了计算复杂度和内存使用,还释放了资源,可用于构建更深或更宽的模型。近似注意力能够帮助模型在处理长篇文本时更有效地聚焦于任务相关信息。它的两大核心要素是核化与低秩方法。核化技术是通过将问题转化为基于核的框架来简化处理,其实质是将原始难题映射到一个更高维度、更便于管理的空间。而低秩方法则是将复杂的高维矩阵分解为两个较简单的低维矩阵之积,通过计算这两个低维矩阵的逆获得注意力矩阵的近似逆,从而显著降低计算的复杂度。2. 框架MoE:核心思想是将大模型拆分成多个小模型,即“专家”,每个专家都专门学习数据的某一部分。在训练时,会给每个专家分配一个权重,体现其在整个模型中的重要性。而在进行推理时,会根据输入对所有专家进行排序,只选择最相关的专家进行计算。这样做的好处是大幅减少了计算量,因为只有部分专家会参与。MoE通过这种方式,让不同的专家在训练和推理时分担计算任务,从而更高效地利用计算资源。可替代Transformer的结构:这里介绍两大架构像RWKV和Mamba,展现出类似Transformer的能力,擅长处理长线程依赖和并行处理。RWKV模型采用线性注意力机制,使得模型可以表现为Transformer或循环神经网络(RNN)的形式,如下图所示。Mamba作为一种选择性状态空间模型,引入了选择机制来消除无关数据,并开发了硬件感知的并行算法来处理递归操作。这使得Mamba在相同容量的LLMs中表现出竞争性的性能,具有更快的推理速度,且随着时间线性增长,内存使用保持恒定。

训练

高效MLLMs的性能及多模态处理能力,关键在于其训练过程。按训练阶段划分包括预训练、指令调优、多样化的多模态训练步骤以及参数高效的迁移学习策略,如下图所示。这些方法不仅优化了不同模态间的对齐,还能针对特定任务微调模型,并降低迁移学习的计算和参数成本。

1. 预训练

在预训练阶段,主要关注将不同模态在嵌入空间中进行对齐,以便语言模型能够处理来自各种模态的输入。此阶段主要利用大规模的文本配对数据,特别是图像-描述对为主。

考虑到仅训练连接器可能无法充分对齐视觉和文本信息,TinyLlava[11]选择部分冻结预训练模块以激活更多参数进行学习对齐。为了最大化计算效率,Idefics2[12] 采用多阶段预训练,在第一阶段,它将最大图像分辨率限制为 384 像素,并使用大全局批量大小。在第二阶段,引入PDF文档,将图像分辨率提高到最大 980 像素,以确保文本可读。

2. 指令调优

指令调优目标是通过利用任务特定的指令来微调模型在使MLLMs能够理解和遵循自然语言提供的指令,从而提升其在目标任务上的表现。

当前的指令调优方法成本高,需要大量参数调整和额外的训练。LaVIN[13]通过混合模态适应,利用轻量级模块弥合了LLMs与VL任务间的差异,实现了视觉与语言模型的联合优化。仅需1.4小时和380万参数,与其他方法相比成本显著降低。下图展示了LaVIN与其他训练方式的区别:

▲LaVIN

3. 不同的训练步骤

传统两阶段策略需要人工为不同训练阶段分配参数和数据集,这非常耗时费力。SPHINX-X[14]提出了一种简化的单阶段训练流程,统一处理所有收集的数据集,并将其转化为多模态、多轮对话格式。在训练过程中,除视觉编码器外,SPHINX-X的所有参数均被激活。与SPHINX-X类似,Cobra[10]也认为预对齐阶段可能并不必要,因此它跳过了这一阶段,直接对整个SLM进行微调,包括投影器。另一方面,TinyGPT-V的训练则包含四个阶段:首先是视觉语言理解的预训练,接着专注于优化图像模态处理,然后通过微调实现更人性化的学习,最后进行多任务学习,以提升其作为聊天机器人的对话能力。

数据与基准1. 预训练数据

预训练数据主要为了实现两个目标:促进不同模态的融合和传递全面的知识。大规模的图像-描述对数据集正好能满足这些需求,因为它们来源于互联网,数据量大且知识覆盖广泛。同时,图像和描述的直接对应有助于训练模态投影器。但这类数据集中的描述可能简短且有噪声,可以通过自动化方法,如利用CLIP模型,来精炼和过滤数据,从而提高数据质量。

另外还可以利用强大的多模态大模型GPT-4V等生成高质量的细粒度预训练数据。这些数据集通常比粗粒度数据提供更详细和准确的图像描述,从而促进图像和文本模态的紧密契合。

常见MLLM训练数据集的统计信息如下表所示。#.X表示X的数量,#.T表示文本的数量,#.X-T表示X-文本对的数量,其中X可以是图像(Image)、视频(Video)或音频(Audio)。

2.指令调优数据

下表列出了常用的指令调优数据集。高质量的图像-文本指令调优数据可来源于特定任务的数据集。以视觉问答(VQA)数据集为例,其输入包括图像和自然语言问题,输出则是基于图像的文本答案,这样的结构易于构成指令样本的多模态输入和响应。指令或任务描述可通过人工创建或由GPT半自动生成。

3. 基准

为了进行全面的性能评估,作者展示了22个高效MLLMs在14个公认的多模态语言理解基准上的效果。此外,还附上了13个知名且更大规模的MLLMs的结果对比,供进一步参考。

应用1.生物领域

在生物医学领域,MLLMs可应用于解决视觉问题和生成医学报告等任务。MoE-TinyMed[15]是基于MoE架构的模型,专为医疗应用设计,大幅减少了所需参数。LLaVA-Rad[16]支持在单个V100 GPU运行,非常适合临床应用。其模块化设计集成了单模态预训练模型,并强化轻量级适配器的训练。在标准评估中,LLaVA-Rad超越GPT-4V和Med-PaLM等模型,展现出卓越的效率和性能。

2.文档理解

文档和图表是信息传播、商业决策和学术研究中的重要元素,它们以直观的方式展示数据。然而,当前的图表理解模型参数量巨大且在处理高分辨率图像时效率低下,不利于部署与应用。TinyChart[17]采用了程序思维学习和视觉token合并策略,不仅超越了多个大型MLLM,还拥有更快的推理速度。同时,TextHawk设计了四个专门组件来高效地进行细粒度感知,以应对文档处理挑战。另外,HRVDA和Monkey也是专为高分辨率视觉文档理解任务设计的大型多模态模型。

3.视频理解

智能视频理解技术对于视频分类、字幕生成和视频-文本检索等应用至关重要。现有的大型多模态模型,如videoChat和Video-LLaMA,虽然能实现端到端的视频理解,但只能处理少量帧,不适用于长视频。为解决由于视觉token过多导致处理长视频的计算难题,已经开发出多种方法,如mPLUG-video[18]通过视觉抽象器模块来缩短序列长度、Video-LLaVA[9]通过将图像和视频的视觉表示统一到单一语言特征空间、LLaMA-VID[19]采用双token策略,分别编码整体上下文和每帧视觉提示,显著减轻长视频处理负担。

挑战与未来发展方向

高效MLLMs的发展尚处于初级阶段,仍有很大的提升空间。比如:

高效MLLMs通常只能处理单个图像,限制了其在理解长视频或其他情景丰富的应用场景的发展。高效MLLMs主要支持两种输入模态——图像和文本,以及单一的输出模态——文本。然而,现实世界包含了更为丰富的模态。未来应该扩展高效MLLMs的输入范围,使其能够处理更多样化的输入模态,并增强其生成能力。可以从两种主要路径入手增强高效MLLMs:融入更多样化的轻量级LLMs使其更灵活;利用高质量的指令调优数据集提升高效MLLM的理解和执行能力,从而增强其零样本学习性能。探索在边缘设备上部署高效MLLMs,将具有广阔的应用前景。结语

正如计算机的发展历程,从最初庞大的机身,到如今追求越来越轻薄、便捷的笔记本,科技的进步始终在向着更高效、更便捷的方向发展。在人工智能领域,也是如此。

我们期待能力越来越强的大模型面世,更好更精准地解决模态丰富的现实场景需求;也希望高效MLLMs能够快速发展,在不损失准确性的前提下满足低资源、即时性的需求,为人类的生活和工作带来更多便利。

参考资料 [1]Mobilevlm v2: Faster and stronger baseline for vision language model. arXiv preprint arXiv:2402.03766, 2024.[2]Vl-mamba: Exploring state space models for multimodal learning. arXiv preprint arXiv:2403.13600,2024.[3]Honeybee: Locality-enhanced projector for multimodal llm. arXiv preprint arXiv:2312.06742, 2023.[4]Llava-uhd: an lmm perceiving any aspect ratio and high-resolution images, 2024.[5]Internlm-xcomposer2-4khd: A pioneering large visionlanguage model handling resolutions from 336 pixels to 4k hd. arXiv preprint arXiv:2404.06512, 2024.[6]Llava-prumerge: Adaptive token reduction for efficient large multimodal models, 2024.[7] Madtp: Multimodal alignment-guided dynamic token pruning for accelerating vision-language transformer, 2024.[8]Plug-and-play grounding of reasoning in multimodal large language models. arXiv preprint arXiv:2403.19322, 2024.5[9]Video-llava: Learning united visual representation by alignment before projection. arXiv preprint arXiv:2311.10122, 2023.[10]Cobra: Extending mamba to multi-modal large language model for efficient inference. arXiv preprint arXiv:2403.14520,2024.[11]Tinyllava: A framework of small-scale large multimodal models. arXiv preprint arXiv:2402.14289, 2024.[12]What matters when building visionlanguage models?, 2024.[13]Cheap and quick:Efficient vision-language instruction tuning for large language models. Advances in Neural Information Processing Systems, 36, 2024.[14] Sphinx-x: Scaling data and parameters for a family of multi-modal large language models. arXiv preprint arXiv:2402.05935, 2024.[15]Moe-tinymed: Mixture of experts for tiny medical large vision-language models, 2024.5[16]Training small multimodal models to bridge biomedical competency gap: A case study in radiology imaging, 2024.[17]Tinychart: Efficient chart understanding with visual token merging and program-of-thoughts learning. arXiv preprint arXiv:2404.16635, 2024.[18]mplug-2: A modularized multi-modal foundation model across text, image and video, 2023.[19]Llama-vid: An image is worth 2 tokens in large language models, 2023.

0 阅读:1

科技有夕小瑶

简介:感谢大家的关注