论文

张量缓存:Transformer 的驱逐条件关联记忆

Tensor Cache: Eviction-conditioned Associative Memory for Transformers

模型推理KV Cache

摘要

自回归 Transformer KV 缓存随上下文长度线性增长;滑动窗口缓存限制内存,但完全丢弃被逐出的词元,因此窗口外的相关证据变得无法访问。我们引入了 \emph{Tensor Cache},这是一种二级缓存,它将滑动窗口 softmax 注意力作为第一级缓存(L1),将固定大小的外积快速权重内存作为第二级缓存(L2),由从窗口逐出的 KV 对提供数据。最近的词元仍然受到当地的关注;被驱逐的对被压缩到每层矩阵 $A$ 中,并通过单个矩阵乘法由未来的查询读取,利用线性注意力恒等式 $q_t(k_i \otimes v_i)=\langle q_t,k_i\rangle v_i$。学习标量门融合了 L1 和 L2 输出,并且对每头衰减和写入速率参数进行端到端训练。外积内存和读取身份是众所周知的;我们的贡献是它们用作专门由滑动窗口驱逐提供的 L2 缓存,加上识别出常见的分块均值训练快捷方式 $A\!\leftarrow\!λA\!+\!η(\bar k\!\otimes\!\bar v)$ 默默地引入每个块的 $C^2{-}C$ 虚假交叉词元外积,并通过相当于 float32 中每个词元写入的并行加权和扫描来缩小差距厄普西隆。在系统扩展、受控关联召回、长上下文语言建模和内存容量诊断方面,Tensor Cache 改进了有界状态基线的内存质量边界。