0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于多任務預訓練模塊化提示

深度學習自然語言處理 ? 來源:深度學習自然語言處理 ? 2023-06-20 11:04 ? 次閱讀

Prompt Tuning 可以讓預訓練的語言模型快速適應下游任務。雖然有研究證明:當訓練數(shù)據(jù)足夠多的時候,Prompt Tuning 的微調結果可以媲美整個模型的訓練調優(yōu),但當面對 Few-shot 場景時,PT 的調優(yōu)方法還是存在一定的局限性。針對這個問題,復旦提出了多任務預訓練模塊化 Prompt(簡稱為:),來提高模型在 Few-shot 場景下的 PT 效果,使模型能夠快速適應下游任務。

背景介紹

基于 Prompt Learning 的預訓練模型在 Few-shot 場景下取得了顯著的進展,它縮小了模型訓練和下游任務微調之間的差距,并且通過將下游任務轉換成統(tǒng)一的語言建模任務,可以重復使用預訓練模型頭,而不是訓練一個隨機初始化的分類頭來解決有限數(shù)據(jù)的任務。然而,基于 Prompt Learning 通常需要針對每個下游任務進行全參數(shù)微調,這就需要大量的計算資源,尤其當面對上百億的大模型的時候。

隨著時間推移,近期有很多工作致力于有效的 prompt learning 方法的研究,該方法只需學習少量的 soft prompt 參數(shù),并且能夠保持 PTM 主體參數(shù)不變。與模型的整體調優(yōu)相比,prompt 調優(yōu)優(yōu)勢明顯,它對計算資源要求較低并且針對特定的下游任務能夠實現(xiàn)快速調優(yōu)匹配。但是盡管已經(jīng)證明,當訓練數(shù)據(jù)足夠時,提示調整可以與完整模型調整的性能相匹配,但由于隨機初始化的 soft prompt 在預訓練和微調之間引入了新的差距,因此在 Few-shot 中無法從零開始訓練 soft prompt。

「為了彌補 Prompt Tuning 的預訓練和微調之間的差距,本文提出了多任務預訓練模塊化提示 (),它是一組在 38 個中文任務上預訓練的可組合提示」,在下游任務中,預訓練的 prompt 可以有選擇地進行激活和組合,提高對未知任務的泛化能力。為了彌合預訓練和微調之間的差距,將上下游任務制定為統(tǒng)一到了一個機器閱讀理解任務中。 通過在梯度下降、黑盒調優(yōu)兩種學習范式的實驗,證明了 在 Few-shot 學習場景中,相比比 Prompt tuning、完整模型調優(yōu)和其它的 Prompt 預訓練方法都具有顯著的優(yōu)勢,最后作者還證明了僅通過學習 8 個參數(shù)來組合預訓練的模塊化提示,就可以實現(xiàn)對下游任務的快速適應。

方法介紹

方法主要通過以下三個步驟實現(xiàn)對下游任務的快速適應:(1) 在大規(guī)模無標簽數(shù)據(jù)上進行自監(jiān)督預訓練;(2) 使用多任務學習進行預訓練模塊指令和相應的 route;(3) 激活并調整子集指令以進行對下游任務的適應。具體流程圖如下所示: 5dc0d54a-0e82-11ee-962d-dac502259ad0.png ?方法的主要內容包括:「統(tǒng)一為 MRC 任務、深度模塊化 Prompt、多任務預訓練、下游 FT」等四個方面。 「統(tǒng)一 MRC 任務」:基于 Prompt 的學習方法不能涵蓋較廣范圍的任務,并且任務之間的標簽詞可能不同,從而導致預訓練模型在不同任務上的效果不佳?;?MCC 方法,可以將上下游任務轉化成 MCC 任務使得不同任務可以共享相同的標簽詞,但該方法當面對大于 16 個標簽的分類任務時仍存在局限性。為此 方法將上下游任務統(tǒng)一成機器閱讀理解 (MRC) 格式,通過構建一個查詢來進行分類任務,進而可以處理不同標簽數(shù)的任務,從而實現(xiàn)更廣泛的任務支持。 「深度模塊化 Prompt」:為了增加 soft prompt 的能力,使其匹配訓練數(shù)據(jù)的復雜性,作者從深度和寬度兩個維度擴展了 soft prompt,具體如下圖所示:

5dce2894-0e82-11ee-962d-dac502259ad0.png

