張 振 蘇依拉 仁慶道爾吉 高 芬 王宇飛
(內蒙古工業大學信息工程學院 內蒙古 呼和浩特 010080)
機器翻譯是人工智能領域的重要研究課題之一,主要目標是研究如何使用計算機實現一種自然語言到另一種自然語言的自動轉換。近年來,已經有很多研究嘗試將深度神經網絡的方法擴展到低資源語言對上,但因缺乏數以百萬計甚至更多的平行句對而無法獲得理想的結果。因此,如何用半監督學習無標記數據、多任務聯合訓練來緩解資源匱乏的問題成為近來神經機器翻譯的一個重要研究方向。
目前,深度學習在自然語言處理中的困境之一是缺少大規模的標注數據。解決深度學習目前缺少大規模的標注數據這一困難的方法主要有兩種:無監督預訓練方法和多任務學習聯合訓練多個任務。
2018年發表的文獻[1]提出了ELMo模型,介紹了一種新型深度語境化詞表征,可對詞使用的語法、時態、語態和語義等多個特征和詞使用在上下文語境關聯程度中的變化進行建模。ELMo中的詞向量是在一個大型文本語料庫中預訓練而成。文獻[2]提出了GPT模型,使用無監督預訓練和監督微調的組合探索了用于語言理解任務的半監督方法。谷歌Brain團隊提出的BERT[3]在GPT模型的基礎上進行了修改,取得了很好的效果。
多任務學習[4](MTL)聯合訓練看起來相似的多個任務,能夠通過單個模型解決協同任務。它通過將相關任務中訓練信號所包含的域信息用作歸納偏差來提高泛化程度,在使用共享表示的同時并行學習任務來實現這一點,每項任務的學習內容可以幫助其更好地學習其他任務。
2017年,Google提出了一個多模型架構,混合編碼輸入與先前輸出的混合器(自回歸部分),以及處理輸入和混合以產生新輸出的解碼器[5]。同年,Johnson等[6]提出了一種使用單個神經機器翻譯(NMT)模型在多種語言之間進行翻譯的解決方案。2018年,Kiperwasser等[7]提出的模型令語法和翻譯交錯學習,然后逐漸將更多的注意力放在翻譯上。預訓練的一個優點單詞嵌入是詞匯表外(OOV)單詞的表示。
蒙漢平行語料資料目前處于匱乏階段,如何利用有限的語料數據緩解資源不足問題已經成為神經機器翻譯的一個重要的研究課題。然而蒙漢機器翻譯研究工作仍處于探索階段,成熟多樣的蒙漢機器翻譯以及采用前沿機器翻譯方法的模型和成果相對較少。
針對蒙漢平行語料資源比較稀缺和現有的平行語料數據的覆蓋面少等困難導致的蒙漢翻譯質量不佳的問題,本文采用跨語言多任務學習的方式對機器翻譯建模,并引入了兩種新的無監督預訓練方法和一種監督預訓練的方法,用于使用跨語言建模來學習跨語言表示,并研究三種語言預訓練方法在蒙漢翻譯中的效果。
本文引入三種語言預訓練模型:蒙面語言模型(Masked Language Model,MLM),因果推理語言模型(CLM)和基于平行語料的翻譯語言模型[8](TLM)。其中,MLM和CLM模型使用的是基于單語數據的無監督訓練方式,而TLM是基于平行標記數據的有監督訓練方式。
模型架構是一個多層雙向Transformer編碼器,與BERT的輸入單個文本句子或一對文本句子的輸入表示方法不同,MLM的輸入文本是任意長度的單語文本,每個句子用分隔,如圖1所示。MLM輸入表示由句子唯一標識符En(n取整數,n∈[1,N],N表示需要預訓練的總句子數量)、位置信息編碼和Masked蒙面處理后的句子向量組成。

