嚴松思 珠 杰 汪 超
(1.西藏大學信息科學技術學院 拉薩 850000)(2.省部共建西藏信息化協(xié)同創(chuàng)新中心 拉薩 850000)
一方面,深入研究藏漢機器翻譯有助于非藏文母語的其他學者了解和掌握藏族的歷史和文化;另一方面,深入研究藏漢機器翻譯能夠促進民族之間的交往交流交融,有助于民族團結。因此藏漢機器翻譯研究有非常重要的意義。
藏漢機器翻譯近年來的研究進展如下。2017年李亞超等[1]研究了藏漢神經(jīng)網(wǎng)絡機器翻譯;趙陽等[2]在CCMT2019評測中針對民漢機器翻譯采用知識蒸餾、反向翻譯+聯(lián)合訓練和多策略模型等方法,實驗結果表明,這些方法能夠有效提高翻譯的質(zhì)量;2020年沙九等[3]探究了不同切分粒度的藏漢雙向神經(jīng)機器翻譯,該文章提出了藏漢雙向機器翻譯的具有音節(jié)、詞語以及音詞融合的多粒度訓練方法;2020 年慈禎嘉措[4]通過單語語言模型的融合,迭代式回譯策略的應用提高了藏漢(漢藏)機器的效果;2021年沙九等[5]構建了面向司法領域的高質(zhì)量開源藏漢平行語料庫;2021年頭旦才讓等[6]研究了基于改進字節(jié)對編碼的漢藏機器翻譯,該研究改進了字節(jié)對編碼算法,提出了帶字數(shù)閾值的藏文字節(jié)對編碼算法。2021 年劉賽虎[7]進行了基于注意力機制的藏漢雙語機器翻譯技術研究,該研究在不同切分粒度的實驗中,探討了以藏字漢字、藏詞漢詞、藏詞漢詞+BPE 三種切分粒度形態(tài)下的兩種模型的藏漢機器翻譯效果。2022 年孫義棟等[8]通過改進生成藏漢詞表來提升下游藏漢雙向翻譯性能。
雖然一直有學者從事藏漢機器翻譯的研究,但目前使用非自回歸模型針對藏漢機器翻譯的研究較少。藏漢機器翻譯仍面臨如下問題。1)藏漢平行語料資源稀缺;2)在特定領域的翻譯中,性能也受到顯著影響。本文針對上述問題,本文研究了基于Mask-Predict 的CMLMs 模型在藏漢機器翻譯上的應用,以下簡稱MP-CMLMs模型。
MP-CMLMs 模型,該模型可以學習并行預測目標翻譯中屏蔽詞的任意子集。與此同時,這個模型中的解碼器的自注意力機制[9]可以關注整個序列(左上下文和右上下文)來預測每個被屏蔽的單詞。不同于文獻[13]提出的插入模型將每一個token 都視為一個單獨的訓練實例,本文中的CMLMs可以從整個序列并行訓練,從而使訓練速度大大加快。而mask predict,這種解碼算法,它使用CMLMs的順序不可知特性來支持高度并行的解碼。這種方法僅需幾個周期就能產(chǎn)生高質(zhì)量的翻譯。這種整體策略允許模型在豐富的雙向上下文中反復重新考慮單詞選擇。
CMLMs 模型[14],即條件掩蔽語言模型。該模型采用標準的編碼器-解碼器轉換器進行機器翻譯[9]。參數(shù)與標準結構保持一致。不同之處在于decode 端的self-attention 不再使用attention mask,防止看到預測單詞之后的詞。
特別地,在給定一個源文本X 和部分目標文本Yobj后,條件掩蔽語言模型(CMLMs)預測一組目標標記Ymask。本模型假設記號Ymask有條件地相互獨立(在給定X 和Yobj的情況下),并預測了每個y∈Ymask的個體概率P=(y|X,Yobj)。
由于Ymask中標記的數(shù)量是預先給出的,因此該模型也隱式地調(diào)節(jié)了目標序列N=|Ymask|+|Yobj|的長度。
CMLMs的總體結構如圖1所示。
圖1 CMLMs總體結構
在訓練期間,模型在目標token 中隨機選擇Ymask。首先從(1,n)之間的均勻分布中抽取屏蔽記號的數(shù)目,n 代表序列長度,其次隨機選擇該數(shù)目的記號。然后用一個特殊的掩碼標記替換Ymask的輸入。同時針對Ymask中每個token 的交叉熵損失優(yōu)化CMLMs。上述操作可以并行完成,因為該模型假設Ymask中的token 有條件地相互獨立。雖然該架構在技術上可以對所有目標語言標記(包括Yobj)進行預測,但只計算Ymask中標記的損失。
由于CMLMs 是并行預測,所以必須事先就知道序列的長度。因此,受文獻[11]的啟發(fā),模型在編碼器加一個特殊的長度token,這個token 類似于BERT 中的CLS token。該模型可以用來預測目標序列N的長度作為長度標記的輸出。
Mask-Predict,即掩碼預測算法,該算法在一個恒定的周期數(shù)量內(nèi)并行解碼整個序列。在每次迭代中,該算法都會選擇要屏蔽的標記子集,然后使用一個底層的CMLMs并行地預測它們。當以先前的高置信度預測為條件時,屏蔽模型有疑慮的標記,讓模型重新預測具有更多信息的更具挑戰(zhàn)性的情況。
給定目標序列的長度N,定義了兩個變量:目標序列(y1,…,yn)和每個標記的概率(P1,…,Pn)。該算法運行一個預先確定數(shù)量的迭代次數(shù)T,它是一個常數(shù)或N的簡單函數(shù)。在每次迭代中,都會執(zhí)行一個掩碼操作,然后進行預測。圖2 說明了算法的掩碼預測過程。
圖2 來自語料驗證集的示例
2.2.1 Mask
在第一次迭代中(t=0),模型屏蔽了所有的token。對于以后的迭代,如下公式,用最低的概率分數(shù)掩碼n個token。目標:
掩碼標記的數(shù)量n 是迭代t的函數(shù);具體地說,使用線性衰減,其中T 是總迭代次數(shù)。
例如,如果t=10,將在t=1 時掩蓋90%的token,在t=2時掩蓋80%,以此類推。
2.2.2 Predict
在被掩蔽后,CMLMs 以源文本X 和未被屏蔽的目標標記為條件,預測被掩蔽的token。對每個掩碼tokenyi∈掩碼選擇概率最高的預測,并相應地更新其概率分數(shù):
未掩蔽token的值和概率保持不變:
本文將采集到的語料分為口語語料、新聞語料和法律語料。稱其為數(shù)據(jù)集一,語料規(guī)模如表1 所示。
表1 數(shù)據(jù)集一語料規(guī)模
本文按照訓練集、驗證集和測試集為95∶2.5∶2.5的比例進行劃分。
口語領域語料來自人們的日常對話以及部分讀物,相對來說較為口語化;新聞領域語料來自《西藏日報》《每日郵報》以及政府公文;法律領域語料由黨章、教育法及獻血法構成,專業(yè)名詞多,且用詞較為嚴格。
根據(jù)上述比例將訓練集驗證集和測試集分開后,在測試集中未登錄詞在這些領域語料中的比重如表2所示。
表2 數(shù)據(jù)集未登錄詞占比
對這些平行語料我們采取了相同的預處理和參數(shù)設置。
預處理步驟包括:1)將平行語料的數(shù)據(jù)文件切分成標準格式,即源語言(raw.ch)、目標語言(raw.ti)文件各一個;2)使用jieba 分詞工具對漢語進行分詞,并且使用中科院提供的藏語Dolma 分詞軟件對藏語進行分詞;3)對上述處理后的雙語文件進行bpe子詞處理并且生成詞表及二進制文件。
本文實驗設置如下,基準實驗及CMLMs 模型均采用pytorch 框架。其中所有實驗采用的優(yōu)化器都是adam,設置為--adam-betas'(0.9,0.98)',初始學習率都是0.005,label-smoothing 0.1 以及dropout 0.3、weight-decay 0.01。
本文中的實驗不同設置如表4。
表4 實驗設置不同點
所有上述模型,本文在預處理階段采用--joined-dictionary,在訓練階段采用share-allembeddings,即聯(lián)合訓練,共享詞表,這樣可以加快訓練速度。
本文的MP-CMLMs 模型,模型Ⅲ與NAT[10],模型Ⅰ和標準的Transformer 模型[9],模型Ⅱ做了對比,同時使用不同領域的藏漢數(shù)據(jù)集進行實驗,以此觀測模型在藏漢機器翻譯上的可行性,評價指標為BLEU4。實驗結果如表5所示。
表5 實驗結果
表6 解碼所需時間對比
解碼所需時間(s)對比,下表只統(tǒng)計了模型在藏文-漢文方向的解碼時間。
本文的實驗證明了MP-CMLMs 在藏漢機器翻譯領域有著不錯的表現(xiàn)。
口語領域的語料相對較多,且句子長度較短,并且較為簡單,因此口語領域的翻譯效果較好。而新聞領域的語料長度比其他兩個領域的數(shù)據(jù)長,句式結構較為復雜,因此新聞領域的翻譯效果較差。而由于法律領域的語言簡潔精煉,概括性好,因此本模型在法律領域的表現(xiàn)較好。
并且從解碼時間的表中可以看出,本模型的解碼時間與NAT模型解碼時間相當,都比Transformer模型快很多。
圖3是翻譯效果展示。
圖3 翻譯效果展示
本研究在藏漢機器翻譯研究中引入了MP-CMLMs 模型,該算法利用它們的并行性在恒定次數(shù)的解碼迭代中生成文本。實驗證明,在藏漢機器翻譯領域,本模型提升了非自回歸藏漢機器翻譯的效果,并且該方法實質(zhì)上優(yōu)于以前的并行解碼方法,改進的該模型可以達到自回歸模型的性能,甚至在法律領域優(yōu)于Transformer模型的性能,同時解碼速度比自回歸模型快得多。
將在藏文分詞階段對模型進行改進,主要針對藏文中的緊縮詞。并打算采用多任務學習,通過編碼器共享將AT 知識轉移到NAT 模型中。通俗地講,打算將AT 模型作為增強NAT 模型性能的輔助任務繼續(xù)引入藏漢機器翻譯。