其中:首先在深度方面,作者增加了 LSTM 層或 Transformer Decoder 來實現(xiàn)深度擴展。這些層使得模型可以更好地學習輸入序列的表示,并且能夠考慮更多的上下文信息;其次在寬度方面,作者在 soft prompt 里面添加了更多的詞匯和語義信息。通過深度和寬度的拓展,soft prompt 可以更好地匹配訓練數(shù)據(jù)的復雜性,從而提高模型的性能和準確率。

「多任務預訓練」:多任務學習已被證明可以提高各種任務的 prompt learning 的表現(xiàn)。作者對由 38 個不同類型、領域、大小的中文 NLP 任務組成的混合任務進行了深度模塊化提示的預訓練。為了處理不平衡的數(shù)據(jù)大小,對于每次向前計算,首先隨機從 1 到 38 中選擇一個任務 ID,然后獲取對應于所選擇任務的一個批次的訓練數(shù)據(jù),從而每個任務的學習步驟數(shù)量應該是相同的。

「下游 FT」:為了能夠快速適應下游任務,本文通過兩個階段進行微調,如下圖所示:

5dd55d30-0e82-11ee-962d-dac502259ad0.png

其中:在第一階段,為每個層分配一個隨機路由,并訓練 route 選擇性地重用預訓練的模塊提示來解決目標任務,同時保持所有其他參數(shù)凍結。在第二階段,凍結 route 并只微調選擇的提示。整個微調過程中,PTM 參數(shù)保持不變。同時作者探索了基于梯度下降和黑盒調優(yōu)兩種學習范式下的微調。對于梯度下降,使用 Adam 優(yōu)化器進行兩個階段的微調。對于黑盒 FT,采用貝葉斯優(yōu)化在第一階段優(yōu)化 route,并采用 CMAES 優(yōu)化選擇的內在 prompt ,同時凍結映射矩陣 A。

實驗思路 在 38 個中文 NLP 任務上預訓練,然后在 14 個下游任務上進行評估。在 Few-Shot 下的實驗表明,具體如下圖所示,可以發(fā)現(xiàn)「其性能明顯優(yōu)于 PT、全模型微調和之前的 prompt 訓練方法」。僅通過調整 route(僅有 8 個參數(shù))凍結 PTM 和所有 prompt,就可以實現(xiàn)對下游任務的快速適應。 5deb949c-0e82-11ee-962d-dac502259ad0.png
責任編輯:彭菁

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 模塊
    +關注

    關注

    7

    文章

    2707

    瀏覽量

    47476
  • 數(shù)據(jù)

    關注

    8

    文章

    7030

    瀏覽量

    89038
  • 語言模型
    +關注

    關注

    0

    文章

    524

    瀏覽量

    10277

