HybridToken-VLM: Hybrid Token Compression for Vision-Language Models
Authors: Jusheng Zhang, Xiaoyang Guo, Kaitong Cai, Qinhan Lv, Yijia Fan, Wenhao Chai, Jian Wang, Keze Wang Affiliations: Sun Yat-sen University, Princeton University, Snap Inc. Year: 2025 Code: 暂未开源
1. Motivation (研究动机)
1.1 背景:VLM 视觉 token 的计算瓶颈
现代 VLM (如 LLaVA) 使用 ViT-L/14 将图像编码为 个 patch token,输入 LLM 后注意力计算复杂度为 ,对于 ,单层即需约 浮点运算,迅速耗尽 GPU 显存。
1.2 现有方案的两难困境
| 压缩范式 | 代表方法 | 核心限制 |
|---|---|---|
| 连续压缩 (Pooling/Aggregation) | VoCo-LLaMA, Q-Former | 语义稀释 (Semantic Dilution): ,高频纹理噪声主导熵 ,淹没离散语义 |
| 离散量化 (VQ Codebook) | VQ-VAE, MoVQ | 粒度间隙 (Granularity Gap): $I(z_d; D) \le \log |
| 结构化剪枝 (Token Pruning) | ToMe, FastV, PDrop | 结构坍塌 (Structure Collapse): 去除 token 破坏拓扑先验,低 token 区间性能骤降 |
核心洞察: 单 token 连续瓶颈无法同时编码离散语义 和连续细节 ——这是一个表征容量冲突 (Capacity Conflict),而非简单的信息丢失问题。
2. Idea (核心思想)
在压缩前注入少量离散语义锚点,使高层语义在瓶颈前就被显式保留,连续通道则专注于细粒度细节,两者通过解纠缠注意力掩码融合为单个混合 latent。

