Findings | 中文預訓練語言模型回顧

哈工大SCIR發表於2020-11-18
論文名稱:Revisiting Pre-trained Models for Chinese Natural Language Processing
論文作者:崔一鳴,車萬翔,劉挺,秦兵,王士進,胡國平
原創作者:崔一鳴
論文連結:https://www.aclweb.org/anthology/2020.findings-emnlp.58
轉載須標註出處:哈工大SCIR

1. 簡介

以BERT為代表的預訓練語言模型在眾多自然語言處理任務中取得了顯著效能提升,並且隨後湧現出一批效果更優的預訓練語言模型。在本文中,我們將經典的預訓練語言模型應用在中文場景並使用相同的實驗設定去驗證它們在中文領域的效能表現。同時,我們創新地提出了一種基於文字糾錯的預訓練語言模型MacBERT,應用糾錯型掩碼語言模型(MLM as correction,Mac)解決了預訓練模型中“預訓練-精調”不一致的問題。為了驗證實驗效果,我們選擇了8個經典的中文自然語言處理任務,包括閱讀理解、單句文字分類、句對文字分類等。大量實驗結果表明所提出的MacBERT能夠在大多數任務上取得顯著效能提升。我們已將所有本文涉及到的中文預訓練資源進行開源,希望能夠進一步促進中文資訊處理的研究與發展。

2. 構建中文預訓練系列模型

首先,我們提出了一整套的中文預訓練系列模型,以構建較為完整的基線系統併為後續工作提供相對標準的參照資料。我們主要訓練了以下幾種預訓練語言模型:

  • BERT-wwm:我們在谷歌原版中文BERT-base[1]的基礎上,將全詞掩碼技術(Whole Word Masking,wwm)應用在中文環境,即在掩碼語言模型(Masked Language Model,MLM)中使用詞粒度進行掩碼。我們使用了LTP[2]作為中文分詞工具。需要注意的是,雖然掩碼粒度為詞,但模型的輸入仍然以字為粒度(使用WordPiece分詞)進行切分,即與原版BERT並無差別。

  • XLNet:Yang等人提出基於Transfromer-XL構建了XLNet模型[3],解決了BERT的“預訓練-精調”不一致的問題,提出了Permutation Language Model。與BERT不同的是,XLNet採用了sentencepiece進行分詞,因此分詞粒度更大。

  • RoBERTa-wwm:RoBERTa模型[4]由Liu等人提出,進一步挖掘了BERT的潛力。我們訓練的RoBERTa-wwm與BERT-wwm類似,但從中刪除了Next Sentence Prediction(NSP)預訓練任務,並使用了全詞掩碼技術。需要注意的是,與英文RoBERTa不同,這裡我們同樣使用了WordPiece分詞。透過後續實驗發現WordPiece相比sentencepiece在中文預訓練模型中更有效。

  • ELECTRA:Clark等人提出一套全新的生成器-判別器架構的預訓練模型ELECTRA[5],其中生成器是一個小型的MLM,用於替換輸入文字。而判別器則是判斷輸入文字是否經過替換。由於判別器只需進行二分類,相比傳統MLM來說效率更高。在下游任務精調中,我們只使用判別器。

3. MacBERT

為了解決預訓練模型中的“預訓練-精調”不一致的問題,我們巧妙地修改了掩碼語言模型,並提出基於文字糾錯的掩碼語言模型(MLM as correction,Mac)。該方法不需要對現有結構進行任何改動,只需針對掩碼方式進行改變,因此極大程度地保留了BERT的原始特性,並可以無縫遷移到任何使用BERT的下游任務精調程式碼中。
具體地,針對掩碼語言模型任務,我們進行了如下修改:
  • 我們使用全詞掩碼技術以及N-gram掩碼技術來選擇待掩碼的token,其中unigram至4-gram的機率分別為40%、30%、20%、10%。
  • 為了解決[MASK]標記在下游任務中不會出現的問題,我們提出使用相似詞來替換[MASK]標記。我們使用Synonyms庫[6]來獲取待掩碼單詞的相似詞。在N-gram掩碼時,我們針對N-gram中的每個詞均進行相似詞替換。在少數情況下,當相似詞不存在時,我們將使用詞表中的隨機詞進行替換。
  • 與原版BERT類似,我們對輸入序列總長度15%的token進行掩碼,其中80%的情況下會替換為相似詞,10%的情況下會替換為隨機詞,剩餘10%則不進行任何替換(負樣本)。
