摘要:詞對齊是統計機器翻譯系統中最重要的一個環節,統計機器翻譯中的翻譯模型和調序模型都是在詞對齊結果的基礎上構造的,詞對齊階段出現的錯誤,會延續到這些模型中,甚至會因為詞對齊的錯誤而在這些模型中引發更大的錯誤。為減少詞對階段的錯誤,提出一種基于對齊困惑度的雙語語料過濾方法和一種改進的判別式詞對齊算法,語料過濾方法可以將詞對齊階段有嚴重錯誤的雙語句對過濾掉,判別式詞對齊算法與傳統的自動詞對齊算法相比,可以得到對齊錯誤率更低的詞對齊結果。
關鍵詞: 詞對齊;統計機器翻譯;對齊困惑度;對齊錯誤率
中圖法分類號 TP391 文獻識別號:A 文章編號:2095-2163(2013)04-
Filtering Training Corpus and Improving Word Alignment for statistical Machine Translation
LIANG Huashen, ZHAO Tiejun
(MOE-MS Key Lab of Natural Language Processing and Speech, Harbin Institute of Technology, Harbin 150001, China)
Abstract: Word alignment is one of the most important step for statistical machine translation systems.Translation models and reordering models are both built based on word alignment result.The bad influence caused by word alignment error, would still exist in these models, or even become worse. In order to eliminate the word alignment errors, the paper proposes a corpus filtering approach based on alignment perplexity, and also proposes an improved discriminative word alignment algorithm. The corpus filtering approach can omit sentence pairs which contain crucial alignment errors. Compared with the traditional word alignment algorithm, the improved word alignment algorithm can produce alignments with lower alignment error rate.
Key words: Word Alignment; Statistical Machine Translation; Alignment Perplexity; Alignment Error Rate
0 引言
上世紀 90 年代前后,IBM Watson 研究中心的 Brown 等人提出了基于信源信道模型的統計翻譯方法[1-3],此類方法的性能遠遠超越了傳統的基于規則的翻譯方法。從此基于統計的機器翻譯引起了研究者的廣泛關注。1999 年,研究者們根據 Brown 提出的思想發布了第一個基于統計的無指導詞對齊工具GIZA[4],其后德國亞琛工業大學的Och等人對 GIZA 進行了改進,發布了新版本的詞對齊工具,稱為 GIZA++[5,6]。從此,統計翻譯方法成為國際機器翻譯領域的研究熱點。
總體來說, IBM 的 5 個模型詞對齊模型均屬于產生式模型,其使用的特征都是固定的,不可以隨意加入其它特征。于是,一些學者探索了使用基于最大熵理論的判別式模型進行詞對齊的方法。中科院計算所的劉洋將目前流行的統計翻譯框架運用于詞對齊上,由于此框架采用了對數線性模型,因而這種詞對齊技術可以融合任意特征[7]。卡內基梅隆大學的 Dyer 也提出了類似的方法[8],用對數線性模型融合任意的特征,與劉洋工作的不同之處在于,Dyer 采用一種梯度下降的 online 方法對特征權重進行估計,而劉洋則采用統計機器翻譯中常用的最小錯誤率訓練 (Minimum Error Rate Training, MERT)[9]的方法對特征權重進行估計。
本文針對IBM詞對齊模型4的特點,提出了一串基于對齊困惑度的雙語語料過濾方法和一種改進的判別式詞對齊算法,語料過濾方法可以將詞對齊階段有嚴重錯誤的雙語句對過濾去掉,判別式詞對齊算法與傳統的自動詞對齊算法相比,可以得到對齊錯誤率更低的詞對齊結果。
1 基于困惑度的訓練語料過濾方法
1.1 單語語句的困惑度
在統計機器翻譯中,通常引入 n-gram 語言模型來判斷自動產生的翻譯結果是否為一個合理的目標語言句子。假設e = e1e2…ek是由 K 個單詞組成的英文句子,則在N元語言模型 LM 上計算英文句子e的得分如公式(1):
對于同樣長度的句子,顯然,概率P(e) 越大,句子越“合理”。但由于n-gram語言模型中的 n 元組概率都是小于 1 的,所以句子越長,這個概率就會越小。困惑度 (Perplexity) 就是為了評價任意長度的句子是否合理而提出來的。這一概念的出發點很簡單,就是先計算句子中所有 N 元片段概率的幾何平均數,然后取其倒數,具體公式如下:
如公式(2)所示,如果e中的N元片段概率都比較高,則說明e是一個較為合理的句子;而困惑度的計算公式則求取這些概率的倒數,因此越合理的句子,其困惑度越小。通常,n-gram語言模型中N元片段的概率都非常小,為了提高計算的精度,在實際的應用中用到的大多是困惑度的對數,公式如下所示:
從公式(2)和(3)中可以看出,困惑度的大小與句子長度無關,因其只取了e中所有 N 元片段概率的平均值。
1.2雙語句對的對齊困惑度
在統計機器翻譯中,從句對齊的語料中獲得詞對齊信息是最重要也是最基礎的工作。所有無指導的詞對齊算法,都是將句對齊概率拆分為詞對齊概率,以及一些與單詞位置相關概率的乘積。目前通用的 IBM 詞對齊模型1-5是一類單向詞對齊的模型,這類模型做出了這樣的假設:在由目標語言向源語言的對齊過程中,每個目標語言的單詞只能向源語言映射一次,即不存在兩個以上的源語言單詞對齊到同一個目標語言單詞的情況。因此在做由目標語言f = f1…fm向源語言e = e1…en的單向詞對齊時,共產生m個詞對齊;相對地在做由源語言向目標語言的單向詞對齊時,共產生n個詞對齊。
在產生詞對齊的同時,整個語料上的詞對齊概率表也會一同生成。對于單語的句子,可以用 n-gram 語言模型估計其困惑度;同樣地,對于包含了詞對齊信息的雙語句對,也可以用詞對齊概率估計其困惑度,具體公式為:
公式(4)和(5)之所以用到反方向的詞對齊,是因為 IBM 詞對齊模型本質上是一種噪聲信道模型。在估計目標語言句子f到源語言句子e的對齊概率P(f|e) 時,產生的是以源語言單詞e為條件的詞對齊概率表 {P(f|e)},而在這個方向上的詞對齊,同一個源語言單詞e可能對應多個目標語言單詞f,也可能不對應任何單詞。而在計算困惑度 PP(f|e) 時,每個 f中的單詞都分配了一個概率為 P(e|f) 的對齊,這些詞對齊概率的幾何平均數,即為將目標語言句子 f對齊到源語言句子e上的困惑度。與單語語句的困惑度一樣,雙語句對的困惑度同樣與句子長度無關。若訓練語料已經完成了兩個方向的詞對齊,并且已經得到兩個方向上詞對齊的條件概率表,則對于雙語句對 (f,e),其對齊困惑度為 (logPP(f|e)+logPP(e|f))/2。這個對齊困惑度的值越大,
說明雙語句對越“不像”對齊句對。通過設定對齊困惑度閾值,可以將訓練語料中對齊困惑度
大于這個閾值的雙語句對全部過濾去掉。
2基于IBM 模型4的判別式詞對齊
2.1 IBM 詞對齊模型概述
IBM詞對齊模型3與模型4均屬于產生式模型,在由目標語言句子f向源語言句子e的方向上做詞對齊時,限定每個目標語言句子的單詞只能向源語言方向投射一個詞對齊,而產生式模型認為這種詞對齊關系是從源語言句子e上經過一系列復雜的操作產生出來的。IBM模型3所作出的詞對齊假設如圖1所示,IBM詞對齊模型3認為詞對齊的產生分三個步驟:
第一步,根據產生空位的概率表從源語言句子e的每個單詞上長出若干空位,由此得到一個關于空位的向量;
第二步,根據翻譯概率表給每個空位填上一個目標語言的單詞, 由此得到一個關于目標語言單詞的向量;
第三步,根據翻譯概率表給每個目標語言的單詞安排一個位置,使其組成目標語言的句子f,由此得到一個關于目標語言單詞位置的向量。
在實際的詞對齊工作中,即使僅僅窮舉所有單詞產生空位的情況也是一個 NP 問題。為了使詞對齊模型在現實工作中切實可行,基于 IBM 模型 3 的詞對齊采取了一種爬山的算法。首先 IBM 模型 3 提出了相鄰詞對齊的概念,對于 (f,e) 上的詞對齊a,改動某一個詞的對齊,如將fj-ei改為fj-ei’,或者交換兩個單詞的對齊,如將fj-ei,fj’-ei’變為fj-ei’,fj’-ei,經過此種改動而得到的詞對齊均與原來的詞對齊相鄰。IBM 模型 3 的爬山過程,就是從一個初始的詞對齊結果開始,在其相鄰的詞對齊結果中找出模型得分最高的一個,并以這個結果為新的起點,繼續迭代,直至找到的詞對齊結果其模型得分不低于該詞所有的相鄰詞對齊結果。由 IBM 模型3 本身的定義,在已知當前詞對齊結果的模型得分時,可以快速地計算得到其相鄰詞對齊的模型得分。
IBM詞對齊模型4將模型3的調序模型分為兩種情況,一種情況是處理源語言單詞產生空位中所填的第1個單詞的調序位置關系,這個概率表記為,另一種情況是處理源語言單詞產生空位中所填的第1個單詞的調序位置關系,這個概率表記為。由于IBM 模型 4加入了這個復雜的調序模型,令其無法快速計算得出相鄰詞對齊的 IBM 模型 4 得分。因此 IBM 模型 4 的爬山過程比 IBM 模型 3 更為復雜,每一次迭代先計算所有相鄰詞對齊的 IBM 模型3得分,并將這些相鄰詞對齊按 IBM 模型 3 的得分降序排列,從排在最前的相鄰詞對齊開始,計算其模型 4 得分,找到第一個模型 4 得分比當前結果高的,作為新起點繼續迭代。
2.2 基于 IBM 模型 4 的判別式詞對齊
判別式詞對齊的方法采用對數線性模型,對多種特征進行融合。假設詞對齊采用的特征集合為H = {h1,h2,…,hk},A為句對 (f,e)所可能產生的所有詞對齊的集合,為句對 (f,e) 所可能產生的某一種詞對齊,則尋找最佳詞對齊的方法如公式(6)所示:
在公式(6)中,為各種特征的權重,通過遍歷所有可能的詞對齊,綜合考慮所有的特征取值,最終找到一種得分最高的詞對齊作為自動對齊的結果。對于現實訓練語料中的雙語句對,窮舉所有的詞對齊情況是不可能的,因此需要尋找一種啟發式的方法,用以代替這種窮舉式的搜索方法。
為了減小詞對齊的搜索空間,限定雙語句對中的每個單詞都僅有一個詞對齊,這個對齊可以對到空詞上。圖2給出了基于這種限定的詞對齊的一些例子。若使用有向圖來表示詞對齊,每個單詞只能發射產生一個詞對齊,即每個非空單詞的出度只能為 1,但每個單詞的入度可以為任何值。改進的詞對齊算法需要首先為雙語句對設定一個初始的詞對齊。根據已有的 IBM 詞對齊模型 4 的詞匯互譯概率表,源語言端的每一個單詞都可以在其對應的目標語言端句子中找到一個對齊概率最大的單詞;同樣地,目標語言端的每一個單詞都可以在其對應的源語言端句子中找到一個對齊概率最大的單詞。其中對齊概率最大的單詞可以是空詞。通過這種方法,可以確定雙語句對的初始詞對齊。
參考 IBM 詞對齊模型中的“爬山”思想,在初始詞對齊確定以后,最佳的詞對齊結果可以通過多次搜索迭代獲得。以初始詞對齊結果為起點,每次只改變一個單詞的詞對齊,這個單詞可以是源語言單詞,也可以是目標語言單詞。對于雙語句對,句子中的某個單詞fj除去當前對齊到單詞ei以外,還有n種可能的對齊,因為fj可以對齊到空詞e0上。改變fj詞對齊的同時,整個句對的對齊概率也隨之改變。在搜索最佳詞對齊的“爬山”過程中,單次搜索的目標是:遍歷雙語句對,嘗試改變每一個單詞的詞對齊,找到使句對齊概率增加最多的詞對齊結果。單次搜索的時間繁雜度為O(mn)。整個迭代過程從初始詞對齊結果開始,不斷搜索比當前句對齊概率更高的詞對齊結果,直到改變任意一個詞對齊都不能使句對齊概率提高為止。
3 實驗及結果分析
3.1 數據準備
本文實驗使用的訓練語料如表1所示,列表中的語料均是中英雙語句對齊語料。這些語料均經過了初步的預處理,濾除了存在亂碼的句對,刪除了任意一端長度超過 80 個單詞的句對和長度比超過 5:1 的句對,中文部分用stanford的分詞系統[10,11]進行了分詞,英文部分進行了 tokenize 處理。預處理后全部的訓練語料大約包含 136 萬雙語句對。
實驗分為兩部分。第一部分是利用雙語句對的詞對齊困惑度對訓練語料進行過濾,比較通過不同的過濾閾值得到的語料對翻譯效果的影響;第二部分使用本文提出的判別式詞對齊和IBM 詞對齊模型 4兩種方法分別在訓練語料上獲得詞對齊結果,分析這兩種詞對齊結果的對齊精確率、召回率等指標,以及這兩種詞對齊方法對翻譯系統的影響。
3.2 基于困惑度的訓練語料過濾實驗
本節的實驗通過對齊句對的困惑度對訓練語料進行過濾,取困惑度 5?16分別對訓練語料進行過濾,過濾的結果如圖3的左圖所示。用過濾后的語料訓練12 個短語模型和調序模型,分別在 NIST 2005,2006,2008 中英翻譯語料上進行了測試,其結果如圖3的右圖所示。
實驗證明訓練語料中的錯誤對齊句對是會對自動翻譯的結果造成影響的。在用困惑度對訓練語料過濾的實驗中,訓練語料明顯減少是開始于困惑度閾值小于 12,而在測試集上得到最高 BLEU-4 得分的部分卻是困惑度為 7-8 的區間。這說明對齊困惑度在 8-12 之間的約 40 萬對齊句對不僅對翻譯系統性能的提高沒有幫助,還會起到相反的作用。而雖然對齊困惑度在 7 以下的句對都是較好的互為翻譯的句對,但是這部分句對在整個訓練語料中所占的比例太小,不足以將自動翻譯的效果拉高。實驗證明困惑度在 7-8 之間對齊句對恰好是個臨界點,在訓練語料中加入對齊困惑度在 7 以下的句對時,很可能會提高翻譯系統的表現;相反地,在訓練語料中加入對齊困惑度在 8 以上的句對時,很可能就會對翻譯系統的表現造成不利的影響。
3.3 基于 IBM 模型 4 的判別式詞對齊實驗
為了檢驗不同詞對齊模型的對齊效果以及不同詞對齊結果對機器翻譯的影響,在訓練語料上分別進行了兩個方向的 IBM 模型 4 詞對齊和基于 IBM 模型 4 的判別式詞對齊。從LDC2003E14 語料中隨機抽取 300 個對齊句對,由人工標注詞對齊。將手工標注的 300 個平行句對與所有訓練語料放在一起,分別進行兩種無指導詞對齊,其結果的準確率、召回率、對齊錯誤率如表2所示。其中“IBM model 4 f→e”與“IBM model 4 e→f”這兩個方向的詞對齊結果都是通過 GIZA++ 進行單向對齊得到的,“discriminative alignment”對齊結果則是通過本文介紹的判別式詞對齊算法得到的。
從表2中可以看出,“discriminative alignment”的詞對齊結果在精確率、召回率和詞對齊錯誤率方面,都比GIZA++得到的兩個單方向的詞對齊結果要好。
為檢驗不同詞對齊結果對自動翻譯效果的影響,對GIZA++產生的兩個單向詞對齊結果運用“grow-diag-final-and”方式進行融合,并分別在“grow-diag-final-and”和“discriminative alignment”兩種詞對齊結果上構造短語模型和調序模型,同時又在 NIST 2005,2006,2008 中英翻譯語料上進行了翻譯實驗,實驗結果如表3所示。
可以看到,判別式詞對齊對自動翻譯的提升效果最好,判別式詞對齊強制每一個單詞必須發射一條詞對齊,并且這個詞對齊可以對應到空詞上,這一限制使詞對齊的點在整個詞對齊矩陣中分布較為均勻,有助于短語對的抽取。
4 結束語
本文介紹了一種基于困惑度的雙語語料的過濾方法和一種基于 IBM模型 4 特征的判別式詞對齊算法。統計機器翻譯系統中的翻譯模型,是在句對齊基礎上進行處理的,而在實際工作中,大部分的句對齊語料都是從篇章級的對齊語料中自動抽取出來的,因此訓練語料中通常存在大量的對齊錯誤。本文中提出的基于困惑度的過濾方法可以有效地過濾去掉影響翻譯質量的錯誤的對齊句對,提高自動翻譯質量。本文中所提出的判別式詞對齊算法,在詞對齊這一階段的任務中,可以代替目前流行的詞對齊方法,即用開源詞對齊工具 GIZA++ 進行兩個單向詞對齊,并將兩個方向的詞對齊結果以“grow-diag-final-and”的融合方法合而為一。判別式詞對齊算法可以很方便地加入任意特征,在同樣加入 IBM 模型 4 各項特征的前提下,判別式詞對齊無論是在詞對齊方面,還是在對于翻譯質量的提高方面,都比傳統的方法略好一些。
參考文獻
[1] BROWN P F, PIETRA V J, PIETRA S A D, et al. The Mathematics of statistical machine translation: parameter estimation[J]. Computational Linguistics, 1993,19(2):263–311.
[2] BROWN P F, COCKE J, PIETRA S A D, et al. A statistical approach to machine translation[J].Computational Linguistics, 1990, 16(2):79–85.
[3] BROWN P F, PEITRA V J, PIETRA S A D, et al. The Mathematics of statistical machine translation: parameter estimation[J]. Computational Linguistics, 1993,19(2):263–311.
[4] AL-ONANIZAN Y, CURIN J, JAHR M, et al. Statistical machine translation, FinalReport, JHU Workshop, 1999.
[5] OCH F J, NEY H. Improved statistical alignment models[C]// Proceedings of 38thAnnual Meeting of the Association for Computational Linguistics. Hong Kong,China, 2000:440–447.
[6] OCH F J, NEY H. A comparison of alignment models for statistical machine
translation[C]//Proceedings of the 18th International Conference on Computational
Linguistics.Saarbrücken, Germany, 2000:1086–1090.
[7] LIU Y, LIU Q, LIN S. Discriminative word alignment by linear modeling[J]. Computational Linguistics, 2010, 36(3):303–340.
[8] DYER C, CLARK J H, LAVIE A, et al. Unsupervised word alignment with arbitrary features[C]// Proceedings of the 49th Annual Meeting of the Association for Computational Linguistics: Human Language Technologies. Portland, Oregon, USA,2011:409–419.
[9] OCH F J. Minimum error rate training in statistical machine translation[C]//Proceedings of the 41st Annual Meeting of the Association for Computational Linguistics. Sapporo, Japan, 2003:160–167.
[10] TSENG H, CHANG P, ANDREW G, et al. A conditional random field word segmente[C]//Fourth SIGHAN Workshop on Chinese Language Processing.Jeju Island, Korea, 2005:168–171.
[11] CHANG P, GALLEY M, MANNING C. Optimizing Chinese word segmentation for machine translation performance[C]//Proceedings of the Third Workshop on StatisticalMachine Translation. Columbus, Ohio, 2008:224–232.
*基金項目:國家自然科學基金重點資助項目(61173073) ; 國家高技術研究發展計劃(“863計劃”)重點資助項目(2011AA01A207)
作者簡介:梁華參(1982-),男,吉林省松原市人,博士研究生,主要研究方向為機器翻譯
趙鐵軍(1962-),男,黑龍江哈爾濱人,博士,教授、博士生導師,主要研究方向為自然語言處理、機器翻譯、基于內容的網絡信息處理等。