通过利用大型语言模型(LLM)的能力,最近的大规模多模态模型(LMMs)在开放世界多模态理解方面展现了卓越的多功能性。然而,它们通常参数众多且计算密集,因此在资源受限的情况下适用性受限。为此,相继提出了几种轻量级LMMs,以在受限规模(例如,3B)下最大化能力。
尽管这些方法取得了鼓舞人心的成果,但它们大多数只关注设计空间的一两个方面的研究,而影响模型能力的关键设计选择尚未被彻底探讨。在本文中,作者从模型架构、训练策略和训练数据等方面对轻量级LMMs进行了系统研究。
基于作者的发现,作者获得了Imp一系列在2B4B规模下能力极高的LMMs。
值得注意的是,作者的Imp-3B模型在所有现有相似规模的轻量级LMMs中表现稳定地超越,甚至超过了13B规模下的最先进LMMs。
通过低比特量化技术和分辨率降低技术,作者的Imp模型可以部署在高通骁龙8Gen3移动芯片上,具有高达约13个 Token /秒的高推理速度。
1 Introduction
近年来,大型语言模型(LLM)的革命极大地改变了人工智能领域的格局。最新型的LLM,如GPT-4[49]和Gemini-1.5[60],在各个领域和任务中展现了卓越的通用性和能力。
同时,人们越来越有兴趣将仅限语言的LLM扩展到大型多模态模型(LMM),这些模型旨在共同处理除了语言之外的其他模态,如视觉[3, 33, 50, 64, 78]、语音[12, 74]及其组合。这些LMM显著扩展了仅限语言的LLM的能力,使得在完成复杂现实任务时能够进行更自然和灵活的交互。
尽管这些LMM取得了显著的进展,但它们通常在训练和推理阶段都是参数众多且计算密集型的,这限制了资源有限的学术研究者的参与,并在如个人电脑和移动设备等资源受限的环境中提出了挑战。鉴于上述限制,构建轻量级但强大的LMM迅速引起了学术界和工业界的关注。
在轻量级LLM的基础上,如Phi-2(27B)[25]和MiniCPM[79],一些代表性的3B规模的LMM通过引入精心设计的训练策略[65, 71]、先进的架构[10]和丰富的训练数据[22, 79],分别实现了与7B规模的最先进对手相媲美的结果。
尽管这些轻量级多模态模型(LMMs)很突出,但它们大多数只关注整个设计空间的某一两个方面的。究竟哪些关键设计选择会影响轻量级LMM的能力仍然不清楚。
尽管对7B/13B LMMs进行了一些系统研究[29, 37],但没有明确证据表明这些经验性的设计选择可以直接转移到规模小得多的LMMs上。为此,作者在受控环境中彻底研究了轻量级LMMs的设计选择的影响。作者从常用的LLaVA-1.5[37]模型出发,通过逐步评估不同的模型架构、训练策略和训练数据的影响,构建了一个全面的发展路线图。在开源轻量级 LLM 的基础上,作者分别获得了名为Imp-2B,Imp-3B和Imp-4B的一系列能力强大但轻量级的LMMs。值得注意的是,作者的Imp-3B模型在广泛的LMM基准测试中显著优于同规模的其他模型,并且稳定地超过了13B规模的最先进的LMMs。
此外,作者未使用任何专有的预训练模型或私有训练数据以确保可复现性。通过低比特量化技术和降低图像分辨率技术,优化后的Imp-3B模型可以在配备高通骁龙芯片的手机上高效运行,大约每秒13个token。
代码和预训练模型分别在Github2和HuggingFace3上公开可用。作者希望作者的工作能为未来轻量级LMM的研究提供一个坚实的基础。
2 相关工作
大型语言模型(LLM)。由于在各种语言任务上表现出卓越的多功能和能力,LLM在过去几年里彻底改变了人工智能领域。通过将Transformer[63]的参数规模扩展到数十亿甚至数百亿,LLM展示了在以前的小型预训练语言模型[13, 52, 55]中未曾见过的涌现特性。LLM的显著成功首先是由像GPT系列[4, 49, 51]和ChatGPT[48]这样的商业模型带来的,并进一步由开放源码的模型如LLaMA[61, 62],Mistral[26],Owen[2]和Baichuan[67]加速。LLM的成功也促进了大型多模态模型(LMMs)的研究兴趣,这些模型旨在赋予LLM处理多种模态的能力。
大型多模态模型(LMMs)。
LMMs的研究大致可以分为两条线:
松耦合和紧耦合的方法。松耦合方法,例如Visual ChatGPT ,MM-REACT,和HuggingGPT ,利用LLMs协调多个外部视觉模型来理解和表达视觉信息。这些方法也被称为多模态代理方法,因为LLMs可以自主地规划和调用视觉模型作为工具来解决多模态任务。
紧耦合方法旨在通过多模态交互模块将预训练视觉模型与LLMs对齐来训练端到端的多模态模型。Flamingo引入了一种门控交叉注意力机制来对齐视觉和语言模态。
LLaVA使用一个简单的线性投影层将视觉表示映射到LLM的嵌入空间[38]。BLIP-2 [32]和MiniGPT-4 [78]学习了一个更重的Q-Former模块,以有效地跨模态建立对齐。后续研究构建了多样化和高质量的多模态指令数据集,以增强所学LMMs的特定能力。
轻量级LLMs和LMMs。目前,大多数流行的LLMs和LMMs参数量大且计算密集,这阻碍了它们在PC和移动设备等资源受限场景中的应用。值得注意的是,人们对开发小于7B规模的轻量级但强大的LLMs和LMMs的兴趣日益增加。例如,Phi(13B和27B)[20, 25],Gemma(20B),Qwen [2],TinyLlama(11B)[76],MobileLLaMA(14B和27B)[10]和MiniCPM(20B)[79]是这种规模的LLM代表。
这些轻量级LLM的开源也促进了轻量级LMMs的探索,因此一系列早期尝试已经相继进行,例如TinyGPT-V(30B)[71],LLaVA-Phi(30B)[80],Vary-Toy(18B)[65],MiniCPM-V(30B),Bunny(30B)[22]和MobileVLM(30B)[10]。然而,目前还缺乏对模型架构、训练策略和训练数据的研究,以探索轻量级LMMs的潜在能力。
3 Preliminaries
作者的Imp模型源自LLaVA-1.5[37],这是一个能力很强的70亿参数的LLM,它在经过精心挑选的公开可用数据上进行训练。为了更好地描述作者的修改,作者首先回顾一下LLaVA-1.5的模型架构和训练方法,如图1所示。
模型架构。如图1(a)所示,LLaVA-1.5的架构包括三个关键组成部分:预训练的视觉编码器、预训练的LLM以及从零开始训练的中间多模态连接器。
对于输入图像,它被表示为LLM词(token)嵌入空间中的一系列视觉嵌入。为了实现这一目标,LLaVA引入了视觉编码器和多模态投影器。具体来说,LLaVA-1.5使用基于ViT的视觉编码器,通过多模态对比学习[14]进行预训练,这里指的是CLIP ViT-L/14@336模型(30亿)[54],将图像编码为一系列576(24×24)的展平视觉特征。
之后,这些视觉特征通过一个由两层MLP实现的多模态连接器模块进行馈送,该模块将视觉嵌入转换为与词嵌入相同的维度。得到的视觉嵌入与输入语言指令的词嵌入连接起来,形成一个多模态输入,然后将其送入预训练的LLM(例如,Vicuna[8])以逐token生成语言响应。
训练方法。如图1(b)所示,LLaVA-1.5采用两阶段训练方案,即多模态对齐预训练和多模态指令微调,以确保每个网络组件的充分学习。具体来说,在第一阶段,仅训练多模态连接器,而模型的其余部分被冻结。
这个阶段使用558K对图像-标题数据集,旨在学习视觉嵌入和词嵌入的对齐。在第二阶段,LLM和多模态连接器联合优化,而视觉编码器仍然被冻结。这一阶段旨在通过在66.5K图像-指令-响应三元组上进行训练,赋予LLM遵循指令的能力,这些三元组来自学术VQA数据集和GPT生成数据集的混合。
4 A Roadmap from LLaVA to Imp
在本节中,作者介绍了从LLaVA-1.5-7B获取作者的Imp-3B模型的详细路线图。为了弥补较小模型的能力退化,作者对LMMs的设计空间进行了全面研究,包括模型架构、训练策略和训练数据。
直观的路线图如图2所示,其扩展结果如表1所示。下面提供了详细的分析。
Optimized Model Architectures
作者首先通过寻找最优的模型架构来进行探索,这包括选择LLM和视觉编码器。
选择LLM。作者采用采用LoRA [23]训练的LLaVA-1.5-7B模型[37]作为作者的参考模型。根据计算,LLaVA中的大部分参数来自其LLM Backbone 网Vicuna-7B [8]。
为了获得轻量级的LMM,作者的第一步是使用更小但强大的LLM替换Vicuna。为了在效率与效能之间做出权衡,作者选择进行比较的2.7B规模候选LLM,即Phi-2 [25]和MobileLLaMA [10]。
从表1的1.1节结果可以看出:
- 当使用相同的视觉编码器(即CLIP ViT-L)时,用较小的LLM(Phi-2或MobileLLaMA)替换Vicuna-7B,在六个基准测试的平均分数上会带来明显的性能下降。
这表明LMM的性能高度依赖于其支持的LLM,并且根据扩展定律[28],较大LLM的能力通常优于较小的LLM。
- 在相同的2.7B模型规模下,采用Phi-2的LMM显著优于采用MobileLLaMA的对应模型,显示了Phi-2由于精心组织的训练数据而具有的优势。因此,作者在以下设计中选择Phi-2作为默认的LLM。
选择视觉编码器。除了LLM,视觉编码器的选择也影响LMM的能力。LLaVA-1.5使用强大的CLIP-ViT-L/14@336模型作为其视觉编码器,该模型在4亿个精心策划的图像-文本对上进行了对比预训练[54]。为了验证不同视觉编码器的能力,作者尝试了两种预训练的视觉编码器,即IN1k-ViT-L/16@336 [14]和SigLIP-SO400M/14@384 [72]。前者是原始的ViT模型,在ImageNet-21K上进行预训练,然后在ImageNet-1K上进行微调;后者使用与CLIP相同的训练方法,但是具有稍大图像分辨率的形状优化ViT架构。
表1的1.2节结果显示:
- 在类似的模型架构和相同的输入分辨率下,采用CLIP-ViT-L的LMM显著优于采用IN1k-ViT-L/16@336的对应模型。这可以解释为大规模图像-文本对比学习可以促进视觉编码器的泛化,并获得更细粒度的视觉表示。
- 用SigLIP替换CLIP-ViT在所有基准测试上带来一致的性能提升,这可以解释为模型能力提升与视觉标记增加(CLIP中的576 vs. SigLIP中的729)的协同效应。因此,作者在以下选择SigLIP作为默认视觉编码器。值得注意的是,当前的3B规模LMM在平均分数上已经超过了7B的参考模型,显示了轻量级LMM的可行性和潜力。
Improved Training Strategies
在探索了模型架构之后,作者固定了默认设置,然后研究了训练策略,包括微调机制和训练周期数。
微调机制。如上所述,LLaVA是采用两阶段方式进行训练的。
在第一阶段,视觉编码器和LLM保持冻结状态,只训练多模态连接器,
而在第二阶段,LLM和多模态连接器联合进行微调。
由于第一阶段仅作为初始化,与第二阶段相比,其重要性较低。
因此,作者在LLaVA中保持第一阶段的训练设置,并在第二阶段探索不同的微调机制。
作者的探索在两个层面上进行。在宏观层面,作者比较了传统的全参数微调和LoRA微调[23]机制。在微观层面,作者探索了具有不同秩(即128、256和512)的LoRA微调模型。
从表1的2.1节结果可以看出:
- 采用全参数微调训练的模型在需要更多GPU内存的情况下,劣于采用LoRA微调的模型。因此,作者将LoRA微调作为作者第二阶段的训练机制。
- 对于LoRA微调,将秩从128增加到256带来了0.2个点的平均分数提升,而进一步将其增加到512则导致分数下降0.1个点。基于以上观察,作者在以下实验中采用秩为256的LoRA微调机制。
训练周期数。LLaVA-1.5默认训练一个周期。然而,模型是否训练充分尚不清楚。为此,作者尝试了不同的训练周期数,以验证这一因素的影响。
如表1的2.2节所示,将训练周期从1增加到2带来了0.5个点的平均分数提升。这一观察验证了作者的假设,即训练一个周期的模型可能训练不足。
同时,将训练周期从2增加到3导致分数下降0.4个点,表明2个周期是最佳设置。同样,作者在后续探索中将训练周期数设置为2。
Augmented Stage-2 Training Data
除了模型架构和训练策略之外,训练数据的质量和多样性,尤其是第二阶段的指令调整数据,对LMMs的能力起到了关键作用[37, 41]。LLaVA-1.5精心构建了一个包含66.5万个样本的混合数据集,该数据集来自几个以学术任务为导向的视觉问答(VQA)数据集,已被广泛用作许多开源LMMs的第二阶段训练数据。受到[39]的启发,作者考虑了两种类型的训练数据来增强原始的66.5万数据,即OCR与图表导向数据以及GPT4V标注数据。增强数据集的详细统计信息在表2中说明。
OCR与图表导向数据。类似于[35, 39],作者引入了DVQA[27],ChartQA[44],DocVQA[45],AI2D[30],以及InfographicVQA[46],这些是人类标注的VQA数据集,重点关注图像中的OCR和图表推理。同时,作者从LLaVA-1.5的66.5万数据集中移除了22K个TextCaps数据[57],因为它们使用了与TextVQA[58]相同的训练图像集。这使得作者能够更好地评估在TextVQA基准上的零样本性能。因此,作者获得了包含67.5万个样本的增强数据集(66.5万+32万-22万)。
从表1的3.1节结果可以看出:1) 移除TextCaps导致在TextVQA上的性能显著下降4.8个百分点,在平均分数上下降0.8个百分点。这反映了在TextVQA上的实际零样本性能。2) 引入OCR与图表导向数据对TextVQA和ScienceQA带来了显著的改进,这两个数据集都要求理解和推理图像中的文本。
GPT4V标注数据。除了学术VQA数据集之外,关于图像的高质量指令调整数据非常有价值但通常难以获取。作为一种替代方法,可以利用最先进的LMM(例如,GPT-4V)根据输入图像和预定义的提示标注回应。作者利用了三种典型的GPT4V标注数据集,分别是ShareGPT-4V[7],LAION-GPT-V[31]和ALLaVA[5]。前两个是视觉字幕数据集(总共3万个),最后一个是一般性多模态任务的对话数据集。请注意,原始的ALLaVA包含70.8万个样本。为了避免它在作者的混合数据集中占据主导地位,作者从ALLaVA中随机抽取了一个30万个样本的子集。最终,作者获得了大约100万个样本的增强数据集(67.5万+3万+300万)。
从表1的3.2节结果可以看出,字幕和对话数据都促进了模型能力的提升。它们的协同作用使作者能够获得一个平均得分为73.2的、能力很强的LMM,这比LLaVA-1.5-7B的平均得分高出3个百分点。作者将这个模型命名为Imp-3B,并在接下来的部分将其与最先进的LMMs进行比较。
5 Main Results
上述路线图以一组通用且可转移的设计选择结束。除了Phi-2之外,作者还把这些设计选择应用于不同的轻量级LLM,即Qwen-1.5(1.8B)[2]和Phi-3(3.8B)[47],以获得一系列轻量级LMM Imp-2B/3B/4B4。作者对Imp模型的有效性和效率进行了与最先进的LMM的全面定量和定性比较。
每个Imp模型都在配备8个A100 GPU(40GB)的服务器上进行训练,并在32小时以内完成。
参考
[1].Imp: Highly Capable Large Multimodal Models.
作者:小先锋
来源:AIGC 先锋科技
推荐阅读
- 上交大、上海 AI 实验室、ViVO 推出 TerDiT ,极低比特量化感知训练和和高效部署方案 !
- 让量化大模型无损,IntactKV:保持关键词元无损,轻松提升量化精度!
- YOLOv10开源|清华用端到端YOLOv10在速度精度上都生吃YOLOv8和YOLOv9
- OverlapMamba 具备超强泛化能力的定位方法
欢迎大家点赞留言,更多Arm技术文章动态请关注极术社区嵌入式客栈专栏欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。