ElaLoRA:首个微调中同时支持秩剪枝与扩展的自适应低秩适配框架,多基准实验胜现有PEFT方法 !

大模型向量数据库机器学习

备注好友:方向-学校/公司-姓名/昵称

【AIGC 先锋科技】交流群

picture.image

picture.image

低秩自适应适配(LoRA)已成为一种广泛采用的微调大规模预训练模型的技术,仅需少量参数更新即可实现(Hu等人,2022)。然而,现有方法依赖于固定秩或仅关注秩剪枝或秩扩展,未能根据训练过程中不同层的重要性动态调整秩。在本工作中,作者提出了ElaLoRA,一种基于梯度衍生重要性分数动态剪枝和扩展秩的自适应低秩适配框架。

据作者所知,ElaLoRA是首个在微调过程中同时支持秩剪枝和秩扩展的方法。跨多个基准的实验表明,ElaLoRA在不同参数预算下始终优于现有的PEFT方法。此外,作者的研究表明,获得更高秩分配的层对模型性能的贡献更为显著,为作者的自适应策略提供了理论依据。

通过引入一种原则性和自适应的秩分配机制,ElaLoRA提供了一种可扩展且高效的微调解决方案,尤其适用于资源受限的环境。

1 引言

基于Transformer的预训练语言模型(PLMs)的规模法则表明,增加模型规模能够提升泛化能力和任务性能,这推动了模型架构的快速扩展,从BERT中的330M参数扩展到GPT-2中的1.5B、GPT-3中的175B)以及DeepSeek中的671B(Bi等人,2024),凸显了预训练模型规模不断增大的趋势。尽管取得了这些进展,大语言模型(LLMs)仍受限于其知识边界,需要微调以专精于特定领域的应用并适应不断变化的数据集。传统上,全量微调一直是标准方法,但在内存和计算方面却极为昂贵。

为解决全量微调的计算负担问题,已开发出参数高效微调(PEFT)方法(Ding et al., 2023b),其中低秩适配(LoRA)(Hu et al., 2022)是一种广泛应用的减少可训练参数而不增加推理延迟的方法。然而,LoRA的固定秩分配会导致性能次优,因为它未能考虑层特定的权重(Zhang et al., 2023b)。如AdaLoRA(Zhang et al., 2023b)和SaLoRA(Hu et al., 2023)等动态秩分配方法通过奇异值分解(SVD)分解矩阵并选择性地剪枝其奇异值来控制矩阵的秩,但这些方法因初始秩较高而计算效率低下。IncreLoRA(Zhang et al., 2023a)通过从最小秩开始并启发式增加秩来缓解这一问题。然而,当秩较小时,早期训练样本可能无法被有效学习或利用。

为了克服这些局限性,作者提出了ElaLoRA,一个新颖的自适应和动态LoRA框架,该框架同时进行秩剪枝和秩扩展(如图1所示)。通过将计算资源动态重新分配到最关键的网络层,ElaLoRA确保重要层获得更多计算能力,同时移除冗余的秩。ElaLoRA通过三个关键组件工作:

1)基于SVD的适应策略;

2)重要性分数计算,根据损失梯度量化每个秩的重要性;

3)动态秩学习算法,在预定时间间隔重新分配秩。在多个自然语言理解(NLU)(Wang等人,2018)、自然语言生成(NLG)(Narayan等人,2018)和视觉任务(Zhai等人,2019)基准测试中的实验结果表明,ElaLoRA在各种参数预算下始终优于现有的PEFT方法。

值得注意的是,ElaLoRA在

时取得了比其他PEFT方法在

时更好的平均GLUE结果,使其特别适用于资源受限的环境。作者的主要贡献包括:

picture.image

作者介绍了ElaLoRA,据作者所知,这是首个在微调过程中同时实现秩剪枝和扩展的方法。比较结果如表1所示。

picture.image

