一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

NLP領(lǐng)域預(yù)訓(xùn)練模型的現(xiàn)狀及分析

 hlhq1 2019-12-21

王澤洋 東北大學(xué)自然語言處理實(shí)驗(yàn)室研究生,研究方向?yàn)闄C(jī)器翻譯。

小牛翻譯,核心成員來自東北大學(xué)自然語言處理實(shí)驗(yàn)室,由姚天順教授創(chuàng)建于1980年,現(xiàn)由朱靖波教授、肖桐博士領(lǐng)導(dǎo),長期從事計(jì)算語言學(xué)的相關(guān)研究工作,主要包括機(jī)器翻譯、語言分析、文本挖掘等。團(tuán)隊(duì)研發(fā)的支持140種語言互譯的小牛翻譯系統(tǒng)已經(jīng)得到廣泛應(yīng)用,并研發(fā)了小牛翻譯云(https://)讓機(jī)器翻譯技術(shù)賦能全球企業(yè)。

預(yù)訓(xùn)練的方法最初是在圖像領(lǐng)域提出的,達(dá)到了良好的效果,后來被應(yīng)用到自然語言處理。預(yù)訓(xùn)練一般分為兩步,首先用某個(gè)較大的數(shù)據(jù)集訓(xùn)練好模型(這種模型往往比較大,訓(xùn)練需要大量的內(nèi)存資源),使模型訓(xùn)練到一個(gè)良好的狀態(tài),然后下一步根據(jù)不同的任務(wù),改造預(yù)訓(xùn)練模型,用這個(gè)任務(wù)的數(shù)據(jù)集在預(yù)訓(xùn)練模型上進(jìn)行微調(diào)。

這種做法的好處是訓(xùn)練代價(jià)很小,預(yù)訓(xùn)練的模型參數(shù)可以讓新的模型達(dá)到更快的收斂速度,并且能夠有效地提高模型性能,尤其是對一些訓(xùn)練數(shù)據(jù)比較稀缺的任務(wù),在神經(jīng)網(wǎng)絡(luò)參數(shù)十分龐大的情況下,僅僅依靠任務(wù)自身的訓(xùn)練數(shù)據(jù)可能無法訓(xùn)練充分,預(yù)訓(xùn)練方法可以認(rèn)為是讓模型基于一個(gè)更好的初始狀態(tài)進(jìn)行學(xué)習(xí),從而能夠達(dá)到更好的性能。

一、預(yù)訓(xùn)練方法發(fā)展基于詞嵌入的預(yù)訓(xùn)練方法

2003年,Bengio等人提出了神經(jīng)語言模型(Neural Network Language Model)[1]神經(jīng)語言模型在訓(xùn)練過程中,不僅學(xué)習(xí)到預(yù)測下一個(gè)詞的概率分布,同時(shí)也得到了一個(gè)副產(chǎn)品:詞嵌入表示。相比隨機(jī)初始化的詞嵌入,模型訓(xùn)練完成后的詞嵌入已經(jīng)包含了詞匯之間的信息。2013年,Mikolov等人提出了word2vec工具,其中包含了CBOW(Continue Bag of Words)模型和Skip-gram模型[2-3],該工具僅僅利用海量的單語數(shù)據(jù),通過無監(jiān)督的方法訓(xùn)練得到詞嵌入。

基于語言模型的預(yù)訓(xùn)練方法

詞嵌入本身具有局限性,最主要的缺點(diǎn)是無法解決一詞多義問題,不同的詞在不同的上下文中會有不同的意思,而詞嵌入對模型中的每個(gè)詞都分配了一個(gè)固定的表示。針對上述問題,Peters等人提出了ELMo(Embedding from Language Model)[4],即使用語言模型來獲取深層的上下文表示。ELMo的具體做法是,基于每個(gè)詞所在的上下文,利用雙向LSTM的語言模型來獲取這個(gè)詞的表示。ELMo的方法能夠提取豐富的特征給下游任務(wù)使用,但是ELMo僅僅進(jìn)行特征提取而沒有預(yù)訓(xùn)練整個(gè)網(wǎng)絡(luò),遠(yuǎn)遠(yuǎn)沒有發(fā)揮預(yù)訓(xùn)練的潛力,另外一個(gè)不足之處是,自注意力機(jī)制的Transformer模型結(jié)構(gòu),相比LSTM能夠更有效地捕獲長距離依賴,對句子中信息進(jìn)行更充分的建模。

針對上述兩個(gè)問題,Radford等人提出了 GPT Generative Pre-Training)[5],即生成式的預(yù)訓(xùn)練。GPT將LSTM換成了Transformer,獲得了更高的成績,但是由于使用的是單向模型,只能通過前面詞預(yù)測后面的詞,可能會遺漏信息。Devlin等人提出了BERT(Bidirectional Encoder Representations from Transformers)[6],即基于Transformer的雙向編碼器表示。BERT和GPT的結(jié)構(gòu)和方法十分相似,最主要的不同之處在于GPT模型使用的是單向語言模型,可以認(rèn)為是基于Transformer的解碼器表示,而BERT使用的基于Transformer的編碼器能夠?qū)碜赃^去和未來的信息進(jìn)行建模,能夠提取更豐富的信息。三個(gè)預(yù)訓(xùn)練模型的圖如下所示:

