PolarQuant: Quantizing KV Caches with Polar Transformation

2025年02月04日
  • 简介
    大型语言模型(LLMs)需要大量内存来存储其键值(KV)缓存中的嵌入,特别是在处理长距离上下文时。量化这些KV嵌入是一种常见的减少内存消耗的技术。本文介绍了一种新的量化方法——PolarQuant,该方法采用随机预处理和极坐标变换。我们的方法使用高效的递归算法将KV嵌入转换为极坐标,然后对生成的角度进行量化。我们的关键见解是,在随机预处理之后,极坐标表示中的角度呈现出一个界限紧密且高度集中的分布,并且这种分布具有可解析的形式。这种良好的分布消除了显式归一化的需要,而传统量化方法中这一步骤会引入显著的内存开销,因为量化参数(例如零点和比例)必须以全精度存储在每个数据块中。PolarQuant绕过了这一归一化步骤,从而实现了显著的内存节省。长上下文评估表明,PolarQuant将KV缓存压缩了超过4.2倍,同时在质量评分方面优于现有最先进的方法。
  • 作者讲解
  • 图表
  • 解决问题
    论文试图解决大型语言模型(LLMs)在处理长距离上下文时,KV缓存中存储Key-Value嵌入所需的大量内存问题。这是一个已知的问题,但PolarQuant提出了一种新的解决方案。
  • 关键思路
    关键思路是通过随机预处理和极坐标变换来量化KV嵌入。具体来说,PolarQuant将KV嵌入转换为极坐标,并对转换后的角度进行量化。由于经过随机预处理后,角度的分布变得高度集中且具有可解析的形式,因此无需显式的归一化步骤,从而节省了大量内存。这一方法不仅减少了内存消耗,还保持了较高的质量分数。
  • 其它亮点
    该论文展示了PolarQuant能够压缩KV缓存超过4.2倍,并且在长上下文评估中取得了最佳的质量分数。实验设计包括对不同长度上下文的测试,使用了多个数据集以验证方法的有效性。此外,作者提到该方法不需要为每个数据块存储全精度的量化参数,进一步减少了内存开销。目前尚未提及是否开源代码,但其提出的理论基础和实验结果值得进一步研究。
  • 相关研究
    最近在这个领域中,相关研究包括:1) DeepSpeed团队提出的8-bit KV缓存量化方法;2) Facebook AI发布的Int8量化技术;3) Google的研究人员探索的自适应量化策略。这些工作都在尝试减少LLMs的内存占用,而PolarQuant提供了一种全新的视角,特别是在极坐标变换的应用上。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问