← 返回 2026-02-10

通过显式信息传输实现上下文压缩:修复LLM压缩器的结构瓶颈 Context Compression via Explicit Information Transmission

Jiangnan Ye, Hanqi Yan, Zhenyi Shen, Heng Chang, Ye Mao, Yulan He 📅 2026-02-03 👍 15 2026-07-13 08:35
上下文压缩 信息保持 最优传输 长上下文LLM 高效推理

将上下文压缩重构为显式信息传输,解决LLM压缩器的分配缺失和层间稀释两大瓶颈

前置知识

上下文压缩 (Context Compression)

上下文压缩是一种将长文本序列压缩为远少于原始长度的连续表示的技术。在LLM推理中,输入越长,KV缓存越大,推理延迟和内存占用也随之增长。上下文压缩的目标是把一段可能长达数千token的文本,压缩成几十到几百个“压缩token”(gist tokens),然后让解码器LLM仅基于这些压缩token来完成下游任务(如问答、摘要),从而大幅降低推理开销。压缩的质量直接决定了解码器能获得多少原始上下文中的有用信息。

本文的核心贡献就是改进上下文压缩方法,因此理解这个任务的定义、目标和评价方式是阅读本文的基础。

LLM-as-a-Compressor 范式

这是当前主流的软上下文压缩范式。其核心思路是复用一个预训练LLM作为压缩器:将原始上下文token和一组可学习的压缩token(gist tokens)拼接后送入LLM,通过自注意力机制让压缩token从上下文中“吸收”信息,最终取最后一层压缩token的隐状态作为压缩表示。代表性工作包括Gist Token、ICAE、500×、Activation Beacon等。这种方法通常需要对LLM进行持续训练或LoRA微调来适配压缩任务。

本文指出了这个范式的两个结构性缺陷并提出了替代方案,理解这个范式是理解本文动机的关键前提。

最优传输 (Optimal Transport, OT)

最优传输是数学中的一个经典理论,最初由Monge提出用于解决“如何以最小总成本将一堆沙子搬运到指定位置”的问题。在现代机器学习中,OT被广泛用于度量两个概率分布之间的距离或寻找最优匹配方案。其核心是求解一个传输计划矩阵 $\Pi$,使得在满足行和列的边际约束下,总传输成本 $\sum_{i,j} \Pi_{i,j} C_{i,j}$ 最小化,其中 $C$ 是成本矩阵。Cuturi (2013) 引入熵正则化使OT可以用Sinkhorn算法高效求解,大幅推动了OT在深度学习中的应用。

ComprExIT的核心创新之一就是用最优传输来协调压缩token之间的信息分配,取代各自为政的自注意力机制。理解OT才能理解为什么作者选择这个框架。

信息稀释 (Information Dilution)

在深度神经网络的前向传播过程中,随着层数加深,早期层捕获的细粒度特征可能被后续层的抽象表示逐渐覆盖或稀释。具体到LLM压缩场景,压缩token在中间层可能已经汇聚了丰富的上下文信息,但经过后续若干层的残差更新和注意力变换后,这些信息可能被“冲淡”,导致最终层的表示反而不如中间层的信息量大。本文通过实验(Figure 4)直观地展示了这一现象:使用不同层隐状态进行压缩时,性能并非单调递增,最后一层的表现最差。

这是本文识别的两个核心瓶颈之一(深度维度的信息稀释),ComprExIT的深度传输阶段正是为了缓解这个问题。

Sinkhorn 算法

Sinkhorn算法是一种迭代算法,用于高效求解熵正则化的最优传输问题。它通过对传输计划矩阵交替进行行归一化和列归一化操作来逼近最优解。设传输矩阵为 $M_{i,j} = \exp(-C_{i,j}/\lambda)$($\lambda$ 为正则化强度),Sinkhorn迭代不断执行 $M \leftarrow M \oslash (M \mathbf{1})$ 和 $M \leftarrow M \oslash (\mathbf{1}^T M)$($\oslash$ 为逐元素除法),直到收敛。由于只涉及矩阵乘法和逐元素操作,Sinkhorn算法非常适合GPU并行计算,且迭代次数(论文中用30次)通常就能得到足够精确的解。

