当前位置: 首页 > news >正文

High Rank Adaption系列文章

High Rank Adaption

0. 符号

符号说明
A,BA, BA,B低秩因子矩阵(HiRA、LoRA等方法中)
A(i)(ri,ii)A^{(i)}(r_i,i_i)A(i)(ri,ii)TERA中因子矩阵,第iii个因子矩阵的第(ri,ii)(r_i,i_i)(ri,ii)个元素
A∈Rn×nA \in \mathbb{R}^{n \times n}ARn×nHyperAdapt中的行缩放对角矩阵
Aij∈R(r/b)×(n/b)A_{ij} \in \mathbb{R}^{(r/b) \times (n/b)}AijR(r/b)×(n/b)BHRA中第(i,j)(i,j)(i,j)个子块的低秩因子矩阵
B∈Rm×mB \in \mathbb{R}^{m \times m}BRm×mHyperAdapt中的列缩放对角矩阵
Bij∈R(m/b)×(r/b)B_{ij} \in \mathbb{R}^{(m/b) \times (r/b)}BijR(m/b)×(r/b)BHRA中第(i,j)(i,j)(i,j)个子块的低秩因子矩阵
B1,A1,B2,A2B_1, A_1, B_2, A_2B1,A1,B2,A2ABBA中的低秩因子矩阵
bbbBHRA中的分块数(b×bb \times bb×b个块)
Cij=BijAijC_{ij} = B_{ij} A_{ij}Cij=BijAijBHRA中的块内低秩乘积(局部容量因子)
CBHRAC_{\text{BHRA}}CBHRABHRA中的容量张量(块矩阵)
dddDiaBlo中每个子块的维度(假设m=n=N⋅dm = n = N \cdot dm=n=Nd);MORA中大模型的维度参数
d(i)(ri)d^{(i)}(r_i)d(i)(ri)TERA中的对角线缩放向量,第iii个缩放向量的第rir_iri个元素
d1=m1N,d2=m2Nd_1 = \frac{m_1}{N}, d_2 = \frac{m_2}{N}d1=Nm1,d2=Nm2DiaBlo中子块的维度参数
dind_{\text{in}}din输入维度(与mmm一致)
doutd_{\text{out}}dout输出维度
DDDDiaBlo中的块对角适配矩阵
Di∈Rd×dD_i \in \mathbb{R}^{d \times d}DiRd×dDiaBlo中第iii个对角块的更新矩阵
FFFQWHA中可训练的稀疏系数矩阵
fcompf_{\text{comp}}fcompMORA中的压缩算子
fdecompf_{\text{decomp}}fdecompMORA中的解压算子
hhh前向传播的输出(KRAdapter、MORA等)
HHHQWHA中的Walsh–Hadamard变换矩阵(WHT),仅含±1,满足HTH=IH^T H = IHTH=I
H−1H^{-1}H1HHH的逆矩阵(QWHA中)
HTH^THTHHH的转置矩阵(QWHA中)
III单位矩阵
KKKHD-PiSSA中的设备数量
k,k1,k2k, k_1, k_2k,k1,k2KRAdapter中矩阵U、VU、VUV的行维度;MORA中大模型的维度参数
mmm矩阵的行维度(与dind_{\text{in}}din一致,如W0∈Rm×nW_0 \in \mathbb{R}^{m \times n}W0Rm×n
MMMMORA中替代LoRA的A、BA、BAB的正方形矩阵
NNNDiaBlo中块矩阵的划分数量(N×NN \times NN×N个块);RELoRA中的更新轮数;TERA中张量的维度数
nnn矩阵的列维度(如W0∈Rm×nW_0 \in \mathbb{R}^{m \times n}W0Rm×n
np=⌊np⌋n_p = \lfloor n p \rfloornp=npLoSiA中输出神经元子集大小
p∈(0,1]p \in (0,1]p(0,1]LoSiA中子集大小比例参数
rrr低秩因子的秩(HiRA中A⋅BA \cdot BAB的秩);总秩预算(BHRA中);LoRA的秩(MORA中);PiSSA中选取的最大奇异值数量
r0=rank(W0)r_0 = \text{rank}(W_0)r0=rank(W0)W0W_0W0的秩
r1=rank(B1A1)r_1 = \text{rank}(B_1 A_1)r1=rank(B1A1)ABBA中B1A1B_1 A_1B1A1的秩
r2=rank(B2A2)r_2 = \text{rank}(B_2 A_2)r2=rank(B2A2)ABBA中B2A2B_2 A_2B2A2的秩
rir_iriDiaBlo中第iii个块DiD_iDi的秩
rblock=r/br_{\text{block}} = r / brblock=r/bBHRA中的块内秩预算
RiR_iRiTERA中核心张量第iii维的维度
r^=⌊(d+k)r⌋\hat{r} = \lfloor \sqrt{(d + k)r} \rfloorr^=(d+k)rMORA中压缩后的维度
SSSLoSiA中神经元子集(SinS_{\text{in}}Sin为输入子集,SoutS_{\text{out}}Sout为输出子集)
SrS_rSrPiSSA中前rrr个奇异值组成的对角矩阵
sssRELoRA中的缩放因子
sABBAs_{\text{ABBA}}sABBAABBA中的缩放因子
U,V⊤U, V^\topU,V奇异值分解(SVD)的左、右奇异向量矩阵(W=U⋅S⋅V⊤W = U \cdot S \cdot V^\topW=USV
UrU_rUrPiSSA中对应前rrr个奇异值的左奇异向量矩阵
U∈Rk1×din,V∈Rk2×dinU \in \mathbb{R}^{k_1 \times d_{\text{in}}}, V \in \mathbb{R}^{k_2 \times d_{\text{in}}}URk1×din,VRk2×dinKRAdapter中的矩阵
uiju_{ij}uijKRAdapter中矩阵UUU的第iii行第jjj列元素
vj∈Rk2v_j \in \mathbb{R}^{k_2}vjRk2KRAdapter中矩阵VVV的第jjj列向量
Vr⊤V_r^\topVrPiSSA中对应前rrr个奇异值的右奇异向量矩阵
WWW预训练权重矩阵(DiaBlo、PiSSA等)
W0W_0W0预训练权重矩阵(冻结权重,HiRA、BHRA等)
W′W'W微调后的最终参数矩阵(HiRA、HyperAdapt等)
W0,ijW_{0,ij}W0,ijBHRA中W0W_0W0的第(i,j)(i,j)(i,j)个子块
WijW_{ij}WijDiaBlo中WWW的第(i,j)(i,j)(i,j)个子块,Wij∈Rd×dW_{ij} \in \mathbb{R}^{d \times d}WijRd×d
Wfinetuned=W+DW_{\text{finetuned}} = W + DWfinetuned=W+DDiaBlo中微调后的权重矩阵
WAk,WBkW_A^k, W_B^kWAk,WBkRELoRA中第kkk轮的低秩因子矩阵
Wi(0),Wi(TN)W_i^{(0)}, W_i^{(T_N)}Wi(0),Wi(TN)RELoRA中第iii层初始权重和第NNN轮后权重
WS=W[Sout,Sin]∈Rnp×mpW_S = W[S_{\text{out}}, S_{\text{in}}] \in \mathbb{R}^{n_p \times m_p}WS=W[Sout,Sin]Rnp×mpLoSiA中更新的子矩阵
xxx输入向量(KRAdapter、MORA等)
α\alphaαKRAdapter中的缩放因子
ΔW\Delta WΔW权重更新矩阵(HyperAdapt、QWHA、RELoRA等)
ΔWABBA\Delta W_{\text{ABBA}}ΔWABBAABBA的权重更新量
ΔWBHRA\Delta W_{\text{BHRA}}ΔWBHRABHRA的权重更新矩阵
ΔWBHRA,ij\Delta W_{\text{BHRA},ij}ΔWBHRA,ijΔWBHRA\Delta W_{\text{BHRA}}ΔWBHRA的第(i,j)(i,j)(i,j)个子块
ΔWHiRA\Delta W_{\text{HiRA}}ΔWHiRAHiRA的权重更新矩阵
ΔWMoRA\Delta W_{\text{MoRA}}ΔWMoRAMoRA的权重更新矩阵
ΔW\Delta \mathcal{W}ΔWTERA中张量化的权重更新矩阵
δWt\delta W^tδWtt=1,2,...,Nt=1,2,...,Nt=1,2,...,NRELoRA中第ttt轮的低秩更新
⌊⋅⌋\lfloor \cdot \rfloor向下取整符号
∘\circHadamard积(元素级乘积,HiRA中)
⊙\odotHadamard积(元素级乘积,ABBA中);Khatri-Rao乘积(列向克罗内克乘积,KRAdapter中)
□\squareBHRA中的块wise Hadamard积(逐块执行Hadamard积)
∑\sum求和符号
rank(⋅)\text{rank}(\cdot)rank()矩阵的秩
Ra×b\mathbb{R}^{a \times b}Ra×b维度为a×ba \times ba×b的实数矩阵空间
min⁡(a,b)\min(a,b)min(a,b)aaabbb中的最小值
G(r1,r2,…,rN)\mathcal{G}(r_1,r_2,\dots,r_N)G(r1,r2,,rN)TERA中的核心张量
Unfold[N;k](ΔW)\text{Unfold}_{[N;k]}(\Delta \mathcal{W})Unfold[N;k](ΔW)TERA中将张量化的权重更新矩阵转化为矩阵的操作

1. HiRA

原理

HiRA 的更新矩阵:

ΔWHiRA=W0∘(A⋅B) \Delta W_{\text{HiRA}} = W_0 \circ (A \cdot B) ΔWHiRA=W0(AB)

此时,微调后最终参数矩阵为:

W′=W0+ΔWHiRA=W0+W0∘(A⋅B) W' = W_0 + \Delta W_{\text{HiRA}} = W_0 + W_0 \circ (A \cdot B) W=W0+ΔWHiRA=W0+W0(AB)

秩分析

根据 Hadamard 积的秩上界,对ΔWHiRA\Delta W_{\text{HiRA}}ΔWHiRA做秩分析:

Rank(ΔWHiRA)=Rank(W0∘(A⋅B))≤Rank(W0)×Rank(A⋅B)≤r0×r \text{Rank}(\Delta W_{\text{HiRA}}) = \text{Rank}(W_0 \circ (A \cdot B)) \leq \text{Rank}(W_0) \times \text{Rank}(A \cdot B) \leq r_0 \times r Rank(ΔWHiRA)=Rank(W0(AB))Rank(W0)×Rank(AB)r0×r

劣势

HiRA的更新量依赖W0W_0W0的元素值:若目标更新ΔWtarget=diag(W0)\Delta W_{\text{target}} = \text{diag}(W_0)ΔWtarget=diag(W0)W0W_0W0的对角矩阵),则需BA≈IB A \approx IBAI(单位矩阵),但低秩矩阵难以准确表示正交结构的单位矩阵。此外,若rank(ΔWtarget/W0)≥rank(ΔWtarget)\text{rank}(\Delta W_{\text{target}} / W_0) \geq \text{rank}(\Delta W_{\text{target}})rank(ΔWtarget/W0)rank(ΔWtarget),HiRA的重构误差与LoRA一致,无实际优势。

2. ABBA

原理

ABBA的权重更新量为:
ΔWABBA=sABBA⋅(B1A1)⊙(B2A2) \Delta W_{\text{ABBA}} = s_{\text{ABBA}} \cdot (B_1 A_1) \odot (B_2 A_2) ΔWABBA=sABBA(B1A1)(B2A2)
初始化:

B1A1B_1 A_1B1A1初始化使用奇异值分解得到的矩阵

B2A2B_2 A_2B2A2初始化使用LoRA初始化方法

秩分析

ABBA的有效秩由哈达玛积的秩性质决定:

  • rank(B1A1)=r1\text{rank}(B_1 A_1) = r_1rank(B1A1)=r1rank(B2A2)=r2\text{rank}(B_2 A_2) = r_2rank(B2A2)=r2,则rank((B1A1)⊙(B2A2))≤r1⋅r2\text{rank}((B_1 A_1) \odot (B_2 A_2)) \leq r_1 \cdot r_2rank((B1A1)(B2A2))r1r2(同HiRA的秩性质)。

r1=r2=r/2r_1 = r_2 = r/2r1=r2=r/2时,ABBA的有效秩上限为(r/2)⋅(r/2)=r2/4(r/2) \cdot (r/2) = r^2/4(r/2)(r/2)=r2/4,远高于LoRA的rrr

3. BHRA

原理

BHRA首先对冻结权重矩阵W0W_0W0进行均匀分块(文档假设m/bm/bm/bn/bn/bn/b为整数,非均匀分块可推广):
W0∈Rm×nW_0 \in \mathbb{R}^{m \times n}W0Rm×n划分为b×bb \times bb×b个不重叠子块,每个子块的维度为(m/b)×(n/b)(m/b) \times (n/b)(m/b)×(n/b),第(i,j)(i,j)(i,j)个子块记为W0,ijW_{0,ij}W0,ij

分块后满足块矩阵重构关系
W0=[W0,11W0,12⋯W0,1bW0,21W0,22⋯W0,2b⋮⋮⋱⋮W0,b1W0,b2⋯W0,bb] W_0 = \begin{bmatrix} W_{0,11} & W_{0,12} & \cdots & W_{0,1b} \\ W_{0,21} & W_{0,22} & \cdots & W_{0,2b} \\ \vdots & \vdots & \ddots & \vdots \\ W_{0,b1} & W_{0,b2} & \cdots & W_{0,bb} \end{bmatrix} W0=W0,11W0,21W0,b1W0,12W0,22W0,b2W0,1bW0,2bW0,bb
对每个子块W0,ijW_{0,ij}W0,ij,BHRA独立分配一对低秩因子BijB_{ij}BijAijA_{ij}Aij,其维度由“总秩预算rrr均匀分配”决定:

  • 块内秩预算:rblock=r/br_{\text{block}} = r / brblock=r/b(总秩rrr按行分块数bbb平均分配,确保总秩不变);

  • 低秩因子维度(公式5):
    Bij∈R(m/b)×(r/b),Aij∈R(r/b)×(n/b)(5) B_{ij} \in \mathbb{R}^{(m/b) \times (r/b)}, \quad A_{ij} \in \mathbb{R}^{(r/b) \times (n/b)} \tag{5} BijR(m/b)×(r/b),AijR(r/b)×(n/b)(5)

  • 块内低秩乘积(局部容量因子):Cij=BijAijC_{ij} = B_{ij} A_{ij}Cij=BijAij,由LoRA低秩约束可知rank(Cij)≤r/b\text{rank}(C_{ij}) \leq r/brank(Cij)r/b

将所有块内低秩乘积CijC_{ij}CijW0W_0W0的分块结构排列,构成容量张量(定义为块矩阵,公式6):
CBHRA=[C11C12⋯C1bC21C22⋯C2b⋮⋮⋱⋮Cb1Cb2⋯Cbb]∈Rm×n(6) C_{\text{BHRA}} = \begin{bmatrix} C_{11} & C_{12} & \cdots & C_{1b} \\ C_{21} & C_{22} & \cdots & C_{2b} \\ \vdots & \vdots & \ddots & \vdots \\ C_{b1} & C_{b2} & \cdots & C_{bb} \end{bmatrix} \in \mathbb{R}^{m \times n} \tag{6} CBHRA=C11C21Cb1C12C22Cb2C1bC2bCbbRm×n(6)
BHRA的权重更新通过块wise Hadamard积□\square)实现:将容量张量CBHRAC_{\text{BHRA}}CBHRA与冻结权重矩阵W0W_0W0在对应子块内执行元素级Hadamard积,公式(公式7):
ΔWBHRA=CBHRA□W0(7) \Delta W_{\text{BHRA}} = C_{\text{BHRA}} \square W_0 \tag{7} ΔWBHRA=CBHRAW0(7)

需特别注意块wise Hadamard积的严格定义:对任意i,ji,ji,jΔWBHRA\Delta W_{\text{BHRA}}ΔWBHRA的第(i,j)(i,j)(i,j)子块满足:
ΔWBHRA,ij=Cij⊙W0,ij \Delta W_{\text{BHRA},ij} = C_{ij} \odot W_{0,ij} ΔWBHRA,ij=CijW0,ij
即“逐块执行Hadamard积,块间无交互”——这是BHRA与HiRA“全局Hadamard积”的核心区别(HiRA的ΔWHiRA=W0⊙(BA)\Delta W_{\text{HiRA}} = W_0 \odot (BA)ΔWHiRA=W0(BA)是全局元素积,所有元素依赖W0W_0W0的全局模式)。

秩分析

b×bb \times bb×b分块的BHRA,其权重更新ΔWBHRA=CBHRA□W0\Delta W_{\text{BHRA}} = C_{\text{BHRA}} \square W_0ΔWBHRA=CBHRAW0的秩满足:
rank(ΔWBHRA)≤br0r(8) \text{rank}(\Delta W_{\text{BHRA}}) \leq b r_0 r \tag{8} rank(ΔWBHRA)br0r(8)
其中r0=rank(W0)r_0 = \text{rank}(W_0)r0=rank(W0)bbb为分块数,rrr为总秩预算。

4. HyperAdapt

原理

预训练权重矩阵通常为满秩,且在预训练阶段已编码了许多有用的方向。若我们能高效地对这些现有方向进行重新加权,而非引入新方向,就能以极少的参数开销实现高秩更新。

于是对预权重通过行 / 列缩放得到新权重矩阵

ΔW=AW0B−W0\Delta W = AW_0B-W_0ΔW=AW0BW0

其中,A∈Rn×nA \in \mathbb{R}^{n \times n}ARn×nB∈Rm×mB \in \mathbb{R}^{m \times m}BRm×m为对角矩阵。
W′=W0+ΔW,=W0+AW0B−W0,=AW0B. \begin{aligned} W' &= W_0 + \Delta W, \\ &= W_0 + A W_0 B - W_0, \\ &= A W_0 B. \end{aligned} W=W0+ΔW,=W0+AW0BW0,=AW0B.

秩分析

理论HyperAdapt 权重更新矩阵的秩上界:
rank(ΔW)≤min⁡ ⁣(2⋅rank(W0),  n,  m) \mathrm{rank}(\Delta W) \leq \min\!\bigl(2\cdot\mathrm{rank}(W_0),\;n,\;m\bigr) rank(ΔW)min(2rank(W0),n,m)
实际秩上界:

实际实验发现,HyperAdapt 动用的有效正交方向越接近W0W_0W0的秩上限,即实现了 “高秩更新”。

优势

HyperAdapt 通过对角矩阵行 / 列缩放实现权重更新,对维度为n×mn×mn×m的预训练权重矩阵W0W0W0,仅需训练n+mn+mn+m个可训练参数.

HyperAdapt 突破了 LoRA 等低秩方法的 “低秩约束”,实现了受约束的高秩更新,且同时兼顾参数效率。

缺点

适用范围受限,仅针对 Transformer 语言模型,未扩展至其他领域

权重更新形式固定,依赖对角缩放,灵活性弱于 LoRA

5. DiaBlo

原理

DiaBlo 通过直接更新模型权重矩阵的对角块实现适配

设预训练模型中的某一权重矩阵为W∈Rm×nW \in \mathbb{R}^{m \times n}WRm×n(例如Transformer中的注意力权重或前馈网络权重)。DiaBlo将WWW划分为N×NN \times NN×N的块矩阵:
W=(W11W12…W1NW21W22…W2N⋮⋮⋱⋮WN1WN2…WNN) W = \begin{pmatrix} W_{11} & W_{12} & \dots & W_{1N} \\ W_{21} & W_{22} & \dots & W_{2N} \\ \vdots & \vdots & \ddots & \vdots \\ W_{N1} & W_{N2} & \dots & W_{NN} \end{pmatrix} W=W11W21WN1W12W22WN2W1NW2NWNN
其中,每个子块Wij∈Rd×dW_{ij} \in \mathbb{R}^{d \times d}WijRd×d(假设m=n=N⋅dm = n = N \cdot dm=n=Nd,即方阵且均匀分块;非方阵时可类似分块)。

DiaBlo的核心策略是:仅更新对角块WiiW_{ii}Wiii=1,2,...,Ni=1,2,...,Ni=1,2,...,N),冻结所有非对角块WijW_{ij}Wiji≠ji \neq ji=j

