僅微調(diào)0.02%參數(shù),性能接近全量微調(diào)!上交大推出高效微調(diào)統(tǒng)一新范式
Scaling Laws當(dāng)?shù)溃S著大模型應(yīng)用的發(fā)展,基礎(chǔ)模型不斷擴(kuò)大的參數(shù)也成了令開發(fā)者們頭疼的問題。
為了減輕訓(xùn)練負(fù)擔(dān),Adapter、Prompt-Tuning以及LoRA等高效微調(diào)(Parameter Efficient Fine-Tuning, PEFT)算法越來越受到大家伙的青睞。
那么,問題來了——
盡管近年來高效微調(diào)領(lǐng)域發(fā)展迅速,涌現(xiàn)了多種方法,但不同PEFT方法背后的數(shù)學(xué)基礎(chǔ)幾乎沒有得到深入研究。
此外,不同PEFT方法之間的性能差異及其原因尚未系統(tǒng)地探討。這種理論深度的缺乏限制了研究者對這些方法潛在優(yōu)勢和局限性的理解,阻礙了它們在實(shí)際應(yīng)用中的優(yōu)化和創(chuàng)新。
為了解決這一問題,來自上海交通大學(xué)的研究者們在對各種PEFT方法進(jìn)行全面數(shù)學(xué)分析后,提出了一種新的框架——子空間微調(diào),旨在將所有已知的PEFT方法統(tǒng)一在一個(gè)理論下,
具體來說,子空間微調(diào)方法主要集中于調(diào)整原始參數(shù)的子空間,涉及子空間的重構(gòu)和擴(kuò)展。研究者深入探討了不同方法如何操作子空間,并從分解理論的角度闡明了每種方法的數(shù)學(xué)原理。此外,研究者分析了為什么這些方法會導(dǎo)致性能差異,提供了理解不同PEFT策略內(nèi)在動態(tài)的全面理論基礎(chǔ)。
他們基于此提出了兩種新的PEFT方法,新方法在僅微調(diào)0.02%參數(shù)的情況下,性能接近于全面微調(diào)。
研究者還介紹了一個(gè)有效的框架,在不引入額外訓(xùn)練參數(shù)的情況下,提升了LoRA等方法的性能。通過在三種不同模型上測試超過十種方法,廣泛的實(shí)驗(yàn)驗(yàn)證了其理論的穩(wěn)健性,同時(shí)展示了提出的方法和框架的有效性。
來看論文細(xì)節(jié)。
子空間微調(diào)理論
考慮任何給定主干網(wǎng)絡(luò)層的凍結(jié)權(quán)重矩陣,其中n≤m,并用權(quán)重矩陣
的性能
來量化模型的性能,值越高表示性能越好。
假設(shè)存在最優(yōu)權(quán)重矩陣 ,且
對所有
成立。PEFT的目標(biāo)公式化為:
其中衡量兩個(gè)矩陣之間的差異。函數(shù)
被視為增量調(diào)優(yōu),表示對矩陣
的每個(gè)元素的修改,但這種表征過于籠統(tǒng)。
從分解理論的角度看,調(diào)整矩陣涉及修改其對應(yīng)的子空間,因此,所有PEFT方法可視為子空間微調(diào)。
如此,優(yōu)化的目標(biāo)是找到在
基所生成的子空間內(nèi)的最大投影,然后將
與其對齊。
有兩種方法實(shí)現(xiàn)這一目標(biāo):通過調(diào)整來逼近
,或操作
的子空間以接近或包含
。
研究者將函數(shù)分配給兩個(gè)主要角色:直接重構(gòu)對應(yīng)
的子空間,以更好地對齊
,或引入一個(gè)新子空間并與原始子空間結(jié)合。這些過程數(shù)學(xué)表示為:
其中,概括了
的子空間重構(gòu)過程,
描述了子空間的聯(lián)合。研究者將這些操作分別稱為“子空間重構(gòu)”和“子空間擴(kuò)展”,并將現(xiàn)有方法分類為三類:
- 基于子空間重構(gòu)的方法,將復(fù)雜空間分解為易理解的子空間,并調(diào)整這些派生子空間的基
- 基于子空間擴(kuò)展的方法,引入一個(gè)新子空間,在新子空間和原始權(quán)重矩陣
對應(yīng)的子空間基所生成的空間內(nèi)找到最優(yōu)權(quán)重
的最大投影;
- 基于子空間組合的方法,同時(shí)采用上述子空間調(diào)整。
子空間重構(gòu)
基于先前概述的框架,子空間重構(gòu)方法首先將的空間分割為可解釋的子空間,然后細(xì)化這些子空間以提高模型效率。許多PEFT策略集中于直接重構(gòu)與原始權(quán)重矩陣相關(guān)的子空間,著名例子包括SAM-PARSER、Diff Pruning、(IA)3、BitFit、Prefix-tuning和Prompt-tuning等。
研究者從奇異值分解(SVD)開始探索,原始權(quán)重矩陣被分解為正交子空間,涵蓋了原始矩陣空間的全部。分解表示為
,這種分解將
分成左奇異向量
(
列空間的正交基)、奇異值
(調(diào)整維度和縮放)和右奇異向量
(
行空間的正交基)。通過調(diào)整分解獲得的子空間,可以重構(gòu)原始空間,分為三種模式:
- 奇異值調(diào)整:調(diào)整
中的奇異值,修改每個(gè)主成分的權(quán)重,而不影響子空間方向。
- 簡單奇異向量調(diào)整:通過縮放生成的子空間來調(diào)整
和
中的奇異向量,保留方向特性,同時(shí)調(diào)整幅度。
- 復(fù)雜奇異向量調(diào)整:對奇異向量進(jìn)行更復(fù)雜的變換,重新定向或重塑子空間,全面調(diào)整矩陣結(jié)構(gòu)。
基于這一理論,研究者提出了兩種新的微調(diào)方法:SSL(Scaling the Subspace of the Left singular vectors)和SSB(Scaling the Subspace of Both left and right singular vectors)。
從下圖中可以看出,SSL最少只需要微調(diào)0.02%的參數(shù),SSB最少只需要微調(diào)0.06%的參數(shù),就能實(shí)現(xiàn)全量微調(diào)99%的性能。
關(guān)于每種模式的具體操作、每種方法的具體內(nèi)容、其背后的數(shù)學(xué)原理,以及研究者如何基于這一理論提出兩種新方法的詳細(xì)信息,請參閱原論文。
子空間擴(kuò)展
基于擴(kuò)展的方法引入新子空間,結(jié)合該新子空間和原始權(quán)重矩陣的基生成擴(kuò)展空間。
這些方法旨在找到最優(yōu)權(quán)重在新空間內(nèi)的最接近投影,通過引入額外的權(quán)重矩陣來擴(kuò)大原始子空間的基以覆蓋更大維度區(qū)域。通常,這些方法的轉(zhuǎn)換函數(shù)定義為
,其中s代表縮放因子,
對應(yīng)于新子空間,也稱為附加項(xiàng)。
考慮權(quán)重矩陣,假設(shè)n≤m。理想情況下,有
,即
和
占據(jù)相同的行和列空間,使它們定位在同一超平面內(nèi)。
如果的秩為n,其列空間的維度等于n,生成
子空間。若
的秩小于n,它只能在
內(nèi)生成一個(gè)子空間。假設(shè)
和
的列空間基可以生成整個(gè)
空間,在最優(yōu)情況下,
的列基向量應(yīng)補(bǔ)充
的列基,意味著
的列空間代表這些空間的直和。
一些研究表明,最優(yōu)權(quán)重會放大原始權(quán)重矩陣中某些特定任務(wù)的方向,這些方向?qū)τ陬A(yù)訓(xùn)練并不關(guān)鍵。此外,最優(yōu)權(quán)重還會調(diào)整
的主要方向。這些見解表明
可能與
的子空間共享大量共同基。因此,
可能只需考慮
中缺少但
中存在的一小部分基,使
成為低秩矩陣。
實(shí)證研究表明,預(yù)訓(xùn)練模型的全參數(shù)微調(diào)通??芍匦聟?shù)化為在低維子空間內(nèi)優(yōu)化,表明最優(yōu)權(quán)重在這個(gè)受限的低秩子空間內(nèi)變化。的低秩特性突出了基于擴(kuò)展方法的參數(shù)效率基礎(chǔ)。
另一個(gè)關(guān)鍵方面是縮放因子s?;跀U(kuò)展的方法目標(biāo)是確定在
和
形成的超平面內(nèi)的最大投影,確保
盡可能與
方向?qū)R。給定固定的
和
,只有一個(gè)s值能使 \
的方向與
方向?qū)R,因此s值對性能的影響可能非常顯著。
在參數(shù)高效微調(diào)中,有兩大系列基于擴(kuò)展的方法。第一系列是LoRA衍生,包括LoRA、AdaLoRA、TriLoRA、FLoRA、VeRA等。第二系列是適配器衍生,包括Adapter(H),Adapter(P),Parallel Adapter等。
在此基礎(chǔ)之上,研究者提出了MPC框架,以進(jìn)一步提升現(xiàn)有算法的性能。
從下圖中可以看出,在不引入額外參數(shù)的情況下,MPC框架顯著增強(qiáng)了各種PEFT方法的性能。
另外,MPC可以幫助PEFT方法實(shí)現(xiàn)更穩(wěn)定的訓(xùn)練。與不使用MPC的方法相比,結(jié)合MPC的方法通常表現(xiàn)出更小的標(biāo)準(zhǔn)偏差。
關(guān)于這些方法的具體分析,LoRA和Adapter系列算法性能差異的原因,以及MPC框架的詳細(xì)設(shè)計(jì)思路,請參閱原論文。
子空間組合
基于組合的方法同時(shí)執(zhí)行子空間重構(gòu)和擴(kuò)展,結(jié)合了這兩種方法的原理。
此外,對于某些方法,它們既可以分類為基于重構(gòu)的方法,也可以分類為基于擴(kuò)展的方法,研究者也將它們分類為基于組合的方法。研究者分析介紹幾種代表性的基于組合的方法,如DoRA,Spectral Adapter和SVDiff等。
關(guān)于這些方法的具體細(xì)節(jié)請參閱原論文。
論文:https://arxiv.org/pdf/2407.05417
代碼:https://github.com/Chongjie-Si/Subspace-Tuning