向预训练进一步:掩码式非自回归模型训练
論文標題:
Jointly Masked Sequence-to-Sequence Model for Non-Autoregressive Neural Machine Translation
論文作者:
Junliang Guo, Linli Xu, Enhong Chen
論文鏈接:
https://www.aclweb.org/anthology/2020.acl-main.36.pdf
代碼鏈接:
https://github.com/lemmonation/jm-nat
收錄情況:
Accepted by ACL 2020
預訓練模型大規模使用掩碼自監督完成訓練,基于上下文預測被掩碼的詞;而非自回歸模型在預測時也是基于上下文一次性預測多個詞,這二者有微妙的聯系。
本文提出在序列到序列的非自回歸模型上進行掩碼訓練,在編碼端和解碼端聯合訓練,進而更加全面地增強非自回歸模型的效果。更加重要的是,這種方法為簡潔、有效的非自回歸模型預訓練方法提供了思路。
掩碼訓練與非自回歸
在過去的文章中,我們介紹了許多關于掩碼自監督訓練的論文、方法,也介紹了很多先進的非自回歸模型,前者是先進生產力的代表,后者是一個潛在的發展潮流。但是有沒有思考過,這二者之間似乎隱約存在著一些關系。
非自回歸模型是接受源句子,一次性預測目標句子(的一部分)。假設我們知道了目標句子的一部分,要去預測剩下的一部分,其中滿足,那就是求下述概率:
另一方面,我們又知道,類似BERT的掩碼預訓練目標是:
顯然,這二者顯然存在著聯系。到這里,讀者可能會想直接把BERT的掩碼預訓練移植到非自回歸上,但是,它們之間有著本質的區別,在BERT中是已知的,但在序列到序列模型中是未知的!
也就是說,在非自回歸模型中,我們想要基于去預測其他詞,也就是說我們要提前知道它,然而,本身又是需要預測的,這就形成了一個矛盾!
那么,有沒有什么辦法可以在一定程度上解決這個問題呢?我們就可以用MASK-PREDICT(MP)的方法。MP是迭代地進行上述操作,每次預測一部分,掩碼掉概率較低的部分。本文也是基于MP實現的。
基于MP,我們就可以非常愉快地把掩碼訓練嫁接到非自回歸模型上了,這也是本文提出的方法。此外,為了進一步緩解非自回歸模型重復生成的問題,本文還提出了n-gram損失,我們將在下面詳細介紹。
總的來說,本文的貢獻有:
在非自回歸模型上應用掩碼訓練,并提出n-gram損失函數增強模型解碼能力;
在三個翻譯數據集上實現了很好的效果,在沒有預訓練的情況下已經逼近自回歸模型的表現。
注意,盡管上面我們解釋了非自回歸模型和掩碼預訓練的聯系,但是本文并沒有研究如何基于掩碼訓練的策略去預訓練非自回歸模型。
在筆者看來,我們完全可以通過某種策略去預訓練非自回歸模型解碼端(比如將解碼端分為兩部分,下部分使用單語語料預訓練,上部分融入編碼端特征),而其中的關鍵就在于掩碼!這也是本文強調“非自回歸預訓練”的原因。
方法
下圖是本文所提出方法的概覽,核心是類似BERT的掩碼訓練。在編碼端和解碼端同時進行掩碼訓練,從而期望增強非自回歸模型編碼、解碼的能力。
首先是編碼端的掩碼,這就和BERT是一致的,不再贅述,我們把此損失函數記為:
其次是解碼端的掩碼,本質上和BERT也是一樣的,不同的是,在推理的時候,我們并不是每次都能看到所有的上下文(因為模型不能一次預測完所有的詞),所以這也是本文推理使用MP的原因。
然而在訓練的時候,我們卻可以忽略這一點,也就是我們能看到整個目標句子。所以,訓練的時候,解碼端的目標就是:
注意此處是連續的n-gram,這是為了和下面的n-gram損失相匹配。
我們知道非自回歸模型的一大問題就是重復生成,那么n-gram損失就可以緩解這個問題。
具體來說,假設我們掩碼的n-gram是,它在目標句子中出現的次數記為,那么,n-gram損失就是讓模型去預測這個次數:
上式鼓勵中模型正確預測每個n-gram整體。這個損失和bag-of-ngrams類似。
綜上,總的損失就是:
在推理的時候,只需要按照Mask-Predict的步驟去做就好了。
實驗
本文在數據集IWSLT14 German-English、WMT16 English-Romanian 和 WMT14 English-German上實驗, IWSLT14 De-En 用 small Transformer,其他兩個用base模型。其他實驗設置詳見原文。下表是主要的實驗結果:
可以看到,本文的方法超過了其他非自回歸模型,和自回歸模型相比,已經比較接近了。
在推理速度上,由于采用MP的迭代式方式,故相比one-pass模型較慢,但是也遠遠快于自回歸模型。
下面來看重復生成。我們計算平均重復詞的個數,結果如下表所示。可以看到,本文的方法有更少的重復詞。
下面再來看看各個損失的影響,如下表所示:
可以看到,這些損失和掩碼策略還是有比較大的影響的,這也從側面印證了掩碼訓練和非自回歸模型之間存在的關聯性。
小結
本文提出MJ-NAT,一種基于掩碼訓練的非自回歸模型,核心在于使用類似BERT掩碼預訓練的方式,使用Mask-Predict進行推理,可以在多個數據集上取得顯著的效果。
筆者認為,基于掩碼訓練的方式還可以在非自回歸模型上大有作為,尤其是在預訓練方面。
思考
你認為掩碼訓練的方式可以用于非自回歸模型的預訓練嗎?是采用平行語料預訓練還是單語語料預訓練?請讀者進行思考。
過去的序列到序列模型預訓練,如MASS,都是掩碼n-gram然后在解碼端去預測它,思考非自回歸模型需要掩碼n-gram嗎?如果不需要,為什么?
????
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
關于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
總結
以上是生活随笔為你收集整理的向预训练进一步:掩码式非自回归模型训练的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 16 岁少年成为全球首个通关 255 级
- 下一篇: 华硕win10怎么u盘装系统 华硕电脑W