Figure 1 解读: 对比三种压缩策略。(a) VoCo-LLaMA 将 576 个 patch 直接压缩为 1 个 <voco> token,丢失语义结构;(b) HTC-VLM 在 576 个连续 patch 前添加 4 个 MGVQ 离散语义 token,形成 580 token 混合序列,再通过 Disentanglement Mask 压缩为 1 个 <voco> token,同时保留语义和视觉细节。
3. Method (方法)
3.1 整体架构
Figure 2 解读: HTC-VLM 完整架构对比。(a) Pooling 方法直接平均/池化视觉 embedding,丢失空间信息;(b) VoCo-LLaMA 用 Vision Encoder + Media Projector 压缩为单 token;(c) HTC-VLM (本文) 包含双通道:连续通道 (CLIP ViT-L → Linear Projector → 576 patch embeddings) 和离散通道 (MGVQ → 2-layer MLP → 4 discrete tokens),拼接后经 Disentanglement Attention Mask 压缩为 <voco> token,最终输入 LLaVA 进行推理。
3.2 双通道设计
连续通道:细粒度细节
- : CLIP ViT-L/14 (frozen)
- : 线性投影 ,对齐 LLM embedding 空间
- 保留高维流形上的纹理梯度、姿态变化等连续特征
离散通道:高层语义锚点
- : MGVQ 量化器 (Multi-Group VQ), codebook, groups, 16x 下采样
- : 量化特征
- : 2-layer MLP (, GELU 激活)
- 输出 : 4 个离散语义 token
3.3 融合与 Disentanglement Bottleneck
混合序列构建
关键设计:离散 token 放在连续 patch 前面 (Pre-fusion),利用 autoregressive transformer 的 “Prompting Effect”,使语义锚点作为后续 patch 处理的语义上下文。
Disentanglement Attention Mask
三个关键约束:
- 视觉 token 互相独立: 内部 token 之间 时注意力为 ,防止 oversmoothing
- 信息瓶颈强制: 文本 token 不能直接 attend 到原始视觉 patch,只能通过
<voco>获取视觉信息 - Star-Graph 拓扑: 信息流仅从 和 单独流向
<voco>,形成星形图结构
<voco> Latent 提取
最终 transformer 层对应 <voco> 位置的隐状态即为压缩后的混合 latent 。
3.4 训练目标
基于变分推断框架,训练目标可分解为 ELBO:
实际训练 loss:
近似展开为:
梯度动力学: 增强语义聚类 (最大化 ), 细化细节表征空间。
3.5 伪代码
def htc_vlm_forward(image, text, E_v, P_v, Q, P_d, E_t, llm):
"""HTC-VLM Forward Pass"""
# Continuous channel: 576 patch embeddings, R^{576x4096}
V = P_v(E_v(image))
# Discrete channel: MGVQ quantize + MLP project to 4 anchors, R^{4x4096}
q = Q(image) # quantize to R^{14112}
v_d = P_d(q) # project to 4 discrete anchors
# Hybrid sequence construction (580 tokens)
V_hy = concat(v_d, V) # discrete anchors before continuous patches
W = E_t(text) # text embeddings
X = concat(V_hy, voco_token, W) # full input sequence
# Star-graph disentanglement attention mask
M_hy = build_disentanglement_mask(X)
# - V_hy tokens: block mutual attention (i!=j -> -inf)
# - Text W: block attention to V_hy, allow to <voco>
# Forward with masked attention
logits = llm(X, mask=M_hy)
# Extract <voco> hidden state as compressed hybrid latent
z = llm.last_hidden_state[voco_pos]
return logits3.6 信息论分析
Theorem 1 (Semantic-Detail Capacity Conflict): 对于纯连续压缩,当 有界时, as increases,因为高频细节 () 的 Entropy Domination 饱和了有限容量。
Theorem 2 (Disentangled Sufficiency): 混合先验 降低了 ,使得 的连续容量可专用于编码细节 :
混合 latent 作为联合分布 的充分统计量。
4. Experimental Setup (实验设置)
4.1 训练配置
| 配置项 | 值 |
|---|---|
| Vision Encoder | CLIP-ViT-L/14-336px (Frozen) |
| Continuous Projector | Linear: 1024 → 4096 |
| Discrete Quantizer | MGVQ: K=16384, G=8 |
| Discrete Projector | MLP: 14112 → 8192 → 4096 (GELU) |
| LLM Backbone | LLaVA-1.5 (Vicuna-7B-v1.5) |
| Input Resolution | 336 × 336 |
| Sequence Length | 580 visual tokens (4 discrete + 576 continuous) |
| Batch Size | 256 |
| Optimizer | AdamW () |
| Learning Rate | (Cosine Decay) |
| Warmup Steps | 1,500 |
| Precision | bfloat16 |
| Hardware | 8× NVIDIA A100 (80GB) |
| Total Training | ~90 GPU-hours |
4.2 代码结构映射 (推测)
| 模块 | 功能 | 关键参数 |
|---|---|---|
vision_encoder | CLIP ViT-L/14 提取 576 patch features | frozen, 336px |
continuous_projector | 线性投影对齐 LLM 维度 | 1024 → 4096 |
mgvq_encoder | MGVQ 量化图像为离散 codes | K=16384, G=8, 16x downsample |
discrete_projector | 2-layer MLP 映射离散特征 | 14112 → 8192 → 4096, GELU |
disentanglement_mask | 构建 Star-Graph 注意力掩码 | 阻止 V↔V 互注意力, 强制 text→<voco> |
voco_token | 可训练压缩 token | 1 token, R^{4096} |
llm_backbone | Vicuna-7B-v1.5 with masked attention | 标准 autoregressive |
5. Experimental Results (实验结果)
5.1 主实验:单 token 压缩 (580:1)
| 模型 | Tokens | GQA | VQAv2 | MMBench | MME | POPE | SEED | SQA | Avg(%) |
|---|---|---|---|---|---|---|---|---|---|
| Upper Bound | 576 | 61.1 | 77.7 | 64.0 | 1487.2 | 85.0 | 57.9 | 66.5 | 100% |
| Q-Former | 1 | 51.1 | 63.4 | 51.7 | 1079.7 | 77.3 | 47.2 | 62.7 | 57.2% |
| Avg. Pool | 1 | 52.9 | 65.0 | 55.5 | 1210.3 | 79.1 | 50.3 | 62.2 | 64.1% |
| VoCo-LLaMA | 1 | 57.4 | 71.8 | 57.9 | 1241.4 | 81.5 | 48.8 | 66.3 | 81.0% |
| HTC-VLM (ours) | 1 hybrid | 57.6 | 72.4 | 60.0 | 1265.2 | 82.8 | 49.8 | 67.7 | 87.2% |
| Lower Bound | 1 | 37.7 | 41.2 | 22.3 | 617.3 | 53.9 | 36.9 | 60.7 | 0% |
核心发现: HTC-VLM 在所有 7 个 benchmark 上全面超越 VoCo-LLaMA (+6.2% 平均保持率),尤其在语义密集型任务 (MMBench +2.1, SQA +1.4) 和细节敏感型任务 (POPE +1.3, MME +23.8) 上均有显著提升。
5.2 多 Token Budget 对比
| Budget | HTC-VLM | VoCo-LLaMA | SparseVLM | FastV | ToMe |
|---|---|---|---|---|---|
| 64 tok | 89.8% | 78.0% | 89.3% | 72.0% | 71.1% |
| 128 tok | 93.8% | 92.2% | 96.7% | 85.1% | 81.9% |
| 192 tok | 94.2% | 90.7% | 99.1% | 86.4% | 88.9% |
HTC-VLM 在全 token 范围内保持最平滑的性能衰减曲线,尤其在极端压缩 (1-4 token) 区间远超所有基线。
Figure 4 解读: Performance vs. Token Budget 曲线。HTC-VLM (蓝色实线) 在整个 1-576 token 范围内保持最平滑的衰减,尤其在 1-32 token 极端压缩区间仍保持稳定,而 VoCo-LLaMA 在 16 token 以下急剧下降。结构化剪枝方法 (ToMe, FastV, PDrop) 表现为阶梯式跳变,因为它们只支持特定粒度 ({64, 128, 192})。
5.3 注意力分析与语义解耦验证
Figure 3 解读: <voco> token 的注意力热力图对比。左图为 HTC-VLM,前 4 列对应离散语义 token,显示 <voco> 对离散锚点的注意力权重显著高于后续 image patch tokens,验证了离散锚点的语义引导作用。右图为 VoCo-LLaMA,注意力在所有 16 个 image patch 上分布均匀,缺乏语义聚焦。
5.4 表征探测 (Representation Probing)
| 表征类型 | Detail 任务 (D-10) | Semantic 任务 (S-10) |
|---|---|---|
| 离散 | 25.44% | 20.83% |
| 连续 | 27.19% | 26.67% |
| 混合 | 30.70% | 26.67% |
混合 latent 在两类任务上均取得最优,验证了压缩机制同时保留语义和细节的能力。
5.5 消融实验