DiaBlo引入一个块对角适配矩阵DDD 来表示对角块的更新量,其结构为:
D=(D10…00D2…0⋮⋮⋱⋮00…DN) D = \begin{pmatrix} D_1 & 0 & \dots & 0 \\ 0 & D_2 & \dots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \dots & D_N \end{pmatrix} D=D1000D2000DN
其中,Di∈Rd×dD_i \in \mathbb{R}^{d \times d}DiRd×d是可训练的对角块更新矩阵(初始化为0矩阵),非对角位置为0(即不更新非对角块)。

微调过程中,模型实际使用的权重矩阵为预训练权重与适配矩阵的和:
Wfinetuned=W+D W_{\text{finetuned}} = W + D Wfinetuned=W+D
即仅对角块WiiW_{ii}Wii被更新为Wii+DiW_{ii} + D_iWii+Di,非对角块保持预训练状态WijW_{ij}Wiji≠ji \neq ji=j)。

秩分析

原文无秩推导,现理论推导如下:

DiaBlo 的适配矩阵DDD是块对角矩阵,其秩等于各对角块秩之和。
设第iii个块为DiD_iDi,秩为rir_iri,则有:

rank⁡(D)=∑i=1Nri≤N⋅min⁡(d1,d2)\operatorname{rank}(D) = \sum_{i=1}^{N} r_i \le N \cdot \min(d_1, d_2) rank(D)=i=1NriNmin(d1,d2)

