ASVD: Activation-aware Singular Value Decomposition for Compressing Large Language Models

📄 arXiv: 2312.05821v5 📥 PDF

作者: Zhihang Yuan, Yuzhang Shang, Yue Song, Dawei Yang, Qiang Wu, Yan Yan, Guangyu Sun

分类: cs.CL

发布日期: 2023-12-10 (更新: 2025-08-28)


💡 一句话要点

提出激活感知奇异值分解(ASVD)压缩大语言模型,无需训练。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大语言模型压缩 奇异值分解 低秩分解 激活感知 后训练量化 模型优化 KV缓存压缩

📋 核心要点

  1. 现有LLM权重低秩分解方法受限于激活分布差异和层间敏感度差异,导致压缩效果不佳。
  2. ASVD通过激活感知的权重矩阵转换,将激活异常值吸收到权重中,提升低秩分解的准确性。
  3. ASVD采用迭代校准过程,针对不同LLM层的敏感度差异,优化层特定的分解,实现更高压缩率。

📝 摘要(中文)

本文提出了一种新的大语言模型(LLM)后训练压缩范式,旨在促进其更广泛的应用。我们深入研究了LLM权重的低秩分解,发现该任务的挑战主要源于(1)LLM激活中的分布差异和(2)各种层之间的敏感度差异。为了解决这些问题,我们提出了一种名为激活感知奇异值分解(ASVD)的免训练方法。具体来说,ASVD通过基于激活分布转换权重矩阵来管理激活异常值。这种转换允许激活矩阵中的异常值被吸收到转换后的权重矩阵中,从而提高分解精度。此外,我们提出了一种有效的迭代校准过程,通过解决不同LLM层的不同敏感性来优化特定层的分解。通过这种方式,ASVD可以将网络压缩10%-30%。基于自注意力模块中投影矩阵低秩分解的成功,我们进一步引入ASVD来压缩KV缓存。通过降低KV激活的通道维度,可以大大降低KV缓存的内存需求。ASVD可以在无需训练的情况下进一步实现50%的KV缓存减少,而不会降低性能。

🔬 方法详解

问题定义:大语言模型参数量巨大,部署成本高昂。权重低秩分解是一种有效的模型压缩方法,但现有方法在LLM上效果不佳,主要原因是LLM激活值分布差异大,且不同层对压缩的敏感度不同。直接应用标准奇异值分解(SVD)会导致显著的性能下降。

核心思路:ASVD的核心思想是使权重矩阵的分解过程能够感知激活值的分布,从而提高分解的准确性。具体来说,通过对权重矩阵进行转换,将激活值中的异常值“吸收”到权重矩阵中,使得分解后的低秩矩阵能够更好地逼近原始矩阵。此外,针对不同层对压缩的敏感度差异,采用迭代校准过程,为每一层找到最佳的分解秩。

技术框架:ASVD主要包含两个阶段:激活感知权重转换和迭代校准。首先,对于每一层,根据激活值的分布,计算一个转换矩阵,将权重矩阵进行转换。然后,对转换后的权重矩阵进行SVD分解。其次,通过迭代校准过程,逐步调整每一层的分解秩,以在压缩率和性能之间取得平衡。该过程通过监控验证集上的性能变化来指导分解秩的调整。

关键创新:ASVD的关键创新在于激活感知的权重转换。传统的SVD分解忽略了激活值的分布,导致分解后的低秩矩阵无法很好地逼近原始矩阵。ASVD通过考虑激活值的分布,对权重矩阵进行转换,使得分解过程更加准确。此外,迭代校准过程能够有效地解决不同层对压缩的敏感度差异问题。

关键设计:激活感知权重转换的关键在于如何根据激活值的分布计算转换矩阵。论文中具体实现方式未知。迭代校准过程的关键在于如何定义性能变化的指标,以及如何根据性能变化调整分解秩。论文中具体实现方式未知。

📊 实验亮点

ASVD在多个LLM上进行了实验,结果表明,ASVD可以将网络压缩10%-30%,同时保持与原始模型相当的性能。此外,ASVD还可以将KV缓存减少50%,而不会降低性能。这些结果表明,ASVD是一种有效的LLM压缩方法。

🎯 应用场景

ASVD可用于压缩各种大语言模型,降低其部署成本,使其能够在资源受限的设备上运行,例如移动设备和边缘服务器。这有助于推动LLM在自然语言处理、机器翻译、文本生成等领域的更广泛应用,并促进AI技术的普及。

📄 摘要(原文)

In this paper, we introduce a new post-training compression paradigm for Large Language Models (LLMs) to facilitate their wider adoption. We delve into LLM weight low-rank decomposition, and find that the challenges of this task stem from (1) the distribution variance in the LLM activations and (2) the sensitivity difference among various kinds of layers. To address these issues, we propose a training-free approach called Activation-aware Singular Value Decomposition (ASVD). Specifically, ASVD manages activation outliers by transforming the weight matrix based on the activation distribution. This transformation allows the outliers in the activation matrix to be absorbed into the transformed weight matrix, thereby enhancing decomposition accuracy. Additionally, we propose an efficient iterative calibration process to optimize layer-specific decomposition by addressing the varying sensitivity of different LLM layers. In this way, ASVD can compress a network by 10%-30%. Based on the success of the low-rank decomposition of projection matrices in the self-attention module, we further introduce ASVD to compress the KV cache. By reducing the channel dimension of KV activations, memory requirements for KV cache can be largely reduced. ASVD can further achieve 50% KV cache reductions without performance drop in a training-free manner.