ComprExIT使用Sinkhorn算法来求解信息传输计划,这是方法实现层面的核心算法组件。

研究动机

现有LLM-as-a-Compressor方法在上下文压缩任务上仍然显著落后于使用完整上下文的基线。论文通过一个精心设计的信息保留度实验揭示了根本原因:作者让各种压缩方法生成的gist tokens去“重建”原始上下文,并测量解码器的重建负对数似然(NLL)。结果发现,下游任务F1越低的方法,重建NLL越高——这意味着现有压缩器丢失了大量原始信息。具体而言,在SQuAD和HotpotQA上的实验中,Beacon的平均F1仅为25.11(1B模型),ICAE为56.16,而无压缩的prompt tuning基线为66.72。这个巨大的性能差距直接反映了信息保留的不足。作者进一步通过分析ICAE的注意力分布发现,不同gist token的注意力权重高度相关(Pearson相关系数接近1),且注意力聚合矩阵的奇异值衰减极为陡峭——这说明多个压缩token在收集几乎相同的信息,大量上下文区域被集体忽略。

本文的目标是本文的目标非常明确:从结构层面诊断并修复现有LLM压缩器的信息保留缺陷。具体而言,作者要解决两个维度的问题——宽度维度上,多个压缩token之间缺乏协调,导致信息收集高度冗余;深度维度上,有用信息在层间传播过程中被逐渐稀释。最终目标是设计一个轻量级的压缩框架,仅增加约1%的可训练参数,就能在12个数据集上显著超越现有压缩方法的性能,同时保持甚至提升压缩速度。

与已有工作不同的是,现有工作大多在LLM-as-a-Compressor范式内部做改进——调整注意力掩码、改变gist token的位置编码、优化训练目标等——但始终没有跳出“用LLM自身的自注意力机制来完成压缩”这个基本框架。本文的独特切入角度是:不再试图“修好”LLM的注意力机制,而是将LLM仅作为冻结的特征提取器,把压缩问题从LLM架构中解耦出来,重新建模为一个“显式信息传输”问题。这个视角转换的核心洞察在于,自注意力的独立归一化机制(每行独立softmax)天生无法实现跨token的协调分配,而残差层传播天生存在信息稀释——这两个缺陷是架构层面的,无法通过微调来根本解决。

核心方法

ComprExIT的核心直觉可以用一个图书馆的比喻来理解:想象一个图书馆(冻结的LLM),书架上不同楼层(不同层)存放着不同类型的信息——底层是字面细节,高层是抽象语义。传统方法(如ICAE)相当于派出几个“采购员”(gist tokens),让他们从一楼走到顶层,在每一层都随手拿一些东西,最后到达顶层时带走的物品就是压缩结果。问题在于:采购员们没有商量,可能都在同一排书架前停留,而且越往上走,底层拿的细节越容易被丢弃。ComprExIT的做法不同:它在图书馆的每一层都设置“中转站”(token anchors),从每一层直接提取有用信息而不依赖逐层传递;然后通过一个全局协调的“分发方案”(最优传输计划)将这些信息合理分配给最终的压缩槽位,确保每个槽位覆盖不同的上下文区域。整体技术路线分为两步:先深度传输(多层聚合形成token anchors),再宽度传输(通过OT分配到压缩槽位)。

ComprExIT与已有方法最本质的区别在于它将压缩从LLM的前向传播过程中完全解耦。传统方法(ICAE、500×、Beacon等)的压缩过程完全嵌入在LLM的层间计算中——压缩token和上下文token一起经历所有层的自注意力和前馈变换,信息的汇聚依赖于自注意力的自然归一化。ComprExIT则采取了一种完全不同的架构:先用冻结的LLM对上下文做一次前向传播,收集所有层的隐状态;然后用两个轻量级的外部模块(深度传输和宽度传输)来完成压缩。关键创新有两点:(1)深度维度——通过自适应的多层门控聚合,直接从各层读取特征而非依赖逐层传播,从而绕过信息稀释;(2)宽度维度——用最优传输而非独立自注意力来分配信息,通过共享的边际约束强制压缩token覆盖互补的上下文区域。这种解耦不仅解决了结构性缺陷,还带来了约1%参数增量和2倍压缩速度提升的实际收益。