圖1 蒙面語言模型的結構模型
理論上,深度雙向訓練Transformer模型比從前向后或從后向前地對輸入序列進行預訓練會學習到更多有用的特征。但是,雙向訓練模型將導致每個單詞在多個層的上下文向量中間接地找到自身的向量表示。
為了避免出現上述的情況發生,本文模型依據一定的比例隨機地對句子的若干位置進行蒙面操作。為了提高模型的健壯性,受到去噪編碼器[9]增加無關的干擾信息作為噪聲輸入,本文對蒙面語言模型增加了一項內容,并不總是用[mask]這個標記符號替換要“蒙面”操作的字符,按照十分之一的比例用噪聲作為“蒙面”的另一種隨機符號,但是實驗結果顯示,這樣的設計方式會降低模型的準確表達能力。受到對抗學習的啟發,本文又按照十分之一的比例用未經過“蒙面”的單詞自身作為假“蒙面”標記,即不對“蒙面”位置的字符做任何改變。實驗結果顯示,這種加入噪聲和對抗性的訓練機制可以有效提高模型預測的能力,提高模型的健壯性。
模型架構是一個Transformer-XL模型(超出固定長度的注意語言模型)[9],它使Transformer能夠在不中斷時間序列連貫性關系的情況下學習可變長度的依賴性關系。Transformer-XL模型由段落級循環復現機制和新穎的位置編碼方案在Transformer上改進完成。基于Transformer-XL的蒙漢翻譯上的預訓練模型可以更好地學習序列之間的長期依賴性關系,而且還可以解決上下文碎片化問題,即解決上下文連貫性中斷的現象。因此,將提出的基于Transformer-XL的預訓練模型命名為因果推理語言模型。Transformer-XL學習序列的依賴性關系比循環神經網絡RNN更長,是RNN學習到的依賴性關系的1.8倍,是vanilla Transformer學習到的依賴性關系的4.5倍。
1.2.1段落級循環復現機制
Transformer-XL將循環的機制引入深層的自我注意力機制網絡。它的一個重要的改變是每個隱藏層的狀態不再從頭開始計算每個新段落的隱藏狀態,而是復用在之前計算的段落中獲得的隱藏狀態。也可以這樣理解,隱藏狀態不再僅僅是一個純計算用的中間函數,它具備了簡單的存儲功能,可復用的隱藏狀態作為當前狀態的存儲器可隨時被調用,所以重用的隱藏狀態可以在段之間建立重復連接,如圖2所示。一方面,Transformer-XL模型可以建立非常長距離的依賴關系,因為它的復用隱藏狀態的機制可以允許信息通過循環連接傳播。另一方面,這種信息傳遞機制也可以幫助Transformer解決上下文碎片化的問題,使得上下文更加連貫。

圖2 段級長度為4的Transformer-XL模型的結構模型

(1)
查詢向量、鍵向量、值向量組成的向量計算如下:
(2)
自注意力機制和前向傳播:
(3)

1.2.2相對位置編碼方案
隱藏狀態的復用機制存在一個關鍵問題:當重用隱藏狀態信息時,如何保持位置信息的一致性。在標準的Transformer中,序列順序的排列信息用一組位置編碼層嵌入到輸入層,表示為U∈RLmax×d,其中第i行的Ui對應于段內的第i個絕對位置。Lmax規定了要建模的最大可能長度。如果直接把這種位置編碼方案應用到1.2.1節的循環復用隱藏層機制中,隱藏狀態序列的計算方式如下:
hτ+1=f(hτ,Esτ+1+U1:L)
hτ=f(hτ-1,Esτ+U1:L)
式中:Esτ∈RL×d是sτ的字嵌入序列;f表示變換函數。注意Esτ和Esτ+1都與相同的位置編碼U1:L相關聯。結果對于任何j=1,2,…,L,模型沒有信息可以區分xτ,j和xτ+1,j之間的位置差異,這會導致明顯的性能損失。
為了避免這種失敗模式,僅對隱藏狀態中的相對位置信息進行編碼。理論上,位置編碼為模型提供了輸入文本序列先后順序信息并提供給神經網絡加以訓練。出于同樣目的,不將偏差靜態地結合到初始嵌入中,而可以將相同的信息注入到每層的注意分值中。以相對方式定義時間偏差更直觀和通用。例如:當查詢向量qt,i參與關鍵向量kt,≤i時,無須知道每個關鍵向量的絕對位置以識別該段的時間順序;相反,查詢向量知道每個鍵Key向量kt,j與其自身的向量qt,i之間的相對距離就足夠了,即i-j。實際上,可以創建一組相對位置編碼R∈RLmax×d,其中第i行Ri表示兩個位置之間的i的相對距離。通過將相對距離動態地注入注意力分值,查詢向量可以很容易地從不同的距離區分xt,j和xt+1,j的表示,使得狀態重用機制可行。加入改進后的位置編碼方案的注意力計算公式如下:
uTWk,EExj+vTWk,RRi-j
(4)

