华为:LLM的注意力机制压缩算法

📖标题:RAZORATTENTION: EFFICIENT KV CACHE COMPRESSIONTHROUGH RETRIEVAL HEADS
🌐来源:arXiv, 2407.15891
🛎️文章简介
🔸研究问题:随着输入长度的增加,大语言模型(LLM)中的键值(KV)缓存成为部署长上下文模型的主要瓶颈。
🔸主要贡献:论文提出了RazorAttention算法,将KV缓存减少了70%以上,并且对性能没有明显影响。
📝重点思路
🔺相关工作
🔸量化:是一种经典而有效的神经网络压缩方法,包括FlexGen、Atom和QServe等方案。
🔸令牌丢弃:假设并非所有键值对在自注意力计算中都是必需的,因此可以通过识别和删除不重要的KV来节省内存使用。
🔸非MHA注意力:侧重于通过在注意力头之间共享缓存来减少KV缓存,包括MQA、GQA和MLA等方案。
🔺论文方案
🔸受到注意力头功能启发,首先识别检索头,包含“回声头”和“归纳头”两种影响长上下文的注意力头。
🔸对于检索头,维护一个完整的缓存来保留所有令牌的信息。
🔸对于非检索头,直接丢弃远程令牌并将丢弃的令牌压缩为一个“补偿令牌”,以改善由于截断KV缓存导致的精度下降。
🔸在ALiBi和RoPE中实验,KV缓存是否可以在精度损失最小的情况下被有效压缩。
🔎分析总结
🔸保护检索头的KV缓存能够保留大部分LLM的性能,保护随机头部则不会带来性能提升。
🔸非检索头内的远程令牌可以有效地压缩为补偿令牌,避免丢弃语义信息。
🔸RazorAttention算法能够成功压缩70%的KV缓存,而不会导致明显的性能下降。
🔸尚未探索不同的注意力头为什么表现差别这么大,缓存应该可以进一步压缩。
💡个人观点
论文将注意力机制的可解释性用于KV缓存的压缩,并通过引入补偿令牌来进一步提高性能。
附录


更多推荐
所有评论(0)