Prompt Tuning 可以讓預(yù)訓(xùn)練的語言模型快速適應(yīng)下游任務(wù)。雖然有研究證明:當(dāng)訓(xùn)練數(shù)據(jù)足夠多的時(shí)候,Prompt Tuning 的微調(diào)結(jié)果可以媲美整個(gè)模型的訓(xùn)練調(diào)優(yōu),但當(dāng)面對(duì) Few-shot 場(chǎng)景時(shí),PT 的調(diào)優(yōu)方法還是存在一定的局限性。針對(duì)這個(gè)問題,復(fù)旦提出了多任務(wù)預(yù)訓(xùn)練模塊化 Prompt(簡(jiǎn)稱為:),來提高模型在 Few-shot 場(chǎng)景下的 PT 效果,使模型能夠快速適應(yīng)下游任務(wù)。
背景介紹
基于 Prompt Learning 的預(yù)訓(xùn)練模型在 Few-shot 場(chǎng)景下取得了顯著的進(jìn)展,它縮小了模型訓(xùn)練和下游任務(wù)微調(diào)之間的差距,并且通過將下游任務(wù)轉(zhuǎn)換成統(tǒng)一的語言建模任務(wù),可以重復(fù)使用預(yù)訓(xùn)練模型頭,而不是訓(xùn)練一個(gè)隨機(jī)初始化的分類頭來解決有限數(shù)據(jù)的任務(wù)。然而,基于 Prompt Learning 通常需要針對(duì)每個(gè)下游任務(wù)進(jìn)行全參數(shù)微調(diào),這就需要大量的計(jì)算資源,尤其當(dāng)面對(duì)上百億的大模型的時(shí)候。
隨著時(shí)間推移,近期有很多工作致力于有效的 prompt learning 方法的研究,該方法只需學(xué)習(xí)少量的 soft prompt 參數(shù),并且能夠保持 PTM 主體參數(shù)不變。與模型的整體調(diào)優(yōu)相比,prompt 調(diào)優(yōu)優(yōu)勢(shì)明顯,它對(duì)計(jì)算資源要求較低并且針對(duì)特定的下游任務(wù)能夠?qū)崿F(xiàn)快速調(diào)優(yōu)匹配。但是盡管已經(jīng)證明,當(dāng)訓(xùn)練數(shù)據(jù)足夠時(shí),提示調(diào)整可以與完整模型調(diào)整的性能相匹配,但由于隨機(jī)初始化的 soft prompt 在預(yù)訓(xùn)練和微調(diào)之間引入了新的差距,因此在 Few-shot 中無法從零開始訓(xùn)練 soft prompt。
「為了彌補(bǔ) Prompt Tuning 的預(yù)訓(xùn)練和微調(diào)之間的差距,本文提出了多任務(wù)預(yù)訓(xùn)練模塊化提示 (),它是一組在 38 個(gè)中文任務(wù)上預(yù)訓(xùn)練的可組合提示」,在下游任務(wù)中,預(yù)訓(xùn)練的 prompt 可以有選擇地進(jìn)行激活和組合,提高對(duì)未知任務(wù)的泛化能力。為了彌合預(yù)訓(xùn)練和微調(diào)之間的差距,將上下游任務(wù)制定為統(tǒng)一到了一個(gè)機(jī)器閱讀理解任務(wù)中。 通過在梯度下降、黑盒調(diào)優(yōu)兩種學(xué)習(xí)范式的實(shí)驗(yàn),證明了 在 Few-shot 學(xué)習(xí)場(chǎng)景中,相比比 Prompt tuning、完整模型調(diào)優(yōu)和其它的 Prompt 預(yù)訓(xùn)練方法都具有顯著的優(yōu)勢(shì),最后作者還證明了僅通過學(xué)習(xí) 8 個(gè)參數(shù)來組合預(yù)訓(xùn)練的模塊化提示,就可以實(shí)現(xiàn)對(duì)下游任務(wù)的快速適應(yīng)。
方法介紹
方法主要通過以下三個(gè)步驟實(shí)現(xiàn)對(duì)下游任務(wù)的快速適應(yīng):(1) 在大規(guī)模無標(biāo)簽數(shù)據(jù)上進(jìn)行自監(jiān)督預(yù)訓(xùn)練;(2) 使用多任務(wù)學(xué)習(xí)進(jìn)行預(yù)訓(xùn)練模塊指令和相應(yīng)的 route;(3) 激活并調(diào)整子集指令以進(jìn)行對(duì)下游任務(wù)的適應(yīng)。具體流程圖如下所示: ?方法的主要內(nèi)容包括:「統(tǒng)一為 MRC 任務(wù)、深度模塊化 Prompt、多任務(wù)預(yù)訓(xùn)練、下游 FT」等四個(gè)方面。 「統(tǒng)一 MRC 任務(wù)」:基于 Prompt 的學(xué)習(xí)方法不能涵蓋較廣范圍的任務(wù),并且任務(wù)之間的標(biāo)簽詞可能不同,從而導(dǎo)致預(yù)訓(xùn)練模型在不同任務(wù)上的效果不佳。基于 MCC 方法,可以將上下游任務(wù)轉(zhuǎn)化成 MCC 任務(wù)使得不同任務(wù)可以共享相同的標(biāo)簽詞,但該方法當(dāng)面對(duì)大于 16 個(gè)標(biāo)簽的分類任務(wù)時(shí)仍存在局限性。為此 方法將上下游任務(wù)統(tǒng)一成機(jī)器閱讀理解 (MRC) 格式,通過構(gòu)建一個(gè)查詢來進(jìn)行分類任務(wù),進(jìn)而可以處理不同標(biāo)簽數(shù)的任務(wù),從而實(shí)現(xiàn)更廣泛的任務(wù)支持。 「深度模塊化 Prompt」:為了增加 soft prompt 的能力,使其匹配訓(xùn)練數(shù)據(jù)的復(fù)雜性,作者從深度和寬度兩個(gè)維度擴(kuò)展了 soft prompt,具體如下圖所示:
其中:首先在深度方面,作者增加了 LSTM 層或 Transformer Decoder 來實(shí)現(xiàn)深度擴(kuò)展。這些層使得模型可以更好地學(xué)習(xí)輸入序列的表示,并且能夠考慮更多的上下文信息;其次在寬度方面,作者在 soft prompt 里面添加了更多的詞匯和語義信息。通過深度和寬度的拓展,soft prompt 可以更好地匹配訓(xùn)練數(shù)據(jù)的復(fù)雜性,從而提高模型的性能和準(zhǔn)確率。
「多任務(wù)預(yù)訓(xùn)練」:多任務(wù)學(xué)習(xí)已被證明可以提高各種任務(wù)的 prompt learning 的表現(xiàn)。作者對(duì)由 38 個(gè)不同類型、領(lǐng)域、大小的中文 NLP 任務(wù)組成的混合任務(wù)進(jìn)行了深度模塊化提示的預(yù)訓(xùn)練。為了處理不平衡的數(shù)據(jù)大小,對(duì)于每次向前計(jì)算,首先隨機(jī)從 1 到 38 中選擇一個(gè)任務(wù) ID,然后獲取對(duì)應(yīng)于所選擇任務(wù)的一個(gè)批次的訓(xùn)練數(shù)據(jù),從而每個(gè)任務(wù)的學(xué)習(xí)步驟數(shù)量應(yīng)該是相同的。
「下游 FT」:為了能夠快速適應(yīng)下游任務(wù),本文通過兩個(gè)階段進(jìn)行微調(diào),如下圖所示:
其中:在第一階段,為每個(gè)層分配一個(gè)隨機(jī)路由,并訓(xùn)練 route 選擇性地重用預(yù)訓(xùn)練的模塊提示來解決目標(biāo)任務(wù),同時(shí)保持所有其他參數(shù)凍結(jié)。在第二階段,凍結(jié) route 并只微調(diào)選擇的提示。整個(gè)微調(diào)過程中,PTM 參數(shù)保持不變。同時(shí)作者探索了基于梯度下降和黑盒調(diào)優(yōu)兩種學(xué)習(xí)范式下的微調(diào)。對(duì)于梯度下降,使用 Adam 優(yōu)化器進(jìn)行兩個(gè)階段的微調(diào)。對(duì)于黑盒 FT,采用貝葉斯優(yōu)化在第一階段優(yōu)化 route,并采用 CMAES 優(yōu)化選擇的內(nèi)在 prompt ,同時(shí)凍結(jié)映射矩陣 A。
實(shí)驗(yàn)思路 在 38 個(gè)中文 NLP 任務(wù)上預(yù)訓(xùn)練,然后在 14 個(gè)下游任務(wù)上進(jìn)行評(píng)估。在 Few-Shot 下的實(shí)驗(yàn)表明,具體如下圖所示,可以發(fā)現(xiàn)「其性能明顯優(yōu)于 PT、全模型微調(diào)和之前的 prompt 訓(xùn)練方法」。僅通過調(diào)整 route(僅有 8 個(gè)參數(shù))凍結(jié) PTM 和所有 prompt,就可以實(shí)現(xiàn)對(duì)下游任務(wù)的快速適應(yīng)。
責(zé)任編輯:彭菁
-
模塊
+關(guān)注
關(guān)注
7文章
2733瀏覽量
47748 -
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7139瀏覽量
89577 -
語言模型
+關(guān)注
關(guān)注
0文章
538瀏覽量
10341
原文標(biāo)題:ACL 2023 | 復(fù)旦邱錫鵬組提出模塊化Prompt多任務(wù)預(yù)訓(xùn)練,可快速適應(yīng)下游任務(wù)
文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論