SPP: Sparsity-Preserved Parameter-Efficient Fine-Tuning for Large Language Models

📄 arXiv: 2405.16057v1 📥 PDF

作者: Xudong Lu, Aojun Zhou, Yuhui Xu, Renrui Zhang, Peng Gao, Hongsheng Li

分类: cs.CL, cs.LG

发布日期: 2024-05-25

🔗 代码/项目: GITHUB


💡 一句话要点

SPP:一种稀疏保持的参数高效微调方法,用于提升稀疏大语言模型的性能。

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

关键词: 大语言模型 参数高效微调 模型剪枝 稀疏性 LLaMA LLaMA-2 后训练优化 稀疏保持

📋 核心要点

  1. 现有大语言模型剪枝方法在减小模型规模的同时,往往难以维持原始模型的性能表现。
  2. SPP方法通过引入轻量级的可学习矩阵,在微调过程中保持剪枝模型的稀疏结构和比例不变。
  3. 实验结果表明,SPP能显著提升不同稀疏模式下模型的性能,尤其在高稀疏率时效果更佳。

📝 摘要(中文)

大型语言模型(LLMs)已成为推动人工智能领域发展的关键,但其庞大的规模对微调和部署提出了重大挑战。现有的后训练剪枝方法虽然减小了LLMs的尺寸,但通常无法保持其原始性能。为了解决这些挑战,本文提出了一种稀疏保持的参数高效微调方法SPP。与难以保持性能的现有后训练剪枝方法不同,SPP建议采用轻量级的可学习列和行矩阵来优化稀疏LLM权重,保持剪枝后的预训练模型的结构和稀疏性不变。通过逐元素乘法和残差加法,SPP确保了模型在训练和权重合并过程中稀疏模式和比例的一致性。我们将SPP应用于LLaMA和LLaMA-2模型系列以及最新的后训练剪枝方法,证明了SPP的有效性。结果表明,SPP显著提高了具有不同稀疏模式(即非结构化和N:M稀疏性)的模型的性能,特别是对于那些具有高稀疏率(例如75%)的模型,使其成为稀疏LLM高效微调的有希望的解决方案。

🔬 方法详解

问题定义:论文旨在解决大语言模型(LLMs)剪枝后微调时性能下降的问题。现有的后训练剪枝方法虽然能有效减小模型体积,但微调后模型性能往往难以恢复到原始水平,尤其是在高稀疏度下,性能损失更为严重。

核心思路:SPP的核心思路是在微调过程中保持剪枝模型的稀疏结构和稀疏比例不变。通过引入可学习的列和行矩阵,对稀疏权重进行优化,从而在不改变模型稀疏性的前提下,提升模型性能。这种方法避免了传统微调方法可能破坏稀疏结构的风险。

技术框架:SPP方法主要包含以下几个步骤:1) 使用现有的剪枝算法对预训练LLM进行剪枝,得到稀疏模型;2) 在剪枝后的模型中,为每个权重矩阵引入两个可学习的矩阵(列矩阵和行矩阵);3) 在微调过程中,只更新这些可学习的矩阵,而保持原始稀疏权重不变;4) 通过逐元素乘法和残差加法,将可学习矩阵的更新信息融入到原始权重中,确保稀疏模式和比例的一致性。

关键创新:SPP的关键创新在于其稀疏保持的微调策略。与传统的微调方法不同,SPP不是直接更新稀疏权重,而是通过可学习的矩阵来间接优化,从而避免了破坏稀疏结构的风险。这种方法能够更有效地利用剪枝模型的稀疏性,提升微调后的模型性能。

关键设计:SPP的关键设计包括:1) 使用轻量级的列和行矩阵,以减少额外的参数开销;2) 通过逐元素乘法和残差加法,确保可学习矩阵的更新信息能够有效地融入到原始权重中,同时保持稀疏模式和比例不变;3) 损失函数采用标准的交叉熵损失函数,以优化模型的预测性能。

📊 实验亮点

SPP在LLaMA和LLaMA-2模型上进行了实验,并与现有的后训练剪枝方法进行了比较。实验结果表明,SPP能够显著提升稀疏模型的性能,尤其是在高稀疏率(例如75%)下,性能提升更为明显。例如,在某些任务上,SPP能够将稀疏模型的性能提升到接近甚至超过原始模型的水平。

🎯 应用场景

SPP方法可应用于各种需要对大型语言模型进行高效微调的场景,例如自然语言处理、文本生成、机器翻译等。该方法尤其适用于资源受限的环境,例如移动设备或边缘计算平台,可以在保证模型性能的同时,显著降低模型的大小和计算复杂度,从而实现更高效的部署和应用。

📄 摘要(原文)

Large Language Models (LLMs) have become pivotal in advancing the field of artificial intelligence, yet their immense sizes pose significant challenges for both fine-tuning and deployment. Current post-training pruning methods, while reducing the sizes of LLMs, often fail to maintain their original performance. To address these challenges, this paper introduces SPP, a Sparsity-Preserved Parameter-efficient fine-tuning method. Different from existing post-training pruning approaches that struggle with performance retention, SPP proposes to employ lightweight learnable column and row matrices to optimize sparse LLM weights, keeping the structure and sparsity of pruned pre-trained models intact. By element-wise multiplication and residual addition, SPP ensures the consistency of model sparsity pattern and ratio during both training and weight-merging processes. We demonstrate the effectiveness of SPP by applying it to the LLaMA and LLaMA-2 model families with recent post-training pruning methods. Our results show that SPP significantly enhances the performance of models with different sparsity patterns (i.e. unstructured and N:M sparsity), especially for those with high sparsity ratios (e.g. 75%), making it a promising solution for the efficient fine-tuning of sparse LLMs. Code will be made available at https://github.com/Lucky-Lance/SPP.