編者按:從2018年開(kāi)始,預(yù)訓(xùn)練(pre-train) 毫無(wú)疑問(wèn)成為NLP領(lǐng)域最熱的研究方向。借助于BERT和GPT等預(yù)訓(xùn)練模型,人類(lèi)在多個(gè)自然語(yǔ)言理解任務(wù)中取得了重大突破。然而,在序列到序列的自然語(yǔ)言生成任務(wù)中,目前主流預(yù)訓(xùn)練模型并沒(méi)有取得顯著效果。為此,微軟亞洲研究院的研究員在ICML 2019上提出了一個(gè)全新的通用預(yù)訓(xùn)練方法MASS,在序列到序列的自然語(yǔ)言生成任務(wù)中全面超越BERT和GPT。在微軟參加的WMT19機(jī)器翻譯比賽中,MASS幫助中-英、英-立陶宛兩個(gè)語(yǔ)言對(duì)取得了第一名的成績(jī)。
BERT在自然語(yǔ)言理解(比如情感分類(lèi)、自然語(yǔ)言推理、命名實(shí)體識(shí)別、SQuAD閱讀理解等)任務(wù)中取得了很好的結(jié)果,受到了越來(lái)越多的關(guān)注。然而,在自然語(yǔ)言處理領(lǐng)域,除了自然語(yǔ)言理解任務(wù),還有很多序列到序列的自然語(yǔ)言生成任務(wù),比如機(jī)器翻譯、文本摘要生成、對(duì)話生成、問(wèn)答、文本風(fēng)格轉(zhuǎn)換等。在這類(lèi)任務(wù)中,目前主流的方法是編碼器-注意力-解碼器框架,如下圖所示。
編碼器-注意力-解碼器框架
編碼器(Encoder)將源序列文本X編碼成隱藏向量序列,然后解碼器(Decoder)通過(guò)注意力機(jī)制(Attention)抽取編碼的隱藏向量序列信息,自回歸地生成目標(biāo)序列文本Y。
BERT通常只訓(xùn)練一個(gè)編碼器用于自然語(yǔ)言理解,而GPT的語(yǔ)言模型通常是訓(xùn)練一個(gè)解碼器。如果要將BERT或者GPT用于序列到序列的自然語(yǔ)言生成任務(wù),通常只有分開(kāi)預(yù)訓(xùn)練編碼器和解碼器,因此編碼器-注意力-解碼器結(jié)構(gòu)沒(méi)有被聯(lián)合訓(xùn)練,記憶力機(jī)制也不會(huì)被預(yù)訓(xùn)練,而解碼器對(duì)編碼器的注意力機(jī)制在這類(lèi)任務(wù)中非常重要,因此BERT和GPT在這類(lèi)任務(wù)中只能達(dá)到次優(yōu)效果。
新的預(yù)訓(xùn)練方法——MASS
專(zhuān)門(mén)針對(duì)序列到序列的自然語(yǔ)言生成任務(wù),微軟亞洲研究院提出了新的預(yù)訓(xùn)練方法:屏蔽序列到序列預(yù)訓(xùn)練(MASS: Masked Sequence to Sequence Pre-training)。MASS對(duì)句子隨機(jī)屏蔽一個(gè)長(zhǎng)度為k的連續(xù)片段,然后通過(guò)編碼器-注意力-解碼器模型預(yù)測(cè)生成該片段。
屏蔽序列到序列預(yù)訓(xùn)練MASS模型框架
如上圖所示,編碼器端的第3-6個(gè)詞被屏蔽掉,然后解碼器端只預(yù)測(cè)這幾個(gè)連續(xù)的詞,而屏蔽掉其它詞,圖中“_”代表被屏蔽的詞。
MASS預(yù)訓(xùn)練有以下幾大優(yōu)勢(shì):
(1)解碼器端其它詞(在編碼器端未被屏蔽掉的詞)都被屏蔽掉,以鼓勵(lì)解碼器從編碼器端提取信息來(lái)幫助連續(xù)片段的預(yù)測(cè),這樣能促進(jìn)編碼器-注意力-解碼器結(jié)構(gòu)的聯(lián)合訓(xùn)練;
(2)為了給解碼器提供更有用的信息,編碼器被強(qiáng)制去抽取未被屏蔽掉詞的語(yǔ)義,以提升編碼器理解源序列文本的能力;
(3)讓解碼器預(yù)測(cè)連續(xù)的序列片段,以提升解碼器的語(yǔ)言建模能力。
統(tǒng)一的預(yù)訓(xùn)練框架
MASS有一個(gè)重要的超參數(shù)k(屏蔽的連續(xù)片段長(zhǎng)度),通過(guò)調(diào)整k的大小,MASS能包含BERT中的屏蔽語(yǔ)言模型訓(xùn)練方法以及GPT中標(biāo)準(zhǔn)的語(yǔ)言模型預(yù)訓(xùn)練方法,使MASS成為一個(gè)通用的預(yù)訓(xùn)練框架。
當(dāng)k=1時(shí),根據(jù)MASS的設(shè)定,編碼器端屏蔽一個(gè)單詞,解碼器端預(yù)測(cè)一個(gè)單詞,如下圖所示。解碼器端沒(méi)有任何輸入信息,這時(shí)MASS和BERT中的屏蔽語(yǔ)言模型的預(yù)訓(xùn)練方法等價(jià)。
當(dāng)k=m(m為序列長(zhǎng)度)時(shí),根據(jù)MASS的設(shè)定,編碼器屏蔽所有的單詞,解碼器預(yù)測(cè)所有單詞,如下圖所示,由于編碼器端所有詞都被屏蔽掉,解碼器的注意力機(jī)制相當(dāng)于沒(méi)有獲取到信息,在這種情況下MASS等價(jià)于GPT中的標(biāo)準(zhǔn)語(yǔ)言模型。
MASS在不同K下的概率形式如下表所示,其中m為序列長(zhǎng)度,u和v為屏蔽序列的開(kāi)始和結(jié)束位置,x^u:v表示從位置u到v的序列片段,x^\u:v表示該序列從位置u到v被屏蔽掉??梢钥吹剑?dāng)K=1或者m時(shí),MASS的概率形式分別和BERT中的屏蔽語(yǔ)言模型以及GPT中的標(biāo)準(zhǔn)語(yǔ)言模型一致。
我們通過(guò)實(shí)驗(yàn)分析了屏蔽MASS模型中不同的片段長(zhǎng)度(k)進(jìn)行預(yù)訓(xùn)練的效果,如下圖所示。
當(dāng)k取大約句子長(zhǎng)度一半時(shí)(50% m),下游任務(wù)能達(dá)到最優(yōu)性能。屏蔽句子中一半的詞可以很好地平衡編碼器和解碼器的預(yù)訓(xùn)練,過(guò)度偏向編碼器(k=1,即BERT)或者過(guò)度偏向解碼器(k=m,即LM/GPT)都不能在該任務(wù)中取得最優(yōu)的效果,由此可以看出MASS在序列到序列的自然語(yǔ)言生成任務(wù)中的優(yōu)勢(shì)。
序列到序列自然語(yǔ)言生成任務(wù)實(shí)驗(yàn)
預(yù)訓(xùn)練流程
MASS只需要無(wú)監(jiān)督的單語(yǔ)數(shù)據(jù)(比如WMT News Crawl Data、Wikipedia Data等)進(jìn)行預(yù)訓(xùn)練。MASS支持跨語(yǔ)言的序列到序列生成(比如機(jī)器翻譯),也支持單語(yǔ)言的序列到序列生成(比如文本摘要生成、對(duì)話生成)。當(dāng)預(yù)訓(xùn)練MASS支持跨語(yǔ)言任務(wù)時(shí)(比如英語(yǔ)-法語(yǔ)機(jī)器翻譯),我們?cè)谝粋€(gè)模型里同時(shí)進(jìn)行英語(yǔ)到英語(yǔ)以及法語(yǔ)到法語(yǔ)的預(yù)訓(xùn)練。需要單獨(dú)給每個(gè)語(yǔ)言加上相應(yīng)的語(yǔ)言嵌入向量,用來(lái)區(qū)分不同的語(yǔ)言。我們選取了無(wú)監(jiān)督機(jī)器翻譯、低資源機(jī)器翻譯、文本摘要生成以及對(duì)話生成四個(gè)任務(wù),將MASS預(yù)訓(xùn)練模型針對(duì)各個(gè)任務(wù)進(jìn)行精調(diào),以驗(yàn)證MASS的效果。
無(wú)監(jiān)督機(jī)器翻譯
在無(wú)監(jiān)督翻譯任務(wù)上,我們和當(dāng)前最強(qiáng)的Facebook XLM作比較(XLM用BERT中的屏蔽預(yù)訓(xùn)練模型,以及標(biāo)準(zhǔn)語(yǔ)言模型來(lái)分別預(yù)訓(xùn)練編碼器和解碼器),對(duì)比結(jié)果如下表所示。
可以看到,MASS的預(yù)訓(xùn)練方法在WMT14英語(yǔ)-法語(yǔ)、WMT16英語(yǔ)-德語(yǔ)一共4個(gè)翻譯方向上的表現(xiàn)都優(yōu)于XLM。MASS在英語(yǔ)-法語(yǔ)無(wú)監(jiān)督翻譯上的效果已經(jīng)遠(yuǎn)超早期有監(jiān)督的編碼器-注意力-解碼器模型,同時(shí)極大縮小了和當(dāng)前最好的有監(jiān)督模型之間的差距。
低資源機(jī)器翻譯
低資源機(jī)器翻譯指的是監(jiān)督數(shù)據(jù)有限情況下的機(jī)器翻譯。我們?cè)赪MT14英語(yǔ)-法語(yǔ)、WMT16英語(yǔ)-德語(yǔ)上的不同低資源場(chǎng)景上(分別只有10K、100K、1M的監(jiān)督數(shù)據(jù))驗(yàn)證我們方法的有效性,結(jié)果如下所示。
在不同的數(shù)據(jù)規(guī)模下,我們的預(yù)訓(xùn)練方法的表現(xiàn)均比不用預(yù)訓(xùn)練的基線模型有不同程度的提升,監(jiān)督數(shù)據(jù)越少,提升效果越顯著。
文本摘要生成
在文本摘要生成(Gigaword Corpus)任務(wù)上,我們將MASS同BERT+LM(編碼器用BERT預(yù)訓(xùn)練,解碼器用標(biāo)準(zhǔn)語(yǔ)言模型LM預(yù)訓(xùn)練)以及DAE(去噪自編碼器)進(jìn)行了比較。從下表可以看到,MASS的效果明顯優(yōu)于BERT+LM以及DAE。
對(duì)話生成
在對(duì)話生成(Cornell Movie Dialog Corpus)任務(wù)上,我們將MASS同BERT+LM進(jìn)行了比較,結(jié)果如下表所示。MASS的PPL低于BERT+LM。
在不同的序列到序列自然語(yǔ)言生成任務(wù)中,MASS均取得了非常不錯(cuò)的效果。接下來(lái),我們還將測(cè)試MASS在自然語(yǔ)言理解任務(wù)上的性能,并為該模型增加支持監(jiān)督數(shù)據(jù)預(yù)訓(xùn)練的功能,以期望在更多自然語(yǔ)言任務(wù)中取得提升。未來(lái),我們還希望將MASS的應(yīng)用領(lǐng)域擴(kuò)展到包含語(yǔ)音、視頻等其它序列到序列的生成任務(wù)中。
-
解碼器
+關(guān)注
關(guān)注
9文章
1176瀏覽量
42003 -
編碼器
+關(guān)注
關(guān)注
45文章
3808瀏覽量
138106 -
自然語(yǔ)言
+關(guān)注
關(guān)注
1文章
292瀏覽量
13657
原文標(biāo)題:ICML 2019:序列到序列自然語(yǔ)言生成任務(wù)超越BERT、GPT!微軟提出通用預(yù)訓(xùn)練模型MASS | 技術(shù)頭條
文章出處:【微信號(hào):rgznai100,微信公眾號(hào):rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
【大語(yǔ)言模型:原理與工程實(shí)踐】大語(yǔ)言模型的預(yù)訓(xùn)練
優(yōu)化神經(jīng)網(wǎng)絡(luò)訓(xùn)練方法有哪些?
微軟在ICML 2019上提出了一個(gè)全新的通用預(yù)訓(xùn)練方法MASS

預(yù)訓(xùn)練語(yǔ)言模型設(shè)計(jì)的理論化認(rèn)識(shí)
小米在預(yù)訓(xùn)練模型的探索與優(yōu)化

一種側(cè)重于學(xué)習(xí)情感特征的預(yù)訓(xùn)練方法

Multilingual多語(yǔ)言預(yù)訓(xùn)練語(yǔ)言模型的套路
利用視覺(jué)語(yǔ)言模型對(duì)檢測(cè)器進(jìn)行預(yù)訓(xùn)練
什么是預(yù)訓(xùn)練 AI 模型?
什么是預(yù)訓(xùn)練AI模型?
基礎(chǔ)模型自監(jiān)督預(yù)訓(xùn)練的數(shù)據(jù)之謎:大量數(shù)據(jù)究竟是福還是禍?

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

評(píng)論