跳转至

Unified Spatiotemporal Token Compression for Video-LLMs at Ultra-Low Retention

会议: CVPR 2026
arXiv: 2603.21957
代码: 无
领域: 视频理解 / 多模态VLM / LLM效率
关键词: 视觉token压缩, 视频大语言模型, 时空统一压缩, 推理加速, 无训练

一句话总结

提出统一时空token压缩方法,通过全局保留池联合评估token的贡献度和语义冗余度,并在LLM内部引入文本感知合并机制,在仅保留约2%视觉token的极端压缩下仍保留90.1%的基线性能,同时将FLOPs降至约2.6%。

研究背景与动机

  1. 领域现状:Video-LLM(如LLaVA-OneVision-7B)在复杂视频理解任务中表现优异,但单帧生成196个视觉token,32帧视频累计可达6272个token,其中大量高度冗余,导致推理延迟和显存消耗巨大。

  2. 现有痛点:当前无训练视频token压缩方法主要分三类——空间剪枝(VisionZip、PruMerge)、时间剪枝(DyCoke、TempMe)、分阶段时空方法(FastVid、HoliTom)。这些方法通常采用两阶段(先时间后空间或先空间后时间)的独立打分策略,隐式假设时空冗余可分离。

  3. 核心矛盾:在极低保留率(≤5%)下,时空可分离假设失效。分阶段决策容易导致时空资源分配不均衡——保留了非关键token却丢弃了关键token。例如FastVid在2%保留率下仅保留83.3%的原始性能。此外,LLM内部剪枝(如FastV、PDrop)仅使用最后一个token的注意力权重作为选择标准,引入位置偏差并削弱了关键查询词的语义影响。

  4. 本文目标:(a) 如何在全局约束下统一分配时空token以最大化信息贡献并最小化冗余?(b) 如何在LLM内部进一步根据查询相关性压缩token?

  5. 切入角度:将token压缩重新定义为全局时空token分配问题,而非分阶段独立处理。利用注意力权重和语义相似度联合评估所有token。

  6. 核心 idea:用统一的全局保留池替代两阶段压缩,结合贡献度-冗余度双指标选择token,配合回收池聚类合并和LLM内部文本感知合并,实现极低比例下的高效压缩。

方法详解

整体框架

这篇论文要解决的是:32 帧视频喂进 Video-LLM 会膨胀成六千多个视觉 token,绝大多数是冗余的,但在 ≤5% 的极端压缩下,过去那套"先压时间、再压空间"的两阶段做法会把时空预算切歪,导致丢掉关键 token。方法的整体思路是把压缩拆到 LLM 内外两层来做:在 LLM 外部,先把所有视觉 token 倒进一个全局保留池,用"注意力贡献度 + 余弦冗余度"两个指标联合挑选最值得留下的 token,没选中的不直接扔,而是聚类合并后回填进去,凑齐预算;token 进了 LLM 之后,在某一中间层再做一次 LLM 内部的文本感知合并,根据当前 query 的语义,把和问题真正相关的视觉 token 再筛一遍。两层各管一件事——外部管"哪些 token 信息量大且不重复",内部管"哪些 token 跟这道题相关"。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400, 'subGraphTitleMargin': {'top': 8, 'bottom': 16}}}}%%
flowchart TD
    A["32 帧视频<br/>6272 个视觉 token"] --> B
    subgraph EXT["LLM 外部压缩"]
        direction TB
        B["时空剪枝<br/>CLS 注意力贡献度选 top-k"] -->|"余弦相似度 < τ"| C["全局保留池<br/>高贡献且互不重复"]
        B -->|"相似度过高"| D["回收池"]
        D --> E["时空聚类合并<br/>DPC-KNN 压成代表 token"]
        E -->|"按原时空顺序回填"| C
    end
    C --> F["进入 LLM 逐层前向"]
    F --> G["文本感知合并(第 18 层)<br/>按 query 相关性 I(vᵢ) 保留 top-R%"]
    G --> H["约 2% 视觉 token<br/>FLOPs≈2.6%,性能 90.1%"]

关键设计

1. 时空剪枝:用贡献度和冗余度两个指标全局选 token,而不是分阶段切

