PTMs:NLP預訓練模型的全面總結

PTMs:NLP預訓練模型的全面總結

轉自:https://zhuanlan.zhihu.com/p/115014536

預訓練模型(Pre-trained Models,PTMs) 的出現將NLP帶入了一個全新時代。2020年3月18日,邱錫鵬老師發表了關于NLP預訓練模型的綜述《Pre-trained Models for Natural Language Processing: A Survey》[1],這是一篇全面的綜述,系統地對PTMs進行了歸納分類。

本文以此篇綜述論文為主要參考,通過借鑒不同的歸納方法進行總結,同時也整合了專欄之前已經介紹過的《nlp中的詞向量對比》和《nlp中的預訓練語言模型總結》兩篇文章,以QA形式對PTMs進行全面總結歸納。

獲取總結圖片下載以及單模型精讀請到 github:NLP預訓練模型的全面總結,希望為大家的學習工作提供一些幫助。

筆者注:本文總結與原綜述論文也有一些不同之處(詳見文末),如有錯誤或不當之處請指正。很多總結歸納的點不太好拿捏,大家多給意見~

在這里插入圖片描述

一、為什么要進行預訓練?

深度學習時代,為了充分訓練深層模型參數并防止過擬合,通常需要更多標注數據喂養。在NLP領域,標注數據更是一個昂貴資源。PTMs從大量無標注數據中進行預訓練使許多NLP任務獲得顯著的性能提升。總的來看,預訓練模型PTMs的優勢包括:

  1. 在龐大的無標注數據上進行預訓練可以獲取更通用的語言表示,并有利于下游任務;
  2. 為模型提供了一個更好的初始化參數,在目標任務上具備更好的泛化性能、并加速收斂;
  3. 是一種有效的正則化手段,避免在小數據集上過擬合(一個隨機初始化的深層模型容易對小數據集過擬合);

二、什么是詞嵌入和分布式表示?PTMs與分布式表示的關系?

詞嵌入是自然語言處理(NLP)中語言模型與表征學習技術的統稱。概念上而言,它是指把一個維數為所有詞的數量的高維空間嵌入到一個維數低得多的連續向量空間中,每個單詞或詞組被映射為實數域上的向量,這也是分布式表示:向量的每一維度都沒有實際意義,而整體代表一個具體概念。

分布式表示相較于傳統的獨熱編碼(one-hot)表示具備更強的表示能力,而獨熱編碼存在維度災難和語義鴻溝(不能進行相似度計算)等問題。傳統的分布式表示方法,如矩陣分解(SVD/LSA)、LDA等均是根據全局語料進行訓練,是機器學習時代的產物。

PTMs也屬于分布式表示的范疇,本文的PTMs主要介紹深度學習時代、自NNLM[2]以來的 “modern” 詞嵌入。

三、PTMs有哪兩大范式?對比不同的預訓練編碼器?

PTMs的發展經歷從淺層的詞嵌入到深層編碼兩個階段,按照這兩個主要的發展階段,我們歸納出PTMs兩大范式:「淺層詞嵌入」和「預訓練編碼器」。

1、淺層詞嵌入(Non-Contextual Embeddings)

淺層詞嵌入,這一類PTMs范式是我們通常所說的“詞向量”,其主要特點是學習到的是上下文獨立的靜態詞嵌入,其主要代表為NNLM[2]、word2vec(CBOW[3]、Skip-Gram[3])、Glove[4]等。這一類詞嵌入通常采取淺層網絡進行訓練,而應用于下游任務時,整個模型的其余部分仍需要從頭開始學習。因此,對于這一范式的PTMs沒有必要采取深層神經網絡進行訓練,采取淺層網絡加速訓練也可以產生好的詞嵌入[3]。

淺層詞嵌入的主要缺陷為:

  • 詞嵌入與上下文無關,每個單詞的嵌入向量始終是相同,因此不能解決一詞多義的問題。
  • 通常會出現OOV問題,為了解決這個問題,相關文獻提出了字符級表示或sub-word表示,如CharCNN[5] 、FastText[6] 和 Byte-Pair Encoding [7]。

在這里插入圖片描述

圖1: 常見的3種淺層詞嵌入對比:NNLM、word2vec、Glove

