前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >上交大高效微调全面分析|站在分解理论的肩上,见远高效微调算法,洞察底层逻辑!

上交大高效微调全面分析|站在分解理论的肩上,见远高效微调算法,洞察底层逻辑!

作者头像
AIGC 先锋科技
发布2024-07-20 10:20:27
440
发布2024-07-20 10:20:27
举报
文章被收录于专栏:AIGC 先锋科技

站在分解理论的肩上,对参数高效微调看的更远

arxiv: https://arxiv.org/pdf/2407.05417

code: https://github.com/Chongjie-Si/Subspace-Tuning

简介

基础模型的出现,如多项研究所引用的(Brown等,2020;Radford等,2019,2021;Devlin等,2018;Liu等,2019),从根本上改变了人工智能的格局,展示了在各种领域的显著有效性。传统上,适应预训练模型到特定下游任务需要全面微调所有参数(Ma等,2024;Raffel等,2020;Qiu等,2020)。然而,随着这些模型的复杂性和规模增加,这种传统的微调方法在计算和资源方面变得不再可行。

为了应对这些挑战,出现了更多参数高效微调技术(Chen等,2024;Guo等,2020;He等,2021a;Hu等,2021),统称为参数高效微调(PEFT)。PEFT的目标是在微调尽可能少的参数情况下,在下游任务中达到可比的性能。

然而,尽管近年来PEFT取得了显著进展(Han等,2024;He等,2021a;Fu等,2023),不同PEFT方法背后的数学基础几乎没有得到研究。此外,不同PEFT方法之间的性能差异及其背后的原因尚未系统地探讨。这种理论深度的缺乏限制了我们对这些方法潜在优势和局限性的理解,阻碍了它们在实际应用中的优化和创新。因此,在这一领域进行理论研究对于推动PEFT技术的发展至关重要,为选择和设计更高效的微调策略提供了基本依据。

因此,在本文中,我们对PEFT技术进行了开创性的理论研究,利用分解理论的见解,包括矩阵(分解)和子空间(分解)理论。我们提出了一种新的框架,称为子空间微调,该框架将所有已知的PEFT方法统一在一个理论下。子空间微调方法主要集中于调整原始参数的子空间,涉及子空间的重构和扩展。我们深入探讨了不同方法如何操作子空间,并从分解理论的角度阐明了每种方法的数学原理。此外,我们分析了为什么这些方法会导致性能差异,提供了理解不同PEFT策略内在动态的全面理论基础。

此外,受我们的理论分析启发,我们提出了两种新颖的PEFT方法。与现有技术相比,这些新方法在仅微调0.02%参数的情况下,性能接近于全面微调。我们还介绍了一个有效的框架,该框架在不引入额外训练参数的情况下,提升了LoRA等方法的性能。我们进行了广泛的实验,通过在三种不同模型上测试超过十种方法,验证了我们的理论。结果不仅证实了我们的理论见解的稳健性,还展示了我们提出的方法和框架的有效性。

我们希望我们的研究能够显著激发PEFT及其他相关领域的进一步研究(Mudrakarta等,2018;Si等,2024a;Jovanovic和Voss,2024;Feng和Narayanan,2023;Si等,2023;Mahabadi等,2021),推动进步并影响整个人工智能领域的发展

子空间微调

考虑作为任何给定主干网络层的冻结权重矩阵,且,在不失一般性的情况下。我们用权重矩阵的性能来量化模型的性能,其中值越高表示性能越好。对于特定任务,假设存在最优权重矩阵,我们断言对于所有。PEFT的目标因此被公式化为

其中衡量两个矩阵之间的差异。在以前的工作中,函数被概念化为增量调优,表示对矩阵的每个元素的修改。虽然这种表征是准确的,但它过于笼统,无法充分捕捉每种方法的内在逻辑。事实上,从分解理论的角度来看,调整矩阵本质上涉及修改其对应的子空间。因此,所有PEFT方法都可以视为子空间微调(图1a),我们建议将视为一种转换函数,用于修改与矩阵相关的子空间。因此,方程的目标是找到在基所生成的子空间内的最大投影,然后将与其对齐。显然有两种方法可以实现这一目标:

  • 通过调整来逼近的投影;
  • 操作的子空间以接近或包含。

因此,我们将函数分配给两个主要角色:

  • 直接重构对应W的子空间,以更好地对齐;
  • 引入一个新子空间并与原始子空间结合。

这些过程可以通过以下公式数学表示:

在这里,概括了的子空间重构过程,而描述了子空间的联合。我们将这些操作分别称为“子空间重构”和“子空间扩展”(图1b)。因此,我们将现有方法分类为以下三类:基于子空间重构、基于子空间扩展和基于子空间组合的方法(图1c)。

  • 基于重构的方法将与原始权重矩阵相关的复杂空间分解为更直观和易于理解的子空间,并调整这些派生子空间的基;
  • 基于扩展的方法引入一个新的子空间。它们寻求在由新子空间和原始权重矩阵对应的子空间基所生成的空间内找到最优权重的最大投影;
  • 基于组合的方法同时采用上述子空间调整。

子空间重构

基于先前概述的框架,利用子空间重构的方法首先将的空间分割为可解释的子空间。这些子空间然后被细化以提高模型效率。对于这些方法,转换函数被简明地表示为。许多PEFT策略集中于直接重构与原始权重矩阵相关的子空间。著名例子包括SAM-PARSER(Peng等,2024)、Diff Pruning(Guo等,2020)、(IA)3(Liu等,2022)、BitFit(Zaken等,2021)、Prefix-tuning(Li和Liang,2021)和Prompt-tuning(Lester等,2021)等。

