游乐游手机版
首页/AI热点日报/热点详情

清华LLaVA-UHD v4实现高分辨率多模态视觉FLOPs减半

类型:热点整理2026-07-06
清华提出的LLaVA-UHDv4模型解决了高分辨率多模态大模型中视觉编码的计算瓶颈。该方法通过切片编码替代全局编码,并将部分压缩步骤提前至视觉编码器内部,实现结构化早期压缩。最终在保持下游性能的同时,将视觉编码的计算量降低了约55 75%,显著提升了高分辨率图像处理的效率。

随着多模态大语言模型(MLLMs)不断向文档理解、OCR、图表分析乃至高分辨率真实场景理解这类细粒度任务拓展,高分辨率图像输入已逐渐成为主流配置。但分辨率一上来,伴随的就是视觉 token 数量的爆发式增长,视觉编码本身也因此变成了 MLLM 中一个不可忽视的计算瓶颈。

目前常见的做法是沿着“全局编码+视觉编码器后压缩”的路线走:整张高分辨率图像先一股脑喂给视觉编码器(ViT),等到编码完了再用压缩模块压一压 token 数量。但这个范式的问题在于,token 压缩发生得太晚,根本没能减少 ViT 内部已经产生的那一大笔计算开销。

针对这个核心矛盾,LLaVA-UHD v4 的方案是:重新审视高分辨率 MLLM 的视觉编码设计,找到一条更高效的路径——用切片编码替代全局编码,把压缩的重心从 ViT 之后移到 ViT 内部。

论文的结论相当明确:在保持甚至略优于视觉编码器后压缩基线下游性能的同时,LLaVA-UHD v4 把视觉编码的 FLOPs 降低了 55.75%,为高分辨率 MLLM 提供了一套兼顾效率与效果的实用架构。

论文地址:https://arxiv.org/abs/2605.08985
GitHub 仓库:https://github.com/THUMAI-Lab/LLaVA-UHD-v4

为什么现有高分辨率视觉编码还不够高效?

现有的高分辨率 MLLM 通常沿用两个默认选择:

1. 全局编码:整张图直接怼进视觉编码器,保留完整的全局上下文;
2. 视觉编码器后压缩:编码完成后,用 connector 把视觉 token 压缩一下,减轻后面 LLM 的负担。

这个范式看起来挺自然,但里面藏着一个结构性的效率问题。post-ViT 压缩只能减少 LLM 的输入 token,却没法减少视觉编码器自身的计算量。分辨率一高,ViT 还是得在完整 token 序列上做全局自注意力,计算成本跟着视觉 token 数量直线飙升。说白了,当前方法缓解的是 LLM 看到太多 token 的问题,但真正症结——视觉编码本身效率不高——压根没碰。

LLaVA-UHD v4 的出发点就是直截了当地削减视觉编码器内部的计算,而不是只在 ViT 之后做压缩。

LLaVA-UHD v4 的核心特点

重新审视高分辨率编码范式:切片编码优于全局编码

此前社区普遍觉得,全局编码能保留完整上下文、支持任意 patch 间的交互,是更直接、更“无损”的高分辨率方案。切片编码则常被看作是为了计算能扛住而做的折中。

但论文的受控实验给出了一个不同结论:在相同训练数据、相同 LLM、相同 token 预算下,切片编码在多个设置中一致优于全局编码。

在 SigLIP 2 骨干网络下,切片编码在 4× 与 16× 压缩率、4M 与 8M 数据规模的四组设置里,平均性能均高于全局编码,优势在 +0.5+1.7 之间。哪怕更换视觉骨干或提高切片分辨率预算,这个优势依然稳定。

这些结果说明,在高分辨率场景下,保留局部细节的切片式编码根本不是计算上的妥协,反而能成为更有效的视觉表征方式。论文把这个归因于两者不同的归纳偏置:切片编码让模型在空间上连贯的局部区域内建模细节,而全局编码则会让细粒度信息与全局上下文在固定 token 预算下相互竞争。

明确视觉编码后压缩的局限:真正的瓶颈在视觉编码器内部

即使用了切片编码,高分辨率图像仍然会产生不少视觉 token,连接视觉编码器与 LLM 的压缩模块依然重要。论文先系统比较了两类常见 connector:

  • Query-based Resampler:用少量可学习查询对视觉 token 做注意力聚合;
  • Pixel-Unshuffle + MLP:把邻近 patch 的空间结构折叠到通道维度,再做轻量投影。

实验显示,Pixel-Unshuffle-based MLP connector 在所有比较设置下都优于 resampler。论文认为,关键差异不在于参数量,而在于 MLP 的空间合并方式显式保留了局部空间结构,而 resampler 依赖全局 learnable queries 进行聚合,容易弱化局部 token 与空间位置之间的对应关系。

提出 intra-ViT early compression:在视觉编码过程中提前压缩 token

LLaVA-UHD v4 的做法是,在视觉编码器较浅的层完成 4× 降采样。然后,视觉编码器深层只处理原始 token 数量的 1/4,从根源上大幅降低视觉编码成本。

  • 以往方法:Global Encoding → 完整 ViT 编码 → post-ViT compression
  • LLaVA-UHD v4:Slice-based Encoding → 浅层 ViT → intra-ViT compression → 深层 ViT → post-ViT compression

