DoRA: Enhancing Parameter-Efficient Fine-Tuning with Dynamic Rank Distribution

✨ Title: DoRA: Enhancing Parameter-Efficient Fine-Tuning with Dynamic Rank Distribution

✨ 标题: DoRA:利用动态等级分布提高参数微调效率

✨ ArXiv: 2405.17357

✨ 机构: Beijing Jiaotong University

背景 🔍

在自然语言处理(NLP)领域,大规模预训练模型(PLMs)通过微调在各种下游任务中展现出卓越的性能。然而,随着模型规模的增加,全面微调这些模型所需的计算资源变得非常庞大,限制了它们的实际应用。传统的参数高效微调(PEFT)方法,如低秩适应(LoRA),虽然简化了微调过程,但它们通常均匀地为所有矩阵分配可训练参数,可能导致参数使用效率不高。

方法 🔥

为了解决上述问题,论文提出了一种名为DoRA(Dynamic Low-Rank Adaptation)的新方法。DoRA的核心创新在于动态地调整参数预算,以实现更精细的参数管理。具体来说,DoRA包含以下几个关键策略:

参数分解策略:DoRA将传统的高秩LoRA层分解为多个单秩LoRA组件的组合,允许更细粒度的参数管理和调整。

动态秩分配机制:根据每个组件对模型整体性能的贡献动态调整参数预算,确保重要组件能够获得更多参数资源。

重要性评分机制:引入基于Frobenius范数的评分机制,量化每个组件的贡献,并据此进行修剪。

参数调度和修剪策略:设置初始参数预算和最终参数预算,采用温和的修剪策略,通过设置相关标量为0来修剪贡献较小的组件。

维度平衡调节器(DEM):引入正则化项以减少修剪过程中的模型不稳定性,鼓励元素在组件内部的均匀分布。

算法实现:提供了一个详细的算法框架,包括损失函数计算、反向传播、重要性评分更新、参数预算计算和组件修剪等步骤。

总结 💯

通过一系列实验,DoRA在多个自然语言处理任务上展示了与LoRA和全模型微调相媲美的性能,同时显著减少了所需的可训练参数数量。DoRA的提出为资源受限的情况下微调大规模预训练模型提供了一种有效的策略,实现了性能与效率的双重提升。此外,论文还提供了DoRA的代码,以便研究者进一步探索和应用。未来的工作将探索DoRA在更复杂的NLP任务或大规模语言模型上的效果,以及与其他PEFT方法的结合可能性。