大語(yǔ)言模型六種微調(diào)方法

在深度學(xué)習(xí)的應(yīng)用中酿炸,模型微調(diào)(fine-tuning)是一個(gè)非常重要的過程,它是指在一個(gè)預(yù)先訓(xùn)練好的模型上針對(duì)特定的任務(wù)進(jìn)行參數(shù)調(diào)整。常見的微調(diào)方法有:Adapter Tuning重付、LORA、Prefix-Tuning凫乖、Prompt Tuning确垫、P-tuning、P-tuning v2帽芽,文章將分兩次介紹這幾種微調(diào)方法删掀。

一、Adapter Tuning

1.1 原理

設(shè)計(jì)了Adapter 結(jié)構(gòu)导街,將其嵌入 Transformer 的結(jié)構(gòu)里面披泪,在訓(xùn)練時(shí),固定住原來預(yù)訓(xùn)練模型的參數(shù)不變搬瑰,只對(duì)新增的 Adapter 結(jié)構(gòu)進(jìn)行微調(diào)款票。同時(shí)為了保證訓(xùn)練的高效性(也就是盡可能少的引入更多參數(shù)),他們將 Adapter 設(shè)計(jì)為這樣的結(jié)構(gòu):

  • 首先是一個(gè) down-project 層將高維度特征映射到低維特征

  • 然后過一個(gè)非線形層之后泽论,再用一個(gè) up-project 結(jié)構(gòu)將低維特征映射回原來的高維特征

  • 同時(shí)也設(shè)計(jì)了 skip-connection 結(jié)構(gòu)艾少,確保了在最差的情況下能夠退化為identity(類似殘差結(jié)構(gòu))

1.2 效果

能夠在只額外對(duì)增加的 3.6% 參數(shù)規(guī)模(相比原來預(yù)訓(xùn)練模型的參數(shù)量)的情況下取得和Full-Finetuning 接近的效果(GLUE指標(biāo)在0.4%以內(nèi))。

1.3意義與遺留問題

首次提出針對(duì) BERT 的 PEFT微調(diào)方式翼悴,拉開了 PEFT 研究的序幕姆钉。

遺留問題:增加了模型層數(shù),引入了額外的推理延遲抄瓦。

二潮瓶、LORA

2.1 原理

LoRA 允許我們通過優(yōu)化適應(yīng)過程中密集層變化的秩分解矩陣,來間接訓(xùn)練神經(jīng)網(wǎng)絡(luò)中的一些密集層钙姊,同時(shí)保持預(yù)先訓(xùn)練的權(quán)重不變毯辅。


  • 在原始 PLM (Pre-trained Language Model) 旁邊增加一個(gè)旁路,做一個(gè)降維再升維的操作煞额,來模擬所謂的intrinsic rank思恐。

  • 訓(xùn)練的時(shí)候固定 PLM 的參數(shù),只訓(xùn)練降維矩陣 A 與升維矩陣 B 膊毁。而模型的輸入輸出維度不變胀莹,輸出時(shí)將 BA 與 PLM 的參數(shù)疊加。

  • 用隨機(jī)高斯分布初始化 A 婚温,用 0 矩陣初始化 B 描焰,保證訓(xùn)練的開始此旁路矩陣依然是 0 矩陣。

2.2效果

LORA 相比其它微調(diào)方法,增加參數(shù)量不會(huì)導(dǎo)致性能的下降荆秦。

性能上與全參數(shù)微調(diào)持平甚至超過篱竭。

2.3意義與遺留問題

基于大模型的內(nèi)在低秩特性,增加旁路矩陣來模擬全參數(shù)微調(diào)步绸,LoRA 將現(xiàn)在的各種大模型通過輕量微調(diào)變成各個(gè)不同領(lǐng)域的專業(yè)模型掺逼。

GPT 的本質(zhì)是對(duì)訓(xùn)練數(shù)據(jù)的有效壓縮,從而發(fā)現(xiàn)數(shù)據(jù)內(nèi)部的邏輯與聯(lián)系瓤介,LoRA 的思想與之有相通之處吕喘,原模型雖大,但起核心作用的參數(shù)是低秩的刑桑,通過增加旁路氯质,達(dá)到四兩撥千斤的效果。

LORA 已經(jīng)被 HuggingFace 集成在了 PEFT 代碼庫(kù)里漾月。