Figure (Table 4) 解读: 消融实验总结页面,包含三组关键消融。(1) Hybrid vs. Non-Hybrid: 纯离散 33.3%、纯连续 81.0%、混合 87.2%,证明混合表征的必要性。(2) 离散 token 数量: 最优 (87.2%), 反而下降到 84.6%,说明过多离散 token 引入冗余。(3) 融合策略: Pre-fusion (离散在前) 最优 87.2%,Post-fusion 和 Mean fusion 均为 84.6%。
关键消融结果
| 消融维度 | 配置 | Retention |
|---|---|---|
| Hybrid vs. Non-Hybrid | Discrete-Only (441 tok) | 33.3% |
| Continuous-Only (576 tok) | 81.0% | |
| HTC-VLM (4+576 tok) | 87.2% | |
| 离散 token 数 | 1 / 2 / 4 / 8 | 83.9 / 84.9 / 87.2 / 84.6 |
| 融合策略 | Pre-fusion / Post / Mean | 87.2 / 84.6 / 84.6 |
| Anchor 类型 | Random Patches / Top-k Attn / K-Means / MGVQ | 82.5 / 85.1 / 85.8 / 87.2 |
| Mask 拓扑 | Full Graph / Star Graph | 85.4 / 87.2 |
5.6 推理效率
| 模型 | Latency (ms) | Throughput (img/s) | Memory (GB) |
|---|---|---|---|
| Vanilla LLaVA (576 tok) | 475 | 2.1 | 28.3 |
| SparseVLM (64 tok) | 165 | 5.6 | 15.8 |
| VoCo-LLaMA (1 tok) | 52 | 19.4 | 11.1 |
| HTC-VLM (1 tok) | 54 | 18.7 | 11.6 |
- HTC-VLM 延迟仅比 VoCo-LLaMA 多 2ms (MGVQ encoder ~6ms,可与 ViT 并行隐藏)
- 相比 Vanilla LLaVA 加速 7.9x,相比 SparseVLM 加速 8.8x
- MGVQ 额外成本可忽略:轻量 CNN,~6ms,远小于 ViT 的 28.5ms
5.7 MGVQ Codebook 消融
| 配置 | GQA | TextVQA | Avg. Retention |
|---|---|---|---|
| G=4, K=8192 | 55.1 | 66.3 | 82.4% |
| G=4, K=16384 | 56.0 | 67.4 | 84.1% |
| G=8, K=8192 | 56.8 | 68.5 | 85.2% |
| G=8, K=16384 (ours) | 57.6 | 69.7 | 87.2% |
| G=8, K=32768 | 57.4 | 69.4 | 86.9% |
最佳配置 ,更大 codebook () 引入训练不稳定,性能反降。
5.8 总结与思考
5.8.1 核心贡献
- 表征分析: 首次从信息论角度揭示单 token 连续瓶颈的 “Semantic-Detail Capacity Conflict”,证明纯连续压缩的根本局限性 (Theorem 1)
- 混合解纠缠框架: 提出 discrete semantic anchors + continuous detail carriers 的双通道设计,通过 Disentanglement Attention Mask 实现 Star-Graph 拓扑的信息融合
- SOTA 单 token 压缩: 580:1 压缩比下 87.2% 性能保持率,全面超越 VoCo-LLaMA (81.0%),且推理效率几乎相同
5.8.2 局限性
- 仅支持单图: 未探索多图/视频场景,temporal cues 可能与混合 token 设计有交互
- 外部 VQ tokenizer: MGVQ 是预训练的外部模型,非端到端联合学习,可能限制适应性
- 固定压缩比: 所有图像统一压缩为 1 token,缺乏自适应机制
5.8.3 启发与延伸
- 语义锚点思想的通用性: 离散 token 作为 “meta-instruction” 引导压缩的思路可迁移到视频 VLM 的时序压缩——每帧用少量离散 token 锚定关键语义,连续通道保留运动细节
- 与 KV Cache 压缩的关系: Disentanglement Mask 的 Star-Graph 设计本质上限制了 attention 的有效范围,类似于 StreamingLLM 的 attention sink 机制,可能可以结合
- 可变压缩率: 结合 token budget 实验 (Table 2),HTC-VLM 从 1 到 576 token 平滑扩展的特性暗示了一个自适应 token 分配策略的可能——根据图像复杂度动态选择压缩率