必须要GPT-3吗?不,BERT的MLM模型也能小样本学习
?PaperWeekly 原創(chuàng) ·?作者|蘇劍林
單位|追一科技
研究方向|NLP、神經(jīng)網(wǎng)絡
大家都知道現(xiàn)在 GPT-3 風頭正盛,然而,到處都是 GPT-3、GPT-3 地推,讀者是否記得 GPT-3 論文的名字呢?事實上,GPT-3 的論文叫做 Language Models are Few-Shot Learners [1],標題里邊已經(jīng)沒有 G、P、T 幾個單詞了,只不過它跟開始的 GPT 是一脈相承的,因此還是以 GPT 稱呼它。
顧名思義,GPT-3 主打的是 Few-Shot Learning,也就是小樣本學習。此外,GPT-3 的另一個特點就是大,最大的版本多達 1750 億參數(shù),是 BERT Base 的一千多倍。
正因如此,前些天 Arxiv 上的一篇論文 It's Not Just Size That Matters: Small Language Models Are Also Few-Shot Learners [2] 便引起了筆者的注意,意譯過來就是“誰說一定要大的?小模型也可以做小樣本學習”。
顯然,這標題對標的就是 GPT-3,于是筆者饒有興趣地點進去看看是誰這么有勇氣挑戰(zhàn) GPT-3,又是怎樣的小模型能挑戰(zhàn) GPT-3?經(jīng)過閱讀,原來作者提出通過適當?shù)臉?gòu)造,用 BERT 的 MLM 模型也可以做小樣本學習,看完之后頗有一種“原來還可以這樣做”的恍然大悟感。在此與大家分享一下。
冉冉升起的MLM
MLM,全稱“Masked Language Model”,可以翻譯為“掩碼語言模型”,實際上就是一個完形填空任務,隨機 Mask 掉文本中的某些字詞,然后要模型去預測被 Mask 的字詞,示意圖如下:
▲ BERT的MLM模型簡單示意圖
其中被 Mask 掉的部分,可以是直接隨機選擇的 Token,也可以是隨機選擇連續(xù)的能組成一整個詞的 Token,后者稱為 WWM(Whole Word Masking)。
開始,MLM 僅被視為 BERT 的一個預訓練任務,訓練完了就可以扔掉的那種,因此有一些開源的模型干脆沒保留 MLM 部分的權(quán)重,比如 brightmart 版 [3] 和 clue 版 [4] 的 RoBERTa,而哈工大開源的 RoBERTa-wwm-ext-large [5] 則不知道出于什么原因隨機初始化了 MLM 部分的權(quán)重,因此如果要復現(xiàn)本文后面的結(jié)果,這些版本是不可取的。
然而,隨著研究的深入,研究人員發(fā)現(xiàn)不止 BERT 的 Encoder 很有用,預訓練用的 MLM 本身也很有用。
比如論文 BERT has a Mouth, and It Must Speak: BERT as a Markov Random Field Language Model [6] 指出 MLM 可以作為一般的生成模型用,論文 Spelling Error Correction with Soft-Masked BERT [7] 則將 MLM 用于文本糾錯。
筆者之前在從語言模型到 Seq2Seq:Transformer 如戲,全靠 Mask 的實驗也表明 MLM 的預訓練權(quán)重也可以當作 UniLM 來用做 Seq2Seq 任務,還有無監(jiān)督分詞和句法分析!原來 BERT 還可以這樣用一文將 MLM 的思想用于無監(jiān)督分詞和句法分析了。可以說 MLM 已經(jīng)是大放異彩了。
將任務轉(zhuǎn)成完形填空
在本文里,我們再學習 MLM 的一個精彩應用:用于小樣本學習或半監(jiān)督學習,某些場景下甚至能做到零樣本學習。
怎么將我們要做的任務跟 MLM 結(jié)合起來呢?很簡單,給任務一個文本描述,然后轉(zhuǎn)換為完形填空問題即可。舉個例子,假如給定句子“這趟北京之旅我感覺很不錯?!?#xff0c;那么我們補充個描述,構(gòu)建如下的完形填空:
______滿意。這趟北京之旅我感覺很不錯。
進一步地,我們限制空位處只能填一個“很”或“不”,問題就很清晰了,就是要我們根據(jù)上下文一致性判斷是否滿意,如果“很”的概率大于“不”的概率,說明是正面情感傾向,否則就是負面的,這樣我們就將情感分類問題轉(zhuǎn)換為一個完形填空問題了,它可以用 MLM 模型給出預測結(jié)果,而 MLM 模型的訓練可以不需要監(jiān)督數(shù)據(jù),因此理論上這能夠?qū)崿F(xiàn)零樣本學習了。
多分類問題也可以做類似轉(zhuǎn)換,比如新聞主題分類,輸入句子為“八個月了,終于又能在賽場上看到女排姑娘們了?!?#xff0c;那么就可以構(gòu)建:
下面播報一則______新聞。八個月了,終于又能在賽場上看到女排姑娘們了。
這樣我們就將新聞主題分類也轉(zhuǎn)換為完形填空問題了,一個好的 MLM 模型應當能預測出“體育”二字來。
還有一些簡單的推理任務也可以做這樣的轉(zhuǎn)換,常見的是給定兩個句子,判斷這兩個句子是否相容,比如“我去了北京”跟“我去了上?!本褪敲艿?#xff0c;“我去了北京”跟“我在天安門廣場”是相容的,常見的做法就是將兩個句子拼接起來輸入到模型做,作為一個二分類任務。如果要轉(zhuǎn)換為完形填空,那該怎么構(gòu)造呢?一種比較自然的構(gòu)建方式是:
我去了北京?______,我去了上海。
我去了北京?______,我在天安門廣場。
其中空位之處的候選詞為 是的不是。
Pattern-Exploiting Training
讀到這里,讀者應該不難發(fā)現(xiàn)其中的規(guī)律了,就是給輸入的文本增加一個前綴或者后綴描述,并且 Mask 掉某些 Token,轉(zhuǎn)換為完形填空問題,這樣的轉(zhuǎn)換在原論文中稱為?Pattern,這個轉(zhuǎn)換要盡可能與原來的句子組成一句自然的話,不能過于生硬,因為預訓練的 MLM 模型就是在自然語言上進行的。
顯然同一個問題可以有很多不同的 Pattern,比如情感分類的例子,描述可以放最后,變成“這趟北京之旅我感覺很不錯。____滿意。”;也可以多加幾個字,比如“覺得如何?____滿意。這趟北京之旅我感覺很不錯?!?。
然后,我們需要構(gòu)建預測 Token 的候選空間,并且建立 Token 到實際類別的映射,這在原論文中稱為?Verbalizer,比如情感分類的例子,我們的候選空間是 很不,映射關(guān)系是 很正面不負面,候選空間與實際類別之間不一定是一一映射,比如我們還可以加入“挺”、“太”、“難”字,并且認為 很挺太正面以及不難負面,等等。
不難理解,不少 NLP 任務都有可能進行這種轉(zhuǎn)換,但顯然這種轉(zhuǎn)換一般只適用于候選空間有限的任務,說白了就是只用來做選擇題,常見任務的就是文本分類。
剛才說了,同一個任務可以有多種不同的 Pattern,原論文是這樣處理的:
1. 對于每種 Pattern,單獨用訓練集 Finetune一個 MLM 模型出來;
2. 然后將不同 Pattern對應的模型進行集成,得到融合模型;
3. 用融合模型預測未標注數(shù)據(jù)的偽標簽;
4. 用偽標簽數(shù)據(jù) Finetune 一個常規(guī)的(非 MLM 的)模型。
具體的集成方式大家自己看論文就行,這不是重點。這種訓練模式被稱為Pattern-Exploiting Training(PET),它首先出現(xiàn)在論文 Exploiting Cloze Questions for Few Shot Text Classification and Natural Language Inference [8]?。
本文要介紹的這篇論文則進一步肯定和完善了 Pattern-Exploiting Training 的價值和結(jié)果,并整合了多任務學習,使得它在 SuperGLUE 榜單上的小樣本學習效果超過了 GPT3。兩篇論文的作者是相同的,是一脈相承的作品。
▲ PET在SuperGLUE上的小樣本學習的結(jié)果
不過要吐槽一個點是,上圖中 PET 的 223M 參數(shù),所用的模型是 ALBERT-xxlarge-v2,事實上稱 ALBERT 為“小模型”是一種很耍流氓的行為,因為它前向計算的速度并沒有得到任何提升。ALBERT-xxlarge 共有 12 層,層與層之間參數(shù)是共享的,就前向計算而言,它應該等價于約 2700M(12 倍)參數(shù)的 GPT 才對。
中文實踐,檢驗效果
要真正確認一個方法或模型的價值,看論文的實驗表格是不夠的,論文給出的實驗結(jié)果誰都不好說能否復現(xiàn),其次就算英文上能復現(xiàn)也不代表中文上有價值,因此最實際的還是親自動手做實驗驗證。下面是筆者的實驗代碼,供讀者參考:
Github 地址:
https://github.com/bojone/Pattern-Exploiting-Training
我們將從以下幾個角度來探討 PET 的可行性:
1. 直接利用現(xiàn)成的 MLM 模型效果如何?(零樣本學習1)
2. 用“大量無標簽數(shù)據(jù)”微調(diào)現(xiàn)成的 MLM 模型效果如何?(零樣本學習2)
3. 用“小量標簽數(shù)據(jù)”微調(diào)現(xiàn)成的 MLM 模型效果如何?(小樣本學習)
4. 用“小量標簽數(shù)據(jù)+大量無標簽數(shù)據(jù)”微調(diào)現(xiàn)成的MLM模型效果如何?(半監(jiān)督學習)
下面主要給出情感二分類的實驗結(jié)果。另外還有一個新聞主題的多分類,代碼也放到 Github 了,其結(jié)果是類似的,就不重復陳述了。
4.1 零樣本學習1
這里主要探索的是給輸入文本補上對應的 Pattern 后,直接基于現(xiàn)成的 MLM 模型進行預測,預測的準確率。由于構(gòu)建模型的整個過程都不涉及到標簽數(shù)據(jù)監(jiān)督訓練,因此這算是一種“零樣本學習”。我們需要比較的是不同 Pattern、不同 MLM 模型上的效果:
下面是實驗的幾個 Pattern,其中空位處候選詞語都為“很”和“不”:
P1:____滿意。這趟北京之旅我感覺很不錯。
P2:這趟北京之旅我感覺很不錯。____滿意。
P3:____好。這趟北京之旅我感覺很不錯。
P4:____理想。這趟北京之旅我感覺很不錯。
P5:感覺如何?____滿意。這趟北京之旅我感覺很不錯。
至于 MLM 模型,則是下面幾個:
M1:Google 開源的中文版 BERT Base:
https://github.com/google-research/bert
M2:哈工大開源的 RoBERTa-wwm-ext Base:
https://github.com/ymcui/Chinese-BERT-wwm
M3:騰訊 UER 開源的 BERT Base:
https://share.weiyun.com/5QOzPqq
M4:騰訊 UER 開源的 BERT Large:
https://share.weiyun.com/5G90sMJ
實驗結(jié)果如下表(驗證集/測試集):
最好的效果居然可以達到 88%!也就是說,加載現(xiàn)成的 MLM,配合適當?shù)?Pattern,不需要任何標注數(shù)據(jù),就可以正確識別大部分樣本情感傾向了。這不得不讓我們對 MLM 模型的潛力刮目相看了。
可以觀察到,不同的 Pattern、不同的預訓練模型之間還是有一定的差異的,整體而言 Large 版本的效果要明顯好于 Base 版本的模型,說明像 GPT 到 GPT2 再到 GPT3 一樣,還是把模型做得更大會更好。
此外,這還有可能說明實際上 MLM 還沒有被充分訓練好,或許是因為 BERT 這種 Mask 掉一部分的訓練方式過于低效了,可能用修改 Transformer 結(jié)構(gòu),設計一個更快更好的 MLM 模型一文提到的改進版 MLM 會更好。
4.2 零樣本學習2
看完上述結(jié)果,讀者可能會想到:如果我用領(lǐng)域內(nèi)的數(shù)據(jù)繼續(xù)預訓練 MLM 模型,那么能不能提升效果呢?答案是:能!下面是我們的實驗結(jié)果,算力有限,我們只在 RoBERTa-wwm-ext(上述的 M2,繼續(xù)預訓練后的模型我們稱為 M2+ 無監(jiān)督)的基礎(chǔ)上做了比較:
要注意的是,這里我們只是用領(lǐng)域內(nèi)的數(shù)據(jù)繼續(xù)做 MLM 訓練,這個過程是無監(jiān)督的,也不需要標注信號,因此也算是“零樣本學習”。同時,從到目前為止的結(jié)果我們可以看出,給輸入本文加入“前綴”的效果比“后綴”更有優(yōu)勢一些。
4.2.1 小樣本學習
剛才我們討論了無標簽數(shù)據(jù)繼續(xù)預訓練 MLM 的提升,如果回到 PET 的目標場景,直接用小量的標簽數(shù)據(jù)配合特定的 Pattern 訓練 MLM 又如何呢?
這也就是真正的“小樣本學習”訓練了,這里我們保留約 200 個標注樣本,構(gòu)造樣本的時候,我們先給每個句子補上 Pattern,除了 Pattern 自帶的 Mask 位置之外,我們還隨機 Mask 其他一部分,以增強對模型的正則。最終實驗結(jié)果如下:
結(jié)論就是除了“后綴式”的 P2 之外,其它結(jié)果都差不多,這進一步說明了“前綴式”的 Pattern 會比“后綴式”更有競爭力一些。在效果上,直接用同樣的數(shù)據(jù)用常規(guī)的方法去微調(diào)一個 BERT 模型,大概的結(jié)果是 88.93 左右,所以基于 “MLP+Pattern” 的小樣本學習方法可能帶來輕微的性能提升。
4.3?半監(jiān)督學習
無監(jiān)督的零樣本學習和有監(jiān)督的小樣本學習都說完了,自然就輪到把標注數(shù)據(jù)和非標注數(shù)據(jù)都結(jié)合起來的“半監(jiān)督學習”了。還是同樣的任務,標注數(shù)據(jù)和非標注數(shù)據(jù)的比例大約是 1:99,標注數(shù)據(jù)帶 Pattern,非標注數(shù)據(jù)不帶 Pattern,大家都 Mask 掉一部分 Token 進行 MLM 預訓練,最終測出來的效果如下:
還是同樣的,“后綴”明顯比“前綴”差,“前綴”的效果差不多。具體效果上,則是肯定了額外的無標注數(shù)據(jù)也是有作用的。
直覺上來看,“前綴”比“后綴”要好,大體上是因為“前綴”的 Mask 位置比較固定,微弱的監(jiān)督信號得以疊加增強?但這也不能解釋為什么零樣本學習的情況下也是“前綴”更好,估計還跟模型的學習難度有關(guān)系,可能句子前面部分的規(guī)律更加明顯,相對來說更加容易學一些,所以前面部分就學習得更加充分?這一切都還只是猜測。
4.4 匯總與結(jié)論
將上述結(jié)果匯總?cè)缦?#xff1a;
讀者還可以對比我們之前在文章泛化性亂彈:從隨機噪聲、梯度懲罰到虛擬對抗訓練中用虛擬對抗訓練(VAT)做半監(jiān)督學習的結(jié)果,可以看到不管是零樣本學習、小樣本學習還是半監(jiān)督學習,基于 MLM 模型的方式都能媲美基于 VAT 的半監(jiān)督學習的結(jié)果。
我們在做短新聞多分類實驗時的結(jié)果也是相似的。因此,這說明了 MLM 模型確實也可以作為一個優(yōu)秀的零樣本/小樣本/半監(jiān)督學習器來使用。
當然,基于 MLM 模型的缺點還是有的,比如 MLM 所使用的獨立假設限制了它對更長文本的預測能力(說白了空位處的文字不能太長),以及無法預測不定長的答案也約束了它的場景(所以當前只能用于做選擇題)。我們期待有更強的 MLM 模型出現(xiàn),那時候就有可能在所有任務上都能與 GPT3 一較高下了。
又到了說小結(jié)的時候
本文介紹了 BERT 的 MLM 模型的一個新穎應用:配合特定的描述將任務轉(zhuǎn)化為完形填空,利用 MLM 模型做零樣本學習、小樣本學習和半監(jiān)督學習。
在原論文的 SuperGLUE 實驗里邊,它能達到媲美 GPT3 的效果,而筆者也在中文任務上做了一些實驗,進一步肯定了該思路的有效性。整個思路頗為別致,給人一種“原來還可以這樣做”的恍然大悟感,推薦大家學習一下。
參考文獻
[1] https://arxiv.org/abs/2005.14165
[2] https://arxiv.org/abs/2009.07118
[3] https://github.com/brightmart/roberta_zh
[4]?https://github.com/CLUEbenchmark/CLUEPretrainedModels
[5] https://github.com/ymcui/Chinese-BERT-wwm
[6] https://arxiv.org/abs/1902.04094
[7] https://kexue.fm/archives/7661
[8] https://arxiv.org/abs/2001.07676
更多閱讀
#投 稿?通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學習心得或技術(shù)干貨。我們的目的只有一個,讓知識真正流動起來。
?????來稿標準:
? 稿件確系個人原創(chuàng)作品,來稿需注明作者個人信息(姓名+學校/工作單位+學歷/職位+研究方向)?
? 如果文章并非首發(fā),請在投稿時提醒并附上所有已發(fā)布鏈接?
? PaperWeekly 默認每篇文章都是首發(fā),均會添加“原創(chuàng)”標志
?????投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發(fā)送?
? 請留下即時聯(lián)系方式(微信或手機),以便我們在編輯發(fā)布時和作者溝通
????
現(xiàn)在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關(guān)注」訂閱我們的專欄吧
關(guān)于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術(shù)平臺。如果你研究或從事 AI 領(lǐng)域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的必须要GPT-3吗?不,BERT的MLM模型也能小样本学习的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2020年度“CCF-百度松果基金”评审
- 下一篇: 中国十大橱柜品牌最新中国十大橱柜品牌