论文题目:Extreme Compression of Large Language Models via Additive Quantization
论文链接:https://arxiv.org/abs/2401.06118
已开源Github:https://github.com/vahe1994/AQLM
概要
研究背景:
随着大型语言模型(LLMs)的快速发展,如何在保持模型性能的同时减小模型大小和内存占用成为一个重要问题。这促使研究者寻求在低比特数(如2到3位)下压缩LLMs的方法,以便在 普通硬件 上 执行。
方案设计:
提出了一种基于加性量化(Additive Quantization, AQ)的算法,称为AQLM(Additive Quantization for Language Models),用于极端压缩LLMs。AQLM基于多码本量化(Multi-Codebook Quantization, MCQ)的经典方法,通过适应AQ算法来量化语言模型。AQLM通过学习可训练的码本(codebooks)来近似权重矩阵,同时保持每层和Transformer块的输出近似不变。此外,AQLM还引入了层内微调技术,通过在量化后对剩余参数进行微调来进一步减少量化误差。
权重组通过从码本中选择相应索引的代码之和来表示
实验结论:
- 性能提升: 使用AQLM(Additive Quantization for Language Models)算法在
2比特 压缩下,LLama 2模型的性能得到了显著提升。具体来说,将70亿参数的模型压缩到2比特每参数时,AQLM将困惑度(perplexity)降低到3.94,相对于最佳先前工作提高了0.22点(Wiki-Text2)。
-
与现有技术比较: AQLM在2到4位每参数的压缩率下,优于现有的量化技术,如GPTQ和QuIP。这表明AQLM在极端压缩场景下,特别是在2比特每参数的压缩下,提供了更高的准确性。
-
性能与压缩比的关系: 随着压缩比的增加,AQLM的性能提升幅度也有所变化。在 2到2.1比特 每参数的范围内,性能提升最为显著,而在3到4比特每参数的范围内,性能提升相对较小,这可能是因为3和4比特的量化器已经相当接近未量化(FP16)模型的困惑度。
-
微调的重要性: 实验中还验证了微调过程的重要性。通过微调整个模型或仅微调AQ参数,可以实现与不进行微调相当的性能。这表明AQLM的AQ方法在保持量化层参数的同时,能够有效地减少量化误差。
讨论
1、AQ量化与直接量化(如GPTQ)相比在低比特数压缩中有何优势?
答案: AQ量化的优势在于它通过学习可训练的码本来近似权重矩阵,而不是简单地将权重映射到固定的量化网格上。这种方法允许更灵活的量化策略,因为它可以针对模型的特定分布进行优化。相比之下,GPTQ等直接量化方法通常使用固定的量化网格,这在极端低比特数压缩时可能导致较大的精度损失。AQLM通过层内微调进一步减少了量化误差,这在保持模型性能的同时实现了更高的压缩率。
2、AQLM在实际应用中可能面临哪些挑战?
答案: AQLM在实际应用中可能面临的挑战包括计算复杂性较高、对参数选择的敏感性以及实现复杂度。由于AQLM使用了更复杂的量化编码,其计算成本相对于直接量化方法如RTN或GPTQ更高。此外,AQLM的性能可能对码本数量、初始化方法等超参数的选择敏感,这可能需要更多的调参工作。最后,AQLM的实现相对于直接量化方法更为复杂,可能需要更多的开发和维护工作。
3、AQLM在不同压缩率下的性能表现如何,特别是在极端压缩(如2位每参数)时?
答案: AQLM在不同压缩率下都表现出色,尤其是在极端压缩情况下。在将LLAMA 2模型压缩到2位每参数时,AQLM的性能提升最为显著,这表明AQLM特别适合于低比特数压缩场景。在这种极端压缩下,AQLM能够有效地减少量化误差,同时保持模型的输出质量,这在实际应用中对于资源受限的设备尤其有价值。
推荐阅读
- • TinyGPT-V:小而强大,轻量级骨架打造高效多模态大语言模型
- • 2024:ToB、Agent、多模态
- • TA们的RAG真正投产了吗?(上)
- • 2023年最新LLM发展时间线一览(ChatGPT、LLaMA等)
欢迎关注我的公众号“ PaperAgent ”, 每天一篇大模型(LLM)文章来锻炼我们的思维,简单的例子,不简单的方法,提升自己。