2、預訓練編碼器(Contextual Embeddings

第二類PTMs范式為預訓練編碼器,主要目的是通過一個預訓練的編碼器能夠輸出上下文相關的詞向量,解決一詞多義的問題。這一類預訓練編碼器輸出的向量稱之為「上下文相關的詞嵌入」。

在這里插入圖片描述

圖2: NLP編碼器對比

圖2給出了NLP各種編碼器間的對比。PTMs中預訓練編碼器通常采用LSTM和Transformer(Transformer-XL),其中Transformer又依據其attention-mask方式分為Transformer-Encoder和Transformer-Decoder兩部分。此外,Transformer也可看作是一種圖神經網絡GNN[10]。

這一類「預訓練編碼器」范式的PTMs主要代表有ELMO[11]、GPT-1[12]、BERT[13]、XLNet[14]等。

四、PTMs按照任務類型如何分類?

PTMs按照任務類型可分為2大類:監督學習 和 無監督學習/自監督學習。

監督學習在NLP-PTMs中的主要代表就是CoVe[15],CoVe作為機器翻譯的encoder部分可以應用于多種NLP下游任務。除了CoVe外,NLP中的絕大多數PTMs屬于自監督學習。

自監督學習是無監督學習的一種方法[16],自監督學習[17]主要是利用輔助任務從大規模的無監督數據中挖掘自身的監督信息,通過這種構造的監督信息對網絡進行訓練,從而可以學習到對下游任務有價值的表征。因此,從“構造監督信息”這個角度來看,自監督也可看作是監督學習和無監督學習的一種融合[1]。嚴格地講,從是否由人工標注來看,自監督學習屬于無監督學習的范疇。

綜合各種自監督學習的分類方式,筆者將NLP-PTMs在自監督學習中分為兩種類型[16][17]:基于上下文(Context Based)和基于對比(Contrastive Based)。

1、基于上下文(Context Based)

基于上下文的PTMs,主要基于數據本身的上下文信息構造輔助任務,在NLP中我們通常引入語言模型作為訓練目標。PTMs中的語言模型主要分為三大類:

在這里插入圖片描述

圖3: 三類語言模型之間的對比

第一類:自回歸語言模型(LM)

p(x1:T)=∏t=1Tp(xt∣x0:t?1)p(x_{1:T})=\prod_{t=1}^Tp(x_t|x_{0:t?1}) p(x1:T?)=t=1T?p(xt?x0:t?1?)

  • 優點:語言模型(language model,LM)聯合概率的無偏估計,即為傳統的語言模型,考慮被預測單詞之間的相關性,天然適合處理自然生成任務;
  • 缺點:聯合概率按照文本序列順序拆解(從左至右分解),無法獲取雙向上下文信息表征;
  • 代表模型:ELMo、GPT-1、GPT-2[18]、ULMFiT[19]、SiATL[20];

第二類:自編碼語言模型(DAE)
p(x1:T)≈∑t=1Tmtlog?p(xt∣x~)p(x_{1:T})\approx∑_{t=1}^Tm_t\log p(x_t|\widetilde{x}) p(x1:T?)t=1T?mt?logp(xt?x)

  • 優點:本質為降噪自編碼(DAE)特征表示,通過引入噪聲[MASK]構建MLM(Masked language model),獲取雙向上下文信息表征(本文將自編碼語言模型統一稱為DAE,旨在采用部分損壞的輸入,恢復原始的未失真輸入);如果當前token被預測,則 mt=1m_t=1mt?=1 否則 mt=0m_t=0mt?=0x~\widetilde{x}x 為原始文本被替換后的輸入。
  • 缺點:引入獨立性假設,為語言模型聯合概率的有偏估計,沒有考慮預測token之間的相關性;
    • 預訓練時的「MASK」噪聲在finetune階段不會出現,造成兩階段不匹配問題;為解決這一問題,在15%被預測的token中,80%被替換為「MASK」,10%被隨機替換,10%被替換為原詞。
  • 代表模型:BERT、MASS [21]、T5[22]、RoBERTa[23]、UniLM[24]、XLM[25]、SpanBERT[26]、ERNIE-Baidu[27][28]、E-BERT[29]、ERNIE-THU[30]、BART[31]。

BERT[13]是自編碼語言模型的一個典型代表,但其采用的MLM策略和Transformer-Encoder結構,導致其不適合直接處理生成任務。為了解決這一問題,也可采用基于Seq2Seq MLM方法:encoder部分采取masked策略,而decoder部分以自回歸的方式預測encoder部分被mask的token。此外,還有很多基于自編碼語言模型的PTMs提出了不同的MLM增強策略,稱之為 Enhanced Masked Language Modeling (E-MLM) [1]。

上述DAE具體的PTMs方法見圖4。

第三類:排列語言模型(PLM)

排列語言模型(Permuted Language Model,PLM)綜合了LM和DAE-LM兩者的優點。嚴格來講,PLM和LM是標準的自回歸語言模型(注:PLM是一種廣義的自回歸方法[14]),而MLM不是一個標準的語言模型,其引入獨立性假設,隱式地學習預測token(mask部分本身的強相關性)之間的關系。如果衡量序列中被建模的依賴關系的數量,標準的自回歸語言模型可以達到上界,不依賴于任何獨立假設。LM和PLM能夠通過自回歸方式來顯式地學習預測token之間的關系。然而,LM無法對雙向上下文進行表征,借鑒 NADE[32]的思想,PLM將這種傳統的自回歸語言模型(LM)進行推廣,將順序拆解變為隨機拆解(從左至右分解),產生上下文相關的雙向特征表示。

PLM最為典型的代表就是XLNet[14],這是對標準語言模型的一個復興[33]:提出一個框架來連接標準語言模型建模方法和預訓練方法。

一個關鍵問題:為什么PLM可以實現雙向上下文的建模?PLM的本質就是語言模型聯合概率的多種分解機制的體現,其將LM的順序拆解推廣到隨機拆解。 PLM沒有改變原始文本序列的自然位置,只是定義了token預測的順序。PLM只是針對語言模型建模不同排列下的因式分解排列,并不是詞的位置信息的重新排列。

最后,我們對基于上述三類語言模型的PTMs進行總結:

在這里插入圖片描述

圖4: 基于上下文(Context Based)的3種語言模型PTMs總結

2、基于對比(Contrastive Based)

基于對比(Contrastive Based),不同于Context Based主要基于數據本身的上下文信息構造輔助任利用,Contrastive Based主要利用樣本間的約束信息構造輔助任務,這類方法也是 Contrastive learning[34](CTL)。CTL假設觀察到的文本對(正樣本)在語義上比隨機采樣的文本(負樣本)更相似。CTL 背后的原理是「在對比中學習」。相較于語言建模,CTL 的計算復雜度更低,因而在預訓練中是理想的替代訓練標準。

CTL通過構建正樣本(positive)和負樣本(negative),然后度量正負樣本的距離來實現自監督學習[17]:可以使用點積的方式構造距離函數,然后構造一個 softmax 分類器,以正確分類正樣本和負樣本。鼓勵相似性度量函數將較大的值分配給正例,將較小的值分配給負例:
LN=?Ex,y+,y?[log?exp?(s(x,y+))exp?(s(x,y+))+∑j=1N?1exp?(s(x,yj?))]\mathcal{L}_N=-\mathbb{E}_{x,y^+,y^-}[\log\frac{\exp(s(x,y^+))}{\exp(s(x,y^+))+\sum_{j=1}^{N-1}\exp(s(x,y_j^-))}] LN?=?Ex,y+,y??[logexp(s(x,y+))+j=1N?1?exp(s(x,yj??))exp(s(x,y+))?]

相似性度量函數通常可采取兩種方式: s(x,y)=fenc(x)Tfenc(x)s(x,y)=f_{enc}(x)^Tf_{enc}(x)s(x,y)=fenc?(x)Tfenc?(x)s(x,y)=fenc(x⊕y)s(x,y)=f_{enc}(x⊕y)s(x,y)=fenc?(xy)

第一類: Deep InfoMax (DIM)

DIM 方法來源于CV領域,對于全局的特征(編碼器最終的輸出)和局部特征(編碼器中間層的特征),DIM需要判斷全局特征和局部特征是否來自同一圖像[17]。

InfoWord [35]將DIM引入到NLP中,用Mutual Information的一個下界InfoNCE來重新解釋BERT和XLNET的objective,并提出一個新的DIM objective以最大化一個句子的global representation和其中一個ngram的local representation之間的Mutual Information。

第二類:Replaced Token Detection (RTD)

噪聲對比估計(Noise-Contrastive Estimation,NCE)[36]通過訓練一個二元分類器來區分真實樣本和假樣本,可以很好的訓練詞嵌入。RTD于與 NCE 相同,根據上下文語境來預測token是否替換 。

  • word2vec[3]中的negative sampling可看作是RTD,負樣本從詞表中進行帶權采樣。
  • ELECTRA[37]提出了一種新的預訓練任務框架,構建生成器-判別器,生成器通過MLM任務對被mask的token進行預測,迭代器判斷原始句子中的每個token是否被replace過。生成器相當于對輸入進行了篩選,使判別器的任務更難,從而學習到更好的表示。生成器-判別器共享embedding,生成器部分采用small-bert,判別器部分對每一個token采用sigmoid計算loss。finetune階段只采用判別器部分。RTD也被看作解決MLM中「MASK」在預訓練和finetune間差異的一種手段。
  • WKLM[38]在實體level進行替換,替換為具有相同實體類型的實體名稱。

第三類:Next Sentence Prediction (NSP)

NSP 區分兩個輸入句子是否為訓練語料庫中的連續片段,第二個句子50%為第一句子實際的連續片段,50%從其他語料隨機選擇。NSP可以引導模型理解兩個輸入句子之間的關系,從而使對此信息敏感的下游任務受益,如QA任務。而RoBERTa[23]表明:NSP在對單個文檔中的文本塊進行訓練時,去除NSP任務或在下游任務上可以稍微提高性能。

第四類:Sentence Order Prediction (SOP)

SOP 使用同一文檔中的兩個連續片段作為正樣本,而相同的兩個連續片段互換順序作為負樣本。NSP融合了主題預測和相關性預測,主題預測更容易,這使得模型進行預測時僅依賴于主題學習。與NSP不同,SOP使用同一文檔中的兩個連續段作為正樣本,但順序互換為負樣本。采取SOP任務的PTMs有ALBERT[39]、StructBERT[40]、BERTje[41]。

圖5對上述基于對比(Contrastive Based)的四類PTMs進行了總結:

在這里插入圖片描述

圖5: 基于對比(Contrastive Based)的PTMs總結

五、PTMs有哪些拓展?

1、引入知識

PTMs通常從通用大型文本語料庫中學習通用語言表示,但是缺少特定領域的知識。PTMs中設計一些輔助的預訓練任務,將外部知識庫中的領域知識整合到PTMs中被證明是有效的[1]。

  • ERNIE-THU[30]將在知識圖譜中預先訓練的實體嵌入與文本中相應的實體提及相結合,以增強文本表示。由于語言表征的預訓練過程和知識表征過程有很大的不同,會產生兩個獨立的向量空間。為解決上述問題,在有實體輸入的位置,將實體向量和文本表示通過非線性變換進行融合,以融合詞匯、句法和知識信息。
  • LIBERT[42](語言知識的BERT)通過附加的語言約束任務整合了語言知識。
  • SentiLR[43]集成了每個單詞的情感極性,以將MLM擴展到標簽感知MLM(LA-MLM),ABSA任務上都達到SOTA。
  • SenseBERT[44] 不僅能夠預測被mask的token,還能預測它們在給定語境下的實際含義。使用英語詞匯數據庫 WordNet 作為標注參照系統,預測單詞在語境中的實際含義,顯著提升詞匯消歧能力。
  • KnowBERT[45] 與實體鏈接模型以端到端的方式合并實體表示。
  • KG-BERT[46]顯示輸入三元組形式,采取兩種方式進行預測:構建三元組識別和關系分類,共同優化知識嵌入和語言建模目標。這些工作通過實體嵌入注入知識圖的結構信息。
  • K-BERT[47]將從KG提取的相關三元組顯式地注入句子中,以獲得BERT的擴展樹形輸入。
  • K-Adapter[48]通過針對不同的預訓練任務獨立地訓練不同的適配器來注入多種知識,從而可以不斷地注入知識,以解決注入多種知識時可能會出現災難性遺忘問題。
  • 此外,這類PTMs還有WKLM[38]、KEPLER[49]和[50]等。

2、模型壓縮

由于預訓練的語言模型通常包含至少數億個參數,因此很難將它們部署在現實應用程序中的在線服務和資源受限的設備上。模型壓縮是減小模型尺寸并提高計算效率的有效方法。

5種PTMs的壓縮方法為:

  • pruning(剪枝):將模型中影響較小的部分舍棄。

    如Compressing BERT[51],還有結構化剪枝 LayerDrop [52],其在訓練時進行Dropout,預測時再剪掉Layer,不像知識蒸餾需要提前固定student模型的尺寸大小。

  • quantization(量化):將高精度模型用低精度來表示;

    如Q-BERT[53]和Q8BERT[54],量化通常需要兼容的硬件。

  • parameter sharing (參數共享):相似模型單元間的參數共享;

    ALBERT[39]主要是通過矩陣分解和跨層參數共享來做到對參數量的減少。

  • module replacing(模塊替換)

    BERT-of-Theseus[55]根據伯努利分布進行采樣,決定使用原始的大模型模塊還是小模型,只使用task loss。

  • knowledge distillation (知識蒸餾):通過一些優化目標從大型、知識豐富、fixed的teacher模型學習一個小型的student模型。蒸餾機制主要分為3種類型:

    從軟標簽蒸餾:DistilBERT [56]、EnsembleBERT[5]

    • 從其他知識蒸餾:TinyBERT[58]、BERT-PKD、MobileBERT[59] 、 MiniLM[60] 、DualTrain[6]
    • 蒸餾到其他結構:Distilled-BiLSTM[6]

在這里插入圖片描述

圖6: 不同的知識蒸餾PTMs

3、多模態

隨著PTMs在NLP領域的成功,許多研究者開始關注多模態領域的PTMs,主要為通用的視覺和語言特征編碼表示而設計。多模態的PTMs在一些龐大的跨模式數據語料庫(帶有文字的語音、視頻、圖像)上進行了預訓練,如帶有文字的語音、視頻、圖像等,主要有 VideoBERT[63]、CBT[64] 、UniViLM[65]、 ViL-BERT[66] 、 LXMERT[67]、 VisualBERT [68]、 B2T2[69] 、Unicoder-VL[70] 、UNITER [71]、 VL-BERT[72] 、 SpeechBERT[73]。

4、領域預訓練

大多數PTM都在諸如Wikipedia的通用語料中訓練,而在領域化的特定場景會收到限制。如基于生物醫學文本的BioBERT[74],基于科學文本的SciBERT[75],基于臨床文本的Clinical-BERT[76]。一些工作還嘗試將PTMs適應目標領域的應用,如醫療實體標準化[77]、專利分類PatentBERT [78]、情感分析SentiLR[79]關鍵詞提取[80]。

5、多語言和特定語言

學習跨語言共享的多語言文本表示形式對于許多跨語言的NLP任務起著重要的作用。

  • Multilingual-BERT[81]在104種 Wikipedia文本上進行MLM訓練(共享詞表),每個訓練樣本都是單語言文檔,沒有專門設計的跨語言目標,也沒有任何跨語言數據,M-BERT也可以很好的執行跨語言任務。
  • XLM[25]通過融合跨語言任務(翻譯語言模型)改進了M-BERT,該任務通過拼接平行語料句子對進行MLM訓練。
  • Unicoder[82]提出了3種跨語言預訓練任務:1)cross-lingual word recovery;2) cross-lingual paraphrase classification;3) cross-lingual masked language model.