其中

  • NNN:对角块数量
  • d1=m1Nd_1 = \frac{m_1}{N}d1=Nm1d2=m2Nd_2 = \frac{m_2}{N}d2=Nm2

优势

训练更稳定,无需依赖定制化初始化 / 优化策略

劣势

适用模态有限,暂未验证非语言模型

理论基础薄弱,对角块更新的有效性缺乏深层解释

参数效率的 “上限” 可能低于LoRA

6. HD-PISSA

原理

PiSSA(Principal Singular Values and Singular Vectors Adaptation)改进了 LoRA 的初始化策略,利用预训练权重的 主奇异成分 初始化适配器,提升收敛速度和性能。

首先对原始权重WWW做奇异值分解(SVD):
W=U⋅S⋅V⊤ W = U \cdot S \cdot V^\top W=USV
PiSSA 选择SSSrrr个最大奇异值 及其对应奇异向量,初始化适配器 ( A, B ):

A=Ur⋅Sr1/2,B=Sr1/2⋅Vr⊤ A = U_r \cdot S_r^{1/2}, \quad B = S_r^{1/2} \cdot V_r^\top A=UrSr1/2,B=Sr1/2Vr

HD-PiSSA(High-Rank Distributed PiSSA)核心逻辑是:在KKK个设备上分配 正交的主成分适配器,聚合各设备的更新量直接作用于原始权重WWW,无需维护多设备残差矩阵。