作者在多个基准测试下,针对不同的参数预算进行了广泛的实验。作者的结果一致表明ElaLoRA的有效性,在性能方面超越了现有的PEFT方法。

作者进行数据分析以验证被识别为对特定任务高度重要的层和矩阵确实对该任务具有重要意义,从而为作者的自适应秩分配方法提供了原则性验证。

2 背景与相关工作

微调大规模预训练语言模型(LLMs)是将其适配于特定领域应用的重要技术。在完整模型微调中,所有模型参数在训练期间都会被更新,这既计算成本高昂又内存密集。为解决这一问题, Adapter 微调 引入了小型可训练模块—— Adapter 层,并将其嵌入Transformer层之间。BitFit(Zaken等人,2021)采用了一种更参数高效的策略,仅微调模型中的偏置项。低秩适配(LoRA)(Hu等人,2022)因其出色的性能效率权衡而广受欢迎。QLoRA(Dettmers等人,2023)在此基础上进一步将冻结的基模型量化为4比特精度,显著降低内存使用量同时保持性能。

然而,尽管LoRA效率较高,但它可能限制模型记忆领域特定知识以及泛化到下游任务的能力。一个关键限制在于它在所有层中使用固定的秩,这忽略了不同层对模型适应的贡献是不均衡的。这种均匀分配可能导致可训练参数的效率低下——在需要更多容量的层中出现欠拟合,而在其他层中出现过拟合或浪费容量。

为解决这一问题,已开发出几种自适应排名分配方法,根据重要性动态调整排名(Mao等人,2025)。一种方法是基于奇异值分解(SVD)的排名分配,其中LoRA权重矩阵被分解,并剪枝掉不重要的奇异值。AdaLoRA(Zhang等人,2023b)遵循这一策略,通过正则化奇异向量的正交性并选择性地移除较不显著的奇异值,而SaLoRA(Hu等人,2023)则采用基于

范数的重要性指标进行排名选择。

另一种方法采用单秩分解(SRD),将LoRA矩阵分解为多个单秩分量,从而实现独立剪枝。DoRA(Mao等人,2024)将LoRA矩阵分解为秩一分量,并剪枝那些重要性得分较低的分量。AutoLoRA、 通过元学习扩展该方法,以确定秩的重要性,而SoRA(Ding等人,2023a)引入门控单元以动态过滤秩分量。

动态秩分配的另一种策略是秩采样。例如,DyLoRA(Valipour等人,2022年)采用这种方法,在每个训练步骤中随机采样秩值,并相应地截断LoRA矩阵。Qdylora(Rajabzadeh等人,2024年)将该框架扩展到量化模型,通过结合动态秩分配与内存高效的量化技术。

3 方法论

ElaLoRA持续修剪冗余秩,同时逐层扩展需要额外容量的秩。ElaLoRA的核心组件包括:1)基于SVD的低秩自适应,以实现最影响较小的秩的修剪,2)重要性分数计算,根据其对损失梯度的影响评估每个秩的重要性,3)动态秩学习,在预定时间间隔修剪并重新分配秩。

3.1 基于SVD的低秩自适应

ElaLoRA基于基于SVD的参数化方法,该方法已被证明通过允许更精确的秩调整来提高自适应效率(Zhang等人,2023b)。给定一个预训练的权重矩阵

,作者将其更新定义为

,其中

的左奇异向量和右奇异向量,

是一个对角矩阵,包含奇异值。秩

在训练过程中动态调整,确保

为保持数值稳定性和SVD特性

,作者对奇异向量施加正交约束:

3.2 重要度分数计算

为了确定哪些秩应该被剪枝或扩展,作者根据每个权重对损失函数的敏感性计算一个重要性分数,遵循先前关于AdaLoRA的工作实践(Zhang等人,2023b):

其中

是损失函数。这种基于梯度的重要性度量使用一阶泰勒展开来近似移除权重的效果,已在结构化剪枝方法中得到广泛应用(Molchanov 等人,2019;Liang 等人,2021;Sanh 等人,2020;Zhang 等人,2022)。

