摘要: 與以往使用雙語(yǔ)語(yǔ)料庫(kù)作為翻譯記憶(Translation Memory,TM)并采用源端相似度搜索進(jìn)行記憶檢索,進(jìn)而將檢索到的相似句對(duì)與神經(jīng)機(jī)器翻譯(Neural Machine Translation,NMT)模型融合的這種分階段進(jìn)行的方法不同,提出一種新的融合框架,即基于跨語(yǔ)言注意力記憶網(wǎng)絡(luò)的神經(jīng)機(jī)器翻譯模型,該模型使用單語(yǔ)翻譯記憶即目標(biāo)語(yǔ)言句子作為TM,并以跨語(yǔ)言的方式執(zhí)行可學(xué)習(xí)的檢索。該框架具有一定的優(yōu)勢(shì):第一,跨語(yǔ)言注意力記憶網(wǎng)絡(luò)允許單語(yǔ)句子作為TM,適合于雙語(yǔ)語(yǔ)料缺乏的低資源場(chǎng)景;第二,跨語(yǔ)言注意力記憶網(wǎng)絡(luò)和NMT模型可以為最終的翻譯目標(biāo)進(jìn)行聯(lián)合優(yōu)化,實(shí)現(xiàn)一體化訓(xùn)練。實(shí)驗(yàn)表明,所提出的方法在4個(gè)翻譯任務(wù)上取得了較好的效果,在雙語(yǔ)資源稀缺的專業(yè)領(lǐng)域中也表現(xiàn)出其在低資源場(chǎng)景下的有效性。
關(guān)鍵詞: 神經(jīng)機(jī)器翻譯;單語(yǔ)翻譯記憶;跨語(yǔ)言注意力記憶網(wǎng)絡(luò);低資源領(lǐng)域;Transformer模型
中圖分類號(hào): TP391" " " " 文獻(xiàn)標(biāo)志碼: A
doi:10.3969/j.issn.2095-1248.2023.02.009
Neural machine translation method integrating monolingual translation memory
WANG Bing, YE Na, CAI Dong-feng
(Human-Computer Intelligence Research Center, Shenyang Aerospace University, Shenyang 110136, China)
Abstract: Different from previous researches that used bilingual corpus as TM and source-end similarity search for memory retrieval, a new NMT framework was proposed, which used monolingual translation memory and performed learnable retrieval in a cross-language way. Monolingual translation memory was the use of target language sentences as TM. This framework had certain advantages: firstly, the cross-language memory network allowed monolingual data to be used as TM; secondly, the cross-language memory network and NMT model was jointly optimized for the ultimate translation goal, thus realizing integrated training. Experiments show that the proposed method achieved good results in four translation tasks, and the model also shows its effectiveness in low-resource scenarios.
Key words: neural machine translation;monolingual translation memory;cross-language attention memory network;low-resource scenarios;transformer" model
機(jī)器翻譯是指利用計(jì)算機(jī)將一種自然語(yǔ)言(源語(yǔ)言)轉(zhuǎn)換為另一種自然語(yǔ)言(目標(biāo)語(yǔ)言)的過程[1]。近年來,端到端的神經(jīng)機(jī)器翻譯(Neural Machine Translation, NMT)取得了巨大進(jìn)步[2-4]。特別是自Transformer模型[4]提出以來,機(jī)器翻譯的翻譯質(zhì)量得到了顯著的提升。Transformer逐漸成為機(jī)器翻譯領(lǐng)域中的主流模型。翻譯記憶是一種輔助翻譯人員完成翻譯任務(wù)的工具,其中存儲(chǔ)著之前已經(jīng)翻譯好的句對(duì)、段落或文本句段[5-7]。譯員遇到待翻譯的源語(yǔ)句時(shí),先從翻譯記憶庫(kù)中檢索與當(dāng)前句子最相似的翻譯記憶句對(duì),檢索完畢后,譯員可以重用匹配的部分來避免冗余翻譯,以保證翻譯的質(zhì)量。
翻譯記憶能夠?yàn)闄C(jī)器翻譯提供有效的外部知識(shí),從而提高翻譯的質(zhì)量。隨著神經(jīng)機(jī)器翻譯的不斷發(fā)展,神經(jīng)機(jī)器翻譯和翻譯記憶相結(jié)合的研究也在不斷推進(jìn)。二者的結(jié)合通常被分為兩個(gè)階段:首先是檢索階段,在檢索過程中大都采用基于相似度的搜索方式,例如Gu等[8]以詞為單位進(jìn)行檢索,Zhang等[9]和Bapha等[10]則以短語(yǔ)等相似片段為單位進(jìn)行檢索,檢索得到結(jié)果后直接利用其中匹配部分的翻譯與神經(jīng)機(jī)器翻譯結(jié)合;Cao等[11]、Bulte等[12]、Xu等[13]的研究則是以句子為檢索單位,通過檢索到相似語(yǔ)句來加強(qiáng)神經(jīng)機(jī)器翻譯。最后是生成階段,生成是指如何利用翻譯記憶來指導(dǎo)神經(jīng)機(jī)器翻譯模型輸出結(jié)果的過程。曹騫等[14]提出基于數(shù)據(jù)擴(kuò)充的方式將目標(biāo)端翻譯記憶直接拼接在源語(yǔ)句后面作為訓(xùn)練語(yǔ)料,并為翻譯記憶與源語(yǔ)句分別加上標(biāo)簽以作區(qū)分;提出采用成對(duì)編碼器分別對(duì)翻譯記憶和源語(yǔ)句進(jìn)行編碼,并在解碼過程中通過門控機(jī)制融合兩者信息,讓目標(biāo)端翻譯記憶指導(dǎo)模型的翻譯。
通過對(duì)現(xiàn)有方法的研究和對(duì)比發(fā)現(xiàn),將神經(jīng)機(jī)器翻譯與翻譯記憶相結(jié)合的方法存在兩個(gè)問題:(1)所使用的翻譯記憶均來自對(duì)齊的源-目標(biāo)句對(duì)組成的雙語(yǔ)語(yǔ)料庫(kù)。而對(duì)于某些小語(yǔ)種翻譯,大多存在雙語(yǔ)語(yǔ)料庫(kù)不夠豐富的問題,繼而通過檢索匹配得到的翻譯記憶質(zhì)量低,最終影響神經(jīng)機(jī)器翻譯的質(zhì)量;(2)在訓(xùn)練過程中,翻譯記憶的獲取均采用離線檢索的方式,翻譯記憶檢索匹配與神經(jīng)機(jī)器翻譯的訓(xùn)練過程無(wú)法一體化。
針對(duì)以上不足,本文提出了一種基于跨語(yǔ)言翻譯記憶的跨語(yǔ)言注意力(Cross-Language Attention)記憶網(wǎng)絡(luò)模型。以單語(yǔ)句子集合作為翻譯記憶庫(kù),利用記憶網(wǎng)絡(luò)進(jìn)行跨語(yǔ)言翻譯記憶知識(shí)的提取。通過記憶網(wǎng)絡(luò)和Transformer的編碼器在潛在向量空間中對(duì)源句子和單語(yǔ)翻譯記憶進(jìn)行對(duì)齊,對(duì)齊過程的參數(shù)與模型訓(xùn)練時(shí)的參數(shù)通過可學(xué)習(xí)的方式進(jìn)行端到端優(yōu)化,從而指導(dǎo)解碼器生成更好的翻譯。
1 跨語(yǔ)言注意力記憶網(wǎng)絡(luò)翻譯模型
本文提出的基于跨語(yǔ)言注意力記憶網(wǎng)絡(luò)的神經(jīng)機(jī)器翻譯模型的優(yōu)點(diǎn)在于:(1)可以直接使用單語(yǔ)的句子集合作為翻譯記憶,實(shí)現(xiàn)源語(yǔ)言端句子與目標(biāo)端句子的跨語(yǔ)言檢索;(2)加入了一個(gè)注意力記憶網(wǎng)絡(luò)來獲取翻譯記憶的加權(quán)向量表征,并加入神經(jīng)機(jī)器翻譯模型訓(xùn)練指導(dǎo)模型輸出。提出的模型結(jié)構(gòu)整體分為兩部分,如圖1所示。圖1左邊是跨語(yǔ)言注意力記憶網(wǎng)絡(luò),D指的是翻譯記憶庫(kù),在這里存放的句子均為目標(biāo)端的單語(yǔ)句子。右邊用一個(gè)Transformer作為編碼和解碼的主干模型。在本文的工作中,采用跨語(yǔ)言記憶網(wǎng)絡(luò)的方法來提取翻譯記憶中的潛在信息,并與Transformer進(jìn)行交互。
給定輸入的源語(yǔ)言中句子X=x1x2…xi…xn,通過Transformer的Embedding層得到詞向量,將詞向量進(jìn)行算術(shù)平均求和得到各自的句向量e后,注意力記憶網(wǎng)絡(luò)首先根據(jù)相關(guān)函數(shù)M(e,D)從單語(yǔ)翻譯記憶中獲取有幫助的信息,然后將其融入到Transformer的解碼中,從而指導(dǎo)解碼的生成。句向量e的生成過程在下節(jié)中詳細(xì)介紹。形式上,整個(gè)翻譯記憶指導(dǎo)機(jī)器翻譯的過程如式(1)所示
Y=G(x,M(e,D)) (1)
式中:Y為目標(biāo)語(yǔ)言;G為整個(gè)的翻譯過程;D為單語(yǔ)翻譯記憶庫(kù);X=x1x2…xi…xn為輸入的單條源語(yǔ)言句子;M為跨語(yǔ)言的注意力記憶網(wǎng)絡(luò),其細(xì)節(jié)及如何與Transformer整合將在后面小節(jié)中描述。
1.1 跨語(yǔ)言注意力記憶網(wǎng)絡(luò)
給定的單語(yǔ)翻譯記憶庫(kù)D中存放的句子為翻譯記憶目標(biāo)端句子,在此基礎(chǔ)上模型實(shí)現(xiàn)了跨語(yǔ)言的翻譯記憶匹配。但給定的翻譯記憶庫(kù)通常與訓(xùn)練語(yǔ)料類似,這樣翻譯記憶為模型訓(xùn)練提供了很好的參考,而且為每條輸入的源句子確定什么是描述它的最佳翻譯記憶。例如,給定一條源語(yǔ)言句子“the German defendant bought frozen pork from a Belgian company”可能在翻譯記憶庫(kù)中無(wú)法找到完全一致的翻譯,但只要在翻譯記憶中出現(xiàn),就可以為解碼的生成提供明確的信息。
將單語(yǔ)的翻譯記憶定義為集合D={d1,d2,…,dk,…,dl}。首先訓(xùn)練一個(gè)Sentence-BERT模型,利用神經(jīng)網(wǎng)絡(luò)對(duì)翻譯記憶中的每一條句子進(jìn)行編碼,得到固定長(zhǎng)度的句向量,即鍵向量u={u1,u2,…,uk,…,ul}和值向量v={v1,v2,…,vk,…,vl}這兩個(gè)向量集表示它們。在這里uk和vk是一致的,都為768維的句子向量。其中句向量的訓(xùn)練生成過程如下,以一條句子d為例:
(1)CLS:訓(xùn)練中使用[CLS]字符最后一層的輸出向量,此時(shí)為生成的字向量d=w_1 w_2…w_n;
(2)采用最大值池化策略,將得到的所有的字向量求最大值操作得到整條句子的句向量w=max (w_1^1 u_1^2,…,w_1^n,w_2^1 w_2^2,…,w_2^n,w_3^1 w_3^2,…,w_3^n),將這個(gè)最大值向量作為一個(gè)句子的句向量。
然后,對(duì)于輸入的每一個(gè)源句子X,首先通過Transformer的Embedding層得到它的詞嵌入表示。Embedding的過程需要把兩個(gè)方面的信息結(jié)合在一起,即每個(gè)時(shí)刻的字向量e_i^word=(e_1" ,e_2" ,…,e_n)和每個(gè)時(shí)刻所選取的字的位置信息e_i^pos=(e_1,e_2,…,e_n),最終的Embedding結(jié)果是上述兩方面之和,即e_i=e_i^word+e_i^pos。
為了與得到的翻譯記憶的句向量uk和vk維度保持一致,將編碼器與解碼器的嵌入維數(shù)設(shè)置為768,即n為768,然后對(duì)每一個(gè)源句子X的詞向量進(jìn)行求和再平均,最終得到一個(gè)1×768的句向量,記作e,如式(2)所示
e=1/n ∑_(i=1)^n?e_i (2)
在進(jìn)行翻譯記憶檢索時(shí),將e作為“query”向量。在向量空間內(nèi),記憶網(wǎng)絡(luò)通過取內(nèi)積和Softmax來計(jì)算uk與輸入的每一條源語(yǔ)言句子e的相似度,而vk作為潛在的句子向量生成最終的輸出o。具體而言,注意力記憶網(wǎng)絡(luò)首先將編碼器端的句子向量e和單語(yǔ)翻譯記憶庫(kù)中每一條句子向量uk取內(nèi)積,在這里使用一個(gè)Softmax函數(shù),將uk與句向量e二者的內(nèi)積得分標(biāo)準(zhǔn)化成一個(gè)隱含狀態(tài)序列上的概率pk。計(jì)算過程如式(3)所示
p_k=(exp (e^T?u_k))/(∑_(k=1)^l?〖exp (e^T?u_k)〗) (3)
概率pk作為權(quán)重被用來對(duì)翻譯記憶庫(kù)中的所有的句向量進(jìn)行加權(quán),相似度比較高的句子的權(quán)重值相對(duì)較高,而相似度值較低的直接賦值0,這樣更容易突出相似度較高的句子,得到整個(gè)翻譯記憶的特征表示。對(duì)于整個(gè)單語(yǔ)翻譯記憶庫(kù)D={d1,d2,…,dk,…,dl},每次通過加權(quán)編碼獲取來自相關(guān)單語(yǔ)翻譯記憶的向量表示,最終得到跨語(yǔ)言注意力記憶網(wǎng)絡(luò)的輸出向量O,如式(4)所示
O=∑_(k=1)^l?〖 p_k v_k 〗 (4)
1.2" 將注意力記憶網(wǎng)絡(luò)與Transformer結(jié)合
本文將Transformer作為主編碼器-解碼器框架。在許多翻譯與生成任務(wù)中已經(jīng)表明,Transformer模型具有更有效的性能。在Vaswani等[4]的描述中,編碼器由6個(gè)完全相同的層堆疊而成。每一層都有兩個(gè)子層,第一個(gè)子層是一個(gè)多頭注意力機(jī)制,第二個(gè)子層是一個(gè)簡(jiǎn)單的、位置完全連接的前饋網(wǎng)絡(luò)。對(duì)每個(gè)子層再采用一個(gè)殘差連接,接著進(jìn)行層標(biāo)準(zhǔn)化。也就是說,每個(gè)子層的輸出是LayerNorm(x+Sublayer(x)),其中Sublayer(x)是由子層本身實(shí)現(xiàn)的函數(shù)。為了方便這些殘差連接,模型中的所有子層以及嵌入層產(chǎn)生的輸出維度都為dmodel=512。解碼器同樣由6個(gè)完全相同的層堆疊而成。除了每個(gè)編碼器層中的兩個(gè)子層之外,解碼器還插入第3個(gè)子層,該層對(duì)編碼器堆疊的輸出執(zhí)行多頭注意力機(jī)制。與編碼器類似,在每個(gè)子層采用殘差連接進(jìn)行層標(biāo)準(zhǔn)化。
為了與記憶網(wǎng)絡(luò)的輸出向量O的維度保持一致,將模型中的所有子層以及嵌入層產(chǎn)生的輸出維度均設(shè)置為768。當(dāng)跨語(yǔ)言注意力記憶網(wǎng)絡(luò)獲得潛在句子嵌入O時(shí),將通過以下的步驟將其與Transformer的編碼器-解碼器結(jié)合起來。
首先,輸入的源句子通過Transformer的編碼器,它為每個(gè)輸入句子的詞向量ei產(chǎn)生一個(gè)隱藏狀態(tài)hi。然后通過逐元素加法h ?=h_i+O將hi和O結(jié)合,并將其通過每個(gè)多頭注意層發(fā)送到解碼過程,在每個(gè)解碼步驟t計(jì)算注意力向量a^t=α_1^t α_2^t…α_i^t…α_n^t。計(jì)算過程如式(5)、式(6)所示
α_i^t=(exp (e_it))/(∑_(j=1)^(|i|)?〖exp (e_jt)〗) (5)
e_it=match(h_i?s_(t-1)) (6)
式中:s_(t-1)是解碼器的隱層狀態(tài);match(hi,s_(t-1))是比較編碼器狀態(tài)hi和解碼器狀態(tài)s_(t-1)的一個(gè)匹配函數(shù)。a^t用于產(chǎn)生句子的上下文向量c^t,于是編碼器端隱藏狀態(tài)通過加權(quán)求和得到,如公式(7)所示
c^t=∑_(i=1)^n?〖α_i^t (h_i ) ? 〗 (7)
解碼器最后根據(jù)編碼器端的上下文表示映射為自然語(yǔ)言序列。在t時(shí)刻,首先將t-1時(shí)刻輸出的翻譯通過嵌入層得到y(tǒng)_(t-1),以t時(shí)刻的嵌入向量y_(t-1)與t-1時(shí)刻的輸出向量s_(t-1)為輸入,通過全連接層得到輸出向量s_t,再經(jīng)過Softmax函數(shù)預(yù)測(cè)輸出,得到每個(gè)時(shí)刻的概率分布,輸出概率最大的翻譯y_t。解碼器端的解碼過程如式(8)所示
y_t=G(s_(t-1 ),y_(t-1)" ,c^t) (8)
2" 實(shí)驗(yàn)設(shè)置
2.1" 實(shí)驗(yàn)數(shù)據(jù)
本文實(shí)驗(yàn)數(shù)據(jù)分為兩類,一類選自與Cao等[14]相同的中英聯(lián)合國(guó)語(yǔ)料庫(kù),另一類選自WMT英德數(shù)據(jù)集。本次實(shí)驗(yàn)數(shù)據(jù)的詳細(xì)信息見表1所示,其中M表示百萬(wàn)條。
本文選擇用Moses[16]工具包提供的腳本對(duì)訓(xùn)練語(yǔ)料和單語(yǔ)的翻譯記憶進(jìn)行預(yù)處理,使用Moses工具包將訓(xùn)練數(shù)據(jù)的最大句長(zhǎng)控制為50,源端與目標(biāo)端的詞典大小都設(shè)置為3萬(wàn),其中英文端不區(qū)分大小寫。本文對(duì)源端與目標(biāo)端都采用了字節(jié)對(duì)編碼(Byte Pair Encoding,BPE)[17],在做BPE處理時(shí),設(shè)置合并操作的次數(shù)為3萬(wàn)。本文使用BLEU值[18]作為評(píng)價(jià)指標(biāo)。
2.2" 實(shí)驗(yàn)設(shè)置
在訓(xùn)練開始前,對(duì)跨語(yǔ)言注意力網(wǎng)絡(luò)的關(guān)鍵向量uk和vk進(jìn)行隨機(jī)初始化,在訓(xùn)練過程中,兩個(gè)向量會(huì)不斷地更新。編碼器-解碼器嵌入維數(shù)均設(shè)置為768。詞向量和編碼器、解碼器輸入的最大長(zhǎng)度為768。前饋神經(jīng)網(wǎng)絡(luò)的維度設(shè)置為2 048,模型參數(shù)均使用Glorot Initialisation方法初始化,跨語(yǔ)言注意力記憶網(wǎng)絡(luò)和編碼器詞嵌入層共享參數(shù)。采用Adam[19]作為優(yōu)化器,其中Adam優(yōu)化器的參數(shù)β1為0.9,β2為0.98,ε為10-9。在訓(xùn)練過程中,固定了隨機(jī)種子seed為3 435,以token為單位的批處理大小設(shè)置為4 096,warm-up step設(shè)置為16 000,learning rate為0.5,dropout[20]為0.1,label smoothing為0.1,并使用相對(duì)熵作為損失函數(shù)。在測(cè)試過程中,使用集束搜索beam search進(jìn)行解碼,并設(shè)置beam size為4,長(zhǎng)度懲罰因子α為0.6。在本文中將此模型叫作TF-Attention。
將Transformer模型作為Baseline,其中詞向量的維度以及源端和目標(biāo)端的隱層大小都設(shè)置為512,相關(guān)參數(shù)與Vaswani等[4]保持一致(在本文中將此模型叫作TF)。最后實(shí)現(xiàn)了Cao等[14]的方法,其中翻譯記憶庫(kù)選用雙語(yǔ)的翻譯句對(duì),為了與本文方法進(jìn)行比較,將翻譯記憶庫(kù)大小設(shè)置為40萬(wàn),句長(zhǎng)最大為50,在本文中將此模型叫TF-TM。
本文實(shí)驗(yàn)在NVIDIA TITAN RTX 24 G顯卡上訓(xùn)練。訓(xùn)練20次后對(duì)模型停止訓(xùn)練,將BLEU作為評(píng)價(jià)指標(biāo),在20個(gè)模型中,選擇在各個(gè)翻譯方向上測(cè)試集BLEU值最高的模型。
3 實(shí)驗(yàn)結(jié)果與分析
3.1 實(shí)驗(yàn)結(jié)果
在本文中,對(duì)不同模型的結(jié)果進(jìn)行比較。表2展示了在En-Zh、Zh-En、En-De、De-En 4個(gè)翻譯方向上的實(shí)驗(yàn)結(jié)果。
在表2中可以發(fā)現(xiàn),與Baseline(TF)相比,使用跨語(yǔ)言注意力模型的方法在全部測(cè)試集上都獲得了提升。其中在En-Zh方向BLEU值提高了0.58;Zh-En方向上BLEU值提高了1.12。En-De方向上BLEU值提高了2.41;De-En方向上提高了1.85。
本模型的翻譯結(jié)果與TF-TM模型相比,也均獲得了提升。實(shí)驗(yàn)表明使用單語(yǔ)的翻譯記憶并不比雙語(yǔ)的翻譯記憶效果差,反而得到更好的翻譯質(zhì)量,且使用少量的單語(yǔ)翻譯記憶可以直接在兩種語(yǔ)言之間挖掘有用信息,從而提高了模型的翻譯質(zhì)量,驗(yàn)證了本方法的有效性。
3.2 實(shí)驗(yàn)分析
3.2.1 翻譯記憶庫(kù)規(guī)模的大小對(duì)翻譯的影響
在En-Zh、Zh-En兩個(gè)翻譯方向上依次進(jìn)行實(shí)驗(yàn)。分別將40萬(wàn)單語(yǔ)語(yǔ)料庫(kù)劃分為4個(gè)大小相等的子集。將第一個(gè)子集作為翻譯記憶,并通過在第一個(gè)子集中依次加入第二個(gè)子集,再加入單語(yǔ)數(shù)據(jù)來逐步擴(kuò)大TM進(jìn)行模型的訓(xùn)練,實(shí)驗(yàn)結(jié)果如表3所示。由實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn),不同規(guī)模大小的翻譯記憶庫(kù)影響了模型的翻譯效果,翻譯記憶庫(kù)規(guī)模越大,可利用的信息就越多,模型的翻譯性能越好。
3.2.2 不同相似程度下的翻譯記憶對(duì)模型的影響
由于實(shí)驗(yàn)資源有限,在實(shí)驗(yàn)中所使用的單語(yǔ)翻譯記憶庫(kù)的大小最大為40萬(wàn)。根據(jù)相似度算法為訓(xùn)練集檢索到相應(yīng)翻譯記憶,并將其參與訓(xùn)練。表4中給出了不同相似度區(qū)間內(nèi)的翻譯記憶數(shù)據(jù)占實(shí)際翻譯記憶庫(kù)大小的比例。
由表4的實(shí)驗(yàn)結(jié)果可以看出,兩個(gè)翻譯方向均在相似度較高的[0.7,0.8)子集范圍內(nèi)獲得了改進(jìn),在En-Zh翻譯方向上BLEU值提高了0.72。而在[0.8,0.9)、[0.9,1.0)兩個(gè)子集內(nèi),并沒有因?yàn)橄嗨贫鹊脑龈叨@得更高的BLEU值,原因可能是在這兩個(gè)區(qū)間內(nèi)的單語(yǔ)翻譯記憶句子所占比例較小??傊?,為訓(xùn)練集提前檢索到相似度在[0.7,0.8)范圍內(nèi)的單語(yǔ)翻譯記憶用作本模型的TM,可以明顯提高模型的翻譯質(zhì)量;而且根據(jù)占比大小可知,TM越大,對(duì)翻譯質(zhì)量的提升越明顯。
3.2.3 將訓(xùn)練語(yǔ)料作為翻譯記憶
在訓(xùn)練語(yǔ)料中隨機(jī)選出40萬(wàn)目標(biāo)端句子作為翻譯記憶庫(kù),并將其參與訓(xùn)練。得到的實(shí)驗(yàn)結(jié)果如表5所示。
從表5中可以看出,直接將目標(biāo)端句子作為翻譯記憶取得了顯著的提升,在En-Zh翻譯方向上比Baseline提高了2.01;與表2中隨機(jī)挑選40萬(wàn)翻譯記憶的結(jié)果相比,BLEU值也提高了1.43。這表明如果為模型提供完美的TM,可以產(chǎn)生非常好的翻譯結(jié)果。
3.2.4 實(shí)例分析
表6為En-Zh方向上的翻譯示例展示,對(duì)比了TF、TF-TM、TF-Attention 3個(gè)模型下的翻譯結(jié)果。可以看到,TF(Baseline)模型在翻譯時(shí)將“Regulations”翻譯成了“條例”,TF-TM模型受到翻譯記憶的影響將“Regulations”翻譯正確,但沒有將“《》”翻譯出來,TF與TF-TM模型在翻譯“實(shí)際運(yùn)作情況進(jìn)行審查”時(shí)都將“情況”翻譯成“方式”,而TF-Attention模型的翻譯幾乎完全正確,這表明借助跨語(yǔ)言注意力記憶網(wǎng)絡(luò)可以在翻譯記憶中學(xué)到更深層的有用信息,進(jìn)而幫助模型更好地翻譯。
3.2.5 低資源場(chǎng)景下的結(jié)果
為了驗(yàn)證在低資源場(chǎng)景下本方法的有效性,收集了有關(guān)于醫(yī)學(xué)和法律兩個(gè)領(lǐng)域下的英德數(shù)據(jù)集。分別抽取2 000條句子作為開發(fā)集和測(cè)試集,然后用一部分雙語(yǔ)句對(duì)進(jìn)行訓(xùn)練,最后將剩余數(shù)據(jù)的目標(biāo)端用來構(gòu)建單語(yǔ)的翻譯記憶,表7為數(shù)據(jù)的詳細(xì)分布信息。
實(shí)驗(yàn)結(jié)果如表8所示。將加入通用領(lǐng)域的單語(yǔ)翻譯記憶模型叫作TF-ordinary,將加入特定領(lǐng)域即與訓(xùn)練語(yǔ)料相關(guān)的單語(yǔ)翻譯記憶模型叫作TF-specific。
從表8可以看出,當(dāng)使用通用領(lǐng)域的單語(yǔ)數(shù)據(jù)作為TM來增強(qiáng)模型時(shí),與基線模型相比,在醫(yī)學(xué)領(lǐng)域BLEU值提高了1.85,在法律領(lǐng)域BLEU值提高了2.51。但在加入特定領(lǐng)域單語(yǔ)數(shù)據(jù)作為TM時(shí),本模型與基線模型相比提高的更多,在醫(yī)學(xué)領(lǐng)域BLEU值提高了2.32,在法律領(lǐng)域BLEU值提高了3.08。實(shí)驗(yàn)表明,在指導(dǎo)翻譯上,加入特定領(lǐng)域的單語(yǔ)翻譯記憶要比通用領(lǐng)域的數(shù)據(jù)更具有效果,從而也證明了本方法的有效性。
4 結(jié)論
本文探索了一種新的將翻譯記憶融合到神經(jīng)網(wǎng)絡(luò)機(jī)器翻譯的方法,即基于跨語(yǔ)言注意力記憶網(wǎng)絡(luò)的神經(jīng)機(jī)器翻譯方法。與之前的方法不同,本文使用單語(yǔ)的句子集合作為翻譯記憶,同時(shí)使用一個(gè)跨語(yǔ)言記憶網(wǎng)絡(luò),將單語(yǔ)翻譯記憶與源句子在向量空間中進(jìn)行對(duì)齊,獲得翻譯記憶的向量表示,最終將翻譯記憶的信息融合到神經(jīng)機(jī)器翻譯模型中,這種方法進(jìn)一步提高了模型的翻譯質(zhì)量。與之前的研究相比,本文使用的方法能夠?qū)⒎g記憶的檢索匹配過程與模型訓(xùn)練中的參數(shù)共同優(yōu)化,進(jìn)行一體化訓(xùn)練,不管是在通用領(lǐng)域還是特定領(lǐng)域都取得了不錯(cuò)的提升效果。
翻譯記憶和機(jī)器翻譯相結(jié)合,是一項(xiàng)非常具有應(yīng)用價(jià)值和未來遠(yuǎn)景的研究工作。將來會(huì)進(jìn)一步探索如何將大量的單語(yǔ)翻譯記憶結(jié)合到機(jī)器翻譯模型中,以及怎樣利用不同句法知識(shí)來提高神經(jīng)機(jī)器翻譯。
參考文獻(xiàn)(References):
[1] 馮洋,邵晨澤.神經(jīng)機(jī)器翻譯前沿綜述[J].中文信息學(xué)報(bào),2020,34(7):1-18.
[2] Sutskever I,Vinyals O,Le Q.Sequence to sequence learning with neural networks[C]//Advances in Neural Information Processing Systems 27:Annual Conference on Neural Information Processing Systems.Montreal, Canada,2014:3104-3112.
[3] Bahdanau D,Cho K,Bengio Y.Neural machine translation by jointly leaning to align and translate[C]//Proceedings of International Conference on Learning Representations. San Diego,USA:International Conference on Learning Representations,2015.
[4] Vaswani A,Shazeer N,Parmar N, et al.Attention is all you need[C]//Proceeding of Advance in Neural Information Processing Systems.Long Beach,USA,2017:5998-6008.
[5] 肖夢(mèng)琳.翻譯記憶庫(kù)在CAT中的建設(shè)[J].智庫(kù)時(shí)代,2020(9):239-240.
[6] 阮方圓.三大主流計(jì)算機(jī)輔助翻譯軟件[J].信息與電腦(理論版),2019(15):89-90,93.
[7] 汪昆,宗成慶,蘇克毅.統(tǒng)計(jì)機(jī)器翻譯和翻譯記憶的動(dòng)態(tài)融合方法研究[J].中文信息學(xué)報(bào),2015,29(2):87-94,102.
[8] Gu J,Wang Y,Cho K,et al.Search engine guided non-parametric neural machine translation[C]//Proceedings of the AAAI Conference on Artificial Intelligence.New Orleans, USA,2018:5133-5140.
[9] Zhang J,Utiyama M,Sumita E,et al.Guiding neural machine translation with retrieved translation pieces[C]//Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics:Human Language Technologies.New Orleans,USA,2018:1325-1335.
[10] Bapha A,F(xiàn)irat O.Non-parametric adaptation for neural machine translation[C]//Proceeding of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics:Hunan Language Technologies, Minneapolis, USA,2019:1921-1931.
[11] Cao Q,Xiong D.Encoding gated translation memory into neural machine translation[C]//Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing.Brussels, Belgien,2018:3041-3047.
[12] Bulte B,Tezcan A.Neural fuzzy repair:integrating fuzzy matches into neural machine translation[C]//Proceedings of the 57th Annual Meeting of the Association" for Computational Linguistics.Florence, Italy,2019: 1800-1809.
[13] XU J T,Crego J M,Senellart J.Boosting neural machine translation with similar translations[C]//Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics.Online,2020:1580-1590.
[14] 曹騫,熊德意.基于數(shù)據(jù)擴(kuò)充的翻譯記憶庫(kù)與神經(jīng)機(jī)器翻譯融合方法[J].中文信息學(xué)報(bào),2020,34(5):36-43.
[15] Reimers N,Gurevych I.Sentence-BERT:sentence embeddings using siamese BERT-networks[C]//Proceedings of the 2019 Conference on Emprirical Methods in Natural Language Processing.Hong Kong, China,2019:3982-3992.
[16] Koehn P,Hoang H,Birch A,et al.Moses:open source toolkit for statistical machine translation[C]//Proceedings of the 45th Annual Meeting of the Association for Computational Linguistics.Prague, Czech Republic,2007.
[17] Sennrich R,Haddow B,Birch A.Neural machine translation of rare words with subword units[C]//Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics,Berlin, Germany,2016.
[18] Papineni K,Roukos S,Ward T,et al.BLEU:A method for Automatic Evaluation of Machine Translation[C]//Proceedings of the 40th Annual Meeting of the Association for Computational Linguistics. Philadelphia,USA,2002:311-318.
[19] Kingma D,Ba J.Adam:A Method for Stochastic Optimiza-tion[C]//International Conference on Learning Representa-tions.San Diego,USA,2015.
[20] Srivastava N,Hinton G,Krizhevsky A,et al.Dropout:a simple way prevent neural networks from overfitting[J].Journal of Machine Learning Research,2014,15(1):1929-1958.
(責(zé)任編輯:吳萍" 英文審校:杜文友)