臧景才 陳建新 李永虎
摘要:本文主要介紹了基于短語統(tǒng)計方法的藏漢機(jī)器翻譯系統(tǒng)的實現(xiàn),其中對開源工具包Moses(翻譯模型的訓(xùn)練工具)、IRSTLM(語言模型訓(xùn)練工具)、GIZA++(雙語對齊工具)及XMLRPC(在線翻譯工具)等的相關(guān)理論使用做了分析和說明,并對藏漢雙語語料、藏漢雙語語料預(yù)處理、訓(xùn)練語言模型、訓(xùn)練翻譯模型、構(gòu)建解碼器和搭建藏漢在線翻譯系統(tǒng)幾個模塊的做了闡述,從而實現(xiàn)整個藏漢在線機(jī)器翻譯系統(tǒng)的搭建。
[關(guān)鍵詞]短語 統(tǒng)計模型 藏漢 在線翻譯
1 引言
目前,基于語料庫的統(tǒng)計機(jī)器翻譯方法成為了研究的主流,統(tǒng)計機(jī)器翻譯(Statistical Machine Translation,簡稱SMT)系統(tǒng)首要任務(wù)是為語言的產(chǎn)生統(tǒng)計模型,并在此統(tǒng)計模型基礎(chǔ)上自動從雙語語料中獲取需要的各種參數(shù),需要的人工干預(yù)較少,因此基于統(tǒng)計的機(jī)器翻譯比其他機(jī)器翻譯方法有著比較明顯的優(yōu)勢。本文利用MOSES、IRSTLM、GIZA++、Mteval、XMLRPC等開源的工具包和一些公共資源搭建基于短語的藏漢在線翻譯系統(tǒng),通過實踐和應(yīng)用進(jìn)一步探討和研究藏漢機(jī)器翻譯系統(tǒng)的工作原理,提高應(yīng)用水平和翻譯效果。
2 開源工具的選取
2.1 翻譯模型訓(xùn)練工具M(jìn)oses
Moses是一個基于短語的統(tǒng)計機(jī)器翻譯系統(tǒng),它的開發(fā)領(lǐng)導(dǎo)者是Philipp Koehn。整個Moses系統(tǒng)都是開放源代碼的,可在多個系統(tǒng)平臺上運(yùn)行。運(yùn)用處理好的雙語對齊語料庫進(jìn)行翻譯模型的訓(xùn)練,最終得到從源語言到目標(biāo)語言的翻譯概率表。本系統(tǒng)就是利用Moses進(jìn)行藏漢機(jī)器翻譯模型的訓(xùn)練。
2.2 語言模型訓(xùn)練工具IRSTLM
Moses目前支持三個語言模型工具包SRILM(The SRI language modeling toolkit),IRSTLM(IRST language modeling toolkit)和RandLM(the Rand LM language modeling toolkit)。IRSTLM是意大利TrentoFBK-IRST實驗室開發(fā)的語言模型訓(xùn)練工具包,主要目的是處理較大規(guī)模的訓(xùn)練數(shù)據(jù),在大規(guī)模語言模型的訓(xùn)練和使用上IRSTLM較SRILM有較大的優(yōu)勢,其內(nèi)存消耗僅是SRILM的一半。IRSTLM訓(xùn)練的基本思想是把總的詞匯表分割成若干個子詞匯表,然后把每一個子詞匯表獨(dú)立地進(jìn)行訓(xùn)練,得出相應(yīng)的子語言模型,最后把這些得到的子語言模型進(jìn)行快速融合,得到最終的語言模型。另外,劃分的這些子詞匯表的大小可以是任意的,也就是說訓(xùn)練子語言模型的內(nèi)存空間是可以控制的。所以,在本系統(tǒng)中選擇使用IRSTLM工具來訓(xùn)練語言模型。
2.3 詞語對齊工具GIZA++
統(tǒng)計機(jī)器翻譯(簡稱SMT)系統(tǒng)能夠自動從雙語語料中獲取模型系統(tǒng)需要的各種參數(shù),其中很重要的一個環(huán)節(jié)就是詞語、短語的對齊。GIZA工具是約翰.霍普金斯大學(xué)中的語言與語音處理中中心在1999年統(tǒng)計機(jī)器翻譯研發(fā)的,用于從雙語語料庫中抽取雙語對齊語料,進(jìn)行從源語言到目標(biāo)語言和從目標(biāo)語言到源語言兩個方向的參數(shù)訓(xùn)練,建立翻譯模型。GIZA++是GIZA的升級版本,是開放源代碼的免費(fèi)工具包。本系統(tǒng)用該工具進(jìn)行漢語到藏語以及藏語到漢語的兩個方向的對齊訓(xùn)練。
2.4 藏漢機(jī)器翻譯自動評測工具M(jìn)teval
Mteval是由NIST(美國國家標(biāo)準(zhǔn)與技術(shù)局)提供的機(jī)器翻譯自動測評工具,該工具是用Perl語言編寫而成的?,F(xiàn)在普遍的采用BLUE作為機(jī)器翻譯的評測指標(biāo),它將翻譯結(jié)果的文件與參考答案進(jìn)行n-gram匹配,從而給出評分,得出評測結(jié)果。
2.5 搭建的藏漢在線翻譯系統(tǒng)工具XMLRPC
XMLRPC是一種基于Internet的遠(yuǎn)程函數(shù)調(diào)用協(xié)議,利用控制傳輸協(xié)議來傳輸XML格式的文件,并通過該協(xié)議獲得遠(yuǎn)程調(diào)用。XMLRPC是RPC機(jī)制的實現(xiàn)方式之一,采用XML語言作為服務(wù)器與客戶端的數(shù)據(jù)交互格式。搭建的藏漢在線翻譯系統(tǒng)是能夠通過Server的形式啟動,能夠通過網(wǎng)頁的形式來訪問本文所搭建的這個藏漢機(jī)器翻譯系統(tǒng),使得系統(tǒng)具備了在線翻譯的功能。
3 搭建藏漢在線翻譯系統(tǒng)
統(tǒng)計機(jī)器翻譯的基本思想是通過對大量的平行語料庫進(jìn)行統(tǒng)計分析,構(gòu)建統(tǒng)計翻譯模型,進(jìn)而使用此模型進(jìn)行翻譯,選取統(tǒng)計中出現(xiàn)概率最高的詞條作為翻譯對象,如圖1。概率算法依據(jù)貝葉斯定理:假設(shè)要把一個藏語句子A翻譯成漢語,所有漢語句子B,都是A的可能或是非可能的潛在翻譯。Pr(A)是類似A表達(dá)出現(xiàn)的概率,Pr(B|A)是A翻譯成B出現(xiàn)的概率。找到兩個參數(shù)的最大值,就能縮小句子及其對應(yīng)翻譯檢索的范圍,從而找出最合適的翻譯。
具體搭建Mosesserver需要安裝必要的工具,如Perl、PHP、netcat以及XMLRPC等。安裝完這些工具以后,需要對文件進(jìn)行配置,即可完成。
3.1 準(zhǔn)備藏漢雙語對齊語料庫
基于短語的藏漢在線翻譯系統(tǒng)是運(yùn)用統(tǒng)計方法的機(jī)器翻譯系統(tǒng)來搭建,這就需要依賴龐大的雙語語料庫為基礎(chǔ),語料庫的健全與否將會對系統(tǒng)的翻譯效果產(chǎn)生很大的影響。在構(gòu)建語料庫時盡量不要使得語料庫中單詞出現(xiàn)次數(shù)過低,從而引起數(shù)據(jù)稀疏的現(xiàn)象;盡量找到以藏語為原創(chuàng)的藏漢對照語料,忠實于藏語語言特點(diǎn);限制藏漢雙語語料中單詞的長度,這樣會使得統(tǒng)計學(xué)習(xí)更加的容易。訓(xùn)練語料庫包括藏語語料和漢語語料庫。
3.2 藏漢雙語語料預(yù)處理
藏文的編碼方式較多,首先對輸入的藏文文本進(jìn)行編碼判別,把不同的編碼轉(zhuǎn)換成系統(tǒng)能夠識別的統(tǒng)一編碼格式。系統(tǒng)的源語言句子為藏語,為了后期的詞抽取和短語對抽取,需要進(jìn)行斷句和分詞的預(yù)處理操作。預(yù)處理是將文本統(tǒng)一為相同的數(shù)據(jù)格式,然后進(jìn)行分析計算。預(yù)處理包分類和括編碼歸一,由于藏文字符為寬字符,因此語料以utf-8的編碼格式儲存,為了便于語料庫的維護(hù),特別是構(gòu)建大型的藏漢雙語平行語料庫實行分類儲存;編碼歸一化是將文本轉(zhuǎn)換為相同的編碼格式。
3.3 訓(xùn)練藏漢短語翻譯模型
對藏漢雙語語料預(yù)處理,需要去掉空行、去掉多余的空格、短語切分、時間和數(shù)字的歸一化處理、根據(jù)詞典信息和長度信息(這里要求短語的長度在1到80之間),過濾掉過長的對齊短語,經(jīng)過以上,上步驟就可以得到相對比較干凈的雙語平行對齊句對。運(yùn)用IRSTLM工具包訓(xùn)練漢語語言模型,首先需要對漢語語料進(jìn)行分詞等預(yù)處理工作。訓(xùn)練后的輸出結(jié)果文件,采用的是ARPA標(biāo)準(zhǔn)格式。
3.4 GIZA++進(jìn)行雙語對齊
通過GIZA++進(jìn)行雙語對齊。對齊是雙向的對齊,也就是說分別進(jìn)行從藏語到漢語和從漢語到藏語的對齊。GIZA++利用的IBM模型,它只能夠?qū)⒁粋€目標(biāo)語言映射到多個源語言單詞上去,如果想要得到多對多的映射,就需要對雙語對齊句對進(jìn)行優(yōu)化對齊(AlignWords),優(yōu)化的方法主要有intersect、Grow-Diag-Final、union等方法。Grow-Diag-Final優(yōu)化算法的基本思想是:獲得從藏語到漢語以及從漢語到藏語的對齊結(jié)果,并取得并集和交集。在此基礎(chǔ)之,上,以從藏語到漢語以及從漢語到藏語對齊結(jié)果的交集為中心點(diǎn),依次檢查它的上下左右(grow)、對角(ding)以及相鄰的8個節(jié)點(diǎn),如果在雙向?qū)R結(jié)果的并集中,則將其作為擴(kuò)展的對齊節(jié)點(diǎn),并加入到對齊序列中。其中,取交集是為了獲得較高的準(zhǔn)確率,取并集是為了獲得較高的召回率。根據(jù)得到的對齊矩陣,利用最大似然估計方法(Maximum Likelihood Estimate,MLE)獲得到翻譯概率表,經(jīng)過短語對抽取、短語評分計算出短語翻譯概率和短語詞翻譯概率,在完成上步驟以后,經(jīng)過重排模型,生成藏漢翻譯模型(Generate Model)。
3.5 構(gòu)建藏漢解碼器
統(tǒng)計機(jī)器翻譯可以看做對原文通過模型轉(zhuǎn)換為譯文的解碼過程,解碼器是一個基于短語的柱搜索解碼器,該解碼器運(yùn)用柱狀搜索算法,從漢語源語言模型和藏漢短語翻譯模型中讀取到有用的信息來進(jìn)行解碼。在解碼器的配置過程中,需要告訴解碼器漢語語言模型以及藏漢翻譯模型的路徑和名字。
3.6 GIZA++性能測試分析
短語對齊是統(tǒng)計翻譯的基石,隨著語料的不斷加大,對系統(tǒng)資源的占用會增大,需進(jìn)行測試和分析。此測試是在pc機(jī)上進(jìn)行,訓(xùn)練語料為100000和600000,句長限制均為30的情況下內(nèi)存消耗量與時間的走勢圖。從測試可以發(fā)現(xiàn)兩種情況下所耗費(fèi)的時間不相同,訓(xùn)練語料為100000句時程序要運(yùn)行34分鐘,而600000句時需運(yùn)行104分鐘。在訓(xùn)練語料為100000句的時候,其峰值出現(xiàn)在程序運(yùn)行的第16分鐘,大小約為343650KB,600000句的時候,其峰值大約出現(xiàn)在程序運(yùn)行的第46分鐘,大小約為678481KB??梢钥闯?,整個過程所用時間和內(nèi)存消耗量隨所處理訓(xùn)練語料的增大而變大。
通過測試,對于預(yù)估計整個過程的運(yùn)行具有很大幫助,從而避免在運(yùn)行中由于資源不足而導(dǎo)致程序崩潰的情況。
3.7 構(gòu)建藏漢解碼器
解碼器是一個基于短語的柱搜索解碼器,該解碼器運(yùn)用柱狀搜索算法,從源語言模型和藏漢短語翻譯模型中讀取到有用的信息來進(jìn)行解碼。在解碼器的配置過程中,需要告訴解碼器漢語語言模型以及藏漢翻譯模型的路徑和名字。構(gòu)建解碼器的具體命令行如下所示:
Moses-fmoses.ini
因為藏漢雙語短語表是通過平行語料庫自動抽取得到,同一個漢語的短語可能映射多個不同的藏語短語。要想快速高效地找到翻譯結(jié)果,就需要對藏漢雙語短語進(jìn)行匹配優(yōu)化。就是一個藏語短語只取理論上最好的N個漢語短語。這里所謂的最好就是用短語翻譯概率表來衡量的,翻譯的概率越高它就越好。
4 系統(tǒng)的特點(diǎn)和優(yōu)勢
基于短語的藏漢在線翻譯系統(tǒng),翻譯質(zhì)量的高低主要取決于概率模型的好壞和語料庫的覆蓋能力,基于短語的翻譯模型與基于句法的翻譯模型相比,模型較簡單、訓(xùn)練速度較快、解碼效率較高;用基于短語的翻譯方法能夠包含局部上下文信息,比基于詞的翻譯方法能取得更好的翻譯效果;基于短語的翻譯語料更容易獲取,依賴爬蟲技術(shù)有互聯(lián)網(wǎng)中大量的文本資料,基于這些文本資料可以獲取大量的語料來源,從而為自己的翻譯提供大量的依據(jù)數(shù)據(jù),不足之處是語料庫的選擇和處理工程量巨大。
5 結(jié)束語
本文利用MOSES、IRSTLM、GIZA++、Mteval、XMLRPC等開源的工具包搭建基于短語的藏漢在線翻譯系統(tǒng)。首先,利用IRSTLM完成了對漢語語言模型的訓(xùn)練,利用Moses、GIZA++詞對齊工具完成了對藏漢翻譯模型的訓(xùn)練,通過Moses完成了整個藏漢機(jī)器翻譯系統(tǒng)的搭建;再次利用開源工具XMLRPC實現(xiàn)了藏漢在線翻譯的功能。最后利用BLEU自動評測技術(shù),對融入擴(kuò)展詞典前后的藏漢在線翻譯系統(tǒng)進(jìn)行自動評測。所搭建的藏漢在線翻譯系統(tǒng)能夠以Server的形式,使得系統(tǒng)具備了在線翻譯的功能。
參考文獻(xiàn)
[1]張步峰,孫越恒,趙青.對齊模板在標(biāo)準(zhǔn)
短語統(tǒng)計機(jī)器翻譯模型中的應(yīng)用[J].電子測量技術(shù),2007,30(07):146-150.
[2]蘇翔,李玉鍾.GIZA++計算性能分析[J].計算機(jī)工程與科學(xué),2010,32(05).
[3]華卻才讓,基于樹到串藏語機(jī)器翻譯若干關(guān)鍵技術(shù)研究[D].陜西師范大學(xué),2014.
[4]位索東.基于短語的藏化在線翻譯系統(tǒng)研究[D].西北民族大學(xué)(碩士論文),2015.
[5]巴桑卓瑪.藏漢雙語平行語料庫構(gòu)建方法及關(guān)鍵技術(shù)研究[D].西藏大學(xué),2018.