PixelPrune 论文总结

论文标题:PixelPrune: Pixel-Level Adaptive Visual Token Reduction via Predictive Coding
机构:OPPO AI Center
作者:Nan Wang, Zhiwei Jin, Chen Chen, Haonan Lu
发表时间:2026年4月(arXiv:2604.00886v1)
代码https://github.com/OPPO-Mente-Lab/PixelPrune


1. 研究背景与动机

核心问题

文档理解(Document Understanding)与 GUI 交互是视觉语言模型(VLM)最高价值的应用场景,但这两类场景对计算资源的需求极为苛刻:

  • 精细文字和小型 UI 元素需要高分辨率输入
  • 高分辨率图像会产生数万个视觉 Token
  • 以 DocVQA 为例,一张文档图像经预处理后平均为 1775×2082 像素,产生 14,000+ 个 ViT patch,经 2×2 合并后仍有约 3,600 个 LLM Token

关键观察:像素级冗余

作者发现文档与 GUI 图像存在严重的像素级 patch 冗余

场景冗余来源patch 唯一性
文档白边、背景留白仅 22–71% 为像素唯一 patch
GUI纯色面板、工具栏、状态栏重复 patch 比例更高

现有方法的盲区

现有 VLM 加速方法存在两大不足:

  1. 操作层级太靠后:大多数方法在特征层(Post-ViT)减少 Token,ViT 编码器本身的巨大计算开销未被触及。实验显示在 4096² 分辨率下,ViT 编码器占总 prefill 延迟的 86%(Qwen3-VL-2B)
  2. 适用范围有限:多针对通用域图像的固定分辨率架构,对文档/GUI 高分辨率场景效果不佳

2. 方法:PixelPrune

2.1 核心思想

PixelPrune 将图像压缩领域的预测编码(Predictive Coding)思想——PNG、JPEG-LS 等无损格式的核心原理——迁移到 patch 级别,在 ViT 编码之前剔除冗余 patch。

工作粒度:32×32 像素块(对应 Qwen3-VL 中 ViT patch size p=16,merge factor M=2 后的一个 LLM Token)

2.2 算法流程

对每个 patch ,PixelPrune 计算其预测值 ,若预测误差在阈值内则剔除:

  • :严格像素相等(无损压缩),默认设置
  • :近似匹配(有损压缩,可控精度损失)

位置保持:保留的 patch 维持其原始 2D 坐标,不重新索引,确保 ViT 的 2D RoPE 和 LLM 的 MRoPE 正确感知空间布局。

2.3 三种预测策略

策略扫描方式预测邻居特点
Raster(光栅)行优先 1D 展开前一个 patch捕获行内水平连续性,行间过渡差
Serpentine(蛇形)奇偶行交替方向前一个 patch行间过渡更局部,部分捕获垂直连续性
Pred-2D(默认)光栅顺序左(A)、上(B)、左上(C) 三邻居同时利用水平与垂直冗余,压缩率最高

Pred-2D 预测规则(类 LOCO-I 中位数边缘预测器):

  • 若 C=B≠A(上与左上一致)→ 预测值 = A(左邻居)
  • 若 C=A≠B(左与左上一致)→ 预测值 = B(上邻居)
  • 其余情况 → 默认预测值 = A

所有策略均为 O(N) 时间复杂度,相对 ViT 的 O(N²) 注意力计算开销可忽略不计。

2.4 理论保证

命题 1(精确重建):当 时,原始 patch 序列可由压缩表示通过确定性解码器精确还原(数学归纳法可证)。

命题 2(有界重建误差):当 时,编码器使用预测值(而非原始值)作为后续预测的邻居,确保每个被省略 patch 的误差严格不超过 ,误差不累积传播。

2.5 与现有方法的位置对比

输入图像
   ↓
[PixelPrune] ← 本文方法(pre-ViT,加速整条流水线)
   ↓
ViT 编码器   ← IPCV(压缩中间特征)
   ↓
Patch Merger  ← ShowUI(ViT 内部跳过注意力)
   ↓
LLM 投影器   ← Q-Former / TokenPacker(Projector-based)
   ↓
LLM 解码器   ← FastV / ZipVL / PyramidDrop(Inside-LLM)

3. 实验设置

模型与数据集

  • 基础模型:Qwen3-VL(2B / 4B / 8B Dense 变体)
  • 文档理解(7 个基准):DocVQA、AI2D、ChartQA、InfoVQA、OCRBench、MMLongBench-Doc、olmOCRBench
  • GUI 理解(9 个基准):ScreenSpot V2(Web/Mobile/Desktop)、ScreenSpot Pro(Scientific/Office/OS/Creative/Development/CAD)

对比基线

基线说明
Full保留所有视觉 Token(上限参考)
Random随机选择 patch 以匹配 Token 预算
ConnComp基于 ShowUI 的连通分量策略随机保留
Resize下采样输入图像以匹配 Token 预算

