馮 洋,張冬冬,劉 群
(1.中國科學院 計算技術(shù)研究所 智能信息處理重點實驗室,北京100190;2.微軟亞洲研究院,北京100190)
不同語言之間的異構(gòu)性,導致了機器翻譯中源語言和目標語言的詞語順序不同,詞語調(diào)序成為機器翻譯中的關(guān)鍵問題。一個句法成分覆蓋的詞語在經(jīng)過翻譯之后,其對應的譯文通常也是相鄰的[1],這就是所謂的句法黏著性。于是,詞語順序的不同通常表現(xiàn)為在不同的語言中,句法成分的相對位置往往不同。在所有的句法成分中,介詞短語表現(xiàn)地尤為明顯。以中英文為例,在中文中,介詞短語通常在所修飾成分的前面,而在英文中,介詞短語通常在所修飾成分的后面,例如,英文句子“Bush held a talk with Sharon”,介詞短語“with Sharon”在“held a talk”的后面,而在其對應的中文句子“布什 與 沙龍舉行 了 會談”中,介詞短語“與沙龍”就在“舉行 了會談”的前面。因此,要得到高質(zhì)量的譯文,不但要保證介詞短語的譯文不能被分開,還要保證譯文被放在正確的位置上。
層次短語模型[2]可以從雙語句對中自動地抽取形式語法,而不需要語言學上的標注和假設,所以使用方便,目前被廣泛地應用于機器翻譯中。其形式語法信息的載體為層次短語(規(guī)則),它不僅可以利用短語來捕捉一些局部翻譯,而且還可以利用層次短語來捕捉子短語之間的調(diào)序,所以層次短語模型對長距離的調(diào)序具有一定的處理能力。但是形式語法也存在一定的問題,它沒有對子短語覆蓋的成分進行區(qū)分,這導致了子短語可以匹配任何的句法成分,這往往會帶來翻譯錯誤。例如,層次短語<held a talk X,X舉行 了 會談>,既可以被應用在“held a talk with Sharon”,也可以被應用在“held a talk and reached an agreement”上,但是對于后者,調(diào)序發(fā)生了錯誤。所以,利用語言學信息來對非終結(jié)符覆蓋的句法成分進行區(qū)分還是很有必要的。
本文我們在層次短語模型的基礎上,以介詞短語的形式引入語言學句法信息。一方面,我們利用層次短語來捕捉長距離調(diào)序,另一方面我們對介詞短語進行重點處理,以保證介詞短語被正確的調(diào)序,并滿足句法黏著性。我們把介詞短語的識別看成是一個序列標注問題,用條件隨機場(Conditional RandomField,CRF)進行標注,然后基于已被識別的介詞短語抽取規(guī)則,將抽取的包含介詞短語的規(guī)則和層次短語模型的規(guī)則進行合并,得到一個大的規(guī)則表。然后在測試句子已被標注出介詞短語的情況,用大的規(guī)則表對其進行匹配,得到最終的譯文。
本文的組織結(jié)構(gòu)如下:首先介紹添加介詞短語的層次短語模型,再介紹如何利用條件隨機場識別介詞短語,接著介紹規(guī)則抽取以及如何解碼,最后是實驗結(jié)果和結(jié)論。
我們在層次短語模型的基礎上對介詞短語進行重點處理,因為介詞短語的位置在不同語言中可能會差異很大。相對于層次短語模型中,普通規(guī)則只采用一個非終結(jié)符X,我們特地為介詞短語引進一個非終結(jié)符Y。于是,對于圖1中所示例子,其包含兩個介詞短語“with Sharon'”和“in US'”,其可以匹配的規(guī)則包括:
我們除了還需要層次短語模型的粘貼規(guī)則r7、r8之外,還需要一條規(guī)則r9,來實現(xiàn)非終結(jié)符Y到非終結(jié)符X的轉(zhuǎn)變:
于是,對于圖1所示的例子,其對應的翻譯過程如圖2所示。
圖1 一個英漢句對
圖2 翻譯過程
我們將模型形式化為對數(shù)線性模型,在規(guī)則上采用的特征以及整個推導上的特征與層次短語模型相同。其中,對于r7,其權(quán)重設為1。
標注介詞短語,相當于為句子中的每個詞打上一個標簽,來表示該詞是一個介詞短語的開始詞(標記為B),或者屬于一個介詞短語但不是其第一個詞(標記為I),或者不屬于任何一個介詞短語(標記為O)。因此,我們把識別介詞短語看成是一個序列標注問題。
為了克服label bias,并且采用盡可能多的統(tǒng)計信息,我們用條件隨機場來進行序列標注。我們用x=x1…xn表示輸入句子,y=y(tǒng)1…yn表示相應的標記序列,一個條件隨機場可以用一個局部特征變量f和一個特征權(quán)重向量λ來表示。每個局部特征可以是以下兩類中的一類:狀態(tài)特征s(y,x,i);轉(zhuǎn)換特征t(y,y′,x,i)。所以,條件隨機場的全局特征可以表示為:
于是,條件隨機場定義的條件概率可以表示為
一個句子可以對應多個標注序列,我們只選取其中概率最大的標注序列作為最終的標注結(jié)果
關(guān)于條件隨機場的更多細節(jié)可以參照文獻[3-5]。
識別介詞短語的時候,對于每個位置i,我們用l=l1…ln表示輸入句子對應的詞性標注序列,采用的特征如表1所示。
表1 識別介詞短語采用的特征
續(xù)表
由于采用了詞性標記作為特征,所以在識別介詞短語之前,需要得到每個詞的詞性。同樣,我們也采用條件隨機場來進行詞性標注,采用的特征如表2所示。除此之外,我們還采用了一些詞匯拼寫方面的特征,包括:一個單詞是否以數(shù)字或者大寫字母開頭,是否包括連字符,其后綴是否包括-ing,-ed,-ogy,-s,-ly,-ion,-tion,-ity,-ies。
表2 詞性標注采用的特征
引入介詞短語的層次短語模型的訓練過程與層次短語模型相同,只是抽取規(guī)則的時候有所不同。我們的模型抽取規(guī)則的時候分為兩步:第一步,不考慮介詞短語,采用層次短語的方法抽取規(guī)則;第二步,抽取包含介詞短語的規(guī)則。抽取包含介詞短語的規(guī)則也分兩步進行:首先抽取初始短語和介詞短語,然后在此基礎上抽取包含介詞短語的層次化短語。
·ci=B;
·cj=I;
·fj是源句子的最后一個詞,或者cj+1≠I。
句對<f,e>的包含介詞短語的規(guī)則的抽取方法如下:
同樣,我們得到的規(guī)則數(shù)量很大,對于不包含介詞短語的規(guī)則,按照層次短語模型的方法進行過濾,對于包含介詞短語的規(guī)則,為了加快解碼速度以及避免歧義性,我們添加了以下限制。
1)每個規(guī)則在源端和目標端的邊界詞均不能對齊到空;
2)初始短語所包含的源端詞的個數(shù)不超過10,而層次短語在源端的符號數(shù)(包括非終結(jié)符和終結(jié)符)不超過5個;
3)每條規(guī)則在源端不能為空,且至少要包含一個終結(jié)符;
4)每條規(guī)則最多可以有兩個非終結(jié)符;
5)每條規(guī)則在源端和目標端的詞語之間至少要有一條對齊。
以上限制和層次短語的主要區(qū)別在于,我們允許包含介詞短語的規(guī)則的兩個非終結(jié)符相鄰,這主要是因為句中的介詞短語已經(jīng)確定,兩個非終結(jié)符相鄰不會引起很多模棱兩可組合的情況。
我們將包含介詞短語的規(guī)則和層次短語模型的規(guī)則分開估計概率,概率的估計方法和層次短語模型相同。
與層次短語模型相同,我們采用CKY算法來搜索概率最大的推導,并將其對應的譯文作為最終的譯文。我們采用柱搜索來減小搜索空間,采用的剪枝策略為:每個區(qū)間最多可以匹配的規(guī)則限制為c個;每個柱對應的棧中保留的譯文的個數(shù)最多為b個;每個柱對應的棧中保留譯文的分數(shù)必須大于棧中當前最好譯文的分數(shù)的β倍。與此同時,采用cube pruning[6]來加快解碼速度,并限制每個規(guī)則最多可以匹配的源端詞語個數(shù)不超過10。于是,整個解碼過程的時間復雜度為O(10ncb2),與句子長度n成線性關(guān)系。
我們的模型在解碼的過程中,只有規(guī)則的匹配方法與層次短語模型不同。對于每個測試句子,我們采用兩部分規(guī)則:一部分是不考慮介詞短語的規(guī)則,其匹配方法與層次短語模型相同;一部分是包含介詞短語的規(guī)則。我們首先枚舉出句中的所有包含介詞短語的規(guī)則的源端部分,然后去規(guī)則表中查找相應的規(guī)則。
我們首先測試采用CRF進行詞性標注和介詞短語識別的效果,因為介詞短語識別的準確率直接影響到解碼效果,然后我們測試一下引入介詞短語的情況下解碼的性能。
我們將標準賓州樹庫的英語句法分析任務數(shù)據(jù)的1~22節(jié)的39 832個句子分成兩部分,前面的38 832個句子作為訓練集,后面的1 000個句子作為測試集。對于訓練集語料的獲得,我們采用后序遍歷的方法來識別介詞短語,對于標注為PP的節(jié)點覆蓋的源語言串則標注為介詞短語,且一旦一個節(jié)點被我們識別為介詞短語,我們不再遍歷其祖先節(jié)點,這樣保證我們得到的介詞短語均為最小的介詞短語。為了保證與機器翻譯語料的一致性,我們將賓州樹庫中的`和"用”來替換。CRF采用L2方法來訓練。
我們采用序列標注問題中通用的標準——準確率(P),召回率(R),F(xiàn)1值,來評估介詞短語識別的結(jié)果。我們還采用正確率(A)來評估每個詞的標注結(jié)果。對于介詞短語標注,準確率P和正確率A是不同的。例如,下面的標注序列
參考序列: O O B I O O B I
標注序列: O O B I I O B I
其準確率P為50%,正確率A為87.5%。詞性標注的結(jié)果如表3所示,介詞短語識別的結(jié)果如表4所示。
從以上實驗結(jié)果可以看出,詞形標注的正確率比介詞短語識別的正確率要高很多,這主要是因為,我們識別介詞短語的時候,窗口的大小只有3,而有的介詞短語的長度超過3,對于這一部分介詞短語的識別會比較吃力。另外,由于識別介詞短語的時候用詞性作為特征,而詞性識別的時候會引入一部分錯誤,這部分錯誤會累加到介詞短語識別上來,導致最后的正確率降低。
表3 詞性標注結(jié)果
表4 介詞短語識別結(jié)果
我們接下來比較引入介詞短語的模型和層次短語模型的性能。我們采用的開發(fā)集為NIST2008英漢雙語訓練語料,除去其中的香港法律和香港會議記錄部分,大約剩下49萬句對。對于訓練語料,我們先用GIZAC++工具包[7]進行雙向?qū)R,然后采用“final-and”策略將雙向?qū)R合并成一個多到多對齊。采用的語言模型為在GIGA語料的新華部分上訓練的一個五元語言模型,并采用KN方法進行平滑。我們的實驗結(jié)果都進行了顯著性測試[8]。
我們采用的開發(fā)集為微軟亞洲研究院內(nèi)部的英漢新聞測試集,包括1 010個句子,分別在兩個測試集上比較兩個解碼器的性能:一個是NIST 2008英漢機器翻譯測試集,包括1 859個句子,另一個是我們內(nèi)部的另一個英漢新聞測試集,包括966個句子。翻譯結(jié)果的評測標準采用基于字的BLEU值[9],最高進行四元的n-gram匹配取。我們在開發(fā)集上采用最小錯誤率[10]來進行參數(shù)訓練,訓練的目標為使得開發(fā)集上的BLEU值最大。
表5 機器翻譯性能比較
表5給出了實驗結(jié)果,“**”表示在顯著性測試中ρ<0.01。從實驗結(jié)果可以看出,引入介詞短語之后,在我們內(nèi)部的測試集上,BLEU值提高0.8個點,在NIST 2008上提高了0.5個點。性能提高的原因在于通過引入介詞短語,可以針對介詞短語選擇更好的規(guī)則,從而減輕引言中提到的由于X可以匹配任何短語而導致規(guī)則使用不恰當?shù)那闆r。
層次短語模型在短語模型的基礎上,引入在雙語句對上自動學習得到的形式語法信息,這些形式句法信息不需要基于語言學的標注和假設,使得形式短語模型用起來很方便,所以現(xiàn)在層次短語模型使用很廣泛。在層次短語模型中,形式句法信息是以層次短語為載體的。而層次短語由詞和短語組成,所以層次短語模型一方面可以通過短語來學習局部翻譯,一方面可以利用層次短語來掌握短語之間的調(diào)序,所以層次短語具有一定的捕捉長距離調(diào)序的能力。由于形式語法并不對每個短語的句法成分進行細化,這導致了層次短語在規(guī)則匹配的時候可能會被用在不恰當?shù)牡胤?,所以對層次短語的短語進行句法標注還是很有必要的。我們嘗試在層次短語模型的基礎上,以介詞短語的形式來引入語言學句法信息,并對介詞短語的調(diào)序進行重點處理。由于介詞短語在不同語言中相對位置差異很大,如此可以以較小的代價來獲得翻譯性能的較大提高。
對于介詞短語的識別,我們采用序列標注的方法,通過對賓州樹庫中的句法分析樹進行處理來得到短語識別的訓練語料,來訓練得到一個條件隨機場(CRF)。然后用訓練得到的CRF在機器翻譯任務的訓練集上識別介詞短語,對于規(guī)則抽取,除了抽取層次短語模型的規(guī)則,還抽取一些包含介詞短語的規(guī)則。在訓練和解碼的時候,也是先識別介詞短語,然后一起應用兩部分規(guī)則,一部分是層次短語模型的規(guī)則,一部分是包含介詞短語的規(guī)則。實際上,抽取出來的介詞短語并不多,對解碼器的速度影響不大,卻能取得顯著的效果,在我們內(nèi)部的英漢翻譯數(shù)據(jù)集上可以提高0.8個BLEU值,在NIST2008英漢機器翻譯測試集上可以提高0.5個點。這充分說明語言學句法信息對提高機器翻譯性能還是很有幫助的。
[1]Heidi Fox.Phrasal Cohesion and Statistical Machine Translation[C]//Proceedings of EMNLP,2002:304-311.
[2]David Chiang.Hierarchical phrase-based translation[J].Computational Linguistics,2007:201-228.
[3]John Lafferty,Andrew McCallum,F(xiàn)ernando Pereira.Conditional Random Fields:Probabilistic Models for Segmenting and Labeling Sequence Data [C]//Proceedings of ICML,2001:282-289.
[4]Ben Taskar, Pieter Abbeel, Daphne Koller.Discriminative Probabilistic Models for Relational Data[C]//Proceedings of Eighteenth Conference on Uncertainty in Artificial Intelligence,2002.
[5]Fei Sha,F(xiàn)ernando Pereira.Shallow Parsing with Conditional Random Fields[C]//Proceedings of HLTNAACL,2003:134-141.
[6]Liang Huang and David Chiang.Better k-best parsing[C]//Proceeding of IWPT,2005:53-64.
[7]Franz Josef Och,Hermann Ney.Improved Statistical Alignment Models[C]//Proceedings of the 38th ACL,2000.
[8]Michael Collins,Philipp Koehn,Ivona Kucerova.Clause restructuring for statistical machine translation[C]//Proceeding of ACL,2005:531-540.
[9]Kishore Papineni,Salim Roukos,Todd Ward,et al..Bleu:a Method for Automatic Evaluation of Machine Translation[C]//Proceedings of the 40th ACL,2002:311-318.
[10]Frans J. Och. Minimum error rate training in statistical machine translation [C]//Proceeding of ACL,2003:160-167.