雖然多語言的PTMs在跨語言上任務表現良好,但用單一語言訓練的PTMs明顯好于多語言的PTMs。此外一些單語言的PTMs被提出:BERT-wwm[83], ZEN[84], NEZHA[85] , ERNIE-Baidu[27][28], BERTje[86], CamemBERT[87], FlauBERT [88], RobBERT [89]。

六: 如何對PTMs進行遷移學習?

PTMs從大型語料庫中獲取通用語言知識,如何有效地將其知識適應下游任務是一個關鍵問題。遷移學習的方式主要有歸納遷移(順序遷移學習、多任務學習)、領域自適應(轉導遷移)、跨語言學習等。NLP中PTMs的遷移方式是順序遷移學習。

1、如何遷移?

1)選擇合適的預訓練任務:語言模型是PTM是最為流行的預訓練任務;同的預訓練任務有其自身的偏置,并且對不同的任務會產生不同的效果。例如,NSP任務可以使諸如問答(QA)和自然語言推論(NLI)之類的下游任務受益。

2)選擇合適的模型架構:例如BERT采用的MLM策略和Transformer-Encoder結構,導致其不適合直接處理生成任務。

3)選擇合適的數據:下游任務的數據應該近似于PTMs的預訓練任務,現在已有有很多現成的PTMs可以方便地用于各種特定領域或特定語言的下游任務。