4. 主要实验结果

4.1 文档理解(训练自由)

模型方法DocVQAChartQAInfoVQAOCRBench平均
2BFull92.778.872.386.969.2
2BPixelPrune92.077.071.587.368.3
2BRandom66.857.362.976.055.3
4BFull94.882.979.588.174.1
4BPixelPrune94.782.479.288.073.7
8BFull95.783.483.190.675.5
8BPixelPrune95.582.982.890.475.3

结论:PixelPrune 在三个模型规模上均接近 Full 精度(最大差距 0.2 点),显著优于 Random 和 ConnComp,并与 Resize 持平或更优(保留了 Resize 会丢失的细粒度细节)。

4.2 GUI 理解(Qwen3-VL-2B)

方法SSv2 AvgSSPro Avg
Full90.650.2
Resize89.043.4(-6.8!)
PixelPrune(训练自由)81.436.5
PixelPrune (+KD)90.647.6
  • 训练自由:在 position-sensitive 的 grounding 任务上存在差距
  • 知识蒸馏(+KD):在 SSv2 完全追平 Full,SSPro 仅差 2.6 点
  • GUI 图像冗余远高于文档:Web 仅保留 39.7% Token,Scientific 仅保留 26.3%

4.3 从头训练(GUI,消融)

训练推理SSv2 AvgSSPro Avg
FullFull81.831.5
PixelPrunePixelPrune84.831.4
PixelPruneFull85.131.6

跨模式泛化:用压缩 Token 训练、用全 Token 推理,性能不降反升(81.8→85.1),说明压缩训练可能提供了隐式正则化。


5. 效率分析

5.1 推理效率

数据集方法保留率FLOPs 加速TTFT 加速KV Cache 节省
MMLongBench-DocFull100%1.0×1.0×
MMLongBench-DocPixelPrune50.3%3.5×3.0×45%
SSPro ScientificFull100%1.0×1.0×
SSPro ScientificPixelPrune26.2%6.6×4.2×63%

5.2 训练效率

指标FullPixelPrune提升
前向传播7.9 s3.9 s2.0×
反向传播35.3 s18.0 s2.0×
峰值显存57.8 GB38.4 GB↓33.6%
总训练时间49.1 h25.3 h1.9×

6. 消融研究

6.1 预测策略比较

Pred-2D 在保持相近精度的前提下实现最低保留率,作为默认策略:

策略DocVQA 保留率GUI-Desktop 保留率
Raster70.1%64.4%
Serpentine70.0%64.1%
Pred-2D70.1%61.9%

6.2 匹配阈值与距离度量

  • Max 距离(逐像素最大差值)显著优于 MAE(均值会掩盖关键异常值)
  • (Max):DocVQA 保留率降至 45.1%,精度损失不足 1%
  • ChartQA 对 最敏感(需要空间布局推理)

6.3 ViT 不同深度剪枝的对比

剪枝位置ViT FLOPs 节省DocVQAChartQA
ViT 之后0%92.276.8
第17层后29%91.976.1
第4层后83%92.277.0
第0层后96%92.176.9
ViT 之前(PixelPrune)100%92.077.0

关键发现:对结构化图像,保留哪些 patch 比在哪个深度剪枝更重要;pre-ViT 剪枝在精度相当的情况下节省 100% ViT FLOPs。


7. 跨架构泛化

在 Qwen3.5(2B/4B/9B)上验证,平均精度差距 ≤ 0.8%,证明方法对 NaViT 系列架构具有良好泛化性。


8. 通用域图像表现

(Max)平均保留率MMBenchMMMU说明
0(精确)80–100%77.149.2精度几乎无损
0.0572–89%76.550.3大多数基准 ≤0.6% 下降
0.1068–83%76.548.2降幅仍温和(≤2%)

通用域图像冗余较少,但 PixelPrune 仍能自适应压缩,不会造成明显性能下降。


9. 主要贡献总结

#贡献核心价值
1量化文档/GUI 图像的像素级 patch 冗余提供了新视角:pixel-unique patch 仅占 22–71%
2提出参数自由的 pre-ViT 压缩方法 PixelPrune无需训练即可应用,具有精确/有界误差理论保证
3加速整条推理流水线ViT + Patch Merger + LLM 全程受益,最高 4.2× 推理加速
4与训练流程无缝集成1.9× 训练加速,33.6% 显存节省,支持跨模式泛化部署

10. 方法特点对比

维度PixelPrune典型后 ViT 方法
操作阶段pre-ViT(像素空间)post-ViT(特征空间)
参数需求无参数通常需要训练或学习参数
ViT 加速✅ 完全加速❌ ViT 开销不变
FlashAttention 兼容✅ 完全兼容部分方法不兼容
精度保证理论精确重建(τ=0)近似,无严格保证
适用场景文档、GUI(亦适用通用域)通用域为主

总结整理:基于 arXiv:2604.00886