Scaling Laws 当道,但随着大模型应用的发展,基础模型不断扩大的参数也成了令开发者们头疼的问题。为了减轻训练负担,Adapter、Prompt-Tuning 以及 LoRA 等高效微调(Parameter Efficient Fine-Tuning, PEFT)算法越来越受到大家伙的青睐。
那么,问题来了—— 尽管近年来高效微调领域发展迅速,涌现了多种方法,但不同 PEFT 方法背后的数学基础几乎没有得到深入研究。 此外,不同 PEFT 方法之间的性能差异及其原因尚未系统地探讨。 这种理论深度的缺乏限制了研究者对这些方法潜在优势和局限性的理解,阻碍了它们在实际应用中的优化和创新。
为了解决这一问题,来自上海交通大学的研究者们在 对各种 PEFT 方法进行全面数学分析 后,提出了一种新的框架—— 子空间微调 ,旨在将所有已知的 PEFT 方法统一在一个理论下。
See Further for Parameter Efficient Fine-tuning by Standing on the Shoulders of Decomposition 论文链接:
https://arxiv.org/pdf/2407.05417 代码链接:
https://github.com/Chongjie-Si/Subspace-Tuning 具体来说,子空间微调方法主要集中于调整原始参数的子空间,涉及子空间的重构和扩展。研究者深入探讨了不同方法如何操作子空间,并从分解理论的角度阐明了每种方法的数学原理。此外,研究者分析了为什么这些方法会导致性能差异,提供了理解不同 PEFT 策略内在动态的全面理论基础。
他们基于此提出了两种新的 PEFT 方法, 新方法在仅微调 0.02% 参数的情况下,性能接近于全面微调。 研究者还介绍了一个有效的框架,在不引入额外训练参数的情况下,提升了 LoRA 等方法的性能。通过在三种不同模型上测试超过十种方法,广泛的实验验证了其理论的稳健性,同时展示了提出的方法和框架的有效性。
来看论文细节。
子空间微调理论
考虑任何给定主干网络层的冻结权重矩阵 ,其中 n≤m,并用权重矩阵 的性能 来量化模型的性能,值越高表示性能越好。 假设存在最优权重矩阵 ,且 对所有 成立。PEFT 的目标公式化为: 其中 衡量两个矩阵之间的差异。函数 被视为增量调优,表示对矩阵 的每个元素的修改,但这种表征过于笼统。 从分解理论的角度看,调整矩阵涉及修改其对应的子空间,因此,所有 PEFT 方法可视为子空间微调。 如此,优化的目标是找到 在 基所生成的子空间内的最大投影,然后将 与其对齐。 有两种方法实现这一目标:通过调整 来逼近 ,或操作 的子空间以接近或包含 。 研究者将函数 分配给两个主要角色:直接重构对应 的子空间,以更好地对齐 ,或引入一个新子空间并与原始子空间结合。这些过程数学表示为:
其中, 概括了 的子空间重构过程, 描述了子空间的联合。研究者将这些操作分别称为“子空间重构”和“子空间扩展”,并将现有方法分类为三类: 1. 基于子空间重构的方法 ,将复杂空间分解为易理解的子空间,并调整这些派生子空间的基; 2. 基于子空间扩展的方法 ,引入一个新子空间,在新子空间和原始权重矩阵 对应的子空间基所生成的空间内找到最优权重 的最大投影; 3. 基于子空间组合的方法 ,同时采用上述子空间调整。
基于先前概述的框架,子空间重构方法首先将 的空间分割为可解释的子空间,然后细化这些子空间以提高模型效率。许多PEFT策略集中于直接重构与原始权重矩阵相关的子空间,著名例子包括SAM-PARSER、Diff Pruning、(IA)3、BitFit、Prefix-tuning和Prompt-tuning等。 研究者从奇异值分解(SVD)开始探索,原始权重矩阵 被分解为正交子空间,涵盖了原始矩阵空间的全部。分解表示为 ,这种分解将 分成左奇异向量 ( 列空间的正交基)、奇异值 (调整维度和缩放)和右奇异向量 ( 行空间的正交基)。通过调整分解获得的子空间,可以重构原始空间,分为三种模式: 1. 奇异值调整: 调整 中的奇异值,修改每个主成分的权重,而不影响子空间方向。 2. 简单奇异向量调整: 通过缩放生成的子空间来调整 和 中的奇异向量,保留方向特性,同时调整幅度。 3. 复杂奇异向量调整: 对奇异向量进行更复杂的变换,重新定向或重塑子空间,全面调整矩阵结构。
基于这一理论,研究者提出了两种新的微调方法:SSL(Scaling the Subspace of the Left singular vectors)和 SSB(Scaling the Subspace of Both left and right singular vectors)。
从下图中可以看出, SSL 最少只需要微调 0.02% 的参数,SSB 最少只需要微调 0.06% 的参数,就能实现全量微调 99% 的性能。
关于每种模式的具体操作、每种方法的具体内容、其背后的数学原理,以及研究者如何基于这一理论提出两种新方法的详细信息,请参阅原论文。 子空间扩展
基于扩展的方法引入新子空间,结合该新子空间和原始权重矩阵 的基生成扩展空间。 这些方法旨在找到最优权重 在新空间内的最接近投影,通过引入额外的权重矩阵来扩大原始子空间的基以覆盖更大维度区域。通常,这些方法的转换函数定义为 ,其中 s 代表缩放因子, 对应于新子空间,也称为附加项。 考虑权重矩阵 ,假设 n≤m。理想情况下,有 ,即 和 占据相同的行和列空间,使它们定位在同一超平面内。 如果 的秩为 n,其列空间的维度等于 n,生成 子空间。若 的秩小于 n,它只能在 内生成一个子空间。假设 和 的列空间基可以生成整个 空间,在最优情况下, 的列基向量应补充 的列基,意味着 的列空间代表这些空间的直和。 一些研究表明,最优权重 会放大原始权重矩阵中某些特定任务的方向,这些方向对于预训练并不关键。此外,最优权重还会调整 的主要方向。这些见解表明 可能与 的子空间共享大量共同基。因此, 可能只需考虑 中缺少但图片中存在的一小部分基,使 成为低秩矩阵。 实证研究表明,预训练模型的全参数微调通常可重新参数化为在低维子空间内优化,表明最优权重在这个受限的低秩子空间内变化。 的低秩特性突出了基于扩展方法的参数效率基础。 另一个关键方面是缩放因子 s。基于扩展的方法目标是确定 在 和 形成的超平面内的最大投影,确保 尽可能与 方向对齐。给定固定的 和 ,只有一个 s 值能使 的方向与 方向对齐,因此 s 值对性能的影响可能非常显著。 在参数高效微调中,有两大系列基于扩展的方法。第一系列是 LoRA 衍生,包括 LoRA、AdaLoRA、TriLoRA、FLoRA、VeRA 等。第二系列是适配器衍生,包括 Adapter(H),Adapter(P),Parallel Adapter 等。
在此基础之上,研究者提出了 MPC 框架 ,以进一步提升现有算法的性能。从下图中可以看出,在不引入额外参数的情况下,MPC 框架显著增强了各种 PEFT 方法的性能。另外,MPC 可以帮助 PEFT 方法实现更稳定的训练。与不使用 MPC 的方法相比,结合 MPC 的方法通常表现出更小的标准偏差。 关于这些方法的具体分析,LoRA 和 Adapter 系列算法性能差异的原因,以及 MPC 框架的详细设计思路,请参阅原论文。
基于组合的方法同时执行子空间重构和扩展,结合了这两种方法的原理。此外,对于某些方法,它们既可以分类为基于重构的方法,也可以分类为基于扩展的方法,研究者也将它们分类为基于组合的方法。研究者分析介绍几种代表性的基于组合的方法,如 DoRA,Spectral Adapter 和 SVDiff等。
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读 ,也可以是学术热点剖析 、科研心得 或竞赛经验讲解 等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品 ,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬 ,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱: [email protected]
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02 )快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」 也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」 订阅我们的专栏吧