4)選擇合適的layers進行transfer:主要包括Embedding遷移、top layer遷移和all layer遷移。如word2vec和Glove可采用Embedding遷移,BERT可采用top layer遷移,Elmo可采用all layer遷移。

5)特征集成還是fine-tune?對于特征集成預訓練參數是freeze的,而fine-tune是unfreeze的。特征集成方式卻需要特定任務的體系結構,fine-tune方法通常比特征提取方法更為通用和方便。

2、fine-tune策略: 通過更好的微調策略進一步激發PTMs性能

  • 兩階段fine-tune策略:如第一階段對中間任務或語料進行finetune,第二階段再對目標任務fine-tune。第一階段通常可根據特定任務的數據繼續進行fine-tune預訓練。
  • 多任務fine-tune:MTDNN[90]在多任務學習框架下對BERT進行了fine-tune,這表明多任務學習和預訓練是互補的技術。
  • 采取額外的適配器:fine-tune的主要缺點是其參數效率低,每個下游任務都有自己的fine-tune參數。因此,更好的解決方案是在固定原始參數的同時,將一些可fine-tune的適配器注入PTMs。
  • 逐層階段:逐漸凍結而不是同時對所有層進行fine-tune,也是一種有效的fine-tune策略。

七、PTMs還有哪些問題需要解決?