最终,LLaVA-UHD v4 采用两阶段压缩。视觉编码器内部 4× 压缩,编码器后的 MLP connector 再做 4× 压缩,合计实现端到端 16× 的 token 压缩。和传统 post-ViT compression 基线相比,关键变化就是把一部分压缩从 ViT 后搬到了 ViT 内部。

结构化压缩模块:在压缩前先完成局部信息整合

把 token 压缩提前到视觉编码器内部后,一个关键问题随之而来:如何在减少 token 数量的同时,尽量保留高分辨率图像中的细节?

如果只是简单丢弃 token 或直接平均相邻 token,虽然能降计算量,但也可能损失局部区域中的重要视觉线索。为此,LLaVA-UHD v4 设计了一个结构化的 intra-ViT compressor,让压缩过程不再是简单的 token 缩减,而是在合并前先完成必要的局部信息整合。该模块主要包含两部分:

1. Local Window Attention:在每个局部窗口内做自注意力计算,让即将被合并的相邻 token 先交换局部上下文信息;
2. Pixel-Unshuffle+MLP Fusion:把窗口内的多个 token 沿通道维度折叠,再通过 MLP 进一步融合,得到更紧凑的视觉表示。

通过这种设计,early compressor 在降低 token 数量之前,已经先让局部区域内的视觉信息完成了交互与融合。也就是说,LLaVA-UHD v4 减少的并不是有效视觉信息本身,而是高分辨率输入中冗余的 token 表达。这样既显著降低了后续 ViT 层的计算开销,也有助于维持压缩后视觉特征的表达质量。

参数复用初始化:让新模块从一开始就贴近预训练视觉编码器的表示流形

把压缩模块前移到 ViT 内部,意味着要在预训练视觉编码器的中间层插入一个新的结构。相比传统的 post-ViT compression,这个设计虽然能显著降低后续 ViT 层的计算量,但也带来了新的挑战:新插入的模块必须在压缩 token 的同时,尽可能保持与原有预训练特征分布的兼容性。

如果直接随机初始化,压缩模块在训练初期产生的特征很可能与后续 ViT 层熟悉的输入分布产生明显偏差,从而破坏预训练模型中已经形成的表示结构,还增加后续微调的优化难度。为此,LLaVA-UHD v4 提出了参数复用初始化策略。这个策略不从头开始学,而是复用前一层 ViT block 中已经训练好的参数,让新模块在初始化阶段就更接近原始视觉编码器的表示状态。

具体来说,压缩模块中的 window attention 与 LayerNorm 参数直接继承自前一层 ViT block;MLP 部分则被构造为近似对 2×2 patch 窗口内的 token 分别做特征变换,再在此基础上完成平滑融合。这样一来,新插入的 early compressor 不仅承担了降低 token 数量的作用,也在训练初期尽量维持了与预训练 ViT 表示流形的一致性。关键是,LLaVA-UHD v4 不光是“更早地压缩 token”,更是以一种与预训练视觉编码器兼容的方式,把压缩过程自然嵌入到 ViT 的特征流中。

大幅降低 FLOPs,同时保持下游性能

在主实验中,LLaVA-UHD v4 把基线中的 4× 压缩前移到 ViT 内部,让后续 ViT 层只处理 25% 的 token。结果显示,视觉编码 FLOPs 从 3555.1G 降到了 1573.1G。在多个训练数据规模下,LLaVA-UHD v4 与 post-ViT 基线的平均分差始终控制在 ±0.8 以内,平均偏差只有 −0.29

观察训练数据从 4M 扩展到 64M 时的趋势,会发现:post-ViT 基线的平均分从 68.2 上升到 76.2,LLaVA-UHD v4 的平均分从 67.4 上升到 75.6。两者差距并没有随数据规模扩大而持续恶化。这说明,在论文覆盖的数据规模范围内,intra-ViT early compression 并没有引入明显的 scaling 瓶颈。

总结

LLaVA-UHD v4 从高分辨率 MLLM 的核心效率矛盾出发,系统性地回答了两个长期被默认、却未被充分检验的问题:

1. 高分辨率图像一定要采用全局编码吗?论文表明,切片编码不仅更高效,在多个设置下还表现得更好。
2. 视觉 token 压缩只能放在 ViT 之后吗?论文表明,把压缩前移到 ViT 内部,并通过结构化设计保障表示兼容性,可以在几乎不损失性能的情况下,大幅削减视觉编码开销。

通过将 slice-based encoding 与 intra-ViT early compression 结合,LLaVA-UHD v4 在 16× token 压缩下实现了 55.75% 的视觉编码 FLOPs 降幅,同时维持了与强 post-ViT 基线相当甚至更优的下游表现。高分辨率 MLLM 的效率优化,确实不应该只盯着如何减少送入 LLM 的 token,更值得关注的是如何在视觉编码器内部更早、更稳健地降低计算负担。

来源:https://www.bestblogs.dev/article/0aecb66e?utm_source=rss&utm_medium=feed&utm_campaign=resources&entry=rss_article_item

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。