0
本文作者: 我在思考中 | 2021-08-06 11:00 | 專題:ICML 2019 |
本文提出了一個新的損失函數(shù),混合交叉熵損失(Mixed CE),用于替代在機器翻譯的兩種訓練方式(Teacher Forcing和 Scheduled Sampling)里常用的交叉熵損失函數(shù)(CE)。
Mixed CE實現(xiàn)簡單,計算開銷基本和標準的CE持平,并且在多個翻譯數(shù)據(jù)的多種測試集上表現(xiàn)優(yōu)于CE。這篇文章我們簡要介紹Mixed CE的背景和一些主要的實驗結果。
文章和附錄:http://proceedings.mlr.press/v139/li21n.html
代碼:https://github.com/haorannlp/mix
背景
本節(jié)簡單介紹一下 Teacher Forcing和 Scheduled Sampling 的背景。
Teacher Forcing[1]訓練方式指的是當我們在訓練一個自回歸模型時(比如RNN,LSTM,或者Transformer的decoder部分),我們需要將真實的目標序列(比如我們想要翻譯的句子)作為自回歸模型的輸入,以便模型能夠收斂的更快更好。通常在Teacher Forcing(TF)這種訓練方式下,模型使用的損失函數(shù)是CE:
值得注意的是,機器翻譯(MT)本身是一個一對多的映射問題,比如同樣一句中文可以翻譯成不同的英文,而使用CE的時候,因為每個單詞使用一個one-hot encoding去表示的,這種情況下MT是被我們當作了一個一對一的映射問題。這種方式可能會限制模型的泛化能力,因為使用CE的模型學到的條件分布 更接近于一個one-hot encoding,而非數(shù)據(jù)真實的條件分布
。但不可否認的是,即使模型用CE訓練,它在實踐中也取得了很好的效果。CE在實踐中的成功意味著模型學習到的條件分布
可能也包含著部分真實分布
的信息。我們能不能在訓練的時候從 提取
的信息呢?這就是我們的Mixed CE所要完成的目標。
雖然TF訓練方式簡單,但它會導致exposure bias的問題,即在訓練階段模型使用的輸入來自于真實數(shù)據(jù)分布,而在測試階段模型每一時刻使用的輸入來自于模型上一時刻的預測結果,這兩個輸入分布之間的差異被稱作exposure bias。
因此,研究者們進而提出了Scheduled Sampling[2](SS)。在自回歸模型每一時刻的輸入不再是來自于真實數(shù)據(jù),而是隨機從真實數(shù)據(jù)或模型上一時刻的輸出中采樣一個點作為輸入。這種方法的本質(zhì)是希望通過在訓練階段混入模型自身的預測結果作為輸入,減小其與測試階段輸入數(shù)據(jù)分布的差異。也就是說,SS所做的是讓訓練輸入數(shù)據(jù)分布近似測試輸入數(shù)據(jù)的分布,從而減輕exposure bias。
而另一種減輕exposure bias的思想是,即使訓練和測試階段輸入來自不同的分布,只要模型的輸出是相似的,這種輸入的差異性也就無關緊要了。我們的Mixed CE就是想要達到這樣的目標。
需要注意的一點是,SS本來是用于RNN的,但由于Transformer的興起,后續(xù)的研究者們提出了一些改進的SS以便適用于Transformer decoder在訓練階段能夠并行計算的特性。即運行Transformer deocder兩次,第一次輸入真實的數(shù)據(jù),然后從t時刻的輸出分布里采樣一個數(shù)據(jù)點
, 最終得到一個序列
。接著,將
和目標序列
里面的元素隨機進行混合,得到新序列
。然后把
作為decoder的輸入,按照正常方式進行訓練。
方法
我們提出的Mixed CE可以同時用于TF和SS兩種訓練方式中。
在TF中,為了應用MixedCE,我們首先做出一個假設:如果模型當前預測的概率最大的token和目標token不一致,那我們認為預測的token很有可能是目標token的同義詞或者同義詞的一部分。
我們做出這個假設是因為在實際中的平行語料庫里,同樣一個源語言的單詞在目標語言會有多種不同的翻譯方式。如果這些不同的翻譯在語料庫里出現(xiàn)的頻率相差不多,那么在預測該源語言單詞時,模型非常有可能給這些不同的翻譯相似的概率,而概率最大的那種翻譯方式恰好是目標token的同義詞。
具體來說,Mixed CE的公式如下:
這里的是模型在當前時刻模型預測的最有可能的結果,而根據(jù)我們之前的假設,有可能是的同義詞。Mixed CE通過以 作為目標進行優(yōu)化,有效利用了
中含有的真實分布
的信息。同時,這里的
,
是當前訓練的iteration,total_iter代表了總的訓練輪數(shù)。隨著訓練的進行,模型的效果越來越好,
會不斷增大,Mixed CE中第二項的權重也就越大。
在SS中,Mixed CE的形式類似于上述公式:
這里的 是對第一次運行Transformer decoder的輸出進行greedy采樣的結果。第一次運行Transformer decoder時的輸入是真實的目標序列,而第二次運行時的輸入是序列
。通過優(yōu)化這個目標函數(shù)的第二部分,無論模型輸入是
還是
,模型總是能夠輸出相似的結果,也就是說,模型能夠忽略輸入分布的差異,從而減輕了exposure bias的問題。
值得注意的是,相比于CE,Mixed CE在訓練期間只增加很少的計算量,額外的計算量來自于尋找模型預測結果的最大值。
實驗
由于篇幅有限,我們只列出幾個重要的實驗結果,更詳細的實驗結果可以在原文中找到。
在TF訓練方式中,我們在WMT’14 En-De上的multi-reference test set上面進行了測試。在這個測試集中,每個源語言的句子有10種不同的reference translation,我們利用beam search為每一句源語言句子生成10個candidate translations,并且計算了每一個Hypothesis相對于每一種reference translation的BLEU分數(shù),并且取它們的平均值或者最大值。結果如下:
我們可以看到Mixed CE在所有reference上面始終優(yōu)于標準CE。
另外,我們也在一個paraphrased reference set(WMT’19 En-De)上面進行了測試。這個測試集里面的每一個reference都是經(jīng)過語言專家的改寫,改寫后的句子結構和詞匯的使用都變得更復雜。結果如下:
Mixed CE仍然優(yōu)于CE。通常在這個測試集上,0.3~0.4 BLEU的提升就表明效果就很顯著了。
由于Mixed CE的形式類似于label smoothing,所以我們也具體比較了Mixed CE和label smoothing。我們利用Pairwise-BLEU(PB)衡量模型輸出分布的平滑程度,PB越大,輸出分布越陡峭,反之則越平滑。結果如下:
可以看到,加入label smoothing之后,輸出分布變得更加平滑,而Mixed CE使得輸出分布變得更加陡峭。所以Mixed CE和label smoothing是不同的。并且從BLEU的分數(shù)可以看出, label smoothing和Mixed CE并不是一個互斥的關系,兩者共用效果會更好。
在SS中,我們以SS和word oracle(SS的一個變種)作為Baseline。結果如下:
可以看到Mixed CE總是好于CE。此外,我們在論文中還提供了ablation study,以確認Mixed CE中的第二項對性能的提升是必不可少的。
此外,我們在附錄中也列出了一些關于domain adaptation的初步實驗,歡迎大家繼續(xù)探索Mixed CE在其他領域的應用。
結論
在本文中我們提出了Mixed CE,用于替換在teacher forcing和scheduled sampling中使用CE損失函數(shù)。實驗表明在teacher forcing里,Mixed CE在multi-reference, paraphrased reference set上面的表現(xiàn)總是優(yōu)于CE。同時,我們也對比了label smoothing和Mixed CE,發(fā)現(xiàn)它們對輸出分布的影響是不同的。在scheduled sampling當中,Mixed CE能夠更有效的減輕exposure bias的影響。
掃碼加入ICML2021交流群:
若二維碼過期或群內(nèi)滿200人時,添加小助手微信(AIyanxishe3),備注ICML2021拉你進群。
雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)特約稿件,未經(jīng)授權禁止轉載。詳情見轉載須知。