MLM和CLM的處理對象都是單語數據。因此上述兩種模型都是無監督的預訓練方式。為了方便預訓練系統利用并行數據,本文引入了一種新的翻譯語言模型(TLM),用于改進跨語言預訓練。翻譯語言模型是MLM的改進,其不是輸入單語言文本序列,而是同時輸入平行語料庫中句子序列,如圖3所示。本文提出的TLM模型隨機地對源語言語句和目標語言語句進行蒙面處理。考慮到充分利用平行語料庫中的句子的語義相同等內在聯系,模型用MUSE工具對齊蒙古文和漢文的向量表示。這種處理方式的優勢在于如果蒙語語境無法充分地推理預測出蒙面的蒙文單詞,則該模型可以利用漢語的上下文語境,反之亦然。

圖3 翻譯語言模型的結構模型
本文使用126萬句蒙漢平行語料庫和3萬余條專有名詞詞典作為翻譯對象。其中126萬蒙漢平行語料庫涵蓋政府工作報告、日常對話、新聞、法律條文和小說等多種蒙-漢平行語句對。3萬余條專有名詞詞典涵蓋人名、地名、物理、化學和生物等學科領域名詞等專有名詞,一方面擴大了平行語料庫的規模;另一方面,因為126萬句蒙漢平行語料庫中缺少一些不常用的生僻字詞,所以引入專有名詞作為基礎的平行語料庫之外的附加詞典庫可以方便解碼器解碼時對未登錄詞進行近似替換。對于中文和蒙文,分別使用文獻[10]提出的標記器和Kytea標記器。
第1節中介紹的MLM、CLM和TLM可以分別作為蒙漢翻譯模型的預訓練模型,用于編碼器或解碼器的初始化節點。本文的翻譯模型采用具有循環因果推理機制的Transformer-XL模型。在本文的所有實驗中,都使用210個隱藏單元、8個注意力頭和6層編碼器-解碼器模型的基礎Transformer架構。Transformer-XL模型的N層編碼器-解碼器計算程序如式(5)-式(8)所示,代表了一個注意力頭所做的計算工作。段落間的上下文向量、查詢向量、鍵向量、值向量計算同式(1)-式(2)。
相對位置注意力計算:
(5)
(6)
(7)
(8)

對于編碼器和解碼器的初始化,為了對上面的預訓練模型在蒙漢翻譯上的效果進行對比,采用不同的方法進行初始化:蒙面預訓練(MLM)、因果推理預訓練(CLM)或隨機初始化,這三種組合需要9組實驗。在模型中使用基于去噪自動編碼的損失函數和基于在線反向翻譯的損失函數來訓練模型。訓練結果的數據見表1。

表1 多種初始化方式用于翻譯模型的對比分析結果
表1中:“EMB”表示使用跨語言嵌入向量預訓練的方式引入查找表對編碼器和解碼器進行初始化表示;PPL表示語義困惑度;“隨機”就是對編碼器-解碼器的初始參數隨機初始化表示。
令編碼器-解碼器參數矩陣隨機初始化作為翻譯的基線模型。實驗結果表明,使用跨語言嵌入向量預訓練的方式引入查找表對編碼器和解碼器進行初始化表示,比基線模型的測試譯文BLEU值評估提高了6.4,在解碼器中用CLM初始化比基線模型的測試譯文BLEU值提高了12.3,在同樣條件下,使用MLM模型比CLM模型預訓練效果好一些。但是,使用MLM對編碼器初始化,同時使用CLM模型對解碼器進行初始化得到了目前對比實驗中的最高BLEU值,比隨機初始化的基線模型提高了21.4。可以看出語義困惑度PPL的值和BLEU值的大小成反比例關系。MLM初始化編碼器參數和CLM初始化接麥器參數的語義困惑度比統一使用MLM初始化編碼器和解碼器參數的方式雖然只提高0.1的BLEU值,但是PPL的值相對降低0.5,說明因果推理模型對序列中的歷史信息進行了有效的記憶,在一定程度上有效地提高了翻譯質量。
本文針對蒙漢平行語料資源比較稀缺和現有的平行語料數據的覆蓋面少等困難導致的蒙漢翻譯質量不佳的問題,采用跨語言多任務學習的方式對機器翻譯建模。本文在數據預處理階段,引入了兩種新的無監督預訓練和一種監督預訓練的方法,用于跨語言建模來學習跨語言表示,并研究三種語言預訓練方法在蒙漢翻譯中的效果。實驗結果表明,上述三種跨語言預訓練的模型可以顯著降低低資源語言的困惑度,提高蒙漢翻譯質量,蒙面預訓練模型初始化編碼器參數和因果推理語言模型初始化解碼器參數的方案可以顯著提高翻譯質量,比隨機初始化參數的BLEU值提高了20.4,同時語義困惑度能降低了13.6。