两阶段方法的毛病在于把时间冗余和空间冗余当成可分离的两件事,先后独立打分,在极低保留率下这个假设直接失效、预算分配失衡。这里改成一次性在全部视觉 token 上联合评估。贡献度用 CLS token 的注意力分数 \(A_h = \text{Softmax}(Q_h K_h^\top / \sqrt{d})\) 来量化;遇到 SigLIP 这种没有 CLS token 的编码器,就退而用每个 token 对其余所有 token 的平均注意力当替代。光看注意力还不够——高注意力的 token 之间可能彼此高度相似,留下来就是浪费名额。所以选出 top-k 高注意力 token 后,再算每个候选与保留池中已有 token 的最大余弦相似度 \(S = \max_{p \in \mathcal{P}} \frac{c \cdot p}{\|c\|\|p\|}\),只有 \(S\) 低于阈值 \(\tau\)(即和池内已有内容足够不像)的候选才真正入池,否则打到回收池。如此迭代直到保留池填满。这样挑出来的 token 既高贡献又互不重复,从根上避开了两阶段切歪预算的问题。

2. 时空聚类合并:回收池里的 token 不丢,聚类压一压再回填

被踢进回收池的 token 注意力低,但成片地直接丢掉会整块抹掉语义(比如某段背景虽不抢眼却承载场景信息)。这里用 DPC-KNN 聚类把它们压缩后保留下来:对回收池里每个 token 算局部密度 \(\rho_i\) 和到更高密度 token 的最短距离 \(\delta_i\),以决策分数 \(\gamma_i = \rho_i \times \delta_i\) 挑出聚类中心,其余 token 归到最近中心、取均值合成一个代表 token,最后按原始时空顺序回填进保留池。于是最终保留池里有两种 token:一批是高贡献精选出来的,一批是聚类压缩后的"信息补充",整体语义结构不至于因为剪枝出现大窟窿。

3. 文本感知合并:进了 LLM 再按 query 相关性筛一遍,用全部文本 token 的注意力而非最后一个

像 FastV 那种 LLM 内部剪枝只拿最后一个 token 的注意力当选择标准,在 RoPE 相对位置编码下会偏向相邻 token,引入位置偏差,还削弱了关键查询词的语义影响。这里换成用文本对视觉的整块交叉注意力:从注意力矩阵里取出文本 token 到视觉 token 的子矩阵 \(A_{qv}\),对每个视觉 token 取最大交叉注意力分数 \(A_m\) 并归一化,同时算它与所有文本 token 的最大余弦相似度 \(S_m(v_i)\),两者加权融合成决策分数

\[I(v_i) = (1-\lambda) \cdot A_m^{\text{norm}} + \lambda \cdot S_m^{\text{norm}}\]

保留 top-R% 的视觉 token,被裁掉的按余弦相似度合并进最近的保留 token。用全部文本 token 的注意力是为了在全局范围定位和 query 最相关的视觉信息,再用余弦相似度这一项去稀释位置敏感性——在 token 极少时,这次 query 引导的二次压缩对保住关键信息尤其关键。

一个完整示例:一段 32 帧视频怎么从 6272 个 token 压到约 125 个

以 LLaVA-OneVision-7B、2% 保留率为例走一遍。32 帧每帧 196 个视觉 token,进来时共 6272 个。先做时空剪枝:在全部 6272 个 token 上按 CLS 注意力排序选 top-k,逐个用余弦相似度 \(\tau=0.7\) 卡冗余,相似度过高的被打进回收池——一轮下来保留池收了一批高贡献、彼此不像的 token,回收池里堆着剩下的大多数。接着对回收池跑 DPC-KNN(聚类比率约 0.3 ⚠️ 以原文为准),把成片的低分 token 压成若干聚类中心代表 token,按原时空顺序回填,凑到外部压缩的目标预算。这批 token 进入 LLM,正常往前算到第 18 层时触发文本感知合并:此时已经能看到 query 文本,按 \(I(v_i)\) 对当前视觉 token 重排,保留 top 50%、其余合并,最终留下约 2%(每帧约 4 个、合计约 125 个)视觉 token 继续往后算。整条链路 FLOPs 降到原始的约 2.6%,性能仍保住基线的 90.1%。