秩分析

方法适配器初始化范围设备间适配器关系有效更新秩上限
PiSSArrr个主成分完全相同(同构)rrr
HD-PiSSAK⋅rK \cdot rKr个主成分正交(异构)2K⋅r2K \cdot r2Kr

优势

分布式训练的内存高效性

劣势

依赖分布式硬件环境;由于要计算权重的奇异值分解,预处理成本增加

7. LOSIA

原理

LoSiA(Low-cost Sparse Incremental Adaptation) 是一种稀疏高秩参数高效微调方法,目标是在保持计算与存储低成本的前提下,获得接近全量微调(full fine-tune)的表现,不去约束更新矩阵为低秩,而是从原权重矩阵中选取一部分神经元子集进行激活与训练,通过子网激活的方式隐式实现高秩更新。

  • 对每层权重矩阵W∈Rn×mW \in \mathbb{R}^{n\times m}WRn×m
    LoSiA 选取输入神经元子集Sin⊆[m]S_{\text{in}} \subseteq [m]Sin[m]和输出神经元子集Sout⊆[n]S_{\text{out}} \subseteq [n]Sout[n]

  • 子集大小由比例参数p∈(0,1]p \in (0,1]p(0,1]决定:
    np=⌊np⌋,mp=⌊mp⌋ n_p = \lfloor n p \rfloor, \quad m_p = \lfloor m p \rfloor np=np,mp=mp

  • 仅更新子矩阵
    WS=W[Sout,Sin]∈Rnp×mp W_S = W[S_{\text{out}}, S_{\text{in}}] \in \mathbb{R}^{n_p \times m_p} WS=W[Sout,Sin]Rnp×mp
    而其余参数保持冻结。

  • 训练过程中周期性重选子网(subnet resampling),形成时间上的多子空间覆盖,使得长期累积效果接近全量训练。

