备注好友: 方向-学校/公司-姓名/昵称
【AIGC 先锋科技】交流群
尽管在多模态大语言模型(MLLMs)方面取得了显著的进步,但它们的高计算成本仍然是实际应用的障碍。受到自然语言处理中深度混合(MoDs)的启发,作者从“激活 Token ”的角度解决这个问题。
作者的关键洞察是,如果对于该层的计算,大多数 Token 都是冗余的,那么可以通过MoD层直接跳过。
然而,直接将MLLMs的密集层转换为MoD层会导致显著的性能降低。
为了解决这个问题,作者提出了一种创新的MoD适应策略,称为-MoD。在-MoD中,作者提出了一种新的度量方法,指导在MLLM中部署MoD,即注意力图的排名(ARank)。通过ARank,作者可以有效地确定哪个层是冗余的,应该用MoD层替换。
基于ARank,作者进一步提出两种新的设计,以在保持性能的同时最大化MLLM的计算稀疏性,即共享视觉语言路由器( shared vision-language router )和 Mask 路由学习( masked routing learning )。
通过这些设计,可以有效地将MLLM的超过90%的密集层转换为MoD层。为了验证作者的方法,作者将它应用于三个流行的MLLM,并在9个基准数据集上进行广泛实验。
实验结果不仅验证了-MoD对现有MLLM的显著效率优势,而且还确认了它对各种MLLM的泛化能力。例如,尽管性能略有下降,即-1.5%,但-MoD可以将LaVA-HR的训练和推理时间分别降低31.0%和53.2%。
1 Introduction
近年来,自然语言处理(NLP)领域大型语言模型(LLMs)取得了巨大成功,这吸引了越来越多的关注,以将其扩展到视觉语言(VL)任务。尽管取得了进步,但最近的多模态大型语言模型(MLLMs)往往受到其昂贵的计算成本的批评。例如,现有 MLLMs 的推理速度仍远低于实际需求,例如每秒4.7个样本。受NLP进步的推动,最近的技术进步采用了混合专家(MoEs)来减少MLLMs的“激活参数”,从而在效率和性能之间实现了权衡。
针对MoEs,作者从"激活 Token "的角度解决MLLMs的效率 Bottleneck 。如图1(a)所示,大量的 Token 在计算中并不重要,例如视觉背景和介词词组。然而,现有的MoEs仍然将相同的专家分配给所有输入 Token ,导致冗余计算成本。解决这个问题的一个有前途的解决方案是最近在NLP中提出的混合深度(MoDs)(Raposo等人,2024),它为每个 Token 配备一个路由器来确定是否计算一个模块。
然而,最近的MOL(Raposo等人,2024)通常需要从头训练LLMs,而在MOL上的应用仍然有待进一步探索。
在本文中,作者关注于将 MoD 有效适应到现有 MLLM 中的问题。作者的目标是最大化 MLLM 的计算稀疏性,同时保持竞争力的性能。然而,将所有密集层 MLLM 直接转换为 MoD 层会导致显著的性能下降,例如在 TextVQA(Singh 等,2019)上的 LLaVA-HR 的 -33.3%。实际上,作者观察到这种问题主要是由两个方面引起的。首先,MOD 的部署缺乏实际指导来衡量层冗余度,从而削弱了必要的密集层。如图1(a)所示,注意力模式在层之间变化显著,一些层显示较少的冗余性。此外,MLLM 的设置 与 LLM 不同,使得直接适应 MoD 不是最优的。
为了克服这些限制,作者首先提出了一种新的度量方法,称为“注意力图的秩”(ARank),以指导在MLLM中部署MoDs。作者的关键洞察是,低秩注意力图表示计算所需的 Token 数量较少。如图1(a)所示,大多数 Token ( Layer-4)都被分配了较小的注意力权重,对最终输出贡献很小。这为作者提供了宝贵的线索,在ARank的指导下用MoD替换冗余层。在实际中,计算ARank既高效又灵活。经验证明,尽管样本变化,平均ARank始终保持相似。因此,随机取一小部分数据就可以准确估计ARanks。
基于ARank,作者提出了一种创新性的MLLM(多语言语言模型)调优策略,称为γ-MoD。具体来说,γ-MoD是一种即插即用的方法,可以通过指令调优无缝集成到现有的MLLM中。在γ-MoD中,作者采用了两种新设计来最大限度地提高其对MLLM的效益,即共享视觉语言路由器和遮挡路由学习。共享视觉语言路由器在多模态序列上执行路由,并采用权重共享策略以促进优化。然后,作者引入了遮挡路由学习,以在训练过程中防止关键 Token (即指令 Token )被跳过。凭借这些设计,可以将有超过90%的稠密层转换为MoD层,而几乎不牺牲性能,从而导致比基于原生的MoD-based LLM(Raposo等人,2024年)更大的计算稀疏性。
为了验证-MoD的有效性,作者将它应用到了两种流行的MLLM上,并在9个视觉语言基准测试上进行了广泛的实验。实验结果表明,-MoD显著提高了现有MLLM的训练和推理效率,同时保持了它们的性能竞争力。例如,-MoD将LaVA-HR(Luo等人,2024年)的51.6% Flops、31%训练时间和53.2%推理时间减少了,但平均性能下降仅为-1.5%。更重要的是,-MoD在不同的MLLM结构和参数大小上都表现出了出色的泛化能力。
总的来说,本文的贡献可以总结为三点:
- 作者提出了一种名为-MoD的新颖混合深度(MoD)框架,用于稀疏计算现有MLLM,该框架可以将MLLM中的大多数密集层无缝转换为稀疏MoD层。
- 作者提出了一种创新的度量方法来衡量层冗余性,即注意力图的秩(ARank)。通过ARank,作者可以最好地确定哪个密集层应该转换为MoD层。
- 作者仔细探索了在现有MLLM中γ-MoD的设计,包括共享视觉语言路由和 Mask 路由学习,这可以实现高达51.6%的计算稀疏度,同时牺牲少许性能。大量实验也证实了γ-MoD的泛化能力。
2 Related Work
Multimodal Large Language Models
大型语言模型(LLMs)在各种自然语言处理任务中证明了其强大的能力。因此,许多工作致力于将LLMs扩展到多模态大型语言模型(MLLMs)。其中,最代表性的工作是LLaVA,它使用一个轻量级项目将视觉编码器与LLM连接起来。这个简单的框架已经成为社区的事实标准,为一系列MLLMs提供支持,如Mono-InternVL、Mini-Gemini 和IntemVL。
最近,研究行人将目标转向了高分辨率MLLMs。例如,LLaVA-NexT(Liu等人,2024年)和InternVL-1.5 采用动态图像切片策略进行高分辨率适应。LLaVA-HR进一步提出了一种双分支结构来降低高分辨率MLLMs的成本。然而,尽管现有高分辨率MLLMs会产生更长的输入 Token ,导致计算成本过高。因此,本文提出的γ-MoD可以大大克服现有 MLLMs 的效率 Bottleneck ,这对它们的实际应用具有重要意义。
Sparse Computation for LLMs
现有语言模型(LLMs)的参数规模正在迅速增长,这导致了日益增长的计算成本。因此,对LLM稀疏计算的关注日益增加。具体而言,混合专家(MoEs)是社区中最流行的技术,它动态地激活每个 Token 的一部分专家网络,从而在能力和效率之间实现权衡。例如,Mixtra-8x7B 和DeepSeeKMoE(Dai等人,2024年)用MoE层替代 Transformer 块的FFN层,通过路由器动态处理输入 Token 的前K专家。与MoE不同,Raposo等人提出了混合深度(MoDs)来动态分配每个 Token 的计算。与MoE相比,MoD的主要原则是减少“激活 Token ”而不是“激活参数”。这种范式在处理LLM的稀疏计算方面具有巨大的潜力,但其在MLLM上的潜力仍然有待探索。在现有文献中,大多数现有工作旨在将MoEs应用于MLLMs。例如,MoE-LLaVA(Lin等人,2024年)提出了一种将密集MLLM转换为混合专家结构的新方法。然而,这些方法通常需要额外的训练成本来实现适应。与这些工作不同,作者首次探索了MoDs在MLLMs上的应用,可以无缝实现现有MLLMs的稀疏计算。
3 Preliminaries
混合专家网络(Mixture of Experts, MoE)。 特别是,MoE的主要原则是减少密集模型的"激活参数"。现有的基于MoE的预训练语言模型(Dai等人,2024年;Liu等人,2024年;Lin等人,2024年;Jiang等人,2024年)和模型压缩语言模型(Luo等人,2024年;Chen等人,2024年;Liu等人,2024年)在其层中通常包含多个FFN模块,也称为"专家"。在训练和推理过程中,只有少数专家被激活参与计算,从而保留性能和效率之间的权衡。给定输入特征,MoE机制可以定义为:
在这里, 表示专家层,即 FFN。 是激活专家的数量, 是对应的路由函数。在实际中,根据路由分数选择前 个专家,其中 远小于专家总数 。
混合深度(Mixture of Depths)
与MoEs不同,MoDs的目标是通过减少"激活 Token (activated tokens)"来提高模型效率。与MoEs相比,MoDs的路由机制在输入 Token 上运行,大多数 Token 将直接跳过MLLMs的密集层。因此,MoDs可以写作
在论文中, 表示 中的 Token 向量, 是一个路由阈值。如方程 2 所示,非活动 Token 将直接跳过 层以节省计算成本。
讨论 在现有的MLLM(Lin等人,2024年)中,MoE通常用于有效扩展模型大小,但其计算过程并未直接减少。相比之下,MoD可以作为一种即插即用模块,以降低常见密集层的开销,这在高效场景中更为重要。不幸的是,MoD适应现有MLLM的研究仍然不够充分,其在LLM中的实际应用也需要昂贵的预训练。
4 Method
Overview
在本文中,作者提出了一种新的高效方法,将MOD(模型压缩和调优)部署到现有MLLM(多层语言模型)中,称为-MoD。-MoD的核心原理是通过一种名为_注意力图排名_(ARank)的新度量方法来识别冗余的MLLM层,并将其替换为所提出的MOD层。因此,将-MoD部署到给定的MLLM中,即,可以表述为:
在这里, 表示 MLLM 的层,其中 和 分别表示密集层及其 MoD 替代物。 是一个用于估计给定密集层 的冗余度的函数, 是一个阈值。根据公式 3 的架构,-MoD 旨在在保持性能的同时最大化稀疏性。因此,-MoD 的优化目标可以表示为:
在这里, 和 分别表示路由器 的自回归损失和路由损失。 是第 层的输入 Token , 是预定义的稀疏目标。 是指示函数,当 时,该函数等于 1。
Rank-based Redundancy Estimation
-MoD 的关键挑战在于如何确定应转换为 MoD 的稠密层。在实践中,直接用 MoD 替换所有层会导致显著的性能退化。原始的基于 MoD 的 LLM(Raposo 等人,2024年)通过手工尝试解决了这个问题,但仍然是不最优和耗时的。然而,在现有的 MLLM 中,LLM 已经在大规模语料库上预训练,可以直觉地提供足够的信息以实现自动转换过程。
受到这一启发,作者提出了一种创新性的度量方法来估计MLLM层中每个 Token 的冗余性,即注意力图的排名(ARank)。特别地,对于第i层的 Token ,ARank定义为注意力图的平均排名:
在这里, 表示排名计算。 表示注意力头数。 是第 头的注意力图, 和 分别是相应的权重。
理论分析ARank。在等式5中,注意力图可以很好地反映不同 Token 的贡献。因此,的低秩表示大多数 Token 信息较少。为了验证这一点,作者对进行奇异值分解(G.H.Goulb和C.Reinsch,1971),其表示为
其中表示的秩,而是一个常数值。、和分别表示的第个单值、左单向量和右单向量。如公式6所示,可以降维为一个秩为的矩阵以及额外的信息,即。因此,低秩注意力图表示更高的冗余性,这意味着MoD可以用于跳过大部分 Token 。
实际计算ARank。如方程5所示,计算ARank高度依赖于输入样本。因此,由于单个样本的变异性,准确计算ARank仍具有挑战性。受到HRank(Lin等人,2020)的启发,作者使用批量样本的期望来估计ARank,这在实际中具有很好的鲁棒性。如图3所示,作者根据不同样本可视化了LLaVA-HR(Luo等人,2024b)的平均ARank值。从这些结果中,作者实证发现在不同的任务中,期望的ARank值保持一致。因此,少量样本足以准确计算ARank。在作者的实验中,作者将样本大小设置为50,以确保计算效率。
### Mixture-of-Depth Adaptation
为了最大限度地提高MoD在现有MLLM中的有效性,作者仔细研究了MoD的微观设计,包括共享视觉语言路由器和 Mask 路由学习。
共享视觉语言路由器。 传统的 MoDs 是为LLMs设计的,因此它们仅在文本 Token 上执行路由。然而,在MLLMs中,这种策略由于视觉 Token 的巨大冗余变得次优。
因此,-MoD的路由器,即,旨在跳过视觉和文本 Token ,这是由...定义的。
在上述论文中,作者定义了视觉语言 Token ,它们分别表示问题 Token ,图像 Token 和文本响应 Token 。 和 分别表示权重和偏置。值得注意的是,作者使用二进制softmax函数来生成路由概率,其中 表示跳过的概率。根据公式7,作者还共享了所有 MoD 层的路由器参数,这对于训练的稳定优化非常重要。具体来说,共享路由器从不同的层接收更多的梯度,从而在训练的开始阶段大大加快其收敛速度。
Mask 路由学习。 在VL训练中,并非所有 Token 对优化过程做出相同贡献。特别是,在问题中的跳过关键 Token (如主语),将对生成训练产生重大影响,因为答案依赖于这些条件元素。
因此,作者引入了一种 Mask 路由学习策略,以防止在训练过程中丢弃这些 Token 。在这种情况下,路由学习的目标可以通过定义一个路由函数来实现。
在这里, 表示二进制 Mask ,其中问题 Token 被赋值为0。 是一个one-hot向量,其中具有顶点路由分数前k位置的元素被赋值为1。
训练方案。-MoD 是一种即插即用的现有 MLLM 训练方法,现有 MLLM 的训练方案不一定需要仔细调整。特别是,现有 MLLM 的训练可以大致分为两个阶段:视觉语言对齐和指令调优。
在对齐阶段之后,-MoD 使用 ARank 估计一个层的冗余性,并直接用作者的 MoD 层替换冗余层。在指令调优阶段,通过 Eq. 4 联合优化路由参数、路由和任务目标。值得注意的是,其他训练配置可以保持与 MLLM 原始设置相同。
5 Experiments
在本节中,作者提供了广泛的精度调整研究,以分析对所提出的γ-MoD框架有效性的关键设计。作者还评估了γ-MoD在多个基准和现有密集和稀疏MLLM的变体设置上的性能。
Datasets and Metrics
作者在五个多模态基准测试上评估了作者的 -MoD,这些基准测试包括 MLLMs,即 POPE、MME、MMB、MMU(Yue等人,2024年)和 MM-Vet(Yu等人,2023年)。具体来说,POPE 和 MM-Vet 旨在评估 MLLMs 的视觉幻觉。MME 测量了总共 14 个子任务(例如,数值计算、文本翻译和代码推理)上的感知和认知能力。MMBench 是一个结构化的目标基准,旨在全面而 robust 地评估视觉语言模型。MMMU 旨在测量 MLLMs 的感知、知识和推理能力。作者在它们的默认设置下报告了所有结果。对于 MME,作者报告了感知分数。
作者还在六个图像问答基准测试上评估了 -MoD,包括 VQAv2,VizWiz,TextVQA(Singh 等,2019 年),SQA,GQA(Hudson 和 Manning,2019 年)和 SEED。特别是,SQA(Lu 等,2022 年)和 VizWiz是两个零样本任务,它们的样本在作者的训练数据中不存在。
作者报告了 SEED 的总体准确性,VizWiz 的测试集,并将这些任务的样本组织成 LLaVA-1.5(Liu 等,2024)的指令格式。
Implementation Details
对于所有模型,预训练都在LCS-558K数据集(刘等,2024年)上进行,该数据集包括558k高质量的图像文本对。对于指令调优,作者遵循LLaVA-1.5(刘等,2024年),使用665k视觉语言指令数据。
为了将γ-MoD部署到MLLMs,在预训练阶段之后计算ARank以识别冗余层。对于所有模型,第四大ARank值被用作将密集层转换为MoD层的阈值。
在指令调优期间,路由损失的系数设置为0.01。其余设置与LLaVA-HR(罗等,2024年)和LLaVA(刘等,2024年)保持一致,包括学习率、训练周期、优化器和数据集等。
Experimental Results
5.3.1 Quantitative analysis
在表1中,作者首先比较了在LLaVA-HR(Luo等人,2024年)上的不同MoD设置。从这张表中,作者可以看到第一个观察结果是,将所有层直接转换为MoD会导致结果变差,例如在TextVQA上的33.8%。
此外,尽管手工策略表现更好,但性能下降仍然明显,例如平均每2层1 MoD的性能下降了10.7%。这些结果证实了将MoD引入MLLM的挑战。然而,在采用作者的ARank策略后,LLaVA-HR的效率大大提高,而性能得到了很好的保持。这样的比较极大地证实了作者的ARank策略对这些 Baseline 的有效性。
在Tab.1中,作者还验证了在MLLM上部署不同微设计的MoD,包括 Mask 路由学习、共享路由器和路由比例。通过这些比较,作者首先看到, Mask 学习策略对优化γ-MoD非常有利,在SQA上可以提供高达+1.7%的性能提升。如果没有这种策略,在MoD层中会丢失问题 Token ,很容易导致回答的语义模糊。此外,作者还发现路由器共享策略在γ-MoD中也起着重要作用。在移除这种策略后,模型在TextVQA上的性能会明显下降-6.5%。最后,作者验证了不同路由比例对LLaVA-HR的影响。从结果中作者可以看到,在相对较小的路由比例下,即17%和34%,模型性能可以得到保留。
当路由比例增加到51%时,模型性能从58.3%下降到平均57.6%,但效率的优势仍然显著,即-51.5%的Flops减少。总体而言,这些比较极大地验证了作者的动机和γ-MoD的设计。
为了验证每个设计在-MoD中的贡献,作者在表2中进行了消融研究。从这个表格中,作者可以看到默认的MoD会导致明显的性能退化,在SQA上达到-25.3%。
相比之下,作者的基于ARank的部署,LLaVA-HR的平均性能从37.1%提高到57.6%,计算稀疏性也从34.7%提高到48.9%。这样的对比证实了并非所有层都可以转换为MoD层,而ARank对于识别冗余层至关重要。
此外,使用遮挡路由学习还可以进一步促进模型训练,在MMMU上分别增加0.8%,在TextVQA上增加0.2%。值得注意的是,遮挡路由学习还提高了-MoD的效率,平均计算成本从10.7 TFlops进一步降低到9.3 TFlops。这些结果进一步证实了-MoD的有效性。
不同MLLM上γ-MoD的泛化能力 在表3中,作者还评估了γ-MoD在不同MLLM架构和模型规模下的泛化能力。特别是,30%路由比的γ-MoD在LLaVA上展示了在性能和效率之间取得巨大折衷。当路由比增加至51%时,LLaVA的性能显著降低,这表明其对高路由比相对较低的容忍度。对于LLaVA-HR,γ-MoD-0.3配置在GQA上的准确率保持在63.7%,在TextVQA上的准确率保持在65.3%,同时减少了34%的TFlops并跳过了37.9%的token。
当路由比增加至51%时,token跳率提高至57.7%,但精度出现轻微下降,例如在GQA上下降了0.6%。这些比较还反映出高分辨率的MLLM通常比低分辨率的MLLM具有更高的token冗余度。当扩展到更大的模型,如LLaVA-HR-13B时,作者的方法仍然表现强劲。γ-MoD-0.3配置在最小精度损失的情况下获得了38.1%的跳率和高25.1 TFlops,表明较大的模型更适合处理更高的跳率而保持性能。即使将路由比增加到51%,竞争精度仍可保持,例如在GQA上为64.8%,在TextVQA上为66.8%。
效率分析。在表4中,作者比较了-MoD在LLaVA-HR上的训练和推理效率。从这些结果中,作者可以观察到-MoD在训练和推理方面具有全面的优点。特别是,-MoD-0.3已经实现了明显的效率提升,即训练时间减少-26%,TFlops减少-35%。然而,-MoD-0.3的性能下降几乎可以忽略,即平均准确率下降-0.2%。
当将路由比增加到50% Token 时,-MoD-0.5的推理吞吐量进一步提高了+53.2%。尽管在效率上获得了显著的收益,但-MoD的性能下降仍然可以接受,即平均准确率下降-1.5%。这些结果很好地验证了-MoD在效率上的明显优势。
#### 5.3.2 Comparison with Existing MLLMs
在表5中,作者将γ-MoD与密集模型和稀疏模型在9个基准测试上进行了比较。从中作者可以看出,γ-MoD在所有基准测试上都能保持竞争力,同时在LLaVA和LLaVA-HR上实现了显著的效率提升。具体来说,γ-MoD-LLaVA-HR(13B)可以达到与LLaVA-HR(7B)相似的推理速度,同时在多个基准测试上优于后者,例如在MMVet上的+3.0%。与其他密集MLLM相比,γ-MoD-LLaVA-HR仍然具有类似的优点。
例如,γ-MoD-LLaVA-HR-7B不仅在GQA和VQAv2上明显优于Qven-VL,而且推理效率也优越,即速度提高1.5倍。此外,与现有稀疏模型(例如,MoE-LLaVA,Lin等人,2024a)相比,作者的方法在性能和效率之间取得了更好的平衡。特别是,γ-MoD-LLaVA-HR(7B)在8个基准测试上优于MoE-LLaVA(5B),例如在MME上的+93分,同时仍然保持更好的效率,即推理速度提高28%。
值得注意的是,尽管MoE-LLaVA的参数规模较小,但其路由计算通常会导致更高的延迟。更重要的是,MoE-LLaVA需要额外的训练阶段进行其MoE适应性,这也消耗了比作者的方法更多的训练数据,即2.2M vs. 1.1M。总体而言,这些比较进一步证实了γ-MoD的有效性和效率。
#### 5.3.3 Qualitative Analysis
在图4中,作者可视化了图像和文本中的路由比例和跳过的内容,以及相应的对话。图4(a)的第一个观察是,问题、图像和回答 tokens 按照一致的模式进行路由:问题 tokens 大部分保持不变,而图像 tokens 是最冗余的,因此路由次数最多。在图4(b)中,作者可视化了跳过的图像和文本内容。图像中的灰色部分表示路由器跳过的 tokens,这表明图像中的许多区域(如背景像素)是冗余的,并为理解提供关键信息。将这些 tokens 路由出去,可以使模型更关注白色部分,这些部分突出了模型更关注的图像区域或文本部分。例如,在第一行的 IQ 测试示例中间,模型可以集中注意力并花更多的计算在图像的算术和几何方面,从而得到一个合理的答案。
6 Conclusion
在这篇论文中,作者从“激活 Token ”(activated token)的角度,旨在解决多模态大语言模型(MLLMs)的效率问题。
特别是,作者提出了一个名为-MoD的新颖混合深度自适应策略,用于实现计算高效的MLLM。
在-MoD中,作者引入了一种创新度量方法,以识别用于混合深度部署的无用层,即_注意力图的排名_(ARank)。
此外,-MoD还通过两种设计(_共享视觉语言路由器_和_ Mask 路由学习_)最大化其对MLLM的效益。
通过这些新设计,-MoD可以明显降低现有MLLM的计算成本,同时保持其性能。
在9个多模态基准测试上的大量实验验证了其效率和有效性。此外,-MoD的广泛泛化能力也通过不同MLLM进行了验证。
[0]. MoD: Exploring Mixture-of-Depth Adaptation for Multimodal Large Language Models.