(本部分來自[91],有刪減和修正)

雖然 PTMs已經在很多 NLP 任務中顯示出了他們強大的能力,然而由于語言的復雜性,仍存在諸多挑戰。綜述論文給出了五個未來 PTMs發展方向的建議。

1、PTMs的上限

目前,PTMs并沒有達到其上限。大多數的PTMs可通過使用更長訓練步長和更大數據集來提升其性能。目前NLP中的SOTA也可通過加深模型層數來更進一步提升。這將導致更加高昂的訓練成本。因此,一個更加務實的方向是在現有的軟硬件基礎上,設計出更高效的模型結構、自監督預訓練任務、優化器和訓練技巧等。例如, ELECTRA [37]就是此方向上很好的一個解決方案。

2、面向任務的預訓練和模型壓縮

在實踐中,不同的目標任務需要 PTMs擁有不同功能。而 PTMs與下游目標任務間的差異通常在于兩方面:模型架構與數據分布。盡管較大的PTMs通常情況下會帶來更好的性能表現,但在低計算資源下如何使用是一個實際問題。例如,對于 NLP 的 PTM 來說,對于模型壓縮的研究只是個開始,Transformer 的全連接架構也使得模型壓縮具有挑戰性。

3、PTMs的架構設計

對于PTMs,Transformer 已經被證實是一個高效的架構。然而 Transformer 最大的局限在于其計算復雜度(輸入序列長度的平方倍)。受限于 GPU 顯存大小,目前大多數 PTM 無法處理超過 512 個 token 的序列長度。打破這一限制需要改進 Transformer 的結構設計,例如 Transformer-XL[92]。

4、finetune中的知識遷移

finetune是目前將 PTM 的知識轉移至下游任務的主要方法,但效率卻很低,每個下游任務都需要有特定的finetune參數。一個可以改進的解決方案是固定PTMs的原始參數,并為特定任務添加小型的finetune適配器,這樣就可以使用共享的PTMs 服務于多個下游任務。

5、PTMs 的解釋性與可靠性