秩分析

LoSiA 的最大秩

子矩阵WS∈Rnp×mpW_S \in \mathbb{R}^{n_p\times m_p}WSRnp×mp的秩上界为其行列最小值:
rank⁡(WS)≤min⁡(np,mp) \operatorname{rank}(W_S) \le \min(n_p, m_p) rank(WS)min(np,mp)

由于np=npn_p = n pnp=npmp=mpm_p = m pmp=mp(取整略去),
rank⁡LoSiAmax⁡≈pmin⁡(n,m) \operatorname{rank}_{\text{LoSiA}}^{\max} \approx p \min(n,m) rankLoSiAmaxpmin(n,m)

8. KRAdapter

原理

借助Khatri-Rao 乘积(列向克罗内克乘积) 构建权重更新矩阵。

设两个矩阵U∈Rk1×dinU \in \mathbb{R}^{k_1 \times d_{in}}URk1×dinV∈Rk2×dinV \in \mathbb{R}^{k_2 \times d_{in}}VRk2×din,二者的 Khatri-Rao 乘积记为U⊙VU \odot VUV,定义为按列进行 Kronecker 乘积组合的矩阵。

更形式化地,若U=[u11 u12 … u1,din; ⋮ ; uk1,1 uk1,2 … uk1,din]U = [u_{11} \ u_{12} \ \dots \ u_{1,d_{in}}; \ \vdots \ ; \ u_{k_1,1} \ u_{k_1,2} \ \dots \ u_{k_1,d_{in}}]U=[u11 u12  u1,din;  ; uk1,1 uk1,2  uk1,din](第iii行第jjj列为uiju_{ij}uij),V=[v1 v2 … vdin]V = [v_1 \ v_2 \ \dots \ v_{d_{in}}]V=[v1 v2  vdin](第jjj列为vj∈Rk2v_j \in \mathbb{R}^{k_2}vjRk2),则:
U⊙V=[u11v1u12v2…u1,dinvdin⋮⋮⋱⋮uk1,1v1uk1,2v2…uk1,dinvdin]∈R(k1k2)×din U \odot V = \begin{bmatrix} u_{11}v_1 & u_{12}v_2 & \dots & u_{1,d_{in}}v_{d_{in}} \\ \vdots & \vdots & \ddots & \vdots \\ u_{k_1,1}v_1 & u_{k_1,2}v_2 & \dots & u_{k_1,d_{in}}v_{d_{in}} \end{bmatrix} \in \mathbb{R}^{(k_1 k_2) \times d_{in}} \quad \text{} UV=u11v1uk1,1v1u12v2uk1,2v2u1,dinvdinuk1,dinvdinR(k1k2)×din