方法步骤详情

ComprExIT的方法分为两个阶段,按计算顺序从深度到宽度依次进行。第一步:冻结LLM编码。将上下文序列 $\mathbf{x} = (x_1, \ldots, x_N)$ 送入冻结的LLM进行前向传播,收集所有 $L$ 层的隐状态 $\{h_t^{(\ell)}\}_{\ell=1}^L$,其中 $t$ 为token位置索引。第二步:深度传输到Token Anchors。对每个token位置 $t$,首先计算层级结构上下文 $c_t = \sum_{\ell=1}^L \pi_\ell h_t^{(\ell)}$($\pi_\ell$ 为可学习的层先验权重),然后基于此上下文执行门控注意力聚合 $\tilde{h}_t = \sum_{\ell=1}^L \text{softmax}_\ell(\langle W_q c_t, W_k h_t^{(\ell)} + e_\ell \rangle / \tau) \cdot W_v h_t^{(\ell)}$,得到每个token的锚点表示 $\tilde{h}_t$。这里 $e_\ell$ 是可学习的层位置嵌入,$\tau$ 是温度参数。第三步:宽度传输到压缩槽位。首先将 $N$ 个token anchors均匀划分为 $K$ 个局部区域 $F_k$,每个区域内取平均得到接收端表示 $r_k$;然后计算发送端-接收端效用矩阵 $U_{t,k} = \cos(W_u \tilde{h}_t, W_u r_k)$;再通过线性层+softmax预测每个发送端的信息容量 $\rho_t = \text{softmax}_t(W_\rho \tilde{h}_t)$,接收端使用均匀容量 $\rho_k = 1/K$。最后求解熵正则化的最优传输问题 $\min_{\Pi \geq 0} \sum_{t,k} \Pi_{t,k} C_{t,k}$($C_{t,k} = 1 - U_{t,k}$),通过Sinkhorn算法(30次迭代)得到传输计划 $\Pi$。第四步:生成压缩表示。每个压缩槽位聚合信息 $z_k = \text{MLP}(\sum_t \Pi_{t,k} W_g \tilde{h}_t)$,最终压缩序列为 $Z = (z_1, \ldots, z_K)$。Sinkhorn算法在固定窗口大小(如 $T=128$)的分段上运行,兼顾全局协调和局部语义顺序。

技术新颖性

ComprExIT的技术新颖性体现在三个层面。首先,范式层面的突破:这是第一个将LLM完全冻结、仅将其作为特征提取器的软压缩方法,打破了“压缩过程必须嵌入LLM前向传播”的隐含假设。此前所有方法(ICAE、500×、Beacon、UniGist等)都在LLM内部完成压缩,都需要对LLM进行持续训练。其次,深度传输的创新:受Denseformer启发的多层门控聚合机制是首次被引入压缩场景。它不同于简单的特征拼接或残差连接——门控权重是token-wise和task-conditioned的,即不同类型的token(实体词vs功能词)会自动选择不同层的特征,这在实验中(Figure 6右侧热力图)得到了直观验证。第三,宽度传输的创新:将最优传输引入压缩分配是全新的思路。传统自注意力中每个压缩token独立softmax归一化,天然无法实现协调分配;而最优传输通过共享的边际约束,强制所有压缩token联合分配,从数学上保证了互补覆盖。

LLM-as-a-Compressor范式与ComprExIT范式的对比
Figure 2: LLM-as-a-Compressor范式与ComprExIT范式的对比
ComprExIT中的层选择分析
Figure 6: ComprExIT中的层选择分析

实验结果