我们从奇异值分解(SVD)开始探索,这是子空间分解中的一个关键技术。原始权重矩阵被分解为正交子空间,它们共同涵盖了原始矩阵空间的全部。这种分解被正式表示为,其中是一个矩形对角矩阵,由以下公式给出:

这种分解系统地将W分成三个主要组件:

  • :左奇异向量,形成列空间的正交基;
  • :奇异值,由对角元素表示,测量每个主轴的强度或重要性,并在子空间内调整维度和缩放;
  • :右奇异向量,构成行空间的正交基。

SVD阐明了结构所依据的基本子空间,通过巧妙地调整通过分解过程获得的子空间,可以重构原始空间。这些子空间的细化分为三种不同的模式(图2a和2b):

  • 模式1,奇异值调整:此模式涉及对中的奇异值进行调整,从而调整相应主子空间内的缩放。改变这些值可以在不影响和定义的子空间方向特性的情况下,修改每个主成分的权重;
  • 模式2,简单奇异向量调整:此模式涉及通过缩放它们生成的子空间来对和中的奇异向量进行简单调整。它保留了子空间的方向特性,同时调整它们的幅度以提高性能;
  • 模式3,复杂奇异向量调整:此模式包含对奇异向量的更复杂的变换,涉及子空间的重新定向或重塑。它同时影响子空间的方向和尺度,促进对矩阵结构的全面调整。

关于每一种模式具体是怎么做的,该模式中每一种方法具体是在做什么,其背后的数学原理是什么,以及我们如何基于这一理论提出了两种新的方法,更多细节请查阅原论文。

子空间扩展

基于扩展的方法引入一个新子空间,结合该新子空间和原始权重矩阵的基来生成一个扩展空间。这些方法旨在找到最优权重在此新空间内的最接近投影,实质上是通过引入额外的权重矩阵来扩大原始子空间的基以覆盖更大的维度区域(图3)。通常,这些方法的转换函数定义为,其中代表缩放因子。这里对应于引入的新子空间,也称为附加项。

考虑权重矩阵 ,在不失一般性的情况下假设。理想情况下,我们有。这种设置意味着和占据相同的行和列空间,将它们定位在同一超平面内。理想情况下,如果的秩为,其列空间的维度也等于,使其能够生成子空间。然而,如果的秩小于,它只能在内生成一个子空间。由于我们不知道列空间的基,一个保守的假设是和的列空间基可以生成整个空间。在最优情况下,的列基向量应理想地补充的列基,意味着的列空间代表这些空间的直和。

尽管如此,一些研究表明,最优权重会放大原始权重矩阵中某些特定任务的方向,这些方向对于预训练并不关键(Hu等,2021)。此外,最优权重还会调整的主要方向(Zhang和Pilanci,2024)。这些见解表明可能与的子空间共享大量共同基。因此,可能只需要考虑中缺少的,但中存在的一小部分基,从而使成为一个低秩矩阵(Hu等,2021;Si等,2024c)。此外,实证研究表明,预训练模型的全参数微调通常可以重新参数化为在低维子空间内的优化(Aghajanyan等,2020;Li等,2018),表明最优权重在这个受限的低秩子空间内变化。的这种低秩特性突出了基于扩展方法的参数效率基础。我们将展示,无论采用何种方法,它们都对施加了低秩约束。

另一个关键方面是缩放因子。对于基于扩展的方法,我们的目标是确定W∗在由和形成的超平面内的最大投影,确保尽可能与对齐。给定固定的和,只有一个值会使的方向与的方向对齐。因此,值对性能的影响可能非常显著或甚至关键。

在参数高效微调中,有两大系列基于扩展的方法。第一个系列是LoRA衍生,包括LoRA(Hu等,2021)、AdaLoRA(Zhang等,2022)、TriLoRA(Feng等,2024)、FLoRA(Si等,2024c)、VeRA(Kopiczko等,2023)和LoTR(Bershatsky等,2024)。这些方法主要依赖于低秩矩阵分解技术。第二个系列是适配器衍生,包括Houlsby等人提出的方法(Houlsby等,2019)、He等人提出的方法(He等,2021a)以及Pfeiffer等人引入的方法(Pfeiffer等,2020),这些方法在现有架构中引入了小规模神经模块或适配器。

关于这些方法的具体分析,LoRA和Adapter系列的算法性能为何会出现差异,以及我们如何设计一个框架在不引入新参数的情况下帮助现有算法进一步提高,请查看原论文。

一些结论如下:

子空间组合

基于组合的方法同时执行子空间重构和扩展,结合了这两种方法的原理。此外,对于某些方法,它们既可以分类为基于重构的方法,也可以分类为基于扩展的方法,我们也将它们分类为基于组合的方法。我们这里介绍几种代表性的基于组合的方法,如DoRA(Liu等,2024),Spectral Adapter(Zhang和Pilanci,2024)和SVDiff(Han等,2023)等。

关于这些方法的具体细节请参阅原论文。

结论

在本文中,我们首次从分解角度统一了所有PEFT方法,并解释了不同方法在子空间层面的操作。我们详细分析了每种方法背后的数学原理,并解释了它们性能为何不同。此外,我们提出了两种新方法,这些方法可以在训练不到千分之一参数的情况下达到99%的性能。我们还介绍了一个框架,帮助现有算法有效提升其性能。总体而言,这项工作展示了该领域及相关领域进一步发展的巨大潜力,我们希望通过理论和实验研究进一步探索相关范式。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-07-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AIGC 先锋科技 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 站在分解理论的肩上,对参数高效微调看的更远
  • 简介
  • 子空间微调
  • 子空间重构
  • 子空间扩展
  • 子空间组合
  • 结论
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档