对于每个权重矩阵,整个秩

的重要性通过其奇异值和对应的奇异向量进行聚合:

其中

是第

个奇异值,

是左奇异向量和右奇异向量的分量。

为提高稳定性,作者应用指数移动平均来平滑敏感性

和不确定性

,并计算最终的重要性得分(Zhang et al., 2022):

其中

,且

用于控制平滑。这种表述方式确保了秩值能够根据其对性能的真实贡献动态调整,同时减轻了随机更新带来的噪声影响。

3.3 动态排名学习

ElaLoRA采用三阶段训练计划,以确保在微调过程中高效地分配秩:

Warm up 在最初的两个 Warm up 迭代中,排名保持固定,允许模型初始化其表征,然后再进行修改。

动态排名调整排名每

次迭代通过以下步骤进行调整:

  1. 确定每个权重矩阵中

个最不重要的秩。在每个秩调整阶段,每个权重矩阵可以通过最多

个秩进行剪枝和扩展。 2. 根据重要性分数对所有矩阵中的

排名进行排序。 3. 剪枝掉

个最不重要的秩,选择所有矩阵中最低秩的条目。这确保了首先移除对模型性能贡献最小的秩。 4. 扩展矩阵中重要性得分相对较高的最低保留秩,表明对容量的需求更大。这优先考虑了即使最低秩的组件也发挥重要作用矩阵,确保有效资源分配。作者总共扩展

秩。

这确保了表达性的保持,同时避免了计算冗余。

在最终的

迭代中,排序更新被冻结,使模型能够平滑收敛。

完整的ElaLoRA训练过程在算法1中概述。

picture.image

3.4 动态排名调度器

为了在训练过程中动态调整剪枝和扩展的秩数(算法1中的

),作者引入了一种动态秩调度器。该调度器逐渐调节秩调整的激进程度,确保从初始适应阶段到最终收敛阶段的平滑过渡,从而提高秩搜索的稳定性。作者在第4.7节展示了该调度器的有效性。

具体而言,调度器调节每个调整间隔中剪枝和扩展的秩总数,以适应训练进度。调度函数定义为:

为了逐步减少秩调整的数量,作者使用三次多项式插值定义如下:

作者从

开始,并在算法1中使用

表示第

次秩调整步骤。

4 实验

4.1 设置

作者使用GLUE基准数据集(Wang et al., 2018)在自然语言理解任务(NLU)上对DeBERTaV3-base(He et al., 2021b)和BARTbase(Lewis et al., 2019)进行了微调,并使用XSum数据集(Narayan et al., 2018)在自然语言生成任务(NLG)上进行了微调。此外,为了展示llm-ElaLoRA_2504的多功能性,作者将ElaLoRA扩展到视觉领域,将其应用于ViT-B/16(Dosovitskiy et al., 2021)模型,并在VTAB任务的子集上进行了评估(Zhai et al., 2019)。

作者的分析主要集中于比较ElaLoRA在不同配置下的性能与固定秩LoRA(Hu等人,2022年)以及仅剪枝的AdaLoRA(Zhang等人,2023b)的性能。此外,作者参考了现有文献中关于全模型微调、 Adapter 微调(Houlsby等人,2019年;Pfeiffer等人,2020年)、BitFit(Zaken等人,2021年)和DoRA(Mao等人,2024年)的性能结果,以提供全面的比较分析。

实验在配备80GB内存的NVIDIA A100 GPU上进行,使用PyTorch框架(Paszke等人,2019)。ElaLoRA作为LoRA框架(Hu等人,2022)的模块化扩展实现,支持基于计算重要性分数的秩剪枝和扩展。其他工具包括用于数据集预处理和模型初始化的Hugging Face Transformers库(Wolf等人,2019)。

4.2 自然语言理解