ComprExIT在12个数据集上进行了全面实验,结果一致且显著。在域内QA任务上(Llama-3.2-1B),ComprExIT的平均F1达到66.55,比最强压缩基线ICAE的56.16高出18.50%,且与无压缩的prompt tuning基线(66.72)仅差0.17%。在Llama-3.2-3B上,ComprExIT的平均F1为72.88,比ICAE的65.92提升10.56%。具体到单个数据集,ComprExIT在SQuAD上F1为68.08(ICAE 50.21,提升35.6%),在NewsQA上为49.12(ICAE 33.73,提升45.6%),在HotpotQA上为68.40(ICAE 57.04,提升19.9%)。在域外泛化实验中,ComprExIT在6个未见QA数据集上的平均F1达到51.00(1B模型),比ICAE的38.94提升30.97%。在更高压缩比下,ComprExIT在8×压缩时的平均F1(58.66)甚至超过了ICAE在4×压缩时的表现(56.16),显示了极强的压缩效率。在8B模型上,ComprExIT的平均F1(76.48)甚至略超无压缩的prompt tuning基线(75.92),证明了方法在更大模型上的优势。在8k长上下文设置下,ComprExIT比prompt tuning基线提升18.0%的F1,比ICAE提升46.6%。消融实验表明,去除协调分配模块后平均F1下降4.61点,仅使用单层特征时(最后一层)下降17.20点,验证了两个核心组件的贡献。延迟分析显示,ComprExIT在上下文长度为512时的端到端延迟为10.01秒,ICAE为10.59秒,且压缩阶段ComprExIT仅需0.18秒(ICAE 0.43秒),压缩速度提升超过2倍。在摘要任务(XSum)上,ComprExIT的ROUGE-1达到0.333,超越ICAE的0.324和prompt tuning的0.320。在事实检查任务(FEVER)上,ComprExIT的F1为64.39,超过prompt tuning的61.97和ICAE的59.24。

六个QA基准数据集上的实验结果(域内)
Table 1: 六个QA基准数据集上的实验结果(域内)
ComprExIT关键设计消融实验
Table 2: ComprExIT关键设计消融实验
延迟分析结果
Table 3: 延迟分析结果
可扩展性分析:更高压缩比、更大模型、更长上下文
Table 4: 可扩展性分析:更高压缩比、更大模型、更长上下文
六个域外QA基准数据集上的实验结果
Table 8: 六个域外QA基准数据集上的实验结果
信息分配模式分析
Figure 5: 信息分配模式分析
ICAE和ComprExIT的信息分配对比
Figure 7: ICAE和ComprExIT的信息分配对比
查看结构化数据
任务指标本文基线提升
SQuAD (1B模型) F1 68.08 50.21 (ICAE) +35.6%
NewsQA (1B模型) F1 49.12 33.73 (ICAE) +45.6%
HotpotQA (1B模型) F1 68.40 57.04 (ICAE) +19.9%
域内平均 (1B模型) Avg F1 66.55 56.16 (ICAE) +18.5%
域内平均 (3B模型) Avg F1 72.88 65.92 (ICAE) +10.6%
域外平均 (1B模型) Avg F1 51.00 38.94 (ICAE) +31.0%
8×压缩 (1B模型) Avg F1 58.66 50.07 (ICAE) +17.2%
16×压缩 (1B模型) Avg F1 52.53 48.82 (ICAE) +7.6%
8B模型域内平均 Avg F1 76.48 70.41 (ICAE) +8.6%
8k长上下文 (1B模型) Avg F1 43.97 30.00 (ICAE) +46.6%
XSum摘要 (1B模型) ROUGE-1 0.333 0.324 (ICAE) +2.8%
FEVER事实检查 (3B模型) F1 64.39 59.24 (ICAE) +8.7%

局限与改进

