摘 要:通過漢語到英語的翻譯實驗以及對結果譯文的分析,對基于詞的模型、基于短語的模型和基于句法的模型的翻譯性能進行了比較。結果表明基于短語的模型性能優于其他兩個模型,但是使用的參數較多;基于句法的模型雖然翻譯性能不理想,但可以用較少的參數表達更豐富的信息,值得深入研究。
關鍵詞:自然語言處理; 統計機器翻譯; 翻譯模型; 句法分析器
中圖分類號:TP391.2文獻標志碼:A
文章編號:1001-3695(2007)06-0069-03
機器翻譯的目標就是將給定的一個源語言文本翻譯成目標語言文本。對漢英翻譯來說,輸入一個漢語句子c(cm1,m為句子長度),可能會有很多英語譯文e(en1,n為句子長度),統計機器翻譯的任務是在所有可能的譯文中,找到最佳譯文。根據Bayes公式可得到
早在1949年,Weaver就提出利用統計方法研究機器翻譯問題。其基本思想是把外語看成是對本地語言的一種編碼,而翻譯過程就是對外語文章進行解碼,用本地語言表達同樣的意思。20世紀90年代初,IBM T.J. Watson研究中心的Brown等人開創性地提出了詞對詞的統計翻譯模型,并以此為基礎構建了Candide系統[1]。此后對IBM模型比較重要的改進包括在IBM模型2的基礎上提出基于隱馬爾可夫模型的對齊模型(HMMbased Alignment Model),以及基于IBM模型4和基于HMM詞對齊模型的對數線性模型。在基于詞的統計翻譯模型基礎上,又相繼提出了基于短語和基于句法的統計翻譯模型。基于短語的統計翻譯模型是目前研究的一個熱點,主要包括基于淺層短語結構的翻譯模型、對齊模板(Alignment Template)模型、Koehn的短語翻譯模型、基于雙語語塊(CoChunk)的翻譯模型等。基于句法的統計翻譯模型由于引入了層次結構信息,有望處理長距離依賴和調序問題,正逐漸成為新的研究熱點。這類模型大致可以分為語言學驅動(Linguisticallymotivated)的模型和非語言學驅動的模型。前者依賴于句法分析樹的指導,如Yamada的樹—串統計翻譯模型、概率樹替換文法(Probabilistic Tree Substitution Grammar)模型以及多文本文法模型(MultiText Gramar,MTG);后者是無指導的,在翻譯過程中建立層次結構,主要包括反向轉換文法(Inversion Transduction Grammar,ITG)模型、中心詞轉錄機(Head Transducer)模型、層次化短語翻譯模型(Hierarchical Phrasebased Model)等。此外還有一類模型,利用句法信息來抽取非層次化的短語翻譯等價對,可以看做是介于短語和句法翻譯模型之間的一類統計翻譯模型。
1 翻譯模型概述
1.1 基于詞的翻譯模型
IBM翻譯模型是目前統計翻譯模型研究的基礎,包括模型1-5。其中模型1、2是基于對齊的模型;模型3-5是基于繁殖數的模型。
模型4不僅考慮了繁殖概率,還將語言片作為一個整體進行考慮。模型5在模型4基礎上進一步擴展,不僅考慮了當前對位狀況,還考慮了對位歷史情況,因此是一個無缺陷的模型;但模型過于復雜,對齊的效果與模型4相差不多。在實際的翻譯應用中采用模型4就可以了。
1.2 基于短語的翻譯模型
基于短語的模型在基于詞的模型的基礎上引入了上下文信息,基核心是短語的抽取與評分。通常情況下,短語的抽取是基于詞對齊的結果;而在IBM的模型中,對于每一個漢語詞,只允許最多一個英語單詞與之相對應。但是在實際翻譯中存在多對多的情況,需要進行一些轉換。短語抽取的啟發式處理過程如下[4,5]:
(1)從中英文的平行語料中獲得兩種詞對齊表,即漢語到英語的對齊表和英語到漢語的對齊表:
(2)從兩個對齊表交集中的詞對齊開始。選擇一個對齊(e,c),從中英文詞的鄰節點(enew, cnew)開始擴展。如果這兩個詞都沒有對齊的目標,并且(enew,cnew)出現在并集中,就擴展到短語中;接著第二個,依此類推,直到沒有可以擴展的詞為止。由此可以獲得短語的翻譯概率。
對于抽取的短語片斷,要滿足以下原則:
(1)漢語短語片段中的每一個詞對應的英語詞都應該不能出現在與漢語短語對應的英語短語片段之外,反之亦然;
(2)對于漢語短語片段中的每個詞,對應的英語短語中不能沒有英語詞與之相對應,反之亦然。
1.3 基于句法的解釋模型
基于句法的翻譯模型有很多種。在實驗中采用的模型是由Melamed提出并在2005年由Johns Hopkins University的Work ̄shop實現的基于泛化的句法分析方法的統計機器翻譯系統。
在自然語言處理中,句法分析是一個推導語言學結構的算法。它可以分為幾個部分:文法、邏輯、搜索策略、終止條件等。對于輸入的字符串集合,句法分析器使用文法在字符串上進行句法分析的處理,得到樹型句法機構。各種句法分析器都有自己不同的方式和側重點。Melamed采用了語法來遞增的推倒結構方法[6,7]。Melamed在他提出的泛化的句法分析中,引入了多維文法的概念DGMTG(Generalized Multitext Grammar,D>0)。它是對CFG的一種泛化,其文法為
為了簡化,可以將GMTG限制成CNF的形式,被稱為GCNF(Generalized Chomsky Normal Form)。在GCNF下,每一個GMTG的產生式或者是終結產生式或者是非終結產生式。其終結產生式和非終結產生式可分別表示如下:
其中,每一維中的產生式都滿足CNF;表示一個占位符;πi是一個優先數組,表示其后的YiZi間的優先關系。二維文法的獲取可描述如下:
(1)對中英文的平行語料分別進行句法分析,獲取相應的句法分析樹結構(也可以僅對英語(即目標)進行句法分析)。
(2)對中英文的平行語料進行詞的對齊。
(3)用詞對齊的結果,利用句法分析后的樹型結構進行層次化對齊,進而可以抽取出二維文法結構。
泛化的句法分析就可以同時處理多個句對。輸入多種語言的句對,用維度d來表示。當d=1時就是一般的句法分析器;當d>1時,被稱為多維句法分析器,可以對輸入句對中每一維的句子同時進行句法分析,推導出樹型結構(即句法分析樹)。泛化的句法分析器不僅是一個多維的句法分析器,而且當輸入多維語句對的維數少于其文法的維數時,對輸入進行解碼翻譯;反之則進行層次化的對齊,訓練獲取多維文法,為提取多維語法規則作準備。可以看出,一般的句法分析只對一種語言的字符串序列進行處理,是泛化句法分析的一個特例[8,9]。
2 對比實驗及分析
2.1 對比實驗
本文對基于詞、基于短語和基于句法三類統計翻譯模型的統計機器翻譯系統的翻譯性能進行比較,通過實驗來對比其翻譯效果的差異。其中基于詞的模型采用了ISI的RewriteDecoder,使用IBM模型4作為翻譯模型;基于短語的模型選用的是Philipp Koehn的Pharaoh,是在詞對齊的基礎上進行短語的抽取;基于句法的模型采用的GenPar是由Melamed提出并在2005年由Johns Hopkins University的夏季Workshop中實現的泛化句法分析方法器。
語料選用了IWSLT2004的訓練語料和測試語料。其中,訓練語料為20 000個中英雙語句對;測試語料為500句。英文語料共出現185 713個字,平均字長為9.3個,如表1所示。
評分方法采用了BLEU和NIST。它們都是基于n元語法的機器翻譯自動評測方法。其基本思想是,將機器翻譯產生的候選譯文與人類翻譯者提供的多個參考譯文相比較,越接近,則候選譯文的正確率越高。
實驗的目的是為了比較研究,未進行最小誤差率訓練,采用了系統的默認進行實驗。通過實驗,評分結果如表2所示。
從表2中的數據可以得到:基于短語的模型BLEU的分值為0.255 5,明顯高于基于詞模型的0.222 1和基于句法模型的0.085 2。NIST的評分結果也顯示出相似的結果。
2.2 實驗結果分析
通過對三種模型翻譯結果的分析,整體來看可以發現以下一些特點:
(1)對于在訓練語料的詞表中未出現的詞,基于詞模型和短語的模型都采用了輸出源語言詞(漢語詞)的方法;而基于句法的模型則是將這些詞全部丟棄。這種現象導致了評分下降,其原因是訓練語料的規模較小所致。
(2)基于詞的模型和基于句法的模型都存在較多句子結構不完整的情況,在基于句法的模型中表現更為明顯。基于詞的模型是逐詞翻譯,不能發現句子的省略情況,如對“可以試穿嗎?”等句子的翻譯就不能加上主語之類的成分;基于句法的模型對于未出現的詞,無法用文法進行推導,所以出現句子不完整的情況。
對于譯文的質量,通過對三種模型翻譯結果的分析可以發現,相對于基于詞的模型,基于短語的模型由于包含了詞的上下文信息,而不只是單個詞,有以下幾個方面的優勢:
(1)詞在短語中進行翻譯時,可以較好地處理詞形態變化、詞義等情況,使翻譯結果的正確性更高。例如:“兩個晚上”在詞模型中會被逐詞翻譯,結果成了“two a night”;而基于短語的模型由于帶有上下文信息就可以發現這種單復數的信息,翻譯結果為“two nights”。“看看”在句子“請 給 我 看看 那個”的翻譯時,在詞模型中翻譯成概率較高的“see”;基于短語的模型就能提取出短語“給 我 看看 那個”,將之翻譯成“show”,最終翻譯成“please show me that”。基于短語的模型的這種特點可以使譯文更加準確。
(2)短語能夠固定詞序,得到正確的詞序。例如“給父親的禮物”,基于短語的模型可以抽取出短語“a gift for my father”;而基于詞的模型就出現了“take father gift”這樣的翻譯結果。當訓練數據較多時,能獲得的短語長度越長,就更有助于解碼。
與基于詞的模型和基于短語的模型不同的是,基于句法的模型能夠包含更多的語言學信息;在訓練時獲取句式特點,如疑問句、被動句、“把”字句等,能更好地處理句子的結構問題。例如“我 覺得 冷”,在短語的模型中,在進行短語抽取時將“我 覺得”翻譯為“I feel”、“I think”等,相應的“冷”的譯文為“it’s cold”的概率較高,翻譯結果就成了“I think it’s cold”;而基于句法的模型能在文法中體現句子的結構信息,從而避免產生這種情況,翻譯結果為“I feel chilly”。再如“有 會 講 日語 的 醫生 嗎?”和“給 您 安排 座位”在基于句法的模型中進行翻譯時,由于文法中能體現句式特點,可以正確地翻譯成“do you have a Japanese speaking doctor?”和“arrange a seat for you”;而基于短語的模型卻不能解決這種句子結構問題,其結果為“I’ll have a Japanese speaking doctor?”和“give you arrange a seat”。
相對于基于詞的模型和基于短語的模型,基于句法的模型由于翻譯時對出現的未登錄詞都采取了丟棄的方式,造成翻譯結果句子的長度過短,在評分時受到的懲罰較大,所以分值較低。在翻譯較短的句子時,基于句法的模型體現不出其優勢。
3 結束語
通過對三類統計翻譯模型在口語漢英翻譯領域的對比實驗可以得到:基于短語的模型翻譯性能最好,基于詞的模型次之,基于句法模型最差。相對于基于詞的模型,基于短語的模型由于帶有詞的上下文信息,使單個詞的翻譯正確率更高;短語結構由于可以固定詞的順序,使譯文的正確性提高。基于句法的模型相比其他兩個模型來說雖然性能較差,但是能很好地處理句子的結構問題。
基于句法的模型時間空間開銷較大,因為樹型結構信息比較復雜;而基于詞和基于短語的模型相對較簡單。可能在語料較小的情況下,基于句法的模型訓練獲得的信息較少從而影響了翻譯性能。
從模型使用的參數個數來看,基于詞的模型和基于短語的模型使用的參數較多,兩者的模型都較復雜。實際應用中能夠被可靠估計的參數個數要么受限于可用于訓練的數據大小;要么受限于可利用的計算資源。對全世界所有的語言來說,適當的訓練數據都是有限的,即使對可利用的訓練數據是無限的資源豐富的語言來說,能夠適合計算機內存的模型參數的個數也是有限的。相比之下,基于句法的模型使用的參數最少,能夠用較少的參數表達豐富的句子信息,值得進一步深入研究。
本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。