损失函数 / 训练策略

整个方法完全无训练(training-free),作为即插即用模块兼容现有Video-LLM,无需修改原始模型参数。超参数设置:相似度阈值 \(\tau=0.7\),聚类比率0.3,LLM内部从第18层开始激活,保留top 50%视觉token,\(\lambda=0.5\)

实验关键数据

主实验

在LLaVA-OneVision-7B上的对比(5个benchmark平均分):

保留率 方法 FLOPs(T) MVBench EgoSchema MLVU LVBench VideoMME 均分 Score%
100% 原始 41.4 58.3 60.4 47.7 56.4 58.6 56.3 100%
2% FastVID 1.2 48.0 52.3 37.6 47.3 49.2 46.9 83.3%
2% HoliTom 1.1 52.6 57.2 37.4 48.5 51.1 49.4 87.7%
2% Ours 1.1 52.8 57.6 40.3 50.8 51.8 50.7 90.1%

跨骨干(LLaVA-Video-7B, 2%保留率):

方法 FLOPs比 MVBench MLVU VideoMME 均分 Score%
HoliTom 1.7% 50.2 39.9 55.3 48.5 82.5%
Ours 1.7% 50.1 40.8 56.2 48.8 83.0%

消融实验

配置 5%保留率均分 2%保留率均分 说明
Full model 53.7 50.7 完整方法
w/o 内部合并 53.4 50.4 去掉文本感知合并,掉0.3
HoliTom(两阶段) 52.9 49.4 两阶段基线,差距尤其在低保留率更大

关键发现

  • 在极低保留率(2%,相当于每帧约4个token)下,相对于两阶段方法HoliTom提升2.4%(Score%: 87.7→90.1),验证了统一时空分配的优势
  • 跨骨干实验(LLaVA-Video-7B、LLaVA-OV-0.5B、Qwen2.5-VL-7B)均有效,证明方法的通用性
  • 文本感知合并在低保留率下贡献更明显,说明query引导的二次压缩在token极少时对保留关键信息更重要
  • FLOPs可降至原始的约2.6%,实际端到端推理延迟和显存消耗大幅降低

亮点与洞察

  • 全局保留池设计:将token压缩从分阶段独立优化变为全局联合优化,类似于将"局部贪心"升级为"全局视角",这个思路可迁移到任何涉及多维度资源分配的场景
  • 回收池的聚类回填:不是简单丢弃低分token,而是聚类合并后回填,保留信息完整性——这是一个实用的"信息不浪费"原则
  • 完全无训练的即插即用设计:无需微调模型权重,直接兼容多种Video-LLM,降低部署门槛

局限与展望

  • 依赖视觉编码器的注意力分数质量,如果编码器本身注意力分布不理想,剪枝效果可能受限
  • 相似度阈值 \(\tau\) 和聚类比率等超参数需要手动设置,未探索自适应调整
  • 仅在多选题benchmark上评估,缺少开放式生成任务的评估(如视频描述)
  • 文本感知合并需要在LLM内部操作,对于不开放中间层的API模型难以应用

相关工作与启发

  • vs HoliTom: HoliTom用动态规划做帧分割+两阶段剪枝合并,本文用全局保留池统一处理。HoliTom在中等保留率表现不错但极低保留率下退化更快
  • vs FastV: FastV仅在LLM内部用最后token的attention做剪枝,缺乏外部压缩,且受位置偏差影响。本文在外部和内部双重压缩,且用多token注意力避免偏差
  • vs VisionZip: VisionZip仅做空间压缩,不处理时间冗余,在视频场景下效果有限

评分

  • 新颖性: ⭐⭐⭐⭐ 全局统一时空分配的思路比两阶段更优雅,但核心技术组件(注意力选择+聚类合并)较常规
  • 实验充分度: ⭐⭐⭐⭐⭐ 多骨干、多benchmark、多保留率的系统评估,消融实验覆盖全面
  • 写作质量: ⭐⭐⭐⭐ 论文结构清晰,图示直观
  • 价值: ⭐⭐⭐⭐ 对Video-LLM的实际部署有较高实用价值,2%保留率下90%性能对部署场景很有吸引力