王 煦,賈 浩,季佰軍,段湘煜
(蘇州大學(xué)自然語(yǔ)言處理實(shí)驗(yàn)室,江蘇 蘇州 215006)
機(jī)器翻譯[1 - 3]的主要研究目的是通過(guò)計(jì)算機(jī)實(shí)現(xiàn)將一種語(yǔ)言自動(dòng)翻譯成另一種語(yǔ)言。傳統(tǒng)的統(tǒng)計(jì)機(jī)器翻譯SMT(Statistic Machine Translation)[4]系統(tǒng)性能提升緩慢。但是近年來(lái),隨著神經(jīng)機(jī)器翻譯NMT(Neural Machine Translation)[5,6]的發(fā)展,機(jī)器翻譯性能得到大幅度提升,機(jī)器翻譯再次得到了廣泛關(guān)注。2017年Vaswani等人[7]提出的基于自注意力的Transformer模型在翻譯速度和質(zhì)量上相比于SMT取得了較大的提升。有監(jiān)督的神經(jīng)機(jī)器翻譯需要平行語(yǔ)料來(lái)指導(dǎo)訓(xùn)練,往往平行語(yǔ)料的數(shù)量決定著最終翻譯模型的質(zhì)量,但是平行語(yǔ)料的獲取不僅需要耗費(fèi)大量人工翻譯時(shí)間,一些小語(yǔ)種的平行數(shù)據(jù)也很難獲取,這在一定程度上阻礙了機(jī)器翻譯的發(fā)展。由于單語(yǔ)語(yǔ)料通常很容易大量獲取,近幾年只使用單語(yǔ)語(yǔ)料的無(wú)監(jiān)督神經(jīng)機(jī)器翻譯[8]漸漸進(jìn)入人們視野。
多個(gè)訓(xùn)練無(wú)監(jiān)督跨語(yǔ)言詞嵌入訓(xùn)練方法[9,10]的提出,使得只使用單語(yǔ)語(yǔ)料訓(xùn)練無(wú)監(jiān)督神經(jīng)機(jī)器翻譯模型成為了可能。而在結(jié)合使用降噪自編碼器[11]和反向翻譯[8]后,無(wú)監(jiān)督神經(jīng)機(jī)器翻譯效果也得到了顯著提升。BERT(Bidirectional Encoder Representation from Transformers)[12]模型利用Transformer模型構(gòu)建框架,使用無(wú)監(jiān)督方法在單語(yǔ)數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練并生成語(yǔ)言表征模型,可以較好地挖掘出詞之間的關(guān)系。隨后XLM(Cross-lingual Language Model)[13]模型在此基礎(chǔ)上進(jìn)一步擴(kuò)展訓(xùn)練生成跨語(yǔ)言的語(yǔ)言模型,讓不同語(yǔ)言中意思相近的詞在詞嵌入中的位置相對(duì)一致,最終有效提高了無(wú)監(jiān)督機(jī)器翻譯模型的訓(xùn)練效果。
雖然可以利用大量的單語(yǔ)語(yǔ)料訓(xùn)練模型,無(wú)監(jiān)督機(jī)器翻譯模型仍與使用平行數(shù)據(jù)訓(xùn)練的有監(jiān)督模型的效果有較大差距。反向翻譯方法雖然可以建立偽平行語(yǔ)料來(lái)訓(xùn)練模型,但是因?yàn)槠涑跏加?xùn)練的語(yǔ)言模型是建立在單語(yǔ)數(shù)據(jù)上的,沒(méi)有平行數(shù)據(jù)指導(dǎo)訓(xùn)練過(guò)程,并不能完全在2種語(yǔ)言中意思相近的詞之間建立聯(lián)系,往往會(huì)導(dǎo)致翻譯的偽數(shù)據(jù)質(zhì)量較差,在之后的訓(xùn)練中這些翻譯錯(cuò)誤會(huì)不斷累積,導(dǎo)致實(shí)際學(xué)習(xí)到的模型逐漸偏離正確的目標(biāo)模型。
針對(duì)以上問(wèn)題,本文提出2個(gè)方法,以中-英方向模型的訓(xùn)練為例:(1)用一個(gè)中-英的雙語(yǔ)詞典對(duì)中文單語(yǔ)數(shù)據(jù)進(jìn)行替換,利用中文詞的對(duì)應(yīng)英文翻譯詞在訓(xùn)練過(guò)程中建立2種語(yǔ)言間的聯(lián)系;同時(shí),在訓(xùn)練2個(gè)方向模型的過(guò)程中,利用英-中方向訓(xùn)練出來(lái)的模型,對(duì)中-英方向模型的詞嵌入(Word Embedding)進(jìn)行修正,縮小不同語(yǔ)言間的差異。(2)雙編碼器融合訓(xùn)練方法,利用英-中方向訓(xùn)練出來(lái)的模型指導(dǎo)中-英方向模型的訓(xùn)練,充分利用各個(gè)方向?qū)W到的語(yǔ)義信息。實(shí)驗(yàn)結(jié)果表明,本文方法的BLEU值在中-英等數(shù)據(jù)上相比基線無(wú)監(jiān)督翻譯系統(tǒng)的分別提高2.39和1.29,同時(shí)在英-俄和英-阿等單語(yǔ)數(shù)據(jù)上也取得了不錯(cuò)的效果。
隨著無(wú)監(jiān)督神經(jīng)機(jī)器翻譯的不斷探索,越來(lái)越多的人注意到雖然可以使用大量的單語(yǔ)數(shù)據(jù)訓(xùn)練模型,但是仍然不能很好地在不同語(yǔ)言之間建立聯(lián)系。針對(duì)這個(gè)問(wèn)題,Lample等人[14]使用聯(lián)合BPE(Byte Pair Encoding)[15]的方法將不同語(yǔ)言數(shù)據(jù)合并進(jìn)行BPE。當(dāng)源語(yǔ)言和目標(biāo)語(yǔ)言相關(guān)時(shí),它們會(huì)天然地共享部分的BPE詞語(yǔ),從而拉近2種語(yǔ)言在詞嵌入空間的分布。之后Lample等人[13]進(jìn)一步擴(kuò)展此方法,提出了XLM模型,將多種語(yǔ)言放在一起采用新的訓(xùn)練目標(biāo)進(jìn)行預(yù)訓(xùn)練,從而使模型能夠掌握更多的跨語(yǔ)言信息。對(duì)于預(yù)訓(xùn)練后的后續(xù)任務(wù)(比如文本分類或者翻譯等任務(wù)),訓(xùn)練語(yǔ)料較為稀少的語(yǔ)言可以利用在其他語(yǔ)料上學(xué)習(xí)到的信息協(xié)助當(dāng)前語(yǔ)言的學(xué)習(xí)。隨后Wu等人[16]針對(duì)反向翻譯中存在的錯(cuò)誤積累問(wèn)題,提出使用提取-編輯方法代替原本的回譯方法,取得了不錯(cuò)的效果。Ren等人[17]則通過(guò)生成的跨語(yǔ)言詞嵌入在2種語(yǔ)言的單語(yǔ)數(shù)據(jù)中尋找相似句,并通過(guò)對(duì)其重寫生成偽平行訓(xùn)練語(yǔ)料來(lái)訓(xùn)練翻譯模型。
最近Duan等人[18]提出了DIV(Dictionary-based Independent View)方法,用詞典對(duì)單語(yǔ)數(shù)據(jù)進(jìn)行替換,來(lái)進(jìn)行無(wú)監(jiān)督機(jī)器翻譯模型的訓(xùn)練。首先使用Muse詞典[9]對(duì)源端單語(yǔ)數(shù)據(jù)進(jìn)行替換,用替換過(guò)的源端單語(yǔ)數(shù)據(jù)與未替換的目標(biāo)端單語(yǔ)數(shù)據(jù)訓(xùn)練源端到目標(biāo)端的無(wú)監(jiān)督機(jī)器翻譯模型。先在預(yù)訓(xùn)練步驟中使用替換數(shù)據(jù)進(jìn)行訓(xùn)練,讓模型學(xué)習(xí)不同語(yǔ)言的信息,之后再使用單向訓(xùn)練與雙向訓(xùn)練建立無(wú)監(jiān)督機(jī)器翻譯模型,最終取得了很好的效果。
本文方法與DIV[18]的步驟類似,但是本文方法將源端與目標(biāo)端的數(shù)據(jù)都進(jìn)行了替換,并且將替換的數(shù)據(jù)與原數(shù)據(jù)合并,使用合并的數(shù)據(jù)訓(xùn)練各個(gè)方向的模型。同時(shí)本文還提出了2個(gè)方法:(1)對(duì)使用替換數(shù)據(jù)訓(xùn)練得到的預(yù)訓(xùn)練模型的詞嵌入進(jìn)行替換,利用一個(gè)方向訓(xùn)練出來(lái)的模型,對(duì)另一個(gè)方向模型的詞嵌入進(jìn)行修正,充分利用2個(gè)方向的訓(xùn)練結(jié)果。(2)在訓(xùn)練階段,本文在傳統(tǒng)的編碼器-解碼器[7]結(jié)構(gòu)基礎(chǔ)上,提出雙編碼器融合訓(xùn)練方法,在訓(xùn)練過(guò)程中同時(shí)使用2個(gè)方向的模型進(jìn)行訓(xùn)練,通過(guò)一個(gè)權(quán)重調(diào)整各個(gè)方向模型的重要性,充分利用它們?cè)谥坝?xùn)練中學(xué)習(xí)到的知識(shí)。
無(wú)監(jiān)督機(jī)器翻譯通常遵循3個(gè)步驟:初始化、建立語(yǔ)言模型和反向翻譯。
(1)初始化:針對(duì)機(jī)器翻譯任務(wù),希望利用模型預(yù)訓(xùn)練初始化建立2種不同語(yǔ)言間最初的聯(lián)系,以方便之后的訓(xùn)練。通過(guò)將2種語(yǔ)言訓(xùn)練數(shù)據(jù)合并后進(jìn)行聯(lián)合BPE,使得它們共用同一個(gè)詞表,之后使用單語(yǔ)數(shù)據(jù)訓(xùn)練編碼器,建立潛在的聯(lián)系。
(1)
其中,D為單語(yǔ)數(shù)據(jù)集,C(x)表示對(duì)樣本x進(jìn)行加噪的過(guò)程。通過(guò)訓(xùn)練,模型可以掌握各個(gè)語(yǔ)言句子的基本構(gòu)建信息。
(3)反向翻譯:通過(guò)前2個(gè)步驟,不斷拉近2種語(yǔ)言間語(yǔ)義空間的距離,這時(shí)利用反向翻譯進(jìn)行訓(xùn)練,將目標(biāo)端句子通過(guò)模型映射為源端句子,建立偽平行語(yǔ)料,之后按照有監(jiān)督機(jī)器翻譯的方法進(jìn)行訓(xùn)練。如式(2)所示:
Lback=Ex~D,y~M(x)[-logP(x|y)]
(2)
其中,D為單語(yǔ)數(shù)據(jù)集,M(x)表示對(duì)目標(biāo)端樣本x進(jìn)行翻譯的過(guò)程,y為翻譯出來(lái)的偽源端語(yǔ)句。將(y,x)作為偽平行語(yǔ)料進(jìn)行有監(jiān)督訓(xùn)練。
DIV方法在預(yù)訓(xùn)練初始化的過(guò)程中使用詞典對(duì)源端訓(xùn)練數(shù)據(jù)進(jìn)行替換,之后使用替換的源端數(shù)據(jù)和目標(biāo)端數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練,利用替換詞在2種語(yǔ)言間建立聯(lián)系,拉近2種語(yǔ)言語(yǔ)義空間的距離。而在本文方法中,源端使用的是詞典替換后的語(yǔ)料加上原始語(yǔ)料,而目標(biāo)端只有未替換的原始語(yǔ)料,因此在訓(xùn)練過(guò)程中可以進(jìn)一步拉近替換詞和原詞之間的距離,讓2種語(yǔ)言的語(yǔ)義空間距離更近。
DIV方法中訓(xùn)練翻譯模型又分為單向訓(xùn)練和雙向訓(xùn)練。在單向訓(xùn)練中使用降噪自編碼器建立語(yǔ)言模型并且通過(guò)反向翻譯優(yōu)化模型,同樣在訓(xùn)練時(shí)也會(huì)用詞典先對(duì)源端訓(xùn)練數(shù)據(jù)進(jìn)行替換,之后使用替換的源端數(shù)據(jù)和目標(biāo)端數(shù)據(jù)進(jìn)行訓(xùn)練。本文方法除了和之前預(yù)訓(xùn)練中一樣將替換數(shù)據(jù)加上原數(shù)據(jù)進(jìn)行單向訓(xùn)練以外,還提出了詞嵌入融合初始化和雙編碼器融合訓(xùn)練2種方法,充分利用各個(gè)方向在預(yù)訓(xùn)練中學(xué)到的知識(shí),可以更好地利用詞典替換數(shù)據(jù),縮小不同語(yǔ)言間的距離。
DIV[18]方法的雙向訓(xùn)練步驟則是利用單向訓(xùn)練中訓(xùn)練的目標(biāo)端到源端的翻譯模型,將目標(biāo)端單語(yǔ)數(shù)據(jù)翻譯為源端數(shù)據(jù),之后將翻譯的偽源端數(shù)據(jù)與目標(biāo)端數(shù)據(jù)作為偽平行語(yǔ)料,訓(xùn)練源端到目標(biāo)端的翻譯模型。而本文提出的詞嵌入融合初始化和雙編碼器融合訓(xùn)練2種方法可以更好地抽取語(yǔ)言間的關(guān)系,實(shí)驗(yàn)表明,本文方法可以取得更好的效果。
神經(jīng)語(yǔ)言模型通過(guò)學(xué)習(xí)詞嵌入來(lái)捕獲詞中隱含的語(yǔ)言和概念信息[19],在預(yù)訓(xùn)練中由于使用了詞典替換的數(shù)據(jù),在相應(yīng)方向替換詞的詞嵌入訓(xùn)練程度較高,因?yàn)樵~同時(shí)在2種語(yǔ)言的句子中出現(xiàn),可以同時(shí)學(xué)到2種語(yǔ)言的語(yǔ)義信息。但是,在另一個(gè)方向的訓(xùn)練過(guò)程中,因?yàn)檫@個(gè)詞被詞典替換成了這個(gè)方向目標(biāo)端語(yǔ)言的對(duì)應(yīng)詞,所以這個(gè)詞在該方向的訓(xùn)練過(guò)程中并沒(méi)有被訓(xùn)練到,無(wú)法學(xué)習(xí)相關(guān)的語(yǔ)義信息。針對(duì)這個(gè)問(wèn)題,本文提出了詞嵌入融合初始化方法,對(duì)預(yù)訓(xùn)練后的模型進(jìn)行初始化。以中-英模型訓(xùn)練為例,使用英-中方向中利用英-中詞典替換訓(xùn)練的中文替換詞初始化中-英方向中的該中文單詞,讓2個(gè)方向互相學(xué)習(xí)對(duì)方在訓(xùn)練中獲得的信息。
如圖1所示,圖中Emb表示訓(xùn)練模型中的詞嵌入向量,因?yàn)轭A(yù)訓(xùn)練時(shí)的模型使用中英數(shù)據(jù)聯(lián)合BPE建立詞表,所以詞嵌入中包含中文與英文詞。但是,在中-英方向的預(yù)訓(xùn)練過(guò)程中,用詞典將訓(xùn)練數(shù)據(jù)中的中文zh1替換為英文en2,因?yàn)樵炊耸窃~典替換后的語(yǔ)料加上原始語(yǔ)料,而目標(biāo)端只使用了未替換的原始語(yǔ)料。所以,源端數(shù)據(jù)中包含zh1和其對(duì)應(yīng)的en2,en2可以直接學(xué)習(xí)到與zh1相關(guān)的中文信息,而zh1只能通過(guò)en2間接學(xué)習(xí)到與其相關(guān)的英文信息,最終zh1的詞嵌入并沒(méi)有得到足夠訓(xùn)練,而英-中模型的zh1的詞嵌入學(xué)習(xí)到了完全的英文和中文的信息。因此,本文將中-英模型中的zh1的詞嵌入用英-中模型的zh1的詞嵌入進(jìn)行初始化。同樣,在英-中方向的預(yù)訓(xùn)練過(guò)程中,en2的詞嵌入并沒(méi)有得到足夠訓(xùn)練,本文將英-中模型中的en2的詞嵌入用中-英模型中的en2的詞嵌入進(jìn)行初始化。
Figure 1 Word embedding initialization圖1 詞嵌入融合初始化
最后將每個(gè)方向的源端詞典替換數(shù)據(jù)與其原數(shù)據(jù)合并,進(jìn)行各個(gè)方向的單向訓(xùn)練,這樣訓(xùn)練的單語(yǔ)數(shù)據(jù)中的源端同時(shí)包含了詞典替換數(shù)據(jù)和原數(shù)據(jù)。比如中文數(shù)據(jù)中同時(shí)包含“華為 phone”和“華為 手機(jī)”,可以通過(guò)“華為”作為媒介拉近“phone”與“手機(jī)”之間的距離,為了保證目標(biāo)端為真數(shù)據(jù),故而目標(biāo)端都是使用原數(shù)據(jù)。實(shí)驗(yàn)表明,此方法可以明顯提高翻譯效果。
Figure 2 Dual-encoder fusion training圖2 雙編碼器融合訓(xùn)練
詞嵌入融合初始化方法雖然可以利用另一個(gè)方向預(yù)訓(xùn)練模型中替換詞的訓(xùn)練結(jié)果來(lái)促進(jìn)這個(gè)方向的訓(xùn)練,但仍會(huì)損失一些替換詞與其他詞訓(xùn)練中學(xué)習(xí)到的信息。為了更好地利用2個(gè)方向的訓(xùn)練模型的訓(xùn)練結(jié)果,本文提出了一個(gè)雙編碼器融合訓(xùn)練方法,如圖2所示。以中英訓(xùn)練為例,經(jīng)過(guò)預(yù)訓(xùn)練后,在訓(xùn)練中-英方向的模型時(shí),同時(shí)加載預(yù)訓(xùn)練中獲得的中-英方向的編碼器模型和英-中方向的編碼器模型,將訓(xùn)練數(shù)據(jù)同時(shí)輸入2個(gè)編碼器中分別訓(xùn)練,對(duì)其輸出結(jié)果用式(3)進(jìn)行處理:
encout=encout-src2tgt+λ*encout-src2src
(3)
其中,encout-src2tgt是源端到目標(biāo)端編碼器的輸出,encout-tgt2src是目標(biāo)端到源端編碼器的輸出,使用λ來(lái)控制輸出所占比重,之后將最終的結(jié)果encout輸入目標(biāo)端到源端的解碼器模型中進(jìn)行訓(xùn)練。
通過(guò)這種方法,在中-英的訓(xùn)練過(guò)程中可以同時(shí)利用中-英和英-中的預(yù)訓(xùn)練編碼器模型進(jìn)行訓(xùn)練,編碼器可以輸出2種不同視角的編碼結(jié)果,對(duì)其按照一定比重進(jìn)行處理,可以利用英-中編碼器視角對(duì)中-英編碼器視角中一些被忽略的地方進(jìn)行修正,取得更好的效果。由于訓(xùn)練數(shù)據(jù)的源端也是詞典替換數(shù)據(jù)與其原數(shù)據(jù)合并后進(jìn)行各個(gè)方向的單向訓(xùn)練,在訓(xùn)練中2個(gè)編碼器可以相互輔助,可利用對(duì)方在預(yù)訓(xùn)練中學(xué)習(xí)到的知識(shí)。比如“華為 phone”和“華為 手機(jī)”中“手機(jī)”在中-英方向的預(yù)訓(xùn)練中沒(méi)有得到足夠訓(xùn)練,而在英-中方向的預(yù)訓(xùn)練中訓(xùn)練充足,同樣“phone”在英-中方向的預(yù)訓(xùn)練中沒(méi)有得到足夠訓(xùn)練,而在中-英方向的預(yù)訓(xùn)練中訓(xùn)練充足,在訓(xùn)練中這2個(gè)模型就可以互相利用對(duì)方已經(jīng)學(xué)習(xí)過(guò)的“手機(jī)”與“phone”的知識(shí),來(lái)調(diào)整相關(guān)詞與其他詞的關(guān)系,縮短“華為”與“手機(jī)”“phone”的距離,從而提高翻譯質(zhì)量。
本文在中-英、英-俄和英-阿數(shù)據(jù)上進(jìn)行了實(shí)驗(yàn)。對(duì)于跨語(yǔ)言預(yù)訓(xùn)練階段,本文從維基百科數(shù)據(jù)中分別抽取了8 000萬(wàn)條英文、1 300萬(wàn)條俄文和550萬(wàn)條中文的單語(yǔ)訓(xùn)練數(shù)據(jù)來(lái)進(jìn)行訓(xùn)練。在單向訓(xùn)練和雙向訓(xùn)練階段中,對(duì)于中-英方向的訓(xùn)練,從語(yǔ)言數(shù)據(jù)聯(lián)盟LDC(Linguistic Data Consortium)提供的440萬(wàn)條平行數(shù)據(jù)中抽取其中220萬(wàn)條作為中文單語(yǔ)訓(xùn)練數(shù)據(jù),另外220萬(wàn)條作為英文訓(xùn)練數(shù)據(jù)。同時(shí),使用NIST2006和NIST2002分別作為中-英訓(xùn)練的驗(yàn)證集和測(cè)試集。對(duì)于英-俄方向的訓(xùn)練,使用WMT(Workshop on Machine Translation)2007~2017年的單語(yǔ)新聞數(shù)據(jù)進(jìn)行訓(xùn)練,同時(shí)使用WMT newstest-2015和newstest-2016作為驗(yàn)證集和測(cè)試集;而對(duì)于英-阿方向的訓(xùn)練,本文在Eisele等人[20]發(fā)布的英語(yǔ)和阿拉伯語(yǔ)平行數(shù)據(jù)中隨機(jī)各抽取975萬(wàn)條,作為單語(yǔ)數(shù)據(jù)訓(xùn)練模型,同時(shí)使用他們發(fā)布的驗(yàn)證集和測(cè)試集作為英-阿訓(xùn)練的驗(yàn)證集和測(cè)試集。
本文使用MUSE雙語(yǔ)詞典對(duì)數(shù)據(jù)進(jìn)行替換,對(duì)于MUSE詞典中一個(gè)源端詞有多個(gè)目標(biāo)端翻譯的情況,選取目標(biāo)端在單語(yǔ)訓(xùn)練數(shù)據(jù)中出現(xiàn)最多的那個(gè)詞作為目標(biāo)端最終的替換詞,表1展示了詞典中詞對(duì)數(shù)目與其在訓(xùn)練數(shù)據(jù)中所占比例。
Table 1 Word number and coverage of dictionary表1 字典詞對(duì)數(shù)與覆蓋率
在預(yù)訓(xùn)練過(guò)程中,本文使用了XLM模型中的掩碼語(yǔ)言模型MLM(Masked Language Model)進(jìn)行訓(xùn)練,其與BERT類似,在訓(xùn)練時(shí)隨機(jī)掩蓋句子中15%的詞語(yǔ),同樣在這些詞中選擇80%用[MASK]標(biāo)志掩蓋,10%用字典中隨機(jī)詞替換,另外10%保持不變。
本文使用XLM模型進(jìn)行無(wú)監(jiān)督機(jī)器翻譯的訓(xùn)練,它是從BERT模型的基礎(chǔ)上發(fā)展而來(lái)的,使用了Transformer[7]作為訓(xùn)練的主要框架,能更徹底地捕捉語(yǔ)句中的雙向關(guān)系。Transformer模型由編碼器與解碼器組成,而編碼器與解碼器又由多個(gè)編碼器層與解碼器層堆疊而成。在實(shí)驗(yàn)中編碼器和解碼器層數(shù)都設(shè)置為6,每個(gè)注意力層含有8個(gè)頭,詞嵌入維度為1 024。本文對(duì)訓(xùn)練數(shù)據(jù)用聯(lián)合BPE進(jìn)行處理,中英數(shù)據(jù)共享約4萬(wàn)條詞匯,英俄數(shù)據(jù)共享約6萬(wàn)條詞匯,其余低頻詞用〈UNK〉替換。
訓(xùn)練時(shí),隨機(jī)失活率(Dropout)設(shè)置為0.1,使用Adam優(yōu)化器[21],初始學(xué)習(xí)率設(shè)為0.000 1。解碼時(shí),使用長(zhǎng)度懲罰為1.0的貪婪生成方法,雙編碼器融合訓(xùn)練方法中λ取值為0.8。
本文使用以下模型作為實(shí)驗(yàn)的基準(zhǔn)系統(tǒng)[14]:
(1)UNMT(Unsupervised Neural Machine Translation):為L(zhǎng)ample等人[14]所用方法,沒(méi)有使用預(yù)訓(xùn)練模型,只使用單語(yǔ)訓(xùn)練數(shù)據(jù)直接訓(xùn)練的無(wú)監(jiān)督機(jī)器翻譯模型。
(2)XLM+UNMT:為L(zhǎng)ample等人[13]所用方法,在使用XLM模型訓(xùn)練的跨語(yǔ)言預(yù)訓(xùn)練模型基礎(chǔ)上訓(xùn)練的無(wú)監(jiān)督機(jī)器翻譯模型。
(3)ACP(Anchored Cross-lingual Pretraining)+AT(Anchored Training):為Duan等人[18]在跨語(yǔ)言預(yù)訓(xùn)練模型基礎(chǔ)上,對(duì)訓(xùn)練數(shù)據(jù)使用詞典替換后,在XLM模型上使用單向訓(xùn)練方法訓(xùn)練的無(wú)監(jiān)督機(jī)器翻譯模型。
(4)ACP+Bi-view AT:為Duan等人[18]在跨語(yǔ)言預(yù)訓(xùn)練模型基礎(chǔ)上,對(duì)訓(xùn)練數(shù)據(jù)使用詞典替換后,在XLM模型上使用雙向訓(xùn)練方法訓(xùn)練的無(wú)監(jiān)督機(jī)器翻譯模型。
實(shí)驗(yàn)結(jié)果如表2所示,本文使用BLEU(BiLingual Evaluation Understudy)[22]分?jǐn)?shù)作為最后的評(píng)價(jià)指標(biāo)。
Table 2 Experiment results evaluated by BLEU表2 實(shí)驗(yàn)的BLEU評(píng)估結(jié)果
相比于DIV方法,詞嵌入融合初始化方法在中-英與英-中的單向訓(xùn)練中,BLEU分?jǐn)?shù)分別有1.34和1.35的提升,在雙向訓(xùn)練中,BLEU分?jǐn)?shù)分別有2.24和0.69的提升。改進(jìn)后的雙編碼器融合訓(xùn)練方法在中-英與英-中的單向訓(xùn)練中,BLEU分?jǐn)?shù)分別有1.59和1.47的提升,在雙向訓(xùn)練中,BLEU分?jǐn)?shù)分別有2.39和1.29的提升。而2種模型融合方法在英-俄與英-阿實(shí)驗(yàn)中的結(jié)果也有明顯提升。
由表2可知,本文的詞嵌入融合初始化方法和雙編碼器融合訓(xùn)練方法相比于之前的無(wú)監(jiān)督訓(xùn)練方法的BLEU都有了明顯的提升,除了詞嵌入融合初始化方法在英-俄的2個(gè)方向訓(xùn)練中優(yōu)于雙編碼器融合訓(xùn)練外,在其他情況下雙編碼器融合訓(xùn)練方法訓(xùn)練效果都要好于詞嵌入融合初始化方法。這可能是因?yàn)橛?俄的訓(xùn)練數(shù)據(jù)使用字典替換時(shí)替換率過(guò)高,達(dá)到88.77%,使得訓(xùn)練數(shù)據(jù)中2個(gè)方向中大部分都是俄語(yǔ)數(shù)據(jù),因此在雙編碼器融合訓(xùn)練方法中輔助訓(xùn)練的俄-英模型學(xué)到的英語(yǔ)與英語(yǔ)間的聯(lián)系對(duì)英-俄方向的訓(xùn)練影響不大,甚至在一定程度上反而阻礙了英-俄模型的學(xué)習(xí)。而詞嵌入融合初始化方法中只是用俄-英模型初始化了英-俄模型,獲得了之前訓(xùn)練中詞典替換詞的知識(shí),在之后的訓(xùn)練中并不會(huì)持續(xù)影響訓(xùn)練過(guò)程,所以最后詞嵌入融合初始化方法訓(xùn)練效果較好。
為了得到最佳的實(shí)驗(yàn)結(jié)果,本文測(cè)試了雙編碼器融合訓(xùn)練方法在不同λ取值下中-英模型訓(xùn)練的最終效果,如表3所示。
Table 3 BLEU values of dual-encoder fusiontraining model with different λ表3 不同λ取值下雙編碼器融合訓(xùn)練模型BLEU分?jǐn)?shù)
可以發(fā)現(xiàn),雙編碼器融合訓(xùn)練方法的分?jǐn)?shù)只在英-中方向λ=1時(shí)比DIV[18]方法的低,其他情況下都有所提高。λ取值從0.2提升到0.8的過(guò)程中,翻譯分?jǐn)?shù)都不斷提高,并且在λ取值為0.8時(shí)達(dá)到最高,但是當(dāng)λ設(shè)置為1.0時(shí)分?jǐn)?shù)迅速下降,說(shuō)明當(dāng)權(quán)重設(shè)置過(guò)高后另一個(gè)方向的模型對(duì)該方向的訓(xùn)練影響過(guò)大,反而會(huì)阻礙模型的學(xué)習(xí)。
同時(shí)本文測(cè)試了不同句子長(zhǎng)度下中-英方向上使用2種模型融合方法訓(xùn)練得到的模型的翻譯效果。如圖3所示,在單向訓(xùn)練過(guò)程中,除了雙編碼器融合訓(xùn)練方法在句子中包含詞的個(gè)數(shù)在低于10個(gè)的情況下BLEU略低于DIV方法外,其他情況中本文的2種方法都優(yōu)于DIV方法,并且在處理包含10~50個(gè)詞的中長(zhǎng)句子時(shí)本文方法的翻譯質(zhì)量要明顯超過(guò)DIV方法的。
Figure 3 Single-directional training scores with different lengths圖3 不同句長(zhǎng)下單向訓(xùn)練分?jǐn)?shù)
由圖4可知,在雙向訓(xùn)練過(guò)程中,本文的2種方法在處理所有長(zhǎng)度的句子時(shí)都要優(yōu)于DIV方法,同樣在處理包含10~50個(gè)詞的中長(zhǎng)句子時(shí)也有明顯的進(jìn)步。同時(shí)可以發(fā)現(xiàn)雙編碼器融合訓(xùn)練方法對(duì)包含30個(gè)以上詞的句子的翻譯效果的提升更加明顯,說(shuō)明在2個(gè)不同方向模型的相互輔助訓(xùn)練后,不同方向的模型可以從不同視角分析句子,可以更好地捕捉詞在中長(zhǎng)句子中的語(yǔ)義信息,有效提高了句子的翻譯效果。
Figure 4 Bi-directional training scores under different lengths圖4 不同句長(zhǎng)下雙向訓(xùn)練分?jǐn)?shù)
在無(wú)監(jiān)督機(jī)器翻譯模型的訓(xùn)練過(guò)程中,雖然有大量單語(yǔ)數(shù)據(jù),但仍很難在2種語(yǔ)言間建立聯(lián)系,針對(duì)這個(gè)問(wèn)題,本文提出了采用詞典替換數(shù)據(jù),并且使用詞嵌入融合初始化和雙編碼器融合訓(xùn)練來(lái)加強(qiáng)不同語(yǔ)言詞之間的聯(lián)系的方法。實(shí)驗(yàn)結(jié)果表明,相比于其它無(wú)監(jiān)督基準(zhǔn)翻譯模型,本文方法在中-英、英-俄和英-阿無(wú)監(jiān)督機(jī)器翻譯中翻譯效果都有了明顯的提升。未來(lái)我們將探索其在更多語(yǔ)言上的效果,同時(shí)測(cè)試該方法在有監(jiān)督機(jī)器翻譯領(lǐng)域是否也會(huì)有一定的效果。