原文標題:ACL 2023 | 復旦邱錫鵬組提出模塊化Prompt多任務預訓練,可快速適應下游任務

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于CVR建模的多任務聯(lián)合學習訓練方法——ESMM

    本文作者提出 ESMM 算法,通過定義新型多任務聯(lián)合訓練的方式,以全新的視角對 CVR 進行建模。
    的頭像 發(fā)表于 08-27 16:41 ?5531次閱讀
    基于CVR建模的<b class='flag-5'>多任務</b>聯(lián)合學習<b class='flag-5'>訓練</b>方法——ESMM

    【大語言模型:原理與工程實踐】大語言模型的訓練

    進行損失計算,得到下一個目標的預測。也會設計一些其他輔助訓練任務,與主任務共同訓練。選擇合適的訓練數(shù)據(jù)是確保模型性能和泛
    發(fā)表于 05-07 17:10

    setjmp構建簡單協(xié)作式多任務系統(tǒng)

    系統(tǒng)的調度只在用戶指定的時機發(fā)生,這會大大簡化內核和用戶系統(tǒng)的設計,尤其本文實現(xiàn)的系統(tǒng)通過條件查詢來放棄CPU,既符合傳統(tǒng)單片機程序設計的思維,又帶來了多任務、模塊化、可重入的編程便利。Setjmp
    發(fā)表于 12-07 15:55

    功放失真模塊化測試解決方案

    功放失真模塊化測試解決方案
    發(fā)表于 05-16 16:16

    模塊化編程

    在練習模塊化編程的時候,知道盡量不用全局變量??!可是,不得不使用很多的全局變量的時候,怎么辦?提示multiple public……
    發(fā)表于 08-26 16:17

    多任務編程多任務處理是指什么

    嵌入式Linux應用編程-多任務編程多任務處理是指用戶可在同一時間內運行多個應用程序,每個正在執(zhí)行的應用程序被稱為一個任務。Linux就是一個支持多任務的操作系統(tǒng),比起單
    發(fā)表于 12-22 08:30

    ZMC運動控制器多任務編程一

    、用戶多任務程序。運動控制器支持多任務編程,各任務可以獨立執(zhí)行,任務間不受影響。通過劃分任務,程序模塊化
    發(fā)表于 11-07 09:52

    嵌入式多任務GUI的通用解決方案

    針對嵌入式多任務 GUI 系統(tǒng)需要非常強的靈活性、可移植性和可伸縮性的特點.提出一種通用解決方案;采用層次、模塊化和面向對象的設計思想,給出了 GUI 的體系結構,并對多任務 GUI
    發(fā)表于 01-04 18:30 ?24次下載

    實時多任務嵌入式軟件的架構方式的設計應用

    分享到:標簽:軟總線 嵌入式軟件 實時多任務 1.引言 隨著大型嵌入式系統(tǒng)向著集成化和多元方向的發(fā)展,嵌入式軟件系統(tǒng)的復雜度也日益增大。在集成多個硬件工作模塊組成的復雜系統(tǒng)中,要求軟件系統(tǒng)能同時
    發(fā)表于 10-25 14:46 ?1次下載
    實時<b class='flag-5'>多任務</b>嵌入式軟件的架構方式的設計應用

    新的訓練方法——MASS!MASS訓練幾大優(yōu)勢!

    專門針對序列到序列的自然語言生成任務,微軟亞洲研究院提出了新的訓練方法:屏蔽序列到序列訓練(MASS: Masked Sequence
    的頭像 發(fā)表于 05-11 09:34 ?7086次閱讀
    新的<b class='flag-5'>預</b><b class='flag-5'>訓練</b>方法——MASS!MASS<b class='flag-5'>預</b><b class='flag-5'>訓練</b>幾大優(yōu)勢!

    一種基于多任務聯(lián)合訓練的閱讀理解模型

    和理解能力。為此,提岀一種基于多任務聯(lián)合訓練的閱讀理解模型,該模型是由一組功能各異的神經(jīng)絡構成的聯(lián)合學習模型,其仿效人們推理和回答冋題的基本方式分別執(zhí)行文檔選擇和答案抽取兩個關鍵步驟。檔選擇過程融入了基于注意
    發(fā)表于 03-16 11:41 ?10次下載
    一種基于<b class='flag-5'>多任務</b>聯(lián)合<b class='flag-5'>訓練</b>的閱讀理解模型

    基于訓練模型和長短期記憶網(wǎng)絡的深度學習模型

    語義槽填充是對話系統(tǒng)中一項非常重要的任務,旨在為輸入句子的毎個單詞標注正確的標簽,其性能的妤壞極大地影響著后續(xù)的對話管理模塊。目前,使用深度學習方法解決該任務時,一般利用隨機詞向量或者
    發(fā)表于 04-20 14:29 ?19次下載
    基于<b class='flag-5'>預</b><b class='flag-5'>訓練</b>模型和長短期記憶網(wǎng)絡的深度學習模型

    利用視覺語言模型對檢測器進行訓練

    訓練通常被用于自然語言處理以及計算機視覺領域,以增強主干網(wǎng)絡的特征提取能力,達到加速訓練和提高模型泛化性能的目的。該方法亦可以用于場景文本檢測當中,如最早的使用ImageNet
    的頭像 發(fā)表于 08-08 15:33 ?1409次閱讀

    什么是訓練 AI 模型?

    訓練 AI 模型是為了完成特定任務而在大型數(shù)據(jù)集上訓練的深度學習模型。這些模型既可以直接使用,也可以根據(jù)不同行業(yè)的應用需求進行自定義。 如果要教一個剛學會走路的孩子什么是獨角獸,那么
    的頭像 發(fā)表于 04-04 01:45 ?1453次閱讀

    什么是訓練AI模型?

    訓練 AI 模型是為了完成特定任務而在大型數(shù)據(jù)集上訓練的深度學習模型。這些模型既可以直接使用,也可以根據(jù)不同行業(yè)的應用需求進行自定義。
    的頭像 發(fā)表于 05-25 17:10 ?1045次閱讀