数据集。作者在GLUE基准数据集(Wang等人,2018)上进行了实验。GLUE包括多种任务,如句子关系识别、情感分析和自然语言推理。例如,MRPC是一个二元分类任务,用于判断两个句子是否为释义,而RTE是一个二元分类任务,用于判断假设是否被前提蕴含。MNLI、SST-2、QNLI、PRTE、MRPC和QQP使用准确率,作者还报告了QQP的F1分数;CoLA使用马修斯相关系数(MCC);而STS-B使用皮尔逊相关系数。数据集详细信息总结在附录A中。实验使用DeBERTa-v3-base模型进行,该模型是一种具有1.83亿参数的Transformer架构(He等人,2021b)。

实现细节。作者主要将llm-ElaLoRA_2504与LoRA(Hu等人,2022)和AdaLoRA(Zhang等人,2023b)进行比较,并在三种不同的秩设置下评估性能:2、4和10。由于AdaLoRA以最终秩的1.5倍初始化秩,其在相同目标秩下的参数数量比LoRA和ElaLoRA高50%。

为确保一致性和清晰性,作者采用直观的实验设置,例如在所有任务中使用5的倍数的训练轮数。详细信息总结在附录B中。此外,作者引用了AdaLoRA(Zhang等人,2023b)、DoRA(Mao等人,2024)和DyLoRA(Valipour等人,2022)的性能结果,以进行全面的比较分析。作者的实验在所有任务中使用的训练轮数少于引用的结果,突出了ElaLoRA在降低计算成本的同时实现具有竞争力的性能的效率。

主要结果. 表2总结了在GLUE任务上的结果. ElaLoRA在所有三个测试的秩和参数预算 Level 上始终实现了最高的平均性能.值得注意的是,秩为2的ElaLoRA优于秩为4的AdaLoRA (Zhang et al., 2023b)以及所有其他方法,包括LoRA (Hu et al., 2022),即使在秩为10时也是如此.具体而言,当使用较高的秩时,ElaLoRA更有效,这可能是由于在最优秩上更广阔的搜索空间.例如,当

时,ElaLoRA在GLUE (Wang et al., 2018)的8个任务中有7个表现最佳.

picture.image

4.3 自然语言生成

数据集。为了在自然语言生成(NLG)领域将ElaLoRA与最先进的方法进行基准测试,作者对一个BART-large模型(Lewis等人,2019)进行微调,并在XSum数据集(Narayan等人,2018)上评估其性能。作者报告了ROUGE-1/2/L指标。

实现细节。与作者在自然语言理解(NLU)中的评估类似,作者将ElaLoRA与LoRA(Hu等人,2022)和AdaLoRA(Zhang等人,2023b)进行比较,在相同的实验设置下微调这三种方法。性能在两个秩设置下进行评估:2和6。作者使用8的束长度和64的批处理大小进行解码。详细配置请参考附录C。

主要结果. 表3展示了在XSum上微调BART的结果. 作者还引用了DoRA的Full FT结果(Mao等人,2024). 注意ElaLoRA在两种排名设置下始终优于LoRA和AdaLoRA. 例如, 在

时, ElaLoRA进一步提升至

, 在这三种方法中取得了最佳性能.

picture.image

4.4 视觉任务

数据集。作者在VTAB-1k(Zhai等人,2019)的一个子集上进行了实验,该子集评估了在多种视觉任务上的性能。每个数据集包含1000张图像(800张用于训练,200张用于评估),涵盖三个类别:自然、专业和结构化。自然任务涉及图像分类和目标识别;专业任务针对细粒度、特定领域的图像;结构化任务评估空间和关系推理能力。作者随机选择每个类别中的两个数据集,并报告分类准确率。数据集详细信息见附录D。

实现细节。作者的实验中使用的基准模型是预训练在ImageNet-22K上的ViT-B/16。所有方法均在一致的实验设置下进行评估,所有实验均由作者的团队独立开展。作者在每个数据集上使用批大小为16和秩为8对模型进行100个epoch的微调。详细的配置设置请参考附录E。