下表給出了幾種不同的掩碼方式的對比示例。

表1 不同掩碼方式的對比

Findings | 中文預訓練語言模型回顧

除此之外,由於ALBERT模型[7]在眾多自然語言處理任務上獲得顯著效能提升,我們採用了其中的Sentence Order Prediction(SOP)預訓練任務來替換BERT中的Next Sentence Prediction(NSP)任務。在SOP任務中,正樣本由相鄰的兩個片段構成,而負樣本則是將兩個片段的順序進行倒置。

4. 實驗

4.1. 預訓練模型設定

接下來簡要介紹預訓練模型的訓練設定,詳細內容請參考論文的4.1節。

  • 預訓練資料:我們採用了中文維基百科資料(同時保留簡體和繁體中文)以及額外爬取的中文資料(包括百科、問答、新聞等),總詞數達到了5.4B。在模型中我們以ext標記採用擴充套件資料的BERT或RoBERTa模型。

  • 基本引數:我們對所有模型(除XLNet)採用了統一預訓練詞表,與原版中文BERT-base相同,包含21128個token。序列最大長度設定為512。

  • 訓練裝置:根據模型規模大小,我們採用了單個TPU v3或者TPU v3-32進行訓練。

4.2. 下游精調資料集

我們選用了以下8箇中文自然語言處理資料集:

  • 閱讀理解:CMRC 2018[8],DRCD[9],CJRC[10] 

  • 單句文字分類:ChnSentiCorp[11],THUCNews[12] 

  • 句對文字分類:XNLI[13],LCQMC[14],BQ Corpus[15]

為了保證結果的穩定性,對於每一組實驗結果,我們均執行10次,並彙報其平均值和最大值。相關實驗超參設定請參考論文的表2。

4.3. 實驗結果

本文涉及的預訓練模型的部分實驗結果如下表所示(詳細結果請參考論文4.3節)。可以看到MacBERT在多數任務上取得了顯著效能提升,尤其在機器閱讀理解的各項任務中的提升更為明顯。

表2 CMRC 2018中文閱讀理解結果

Findings | 中文預訓練語言模型回顧

表3 XNLI、LCQMC、BQ Corpus句對分類任務結果

Findings | 中文預訓練語言模型回顧

4.4. 消融實驗

為了進一步瞭解效能提升的來源,我們對MacBERT-large進行了消融實驗。可以看到,整個模型中最重要的部分是糾錯型掩碼語言模型(Mac)和N-gram掩碼語言模型(NM),而相對來說模型使用NSP還是SOP預訓練任務並沒有對模型效能造成很大影響,因此後續工作應進一步將重點放在掩碼語言模型及其變種模型的設計上。

表4 MacBERT模型上的消融實驗結果

Findings | 中文預訓練語言模型回顧

5. 討論

前面提到MLM任務是這類預訓練語言模型最重要的組成部分。MLM類任務包括兩個方面:1)如何選擇需要掩碼的token;2)待掩碼的token替換成什麼。

在前面的章節中,我們已經展示了不同的選擇掩碼token的方法,例如全詞掩碼、N-gram掩碼等。現在我們將探索第二個方面,即探索“待掩碼的token替換成什麼”。我們在CMRC 2018和DRCD資料集上進行了驗證。在15%的整體掩碼比例下,其中的10%將保持不變(負樣例),而剩餘的90%將採取如下4類方案進行對比。

  • MacBERT:80%的詞替換成相似詞,10%替換為隨機詞;

  • 隨機替換:90%的詞替換為隨機詞;

  • 部分MASK:(BERT原始MLM)80%替換為[MASK],10%替換為隨機詞;

  • 全部MASK:90%的詞替換為[MASK]。