KRAdapter 的权重更新定义为ΔW=α(U⊙V)\Delta W = \alpha (U \odot V)ΔW=α(UV),其中α\alphaα仍为缩放因子

结合预训练权重W0W_0W0,KRAdapter 适配后的线性层前向传播公式为:
h=(W0+αU⊙V)x h = \left( W_0 + \alpha U \odot V \right) x \quad \text{} h=(W0+αUV)x

秩分析

文章中证明了Khatri-Rao 乘积的满列秩性质
定理陈述:设U∈Rk×dinU \in \mathbb{R}^{k \times d_{in}}URk×dinV∈Rk×dinV \in \mathbb{R}^{k \times d_{in}}VRk×din(简化为k1=k2=kk_1 = k_2 = kk1=k2=k),满足k≤din≤k2k \leq d_{in} \leq k^2kdink2,且UUUVVV的元素独立同分布(i.i.d.)于标准高斯分布N(0,1)\mathcal{N}(0,1)N(0,1)或区间[−δ,δ][-\delta, \delta][δ,δ]δ>0\delta > 0δ>0)的均匀分布,则 Khatri-Rao 乘积U⊙VAU \odot VAUVA几乎必然almostsurelyalmost surelyalmostsurely满列秩,即
rank(U⊙V)=din \text{rank}(U \odot V) = d_{in} rank(UV)=din

