RoSA: Accurate Parameter-Efficient Fine-Tuning via Robust Adaptation

📄 arXiv: 2401.04679v7 📥 PDF

作者: Mahdi Nikdan, Soroush Tabesh, Elvir Crnčević, Dan Alistarh

分类: cs.CL, cs.AI, cs.LG

发布日期: 2024-01-09 (更新: 2024-06-03)

🔗 代码/项目: GITHUB


💡 一句话要点

提出RoSA以解决大语言模型的高效微调问题

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

关键词: 参数高效微调 鲁棒主成分分析 低秩表示 稀疏训练 大语言模型

📋 核心要点

  1. 现有的参数高效微调方法在计算和内存预算有限的情况下,难以达到全微调的性能,尤其是在复杂的生成任务中。
  2. RoSA方法通过联合训练低秩和高度稀疏的组件,利用固定的预训练权重,旨在高效逼近全微调的效果。
  3. 实验结果表明,RoSA在多个生成任务上超越了LoRA和其他混合方法,且在某些任务上恢复了全微调的性能。

📝 摘要(中文)

本文研究了在有限计算和内存预算下,如何实现参数高效的微调方法,以提升大语言模型(LLMs)的准确性。我们提出了一种新的微调方法RoSA,灵感来源于鲁棒主成分分析,能够在固定的预训练权重上联合训练低秩和高度稀疏的组件,从而有效地逼近全微调(FFT)解决方案的性能。在一系列具有挑战性的生成任务中,RoSA在相同参数预算下超越了LoRA、纯稀疏微调和其他混合方法,甚至在某些任务上恢复了FFT的性能。我们还为RoSA提供了系统支持,包括稀疏GPU内核,以实现内存和计算效率的训练,并展示了其与低精度基础权重的兼容性,首次实现了量化、低秩和稀疏近似的联合表示。

🔬 方法详解

问题定义:本文旨在解决在有限计算和内存预算下,如何实现高效且准确的大语言模型微调的问题。现有方法如LoRA和纯稀疏微调在性能上存在不足,尤其是在复杂生成任务中。

核心思路:RoSA方法的核心思路是通过鲁棒主成分分析的启发,联合训练低秩和高度稀疏的组件,以在固定的预训练权重上实现高效的性能逼近。这样的设计使得模型在参数预算内能够更好地适应复杂任务。

技术框架:RoSA的整体架构包括固定的预训练权重、低秩组件和稀疏组件的联合训练。通过稀疏GPU内核的支持,模型能够在内存和计算上实现高效训练。

关键创新:RoSA的主要创新在于其联合训练的策略,能够在相同的参数预算下超越现有的微调方法,并在某些任务上恢复全微调的性能。这一方法的本质区别在于其对低秩和稀疏性的有效结合。

关键设计:在参数设置上,RoSA采用了低秩和稀疏的组合,损失函数设计上考虑了鲁棒性,网络结构上则通过稀疏性来降低计算复杂度,确保在资源受限的情况下仍能保持较高的性能。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果显示,RoSA在多个生成任务中表现优异,相比于LoRA和其他混合方法,在相同参数预算下提升了性能,某些任务甚至恢复了全微调的效果,展现了其强大的适应能力和效率。

🎯 应用场景

RoSA方法在自然语言处理、代码生成和其他生成任务中具有广泛的应用潜力。其高效的微调能力使得在资源有限的环境下,仍能实现高性能的模型部署,具有重要的实际价值和未来影响。

📄 摘要(原文)

We investigate parameter-efficient fine-tuning (PEFT) methods that can provide good accuracy under limited computational and memory budgets in the context of large language models (LLMs). We present a new PEFT method called Robust Adaptation (RoSA) inspired by robust principal component analysis that jointly trains $\textit{low-rank}$ and $\textit{highly-sparse}$ components on top of a set of fixed pretrained weights to efficiently approximate the performance of a full-fine-tuning (FFT) solution. Across a series of challenging generative tasks such as grade-school math and SQL query generation, which require fine-tuning for good performance, we show that RoSA outperforms LoRA, pure sparse fine-tuning, and alternative hybrid methods at the same parameter budget, and can even recover the performance of FFT on some tasks. We provide system support for RoSA to complement the training algorithm, specifically in the form of sparse GPU kernels which enable memory- and computationally-efficient training, and show that it is also compatible with low-precision base weights, resulting in the first joint representation combining quantization, low-rank and sparse approximations. Our code is available at https://github.com/IST-DASLab/RoSA.