主要结果。表4显示ElaLoRA在大多数任务中均优于LoRA和AdaLoRA。具体而言,ElaLoRA在自然任务(CIFAR-100:61.25,SVHN:74.60)和专业任务(Eurosat:94.26,Resisc45:80.71)中实现了更高的准确率,同时在结构化任务中也提供了具有竞争力的性能。64.88的聚合平均值突显了llm-ElaLoRA_2504在平衡多样化视觉挑战方面的有效性。

picture.image

4.5 最终排名分布分析

作者绘制了ElaLoRA的最终秩分布,以表明秩值较高的层确实对性能有更大的贡献。图2和图3展示了ElaLoRA在RTE任务上,当

时的最终秩分布。在两种情况下,中间前馈层获得了最高的秩分配,而最终的投影输出层被分配的秩显著较少。此外,注意到ElaLoRA达到的最高秩是7(

)和17(

),这比如果AdaLoRA(Zhang等人,2023b)从最终秩的1.5倍开始,所能达到的秩要高。为了验证ElaLoRA的秩分配策略,作者进行了三个额外的实验,使用不同的秩分布:(1)排除所有中间前馈层的秩,(2)排除最终投影层的秩,以及(3)仅将秩分配给中间前馈层。

picture.image

picture.image

如图4所示,在微调过程中移除中间前馈层会导致最终性能显著下降,而移除最终投影层的影响相对较小。此外,将秩分配给中间前馈层能够获得具有竞争力的性能,突显了它们在任务适应中的关键作用。作者在附录F中提供了针对其他GLUE任务(Wang等人,2018)的更多分析和最终秩热力图。

picture.image

4.6 重要度分数分析

分析ElaLoRA如何优化排名

在选取中,作者在图5中展示了MRPC任务在排名

的重要性分数分布。这些重要性分数在不同的训练阶段使用不同的方法进行计算。请注意:

picture.image

ElaLoRA和AdaLoRA均成功移除不重要秩,如与固定秩设置相比,密度质量向左移除所示。在

时,ElaLoRA的重要性分数分布峰值比AdaLoRA向右偏移更多,而在

时,ElaLoRA将整个重要性分数分布向右移动。这意味着ElaLoRA微调参数对损失函数的整体影响比AdaLoRA和固定秩设置更大。

4.7 动态排名调度器的消融研究

为评估动态排名调度器的影响,作者比较了ElaLoRA在有和没有该调度器的情况下在分类(RTE、MRPC)和生成(XSum)任务上的性能。作者报告了分类任务的准确率和生成任务的ROUGE-1/2/L指标。如表5所示,该调度器在所有排名 Level 上始终提高RTE和MRPC的准确率,并提升XSum上的ROUGE分数。这些结果表明,排名调整调度器确实提高了ElaLoRA的性能。

picture.image

5 结论

在这项工作中,作者提出了ElaLoRA,一种新颖的参数高效微调(PEFT)方法,该方法基于重要性分数动态修剪和扩展秩,确保最具影响力的层获得额外容量,同时移除冗余秩。这种自适应秩学习机制使得模型在多样化的NLP和视觉任务中能够更高效地适应。

作者的实证结果表明,ElaLoRA在多个基准数据集上实现了比其他最先进方法更优越的准确率,同时保持了更低或相当参数预算。除了性能提升之外,作者对最终排名分布和重要性分数分布的分析证实,ElaLoRA的排名分配决策与对特定任务学习贡献最大的层相一致。

参考

[1]. ElaLoRA: Elastic & Learnable Low-Rank Adaptation for Efficient Model Fine-Tuning

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
字节跳动 XR 技术的探索与实践
火山引擎开发者社区技术大讲堂第二期邀请到了火山引擎 XR 技术负责人和火山引擎创作 CV 技术负责人,为大家分享字节跳动积累的前沿视觉技术及内外部的应用实践,揭秘现代炫酷的视觉效果背后的技术实现。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论