9. TERA

原理

TeRA的核心创新是:用类塔克分解的张量网络参数化ΔW\Delta \mathcal{W}ΔW,通过“冻结大部分参数+训练小向量”实现“高秩更新+参数高效”。

先把权重更新矩阵张量化,之后把该张量进行塔克类结构表示:

TeRA对ΔW\Delta \mathcal{W}ΔW的参数化遵循“核心张量→对角线缩放→因子矩阵映射”的逻辑,其元素值定义为:
ΔW(i1,i2,…,iN)=∑r1=1R1∑r2=1R2⋯∑rN=1RNG(r1,r2,…,rN)×d(1)(r1)d(2)(r2)…d(N)(rN)×A(1)(r1,i1)A(2)(r2,i2)…A(N)(rN,iN) \begin{aligned} \Delta \mathcal{W}(i_1,i_2,\dots,i_N) &= \sum_{r_1=1}^{R_1} \sum_{r_2=1}^{R_2} \dots \sum_{r_N=1}^{R_N} \mathcal{G}(r_1,r_2,\dots,r_N) \\ &\quad \times d^{(1)}(r_1) d^{(2)}(r_2) \dots d^{(N)}(r_N) \\ &\quad \times A^{(1)}(r_1,i_1) A^{(2)}(r_2,i_2) \dots A^{(N)}(r_N,i_N) \end{aligned} ΔW(i1,i2,,iN)=r1=1R1r2=1R2rN=1RNG(r1,r2,,rN)×d(1)(r1)d(2)(r2)d(N)(rN)×A(1)(r1,i1)A(2)(r2,i2)A(N)(rN,iN)
仅训练对角线缩放向量d(i)d^{(i)}d(i),之后把张量化的权重更新矩阵再次转化为矩阵ΔW\Delta WΔW

秩分析

论文中证明了如下结论:

ΔW=Unfold[N;k](ΔW)\Delta W = \text{Unfold}_{[N;k]}(\Delta \mathcal{W})ΔW=Unfold[N;k](ΔW)ΔW\Delta \mathcal{W}ΔW矩阵化后的权重更新矩阵),则:
rank(ΔW)≤min⁡(∏i=1kRi,∏i=k+1NRi) \text{rank}(\Delta W) \leq \min\left( \prod_{i=1}^k R_i, \prod_{i=k+1}^N R_i \right) rank(ΔW)min(i=1kRi,i=k+1NRi)

Ri=IiR_i = I_iRi=Ii(核心张量维度等于原张量维度)时,rank(ΔW)≤min⁡(m,n)\text{rank}(\Delta W) \leq \min(m,n)rank(ΔW)min(m,n),即ΔW\Delta WΔW可实现满秩更新

10. QWHA

原理

同时解决两类效率问题:

  1. 量化(Quantization)带来的精度下降;
  2. PEFT(Parameter-Efficient Fine-Tuning)带来的低秩限制。

适配器的权重更新定义为:

ΔW=FH−1 \Delta W = F H^{-1} ΔW=FH1

  • HHH:固定的 Walsh–Hadamard 变换矩阵(WHT),仅含 ±1,满足 ( H^T H = I )。
  • FFF:可训练的稀疏系数矩阵,由少量非零值组成。
  • H−1H^{-1}H1对应快速加减操作

这与传统 LoRA 相对比,是高秩稀疏表示

秩分析

理论上限

ΔW=FH−1\Delta W = F H^{-1}ΔW=FH1H−1H^{-1}H1为满秩正交矩阵,
所以秩仅取决于FFF
rank⁡(ΔW)=rank⁡(F) \operatorname{rank}(\Delta W) = \operatorname{rank}(F) rank(ΔW)=rank(F)

FFF为随机稀疏矩阵,且每行/列平均非零数 ≥ 2(即k,l≥2k,l ≥ 2k,l2),则根据稀疏矩阵理论(Coja-Oghlan et al., 2020):

n,m→∞n,m \to \inftyn,m时,FFF以高概率为满秩。

因此:
rank⁡QWHA≈min⁡(din,dout) \operatorname{rank}_{\mathrm{QWHA}} \approx \min(d_{\text{in}}, d_{\text{out}}) rankQWHAmin(din,dout)

几乎满秩(full-rank)

11. MORA

原理

用“正方形矩阵MMM”替代LoRA的两个低秩矩阵A,BA,BA,B,在参数数量与LoRA相等的前提下,最大化rank(ΔWMoRA)\text{rank}(\Delta W_{\text{MoRA}})rank(ΔWMoRA)