NLP領(lǐng)域預(yù)訓(xùn)練模型的現(xiàn)狀及分析

BERT提出后大火,也許是因?yàn)锽ERT的效果太好。目前絕大多數(shù)的預(yù)訓(xùn)練模型都是在BERT上改造而來。清華大學(xué)的王曉智和張正彥同學(xué)給出了目前的預(yù)訓(xùn)練模型關(guān)系圖,這里引用一下,如下圖所示:

NLP領(lǐng)域預(yù)訓(xùn)練模型的現(xiàn)狀及分析

下面主要介紹幾個(gè)BERT變種模型。

二、Cross-lingual Language Model Pretraining(XLM)

在這項(xiàng)工作中,作者將預(yù)訓(xùn)練方法擴(kuò)展到多種語言并展示跨語言預(yù)訓(xùn)練的有效性。筆者認(rèn)為,這篇工作的創(chuàng)新點(diǎn)有兩個(gè):設(shè)計(jì)了一個(gè)用于多語言分類的跨語種的語言模型訓(xùn)練任務(wù);將BERT作為模型初始化用到無監(jiān)督機(jī)器翻譯上。

1、多語言分類任務(wù)

雖然BERT也經(jīng)過了100多種語言的訓(xùn)練,但并未針對跨語言任務(wù)進(jìn)行優(yōu)化,因此共享的知識有限。為了克服這個(gè)問題,XLM通過以下方式改造了BERT:

在BERT中,每個(gè)樣本是用一種語言構(gòu)建的。XLM對它的改進(jìn)是每個(gè)訓(xùn)練樣本都包含兩種語言的相同文本。與BERT一樣,該模型的目標(biāo)是預(yù)測被屏蔽的詞,但采用新的體系結(jié)構(gòu),該模型可以使用一種語言的上下文來預(yù)測另一種語言的詞。因?yàn)椴煌Z種的被屏蔽詞是不同的(隨機(jī))。改造后的BERT表示為翻TLM(Translation Language Model),而帶有BPE輸入的“原始” BERT表示為MLM(Masked Language Model)。通過訓(xùn)練MLM和TLM并在它們之間交替進(jìn)行訓(xùn)練來訓(xùn)練完整的模型。

NLP領(lǐng)域預(yù)訓(xùn)練模型的現(xiàn)狀及分析

XLM說明訓(xùn)練一種跨語言的語言模型對于資源匱乏的語言可能非常有好處,因?yàn)樗鼈兛梢岳脕碜云渌Z言的數(shù)據(jù),尤其是由于BPE預(yù)處理而產(chǎn)生的相似語言。

2、無監(jiān)督機(jī)器翻譯

XLM做的另一個(gè)工作是,利用BERT初始化無監(jiān)督模型的Encoder和Decoder。具體做法是在Transformer的Encoder端和Decoder端,進(jìn)行隨機(jī)初始化、MLM初始化或者CLM初始化(具體如圖),共得到9種不同的結(jié)構(gòu)。

NLP領(lǐng)域預(yù)訓(xùn)練模型的現(xiàn)狀及分析

三、Masked Sequence to Sequence pre-training(MASS)

BERT的預(yù)訓(xùn)練是在Transformer的Encoder上進(jìn)行預(yù)訓(xùn)練,所以BERT天然比較親和自然語言理解的任務(wù),而很難應(yīng)用于像機(jī)器翻譯這樣的語言生成類任務(wù)。

微軟的工作者認(rèn)為BERT單純預(yù)訓(xùn)練了Transformer的Encoder部分,但是對于端到端的任務(wù),Encoder-Decoder是有關(guān)聯(lián)的,如果用BERT初始化Encoder端和Decoder端,兩端只是分別訓(xùn)練好的沒有什么聯(lián)系。于是為了解決這個(gè)問題,微軟的工作中提出了MASS(Masked Sequence to Sequence pre-training)。

