大规模语言模型低秩适应的无导数优化
内容提要
本文综述了LoRA低秩适应技术在大语言模型微调中的研究进展。LoRA通过注入低秩矩阵减少可训练参数,性能接近全量微调且无推理延迟。后续研究提出SoRA、LoTR、PLoRA等改进方法,动态调整秩或提升参数效率,并在多语言摘要与分类任务中验证了有效性。
延伸解读
LoRA 的核心优势与适用场景
LoRA 通过注入低秩矩阵大幅减少可训练参数,性能接近全量微调且无额外推理延迟。文章指出,在多语言摘要任务中,LoRA 在低数据情况下表现突出,且模型增大时与全量微调的差距缩小。这表明 LoRA 尤其适合资源有限或需要快速适配多语言场景的团队。
改进方法如何提升效率与稳定性
针对 LoRA 的局限,研究者提出 SoRA、LoTR、PLoRA 等改进。SoRA 动态调整内在秩,在保留 70% 参数和训练时间下超越基准;LoTR 利用张量分解实现更高参数效率;PLoRA 通过周期积累更新矩阵,学习能力可达 LoRA 的 1.8 倍且不增加内存。这些方法在效率和稳定性上各有侧重。
理论支撑与任务泛化能力
理论分析表明,在神经切线核范式下,LoRA 微调有助于消除虚假局部极小值,使梯度下降找到低秩解。实验也验证了 LoRA 在多种多语言分类任务中的有效性,包括不同输入长度、类别数量和难度。这为 LoRA 的广泛适用性提供了理论和实证支持。
Q&A
LoRA是什么?它如何减少微调参数?
LoRA(Low-Rank Adaptation)是一种低秩适应方法,通过将可训练秩分解矩阵注入变压器结构的每个层中,极大地减少了下游任务中的可训练参数。它性能与微调相当或更好,同时具有更高的训练吞吐量和没有额外推理延迟。
SoRA相比LoRA有什么改进?
SoRA(稀疏低秩适应)通过引入稀疏低秩适应性的创新方法,使得适应过程中能够动态地调整内在秩,从而提高LoRA的表现能力,同时通过更新稀疏方式高效地控制参数数量。实验结果表明,SoRA在保留70%参数和训练时间的情况下,能够胜过其他基准模型。
LoTR方法有什么特点?
LoTR是一种新颖的参数高效微调方法,通过张量分解的形式对参数进行梯度更新,进而构建每层的低秩适配器。它在低秩张量表示下对一系列层进行压缩,尤其适用于深度模型,相比于LoRA具有更好的参数效率,且核心张量不依赖于原始权重维度,可以变得任意小,可实现极为廉价快速的下游微调。
PLoRA如何提升LoRA的学习能力?
PLoRA(PeriodicLoRA)通过多次积累低秩更新矩阵来提高更新秩,并引入一种基于动量的卸载策略以减轻训练不稳定性。实验结果表明,PLoRA具有更强的学习能力,最高可达到LoRA学习能力的1.8倍,但不增加内存使用。
LoRA在多语言任务中表现如何?
研究发现LoRA在低数据情况和跨语言转移中表现出色,当模型增大时,LoRA和完全微调之间的性能差距减小,同时,继续训练LoRA获得了最佳的少样本跨语言转移表现。此外,在多语言文本分类任务中,LoRA与全面微调相比,对分类性能和计算成本有不同影响,为参数节约微调技术的适用性提供了见解。
LoRA微调为什么能帮助找到低秩解?
通过理论分析,在神经切线核(NTK)范式下,使用低秩适应(LoRA)进行微调有助于消除虚假的局部极小值点,从而使得梯度下降算法可以找到低秩解。