PTMs 的可解釋性與可靠性仍然需要從各個方面去探索,它能夠幫助我們理解 PTM 的工作機制,為更好的使用及性能改進提供指引。

寫在最后:本文總結 與 原綜述論文[1]的一些不同之處:

  1. 本文定義了PTMs兩大范式:淺層詞嵌入和預訓練編碼器。不同于原文,XLNet在原綜述論文中被歸為Transformer-Encoder,本文認為將其歸為Transformer-XL更合適。

  2. 本文PTMs按照自監督學習的分類不同于原文。本文按照 基于上下文(Context Based)和基于對比(Contrastive Based)兩種方式歸類;將原文的LM、MLM、DAE、PLM歸為Context Based;

  3. 本文將原文MLM和DAE統一為DAE;

  4. 其他:

    1)在3.1.2的E-MLM段落中,可以將StructBERT拿出來,只放在SOP;

    2)3.1.5對ELECTRA的描述,應采取ELECTRA原文中的主要方法(參數共享),兩階段的方法只是一種實驗嘗試;

    3)在puring部分可以補充LayerDrop;

    4)應將UniLM歸為MLM;

(仁者見仁,智者見智啦~,大家也可以在評論區討論,糾正我可能存在的錯誤吧~)

參考文獻

  1. Pre-trained Models for Natural Language Processing: A Survey
  2. A neural probabilistic language model.
  3. Distributed representations of words and phrases and their compositionality.
  4. GloVe: Global vectors for word representation
  5. Character-aware neural language models.
  6. Enriching word vectors with subword information.
  7. Neural machine translation of rare words with subword units.
  8. Skip-thought vectors
  9. Context2Vec: Learning generic context embedding with bidirec- tional LSTM.
  10. https://zhuanlan.zhihu.com/p/110805093
  11. Deep contextualized word representations.
  12. Improving language understanding by generative pre-training.
  13. BERT: pre-training of deep bidirectional trans- formers for language understanding
  14. XLnet: Generalized Autoregressive Pretraining for Language Understanding
  15. Learned in translation: Contextualized word vectors.
  16. Self-supervised Visual Feature Learning with Deep Neural Networks: A Survey
  17. Self-supervised Learning 再次入門
  18. Language models are unsuper- vised multitask learners
  19. ULMFiT:Universal Language Model Fine-tuning)
  20. SiATL:An Embarrassingly Simple Approach for Transfer Learning from Pretrained Language Models
  21. MASS: masked sequence to sequence pre-training for language generation.
  22. Exploring the limits of transfer learning with a uni- fied text-to-text transformer
  23. RoBERTa: A ro- bustly optimized BERT pretraining approach
  24. Unified language model pre-training for natural language un- derstanding and generation.
  25. Cross-lingual lan- guage model pretraining.
  26. SpanBERT: Improving pre- training by representing and predicting spans.
  27. ERNIE: enhanced representation through knowledge integration
  28. ERNIE 2.0: A continual pre-training framework for language understanding
  29. BERT is not a knowledge base (yet): Factual knowledge vs. name-based reasoning in unsupervised QA
  30. ERNIE: enhanced language representation with informative entities
  31. BART: denoising sequence-to- sequence pre-training for natural language generation, transla- tion, and comprehension.
  32. Neural autoregressive distribution estimation
  33. 他們創造了橫掃NLP的XLNet:專訪CMU博士楊植麟
  34. A theoretical analysis of contrastive unsupervised representation learning.
  35. A mutual information maximization perspective of language representation learning
  36. Noise-contrastive estimation: A new estimation principle for unnormalized sta- tistical models.
  37. ELECTRA: Pre-training text encoders as discriminators rather than generators
  38. Pretrained encyclopedia: Weakly supervised knowledge-pretrained language model
  39. ALBERT: A lite BERT for self-supervised learning of language representations.
  40. StructBERT: Incorporating language struc- tures into pre-training for deep language understanding
  41. BERTje: A dutch BERT model
  42. Informing unsupervised pre- training with external linguistic knowledge
  43. Sentilr: Linguistic knowledge enhanced lan- guage representation for sentiment analysis
  44. SenseBERT: Driving some sense into BERT
  45. Knowledge enhanced contextual word representations
  46. KG-BERT: BERT for Knowledge Graph Completion
  47. K-BERT: Enabling lan- guage representation with knowledge graph
  48. K-adapter: Infusing knowledge into pre-trained models with adapters
  49. KEPLER: A unified model for knowledge embedding and pre-trained language representation
  50. Enhancing pre-trained language representations with rich knowledge for machine reading comprehension.
  51. Compressing BERT: Studying the effects of weight pruning on transfer learning
  52. REDUCING TRANSFORMER DEPTH ON DEMAND WITH STRUCTURED DROPOUT
  53. Q-BERT: Hessian based ultra low precision quantization of BERT.
  54. Q8BERT: Quantized 8bit BERT.
  55. BERT-of-Theseus: Compressing BERT by pro- gressive module replacing
  56. DistilBERT, a distilled version of BERT: smaller, faster, cheaper and lighter.
  57. MT-DNN:Improving Multi-Task Deep Neural Networks via Knowledge Distillation for Natural Language Understanding
  58. TinyBERT: Distilling BERT for natural language understanding
  59. MobileBERT: Task-agnostic com- pression of BERT by progressive knowledge transfer
  60. MiniLM: Deep self-attention distillation for task-agnostic compression of pre-trained transformers.
  61. Extreme language model compression with optimal subwords and shared projections
  62. Distilling task-specific knowledge from BERT into simple neural networks
  63. VideoBERT: A joint model for video and language representation learning
  64. Contrastive bidirectional transformer for temporal representation learning
  65. Univilm: A unified video and language pre-training model for multimodal under- standing and generation.
  66. ViL- BERT: Pretraining task-agnostic visiolinguistic representa- tions for vision-and-language tasks.
  67. LXMERT: learning cross- modality encoder representations from transformers.
  68. VisualBERT: A simple and performant base- line for vision and language.
  69. Fusion of detected objects in text for visual question answering.
  70. Unicoder-vl: A universal encoder for vision and language by cross-modal pre-training
  71. UNITER: learning universal image-text representations.
  72. VL-BERT: pre-training of generic visual- linguistic representations
  73. SpeechBERT: Cross-modal pre-trained language model for end-to-end spoken question answering.
  74. BioBERT: a pre-trained biomedical language representation model for biomedical text mining.
  75. SciBERT: A pre- trained language model for scientific text
  76. Clin- icalBERT: Modeling clinical notes and predicting hospital readmission.
  77. BERT-based rank- ing for biomedical entity normalization.
  78. PatentBERT: Patent clas- sification with fine-tuning a pre-trained BERT model.
  79. SentiLR: Linguistic knowledge enhanced lan- guage representation for sentiment analysis.
  80. Progress notes clas- sification and keyword extraction using attention-based deep learning models with BERT.
  81. https://github.com/google-research/bert/blob/master/multilingual.md
  82. Unicoder: A universal language encoder by pre-training with multiple cross-lingual tasks.
  83. Pre-training with whole word masking for chinese BERT
  84. ZEN: pre-training chinese text encoder enhanced by n-gram representations.
  85. NEZHA: Neural contextualized representa- tion for chinese language understanding
  86. BERTje: A dutch BERT model.
  87. CamemBERT: a tasty french language model
  88. FlauBERT: Unsupervised language model pre-training for french
  89. Rob-BERT: a dutch RoBERTa-based language model.
  90. Multi-task deep neural networks for natural language understanding.
  91. https://zhuanlan.zhihu.com/p/114785639
  92. Transformer-XL: Atten- tive language models beyond a fixed-length context.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/532416.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/532416.shtml
