论文链接:
亮点直击
在多模态研究领域,许多研究利用大量图文对进行模态对齐学习,将大型语言模型(LLMs)转变为多模态LLMs,并在各种视觉语言任务中表现出色。现有的方法主要分为两类:基于自注意力的方法和基于交叉注意力的方法。虽然基于自注意力的方法由于其简单的MLP架构具有较高的数据效率,但由于将视觉和文本token连接为LLM的输入,通常在计算效率上较低。相反,基于交叉注意力的方法虽然由于额外的可学习参数而数据效率较低,但通过避免LLM的长序列输入表现出较高的计算效率。为解决这些权衡,本文引入了 数据高效和计算高效的多模态大型语言模型(EE-MLLM) 。在不引入额外模块或可学习参数的情况下,EE-MLLM实现了数据和计算效率。具体来说,本文将MLLM中的原始自注意力机制修改为复合注意力机制。该机制有两个关键特征:1)消除视觉token内部自注意力的计算开销以实现计算效率,2)重用LLM每一层的权重以促进视觉和语言之间的有效模态对齐,实现数据效率。实验结果表明,EE-MLLM在一系列基准测试中表现出色,包括诸如MMBench和SeedBench等通用数据集,以及如TextVQA和DocVQA等细粒度任务。
方法
模型结构
EE-MLLM 包括一个视觉编码器、一个作为投影器的两层 MLP,以及带有复合解码层的大型语言模型(LLM)。本文提出了一种复合注意力机制,并为 EE-MLLM 设计了一个复合解码层,以实现数据效率和计算效率。复合解码层由一个对齐器和一个复合注意力模块组成。
复合注意力模块。 原始的自注意力机制包括视觉token之间的自注意力、文本token之间的自注意力,以及文本token和视觉token之间的交叉注意力。本文观察到视觉token之间的自注意力是多余的,原因有两个:
这可以被视为一个没有注意力机制的解码器块。
计算开销分析
实验
实验细节
模型配置。 本文采用 Vicuna-7b-v1.5作为本文的 LLM,并使用 SigLIP作为视觉编码器。具体来说,SigLIP 从 Idefics2 初始化,该模型支持动态分辨率,最大可达980X980 。投影器由一个两层的 MLP 组成,与 LLaVA 相同。
评估基准
通用基准
细粒度基准
与最先进模型的比较
通用基准测试。 在下表2中,本文将EE-MLLM与各种最先进的MLLM 在八个通用基准上进行了比较。这些基准测试评估了MLLM的综合能力,包括理解和感知,以及幻觉的严重程度。这些因素共同反映了MLLM在现实场景中的泛化能力和适用性。EE-MLLM在通用基准测试中与最先进的MLLM表现相当。具体来说,EE-MLLM在MMBench中获得了70.4的得分,在MME中获得了1528.1的得分,这些分数明显高于同样支持高分辨率图像输入的LLaVA-v1.6。这表明EE-MLLM具备综合的感知和推理能力。此外,EE-MLLM在CCBench和SeedBench上也取得了可喜的成绩。
细粒度基准测试。 在下表3中,本文在七个细粒度基准上进行了评估。这些基准测试要求MLLM具备出色的视觉感知能力,因为它们需要探索图像中的细粒度信息来回答问题。在传统的VQA基准测试中,例如TextVQA、ChartQA和DocVQA,EE-MLLM表现非常出色,相较于同样支持高分辨率的LLaVA-v1.6,在TextVQA上高出4.6分,在ChartQA上高出13.0分。在专门设计用于评估MLLM OCR能力的OCRBench中,EE-MLLM比LLaVA-v1.6高出4.2分。这些结果表明,尽管EE-MLLM显著减少了与视觉token相关的计算开销,但它仍然有效地保持了模型的细粒度能力。
推理速度比较
尽管EE-MLLM在FLOPs方面表现出了显著的减少,但在实际场景中,通常会在部署时采用KVCache和Batch Inference等先进技术。因此,有必要在这些技术下进行推理速度的比较。本文在单个NVIDIA H800上进行了推理速度的比较。输入图像的分辨率设置为980X980,生成的tokens数量从2到256不等。本文在下图4中展示了EE-MLLM与LLaVA的速度比。本文的研究发现,当生成8个tokens时,EE-MLLM的推理速度是LLaVA的三倍。然而,随着生成tokens数量的增加,速度比下降。当生成64个tokens时,EE-MLLM的推理速度是LLaVA的1.6倍。出现这种现象的原因在于本文的EE-MLLM主要在预填充阶段减少了计算成本,该阶段计算视觉tokens的KV缓存。第一个token的生成比基于自注意力的方法(如LLaVA)更快。然而,推理速度的优势在第一个token之后减小。具体来说,对于两个输入图像,EE-MLLM的推理速度几乎是LLaVA的四倍。这清楚地表明,EE-MLLM在多图像输入场景中(包括交错的图像-文本对话和多模态上下文学习)显著更高效。
EE-MLLM 的 GPU 内存开销
本文评估了EE-MLLM在预训练和微调阶段的GPU内存开销。同样,本文在分辨率为336X336时,将EE-MLLM与LLaVA进行了比较。本文在8×H800上进行实验,预训练的全局批量大小为256,微调时为128。
内存使用情况的比较详见下表5。在预训练阶段,EE-MLLM的内存使用显著较低,为32G,而LLaVA的内存使用为75G。在微调阶段,由于主要内存使用集中在可训练的LLM上,内存使用优势变得不太明显,EE-MLLM消耗66G,而LLaVA-v1.6使用69G。
消融研究
实施细节
根据LLaVA-v1.5,本文采用Vicuna-7b-v1.5 作为本文的基础LLM。训练数据与LLaVA-v1.5一致,包括预训练数据和监督微调数据。
与LLaVA的比较
在下表4中,本文在相同的设置下比较了EE-MLLM和LLaVA在一般和细粒度基准测试中的表现。对于分辨率为336X336的情况,本文使用CLIP-ViT-L-14作为视觉编码器,确保与LLaVA-v1.5完全对齐。EE-MLLM在一般基准测试中表现与LLaVA相当。在细粒度基准测试中,EE-MLLM在分辨率为336X336时在AI2D和ChartQA上表现出色,但在OCRBench和TextVQA上略逊于LLaVA。对于336X336分辨率的平均得分为47.1,是LLaVA的48.1的98%。对于分辨率为672X672的情况,本文使用SigLIP作为视觉编码器。如表4所示,EE-MLLM在AI2D和TextVQA上获得了相当的结果,平均得分保持在LLaVA性能的98%。
对齐器的消融实验
在下表6中,本文评估了具有不同映射权重的对齐器变体。本文使用从Idefics2(Laurençon等人,2024)初始化的SigLIP在不同的输入分辨率下进行实验。本文移除了对齐器中的不同权重,并在分辨率为336X336下训练模型。对勾token表示在对齐器中使用的权重。
本文有三个发现:1)如第一行所示,移除整个对齐器会显著降低多个基准测试的性能。具体而言,TextVQA的得分从46.1降至44.8,五个基准测试的平均得分从34.5降至33.5。这个结果突显了对齐器在将视觉特征与LLM特征空间对齐方面的有效性,使文本tokens能够通过因果交叉注意模块捕捉关键的视觉信息并解决问题。2)当消融对齐器中的个别权重时,本文发现保持结构更为重要。缺少V或O对低分辨率输入的影响相对较小,甚至在缺少V时表现略有提升。然而,当缺少FFN时,对齐器的结构不再类似于transformer块,导致显著的性能损失。3)本文直接将输入图像分辨率提高到672X672,而无需额外训练,并比较具有不同对齐器类型的变体。本文观察到,在高分辨率输入下,缺少V或O权重会导致细粒度基准测试(如TextVQA、ChartQA和DocVQA)出现显著下降。这个发现表明在应用于高分辨率图像时,完整的对齐器是多么重要。
可视化
本文从BLINK 和RealWorldQA 中采样了四个示例,以评估下图3中架构变化的影响。第一个示例展示了EE-MLLM能够感知图像中的细粒度视觉上下文,例如交通信号灯的颜色。第二和第三个示例强调了EE-MLLM理解物体位置的能力。具体而言,EE-MLLM可以准确识别吉他相对于桌子的位置以及狗的位置。最后一个示例揭示了EE-MLLM能够区分视觉内容中的细微差别。
结论
在本文中,本文重新审视了多模态大语言模型的先前研究,并将其分为两类:基于自注意力的方法和基于交叉注意力的方法。前者数据效率高但计算效率低,而后者计算效率高但数据效率低。为了在保持计算效率的同时确保数据效率,本文为EE-MLLM提出了复合注意力机制,该机制结合了复合注意力模块以提高计算效率,以及对齐器以提高数据效率。本文在一般基准和细粒度基准上进行了全面实验,发现EE-MLLM在大多数基准上实现了最先进的性能。本文还评估了EE-MLLM在实际场景中的推理速度,结果表明EE-MLLM在推理方面具有显著优势。
原文链接: