肖妮妮,金 暢,段湘煜
(蘇州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院自然語(yǔ)言處理實(shí)驗(yàn)室,江蘇 蘇州 215006)
近年來(lái),隨著神經(jīng)機(jī)器翻譯NMT(Neural Machine Translation)[1-3]的出現(xiàn),機(jī)器翻譯的質(zhì)量得到了進(jìn)一步的提升,甚至在一些特定領(lǐng)域,機(jī)器翻譯幾乎達(dá)到了人類(lèi)翻譯相當(dāng)?shù)乃剑@得益于神經(jīng)機(jī)器翻譯基于編碼器-解碼器框架的深度神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)和注意力(Attention)[4]機(jī)制。相比于傳統(tǒng)的統(tǒng)計(jì)機(jī)器翻譯SMT(Statistical Machine Translation)[5-9]系統(tǒng),這樣的框架有許多吸引人的特性,例如較少的人工特征和先驗(yàn)領(lǐng)域知識(shí)的需求。但是,盡管神經(jīng)機(jī)器翻譯在過(guò)去的幾年中取得了飛速的發(fā)展和進(jìn)步,大多數(shù)神經(jīng)機(jī)器翻譯系統(tǒng)仍然存在一個(gè)共同的缺點(diǎn):其性能?chē)?yán)重依賴(lài)高質(zhì)量的內(nèi)領(lǐng)域數(shù)據(jù)。然而,即使在互聯(lián)網(wǎng)高度發(fā)達(dá)的今天,在絕大多數(shù)的領(lǐng)域中,通常也難以找到高質(zhì)量、大規(guī)模、覆蓋率廣的平行語(yǔ)料庫(kù),這導(dǎo)致神經(jīng)機(jī)器翻譯模型在低資源語(yǔ)言和特定領(lǐng)域上的翻譯效果與大眾對(duì)機(jī)器翻譯的期望仍然相差甚遠(yuǎn)。
在所有領(lǐng)域中收集大量平行數(shù)據(jù)是很昂貴的,并且在許多情況下是不可能的。因此,有必要探索有效的方法來(lái)訓(xùn)練能夠較好地推廣到新領(lǐng)域的模型。為了有效地克服神經(jīng)機(jī)器翻譯中的數(shù)據(jù)稀疏和領(lǐng)域多樣性問(wèn)題,研究人員也探索了很多不同的解決方案。Chu等[10]指出,機(jī)器翻譯中領(lǐng)域適應(yīng)主要有2類(lèi)方法:以數(shù)據(jù)為中心(Data Centric)和以模型為中心(Model Centric)。以模型為中心的方法對(duì)模型架構(gòu)進(jìn)行顯式的改變,例如Britz等[11]提出了聯(lián)合學(xué)習(xí)領(lǐng)域辨別和翻譯2個(gè)任務(wù)、Kobus等[12]提出了通過(guò)添加標(biāo)簽和單詞特征進(jìn)行領(lǐng)域控制等方法來(lái)提高模型領(lǐng)域適應(yīng)的能力。但是在許多實(shí)際情況下,研究人員是不知道待使用數(shù)據(jù)的來(lái)源或背景的,很多文本沒(méi)有天然的領(lǐng)域標(biāo)簽,而且一個(gè)句子可能被合理地認(rèn)為屬于多個(gè)領(lǐng)域,因此基于領(lǐng)域區(qū)分的方法存在局限性。以數(shù)據(jù)為中心的方法主要是使用內(nèi)領(lǐng)域和外領(lǐng)域平行數(shù)據(jù)相結(jié)合的方法進(jìn)行有監(jiān)督領(lǐng)域適應(yīng)[13,14],或者利用內(nèi)領(lǐng)域單語(yǔ)數(shù)據(jù)生成偽平行語(yǔ)料進(jìn)行無(wú)監(jiān)督學(xué)習(xí)[15,16]。其中最具有代表性的策略是使用反向翻譯[15]創(chuàng)建內(nèi)領(lǐng)域目標(biāo)語(yǔ)句的偽平行語(yǔ)料。然而,盡管反向翻譯方法使用廣泛且有效,其成功的關(guān)鍵在于偽平行數(shù)據(jù)的質(zhì)量,但是它不針對(duì)領(lǐng)域或語(yǔ)言提供額外的輔助信息,跨領(lǐng)域的翻譯中不可避免地包含大量噪聲和錯(cuò)誤,這些將會(huì)在迭代反向翻譯的過(guò)程中被不斷積累和放大,從而影響到神經(jīng)機(jī)器翻譯模型的訓(xùn)練。
針對(duì)這些問(wèn)題,本文分別從以數(shù)據(jù)為中心和以模型為中心2個(gè)角度提出2種簡(jiǎn)單有效的優(yōu)化策略。(1)以模型為中心,本文提出了更加合理的預(yù)訓(xùn)練策略,通過(guò)加入一個(gè)神經(jīng)網(wǎng)絡(luò)輔助模型學(xué)習(xí)外領(lǐng)域數(shù)據(jù)更為通用的文本表示,提高模型的通用性和泛化性,縮小不同領(lǐng)域語(yǔ)言間的差異,使得在翻譯內(nèi)領(lǐng)域句子時(shí)譯文質(zhì)量更高,從而在跨領(lǐng)域的差異問(wèn)題上表現(xiàn)更好。(2)以數(shù)據(jù)為中心,本文通過(guò)擴(kuò)展反向翻譯方法,提出了一種融合情感信息作為數(shù)據(jù)篩選后驗(yàn)的方法,來(lái)提高目標(biāo)領(lǐng)域單語(yǔ)數(shù)據(jù)反向翻譯譯文的準(zhǔn)確性,緩解偽數(shù)據(jù)中的噪聲問(wèn)題,進(jìn)一步提升了翻譯質(zhì)量。
目前,有很多關(guān)于有監(jiān)督領(lǐng)域適應(yīng)的相關(guān)研究,其中的數(shù)據(jù)設(shè)置大多是有大量的外領(lǐng)域平行數(shù)據(jù)和很少量的內(nèi)領(lǐng)域平行數(shù)據(jù)。Luong等[13]提出在外領(lǐng)域語(yǔ)料庫(kù)上訓(xùn)練模型,并用小規(guī)模內(nèi)領(lǐng)域平行數(shù)據(jù)進(jìn)行微調(diào)(Fine-Tuning),以此縮小領(lǐng)域間的差異。Britz等[11]沒(méi)有直接將外領(lǐng)域數(shù)據(jù)和內(nèi)領(lǐng)域數(shù)據(jù)進(jìn)行混合,而是通過(guò)聯(lián)合學(xué)習(xí)區(qū)分域任務(wù)和翻譯任務(wù),以此來(lái)規(guī)避跨領(lǐng)域問(wèn)題。Joty等[17,18]通過(guò)在外領(lǐng)域平行語(yǔ)料中選擇出與內(nèi)領(lǐng)域語(yǔ)句更接近的語(yǔ)句,并給予更高的權(quán)重,來(lái)解決領(lǐng)域適應(yīng)問(wèn)題。本文提出的方法主要解決完全沒(méi)有內(nèi)領(lǐng)域平行語(yǔ)句的領(lǐng)域適應(yīng)問(wèn)題,這是一個(gè)嚴(yán)格的無(wú)監(jiān)督設(shè)置。
無(wú)監(jiān)督機(jī)器翻譯領(lǐng)域適應(yīng)也可以分為以數(shù)據(jù)為中心和以模型為中心2類(lèi)方法。在先前的工作中,以數(shù)據(jù)為中心的策略吸引了眾多研究人員的關(guān)注,并取得了頗豐的成效。早期以數(shù)據(jù)為中心的研究有Schwenk等[19,20]使用SMT系統(tǒng)翻譯源語(yǔ)言單語(yǔ)句子,并使用合成的偽平行數(shù)據(jù)繼續(xù)訓(xùn)練翻譯系統(tǒng)。近年來(lái)最具有代表性且使用廣泛的方法莫過(guò)于反向翻譯[15]和基于復(fù)制的方法[16]。在領(lǐng)域適應(yīng)中,反向翻譯是使用外領(lǐng)域的平行數(shù)據(jù)訓(xùn)練基礎(chǔ)的目標(biāo)語(yǔ)言到源語(yǔ)言的反向翻譯系統(tǒng);然后使用該系統(tǒng)對(duì)目標(biāo)端的單語(yǔ)數(shù)據(jù)進(jìn)行翻譯,以此構(gòu)建偽平行數(shù)據(jù)?;趶?fù)制的方法是由Currey等[16]提出的,其主要思想是將目標(biāo)端內(nèi)領(lǐng)域的單語(yǔ)語(yǔ)料復(fù)制一份作為源端數(shù)據(jù),與其構(gòu)成偽平行數(shù)據(jù)。然而,這些方法都沒(méi)有考慮語(yǔ)言的特性,在跨領(lǐng)域翻譯時(shí)偽平行語(yǔ)料的質(zhì)量堪憂(yōu),導(dǎo)致使用偽平行句對(duì)微調(diào)后的模型的翻譯結(jié)果仍差強(qiáng)人意。
以模型為中心的方法側(cè)重于對(duì) NMT 模型架構(gòu)特征進(jìn)行改進(jìn),目前較主流的方向是將語(yǔ)言模型等多任務(wù)學(xué)習(xí)集成到 NMT 模型中。Gulcehre等[21]提出融合語(yǔ)言模型 LM(Language Modeling)和NMT模型,但該方法在推理過(guò)程中需要查詢(xún)2個(gè)模型,效率低且已被證明其效果不如以數(shù)據(jù)為中心的方法。Dou等[22]提出了基于領(lǐng)域感知特征嵌入的無(wú)監(jiān)督領(lǐng)域適應(yīng)方法,通過(guò)將特定領(lǐng)域的特征嵌入到神經(jīng)機(jī)器翻譯編碼端的每一層中,并結(jié)合語(yǔ)言模型進(jìn)行多任務(wù)學(xué)習(xí)來(lái)訓(xùn)練特定領(lǐng)域的特征。這些方法通常需要消耗較多的計(jì)算資源和訓(xùn)練時(shí)間,參數(shù)龐多而冗余。
本文結(jié)合模型和數(shù)據(jù)2個(gè)方面,致力于更好地處理NMT無(wú)監(jiān)督適應(yīng)任務(wù)。具體而言,為了使模型更好地進(jìn)行領(lǐng)域自適應(yīng),本文設(shè)計(jì)了一種新型聯(lián)合訓(xùn)練框架,提出了更加合理的預(yù)訓(xùn)練策略,通過(guò)加入一個(gè)輔助的特征學(xué)習(xí)網(wǎng)絡(luò),學(xué)習(xí)外領(lǐng)域中更通用的文本抽象信息;同時(shí)引入KL(Kullback-Leibler)正則項(xiàng),使模型的穩(wěn)定性和魯棒性得到增強(qiáng),以更好地適應(yīng)跨領(lǐng)域間的差異問(wèn)題。同時(shí),結(jié)合語(yǔ)句的情感特征進(jìn)行后驗(yàn)篩選,利用情感信息對(duì)偽訓(xùn)練數(shù)據(jù)進(jìn)行降噪,幫助訓(xùn)練神經(jīng)機(jī)器翻譯模型,使模型在目標(biāo)領(lǐng)域的翻譯性能得以?xún)?yōu)化。本文方法充分利用了外領(lǐng)域的平行數(shù)據(jù)和目標(biāo)領(lǐng)域的單語(yǔ)數(shù)據(jù),且提出的基于數(shù)據(jù)的方法不依賴(lài)于具體的模型架構(gòu),這使得本文提出的2種改進(jìn)策略是正交的,可以相互結(jié)合進(jìn)一步提高翻譯的效果。
Transformer模型架構(gòu)是由Vaswani等[4]首先提出的,屬于編碼器-解碼器結(jié)構(gòu),完全基于注意力機(jī)制進(jìn)行序列建模。它是機(jī)器翻譯中最成功且典型的NMT系統(tǒng)之一,同時(shí)具有代表性和一般性。
Transformer的編碼器端和解碼器端分別是由N層(N默認(rèn)為6)相同的網(wǎng)絡(luò)層組成。編碼器端的每一層都包含2個(gè)子層:多頭自注意力層和全連接的前饋網(wǎng)絡(luò)層,對(duì)每一個(gè)子層的輸出都進(jìn)行殘差連接(Residual Connection)[23],然后是層正則化(Layer Normalization)[24]處理。因此,每一個(gè)子層的輸出可以表達(dá)為layernorm(x+sublayer(x)),其中,layernorm(*)表示層正則化函數(shù)的輸出,sublayer(x)表示子層的輸出,x表示當(dāng)前子層輸入的隱藏層狀態(tài)。相同地,解碼器也堆疊N層相同的網(wǎng)絡(luò)層,同樣包含自注意力子層、前饋網(wǎng)絡(luò)、殘差連接及層正則化模塊,此外解碼器又引入編碼-解碼注意力,該子層用于對(duì)編碼器最后一層的輸出進(jìn)行注意力權(quán)重計(jì)算。
Transformer模型采用的注意力機(jī)制為多頭注意力機(jī)制,即是將所有查詢(xún)(Query)構(gòu)成的矩陣Q、所有鍵值(Key)構(gòu)成的矩陣K和所有值(Values)構(gòu)成的矩陣V按照嵌入維度切分為h個(gè)注意力頭(h默認(rèn)為8),分別計(jì)算每個(gè)頭的注意力結(jié)果,計(jì)算公式如式(1)和式(2)所示。最后把每一個(gè)注意力頭產(chǎn)生的輸出再進(jìn)行拼接,計(jì)算公式如式(3)所示,通過(guò)多頭注意力機(jī)制可以獲得多個(gè)視角空間的不同表征信息。
(1)
(2)
MultiHead=Concat(head1,…,headh)Wo
(3)
Transformer中使用 Adam[25]作為優(yōu)化器,使用添加平滑標(biāo)簽的交叉熵[26]作為損失函數(shù),通過(guò)最小化損失函數(shù),使得模型的輸出概率分布更接近于真實(shí)值。
由于各個(gè)領(lǐng)域的表達(dá)風(fēng)格和語(yǔ)言特點(diǎn)有差異,如何讓神經(jīng)網(wǎng)絡(luò)翻譯模型在領(lǐng)域間更好地自適應(yīng)是一個(gè)關(guān)鍵問(wèn)題。無(wú)監(jiān)督領(lǐng)域適應(yīng)方法通過(guò)使用目標(biāo)領(lǐng)域的單語(yǔ)數(shù)據(jù)構(gòu)建偽平行語(yǔ)料訓(xùn)練模型,該方法因具有較少的局限性而得到廣泛應(yīng)用,但偽數(shù)據(jù)質(zhì)量較差,導(dǎo)致實(shí)際學(xué)習(xí)到的模型效果仍不理想。本文在Transformer的基礎(chǔ)上,添加一個(gè)神經(jīng)網(wǎng)絡(luò)獲取語(yǔ)言中更豐富的表征信息,并引入KL散度正則項(xiàng)增強(qiáng)信息的一致性,使得模型的魯棒性得到提升,同時(shí)提高內(nèi)領(lǐng)域翻譯的準(zhǔn)確性。隨后使用情感信息作為數(shù)據(jù)后驗(yàn)篩選,進(jìn)一步提高偽平行語(yǔ)料的質(zhì)量,改善模型的翻譯效果。
本文在Transformer基礎(chǔ)上加入了一個(gè)新的網(wǎng)絡(luò)模塊,對(duì)基礎(chǔ)模型中源端和目標(biāo)端的網(wǎng)絡(luò)隱藏狀態(tài)采用加入的特征學(xué)習(xí)網(wǎng)絡(luò)進(jìn)一步提取文本特征,學(xué)習(xí)到更為通用的抽象信息,在模型學(xué)習(xí)其他基礎(chǔ)文本信息的同時(shí)與之相結(jié)合,提高模型的泛化能力,為模型更好地學(xué)習(xí)提供支持。
與此同時(shí),所提取出的源端和目標(biāo)端的抽象特征通過(guò)Softmax層后分別得到其概率分布,再在模型的損失函數(shù)中加入KL正則項(xiàng)計(jì)算,這樣可以增加源端和目標(biāo)端特征概率分布的一致性,拉近雙語(yǔ)語(yǔ)義特征相似度,使得模型的魯棒性和泛化能力得以提高,從而在面對(duì)跨領(lǐng)域的差異問(wèn)題時(shí)可以有更好的表現(xiàn)。改進(jìn)后的模型結(jié)構(gòu)如圖1所示。
Figure 1 Overall structure of the improved model
具體來(lái)說(shuō),給定源端序列X=(x1,…,xTx),Tx為源端序列長(zhǎng)度,源端序列經(jīng)過(guò)編碼器可以被編碼為H=(h1,…,hTx),hi表示源端第i個(gè)詞對(duì)應(yīng)的嵌入向量。同樣地,目標(biāo)端序列Y=(y1,…,yTy),Ty為目標(biāo)序列長(zhǎng)度,目標(biāo)端序列經(jīng)過(guò)解碼器后可以表達(dá)為Z=(z1,…,zTy),zi表示目標(biāo)端第i個(gè)詞對(duì)應(yīng)的嵌入向量。通過(guò)編碼后,每個(gè)隱藏狀態(tài)都包含了整句中上下文的相關(guān)信息,本文采用平均池化將每個(gè)句子的隱藏狀態(tài)轉(zhuǎn)換成一個(gè)固定長(zhǎng)度的嵌入向量,再共享一個(gè)線(xiàn)性網(wǎng)絡(luò)層來(lái)映射此嵌入向量,得到更為抽象的特征向量,所獲取的源句和目標(biāo)句的特征向量分別記作hout和zout,如式(4)和式(5)所示:
(4)
(5)
其中,W、b是所添加的特征學(xué)習(xí)網(wǎng)絡(luò)的參數(shù),在訓(xùn)練過(guò)程中不斷學(xué)習(xí)優(yōu)化。
在引入KL散度計(jì)算后,模型的訓(xùn)練目標(biāo)表達(dá)如式(6)所示:
(6)
其中,第1項(xiàng)是標(biāo)準(zhǔn)的訓(xùn)練雙語(yǔ)數(shù)據(jù)的目標(biāo)函數(shù),第2項(xiàng)是本文引入的提升模型魯棒性的正則項(xiàng),θ是模型中的所有參數(shù)。具體計(jì)算公式如式(7)~式(9)所示:
lossKL=KL(S(x)‖T(y))=
EX~S(x),Y~T(y)(logS(x)-logT(y))
(7)
S(x)=softmax(hout)
(8)
T(y)=softmax(zout)
(9)
其中,S(x)是源端經(jīng)過(guò)特征提取的概率分布,T(y)代表目標(biāo)端的概率分布,hout是表征源句的特征隱藏狀態(tài)向量,zout是代表目標(biāo)句的特征隱藏狀態(tài)向量。計(jì)算二者的KL散度的意義就是希望源端的分布可以向理想的目標(biāo)端靠攏,最終通過(guò)并行融合的方式提升模型的訓(xùn)練效果,增強(qiáng)模型的穩(wěn)定性和泛化力。
語(yǔ)言通常同時(shí)帶有2種不同類(lèi)型的信息:顯性的語(yǔ)義信息和副隱性的情緒信息?;A(chǔ)Transformer模型缺少對(duì)語(yǔ)言情感表征的挖掘,而關(guān)注語(yǔ)言中的情感信息可以為模型更好地學(xué)習(xí)提供支持。在現(xiàn)有的基礎(chǔ)模型中,有很多翻譯的結(jié)果與源句意思大相徑庭,這樣的翻譯必然是難以接受的。產(chǎn)生此現(xiàn)象的一大原因是句子的情感傾向相差甚遠(yuǎn),如表1所示。
Table 1 Example of translation
受此啟發(fā),本文使用情感信息作為數(shù)據(jù)后驗(yàn)篩選,以提高回譯數(shù)據(jù)的質(zhì)量,進(jìn)一步改善翻譯效果。具體來(lái)說(shuō),本文使用情感分析對(duì)偽平行的源句和目標(biāo)句進(jìn)行情感傾向打分,當(dāng)源句與目標(biāo)句的情感傾向差距較大時(shí)認(rèn)為是翻譯質(zhì)量差的語(yǔ)句,從而不使用該句進(jìn)行訓(xùn)練,避免錯(cuò)誤在訓(xùn)練過(guò)程中被不斷積累和放大,緩解偽數(shù)據(jù)中的噪聲問(wèn)題。
算法1針對(duì)無(wú)監(jiān)督神經(jīng)機(jī)器翻譯的領(lǐng)域適應(yīng)算法
輸出:神經(jīng)機(jī)器翻譯的參數(shù)模型Mx→y,My→x。
步驟1procedure 預(yù)訓(xùn)練
步驟2分別用隨機(jī)參數(shù)θx→y和θy→x初始化翻譯模型Mx→y和My→x;
步驟4end procedure
步驟5procedure 領(lǐng)域適應(yīng)
步驟8用情感分類(lèi)器分別對(duì)X′和Y′進(jìn)行篩選;
步驟9將篩選后的Y′與外領(lǐng)域平行語(yǔ)料D進(jìn)行混合來(lái)微調(diào)模型Mx→y;
步驟10將篩選后的X′與外領(lǐng)域平行語(yǔ)料D進(jìn)行混合來(lái)微調(diào)模型My→x;
步驟11end procedure
基礎(chǔ)的源語(yǔ)言到目標(biāo)語(yǔ)言和目標(biāo)語(yǔ)言到源語(yǔ)言的翻譯系統(tǒng)使用的訓(xùn)練數(shù)據(jù)集是從 LDC(Linguistic Data Consortium)里抽取的125萬(wàn)句中英平行語(yǔ)句對(duì),測(cè)試集是采用美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究院2002年的數(shù)據(jù)集NIST02、NIST03、NIST04、NIST05和NIST08,驗(yàn)證集是NIST06。內(nèi)領(lǐng)域單語(yǔ)數(shù)據(jù)選擇中英的TED2020數(shù)據(jù),包含39.9萬(wàn)個(gè)語(yǔ)句,本文將其劃分為包含39.3萬(wàn)句的訓(xùn)練集(分別當(dāng)作單語(yǔ)使用),以及分別包含3 000句的測(cè)試集和3 000句的驗(yàn)證集。對(duì)所有的中英語(yǔ)料,都分別進(jìn)行了BPE(Byte Pair Encoding)[27]編碼處理,BPE長(zhǎng)度為32 000次合并操作,中文詞表長(zhǎng)度為4.2萬(wàn),英文詞表長(zhǎng)度為3.1萬(wàn),使用“〈UNK〉”對(duì)不在詞表中的低頻詞進(jìn)行替換。
基準(zhǔn)模型采用開(kāi)源代碼 Fairseq[28]實(shí)現(xiàn),將模型設(shè)置為T(mén)ransformer,編碼器和解碼器層數(shù)均設(shè)置為6,每層中模塊的輸出維度和詞嵌入向量的維度均設(shè)置為 512,神經(jīng)元的隨機(jī)失活率dropout設(shè)置為 0.3,學(xué)習(xí)率設(shè)置為0.000 5,注意力層中多頭注意力機(jī)制的頭數(shù)設(shè)置為 8,所有的實(shí)驗(yàn)均使用了標(biāo)簽平滑且值為0.1,全采用Adam優(yōu)化器和逆平方根學(xué)習(xí)率優(yōu)化,在解碼時(shí)采用波束搜索(Beam Search)的解碼方式,搜索寬度設(shè)置為5,其他未提及的基本超參數(shù)均與文獻(xiàn)[4]的默認(rèn)參數(shù)選項(xiàng)相同。所有實(shí)驗(yàn)均保持相同的參數(shù)設(shè)置,所加入的KL項(xiàng)中超參數(shù)均默認(rèn)為1,模型的訓(xùn)練和測(cè)試均基于NVIDIA GeForce GTX 1080Ti GPU。關(guān)于數(shù)據(jù)后驗(yàn)篩選,本文基于Stanford(https:github.com/stanfordnlp/CoreNLP)提供的情感分析工具獲取句子的情感傾向。
由于該方法涉及到源語(yǔ)言到目標(biāo)語(yǔ)言和目標(biāo)語(yǔ)言到源語(yǔ)言2個(gè)翻譯方向的模型,因此實(shí)驗(yàn)表格將會(huì)同時(shí)報(bào)告這2個(gè)模型的實(shí)驗(yàn)結(jié)果。在所有實(shí)驗(yàn)中,使用BLEU作為翻譯質(zhì)量的評(píng)測(cè)指標(biāo),并使用multi-bleu.perl(https://github.com/mo-ses-smt/mosesdecoder/blob/master/scripts/ge-neric/multi-bleu.perl)腳本進(jìn)行評(píng)測(cè)。
5.3.1 模型改進(jìn)方法結(jié)果分析
表2中列出了在新聞?lì)I(lǐng)域 LDC 平行數(shù)據(jù)集上基準(zhǔn)模型和本文改進(jìn)模型的實(shí)驗(yàn)結(jié)果比較?!盎鶞?zhǔn)模型”是本文第3節(jié)所介紹的基礎(chǔ)Transformer,使用LDC數(shù)據(jù)訓(xùn)練得到;“加入特征學(xué)習(xí)網(wǎng)絡(luò)模型”是依據(jù)本文4.1節(jié)方法對(duì)基礎(chǔ)模型進(jìn)行了改進(jìn)所訓(xùn)練的。對(duì)于每個(gè)測(cè)試集,中-英方向包含 4 個(gè)參考譯文,英-中方向只有 1 個(gè)參考譯文。
根據(jù)表2可知,在中-英和英-中2個(gè)方向上,翻譯質(zhì)量在各個(gè)測(cè)試集上均有不同程度的提升,中-英和英-中方向的平均BLEU分?jǐn)?shù)分別提升了0.62和0.51,這表明增強(qiáng)源端和目標(biāo)端的概率分布的一致性,學(xué)習(xí)語(yǔ)義中更通用抽象的特征有利于提高模型的泛化能力,改善翻譯模型的性能。
5.3.2 數(shù)據(jù)后驗(yàn)篩選方法結(jié)果分析
為了驗(yàn)證本文提出的基于情感信息的數(shù)據(jù)后驗(yàn)篩選的有效性,在實(shí)驗(yàn)中與不使用情感后驗(yàn)篩選的方法進(jìn)行對(duì)比。反向翻譯方法已被證明是一種非常有效、穩(wěn)定的數(shù)據(jù)增強(qiáng)策略,能夠充分開(kāi)發(fā)目標(biāo)語(yǔ)言的單語(yǔ)語(yǔ)料。本文把反向翻譯方法應(yīng)用到領(lǐng)域適應(yīng)中,并作為強(qiáng)基線(xiàn)來(lái)驗(yàn)證本文改進(jìn)模型的有效性。在反向翻譯的對(duì)內(nèi)領(lǐng)域的偽平行數(shù)據(jù)和外領(lǐng)域的真實(shí)平行語(yǔ)料的拼接實(shí)驗(yàn)中,混合比例遵循文獻(xiàn)[15]的結(jié)論,使用數(shù)據(jù)比例為1∶1的混合策略。實(shí)驗(yàn)結(jié)果如表3所示。
Table 2 BLEU scores of different models on LDC dataset
Table 3 Comparsion with other models in TED field
表3中,“基準(zhǔn)模型”是使用外領(lǐng)域平行語(yǔ)料訓(xùn)練的基礎(chǔ)Transformer模型,直接對(duì)內(nèi)領(lǐng)域語(yǔ)料進(jìn)行翻譯;“反向翻譯”是Sennrich等[15]提出的利用單語(yǔ)語(yǔ)料的方法,在基礎(chǔ)模型上使用內(nèi)領(lǐng)域偽平行語(yǔ)料進(jìn)行微調(diào),目標(biāo)端是真實(shí)數(shù)據(jù),源端是偽數(shù)據(jù)。
“基于情感后驗(yàn)篩選”是本文提出的方法??梢钥闯?,使用情感后驗(yàn)篩選的確可以改善翻譯模型的性能,在2個(gè)語(yǔ)言方向上都有一定程度的提升。相比未經(jīng)過(guò)篩選的39萬(wàn)對(duì)訓(xùn)練數(shù)據(jù),利用經(jīng)過(guò)情感后驗(yàn)篩選得到的15萬(wàn)對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練的效果更好,這表明挖掘并利用語(yǔ)句的情感信息能夠有效地去除偽數(shù)據(jù)中質(zhì)量過(guò)差的翻譯,從而降低噪聲,幫助模型更好地訓(xùn)練。
5.3.3 綜合策略實(shí)驗(yàn)結(jié)果分析
最后綜合本文提出的以模型為中心和以數(shù)據(jù)為中心這2個(gè)方面的方法,與基礎(chǔ)模型和其他模型進(jìn)行實(shí)驗(yàn)對(duì)比,結(jié)果如表4所示?!盎鶞?zhǔn)預(yù)訓(xùn)練模型”即表3中的基準(zhǔn)模型;“加入特征網(wǎng)絡(luò)預(yù)訓(xùn)練模型”是使用本文提出的以模型為中心方法所改進(jìn)訓(xùn)練的模型,也即表2 中加入特征網(wǎng)絡(luò)學(xué)習(xí)的模型;“加入特征網(wǎng)絡(luò)預(yù)訓(xùn)練+反向翻譯”是在本文改進(jìn)的模型基礎(chǔ)上使用基礎(chǔ)反向翻譯的方法;“加入特征網(wǎng)絡(luò)預(yù)訓(xùn)練+情感篩選”是按照算法1,將本文以模型為中心和以數(shù)據(jù)為中心的方法融合在一起。
Table 4 BLEU scores of different models in TED field
從表4中可以看出,加入了特征學(xué)習(xí)網(wǎng)絡(luò)的預(yù)訓(xùn)練模型在中-英方向比基礎(chǔ)模型的BLEU分?jǐn)?shù)提高了1.32,在此基礎(chǔ)上使用反向翻譯的方法也比在基礎(chǔ)模型上反向翻譯的BLEU值提升了1.06。在模型改進(jìn)的基礎(chǔ)上,結(jié)合情感后驗(yàn)篩選,使模型不僅在預(yù)訓(xùn)練階段獲得了更好的泛化能力,同時(shí)在反向翻譯中的偽數(shù)據(jù)質(zhì)量也得到了進(jìn)一步改善。
結(jié)合表3和表4可以看出,本文方法的最終效果比基線(xiàn)系統(tǒng)在中-英和英-中上BLEU值分別提升了4.42和4.09;與強(qiáng)基線(xiàn)反向翻譯相比,BLEU值分別提升了1.25和 1.38??梢?jiàn),本文方法相比于其他方法獲得了較大的提升,有效地提高了模型領(lǐng)域自適應(yīng)能力,改善了在目標(biāo)領(lǐng)域的翻譯性能。
為了進(jìn)一步證明本文方法的有效性,從內(nèi)領(lǐng)域測(cè)試集的翻譯結(jié)果中選擇了一些案例,比較不同訓(xùn)練方法的模型所產(chǎn)生的翻譯結(jié)果,如表5所示。
Table 5 Cases of translation results from TED test
從表5可以看出,基礎(chǔ)模型對(duì)跨領(lǐng)域的翻譯效果欠佳,其用詞、語(yǔ)言風(fēng)格與目標(biāo)相差甚遠(yuǎn),并且存在錯(cuò)翻、漏翻的情況。經(jīng)過(guò)反向翻譯后,可以看出,相比基礎(chǔ)模型結(jié)果有所進(jìn)步,但其效果仍不夠理想。案例中的第1句,關(guān)于“對(duì)于彼此的認(rèn)知”,本文方法翻譯為“our perception of each other”,翻譯準(zhǔn)確無(wú)誤且與參考譯文完全相符。案例中的第2句,對(duì)于基礎(chǔ)模型漏掉的“生存”,反向翻譯譯為“存活”且存在語(yǔ)序不當(dāng)?shù)膯?wèn)題,而本文方法可以有效地糾正這些錯(cuò)誤,將“生存”準(zhǔn)確地翻譯出來(lái)了且語(yǔ)義合理。這表明使用本文方法更有益于提升翻譯質(zhì)量。
對(duì)于NMT任務(wù)中的領(lǐng)域適應(yīng)任務(wù),本文從以模型為中心和以數(shù)據(jù)為中心2個(gè)方面提出了簡(jiǎn)單而有效的無(wú)監(jiān)督領(lǐng)域適應(yīng)方法。通過(guò)更加合理地預(yù)訓(xùn)練策略來(lái)學(xué)習(xí)外領(lǐng)域數(shù)據(jù)更通用的文本特征表示,從而在增強(qiáng)模型的泛化力的同時(shí)提高了生成的偽平行數(shù)據(jù)質(zhì)量,輔助后序工作更好地進(jìn)行領(lǐng)域適應(yīng)。再?gòu)臄?shù)據(jù)方面,結(jié)合情感信息對(duì)數(shù)據(jù)進(jìn)行后驗(yàn)篩選,進(jìn)一步提高反向翻譯譯文的質(zhì)量。實(shí)驗(yàn)結(jié)果表明,本文方法能夠有效提升模型的泛化能力,改善跨領(lǐng)域的翻譯質(zhì)量。在未來(lái)的工作中,將進(jìn)一步挖掘利用文本的情感信息和其他自然語(yǔ)言處理方法,探索更加復(fù)雜的聯(lián)合方式,以進(jìn)一步提升翻譯模型在領(lǐng)域適應(yīng)的效果。