英文地址,請注明出處:http://en.pswp.cn/news/532416.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python中提取幾列_Python一鍵提取PDF中的表格到Excel(實例50)

從PDF文件獲取表格中的數據,也是日常辦公容易涉及到的一項工作。一個一個復制吧,效率確實太低了。用Python從PDF文檔中提取表格數據,并寫入Excel文件,灰常灰常高效。上市公司的年報往往包含幾百張表格,用它作為例子再合…

EM算法公式推導

EM算法公式推導 EM 算法是一種用來進行含有隱變量的概率生成模型參數估計的迭代算法。 EM算法步驟 EM 算法通過迭代求 L(θ)log?P(X∣θ)L(\theta)\log P(X|\theta)L(θ)logP(X∣θ) 的極大似然估計,每次迭代包含兩部:E步,求期望&#xf…

詳解最大似然估計(MLE)、最大后驗概率估計(MAP),以及貝葉斯公式的理解

詳解最大似然估計(MLE)、最大后驗概率估計(MAP),以及貝葉斯公式的理解 聲明:本文為原創文章,發表于nebulaf91的csdn博客。歡迎轉載,但請務必保留本信息,注明文章出處。 本…

elemntui icon 大小_自定義elementui中的圖標

前提elementui圖標庫圖標較少當你想用elementui的控件而不想用它的圖標時,就可以使用自定義的方式來實現實現el-icon-my-export為我自定義的圖標命名導出//使用圖片來替換//before屬性中的content文本是用來占位的,必須有//可以設置字體大小來確定大小//使用visibil…

變分推斷公式推導

變分推斷公式推導 背景介紹 機器學習中的概率模型可分為頻率派和貝葉斯派。頻率派最終是求一個優化問題,而貝葉斯派則是求一個積分問題。 頻率派 舉幾個例子: 線性回歸 樣本數據:{(xi,yi)}i1N\{(x_i,y_i)\}_{i1}^N{(xi?,yi?)}i1N? 模…

重新打開_iPhone 應用停止響應或無法打開的解決辦法

如果當您在 iPhone 上使用某個重要應用時,遇到應用停止響應、意外退出或無法打開的問題,請參考如下步驟嘗試解決:1.強制退出應用:在 iPhone 后臺強制關閉該應用之后,再次重新打開看看。2.重啟您的設備,然后…

