引言:
NLP領(lǐng)域的研究目前由像RoBERTa等經(jīng)過數(shù)十億個字符的語料經(jīng)過預(yù)訓(xùn)練的模型匯主導(dǎo)。那么對于一個預(yù)訓(xùn)練模型,對于不同量級下的預(yù)訓(xùn)練數(shù)據(jù)能夠提取到的知識和能力有何不同?是否可以在更少量數(shù)據(jù)上實現(xiàn)相似的能力與知識。本文基于不同量級預(yù)訓(xùn)練數(shù)據(jù)的RoBERTa模型分析了在分類探知(Classififier Probe)、信息論探查(info-theoretic probing)、無監(jiān)督相對可接受性判斷(unsupervised relative acceptability judgment,)和自然語言理解任務(wù)上的微調(diào)(Fine-tuning on NLU Tasks)等任務(wù)上的表現(xiàn),用于衡量模型在語言能力上的差異。
背景介紹:
Probe
BERT類模型的工作模式簡單,但取得的效果也是極佳的,其在各項任務(wù)上的良好表現(xiàn)主要得益于其在大量無監(jiān)督文本上學(xué)習(xí)到的文本表征能力。那么如何從語言學(xué)的特征角度來衡量一個預(yù)訓(xùn)練模型的究竟學(xué)習(xí)到了什么樣的語言學(xué)文本知識呢?Probe就是為了測試模型在語言學(xué)特征角度上的各種能力而設(shè)計的任務(wù)。以下為本文涉及到的兩種Probe方式:
Edge Probing
Edge Probing(以下簡稱 E-Probe)簡單來說,就是對于一個已經(jīng)預(yù)訓(xùn)練好的預(yù)訓(xùn)練模型,E-Probe就是一個插入在中間層的淺層神經(jīng)網(wǎng)絡(luò),通常為一個分類器層。示意圖如下:
對于每一個輔助任務(wù),分類器的輸入可能都不一樣。比如在實體標(biāo)注輔助任務(wù)中,輸入可能為該層某個區(qū)間的輸出,對于詞性標(biāo)注輔助任務(wù),輸入即為該層中的單個輸出。在具體的輔助任務(wù)訓(xùn)練中,原預(yù)訓(xùn)練模型的參數(shù)是不參與更新的,只更新該分類頭的參數(shù)。同時由于各個層均可以用于輔助任務(wù)的訓(xùn)練,因此使用到了一個可學(xué)習(xí)的權(quán)重向量來對于某個token在所有層對應(yīng)的輸出向量來作為最終的表示。最終得到的這個權(quán)重也可以用于衡量該輔助任務(wù)所需要的信息各個層之間的占比情況。E-Probe提供了一種更為直觀的方式衡量模型對于語言學(xué)特征的表征能力。
Probing with MDL
Probing with MDL(以下簡稱 M-Probe)。M-Probe主要就E-Probe中存在的各項問題進行了討論,并提出了基于了最小描述長度(minimum description length,MDL)的Probe方法。相較于E-Probe,M-Probe的方法就沒有那么直觀。M-Probe使用了數(shù)據(jù)編碼這一概念,替換了以往E-Probe中預(yù)測這一個行為。對應(yīng)在模型上的改變即為將分類頭轉(zhuǎn)化為了一個概率模型,然后根據(jù)香農(nóng)編碼,即可得到無損轉(zhuǎn)換編碼時的最小編碼長度。當(dāng)下對于輔助任務(wù)上的表現(xiàn)不再是根據(jù)最終輔助任務(wù)上的Accuracy等指標(biāo)來實現(xiàn)的,而是根據(jù)對于數(shù)據(jù)編碼后的編碼長度來進行比較實現(xiàn)的。本質(zhì)原理為,對于輔助任務(wù)所需要的特征能夠更好表達(dá)的模型,具有對于數(shù)據(jù)分布上更好的規(guī)律分布,那么對于編碼來說則可以使用更短的編碼長度來實現(xiàn)對于數(shù)據(jù)的編碼??梢酝ㄟ^下圖釋義來表示:
接下來將會介紹關(guān)于本文使用到的M-Probe的線上編碼版本,E-Probe存在的一個問題就是只有在減少分類器訓(xùn)練數(shù)據(jù)量時,他們才能看到指標(biāo)的合理差異。即對于數(shù)據(jù)量上的差距也會導(dǎo)致最終效果的不同,因此采用了一個線上編碼版本的M-Probe。流程如下圖所示:
首先將數(shù)據(jù)分割為不同大小的部分,對于第一次兩個模型訓(xùn)練的輸入均為未壓縮的版本,在后續(xù)的學(xué)習(xí)中B的標(biāo)簽概率分布均為A模型編碼后的結(jié)果。最終直到整個數(shù)據(jù)集都被傳遞后,得到的編碼長度可以被下式衡量
上式的前半部分為數(shù)據(jù)中第一部分對于共K個類別進行編碼所需要的編碼長度,后面的部分為各個數(shù)據(jù)團根據(jù)香農(nóng)編碼得到的對于數(shù)據(jù)進行編碼所需要的編碼長度。
綜上M-Probe實現(xiàn)了一個基于MDL的Probe方式,最終能夠通過編碼長度來衡量預(yù)訓(xùn)練模型對于各個語言學(xué)特征的提取能力。
實驗設(shè)計
本文主要使用以上的對于模型表征能力測評的方法,對于分別在1M、10M、100M、1B和30B字符量的預(yù)訓(xùn)練數(shù)據(jù)集上得到的RoBERTa模型進行測試。并對于結(jié)果進行了分析。
Classififier Probing
本實驗主要基于E-Probe的方法,分別對于詞性標(biāo)注(Part-of-Speech),依存句法分析(Dependencies),成分句法分析(Constituents),關(guān)系抽?。≧elations),語義角色標(biāo)注(SRL對應(yīng)下圖中的SRL、Sem. Proto Role 1 、Sem. Proto Role 2),共指消解(coreference resolution,對應(yīng)下表中的OntoNotes coref. )命名實體識別(Entities)和常識推斷(Winograd coref.)等輔助任務(wù)進行了測評。結(jié)果如下:
其中所有的數(shù)據(jù)結(jié)果均使用了Min-max歸一化,其中None對應(yīng)的為隨機初始化的RoBERTa模型。并根據(jù)以上的結(jié)果進行了匯總,分別從句法、語義和常識推斷三個方面來具體衡量各個體量數(shù)據(jù)預(yù)訓(xùn)練下的效果。
由以上的實驗可以得出結(jié)論:大多數(shù)的句法與語法特征的學(xué)習(xí)在1B以下的字符數(shù)量訓(xùn)練集完成,大部分任務(wù)的表征能力在1M附近達(dá)到最快的學(xué)習(xí)速度,而其中較為不同的是知識推斷任務(wù),本文認(rèn)為是由于關(guān)于知識內(nèi)容的學(xué)習(xí)需要更為龐大的訓(xùn)練數(shù)據(jù)。同時,在100M量級上的RoBERTa模型的關(guān)于語義與句法表征能力已經(jīng)非常接近30B量級下的模型了。
Minimum Description Length Probing
本實驗是基于M-Probe的方法,在同樣的數(shù)據(jù)集上進行的實驗。
上圖中Winograd的效果差距可能是由于在實驗中基于M-Probe的方法沒辦法很好收斂。同樣的根據(jù)實驗結(jié)果,整體長度的下降也符合M-Probe的思想,包含更多知識的嵌入會使得任務(wù)具有更強的規(guī)律性更容易被編碼。在該試驗中,大部分的任務(wù)在100M上的效果也已經(jīng)很接近30B的效果了。
Unsupervised Grammaticality Judgement
該任務(wù)主要是基于BLiMP基準(zhǔn)集來測試模型,BLiMP主要包含了67個子數(shù)據(jù)集,每一種數(shù)據(jù)集中包含了1000個句子對,每個句子對之間的差距只有一個編輯距離,但這些句子在語法是否正確上缺失截然相反的,需要模型來識別。這67個子數(shù)據(jù)集分別對應(yīng)了英語語法中的一種特定的表述、句法或者語義現(xiàn)象。對對于該任務(wù),使用的方法為,使用MLM的方法,對于該不同位置上的字符對應(yīng)在兩個不同詞上的概率來衡量整體模型對于該自然語言現(xiàn)象的理解能力。結(jié)果如下:
和上述兩個任務(wù)中表現(xiàn)的一致的是,模型基本上在1M與100M的量級間上的表現(xiàn)快速增長。對于大部分的句子對任務(wù),100M量級下的模型基本上與人類表現(xiàn)只相差9個百分點,而額外的大量數(shù)據(jù)只能提高6個百分點,對于一些潛在的語法現(xiàn)象可能需要更大量級的數(shù)據(jù)。同時對于不同任務(wù)之間也進行比較,對于一些頻率高的現(xiàn)象往往在1M到10M就能達(dá)到一個很好的效果,而對于頻率較低的現(xiàn)象,往往需要更大量級的模型才能學(xué)習(xí)到很好的表征。
Unsupervised Language Model Knowledge Probe
本實驗主要基于LAMA數(shù)據(jù)集上的實驗表現(xiàn),該數(shù)據(jù)集主要由五萬個完型填空句子得到,這些語句主要為針對于事實知識問題的填空問題。
可以看到針對于事實知識性的測試實驗中,并沒有一個很好的可以總結(jié)的瓶頸規(guī)律。其中在ConceptNet任務(wù)中這一個概念性的填空中的表現(xiàn)可以很好的解釋W(xué)inograd coref.中1B到30B的大幅度提升。對于知識類別的表征與學(xué)習(xí)能力可能需要更多的數(shù)據(jù)或者預(yù)訓(xùn)練任務(wù)來進行提升。
Fine-tuning on NLU Tasks
本實驗主要基于SuperGLUE這一分類基準(zhǔn)數(shù)據(jù)集來測試在真正的下游任務(wù)上,不同量級模型的表現(xiàn)到底有什么區(qū)別。
可以看到在下游NLU任務(wù)上,即是在30B的量級上也并沒有出現(xiàn)非常顯著的飽和現(xiàn)象,在一些關(guān)鍵的NLU任務(wù)上提供更多的預(yù)訓(xùn)練數(shù)據(jù)可能會帶來更大的提升。
總結(jié)與討論
本文主要使用了基于Probe的方法來對模型在不同量級數(shù)據(jù)下的表征能力進行測試。得出了在10M到100M量級的數(shù)據(jù)中會達(dá)到對于語法和語義表征能力的飽和并和人類的能力想當(dāng),但對于事實類的知識需要更多的預(yù)訓(xùn)練數(shù)據(jù)才能達(dá)到。對于下游的NLU任務(wù),預(yù)訓(xùn)練數(shù)據(jù)量的提升往往會帶來較好的性能提升,同時在目前的30B的情況下仍未達(dá)到飽和。
對于本文中NLU仍未達(dá)到飽和的原因,文中的解決方案是提供更多的預(yù)訓(xùn)練數(shù)據(jù)這樣的方式,但這樣的方式往往是沒有目的性的,本文后續(xù)對于該點的討論也集中于無法將對應(yīng)的語法或者語義性的表征能力與對應(yīng)的NLU任務(wù)聯(lián)系上去,對于推動NLU任務(wù)的提升的是什么仍然是一個未解決的問題。但對于此現(xiàn)象,個人覺得可能和Unsupervised Grammaticality Judgement這一節(jié)中的類似,因為長尾效應(yīng)的存在,通過堆疊大量的預(yù)訓(xùn)練數(shù)據(jù)確實會引入更多的長尾效應(yīng)中20%尾巴的部分,即能夠提高NLU任務(wù)中未被覆蓋到的部分,但這樣的方式確實低效的,那么是否能夠找到一個更高效針對NLU任務(wù)的方法從龐大的預(yù)訓(xùn)練語料庫中找到這一和20%尾巴更相似的數(shù)據(jù)來構(gòu)建新的預(yù)訓(xùn)練語料庫呢?
審核編輯 :李倩
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4789瀏覽量
101528 -
編碼
+關(guān)注
關(guān)注
6文章
961瀏覽量
55055 -
模型
+關(guān)注
關(guān)注
1文章
3406瀏覽量
49457
發(fā)布評論請先 登錄
相關(guān)推薦
基于不同量級預(yù)訓(xùn)練數(shù)據(jù)的RoBERTa模型分析
【大語言模型:原理與工程實踐】大語言模型的預(yù)訓(xùn)練
為什么要使用預(yù)訓(xùn)練模型?8種優(yōu)秀預(yù)訓(xùn)練模型大盤點

小米在預(yù)訓(xùn)練模型的探索與優(yōu)化

2021 OPPO開發(fā)者大會:NLP預(yù)訓(xùn)練大模型

評論