【文献阅读】HIRA:大型语言模型的参数高效Hadamard积高阶自适应
https://openreview.net/forum?id=TwJrTz9cRS
HIRA:大型语言模型的参数高效Hadamard积高阶自适应
原文标题:HiRA: Parameter-Efficient Hadamard High-Rank Adaptation for Large Language Models
1 Introduction
预训练大型语言模型(LLM)的最新进展(Touvron等人,2023;Zhang等人,2022;Achiam等人,2023)显著提高了各种自然语言处理任务的性能。传统上,使这些LLM适应特定任务需要完全微调,其中所有模型参数都会更新。然而,由于这些LLM中的参数数量庞大,完全的微调在计算上变得难以实现,特别是在资源受限的环境中。
为了应对这一挑战,已经开发了参数高效微调(PEFT)方法,通过仅更新一小部分参数来适应LLM。基于这种方法,最近的几项研究(Lester等人,2021;Liu等人,2022;Hu等人,2021,Liu等人,2024)引入了通过冻结大多数模型参数并对有限的集合进行更新来保持原始架构完整性的方法。值得注意的是,LoRA(Hu等人,2021)通过将低秩矩阵分解集成到更新∆W=L1L2中来举例说明PEFT,其中L1∈R d×R和L2∈R R×k是秩最多为R的低秩矩阵。与更新全秩参数矩阵W相比,这种技术显著降低了所需的计算成本。
然而,之前的研究(Jiang等人,2024;Liu等人,2023;2024;Zhuang等人,2024)表明,当应用于复杂任务时,LoRA及其大多数变体(Lialin等人,2023)表现不佳,例如需要在单个数据集上进行训练但跨多个子任务进行评估的常识推理。LoRA在这些场景中存在局限性的一个潜在原因是,其更新矩阵∆W(由低秩矩阵L1和L2相乘得出)被限制在r的最大秩。因此,尽管\8710》W是一个d×k矩阵,但它的秩不能超过r,这可能会限制∇W的表达能力,特别是对于更复杂的任务。这个问题的一个自然解决方案是提高更新参数矩阵的秩,以提高其性能。然而,由于资源限制,我们仍然希望遵循PEFT战略。这就引出了我们的研究问题:“在PEFT策略下,LLM是否有可能实现更高的秩适应性?”
为了回答这个问题,在本文中,我们提出了一种用于LLM的哈达玛高秩自适应(HiRA)。HiRA的核心创新是将更新参数矩阵∆W表示为LLM中原始参数矩阵和一个低秩矩阵的哈达玛积(也称为元素积),实现高秩自适应,从而提高其秩和表现力。由于哈达玛积的一个性质,即对于大小相等的两个矩阵O1和O2,秩(O1⊙O2)≤秩(O1)×秩(O2)(Million,2007),其中⊙表示哈达玛积,秩(·)给出矩阵的秩,即使哈达玛积中的两个阵列之一的秩较低,哈达玛积也可能具有更高的秩。
例如,附录A.1中详细说明了实验设置,图1显示,HiRA中更新参数的平均秩远高于LoRA(即2837比32),这表明所提出的HiRA可以拥有高秩更新参数矩阵,同时保持与LoRA相同数量的可训练参数。正如我们的实验部分所证明的那样,HiRA中∆W的排名增加可以增强其表现力。
通过全面的实验,我们证明了HiRA明显优于LoRA及其变体,展示了所提出的HiRA的有效性。广泛的消融研究进一步阐明了HiRA中不同成分的影响,证实了其优势和实用性。
综上所述,本文的贡献如下:
- 我们是第一个将哈达玛积应用于LLM的参数高效自适应的人。
- 基于Hadamard产品,我们提出了HiRA,这是一种新的LLM高阶自适应策略。所提出的HiRA方法显著提高了更新参数矩阵的秩,增强了模型的表达能力和适应性。
- 我们进行了广泛的实验和分析,以证明HiRA的有效性。
2 相关工作
低阶自适应(LoRA)。PEFT方法旨在通过训练一小部分额外参数来有效地使LLM适应下游任务,同时保持大多数预训练权重不变。当前流行的PEFT方法可以大致分为三种主要类型,低阶自适应是一个主要类别。LoRA(Hu等人,2021)将更新权重分解为两个低秩矩阵,允许无缝集成到原始模型中,而无需修改其架构或增加推理开销。作为扩展,DoRA(Liu等人,2024)将权重更新分解为幅度和方向,以与LoRA相同的方式更新方向分量。MoRA(Jiang等人,2024)通过预定义函数压缩输入,通过方形“高阶”矩阵对其进行变换,然后对其进行解压缩以实现高度自适应。与LoRA依赖于更新权重的低秩结构不同,HiRA旨在学习具有高秩的更新权重,以提高表达能力。然而,与MoRA不同,MoRA依赖于复杂的静态压缩和解压缩功能,这可能会使权重合并变得复杂,HiRA与LoRA一样,可以无缝地合并到预训练模型中。
最近,FLoRA(Wen&Chaudhuri,2024)使用Hadamard产品实现了一个特定于示例的适配器,实现了高效的批处理,而PACE(Ni等人,2024。相比之下,HiRA采用哈达玛乘积来实现更高的秩自适应(如图1和图7中的经验所示),并进行了更深入的分析,这使得它们有了显著的不同。
其他PEFT方法。第二类包括基于提示的方法,该方法将额外的可训练虚拟令牌集成到LLM的输入中,并专门专注于训练这些令牌。代表性方法包括Prompt Tuning(Lester等人,2021)和P-Tuning(Liu等人,2022),前者在初始层引入了一系列用于特定任务自适应的虚拟令牌,后者在每一层而不是初始层添加虚拟令牌。尽管基于提示的方法在输入中添加的可训练参数数量可以忽略不计,但它们对初始化非常敏感。此外,由于变压器架构的二次计算复杂性(Vaswani等人,2017),基于提示的方法可能会在推理过程中与提示的长度成比例地增加计算成本。第三类包括基于适配器的方法。这些方法将可训练模块(如适配器层)插入到原始冻结的LLM中。典型的方法包括向LLM添加线性层的Adapter(Houlsby等人,2019)和Compacter(Karimi Mahabadi等人,2021)。并行适配器(He等人,2021)并行集成适配器以提高性能。这些方法在训练和推理过程中修改了原始模型的架构,与原始LLM相比,可能会增加开销。
3 动机
LLM的有效微调需要在模型表现力和计算效率之间保持谨慎的平衡。因此,现有研究使用的LoRA等级较低(例如32或64)。这种设置在某些任务上取得了良好的性能。对于更复杂的任务,如常识推理,我们发现具有更高等级的LoRA可以显著提高Llama3-8B的性能,如图2所示。我们的结果表明,特别是对于复杂的任务,更新具有更高秩的模型参数可能有助于实现更好的性能。这一观察结果通过强调高秩适应提供显著优势的场景来补充现有的研究。
然而,增加LoRA中的秩会导致计算需求增加,这与PEFT的目标相冲突,训练也变得更加困难,通常会导致梯度爆炸等问题,详见附录A.3。因此,需要一种能够实现高秩自适应而不会产生额外计算负担的方法。如下一节所述,所提出的HiRA方法满足了这一需求。
4 方法
4.1 秩分析
LoRA及其依赖于两个低秩矩阵之间乘积的变体的一个局限性是,更新参数的最大可实现秩受到固有约束。\(W_0\in\mathbb{R}^{d\times k}\) 表示原始参数矩阵,其秩由 \(r_0\) 表示,其中 \(r_0\leq \min(d,k)\)。LoRA中的更新参数矩阵 \(\Delta W\) 被假设为 \(L_1\in\mathbb{R}^{d\times r}\) 和 \(L_2\mathbb{R}^{r\times k}\) 的乘积,其中 \(R\) 远小于 \(d\) 和 \(k\),即 \(\Delta W=L_1 L_2\)。由于秩的性质,\(\Delta W\) 的最大秩为 \(r\)。因此,\(\Delta W\) 的低秩特性可能会限制其捕获高秩更新的能力。因此,这种低秩更新参数可能会限制由 \(W'\) 表示的最终微调参数的秩(即 \(W'=W_0+\Delta W\)),因为
其中由于秩函数的性质,第一等式成立。因此,\(W'\) 的最大秩为 \(\min(\min(d,k),r_0+r)\)。因此,\(\Delta W\) 的低秩性质可能会限制 \(W'0\) 的表达能力。为了解决这个问题,我们提出了 HiRA 方法,在 PEFT 策略下以更高的秩学习 \(\Delta W\),这可以提高表现力和性能。
4.2 通过Hadamard积提升秩
具有相同大小的两个矩阵 \(P\) 和 \(Q\) 的Hadamard积给出了一个满足 \(o_{i,j}=p_{i,j}q_{i,j}\) 的矩阵 \(O\),其中 \(p_{i,j}\)、\(q_{ij}\) 和 \(o_{ij}\) 分别表示 \(P\)、\(Q\) 和 \(O\) 中的第 \((i,j)\) 个条目。因此,Hadamard积也被称为两个矩阵之间的元素积。Hadamard积的一个优点是
其中 \(\odot\) 表示Hadamard积。根据不等式(1),我们可以看到两个矩阵的Hadamard积的最大可实现秩的上限是它们的秩的乘积。当 \(P\) 和 \(Q\) 具有适当的大小以使矩阵乘法可行时,我们有
比较不等式(1)和(2),我们可以看到,即使 \(P\) 或 \(Q\) 或两者的秩都很低,Hadamard积的秩上限也远大于矩阵乘法的秩上限。请注意,LoRA中的更新参数依赖于两个低秩矩阵的矩阵乘法,不等式(2)意味着LoRA的更新参数是低秩的。从这个秩上限的角度来看,Hadamard积可以帮助改善这一点。
秩的上限可能不能精确反映实际秩,但它给出了Hadamard积的可能最大秩。据我们所知,Hadamard积秩的下界分析仅适用于具有特殊结构的 \(P\) 和 \(Q\)(例如,半正定矩阵(Horn&Yang,2020))。根据经验,我们发现Hadamard积可以提高秩,如图1和图7所示。
4.3 Formulation
在Hadamard积的基础上,我们给出了更新参数矩阵的一般公式:
其中 \(W_{hi}\) 是可训练参数,\(R\) 是固定矩阵。基于不等式(1),我们得到
当 \(R\) 具有高阶时,不等式(4)表明 \(\Delta W\) 也可以达到高阶,可能超过 \(\min(d,k)\)。为了保证参数效率,我们将 \(W_{hi}\) 限制为低阶,即
其中 \(A\in\mathbb{R}^{d\times r}\),\(B\in\mathbb{R}^{r\times k}\),且 \(R\) 远小于 \(\min(d,k)\)。方程式(5)中定义的分解表明 \(W_{hi}\) 具有最大秩 \(r\),证实了其低秩性质。
根据方程式(3)和(5),很容易看出,当 \(R\) 被选择为全一的矩阵时,方程式(3)给出了LoRA中更新参数矩阵的公式,使LoRA成为HiRA的特例。然而,\(R\) 的设置信息量不大,因为它没有利用预训练LLM中的任何信息。相反,在HiRA中,我们使用LLM中的冻结参数 \(W_0\) 为 \(R\),因为 \(W_0\) 可以包含LLM的有用信息。通过将上述所有考虑因素结合在一起,我们可以得到所提出的HiRA方法的更新参数为
根据不等式(4),方程(6)中定义的 \(\Delta 0\) 的秩上限为 \(r_0r\),允许潜在的高秩,如图3所示。这里,\(r\) 设置为等于LoRA的维度,确保可训练参数的数量保持不变,并满足PEFT的要求。
在训练过程中,\(W_0\) 保持不变,而 \(A\) 和 \(B\) 作为可训练参数,以促进模型更新。对于线性层 \(h=W_0x\),HiRA将该层的前向传递修改为
\(W'\) 的计算产生了计算复杂度 \(\mathcal{O}(drk+dk)=\mathcal{O}(drk)\),这与LoRA中的计算复杂度相当。为了确保更新参数的初始值不会修改原始LLM,我们要求更新参数的原始值为零矩阵。为了实现这一点,\(W_{hi}\) 的初始值可以是零矩阵。根据这一要求,\(A\) 被初始化为零矩阵,而 \(B\) 则用kaiming初始化进行初始化。
4.4 推理的高效模型自适应
在生产部署过程中,HiRA通过预计算并将更新参数合并到 \(W_0\) 中,形成 \(W'=W_0+W_0\odot(AB)\),促进了高效推理。这使得LLM能够快速在任务之间切换,因为通过 \(AB+1\) 的元素分割可以恢复原始参数。然后,可以使用HiRA使LLM适应新任务。值得注意的是,将更新参数直接集成到 \(W_0\) 中消除了推理过程中的计算开销,并避免了通常与其他PEFT技术(如提示调优和PTuning)相关的额外延迟。此外,MoRA引入了复杂的映射函数,将输入压缩到相对较高的维度,然后解压缩回来,只有当压缩和解压缩中的函数映射可以用变换矩阵表示时,这些函数才能很容易地合并到LLM中的原始参数中,并且会产生额外的计算开销。
4.5 与内在维度的关系
先前的研究(Li等人,2018;Aghajanyan等人,2021)表明,LLM具有较低的内在维度,这意味着只有一小部分可训练参数是有效微调所必需的。虽然LoRA(Hu等人,2021)表明更新参数矩阵 \(\Delta W\) 的秩较低,但我们的研究结果补充了这一点,表明在基于Hadamard积的 \(W_{hi}\) 的低内在维数下,\(\Delta W\) 的秩可以提高。区分内在维度和 \(\Delta W\) 的秩至关重要;尽管低内在维度意味着只需要微调少数参数,但它本身并不要求低秩。我们的方法强调,即使在低内在维度的紧凑参数空间内,增加 \(\Delta W\) 的秩也有利于提高模型的灵活性和性能。
4.6 HIRA的表现力
在本节中,我们以曾和李(2024)为基础,分析了HiRA的表达能力,曾和李最初研究了LoRA的表达力。在HiRA中,给定预训练的权重矩阵 \(W_0\),更新后的权重定义为 \(W_0+W_0\odot(AB)\)。我们用 \(\overline{E}\) 表示最优更新,并通过更新权重与 \(\overline{E}\) 之间的最小差来衡量表达能力。对于秩为 \(r\) 的LoRA,最小差等于第 \(r+1\) 个最大奇异值,用 \(\sigma_{r+1}(\overline{E})\) 表示。在定理1中,我们分析了HiRA的表达能力。
定理1。(HiRA的表达能力)考虑最优参数更新 \(E\) 和形式为 \(W_0\odot W_{hi}\) 的HiRA更新,其中 \(W_{hi}\) 的秩小于 \(r\)。然后我们有
其中 \(\oslash\) 表示元素间相除。
根据定理1,HiRA的表达能力取决于 \(E\oslash W_0\),而不是LoRA中的单独 \(E\)。附录B提供了详细的证明和分析。HiRA和LoRA之间的关键区别在于 \(W_0\) 的作用,其高阶属性与所包含的信息有着内在的联系。在这种情况下,HiRA中的 \(W_0\) 具有双重作用:它限制和促进适应。尽管 \(W_0\) 中包含的信息限制了更新矩阵的灵活性,使其无法达到无约束的高秩矩阵,但嵌入在 \(W_0\) 中的预训练知识也辅助了适应过程,从而实现了更高效的微调。
4.7 梯度分析
HiRA和LoRA之间的区别还在于它们的梯度如何与预训练权重矩阵 \(W_0\) 相互作用。设 \(y'=W_0x+\Delta Wx\) 和 \(y\) 表示预测标签和真实标签。为了简单起见,我们考虑具有均方误差损失 \(\mathcal{L}\) 的线性神经网络。
对于LoRA,梯度可以被计算为 \(\frac{\partial\mathcal{L}}{\partial A}=B^\top(y-y')(-x^\top)\) 和 \(\frac{\partial\mathcal{L}}{\partial B}=(y-y')(-x^\top)A\),都与 \(W_0\) 无关。相反,在HiRA中梯度表示如下
这表明HiRA可以利用 \(W_0\) 中编码的信息来指导自适应。因此,当预训练模型已经捕获了与下游任务相关的模式时,HiRA可以潜在地提高性能。

浙公网安备 33010602011771号