賀楚祎,張家俊
(1. 中國科學院 自動化研究所 模式識別國家重點實驗室,北京 100190;2. 中國科學院大學,北京 100049)
可控翻譯[1]是在翻譯模型預測過程中添加預先指定的約束單詞和短語,從而獲得包含約束詞匯的翻譯結果。它在領域機器翻譯、交互式機器翻譯等應用中具有重要意義??煽胤g中使用的詞典可以是從領域詞典中抽取的術語[2],也可以是用戶在修正交互式機器翻譯系統(tǒng)的翻譯結果時所給定[3]。在基于短語的統(tǒng)計機器翻譯中[4],可控翻譯的思想比較容易實現(xiàn),然而在神經(jīng)機器翻譯(Neural Machine Translation,NMT)中[5],可控翻譯的任務相對難以完成,因為在模型訓練過程中難以顯式引入額外的詞匯約束信息。
一些工作探索了神經(jīng)機器翻譯中的可控翻譯方法,這些方法可以分為兩類: 硬可控方法和軟可控方法。硬可控方法盡可能使給定的約束詞匯出現(xiàn)在翻譯結果中,這些工作通過設計新的解碼算法來實現(xiàn),而對模型或訓練過程不做修改,例如,Hokamp等人[6]提出網(wǎng)格柱搜索(Grid Beam Search,GBS)算法用于模型推理解碼階段,Post等人[7]提出了動態(tài)柱分配(Dynamic Beam Allocation,DBA)算法對GBS算法進行加速優(yōu)化。然而,與傳統(tǒng)的柱搜索算法相比,這種解碼算法的計算復雜度要高出很多。軟可控方法則不能確保所有約束都出現(xiàn)在翻譯結果中,這類方法通常修改NMT模型的訓練過程來進行可控翻譯。Li等人[8]在模型訓練過程中用占位符標簽替換源端和目標端命名實體,模型通過學習翻譯這些占位符來學習翻譯約束詞匯;Song等人[9]和Dinu等人[10]提出了用數(shù)據(jù)增強方法來訓練NMT模型,這些方法通過用約束替換相應的源端詞匯或在相應的源端詞匯后附加約束來構建源端訓練語料,盡管在訓練數(shù)據(jù)中引入了雙語詞典信息,但模型無法有效區(qū)分文本和約束。
此外,在這兩類方法中,雙語詞典在訓練或推理階段都是必不可少的,因此,其性能在很大程度上取決于雙語詞典的質量,但對于命名實體而言,類似的雙語詞典構建工作尚不完善。本文首先提出一種基于多引擎融合的雙語命名實體詞典構建方法,構建出高質量大規(guī)模的雙語命名實體詞典,為可控翻譯提供可靠的外部數(shù)據(jù)支撐,接著使用數(shù)據(jù)增強方法在訓練數(shù)據(jù)中顯式引入目標端命名實體,并基于Transformer架構,修改嵌入層以適應訓練數(shù)據(jù)變化、引入指針網(wǎng)絡來訓練模型在合適的時機對源端句子中的目標端詞元進行直接復制,從而完成可控翻譯的目標。
本文的主要貢獻如下:
(1) 提出了一種雙語命名實體詞典構建方法,該方法通過將源語言命名實體輸入多個在線翻譯系統(tǒng)得到候選翻譯,并使用最小貝葉斯風險決策方法對多個候選翻譯進行篩選,獲得最優(yōu)目標端翻譯,從而構建大規(guī)模、高質量的雙語命名實體詞典。
(2) 提出了一種在訓練過程中引入詞典約束的Transformer模型,該模型能夠通過雙語命名實體詞典,在源端訓練數(shù)據(jù)中引入命名實體約束,使模型生成的翻譯結果盡可能包含約束,從而達到翻譯可控。通過在NIST中-英測試集上的實驗得出,該模型在譯文整體翻譯質量和命名實體翻譯準確率上相比其他NMT中可控翻譯相關工作都取得了顯著提升,且模型解碼速度尚在可接受范圍。
硬可控翻譯方法主要修改模型解碼過程,在解碼過程中盡最大可能保證約束出現(xiàn)在翻譯結果中。Hokamp等人[6]提出了GBS算法,在模型解碼過程中采用復雜動態(tài)規(guī)劃方法,使得翻譯結果一定是滿足所有約束的結果。Post等人[7]在GBS算法的基礎上進行優(yōu)化,提出了DBA算法,通過將假設與將相同數(shù)量的約束分配到組中,并在每個時間步動態(tài)地在這些組中劃分固定大小的波束,解決了GBS算法每個句子所占用波束不固定的問題,將解碼算法的時間復雜度降低為原來的1/C(C為約束數(shù)目)。這類方法的問題是它們不考慮譯文的整體置信度,在解碼過程中強制生成約束。此外,這類方法對于約束的順序有著嚴格要求,這對于語法差異較大的兩種語言的翻譯任務可能存在負面影響。另一個問題是與柱搜索相比,這類方法的解碼速度顯著降低。
軟可控方法一般從數(shù)據(jù)或模型入手改變模型的訓練流程。Li等人[8]在模型訓練過程中用占位符標簽替換源端和目標端命名實體,將模型學習命名實體翻譯轉化為學習翻譯占位符,在推理階段同樣將源端與目標端命名實體替換為占位符,待模型翻譯完成后再用雙語命名實體詞典進行恢復。Song等人[9]提出了一種數(shù)據(jù)增強方法,通過雙語詞典將相應的源端詞匯替換為目標端約束,構建增強后的訓練語料,這樣模型在訓練過程中可以學習到選擇源端詞匯或是目標端約束詞匯作為當前時間步預測的結果。Dinu等人[10]提出了類似方法來翻譯給定的術語約束,用雙語詞典中相應的目標端術語直接替換源端術語,或是將目標端術語添加在源端術語之后。排除序列長度改變所帶來的影響,軟可控方法相比于硬可控方法基本不影響模型解碼速度,但模型在翻譯過程中無法獲得源端詞匯和目標端約束之間的對應關系,因此會出現(xiàn)約束詞匯重復翻譯或漏翻譯的情況。Alkhouli等人[11]研究了Transformer中使用源端-目標端注意力進行詞對齊的質量,并提出通過注入外部對齊信號來提高對齊精度。他們沒有使用所有源端詞元的注意力權重來計算源端上下文,而是添加了一個特殊的注意力頭,其源端上下文僅根據(jù)外部詞對齊信息在對齊的源端詞元上計算。為了在解碼過程中提供對齊信號,一個單獨的“自注意力對齊模型”被訓練來學習源端對齊,同樣來自相同的外部詞對齊信息。然而,使用單獨的對齊模型在很大程度上增加了解碼復雜性,需要特殊處理以優(yōu)化速度。此外,訓練和解碼中使用的對齊質量之間的差異會對模型性能產生負面影響。Zenkel等人[12]提出在 Transformer 架構中添加一個單獨的對齊層,并學習將注意力權重集中在給定目標詞的相關源端詞元上,以無監(jiān)督的方式從雙語數(shù)據(jù)中獲取,而不使用外部詞對齊信息,從注意力層學習到的詞對齊比從樸素Transformer 模型中學習到的更加準確。
本文提出的可控翻譯方法相比于上述方法可以在訓練過程中有效利用雙語詞典信息,該方法對Transformer模型的源端訓練數(shù)據(jù)及輸入表示層進行了增強,并在Transformer模型的解碼器中引入指針網(wǎng)絡來增加約束詞匯的復制概率,大大提高了模型使用外部約束的能力,從而大幅提升命名實體翻譯質量。
本文主要聚焦于常見命名實體類別,包括人名、地名和組織機構名的翻譯。雙語命名實體是指屬于不同語言并具有互譯關系的命名實體對。本文提出的模型引入外部雙語命名實體信息,通過可控翻譯方法來提升神經(jīng)翻譯模型對于命名實體的翻譯能力,因此,雙語命名實體的質量對模型的性能起著至關重要的作用。然而,在目前的相關工作中,雙語命名實體詞典雖然被廣泛應用,但大多工作對其構建并沒有引起重視,相關工作中對于雙語命名實體詞典的構建方法都較為粗糙。此外,本文對于雙語命名實體詞典構建的相關工作進行了調研與實驗,并在此基礎上提出了一種融合在線翻譯引擎的構建方法,相比之前的工作能夠構建更高質量的雙語命名實體詞典。
在線翻譯引擎對于命名實體的翻譯通常有特殊的處理方式,不同的在線翻譯引擎可能采用了不同的命名實體翻譯方法,因此本文希望綜合利用多個在線翻譯引擎的優(yōu)勢。例如,對于中-英翻譯,可以將中文命名實體送入在線翻譯引擎,獲得英文翻譯結果。當同時爬取到多個在線翻譯系統(tǒng)的翻譯結果時,使用最小貝葉斯風險決策方法從中選取出最佳翻譯候選,如式(1)所示。
(1)
其中,S為源語言命名實體,T為目標語言命名實體,L為風險函數(shù)。
P(T|S)是給定源語言命名實體S,目標語言命名實體T的條件概率,當存在多個翻譯候選時,P(T|S)可以由式(2)計算得出:
(2)
其中,P(T,S)是源語言命名實體S與翻譯候選T的聯(lián)合概率分布,若為統(tǒng)計機器翻譯系統(tǒng),該概率分布可以根據(jù)各個統(tǒng)計機器翻譯系統(tǒng)對翻譯候選T的總打分近似計算得出,但由于我們的翻譯系統(tǒng)都是在線翻譯系統(tǒng),因而我們可以假設條件概率近似服從于均勻分布,即P(T|S)~U(0,1)。L(T,T′)為風險函數(shù),在一般機器翻譯系統(tǒng)中,常使用BLEU值作為機器翻譯譯文評價指標,因而風險函數(shù)的定義如式(3)所示。
LTER(T,T′)=1+TER(T,T′)
(3)
TER(Translation Edit Rate)[13]度量的是將候選譯文修改為參考譯文所需要的編輯次數(shù)。盡管TER作為風險函數(shù)較為簡單,但李等人[14]的研究表明,該指標在機器翻譯系統(tǒng)融合領域中能夠取得不錯的效果,計算也較為簡單,因而本文在風險函數(shù)中采用這一指標。
本文構建了一個雙語命名實體測試集用于測試本文方法的效果,并與其他構建方法進行對比。本文從LDC中-英平行語料中抽取人名、地名和組織機構名三類中文命名實體,按照詞頻每類抽取詞頻較高(>1000)和較低(<100)的命名實體各400對,每類再加上200對LDC平行語料不包含的命名實體構成測試集。
本文爬取了Google翻譯、百度翻譯、有道翻譯和Bing翻譯四個在線翻譯系統(tǒng),并用2.1節(jié)中介紹的最小貝葉斯風險解碼方法進行最佳翻譯候選獲取,結果如表1所示。
表1 最小貝葉斯風險解碼方法的效果 (單位: %)
從實驗結果可以看出,最小貝葉斯風險決策方法能夠整合不同在線翻譯系統(tǒng)的優(yōu)勢,從而篩選出最優(yōu)的翻譯候選,提升命名實體翻譯質量。
作為對比,介紹兩個相關工作:
(1) 基于詞對齊的抽取方法。詞對齊是自然語言處理領域中的經(jīng)典任務,能夠找出平行句對中詞的對應關系,Chen等人[15]利用基于詞對齊和命名實體識別(Named Entity Recognition,NER)的多特征交互模型從雙語平行語料中進行雙語命名實體的大規(guī)模對齊。
(2) 基于跨語言詞向量的方法。Harris等人[16]認為,具有相同上下文的詞匯可能詞意相近,因此,我們可以通過跨語言詞向量來尋找雙語語料中的相似上下文??缯Z言詞向量是指一個向量空間,這個向量空間能夠表示不同語言的詞匯信息,因此可以用于計算不同語言之間的上下文或詞匯去相似性。Conneau等人[17]提出了通過跨語言詞向量構建雙語詞典的方法,這一方法同樣可以用于雙語命名實體詞典的獲取: 對于每個平行句對,首先對源語言句子和目標語言句子分別做NER,得到雙語命名實體,用跨語言詞向量編碼雙邊命名實體的向量表示,對于每個源語言命名實體,都計算它與每個目標端命名實體的上下文相似度,將最相似的作為其對應的目標端命名實體。
本文使用NIST03中-英測試集對三種方法進行測試。由于命名實體的抽取率主要與NER模型的性能相關,因而本文僅評估翻譯準確率。由于一個源語言命名實體可能存在多個正確翻譯,如“北京”譯為“Beijing”或“Peking”都是正確翻譯,因而本文采用人工評估的方式對詞典準確率進行評估。結果如表2所示。
表2 三種構建方法準確率對比 (單位: %)
從實驗結果看出,本文方法的命名實體翻譯準確率遠超這兩類方法,并且由于算法簡單,耗時較短,因此適用于構建雙語命名實體詞典。同時,本文方法也存在著一定的不足,例如,雙語命名實體詞典中仍會存在翻譯錯誤,這些錯誤會傳播到后續(xù)的翻譯流程中,給正確翻譯命名實體帶來一定困難。
本文在Transformer模型的基礎上進行改進,Transformer模型由Vaswani等人在2017年提出[18],是一個使用了多頭自注意力機制的編-解碼網(wǎng)絡,編碼器和解碼器均是由六個相同的子層堆疊而成,相比于之前的端到端序列模型,Transformer使用了多頭自注意力機制用于加速計算并能有效緩解長距離依賴下梯度消失的問題。
給定一個由源語言句子X,目標語言句子Y以及約束詞匯的集合C,模型的訓練損失可以定義如式(4)所示。
L=∑log(Y|X′,C;θ)
(4)
其中,X′=[X,C]為約束增強后的源語言句子,它是通過將源語言句子X和該句子約束集合C中每個約束Ci用分隔符號拼接而成的:
約束詞匯可以在訓練過程中隨機選取,也可以用第2節(jié)所構建的雙語命名實體詞典進行動態(tài)添加,具體內容將在4.2節(jié)中進行闡述。
由于在源端訓練數(shù)據(jù)中加入了目標端詞匯,因此本文共享了源語言和目標語言詞表,并共享源端和目標端的詞匯嵌入層(Word Embedding)參數(shù),以強化模型對于雙語的表示能力,使得模型更容易將源端句子中的約束詞匯復制到翻譯結果中。同時,為了讓模型適應增強后的數(shù)據(jù),本文參考了BERT模型[19]的結構來修改編碼器的表示層。
在編碼器的嵌入層網(wǎng)絡中增加段嵌入(Segment Embedding)部分,與BERT模型相同,段嵌入將文本部分與約束部分用不同的位置下標進行標識,讓模型的表示層獲得文本與約束的分塊信息,使我們的模型像BERT模型一樣能夠處理分段輸入信息。
參考Gulcehre等人[20]將指針網(wǎng)絡用于稀有詞與未登錄詞預測方面的工作,本文在Transformer解碼器中引入了指針網(wǎng)絡。指針網(wǎng)絡能讓每個指針對應輸入序列的一個元素,從而能夠通過模型之外的一些計算,例如通過Transformer中的編碼-解碼器注意力得分對輸入序列的每個詞匯直接進行權重分配,產生一個新的概率分布,這一概率分布通常被稱為復制概率Pcopy,代表模型直接復制源端詞匯作為目標端輸出的概率分布。這與我們的想法不謀而合: 在源端訓練數(shù)據(jù)中加入了目標端約束詞匯,希望模型能夠在合適的時機從源端句子中直接復制約束詞匯作為輸出,達到可控翻譯的目的。
具體來說,在任意解碼時間t,模型對于當前目標端詞匯的預測概率分布為P(yt|X′,y P(yt|X′,y (5) 模型預測概率分布Ppredict由模型解碼器輸出進行Softmax運算后得到;復制概率Pcopy由解碼器最后一層的多頭編碼-解碼器注意力(Multi-head Attention)均值作為權重得到。 對于輸出詞表中的每一個詞匯,如果目標端詞匯y在源端句子中(即y為設置的約束),則其對應的復制概率值Pcopy(y)為y在最后一層解碼器的編碼-解碼器注意力henc中對應位置的得分;反之如果y沒有在源端句子中出現(xiàn),則將復制概率Pcopy(y)設置為0。結合Pcopy與Ppredict,就得到了模型新的輸出詞表概率分布如式(6)、式(7)所示。 其中,gt∈[0,1]是控制兩部分概率權重的門控信號,由上下文向量ct和最后一層解碼器輸出的隱層狀態(tài)zt計算得到,其中上下文向量ct又由編碼-解碼器注意力和編碼器輸出隱狀態(tài)計算得到: 其中,hn是編碼器輸出在位置n的隱狀態(tài),αt,n是t時刻位置n最后一層解碼器的編碼-解碼器注意力得分,N是源端句子的長度。gt由一個簡單的前饋神經(jīng)網(wǎng)絡(Feed Forward Network,FFN)計算得到,其中,Wc,Wz,bg都是可訓練的參數(shù),σ為sigmoid函數(shù)。gt的計算方式參考了傳統(tǒng)注意力分數(shù),本文認為,其意義可以概括為:gt可以度量模型在時間步t的注意力更傾向于復制源端詞匯,或是預測目標端詞匯,以此來選擇復制約束詞匯的合適時機。模型整體架構如圖1所示。 圖1 模型整體架構 本節(jié)將詳細闡述模型訓練的實驗數(shù)據(jù),實驗設置,并從譯文整體質量、命名實體翻譯質量以及模型解碼速度對模型性能進行評估和分析。 我們從LDC中-英平行語料中抽取了約200萬句對的平行數(shù)據(jù)對模型進行訓練,并使用NIST02-06中-英測試集進行模型性能的測試。NIST測試集中有四個參考譯文,考慮到不同參考譯文給出的命名實體翻譯可能存在差異,我們不在一次測試中使用所有的參考譯文,而是對四個參考譯文分別測試后取平均值。中、英文句子均使用Mosesdecoder進行預處理和子詞分割,并共同學習大小為32K的聯(lián)合詞表。 為了進行對比和驗證模型的效果,我們選取了一些相關工作中的方法作為基線模型: (1) 基于占位符替換的數(shù)據(jù)增強方法[8]。該方法將源端與目標端訓練數(shù)據(jù)中的命名實體替換為一一對應的特殊符號,對模型進行訓練。測試階段同樣將源語言測試集中的命名實體替換,并輸入模型翻譯,得到翻譯結果后再將特殊符號還原為目標語言命名實體。 (2) Wang等人提出的Transformer + TME方法[21]。該方法對Transformer進行了三處修改,一是Tagging,在源端訓練數(shù)據(jù)中用分隔符將命名實體區(qū)分出來;二是Mixed,即混合源端與目標端命名實體,將目標端命名實體直接拼接在源端命名實體之后;三是Extra Embedding,即加入額外的嵌入層向量,與我們的方法類似,在嵌入層中加入一個區(qū)分普通詞匯與命名實體的向量表示,從而使模型能夠從源端訓練數(shù)據(jù)中區(qū)分出命名實體,為了方便起見,我們將該方法的三個改進簡寫為“TME”。 同時,為了驗證雙語命名實體詞典在模型訓練中的必要性,我們還對比了不添加約束和隨機選取約束進行訓練的情況。隨機選取約束的方式為: 首先隨機生成一個約束數(shù)目k(本文中設置為0~4),k服從[0.3,0.2,0.3,0.1,0.1]的概率分布。之后對訓練集中的每個平行句對,我們在訓練過程中都采取動態(tài)約束選取,并在選取過程中從候選項排除高頻詞與停用詞。在測試階段,我們統(tǒng)一使用雙語命名實體詞典對測試集進行約束。 超參數(shù)設置方面,由于設置了源端最大輸入長度為1 024,因此我們將最大約束數(shù)量設置為50,避免過長句的出現(xiàn);同時使用Adam優(yōu)化器和標簽平滑(Label Smoothing)進行訓練,學習率l=0.000 5,warmup步數(shù)取4 000,所有網(wǎng)絡層的Dropout參數(shù)都設為0.3,最大更新步數(shù)設定為20萬步。 該部分從BLEU值[22]、命名實體翻譯準確率(Named Entity Translate Rate,NETR)和解碼速度(token/s)三個指標分別對比了我們的方法和4.2節(jié)中提到的方法。NETR是命名實體翻譯準確率指標,其計算方法是每個測試集中被正確翻譯的不重復命名實體占所有命名實體的比例。 BLEU值評估結果和NETR評估結果如表3、表4所示。 表3 BLEU值結果對比 表4 NETR結果對比 (單位: %) 可以看出,占位符替換方法雖然在NETR上相比Transformer模型有所提升,但BLEU值評估表明,該方法會損害整體譯文質量。Wang等人提出的方法相比樸素Transformer在兩個指標上都有顯著的提升,在四個測試集上分別平均提升0.97的BLEU值和32.3個百分點的NETR。而本文方法在BLEU和NETR上都超越了所有基線模型,相比基線模型在四個測試集上平均提升了1.56的BLEU值和35.3個百分點的NETR,同時,在訓練中使用雙語命名實體詞典進行約束的方法比隨機選取約束的方法提升了0.3的BLEU值和4.5個百分點的NETR,這也證實了雙語命名實體詞典在模型訓練中的有效性。此外,在訓練時不添加約束的情況下,本文模型依然能夠保持與Transformer相比的性能。 我們還對比了在基線模型和本文方法中額外加入約束解碼方法DBA時[7]的效果。該方法通過在模型預測階段使用雙語命名實體詞典對模型進行約束,采取復雜動態(tài)規(guī)劃的方法改變束搜索的解碼過程,來確定模型當前預測的詞匯,以滿足約束條件。由于這一方法只對模型的解碼策略進行了調整,因此與模型結構上的改進可以共同使用,對比結果如表5所示,左右欄數(shù)據(jù)依次為添加DBA前后模型的效果。 表5 添加DBA算法前后模型表現(xiàn)對比 從表5中的結果可以得出,對于命名實體翻譯能力較弱的樸素Transformer來說,DBA算法的引入對命名實體翻譯能力的提升相當顯著,但在BLEU指標上的提升不明顯,對于Wang等人的方法和本文所提方法來說,DBA解碼策略對兩個指標都沒有帶來正向提升,且模型性能與樸素Transformer接近,這可能是由于解碼策略所生成譯文的優(yōu)先級較高,因而我們認為DBA解碼策略在一定程度上是與模型結構的改進策略沖突的。 表6給出了不同方法的平均訓練時長與解碼速度,所有測試均在NVIDIA TITAN X單卡GPU上進行。訓練時長方面,所有結果均為獲得最佳模型所需的訓練時間,對于占位符替換方法,由于將所有命名實體替換為特殊符號,模型解碼器的計算量有所下降,可能加快了訓練速度。對于Wang等人的方法和本文所提方法,盡管增加了額外的訓練數(shù)據(jù)長度與網(wǎng)絡結構,但這兩種模型達到收斂所需的訓練輪數(shù)相比樸素Transformer也有所降低,因而訓練時長并未增加。 表6 模型訓練時長與解碼速度對比 解碼速度方面,本文方法相比基線模型的解碼速度稍慢,原因可能是引入的約束詞匯增加了輸入文本的長度,以及引入段嵌入部分使得模型的參數(shù)量增加,導致了解碼速度的降低,但考慮到模型整體性能的提升,與樸素Transformer同一數(shù)量級的計算開銷是可以接受的。此外,在引入DBA解碼策略的情況下,我們與Wang等人的方法解碼速度都出現(xiàn)大幅降低,這可以歸因于DBA解碼策略的算法復雜度較高,以及算法并行化較為困難。 因此,上述實驗表明,DBA解碼策略對于命名實體翻譯能力較強的模型效果并沒有明顯提升,反而會影響模型解碼速度。 4.4.1 消融實驗 在消融實驗中,我們在NIST02中-英測試集上依次測試了不加任何優(yōu)化,增加數(shù)據(jù)增強方法(+Data Augment),增加嵌入層優(yōu)化(+Embedding Improvement),增加指針網(wǎng)絡(+Pointer Network)情況下模型的性能,結果如表7所示。 表7 消融實驗 從實驗結果可以看出,只增加數(shù)據(jù)增強方法雖然讓模型能夠一定程度上學習復制源端訓練數(shù)據(jù)中的約束詞匯,但對于整體譯文質量是有所損害的;嵌入層部分的改進為模型帶來了譯文質量的整體提升;而指針網(wǎng)絡在小幅提升整體譯文質量的同時,也大幅提升了實體命中率,這與我們的預期相符: 三個部分的改進是相互促進的,當三者結合在一起時,模型獲得了最佳性能。 4.4.2 實例分析 表8給出了兩個用Transformer模型和我們的模型將相同中文句子翻譯成英文的實例,可以看到,在這兩個實例中,Transformer模型對于命名實體分別存在錯翻和漏翻現(xiàn)象。在實例1中,Transformer模型對于地名“寧邊”翻譯錯誤,原因可能是該實體在訓練數(shù)據(jù)中出現(xiàn)頻率較低,從而模型將其錯譯成“南寧”的英文“nanning”,而我們的模型在成功翻譯“寧邊”的情況下,也將其他一些Transformer模型未成功翻譯的詞匯進行了正確翻譯。在第二個實例中,Transformer模型漏翻了命名實體“時事通信社”,漏翻在機器翻譯中也是常見現(xiàn)象,大多出現(xiàn)在有低頻詞或復雜語法的句子中,這種情況往往如實例2一樣,會導致整個句子漏翻。而在我們的模型中,不僅“時事通信社”翻譯正確,被Transformer模型漏翻的句子也完整地得到翻譯。 表8 實例分析 4.4.3 約束數(shù)量對模型性能的影響 圖2與圖3對比了Transformer模型與本文模型在NIST中-英測試集上翻譯不同數(shù)量命名實體句子的性能表現(xiàn)。從圖2可以看出,在BLEU值指標上,本文模型性能會隨著句子中命名實體數(shù)量的增加而不斷提升(提升幅度越來越小),而Transformer模型的BLEU值會隨著命名實體數(shù)量的增加而緩慢下降,這是因為本文模型對于大部分命名實體都能正確翻譯而Transformer模型卻不能;從圖3可以看出,本文模型在不同數(shù)量命名實體的句子上都顯著優(yōu)于Transformer基線模型。不過,我們也觀察到本文的方法對于命名實體的翻譯準確率隨著句子中命名實體的數(shù)量增加出現(xiàn)小幅降低,我們猜測這種現(xiàn)象與本文使用的軟約束模型有關,后續(xù)將進行更加深入的分析。 圖2 BLEU值與句子中NE數(shù)量的關系 圖3 NETR與句子中NE數(shù)量的關系 本文主要完成了兩部分工作: 一是通過最小貝葉斯風險決策方法融合多個在線翻譯引擎,從而構建了高質量的雙語命名實體詞典輔助后續(xù)的文本翻譯。二是在可控翻譯的方法創(chuàng)新上,改進了一種數(shù)據(jù)增強方法,引入了雙語命名實體詞典;在Transformer模型結構中改進了編碼器嵌入層,使之更適用于新的輸入數(shù)據(jù);引入了指針網(wǎng)絡,使得模型可以高效利用雙語命名實體詞典帶來的額外信息。三者結合使得網(wǎng)絡可以有效實現(xiàn)可控翻譯的目標,根據(jù)在NIST中-英測試集上的實驗表明,本文模型在譯文質量和實體命中率兩個指標上相比基線模型性能有著顯著提升。同時,本文方法在領域翻譯的相關工作中也有一定的實用性,因為該方法不僅可以用于命名實體,也可以用于任意領域的域內詞匯和專業(yè)術語。 在未來的工作中,將這一方法用于其他任務例如領域機器翻譯和交互式機器翻譯是我們工作的重點,我們相信這一方法在這些任務中同樣能夠取得很好的效果。4 實驗與分析
4.1 實驗數(shù)據(jù)
4.2 實驗設置
4.3 實驗結果
4.4 實驗分析
5 總結與展望