NLP領(lǐng)域預(yù)訓(xùn)練模型的現(xiàn)狀及分析

MASS是在Encoder端和Decoder端通過語言模型預(yù)訓(xùn)練。與BERT不同的是mask掉的詞是k個(gè)(這k個(gè)詞是連續(xù)的),Decoder中只輸入前k-1個(gè)被mask掉的詞,預(yù)測被mask掉的k個(gè)詞。MASS的優(yōu)勢有:

  • Encoder被強(qiáng)制去抽取未被屏蔽掉詞的語義,以提升Encoder理解源序列文本的能力。

  • Encoder端其它詞(在Encoder端未被屏蔽掉的詞)都被屏蔽掉,可以讓Decoder從Encoder端提取信息來幫助連續(xù)片段的預(yù)測。

  • Encoder預(yù)測連續(xù)的序列片段可以提升Encoder的語言建模能力。

MASS只需要無監(jiān)督的單語數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練。MASS支持跨語言的序列到序列生成(比如機(jī)器翻譯),也支持單語言的序列到序列生成(比如文本摘要生成、對話生成)。比如用MASS做英法的機(jī)器翻譯時(shí),在一個(gè)模型里同時(shí)進(jìn)行英語到英語以及法語到法語的預(yù)訓(xùn)練(單獨(dú)給每個(gè)語言加上相應(yīng)的語言嵌入向量,用來區(qū)分不同的語言)。

至于效果,在WMT19中,MASS幫助微軟獲得了多項(xiàng)翻譯的冠軍,具體可以查看WMT19的榜單。

四、XLNet: Generalized Autoregressive Pretraining for Language Understanding

自回歸語言模型是單向的但是天然匹配自然語言生成任務(wù),自編碼(BERT)可以融合雙向信息但是引入MASK導(dǎo)致預(yù)訓(xùn)練和Fine-tuning階段的不一致。XLNET融合了自回歸語言模型和自編碼語言模型的優(yōu)點(diǎn)。XLNET在模型方面的貢獻(xiàn)在于,隨然看上去仍然是從左向右的輸入和預(yù)測模式,但是其實(shí)內(nèi)部已經(jīng)引入了當(dāng)前單詞的下文信息。

NLP領(lǐng)域預(yù)訓(xùn)練模型的現(xiàn)狀及分析

在預(yù)訓(xùn)練階段,引入Permutation Language Model的訓(xùn)練目標(biāo)。簡單點(diǎn)來說就是固定當(dāng)前要預(yù)測的詞,通過調(diào)換其余詞的位置,將預(yù)測詞后邊的詞換到當(dāng)先此的前邊,在隨機(jī)排列組合后的各種可能里,再選擇一部分作為模型預(yù)訓(xùn)練的輸入。這樣當(dāng)前詞就能看到上下文的內(nèi)容了,但是形式上看上去仍然是從左到右在預(yù)測后一個(gè)單詞。具體的實(shí)現(xiàn)可以看XLNET的論文。

除此之外,引入了Transformer-XL的主要思路:相對位置編碼以及分段RNN機(jī)制。實(shí)踐已經(jīng)證明這兩點(diǎn)對于長文檔任務(wù)是很有幫助的;在預(yù)訓(xùn)練階段極大擴(kuò)充了數(shù)據(jù)規(guī)模,并對質(zhì)量進(jìn)行了篩選過濾。

相對于BERT模型,XLNET對于長文檔的應(yīng)用有明顯的提升,因?yàn)門ransformer天然對長文檔任務(wù)處理有弱點(diǎn)。上文提過,對于生成類的NLP任務(wù),BERT仍然不能很好地處理。而XLNET的預(yù)訓(xùn)練模式天然符合下游任務(wù)序列生成結(jié)果。但是目前還沒有實(shí)驗(yàn)證明。

五、結(jié)論

從BERT的各類變種就可以看出BERT和Transformer的火爆程度,筆者認(rèn)為目前預(yù)訓(xùn)練+下游任務(wù)微調(diào)有一統(tǒng)自然語言領(lǐng)域的趨勢。預(yù)訓(xùn)練不僅在低資源任務(wù)上有很高的提升作用,甚至在豐富資源的任務(wù)上對模型性能也有顯著的提高。如果沒有超越Transformer的特征提取模型提出的話,相信在BERT上各類的改造會層出不窮,以適應(yīng)不同類型的下游任務(wù)。還有的預(yù)訓(xùn)練模型在BERT基礎(chǔ)上引入知識圖譜等,讓BERT變得更加“有知識”,如清華大學(xué)的ERNIE[10]。