機器學習理論——優雅的模型:變分自編碼器(VAE)

機器學習理論——優雅的模型:變分自編碼器(VAE) 轉自:機器學習理論—優雅的模型(一):變分自編碼器(VAE) 另外直觀理解 VAE, 推薦 臺大李宏毅老師的課程&#…

grub引導項修復詳解_重新安裝win7后,修復Grub啟動項

重新安裝win7后,修復Grub啟動項發布時間:2010-09-14 22:14:00來源:紅聯作者:null925[is] 本帖最后由 null925 于 2010-9-14 22:18 編輯 [/i]原先使用Win7,Gentoo,Ubuntu三系統,Grub作為系統引導管理器,今天重新安裝Win…

基于流的(Flow-based)生成模型簡介

基于流的(Flow-based)生成模型簡介 生成任務 我們先回顧一下所謂的生成任務,究竟是做什么事情。我們認為,世界上所有的圖片,是符合某種分布 pdata(x)p_{data}(x)pdata?(x) 的。當然,這個分布肯定是個極其復雜的分布。而我們有一…

iec60870-5-104通訊協議編程_三菱FX編程口通訊協議1——協議解讀

三菱PLC編程口通訊協議:1、三菱PLC編程口通訊協議有四個命令,如下:2、三菱FX系列PLC地址對應表:PLC_X Group Base AddRess128;Const PLC_Y_Group Base AddRess160;M _Group Base_AddRess 256;P…

采用ODP.NET 批量進行數據同步

因開發、測試場景經常需要模擬機生產環境的數據,原同事開發了一個ado.net圖形化同步工具,對非技術人員操作友好,但對技術員使用并不方便,每次同步需源庫數據與目標的數據源字段進行配置,且同步大數據時慢,因…

熔斷器熔斷時間標準_一種熔斷器熔斷時間測試電路的制作方法

本實用新型涉及汽車制造技術領域,尤其涉及一種熔斷器熔斷時間測試電路。背景技術:伴隨著日新月異的科技進步,人們對生活質量的追求也越來越高,汽車已經成為人們日常出行必不可少的交通工具,人們對汽車的舒適性、安全性…

DETR精讀筆記

DETR精讀筆記 論文:End-to-End Object Detection with Transformers (發表于 ECCV-2020) 代碼:https://github.com/facebookresearch/detr 解讀視頻:DETR 論文精讀【論文精讀】 本筆記主要基于 Yi Zhu 老師的解讀 引言…

lcd像素點密度_【教程】設置添加LCD密度(DPI)設置

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓完美—————————————————分割————————————————————————反編譯settings.apk(1.52)1.Settings.apk\res\values\arrays.xml在之前加入以下代碼240242244246248250252254256258260262264266268…

GAN網絡評估指標:IS、FID、PPL

GAN網絡評估指標:IS、FID、PPL 轉自:IS、FID、PPL,GAN網絡評估指標 另外關于GAN的評價指標,推薦李宏毅老師的視頻:【機器學習2021】生成式對抗網路 (Generative Adversarial Network, GAN) (三) – 生成器效能評估與條…

降維后輸入分類器分類時報錯_邏輯回歸解決多分類方法及其優缺點分析

眾所周知,邏輯回歸常用于解決二分類任務,但是在工作/學習/項目中,我們也經常要解決多分類問題。本文總結了 3 種邏輯回歸解決多分類的方法,并分析了他們的優缺點。一、One-Vs-Rest假設我們要解決一個分類問題,該分類問…

淺談 PyTorch 中的 tensor 及使用

淺談 PyTorch 中的 tensor 及使用 轉自:淺談 PyTorch 中的 tensor 及使用 這篇文章主要是圍繞 PyTorch 中的 tensor 展開的,討論了張量的求導機制,在不同設備之間的轉換,神經網絡中權重的更新等內容。面向的讀者是使用過 PyTorch …

簡述springmvc過程_spring mvc的工作流程是什么?

展開全部SpringMVC工作流程描述向服務器發送HTTP請求,請求被前端控制器 DispatcherServlet 捕獲。DispatcherServlet 根據 -servlet.xml 中的配置對請62616964757a686964616fe59b9ee7ad9431333365646233求的URL進行解析,得到請求資源標識符(URI)。 然后根…

PyTorch 的 Autograd

PyTorch 的 Autograd 轉自:PyTorch 的 Autograd PyTorch 作為一個深度學習平臺,在深度學習任務中比 NumPy 這個科學計算庫強在哪里呢?我覺得一是 PyTorch 提供了自動求導機制,二是對 GPU 的支持。由此可見,自動求導 (a…

商場樓層導視牌圖片_百寶圖商場電子導視軟件中預約產品功能簡介

百寶圖商場電子導視軟件中預約產品功能簡介 管理端,可配合百寶圖商場電子導視軟件配套使用 1:數據展示:圖形展示總預約數/預約時間峰值/預約途徑/各途徑數量對比 2:數據統計:有效預約數量/無效預約數量/無效預約原因備…