2024-12-1

基于 RoPE 后异常值消失的现象,发现应该在进行 RoPE 操作前对键矩阵进行 per-channel 的量化,和 KIVI 是平级的工作。

现象如下图,分别是 pre-RoPE 、post-RoPE;第三图是 value 矩阵的样式,没有显示出明显的异常分布。
Pasted image 20241201115208.webp
内核和卸载的过程省略,其他的步骤和 KIVI 类似

长上下文的内存瓶颈

Pasted image 20241201194206.webp

k-means 聚类算法

传统的 k-means 算法步骤如下:

  1. 初始化:随机选择 k 个簇中心。
  2. 分配:将每个数据点分配到与其最近的簇中心的簇中。
  3. 更新:计算每个簇的新中心,作为该簇中所有数据点的均值。
  4. 迭代:重复分配和更新步骤,直到簇中心不再变化或达到预定的迭代次数。

小结

KIVI 的核心观察结果类似,不过没有使用分组量化,而是离线使用校准的数据减少 Key 的精度损失。