本文提出了MobileVLM,一种针对移动设备运行的多模态视觉语言模型(MMVLM)。它是多种移动导向架构设计和技术的融合,包括一组规模为1.4亿和2.7亿参数的从零开始训练的语言模型,一个预先在CLIP风格上进行多模态视觉模型训练的模型,通过一个高效的投影器进行跨模态交互。在几个典型的VLM基准测试上评估MobileVLM。MobileVLM与一些更大模型相比具有相同的表现。
更重要的是,在高通骁龙888 CPU和英伟达Jetson Orin GPU上测量推理速度,分别获得21.5个 Token 和65.3个 Token 每秒的state-of-the-art性能。
代码模型:https://github.com/Meituan-AutoML/MobileVLM
1 Introduction
大型多模态模型(LMMs),特别是视觉语言模型(VLMs)家族,由于在感知和推理方面显著增强的能力,成为构建通用助手的有前途的研究方向。然而,将预训练大型语言模型(LLMs)的表示与视觉模型连接起来,以揭示跨模态属性,如视觉问答、图像描述、视觉知识推理和对话等,仍具有挑战性。
在这些任务上的显著性能可见于GPT-4V和Gemini,它们的能力评估可以在[1, 41]中找到。然而,对于这些专有模型,可用的技术细节非常有限。与此同时,在研究社区中,已经提出了一种语言调优方法。例如,Flamingo 利用视觉Token通过gated cross-attention层来条件化冻结的语言模型。BLIP-2 认为这种交互是不够的,并引入了一种轻量级的 Query Transformer(称为Q-Former),它直接从冻结的视觉编码器中提取最有用的特征并将其输入到冻结的LLM中。MiniGPT-4 通过仅使用一个投影层将BLIP-2 中的冻结视觉编码器与Vicuna 中的冻结语言模型对齐。独立地,LLaVA 应用了一个简单的可训练投影器,将视觉特征转换为具有与语言模型要处理的所有词嵌入相同维度的嵌入Token。
值得注意的是,训练策略也表现出适应大规模多模态数据多样性的趋势。LLaVA可能是首次尝试将LLM中的指令调优范式扩展到多模态场景。为了生成多模态指令遵循的数据,它向仅包含文本信息的GPT-4 提供图像的文本信息,如描述和图像的边界框坐标。MiniGPT-4 首先在图像描述与标注数据集上进行训练,然后在图像与文本对齐的整理数据集上进行微调。InstructBLP 根据预训练的BLIP-2模型强制执行视觉语言指令调优,其中Q-Former在指令调优格式的多样数据集上进行训练。mPLUG-Owl 引入了一种两阶段训练策略,其中视觉部分首先预训练,然后使用LoRA 与来自各种来源的指令数据进行微调的大型语言模型LaMA 。
尽管上述VLMs的进展,但在资源受限的场景中实现跨模态能力的自然需求依然存在。Gemini 在多种多模态基准测试上超越了最先进性能,并为低内存设备引入了移动规模的VLMs,参数分别为1.8亿和3.25亿。常见的压缩技术如蒸馏和量化也用于此目的。作者的目标是使用公共数据集和可用技术构建第一个用于资源受限平台的开放、移动规模的VLMs,以实现视觉感知和推理。
作者的贡献如下:
-
提出了MobileVLM,这是专门针对移动场景的多模态视觉语言模型的全栈式重构。据作者所知,作者是第一个从头开始提供详细、可复现且强大的视觉语言模型。使用受控和开源数据集,作者构建了一组高性能的基础语言模型和多模态模型。
-
对视觉编码器的设计进行了广泛的调优研究,并系统地评估了VLM在各种训练范式、输入分辨率和模型大小上的性能敏感性。
-
设计了一个高效的视觉和文本特征之间的投影器,更好地对齐多模态特征,同时减少了推理预算。
-
作者的模型专门针对移动、低功耗设备进行了优化,在Qualcomm移动CPU上的速度测量为每秒21.5个 Token ,而在NVIDIA Jetson Orin GPU上的速度测量为每秒65.3个 Token 。
-
作者的模型在大量的VLM基准测试上表现相当,证明了它们在实际中应用于许多任务的能力。尽管作者主要关注边缘场景,但作者的模型在许多最近VLMs上超过了它们,这只能由云中的强大GPU来支持。
2 Related Work
Vision Transformer
视觉Transformer(ViT)现在是视觉感知的主导 Backbone 。其后续方法如Swin ,DeiT ,PVT 和Twins 已经升级了其原始架构设计,以增强其表示能力和效率。预训练范式也经历了几次转变,从图像监督学习(即Token分类)到无监督学习如遮罩自编码器,最近到语言监督训练,如CLIP 所宣称的,赋予了ViTs前所未有的零样本能力。VLMo通过统一多模态训练增强了CLIP。
LLMs
大型语言模型通常具有数百亿个参数,并在极其广泛的语言语料库上进行预训练,表现出以前从未见过的突现能力。它们 Reshape 了自然语言处理领域,并在各种应用中得到广泛应用。至今,专有语言模型如GPT-4仍占主导地位,而开源模型如GLM,BLOOM,OPT和LaMA系列不断发布。许多最近的工作都是基于它们构建的。
值得注意的是,有一个趋势是构建更小的语言模型,即参数约为10亿或更少。例如,GPT-Neo,Pythia,GALACTICA,OpenLLaMA,Phi,Qwen 都提供了这样的语言模型。尽管私人收集的高质量数据可以显著提高LLM的性能,但作者的目标是构建可复现和高效的模型,因此作者不会使用任何非公开数据进行研究。
VLMs
近年来,视觉语言模型这一领域迅速崛起。表1详细比较了它们在架构、跨模态设计和训练语料库方面的详细情况。
架构选择。由于大型语言模型的训练成本高昂,大多数用于VLMs的语言模型是预训练的开源模型,如OPT,Flan-T5,Chinchilla,Vicuna和LaMA。QWen通过自定义变异[4]将LaMA调整为他们自己的LLM。
VLMs中的视觉backbone通常采用视觉Transformer,但预训练采用各种策略。大多数VLMs更喜欢使用自然语言监督训练的CLIP风格的ViT,而Flamingo选择NFNet-F6,KOSMOS选择VLMo。
数据为中心性。训练数据的构建变得越来越重要。在VLMs的线路上,通常会使用数百万个文本-图像对,其中新的数据集通常会与相应的新的模型一起发布。例如,除了增强的视觉受体和新型的语言模型Qwen-LM之外,多语言多模态的Qwen-VL还将图像与描述和边界框对齐,这为通用模型树立了新记录。PALI和PALI-X消耗了一个内部的多语言图像-文本数据集WebLI,规模达到120亿。
最近,观察到当前图像-文本数据集的限制,如幻觉和不准确的描述,ShareGPT4V利用GPT-4V生成了120万高质量图像-文本对,可以超过LaVA系列。同样构建与GPT-4V,LVIS-INSTRUCT4V帮助LaVA-1.5在各种VLM基准测试上获得显著改进。
Model Compression for LLMs
大型语言模型(LLMs)在自然语言处理领域带来了范式转变,然而它们巨大的大小和计算要求对实际部署提出了巨大的挑战,特别是在资源受限的环境中。这些模型的尺寸通常导致高内存使用和慢的处理速度。此外,这些模型的训练和运行所需的能源也引发了可持续性方面的担忧。
随着LLMs继续增长的大小和复杂性,这些挑战变得更加紧迫。为了解决这些问题,模型压缩作为一个关键的研究领域出现,旨在在不显著降低性能的情况下减少模型的尺寸和计算需求。这些技术包括但不局限于模型剪枝,量化,知识蒸馏和低秩分解。
此外,LLM部署工具也经历了繁荣,体现在工业框架如TensorRT-LLM,LMDeploy和llama.cpp的开发,用于解决在各种环境中部署的困难。
VLM Benchmarks
为了系统而全面地评估不同的VLMs,这是非常必要的。为此,POPE提供了评估VLMs中幻觉的基准,将评估转换为二分类任务,要求VLMs回答目标是否存在。
相比之下,GQA主要关注VLMs在现实世界推理、场景理解和组合性问题回答方面的能力。TextVQA包括与图像中的文本相关的问题,评估模型的OCR和推理能力。ScienceQA包括覆盖科学主题的多模态多项选择题,例如自然科学、社会科学和语言科学,这需要VLMs将常识整合到推理中。
MME测量VLMs的感知和认知能力,它包括总共14个从粗粒度到细粒度的子任务。MMBench是一个精心构建的多模态数据集,涵盖了20个细粒度的技能,并采用循环评估策略,其中包含Chat-GPT。
Embodied AI
作者的工作与具身人工智能密切相关。作为人工通用智能的一个核心目标,具身人工智能旨在构建以自我为中心的智能系统,能够通过感知、推理和规划能力与周围环境进行交互。最近,新兴的大型视觉语言模型允许具身人工智能代理以端到端的方式解决相关的任务,如具身问答和视觉语言导航。
3 MobileVLM
Overall Architectural Design
在实现资源受限的边缘设备高效视觉感知和推理的主要目标下,作者设计了MobileVLM的整体架构,如图1所示。它包含三个组件:
- 视觉编码器;
- 为边缘设备定制的LLM(MobileLLaMA);
- 一个称为“轻量级下采样投影器”(简称LDP)的效率极高的投影器,该投影器将视觉和文本空间对齐。
采用图像作为输入,视觉编码器提取图像的视觉表示,其中表示图像块的数量,表示视觉表示的隐层大小。为了解决由于图像Token长度增加而产生的效率问题,作者设计了一个轻量级的投影器进行视觉特征压缩和视觉-文本模态对齐。它将转换为适当的输入维数的语言模型中的词嵌入空间。
因此,作者得到图像Token和文本Token,其中表示文本Token的数量,表示词嵌入空间的隐层大小。观察到当前MLLMs设计中LLM占据最大量的计算和内存消耗,作者设计了一系列推理友好的LLM,在移动应用中具有速度优势。它以自回归方式预测条件在多模态输入上的响应,其中表示输出Token的长度。这个过程可以表示为,
$p(mathbf{Y}_{a}|mathbf{H}_{v},mathbf{H}_{q})=prod_{i=1}^{L}p(y_{i}|mathbf{ H}_{v},mathbf{H}_{q},y_{<i}). tag{2}$<=”” p=””>
Visual Encoder
在第5.1节中进行实证分析后,使用预训练的CLIP ViT-L/14作为视觉编码器,该模型的分辨率为336336。视觉Transformer(ViT)将图像分割成大小相等的patch,对每个patch应用线性嵌入,并在输入位置编码之前将结果向量序列整合到一个典型的Transformer编码器中。通常,分类Token会被附加到这个序列以进行后续的分类任务。
MobileLLaMA
对于语言模型,将LLaMA进行降采样,以便于即插即用部署,即作者的模型可以无缝支持几乎所有流行的推理框架。此外,在边缘设备上评估了模型的延迟,以指导模型设计。神经架构搜索可能是一个更好的选择,但目前作者将其保留为未来工作。作者的架构详细设置如表2所示。
具体来说,作者使用LaMA2中的句子分词Token器,具有32000个词汇量的模型,并从头训练嵌入。这有利于未来的再训练,而无需进一步的痛苦。预训练阶段使用的上下文长度为所有模型2k,因为资源有限。然而,推理时的上下文窗口可以进一步扩展到8k,如[17]所示。其他组件的详细设置如下。
作者应用RoPE 来注入位置信息。应用预规范化来稳定训练。具体来说,使用RMSNorm代替层规范化,并将MLP扩展比例8/3代替4。还使用SwiGLU激活函数代替GELU,如。
Efficient Projector
视觉编码器与语言模型之间的投影器在对齐多模态特征方面至关重要。有两种现有的范式:Q-Former和MLP投影。Q-Former明确控制每个 Query 中的视觉Token数量,以强制提取最相关的视觉信息。然而,它不可避免地丢失Token的空间位置信息,并受到慢收敛的困扰。此外,在边缘设备上的推理效率低下。相比之下,MLP保留空间信息,但通常包含无用的Token,如背景。
对于大小为,具有大小的 Patch 大小的图像,视觉Token的数量为,这极大地降低了整体推理速度。受PEG启发,作者可以利用卷积来增强位置信息并鼓励视觉编码器中的局部交互。具体而言,作者探索基于深度卷积(PEG的最简单形式)的移动友好操作,这是高效且受到各种边缘设备支持的。
为了保持空间信息并最小化计算成本,作者使用步长为2的卷积,这减少了75%的视觉Token。这种设计显著提高了整体推理速度。然而,作者的实验结果表明,仅对Token进行降采样会严重降低在下游任务上的性能,如OCR。为了减轻这种影响,作者使用比单PEG更强大的网络而不是单个网络。如图2所示,这个高效的投影器网络只包含不到20M的参数,并且比视觉编码器快约81倍。
作者使用Layer Normalization代替Batch Normalization,以使训练稳定,不受batch大小的影响。由于投影器已经非常轻量级,因此作者没有采用最近移动设备重参化设计。
形式上,LDP(表示为)以视觉嵌入为输入,并输出高效提取和对齐的视觉Token。
4 Experiment
Training
整个可复现的训练过程分为三个阶段。首先,作者在仅包含文本的数据集RedPajama v1上预训练LLM基础模型。其次,作者在第三方平台上的ChatGPT与人类之间的多轮对话数据集上进行监督微调(SFT),如Vicuna所述。最后,作者使用多模态数据集训练作者的视觉大型模型。
语言模型预训练。 由于作者的目标是训练可部署的推理模型,作者并不严格遵循从扩展定律中得到的模型容量和Token的效率组合。为了使作者的工作可复现,所有模型仅在RedPajama v1数据集中训练1.3T Token。这使得通过受控实验进行进一步研究变得有利。作者采用与[115]中不同的数据集采样比例,如表12所示(见附录)。作者采用全局批处理大小为5,242,880。
峰值学习率设置为3 10,并按照余弦策略衰减到3 10。作者用2000次迭代进行预热。作者使用AdamW优化器[82],其中,,权重衰减正则化值0.1。梯度截断阈值设置为1.0。作者采用Pytorch lightning框架,具有DeepSpeed后端。
具体而言,作者使用ZERO 1和梯度累积,以在配备8个NVIDIA Tesla A100 GPU的20个节点上实现1.4B模型的训练速度为每秒18800个 Token ,以及2.7B模型的训练速度为每秒8500个 Token 。
此外,作者还倾向于使用Flash Attention V2来缓解I/O瓶颈,以实现更快的训练。作者随机打乱数据,用固定的种子打乱顺序,因为训练过程可能会间歇性中断,需要重新开始。作者首先将原始数据Token为ID,并将其分块保存为许多桶文件。然后,作者使用内存映射来提供所需的I/O速度。
此外,作者将不同的句子打包在一起,其中插入一个EOSToken来设置不同的句子。由于资源有限,作者没有尝试InternLM的设计,这可能通过禁用这样的打包进一步改善模型性能。随着消耗的 Token 增加,整体训练损失减小,如图3所示。
在语言模型上的SFT。正如LaMA-2所澄清的,从其供应商的标注努力中获取更少的高质量示例可以显著提高结果。因此,作者受到启发,使用监督学习在高质量数据集上微调作者的MobileLLaMA。Vicuna在ShareGPT中使用用户共享的对话进行LLaMA的微调,ShareGPT被广泛用作多模态模型构建的语言模块,但其训练数据集并未发布。作者使用第三方平台上的多轮人机对话数据集进行清理和格式标准化,并对其进行质量改进,如图14所示(见附录)。
SFT数据按照Vicuna的格式组织,每个样本包括多个用户提示和ChatGPT的回答。如图14所示,作者使用一个特殊的Token来分离助手答案和下一轮用户提示。在训练细节方面,作者使用余弦学习率时间表,没有权重衰减,全局批处理大小为128,序列长度为2048个 Token 。作者使用自回归目标,并仅对答案Token进行反向传播。
为了在下游任务中获得更好的性能,进行了超参数选择的实验。对MobileLLaMA 1.4B进行3个epoch的微调,学习率为,对MobileLLaMA 2.7B进行2个epoch的微调,学习率为。如图4所示,随着迭代次数的增加,训练损失减小。如图5所示,在下游任务上的实证性能表明,高质量SFT数据对于将LLMs与对话式指令对齐至关重要。
VL模型训练。 类似于[126, 76],整个训练过程包括两个步骤:预训练和指令调优。
如图2所示。在第一步中,作者冻结视觉编码器并仅专注于训练高效的项目器。然后,作者微调项目器和LLM,通过语言建模损失函数来增强视觉理解和表达能力,从而通过微调语言模型来改进。遵循Vicuna的参数,在过滤后的CC-595K子集上预训练作者的模型1个周期,学习率,批处理大小256。作者在LaVA-Instruct-158K数据集上微调1个周期,学习率,批处理大小128。
作者的训练数据集示例如图5(附录C)所示。作者选择AdamW优化器,无权重衰减,余弦学习率,预热比为3%。训练需要5小时,配备8个NVIDIA Tesla A100 GPU的移动VLM 1.7B,需要8小时,配备移动VLM 3B。
Evaluation of MobileLLaMA
在表3中,作者对作者的模型在两个标准自然语言基准测试上进行了广泛评估,分别是语言理解和常识推理。作者使用Language Model Evaluation Harness [42]工具进行前者评估。
实验结果显示,MobileLLaMA 1.4B在语言理解和常识推理方面与最近的开放源模型如TinyLLaMA 1.1B,Galactica 1.3B,OPT 1.3B和Pythia 1.4B相当。
值得注意的是,MobileLLaMA 1.4B在2TToken的数据上超过了TinyLLaMA 1.1B,这是训练在2倍Token数据上的模型。在3B Level ,作者的MobileLLaMA 2.7B也展示了与INCITE 3B(V1)和OpenLLaMA 3B(V1)竞争的性能,而MobileLLaMA 2.7B在Snapdragon 888 CPU上的速度比OpenLLaMA 3B快约40%,如表5所示。
对于常识推理,在五个流行的基准测试上报告了零样本准确率,即ARC,ARC,BoolQ ,Winogrande和TruthfulQA。MobileLLaMA 在这些基准测试上展示了强大的推理能力。
值得注意的是,MobileLLaMA 1.4B和2.7B在Winogrande上都达到了1B和3B水平的最高性能。这表明作者的模型具有强大的常识能力,而不是依赖数据集中的系统偏见进行狡猾的依赖。
此外,作者在几个语言理解任务上评估了作者的模型,包括PIQA,HellaSwag和MMLU。在PIQA和HellaSwag上报告了零样本准确率,并在MMLU上报告了5-shot性能。可以看到,MobileLLaMA在几乎所有基准测试上都超过了其他模型。这种优越的语言理解能力使作者的模型更适合于下游任务,特别是用于指令调优,即兴学习等。
Comparison with SOTA VLMs
在GQA,ScienceQA,TextVQA,POPE和MME上评估了多模态性能,并利用MMBench进行了全面的比较。
如表4所示,尽管MobileVLM的参数减少且训练数据有限,但仍取得了竞争力的性能。在某些实例中,它甚至获得了比以前最先进的跨模态视觉语言模型更好的指标。
特别是在GQA,POPE和MMBench的评估基准上,MobileVLM与7B或更大的VLMs实现了平局或优越性,这证明了它在图像内容感知,空间和关系推理以及属性理解方面的卓越能力。然而,由于缺乏大型训练数据集,如代码和教科书,导致在像ScienceQA和MME这样的任务上的性能明显差异。
尽管如此,通过在TextVQA上结合对细微图像内容的精确识别,模型在专业领域的熟练程度仍存在提升的潜力。作者在附录C中提供了可视化示例。
MobileVLM with LoRA
LoRA可以在可训练参数较少的模型上实现与或优于完全微调的LLMs。在MobileVLM上实证地探究了这一做法,以验证其多模态性能。具体而言,在VLM视觉指令调优阶段,冻结所有LLM参数,除了LoRA矩阵。更新后的参数分别为MobileLLaMA 1.4B和MobileLLaMA 2.7B的8.87%和7.41%。对于LoRA配置,作者设置为128,为256。结果如表4所示。可以看到,具有LoRA的MobileVLM在6个基准测试上实现了与全微调相媲美的性能,这与一致。
Latency Measurement on Mobile Devices
作者在Realme GT手机和NVIDIA Jetson AGX Orin平台上评估了MobileLLaMA和MobileVLM的推理延迟。手机配备了Snapdragon 888 SoC和8GB RAM,提供了26 TOPS的计算能力。Orin配备了32GB的内存,提供了惊人的275 TOPS。它运行在CUDA版本11.4上,支持最新的并行计算技术以提高性能。利用llama.cpp作为两个设备的推理框架。
MobileLLaMA 对于表5中的语言模型(LMs),输入提示固定为“Building a website can be done in 10 simple steps:nStep 1:”,输出Token数量设置为400。LMs被量化为4位和8位,量化的模式分别为llama.cpp中的q4_k_s和q8_0。
根据表5中在Snapdragon 888 SoC上的测量,作者的MobileLLaMA 2.7B在相同量化精度下显著优于OpenLLaMA 3B。值得注意的是,使用三分之一的内存消耗和一半的加载时间,MobileLLaMA 2.7B实现了OpenLLaMA 3B的两倍推理速度。对于较小的模型,尽管量化后的MobileLLaMA 1.4B比TinyLLaMA 1B大23%,但在Eval速度和总推理时间方面,量化后的MobileLLaMA 1.4B分别只比TinyLLaMA 1B慢11%,这表明作者的模型得益于更好的架构设计。在Orin平台上,作者同样可以得出相同的结论,即MobileLLaMA在类似参数规模的开源语言模型中具有相当竞争力。
MobileVLM 由于llama.cpp的限制,VLMs被分为视觉编码器和语言模型,它们在推理阶段分别加载。对于推理精度,语言模型被量化到4位,而视觉编码器和项目器保持原始精度。VLMs的提示由文本提示和视觉提示组成。为了进行公平比较,LaVA-v1.5和MobileVLMs使用与视觉提示相同分辨率的图像,并使用“What is in the picture?”作为文本提示。同时,他们的视觉编码器的 Patch 大小固定为14。
对于LaVA-v1.5,语言模型的输入Token数(称为)由576个视觉Token和一些文本Token组成。对于MobileVLMs,由于项目器的设计,视觉Token的数量已降至144,如图3.4所示。对于所有测试的VLMs,输出Token数(称为)设置为256。VLMs的总推理时间具体计算如下:
其中,、和分别以 Token /秒计。表示处理提示消息并将其划分为Token所需的时间。表示语言模型处理处理后的Token所需的时间。表示只有在语言模型开始生成Token时才需要的时间。和分别表示加载模型和单个推理所需的时间,其他开销可以忽略不计。
表6显示了各种VLMs的推理延迟比较。可以发现,由于额外的视觉Token增加了时间消耗,MobileVLM-336的Eval比表5中的MobileLLaMA稍微慢一些。
最重要的是,作者惊讶地发现,装备有MobileLLaMa 2.7B和MobileLLaMa 1.4B的MobileVLM在Snapdragon SoC和Jetson Orin上始终优于LaVA-v1.5。值得注意的是,尽管MobileVLM(MobileLLaMa 1.4B)在Orin上的Eval比LaVA-v1.5(OpenLLaMA 1B)慢,但它实现了更快的Total推理时间。主要原因是MobileVLM的Tks_{in}只有LaVA-v1.5的四分之一,而其他变量可以相比。这正好证明了减少输入视觉Token数量的有效投影的重要性。
5 Ablation Study
Ablation on Vision Backbones
在表7中,作者比较了不同模型规模和不同视觉Token数量下的多模态性能。所有实验都使用CLIP ViT作为视觉编码器。作者配置了不同的模型规模, Patch 大小和视觉语言项目器的类型。
模型规模的影响。 随着模型规模的增加,在相同的投影器[75]下,6个基准测试上的多模态性能呈现逐渐增加的趋势。然而,可以观察到,视觉模型规模的扩大在一定程度的训练数据下,带来的收益可能会逐渐饱和。
视觉Token数量的影响。 与第4-5行相比,提出的LDP模块将视觉Token数量从576减少到144( 75%),并最终实现了与基准相当或更好的性能。这表明,在LDP模块的有效作用下,视觉Token质量可以进一步提高。
预训练范式的 impact。 此外,作者在表8中展示了MobileLLaMA 1.4B在不同的视觉 Backbone 预训练范式下的性能。根据标注和预训练的成本,作者将这些范式大致分类为四类。
结果表明,随着预训练成本的增加,MobileVLM的性能逐渐提高。使用监督图像-文本对齐预训练视觉编码器的性能最佳。通过比较Swin-Base-S384-GDino和ViT-B-P14-S224,作者发现基于地面检测的图像预训练模型与CLIP预训练模型在GQA,SQA,POPE和MME上的性能相当。这一结果表明,使用更多的视觉Token或更多的训练数据进行图像 Level 的对齐可能比物体 Level 的对齐获得更好的性能。
此外,预训练模型的更好的ImageNet性能(例如,Swin ViT)通常对应于更强的视觉特征提取能力,MobileVLM也会因此获得一定的性能提升。
Abaltion on VL Projectors
受启发于特征交互和Token交互都有益的事实,作者使用深度卷积用于前者,使用点积用于后者。
表9显示了各种VL项目器的性能。表9中的第1行是LaVA [78]中使用的模块,其中仅通过两个线性层转换特征空间。第2行在每个点积之前添加了一个DW(深度卷积),用于Token交互,并实现了2倍下采样,步长为2。作者注意到性能开始明显下降。
基于144个Token的设置,在项目器前面添加两个前端点积层可以带来更多特征 Level 的交互,这弥补了Token减少造成的性能损失。第4和5行表明添加更多参数无法实现预期的收益。第4和6行表明在项目器的末端Token下采样具有积极影响。
Visual Resolution and Token Numbers
由于视觉Token数量直接影响整个多模态模型的推理速度,作者比较了两种设计:降低输入分辨率(RIR)和使用轻量级下采样项目器(LDP)。在不失一般性的情况下,对于一个大小为, Patch 大小为的图像,前者策略生成了个Token。而对于后者,它使用降采样比例为2,使用进行LDP,并使用进行RIR,以保持总Token数量为144。表11的结果验证了所提出LDP的有效性。
Quantitative Analysis on SFT
Vicuna,在LaMA上进行微调,已在大型多模态模型中广泛使用。进一步探讨了如何影响作者的语言模型在下游任务中的性能。
表10中比较了两种常见的微调范式Alpaca和Vicuna 。作者发现SQA,VQA,MME和MMBench的分数都可以显著提高。这表明使用Vicuna对话模式的LaMA数据进行Vicuna对话模式[132]的微调,最终实现了最佳性能。为了更好地将SFT的提示格式与下游任务的训练相结合,作者在MobileVLM上拆除了对话模式,发现的性能最好。
6 Conclusion
总之,作者提出MobileVLM,这是一组专为移动和物联网设备设计的有效和高功率移动视觉语言模型。在制作过程中,作者更新了语言模型和视觉投影模块。进行了大量实验来选择合适的视觉 Backbone ,设计高效的投影器,并通过训练方案如语言模型SFT,两阶段训练策略(预训练和指令调优)以及LoRA微调来增强模型容量。性能在主流VLM基准测试上进行了严格评估。
MobileVLMs在典型的移动和物联网设备上也展现了前所未有的速度。作者认为MobileVLM将为广泛应用(如部署在移动设备上的多模态助手或自动驾驶汽车上的更广泛的身临其境AI机器人)开辟新的可能性。
Appendix A Dataset
Dataset for MobileLLaMA
表12展示了MobileLLaMA训练集的采样策略。
Appendix B SFT prompt and response example
作者在表14中提出了MobileLLaMA SFT的提示模板。
Appendix C VLM demos
图6和图7展示了MobileVLM在各个基准测试上的性能,包括属性理解(GQA左)、空间和关系推理(GQA右,MMBench)、社会科学(ScienceQA左)、自然科学(ScienceQA右)、OCR(TextVQA)、目标识别(POPE)、词知识(MME右)等。
参考
[1]. MobileVLM: A Fast, Strong and Open Vision Language Assistant for Mobile Devices