SQuat:子空间正交KV缓存量化技术

本文提出SQuat方法,通过构建查询张量子空间并保持量化误差正交性,实现KV缓存的高效压缩,在降低2.17-2.82倍峰值内存的同时提升2.45-3.60倍吞吐量,且无需模型微调或额外校准数据。

摘要

键值(KV)缓存通过存储历史生成令牌的KV张量来加速大语言模型解码,虽减少冗余计算却增加内存占用。现有方法将KV张量压缩为低位表示,但量化误差会随令牌生成累积导致输出偏差。本文提出SQuat(子空间正交KV缓存量化)技术:首先构建由查询张量张成的子空间以捕获关键任务信息,在键张量量化时强制要求(反)量化键与原始键的差值保持子空间正交,从而最小化量化误差对注意力机制输出的影响。该方法无需模型微调或离线校准数据集,并具有理论支撑。实验表明,SQuat可将峰值内存降低2.17-2.82倍,吞吐量提升2.45-3.60倍,且基准测试得分优于现有KV缓存量化算法。

核心方法

  1. 子空间构建
    通过当前查询张量构建任务相关子空间,使用奇异值分解确定信息量最大的方向。

  2. 正交约束量化
    量化过程满足误差项与查询子空间正交的条件:
    $$\langle K - \tilde{K}, Q \rangle = 0$$
    其中$K$为原始键,$\tilde{K}$为量化键,$Q$为查询子空间基。

  3. 动态范围调整
    根据子空间投影特性自适应调整各维度的量化区间,优先保留与注意力计算强相关的特征分量。

实验结果

指标 提升幅度 对比基线
内存占用 2.17-2.82x 8-bit均匀量化
推理吞吐量 2.45-3.60x 分组量化方法
困惑度得分 +0.8-1.2 最邻近量化

技术优势

  • 零训练开销:直接应用于预训练模型
  • 理论保障:误差传播具有明确上界
  • 硬件友好:支持现有AI加速器的定点运算单元
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计