作者在论文中明确承认了两个主要局限。首先,由于计算资源限制,ComprExIT未在更大的骨干模型(如32B或70B)和更长的上下文(如32k或128k token)上进行实验。目前的实验仅覆盖了1B、3B和8B模型,以及最长8k的上下文长度。其次,ComprExIT目前仅在纯文本LLM上进行了实验,将其扩展到视觉-语言模型(VLM)的任务留待未来工作。从个人观察角度,ComprExIT的一个潜在局限是其Sinkhorn算法的窗口大小选择——论文使用固定窗口 $T=128$,虽然这能保持局部语义顺序,但在处理跨多个段落的长程依赖时可能受到限制,尤其是当关键信息分散在超过窗口大小的范围内时。此外,ComprExIT在RelationExtraction这类超短上下文(平均30 token)的数据集上反而不如ICAE,因为ICAE和500×在此场景下的实际压缩比远低于4×,这暴露了ComprExIT在极短上下文场景下可能没有明显优势。论文的主要实验在question-unaware设置下进行,未充分探索question-aware压缩策略的效果。

独立分析的弱点

虽然ComprExIT在多个维度上取得了显著提升,但仍有几个值得关注的弱点。第一,Sinkhorn窗口大小 $T=128$ 是一个硬编码超参数,在处理超长上下文(如32k或128k token)时,固定窗口可能导致全局分配的“碎片化”——不同窗口之间的分配是独立的,跨窗口的长程依赖可能被忽略。改进方向是设计层次化的OT方案,先在局部窗口内分配,再在粗粒度上进行跨窗口协调。第二,深度传输中所有token共享同一组层先验 $\pi_\ell$,虽然门控注意力部分是token-wise的,但结构上下文的计算仍受限于共享权重。可以考虑让不同类型的token(如实体词vs功能词)拥有独立的层先验,进一步提升层选择的自适应性。第三,ComprExIT的压缩比是固定的(4×),但不同内容的信息密度差异很大——一篇简单的新闻和一篇技术论文可能需要不同的压缩比。动态压缩比分配(类似Tang et al., 2026的思路)可以与ComprExIT结合。第四,论文未充分探索ComprExIT在生成式任务(如对话、长文本续写)上的表现,QA任务的评估可能过于乐观地估计了其在开放式生成中的信息保留能力。第五,在极短上下文(如30 token的RelationExtraction)上,ComprExIT的协调分配优势无法体现,因为此时压缩token数量已经足够覆盖所有内容,OT带来的额外计算反而是浪费。

未来方向

基于ComprExIT的框架,有几个值得探索的方向。首先,将方法扩展到视觉-语言模型是一个自然而重要的方向——VLM的token序列通常更长(图像patch token),且不同模态的信息特征差异更大,深度传输的自适应层选择可能特别有价值。其次,探索自适应压缩比——根据输入内容的复杂度动态决定压缩多少token,而非使用固定的4×压缩比,可以在保持效率的同时更好地保留关键信息。第三,ComprExIT将LLM冻结作为特征提取器的范式打开了新的设计空间——可以尝试用不同的预训练模型(如专门的编码器模型而非生成式LLM)作为特征提取器,甚至用多模型集成来丰富特征来源。第四,最优传输框架本身有很多扩展可能,如使用partial OT(允许部分质量不传输)来实现“选择性压缩”,或使用unbalanced OT来放松边际约束以适应不同信息密度的输入。第五,将ComprExIT应用于LLM Agent的上下文管理——在多轮对话或工具调用场景中,历史上下文的压缩质量直接影响Agent的决策质量。

复现评估

从复现角度来看,ComprExIT具有较好的可复现性。论文提供了详细的方法描述和超参数配置(Table 9-11),包括学习率(1×10⁻⁴)、batch size(2048)、OT窗口大小(128)、Sinkhorn迭代次数(30)、投影维度(256)等。训练数据使用公开的SlimPajama(1B tokens)和MRQA数据集,所有基线方法也在相同设置下训练。基础设施方面,训练使用4×NVIDIA A100 GPU,BF16精度,延迟测试在NVIDIA L40S 48GB GPU上进行。ComprExIT的可训练参数仅约1%(相对于基础LLM),因此显存需求较低。不过论文提交时代码尚未开源(声明acceptance后发布),这在一定程度上增加了独立复现的难度。此外,论文未提供随机种子和多次运行的标准差,评估协议的随机性未被充分量化。整体而言,方法的数学描述清晰,实现难度中等偏低,主要工作量在于OT模块和多层聚合模块的实现。