本文為計(jì)算所邵晨澤向雷鋒網(wǎng)AI科技評(píng)論投稿,未經(jīng)允許禁止轉(zhuǎn)載。
本文是對(duì)計(jì)算所馮洋組和騰訊微信AI團(tuán)隊(duì)共同完成,被AAAI2020 錄用的論文《Minimizing the Bag-of-Ngrams Difference for Non-Autoregressive Neural Machine Translation》進(jìn)行解讀,相關(guān)工作已開(kāi)源。
論文:https://arxiv.org/pdf/1911.09320.pdf
代碼:https://github.com/ictnlp/BoN-NAT
研究背景:非自回歸模型
目前主流的神經(jīng)機(jī)器翻譯模型為自回歸模型,每一步的譯文單詞的生成都依賴(lài)于之前的翻譯結(jié)果,因此模型只能逐詞生成譯文,翻譯速度較慢。Gu等人[1]提出的非自回歸神經(jīng)機(jī)器翻譯模型(NAT)對(duì)目標(biāo)詞的生成進(jìn)行獨(dú)立的建模,因此能夠并行解碼出整句譯文,顯著地提升了模型的翻譯速度。
然而,非自回歸模型在翻譯質(zhì)量上與自回歸模型有較大差距,主要表現(xiàn)為模型在長(zhǎng)句上的翻譯效果較差,譯文中包含較多的重復(fù)詞和漏譯錯(cuò)誤等,如圖一所示:
圖一:NAT譯文中的重復(fù)詞和漏譯錯(cuò)誤。NAT:非自回歸模型,AR:自回歸模型
造成非自回歸模型翻譯效果較差的一個(gè)主要原因?yàn)槠溆?xùn)練時(shí)所用的交叉熵?fù)p失函數(shù)不準(zhǔn)確。一方面,詞級(jí)別的交叉熵?fù)p失對(duì)每個(gè)位置的預(yù)測(cè)結(jié)果進(jìn)行獨(dú)立評(píng)估,難以建模序列依賴(lài)關(guān)系;另一方面,交叉熵?fù)p失要求模型的預(yù)測(cè)結(jié)果與參考譯文嚴(yán)格對(duì)齊,否則就難以評(píng)估模型的翻譯質(zhì)量。如圖二所示,
圖二:不對(duì)齊時(shí),交叉熵?fù)p失無(wú)法給出準(zhǔn)確的指導(dǎo)
當(dāng)預(yù)測(cè)結(jié)果未與參考譯文對(duì)齊時(shí),盡管兩者語(yǔ)義很相近,交叉熵?fù)p失還是會(huì)變得非常大,對(duì)模型給出錯(cuò)誤的指導(dǎo)。
相關(guān)工作
針對(duì)上述的交叉熵?fù)p失函數(shù)不準(zhǔn)確的問(wèn)題,Gu等人[1]將其歸因?yàn)樽g文的“多峰性”,即一個(gè)句子可能有多種正確的譯文,并提出引入隱變量來(lái)減小譯文的不確定性。隨后,離散隱變量[2,3]、變分自編碼器[4,5]、基于位置信息的隱變量[6,7]被引入到非自回歸模型中,均取得了明顯的效果提升。
隱變量的方法也有一定缺陷,即對(duì)隱變量的建模會(huì)降低非自回歸模型的翻譯速度,且隱變量難以完全消除譯文的不確定性,交叉熵?fù)p失不準(zhǔn)確的問(wèn)題仍然存在。
另一個(gè)思路為對(duì)非自回歸模型的訓(xùn)練目標(biāo)做改進(jìn),本文也是基于這個(gè)思路。Wang等人[8]直接在訓(xùn)練目標(biāo)中加入正則化項(xiàng),以此來(lái)抑制模型的重復(fù)翻譯和漏譯錯(cuò)誤。Shao等人[9]在模型中融入序列信息,改進(jìn)強(qiáng)化學(xué)習(xí)算法來(lái)進(jìn)行序列級(jí)訓(xùn)練,用更準(zhǔn)確的序列級(jí)指標(biāo)來(lái)訓(xùn)練模型。
上述方法的好處是能在不影響翻譯速度的前提下提升模型的翻譯質(zhì)量。然而,[8]僅針對(duì)在譯文中觀察到的問(wèn)題做優(yōu)化,并未從根本上解決問(wèn)題。由于序列級(jí)指標(biāo)的離散性,[9]無(wú)法準(zhǔn)確求得損失函數(shù)的梯度,需要使用強(qiáng)化學(xué)習(xí)算法來(lái)做梯度估計(jì)。另外,[9]所用的強(qiáng)化學(xué)習(xí)算法速度較慢,僅能用于模型的微調(diào)階段。
方 法
針對(duì)交叉熵?fù)p失不準(zhǔn)確的問(wèn)題,本文為非自回歸模型提出了一種基于n元組袋(Bag-of-Ngrams, BoN)的訓(xùn)練目標(biāo),希望能最小化模型與參考譯文間n元組袋的差異。該訓(xùn)練目標(biāo)在n元組的層面上評(píng)估預(yù)測(cè)結(jié)果,因此能夠建模序列依賴(lài)關(guān)系;直接對(duì)n元組袋做優(yōu)化,對(duì)絕對(duì)位置不敏感,不受對(duì)齊約束的限制。如圖三所示,在預(yù)測(cè)結(jié)果未與參考譯文對(duì)齊時(shí),該訓(xùn)練目標(biāo)也能準(zhǔn)確地評(píng)估翻譯質(zhì)量。
圖三:基于n元組袋的訓(xùn)練目標(biāo)
本文提出的BoN訓(xùn)練目標(biāo)對(duì)模型與參考譯文間的n元組袋差異做定量評(píng)估,從而鼓勵(lì)模型生成更接近參考譯文的翻譯結(jié)果,下面對(duì)其做具體描述,主要分為三個(gè)步驟:BoN的定義和計(jì)算、BoN距離的定義和計(jì)算和訓(xùn)練方法。
BoN的定義和計(jì)算 假設(shè)詞表大小為V,對(duì)于一個(gè)長(zhǎng)度為T(mén)的句子Y=(y1,……,yn),一般都將它的n元組袋定義為一個(gè)長(zhǎng)度為V^n的向量,記為BoNY,它的每一維代表某一n元組g=(g1,……,gn)的出現(xiàn)次數(shù),如下所示:
其中,1{}為指示函數(shù),若條件成立則取值為1,否則為0。對(duì)神經(jīng)機(jī)器翻譯模型來(lái)說(shuō),由于其建模了譯文在整個(gè)譯文空間上的概率分布,上面的定義并不直接適用。因此,我們考慮所有可能的譯文,將每個(gè)譯文的BoN按概率加權(quán),用BoN的期望值來(lái)定義模型的BoN。假設(shè)模型參數(shù)為θ,從原文X到譯文Y的翻譯概率為P(Y|X, θ),則模型的BoNθ定義如下:
(2)式中對(duì)模型BoN的定義方法非常自然,但它也存在一個(gè)很大的問(wèn)題:搜索空間是指數(shù)大小的,難以對(duì)其進(jìn)行計(jì)算。我們利用非自回歸模型獨(dú)立預(yù)測(cè)各位置翻譯概率的特性,對(duì)(2)式做如下變換:
注意到,(3)式中2到3行的變換利用到了非自回歸模型獨(dú)立建模概率的特性,因此(3)式的推導(dǎo)僅對(duì)非自回歸模型有效。通過(guò)(3)式的變換,我們就不再需要遍歷所有可能譯文,匯總所有位置上n元組g的概率就能求得g的期望出現(xiàn)次數(shù)BoNθ(g)。下圖以二元組g=(‘get’,‘up’)為例,展示了模型BoNθ的計(jì)算方法。
圖四:對(duì)2元組(‘get’, ‘up’) 的期望出現(xiàn)次數(shù)的計(jì)算
BoN距離的定義和計(jì)算 在完成對(duì)參考譯文和模型的BoN定義后,我們可以選擇一種距離指標(biāo)來(lái)衡量?jī)烧連oN的差距,常用的距離指標(biāo)有L1距離、L2距離、余弦距離等。注意到,n元組袋的長(zhǎng)度為V^n,盡管我們?cè)谏衔闹袑?duì)其每一維BoNθ(g)的計(jì)算做了簡(jiǎn)化,但若要進(jìn)行V^n次的計(jì)算來(lái)求得整個(gè)BoN向量,所需的計(jì)算量和存儲(chǔ)空間也是非常巨大的。因此,我們希望選擇一種合適的距離指標(biāo),使我們不需要計(jì)算整個(gè)BoNθ向量,進(jìn)一步簡(jiǎn)化計(jì)算。從上文(1)、(2)式的定義看,模型的BoNθ向量是稠密的,每個(gè)位置均為非零值;句子的BoNY向量是稀疏的,僅有幾個(gè)位置為非零值。利用這個(gè)性質(zhì),我們可以對(duì)兩個(gè)向量間L1距離的計(jì)算做簡(jiǎn)化。首先,假設(shè)譯文長(zhǎng)度為T(mén),則兩個(gè)BoN向量的L1模長(zhǎng)均為T(mén)-n+1:
基于此,兩個(gè)BoN向量間的L1距離如下所示:
直觀上看,(6)式中的min部分代表了模型與參考譯文在n元組層面上的匹配數(shù),匹配數(shù)越大,則兩者BoN向量間的L1距離越小。利用BoNY向量的稀疏性,min函數(shù)的大部分取值均為0,我們只需考慮BoNY非零的幾處位置,計(jì)算模型與參考譯文中n元組的匹配總數(shù),從而計(jì)算出兩者n元組袋的距離BoN-L1。訓(xùn)練方法 上文中,我們給出了BoN的定義和快速計(jì)算BoN間L1距離的方法。在本節(jié),我們將對(duì)用BoN距離訓(xùn)練非自回歸模型的方法做具體介紹。首先,為了保證訓(xùn)練過(guò)程的穩(wěn)定性,我們將BoN距離歸一化后作為損失函數(shù):
與基于強(qiáng)化學(xué)習(xí)的序列級(jí)訓(xùn)練方法[9]類(lèi)似,我們可以先用交叉熵?fù)p失預(yù)訓(xùn)練非自回歸模型,再用BoN損失對(duì)模型進(jìn)行微調(diào),我們將這種方法命名為BoN-FT。
另外,由于本文提出的BoN損失在計(jì)算上非常快速且直接可導(dǎo),我們也可以將BoN損失與交叉熵?fù)p失加權(quán)來(lái)聯(lián)合訓(xùn)練非自回歸模型,這種方法被命名為BoN-Joint。
結(jié)合上面兩種方法,我們可以先對(duì)模型進(jìn)行聯(lián)合訓(xùn)練,再單獨(dú)用BoN損失微調(diào)模型,這種方法被命名為BoN-Joint+FT。
實(shí) 驗(yàn)
本文在WMT14 En-de、WMT16 En-Ro、IWSLT16 En-de三個(gè)數(shù)據(jù)集、五個(gè)翻譯方向上進(jìn)行了實(shí)驗(yàn),結(jié)果如圖五所示。
圖五:三個(gè)數(shù)據(jù)集上的實(shí)驗(yàn),所提方法相對(duì)基線模型和強(qiáng)化學(xué)習(xí)方法均有明顯提升
對(duì)比BoN-FT與Reinforce-NAT[9],可以看到本文提出的BoN損失在序列級(jí)訓(xùn)練上效果更好、速度更快。BoN-Joint方法相對(duì)BoN-FT也有明顯提升,表明讓BoN損失全程參與訓(xùn)練的必要性,這也是BoN損失相對(duì)強(qiáng)化學(xué)習(xí)方法的優(yōu)勢(shì):強(qiáng)化學(xué)習(xí)方法訓(xùn)練速度過(guò)慢,一般只能用于微調(diào)模型。效果最好的為BoN-Joint+FT,該方法通過(guò)在最后階段的微調(diào),相對(duì)BoN-Joint也有微小提升,在WMT14 En-de數(shù)據(jù)集上達(dá)到了約5個(gè)BLEU值的提升。
本文還對(duì)BoN損失和交叉熵?fù)p失與翻譯質(zhì)量的相關(guān)性做了實(shí)驗(yàn)驗(yàn)證。我們?cè)赪MT14 En->De的開(kāi)發(fā)集上進(jìn)行實(shí)驗(yàn),將開(kāi)發(fā)集的3000個(gè)句子隨機(jī)分為100組,每組30句。我們粗略地認(rèn)為BLEU值能夠表示模型的翻譯質(zhì)量,計(jì)算模型在各組上的BoN損失、交叉熵?fù)p失和翻譯結(jié)果的BLEU值,并分別求出BoN損失、交叉熵?fù)p失與BLEU值的相關(guān)系數(shù),如表一所示。
表一:交叉熵?fù)p失和BoN損失與翻譯質(zhì)量的相關(guān)系數(shù)
表一顯示,在n=2的情況下,BoN損失與翻譯質(zhì)量的相關(guān)性最好,且顯著強(qiáng)于交叉熵?fù)p失。因此,BoN損失能更準(zhǔn)確地評(píng)估模型的輸出結(jié)果,適用于非自回歸模型的訓(xùn)練。我們也在不同句長(zhǎng)情況下對(duì)相關(guān)性進(jìn)行了分析,將開(kāi)發(fā)集按句長(zhǎng)分為兩組,每組包含1500個(gè)句子,并按上述方法計(jì)算BoN損失、交叉熵?fù)p失在長(zhǎng)句組和短句組上的相關(guān)性,如表二所示。
表二:在不同句長(zhǎng)下,交叉熵?fù)p失和BoN損失與翻譯質(zhì)量的相關(guān)系數(shù)
表二顯示,交叉熵?fù)p失在句長(zhǎng)增大時(shí),與翻譯質(zhì)量的相關(guān)性迅速下降,而B(niǎo)oN損失在長(zhǎng)句下仍能保持較高的相關(guān)性。這種現(xiàn)象與我們的預(yù)期完全相符,在長(zhǎng)句情況下,類(lèi)似圖二的不對(duì)齊現(xiàn)象更加容易發(fā)生,因此交叉熵?fù)p失的準(zhǔn)確性會(huì)進(jìn)一步下降。BoN損失基于n元組袋來(lái)評(píng)估模型輸出,因此不受不對(duì)齊現(xiàn)象的影響。
結(jié) 論
本文針對(duì)非自回歸模型中交叉熵?fù)p失不準(zhǔn)確的問(wèn)題,提出了基于n元組袋的BoN損失。實(shí)驗(yàn)顯示,BoN損失與翻譯質(zhì)量的相關(guān)性更強(qiáng),用其對(duì)非自回歸模型進(jìn)行訓(xùn)練,能顯著提升模型的翻譯效果。在未來(lái)的工作中,一方面,我們希望能更進(jìn)一步地對(duì)非自回歸模型的訓(xùn)練方法進(jìn)行探究;另一方面,我們希望能不局限于非自回歸模型,將本文所提的BoN損失應(yīng)用到自然語(yǔ)言處理的更多任務(wù)中。
雷鋒網(wǎng)報(bào)道。
更多AAAI 2020解讀論文請(qǐng)參閱雷鋒網(wǎng)(公眾號(hào):雷鋒網(wǎng))其他文章:https://www.leiphone.com/special/custom/meetingVideo.html?from=SY