既然各類不同的任務(wù)對預(yù)訓(xùn)練模型進(jìn)行不同的改造,那能不能有一種預(yù)訓(xùn)練模型,可以適應(yīng)全部的NLP任務(wù)呢,近期谷歌剛剛發(fā)布了超大規(guī)模的T5(NLP Text-to-Text)[11]預(yù)訓(xùn)練模型。它給整個(gè) NLP 預(yù)訓(xùn)練模型領(lǐng)域提供了一個(gè)通用框架,把所有任務(wù)都轉(zhuǎn)化成一種形式,無論什么任務(wù),直接拿來一個(gè)超大預(yù)訓(xùn)練模型,然后主要工作就變成了怎么把任務(wù)轉(zhuǎn)換成合適的文本輸入輸出,,比如德英翻譯,只需將訓(xùn)練數(shù)據(jù)集的輸入部分前加上“translate German to English”。

另外的思路是,不是改造預(yù)訓(xùn)練的模型,而是將龐大的預(yù)訓(xùn)練模型進(jìn)行壓縮,比如近期的alBERT,通過共享參數(shù)、引入單獨(dú)的詞嵌入層維度來減少BERT的參數(shù)。最終性能也登上GLUE第一(剛剛被T5超過)。還有通過知識蒸餾技術(shù),訓(xùn)練出的tinyBERT等,都是對BERT模型進(jìn)行的模型壓縮。

參考文獻(xiàn)

[1] Bengio Y, Ducharme R, Vincent P, et al. A neural probabilistic language model.

[2] Mikolov T, Chen K, Corrado G S, et al. Efficient Estimation of Word Representations in Vector Space.

[3] Mikolov T, Sutskever I, Chen K, et al. Distributed Representations of Words and Phrases and their Compositionality.

[4] Matthew Peters, Mark Neumann, Mohit Iyyer, Matt Gardner, Christopher Clark, Kenton Lee, and Luke Zettlemoyer. 2018. Deep Contextualized Word Representations.

[5] Alec Radford, Karthik Narasimhan, Tim Salimans, and Ilya Sutskever. 2018. Improving Language Understanding by Generative Pre-Training.

[6] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 2018. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.

[7] Guillaume Lample and Alexis Conneau. 2019. Cross-lingual Language Model Pretraining.

[8] Kaitao Song, Xu Tan, Tao Qin, Jianfeng Lu, and Tie-Yan Liu. 2019. MASS: Masked Sequence to Sequence Pre-training for Language Generation.

[9] Zhilin Yang, Zihang Dai, Yiming Yang, Jaime Carbonell, Ruslan Salakhutdinov, and Quoc V. Le. 2019. XLNet: Generalized Autoregressive Pretraining for Language Understanding.

[10] Zhengyan Zhang, Xu Han, Zhiyuan Liu1, Xin Jiang, Maosong Sun1, Qun Liu. ERNIE: Enhanced Language Representation with Informative Entities.

[11] Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee,et al. Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer.

雷鋒網(wǎng)編輯

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    欧美日韩综合在线第一页| 深夜日本福利在线观看| 国产真人无遮挡免费视频一区| 国产精品一区二区成人在线| 欧美视频在线观看一区| 久久精品国产亚洲熟女| 国产精品丝袜一二三区| 国产免费操美女逼视频| 日本欧美一区二区三区在线播| 少妇视频一区二区三区| 国产欧美日韩视频91| 日韩精品视频免费观看| 狠狠干狠狠操在线播放| 国产不卡在线免费观看视频| 日本少妇三级三级三级| 久久精品蜜桃一区二区av| 亚洲av熟女国产一区二区三区站| 国产欧美日本在线播放| 国产精品成人一区二区三区夜夜夜| 国产成人免费激情视频| 久久免费精品拍拍一区二区| 精品国产av一区二区三区不卡蜜| 国产又大又黄又粗又免费| 老司机精品福利视频在线播放| 欧美胖熟妇一区二区三区| 免费在线观看欧美喷水黄片| 色婷婷视频免费在线观看| 国产亚洲系列91精品| 成人国产激情在线视频| 小黄片大全欧美一区二区| 欧美在线视频一区观看| 色丁香之五月婷婷开心| 神马午夜福利免费视频| 成人欧美一区二区三区视频| 国产精品色热综合在线| 精品推荐久久久国产av| 色婷婷人妻av毛片一区二区三区| 国产免费一区二区不卡| 免费观看一区二区三区黄片| 久久99精品日韩人妻| 色婷婷中文字幕在线视频|