LoRA-XS: Low-Rank Adaptation with Extremely Small Number of Parameters
作者: Klaudia Bałazy, Mohammadreza Banaei, Karl Aberer, Jacek Tabor
分类: cs.LG, cs.AI, cs.CL
发布日期: 2024-05-27 (更新: 2025-08-19)
💡 一句话要点
LoRA-XS:极小参数量的低秩适应微调方法,显著降低存储需求。
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 参数高效微调 低秩适应 奇异值分解 大型语言模型 存储优化
📋 核心要点
- 现有LoRA方法在部署多个任务或用户特定模块时,面临着存储和计算资源的挑战。
- LoRA-XS通过在冻结的低秩矩阵间引入小型可训练权重矩阵,大幅减少可训练参数,实现高效微调。
- 实验表明,LoRA-XS在多个基准测试中优于或匹配LoRA和VeRA,同时显著降低了存储需求。
📝 摘要(中文)
大型语言模型的增长凸显了参数高效微调的需求。尽管LoRA很受欢迎,但在部署多个特定任务或用户模块时,它面临存储和计算挑战。为了解决这个问题,我们引入了LoRA-XS,这是一种由理论推导支持的新型微调方法。LoRA-XS通过在从预训练权重的奇异值分解导出的冻结低秩矩阵之间加入一个小的、可训练的权重矩阵,从而大幅减少可训练参数。这种设计使LoRA-XS与LoRA相比,在7B模型中可将存储需求降低100倍以上。此外,与其他方法不同,LoRA-XS对可训练参数没有下限——它可以从每个模块的单个参数扩展到任意大的值,从而适应任何存储或计算约束。在不同模型规模的GLUE、GSM8K、MATH和常识推理基准上的评估表明,LoRA-XS在精度上始终优于或匹配LoRA和VeRA,从而提供了无与伦比的参数效率。我们的消融研究突出了奇异向量在Transformer权重中的重要性,从而确立了LoRA-XS作为一种强大、存储高效的解决方案,用于扩展和个性化大型语言模型。
🔬 方法详解
问题定义:现有LoRA方法在对大型语言模型进行微调时,虽然参数效率较高,但当需要针对多个任务或用户进行个性化定制时,每个任务/用户都需要存储一套LoRA模块,导致存储成本显著增加。尤其是在资源受限的设备上部署这些模型时,存储问题变得尤为突出。因此,论文旨在解决LoRA方法在多任务/多用户场景下的存储效率问题。
核心思路:LoRA-XS的核心思路是在LoRA的基础上进一步压缩可训练参数的数量。它利用预训练权重的奇异值分解(SVD)得到的低秩矩阵,并在这两个低秩矩阵之间引入一个极小的可训练权重矩阵。通过这种方式,LoRA-XS能够在保持甚至提升模型性能的同时,大幅减少需要存储的参数量。这种设计允许LoRA-XS拥有极小的参数下限,甚至可以做到每个模块只有一个可训练参数。
技术框架:LoRA-XS的整体框架与LoRA类似,都是在预训练模型的某些层中插入可训练的模块。不同之处在于LoRA-XS的模块结构。具体来说,对于预训练权重矩阵W,首先进行奇异值分解得到U、S、V三个矩阵。然后,冻结U和V,并在U和V之间插入一个可训练的权重矩阵A。微调过程中只更新A的参数,而U和V保持不变。最终的更新量为U * A * V。
关键创新:LoRA-XS最关键的创新在于其极小的参数量。通过将可训练参数集中在U和V之间的权重矩阵A上,LoRA-XS能够实现比LoRA更高的参数效率。此外,LoRA-XS对可训练参数没有下限,可以根据实际的存储和计算资源进行灵活调整。与LoRA直接训练低秩矩阵不同,LoRA-XS训练的是连接两个冻结低秩矩阵的权重,这使得它能够更好地利用预训练权重中的信息。
关键设计:LoRA-XS的关键设计在于权重矩阵A的维度选择。A的维度决定了可训练参数的数量。论文中并没有明确指定A的具体维度选择策略,但强调了A可以非常小,甚至可以只有一个参数。损失函数与LoRA相同,通常使用交叉熵损失函数。网络结构方面,LoRA-XS可以应用于Transformer模型的各种层,例如注意力层和前馈网络层。
🖼️ 关键图片
📊 实验亮点
实验结果表明,LoRA-XS在GLUE、GSM8K、MATH和常识推理等多个基准测试中,性能与LoRA和VeRA相当甚至更优,同时参数量减少了100倍以上。例如,在7B模型上,LoRA-XS的存储需求显著低于LoRA,并且在某些任务上取得了更高的准确率。消融实验验证了奇异向量在Transformer权重中的重要性。
🎯 应用场景
LoRA-XS适用于各种需要对大型语言模型进行个性化或特定任务微调的场景,尤其是在存储资源受限的环境中,如移动设备、边缘计算等。它可以用于构建个性化的AI助手、特定领域的知识库问答系统等。LoRA-XS的极高参数效率使其能够更容易地部署在资源有限的设备上,从而推动大型语言模型在更广泛的应用场景中的普及。
📄 摘要(原文)
The growth of large language models underscores the need for parameter-efficient fine-tuning. Despite its popularity, LoRA encounters storage and computational challenges when deploying multiple task- or user-specific modules. To address this, we introduce LoRA-XS, a novel fine-tuning method backed by a theoretical derivation. LoRA-XS drastically reduces trainable parameters by incorporating a small, trainable weight matrix between frozen low-rank matrices derived from the Singular Value Decomposition of pre-trained weights. This design enables LoRA-XS to reduce storage requirements by over 100x in 7B models compared to LoRA. Additionally, unlike other methods, LoRA-XS imposes no lower bound on trainable parameters - it can scale from a single parameter per module to arbitrarily large values, adapting to any storage or computational constraint. Evaluations on GLUE, GSM8K, MATH, and commonsense reasoning benchmarks across different model scales reveal that LoRA-XS consistently outperforms or matches LoRA and VeRA in accuracy, offering unmatched parameter efficiency. Our ablation studies highlight the significance of singular vectors in transformer weights, establishing LoRA-XS as a powerful, storage-efficient solution for scaling and personalizing large language models.