三病梢、Prefix-Tuning

3.1原理

與Full-finetuning 更新所有參數(shù)的方式不同胃珍,該方法是在輸入 token 之前構(gòu)造一段任務(wù)相關(guān)的 virtual tokens 作為 Prefix梁肿,然后訓(xùn)練的時(shí)候只更新 Prefix 部分的參數(shù),而 Transformer 中的其他部分參數(shù)固定觅彰。


同時(shí)吩蔑,為了防止直接更新 Prefix 的參數(shù)導(dǎo)致訓(xùn)練不穩(wěn)定的情況,他們?cè)?Prefix 層前面加了 MLP 結(jié)構(gòu)(相當(dāng)于將Prefix 分解為更小維度的 Input 與 MLP 的組合后輸出的結(jié)果)填抬,訓(xùn)練完成后烛芬,只保留 Prefix 的參數(shù)趟脂。

3.2 效果

表明Prefix-tuning能用更少的參數(shù)達(dá)到較有競(jìng)爭(zhēng)力的結(jié)果卖局。在Low-data階段(訓(xùn)練樣本數(shù)較少)加派, prefix-tuning相比較fine-tuning更有優(yōu)勢(shì)枯跑。

3.3 意義與遺留問題

遺留問題:難于訓(xùn)練愧哟,且預(yù)留給 Prompt 的序列擠占了下游任務(wù)的輸入序列空間须床,影響模型性能翘单。

Prompt Tuning

原理

Prefix Tuning 的簡(jiǎn)化版本场晶,只在輸入層加入 prompt tokens拾并,并不需要加入 MLP 進(jìn)行調(diào)整來解決難訓(xùn)練的問題揍堰,主要在 T5 預(yù)訓(xùn)練模型上做實(shí)驗(yàn)。

固定預(yù)訓(xùn)練參數(shù)嗅义,為每一個(gè)任務(wù)額外添加一個(gè)或多個(gè) embedding屏歹,之后拼接 query 正常輸入 LLM,并只訓(xùn)練這些 embedding之碗。左圖為單任務(wù)全參數(shù)微調(diào)蝙眶,右圖為 Prompt tuning。

效果

似乎只要預(yù)訓(xùn)練模型足夠強(qiáng)大褪那,其他的一切都不是問題械馆。作者也做實(shí)驗(yàn)說明隨著預(yù)訓(xùn)練模型參數(shù)量的增加胖眷,Prompt Tuning的方法會(huì)逼近 Fine-tune 的結(jié)果。

意義與遺留問題

該方法可以看作是 Prefix Tuning 的簡(jiǎn)化版本霹崎,Prompt 是人為構(gòu)造的“顯式”的提示珊搀,并且無法更新參數(shù),而Prefix 則是可以學(xué)習(xí)的“隱式”的提示尾菇。

遺留問題:由人工設(shè)計(jì)Prompt境析,自然語(yǔ)言提示本身十分脆弱(如下圖所示,選擇不同的Prompt對(duì)下游任務(wù)的性能影響較大)派诬,而且從優(yōu)化角度無法達(dá)到最優(yōu)劳淆。

P-tuning

原理

Prefix Tuning 的簡(jiǎn)化版本,只在輸入層加入 prompt tokens默赂,并不需要加入 MLP 進(jìn)行調(diào)整來解決難訓(xùn)練的問題沛鸵,主要在 T5 預(yù)訓(xùn)練模型上做實(shí)驗(yàn)。


固定預(yù)訓(xùn)練參數(shù)缆八,為每一個(gè)任務(wù)額外添加一個(gè)或多個(gè) embedding曲掰,之后拼接 query 正常輸入 LLM,并只訓(xùn)練這些 embedding奈辰。左圖為單任務(wù)全參數(shù)微調(diào)栏妖,右圖為 Prompt tuning。

效果

  • 使用P-tuning奖恰,可以讓相似代銷的GPT2實(shí)現(xiàn)比bert模型相當(dāng)?shù)纳踔粮玫慕Y(jié)果吊趾,這個(gè)發(fā)現(xiàn)顛覆普遍認(rèn)為的——雙向模型比單向模型在NLU任務(wù)中表現(xiàn)的更好。

  • P-tuning給了一種在有限算力下調(diào)用大型預(yù)訓(xùn)練模型的思路瑟啃。

意義與遺留問題