MoRA需通过压缩/解压算子适配MMMW0W_0W0的维度,前向传播公式为:
h=W0x+fdecomp(M⋅fcomp(x)) h = W_0 x + f_{\text{decomp}} \left( M \cdot f_{\text{comp}} (x) \right) h=W0x+fdecomp(Mfcomp(x))
(先压缩xxxr^\hat{r}r^维,输入MMM计算,再解压至ddd维,与W0xW_0 xW0x叠加)。

秩分析

文章中证明了MoRA的ΔWMoRA\Delta W_{\text{MoRA}}ΔWMoRAMMM通过压缩/解压算子转换得到,其秩满足rank(ΔWMoRA)≤r^\text{rank}(\Delta W_{\text{MoRA}}) \leq \hat{r}rank(ΔWMoRA)r^(因MMM的秩≤r^\hat{r}r^)。

其中r^=⌊(d+k)r⌋\hat{r} = \lfloor \sqrt{(d + k)r} \rfloorr^=(d+k)r,且大模型中d,kd,kd,k通常极大(如d=k=4096d=k=4096d=k=4096),因此r^≫r\hat{r} \gg rr^rrrr为LoRA的秩)。

12. RELoRA

原理

通过多轮独立的低秩更新(δW1,δW2,...,δWN\delta W^1, \delta W^2, ..., \delta W^NδW1,δW2,...,δWN),其总和(ΔW=∑t=1NδWt\Delta W = \sum_{t=1}^N \delta W^tΔW=t=1NδWt)可实现远高于单轮低秩的总秩,最终逼近全秩矩阵的表达能力。

主权重的总更新量为各周期低秩更新之和:
ΔW=Wi(TN)−Wi(0)=s⋅∑k=1NWAk⋅WBk \Delta W = W_i^{(T_N)} - W_i^{(0)} = s \cdot \sum_{k=1}^N W_A^k \cdot W_B^k ΔW=Wi(TN)Wi(0)=sk=1NWAkWBk
ReLoRA的核心公式:总更新量是多轮低秩更新的聚合

秩分析

由秩的次可加性,总更新量的秩满足:
rank(ΔW)=rank(s∑k=1NWAkWBk)≤∑k=1Nrank(WAkWBk)≤N⋅r \text{rank}(\Delta W) = \text{rank}\left(s \sum_{k=1}^N W_A^k W_B^k\right) \leq \sum_{k=1}^N \text{rank}(W_A^k W_B^k) \leq N \cdot r rank(ΔW)=rank(sk=1NWAkWBk)k=1Nrank(WAkWBk)Nr
若各周期的WAkWBkW_A^k W_B^kWAkWBk子空间独立(由Kaiming初始化保证),则等号成立:
rank(ΔW)=N⋅r \text{rank}(\Delta W) = N \cdot r rank(ΔW)=Nr

http://www.dtcms.com/a/549121.html

相关文章:

  • wordpress 网站迁移如何做网站霸屏
  • Rust 中 Raft 协议的云原生深度集成与实践最佳实践
  • html css js网页制作成品——掌心电视剧HTML+CSS网页设计(4页)附源码
  • 基于用户的协同过滤算法实现小说推荐算法
  • 速卖通新客优惠券采购:砍单率高的核心原因
  • 【11408学习记录】考研数学概率论核心突破:一维随机变量函数分布——公式法 分布函数法精讲!​
  • Flutter 网络通信协议:从原理到实战,选对协议让 APP 飞起来
  • 【机器学习入门】9.2:感知机的工作原理 —— 从模型结构到实战分类
  • Flutter---个人信息(3)---实现修改性别
  • 做个网站需要什么制作软件的网站
  • 河北手机响应式网站建设设计企业门户网站管理制度
  • Docker简介与优豆云环境搭建
  • 后端面试实战:手写 Java 线程池核心逻辑,解释核心参数的作用
  • 免费做数学题的网站大连装修公司排名榜
  • Spring Al学习5 :聊天模型 API
  • 分布式锁深度解析:从架构本质到生产实践
  • 浏览器就是画板!PaintBoard让创意灵感不再受设备限制
  • 网站建设要学哪种计算机语言小学生一分钟新闻播报
  • FT8370A/B/C/CD/CP高性能次边同步整流芯片典型电路及管脚定义
  • MySQL(五) - 数据连接查询和子查询操作
  • STM32——WWDG
  • STM32-音频播放
  • 前端学习:选择器的类别
  • 运输网站建设wordpress 不同page
  • Qt的Debug版本和Release版本有什么区别?
  • Docker使用【容器】
  • 行业电子商务网站建设房地产网站开发公司电话
  • LangChain 提示模板之少样本示例(二)
  • Product Hunt 每日热榜 | 2025-10-30
  • Spring MVC核心概念