技术摘要:VisCo —— 利用大语言模型作为内在编码器进行视觉标记压缩
1. 问题陈述
视觉语言模型(VLMs)通常通过将高分辨率图像编码为大量的视觉标记(visual tokens)来处理图像。这导致了由于自注意力机制的二次方复杂度以及键值(KV)缓存的存储需求而产生的显著推理延迟和内存开销。这一瓶颈严重限制了 VLMs 在资源受限和实时场景中的部署。
现有的视觉标记压缩解决方案分为两类,两者都存在明显的局限性:
- 无需训练的方法(Training-free methods): 这些方法依赖于启发式指标(如注意力分数或特征相似度)来进行标记剪枝或合并。虽然效率较高,但在高压缩比下会出现显著的性能退化。它们容易受到“注意力偏移”的影响,从而导致幻觉,并且往往无法保留文本引导的全局语义或细粒度细节。
- 基于训练的方法(Training-based methods): 这些方法引入了外部压缩模块或需要大规模的重新训练(包括重新对齐和指令微调)。虽然更稳健,但会产生沉重的重训成本,破坏预训练 VLM 的先验知识,且通常缺乏即插即用的灵活性。
核心挑战在于:如何在不需要大规模重训或外部模块的情况下,实现有效的视觉标记压缩,并在激进的压缩(例如将标记减少到单个单元)下保持语义保真度。
2. 方法论:VisCo 框架
作者提出了 VisCo,一个训练高效的自压缩框架,该框架将预训练的 VLM 本身作为内在压缩器进行复用。VisCo 被设计为一个具有共享参数的非对称 VLM 自编码器,分为两个阶段运行:
A. 非对称架构
- 编码阶段(Encoding Stage): 该框架通过一个轻量级的可训练模块增强了预训练的 VَلM 主干。具体而言,它引入了一组少量的可学习记忆标记(Xm),并在 Q/V 投影上使用 LoRA 适配器。编码器处理视觉标记(Xv)和记忆标记(Xm)组成的联合序列。
- 解码阶段(Decoding Stage): 移除 LoRA 适配器,直接复用原始冻结的预训练 VLM 主干作为解码器。这种设计确保了 VisCo 仅需对现有能力进行轻量级适配,而非从头开始重新学习多模态生成过程。
B. 序列构建与因果掩码
VisCo 严格遵循解码器唯一(decoder-only)型 VLM 的标准因果掩码机制。记忆标记被附加在输入序列中视觉标记的之后。这使得记忆标记能够利用模型内在的注意力先验自然地关注所有先前的视觉标记,从而聚合丰富的视觉信息,而无需引入自定义的交互规则。
C. 分层信息聚合与传递
由于 Transformer 层表现出功能专业化特征(底层编码局部模式,高层编码抽象语义),VisCo 采用了分层信息传递机制:
- 记忆库构建(Memory Bank Construction): 在编码期间,系统并非将最终的隐藏状态传递给解码器,而是在每一层 l 保留仅对应于记忆标记的键(K)和值(V)矩阵。这些矩阵被存储在逐层记忆库(Kmem,Vmem)中。
- 分层解码(Hierarchical Decoding): 在解码期间,这些逐层的记忆 KV 缓存被直接填充到解码器的 KV 缓存中。这使得解码器能够访问多粒度的语义信息(从低级纹理到高级话语),而无需投影层,充分利用了编码器与解码器之间的参数共享。
D. 训练目标
VisCo 使用教师强制(teacher forcing)进行端到端微调,以最大化给定压缩后的记忆和文本输入时,对真实答案的条件似然概率。未引入额外的预训练目标。
3. 核心贡献
- 非对称内在自压缩框架: VisCo 利用预训练的 VLM 本身作为压缩器,保持主干网络完整,且仅需轻量级训练(LoRA + 可学习记忆标记)。
- 分层信息传递机制: 该方法引入了一种机制,通过逐层 KV 缓存将多粒度语义从编码器层转移到解码器,从而在压缩过程中保留视觉信息的结构化层次。
- 全面的评估: 在 3 个 VLM 主干(LLaVA-1.5-7B, Qwen2-VL-2B, Qwen2-VL-7B)和 6 个基准测试上的广泛实验证明了其相对于现有方法的持续优越性,特别是在激进压缩的情况下。
4. 实验结果
论文在包括 GQA, MMB, MMB-CN, MME, POPE 和 MMVet 在内的基准测试上对 VisCo 进行了评估。
激进压缩下的性能:
- 在 LLaVA-1.5-7B(576 个标记 → 32 个标记)上,VisCo 保留了 91.8% 的原始性能,平均得分比表现最好的基准方法(VisPruner)高出 4.0 点。
- 在极端单标记设置(1 个标记)下,VisCo 保留了 85.3% 的原始性能,显著优于无需训练的方法(如约为 72.6% 的 SparseVLM),甚至在特定指标上超过了更强的基于训练的参考模型如 MatryoshkaQuery 和 VoCC-LLaMA。
- 在 Qwen2-VL-2B(已内置压缩)上,VisCo 在 25% 标记保留率时保留了 95.2% 的性能,在 12.5% 保留率时保留了 91.4% 的性能,优于经过微调的基准方法 VisionZip。
定性分析:
- 即使在标记数极少的情况下,VisCo 也能成功捕捉整体场景上下文和关键区域,而基于注意力的剪枝方法则会丢失全局上下文和细节。
- 在单标记设置中,VisCo 可以生成包含物体级描述和连贯全局语义的详细描述。
效率:
- VisCo 显著减少了 KV 缓存的存储。
- 虽然初始编码步骤引入了开销,但 VisCo 实现了更快的解码速度。在多轮对话场景中,通过复用缓存的表示,VisCo 在仅三轮对话后即可超越无需训练的方法(如 FastV)的延迟。
互补表示:
- 消融研究(VisCo+)显示,将学习到的记忆标记与原始视觉标记相结合,实际上可以提升基础模型在多个基准测试上的性能。这表明记忆标记捕捉的是互补信息,而非仅仅是压缩后的子集。
5. 重要性与主张
论文声称,VisCo 证明了利用预训练 VLM 的内在先验可以通过仅需轻量级训练来实现鲁棒的视觉标记压缩。
- 克服权衡: VisCo 避免了无需训练的方法在高压缩下的严重性能退化,也避免了基于外部模块的方法所带来的沉重重训成本。
- 原生处理模式: 通过遵循 VLM 的原生处理模式(使用因果掩码和参数共享)而非重写它,VisCo 在保持轻量级适配灵活性的同时,实现了与重量级方法相媲美的性能。
- 超越压缩: 作者认为,学习到的记忆标记充当了互补表示,能够丰富视觉特征,从而在单纯的压缩效率之外提升模型性能。
研究结论指出,有效的视觉标记压缩取决于预训练 VLM 中已存在的强大信息编码能力,而这种能力可以通过像 VisCo 这样的高效自压缩框架被释放出来。未来的工作拟探索自适应标记分配以及向视频压缩领域的扩展。