遺留問題:Prompt Tuning和P-tuning這兩種方法都是在預(yù)訓(xùn)練模型參數(shù)規(guī)模夠足夠大時(shí)论泛,才能達(dá)到和Fine-tuning類似的效果,而參數(shù)規(guī)模較小時(shí)效果則很差蛹屿,且在sequence tagging任務(wù)上表現(xiàn)都很差屁奏。

P-tuning v2

原理

相比 Prompt Tuning 和 P-tuning 的方法, P-tuning v2 方法在多層加入了 Prompts tokens 作為輸入蜡峰,帶來兩個(gè)方面的好處:帶來更多可學(xué)習(xí)的參數(shù)了袁、足夠 parameter-efficient,同時(shí)加入到更深層結(jié)構(gòu)中的 Prompt 能給模型預(yù)測(cè)帶來更直接的影響湿颅。

v1 到 v2 的可視化:藍(lán)色部分為參數(shù)凍結(jié)载绿,橙色部分為可訓(xùn)練部分。


效果

  • 不同預(yù)訓(xùn)練模型大小下的表現(xiàn)油航,在小模型下取得與 Full-finetuning 相近的結(jié)果崭庸,并遠(yuǎn)遠(yuǎn)優(yōu)于 P-Tuning。

  • 不同任務(wù)下的 P-Tuning v2 效果都很好,而 P-Tuning 和 Prompt Learning 效果不好怕享;同時(shí)执赡,采用多任務(wù)學(xué)習(xí)的方式能在多數(shù)任務(wù)上取得最好的結(jié)果。

遺留問題

很容易導(dǎo)致舊知識(shí)遺忘函筋,微調(diào)之后的模型沙合,在之前的問題上表現(xiàn)明顯變差。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末跌帐,一起剝皮案震驚了整個(gè)濱河市首懈,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌谨敛,老刑警劉巖究履,帶你破解...
    沈念sama閱讀 206,013評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異脸狸,居然都是意外死亡最仑,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門炊甲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來泥彤,“玉大人,你說我怎么就攤上這事蜜葱∪埃” “怎么了耀石?”我有些...
    開封第一講書人閱讀 152,370評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵牵囤,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我滞伟,道長(zhǎng)揭鳞,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,168評(píng)論 1 278
  • 正文 為了忘掉前任梆奈,我火速辦了婚禮野崇,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘亩钟。我一直安慰自己乓梨,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,153評(píng)論 5 371
  • 文/花漫 我一把揭開白布清酥。 她就那樣靜靜地躺著扶镀,像睡著了一般。 火紅的嫁衣襯著肌膚如雪焰轻。 梳的紋絲不亂的頭發(fā)上臭觉,一...
    開封第一講書人閱讀 48,954評(píng)論 1 283
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼蝠筑。 笑死狞膘,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的什乙。 我是一名探鬼主播挽封,決...
    沈念sama閱讀 38,271評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼臣镣!你這毒婦竟也來了场仲?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,916評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤退疫,失蹤者是張志新(化名)和其女友劉穎渠缕,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體褒繁,經(jīng)...
    沈念sama閱讀 43,382評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡亦鳞,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,877評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了棒坏。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片燕差。...
    茶點(diǎn)故事閱讀 37,989評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖坝冕,靈堂內(nèi)的尸體忽然破棺而出徒探,到底是詐尸還是另有隱情,我是刑警寧澤喂窟,帶...
    沈念sama閱讀 33,624評(píng)論 4 322
  • 正文 年R本政府宣布测暗,位于F島的核電站,受9級(jí)特大地震影響磨澡,放射性物質(zhì)發(fā)生泄漏碗啄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,209評(píng)論 3 307
  • 文/蒙蒙 一稳摄、第九天 我趴在偏房一處隱蔽的房頂上張望稚字。 院中可真熱鬧,春花似錦厦酬、人聲如沸胆描。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,199評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)昌讲。三九已至,卻和暖如春霹菊,著一層夾襖步出監(jiān)牢的瞬間剧蚣,已是汗流浹背支竹。 一陣腳步聲響...
    開封第一講書人閱讀 31,418評(píng)論 1 260
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留鸠按,地道東北人礼搁。 一個(gè)月前我還...
    沈念sama閱讀 45,401評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像目尖,于是被迫代替她去往敵國(guó)和親馒吴。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,700評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容