實驗結果如下圖所示。可以看到依賴於替換成[MASK]的實驗設定(例如部分MASK和全部MASK)下效果相對較差,說明“預訓練-精調”不一致的確會為下游任務帶來一定的效能下降。而簡單地將所有待掩碼的詞替換為隨機詞後,其效能顯著優於依賴[MASK]的MLM方法。最後,我們使用相似詞進行進一步最佳化後,其效能還會得到顯著提升,說明MacBERT設計是有效的。

Findings | 中文預訓練語言模型回顧

圖1 不同掩碼設定下的CMRC 2018效果

Findings | 中文預訓練語言模型回顧

圖2 不同掩碼設定下的DRCD效果


6. 結論

在本文中,我們回顧了經典預訓練語言模型在中文場景下的效能表現,以驗證這些模型在非英文語種上的通用性。同時我們提出了一種基於文字糾錯的預訓練語言模型MacBERT,解決了預訓練模型中的“預訓練-精調”不一致的問題。大量實驗結果表明所提出的MacBERT能夠在多數任務上帶來顯著效能提升。我們已將所有與本文相關的中文預訓練語言模型開源,並希望能夠進一步促進中文資訊處理的研究與發展。基於我們在文章最後的分析討論,未來我們將探索一種有效調整掩碼比例的方法以取代手工設定的方案,從而進一步提升預訓練語言模型的效能表現。

7. 參考文獻

[1] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In NAACL 2019. 

[2] Wanxiang Che, Zhenghua Li, and Ting Liu. LTP: A chinese language technology platform. In COLING 2010. 

[3] Zhilin Yang, Zihang Dai, Yiming Yang, Jaime Carbonell, Ruslan Salakhutdinov, and Quoc V Le. Xlnet: Generalized autoregressive pretraining for language understanding. arXiv preprint arXiv:1906.08237. 

[4] Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. Roberta: A robustly optimized bert pretraining approach. arXiv preprint arXiv:1907.11692. 

[5] Kevin Clark, Minh-Thang Luong, Quoc V. Le, and Christopher D. Manning. ELECTRA: Pretraining text encoders as discriminators rather than generators. In ICLR. 

[6] Zhenzhong Lan, Mingda Chen, Sebastian Goodman, Kevin Gimpel, Piyush Sharma, and Radu Soricut. Albert: A lite bert for self-supervised learning of language representations. arXiv preprint arXiv:1909.11942. 

[7] Hailiang Wang and Yingxi Hu. 2017. Synonyms. https://github.com/huyingxi/Synonyms [8] Yiming Cui, Ting Liu, Wanxiang Che, Li Xiao, Zhipeng Chen, Wentao Ma, Shijin Wang, and Guoping Hu. A Span-Extraction Dataset for Chinese Machine Reading Comprehension. In EMNLP 2019. 

[8] Chih Chieh Shao, Trois Liu, Yuting Lai, Yiying Tseng, and Sam Tsai. Drcd: a chinese machine reading comprehension dataset. arXiv preprint arXiv:1806.00920. 

[9] Xingyi Duan, Baoxin Wang, Ziyue Wang, Wentao Ma, Yiming Cui, Dayong Wu, Shijin Wang, Ting Liu, Tianxiang Huo, Zhen Hu. Cjrc: A reliable human-annotated benchmark dataset for chinese judicial reading comprehension. In CCL 2019. 

[10] Songbo Tan and Jin Zhang. 2008. An empirical study of sentiment analysis for chinese documents. Expert Systems with applications, 34(4):2622–2629. 

[11] Jingyang Li and Maosong Sun. Scalable term selection for text categorization. In EMNLP 2007. 

[12] Alexis Conneau, Ruty Rinott, Guillaume Lample, Adina Williams, Samuel R. Bowman, Holger Schwenk, and Veselin Stoyanov. Xnli: Evaluating crosslingual sentence representations. In EMNLP 2018. 

[13] Xin Liu, Qingcai Chen, Chong Deng, Huajun Zeng, Jing Chen, Dongfang Li, and Buzhou Tang. Lcqmc: A large-scale chinese question matching corpus. In COLING 2018. 

[14] Jing Chen, Qingcai Chen, Xin Liu, Haijun Yang, Daohe Lu, and Buzhou Tang. The BQ corpus: A large-scale domain-specific Chinese corpus for sentence semantic equivalence identification. In EMNLP 2018.

相關文章