破解视觉Token冗余,“动态计算削减技术”助力多模态大模型推理“减负”
论文名称:RedundancyLens: Revealing and Exploiting Visual Token Processing Redundancy for Efficient Decoder-Only MLLMs
一、背景与问题提出
近年来,多模态大模型(MLLMs) 在融合视觉和语言理解方面取得了显著突破。这些模型主要有两种架构(图1):decoder-only(解码器式) 和 cross-attention(跨注意力式)。
(1)decoder-only架构:结构简单,性能较优,但计算资源消耗大,因为需要对视觉和文本的每个token进行自注意力和前馈网络(FFN)操作,特别是在处理大量视觉tokens时,效率成为瓶颈。
(2)cross-attention架构:引入跨模态交互层,能更高效地处理长序列,但相对而言性能略逊于decoder-only架构。
图1. 比较纯解码器架构(Decoder-Only)与基于交叉注意力机制的架构(Cross-Attention-Based);视觉标记的自注意力与 FFN 操作主导了纯解码器层的计算过程
核心问题:在decoder-only架构中,视觉token的处理会出现大量冗余。这种冗余是否可以被有效利用,从而提升模型的效率?
为什么在decoder-only架构中,视觉token的处理出现大量冗余?
主要原因在于视觉tokens的处理方式与其在模型中的角色特性。具体而言,视觉tokens经过多层自注意力(self-attention)和前馈网络(FFN)操作,这些操作在不同层次中可能对视觉信息进行重复甚至冗余的处理。根据论文的分析,原因可以归纳为以下几点:
1.视觉和文本tokens的本质差异:视觉tokens来源于图像编码器,通常包含大量细粒度的视觉细节,而文本tokens则是由文字线性映射而来。这种差异意味着视觉tokens在模型中不一定需要每一层都进行充分的自注意力和FFN处理,部分视觉信息在早期就已充足表达。
2.多层重复处理:实验发现,在decoder-only架构中,经过多层堆叠后,许多视觉tokens在不同层中重复接受类似的处理和变换,没有产生新的信息,反而导致冗余增加。
3.长序列带来的处理负担:为了捕获更细粒度的视觉细节,模型不断增加输入图片的分辨率和视觉token数量,导致视觉tokens远超文本tokens。由此在模型中,视觉tokens的自注意力和FFN处理耗费大量计算资源,但其中很多操作是在不必要的情况下重复计算。
4.实验验证的结构化和集群性冗余:论文中的实验证明,decoder-only模型在视觉token处理上存在“结构化”且“集群式”的冗余,即某些层中的处理几乎可以省略,而不影响整体性能,说明这些视觉信息的处理在某些层已达到充分表达。
5.视觉tokens处理的地方性冗余:通过引入“Hollow Attention”等方法发现,自注意力的全局计算在视觉token上存在大量局部化甚至无用的计算,表明部分全局注意操作实际上没有提供额外有用信息。
综上所述,视觉tokens在decoder-only架构中因为其高度粒度、多层重复处理以及模态差异,造成了大量冗余的计算。论文强调,这些冗余的存在既是架构设计上的不足,也是未来优化和效率提升的良好突破点。
二、研究内容与创新点
1. 研究目标
利用“训练无关”的方法分析已训练好的decoder-only MLLMs中视觉tokens的冗余。
发现存在哪些结构化、集中的冗余,为未来的模型设计提供思路。
提出一种“无需训练”的推理加速方案,通过动态减弱或跳过部分视觉token的计算,提高推理速度。
2. 关键技术方法
在论文中,合合信息技术团队提出了一套面向视觉Token 的动态计算削减方法,通过在模型结构层面引入可选择、可跳过的计算机制,在几乎不影响模型性能的前提下,大幅降低推理计算量。核心思路并不是“压缩模型”或“重新训练”,而是在推理阶段,根据实际输入内容动态决定“哪些计算是值得做的”。
主要包括两项关键技术:
Probe-Activated Dynamic FFN对 FFN 中的参数进行动态激活;Hollow Attention对视觉 Token 的注意力计算进行结构性稀疏化
通过Layer Ranking Algorithm(层级排名算法),决定“在哪些层优先减计算”,实现整体最优
2.1 用动态模块替代原有 FFN 与 Attention
传统 Transformer 中,每一层、每一个 Token 都会执行完整计算,但在视觉任务中,大量视觉 Token 在很多层并不真正“重要”,这就带来了明显的计算冗余。本文通过两个结构改造,让模型具备“按需计算”的能力(图2)。
2.1.1 Probe-Activated Dynamic FFN
在标准FFN 中,每一层都会对所有视觉 Tokens执行完整的两次线性变换(W1 → 激活 → W2),无论这些 Token 是否真正影响最终结果。这在高分辨率视觉输入下,计算成本非常高。 其中,W1将输入视觉 Token 映射到中间隐藏空间;W2将隐藏表示再映射回输出空间: .在 Probe-Activated Dynamic FFN 中,并不是每次都使用完整的 W1 和 W2,而是通过少量 Token 探测,找出当前输入最重要的隐藏维度,只激活 W1 和 W2 中对应的子矩阵 其余参数在本次推理中完全跳过。
核心思想:不是所有参数在当前输入下都同样重要。通过对少量视觉 Token 做“快速探测(Probe)”,估计哪些 FFN 参数真正有贡献,推理时只激活这部分参数,其余直接跳过。具体流程如图1(a)中表述:
采样子集:从整个视觉token序列中随机采样一部分(M个,比全部N个少得多),用这部分样本来估算视觉tokens的下游表现。
参数选择:计算这部分样本的隐藏表示(H_sample),然后取其绝对值的均值 来衡量每个参数的重要性。
Top-K筛选:根据重要性指标,从 中选出前K个最重要的参数对应的索引(S)。
激活参数子集:只保留选中的参数(W1和W2的子集),对视觉tokens进行线性变换,跳过不重要的参数,显著减少计算。
优势:无需额外训练,完全训练无关(training-free),在推理时动态选择参数,有效降低视觉tokens的处理成本。
2.1.2 Hollow Attention
背景:全局自注意力计算消耗巨大,许多视觉tokens之间的全局交互在某些层是冗余的。
核心思想:引入稀疏注意(Sparse Attention),只计算局部Attention,舍弃无用的全局Attention,提升效率。具体模式如图1(b)中表述:
局部注意:Visual tokens之间只计算局部范围内的注意,如范围RA(256 tokens),避免全局交互。
保留文本视觉交互:仍然保持文本 tokens 与 visual tokens 之间的交互,确保关键跨模态信息传递。
实现方式:通过设计“空洞”注意(Hollow Attention),在视觉tokens间显示空洞,提高局部关注,减少不必要的全局关注计算。
优势:显著减少视觉tokens之间的无用交互计算,节省很大一部分资源。
图2. 所提出的视觉标记计算简化方法示意图:(a)探测器激活动态FFN (Probe-Activated Dynamic FFN) 与(b)空洞注意力机制(Hollow Attention)
2.2 Layer Ranking Algorithm(层级排名算法)
核心问题:即使有了动态 FFN 和 Hollow Attention,并不是每一层都同样适合减计算。有些层对模型性能极其关键,而有些层本身就存在大量冗余。
目标:识别哪些模型层的视觉token处理冗余较多,可以优先减少这些层的计算,从而高效节省资源。
基本思想:为每一层的视觉token处理赋予“重要性”等级(rank),根据此排名决定哪些层可以进行计算削减。
具体做法:
特征提取:利用层级中的某些特征或指标(如激活值的绝对值、梯度、输出的差异等)作为评估标准。
重要性排序:计算每一层的指标值,将层按照重要性进行排序(高排名意味着对模型性能影响大,低排名则意味着冗余较多,可以优先削减)。
优先削减:在减小计算量时,先对较低排名(冗余多、影响较小)的层进行削减,以最大化保持模型性能。
实现流程:
采样:在验证集上执行少量推理,估算每一层对模型性能的重要性。
排名算法:利用预定义的指标(如层激活的均值、重要性分数)自动或基于搜索的方式为每层赋予分数。
优化策略:结合“Position-based”(优先削减后面层)或者“Search-only”(全局搜索)两种策略,动态选择适合的层进行削减。
作用:
通过排名决定层的削减顺序,保证在减少计算的同时不大幅度影响整体性能。
特别适用于分层策略的优化,使得优势最大化,兼顾效率和性能。
三、实验验证
在多个先进模型(如InternVL2-8B、Qwen2-VL-7B等)上验证,发现:
1.在大约一半的层应用计算缩减时,模型的性能既能保持不变,又能提升速度。
图3展示了在InternVL2-8B和Qwen2-VL-7B两个模型中,分别对层的自注意力和FFN操作进行逐步减少的效果。结果显示,当对大约一半的层进行操作减少时,模型的性能基本保持不变,甚至在某些任务中表现优于未减速的模型。而当减少超过一半层次的操作时,模型性能明显下降,尤其是FFN的减少对性能影响更为显著。
图3.在不同层比例下应用自注意力机制或 FFN 减少的影响
2.减少对文本token的处理会大幅影响性能,因此重点在于筛选出冗余集中的视觉层。
在图4中,通过将操作减少应用于视觉令牌与全部令牌的比较,发现仅减少视觉token部分就能基本保持模型性能,而减少全部token则会导致性能迅速下降。这说明,视觉token在多模态任务中的处理存在一定的冗余,可以通过有选择地减少计算量实现效果保持甚至提升。
图4. 基于InternVL2-8B在ChartQA上的评估结果,对视觉标记(蓝线)与所有标记(红线)所应用的削减效果进行性能比较
3.通过结合现有的视觉Token压缩技术,效果更佳,形成互补。
Table 1这组实验主要比较了不同模型加速策略在计算量(FLOPs)显著降低时,是否还能保持模型性能。其中,FLOPs 剩余比例(FLOPs Ratio)表示:模型加速后,实际参与计算的浮点运算量,占原始模型的百分比——数值越低,代表加速效果越强。
实验中对比了三类方法:VTW、FastV(通过“减少视觉 Token 数量”来加速)、Ours(通过“减少每个视觉 Token 内部的计算量”来加速),并在多个视觉理解与多模态任务上,系统评估它们的性能变化。结果表示,在 FLOPs 降低约 50% 的情况下,模型性能基本保持不变,甚至在部分任务中略有提升,并且可以与现有 Token 压缩方法无缝结合。
Tabel 1. 加速 MLLM 推理的无训练方法对比
四、主要结论
在多模态模型中,处理图像的视觉部分其实存在很多“冗余”,也就是说,模型在某些层次处理大量视觉信息其实并不是必要的。这种冗余导致模型运算速度慢、资源消耗大,但实际上许多视觉信息可以省略而不影响理解。
为此,合合信息技术团队提出了一种新的方法,通过动态调整模型内部的计算方式,有效减少了每个视觉信息的计算量,从而显著加快了模型的运行速度,同时保持甚至提升了其识别能力。该方法完全训练无关(training-free),只作用于推理阶段,非常适合对响应速度和算力资源敏感的真实应用场景,同时还可能改善或者持平性能。此外,这种方法与现有的压缩技术(减少visual tokens)是互补的,可联合使用。
这一研究的意义在于,让多模态模型变得更快、更节能,也更易于在实际应用中部署,比如手机或者实时系统,为智能科技的发展提供了新的思路。
五、产品应用
在产品应用层面,该方法同时适用于ToB 与 ToC 场景,为多模态模型的大规模落地提供了更现实的路径。
在 ToB 侧,如企业级文档扫描与识别、合同与票据 OCR、表单信息抽取、智能审核与质检系统等场景中,模型往往需要在高并发、有限算力或本地化部署条件下稳定运行。通过在推理阶段动态减少每个视觉信息的计算量,系统可以在保持高准确率的同时显著降低算力与能耗成本,从而提升整体服务效率。
在 ToC 侧,该方法同样适用于手机端拍照识别、即时翻译、智能搜索、辅助阅读等应用,使模型在移动设备或实时交互场景中运行得更快、更省电、响应更流畅。整体而言,这一技术让多模态能力不再局限于高算力环境,而是真正具备了在不同产品形态和终端条件下广泛应用的可行性。
所有文章未经授权禁止转载、摘编、复制或建立镜像,违规转载法律必究。
举报邮箱:1002263188@qq.com