于 惠,謝 軍,熊 皓,呂雅娟,劉 群,林守勛
(中國(guó)科學(xué)院計(jì)算技術(shù)研究所智能信息處理重點(diǎn)實(shí)驗(yàn)室,北京100190)
廣泛意義上來講,統(tǒng)計(jì)機(jī)器翻譯[1]也可以看作是利用規(guī)則來翻譯的,例如,基于短語的翻譯模型[2-4]利用的是短語翻譯規(guī)則,基于句法的翻譯模型[5-7]利用的是句法翻譯規(guī)則。一般的翻譯規(guī)則包含源端和目標(biāo)端,他們可能是詞、短語或者是句法樹,這依賴于它們所屬的模型。通常,一個(gè)源端可能對(duì)應(yīng)著多個(gè)目標(biāo)端,由于對(duì)齊錯(cuò)誤或其他原因其中的一些規(guī)則可能是錯(cuò)誤的。統(tǒng)計(jì)機(jī)器翻譯的一個(gè)主要任務(wù)就是對(duì)于給定的規(guī)則源端選擇出正確的目標(biāo)端,這會(huì)直接影響翻譯模型的質(zhì)量。
傳統(tǒng)的方法是利用在訓(xùn)練語料中估計(jì)的翻譯概率來做規(guī)則選擇,這種方法沒有充分利用上下文信息。對(duì)于不同的上下文一個(gè)詞可能有不同的含義。例如,mouse,根據(jù)不同的上下文環(huán)境可以翻譯成“老鼠”或“鼠標(biāo)”。如表1所示,在文檔1的句子1中,mouse的含義是“鼠標(biāo)”,在文檔2的句子1中mouse的含義是“老鼠”,這是根據(jù)mouse所在句子的上下文信息判斷出來的。在文檔3中,僅根據(jù)mouse所在的句子2,不能判斷出它的含義,但是再加上句子1和句子3的信息,我們就可以判斷出它的含義了。同樣,要得到正確的翻譯結(jié)果,解碼器也需要當(dāng)前句子或者周圍句子的上下文信息。
表1 mouse在不同上下文的不同含義
本文中我們提出了一種利用整個(gè)文檔的上下文信息來幫助規(guī)則選擇的方法,首先我們利用向量空間模型[8-9]建立兩個(gè)矩陣,一個(gè)是訓(xùn)練集的,一個(gè)是測(cè)試集的。矩陣中的每一行代表一個(gè)文檔中每一個(gè)單詞的出現(xiàn)次數(shù)(停用詞表中的單詞和出現(xiàn)次數(shù)太少的單詞被過濾掉)。然后,利用這兩個(gè)矩陣生成一個(gè)訓(xùn)練集和測(cè)試集的相似度矩陣。我們把相似度作為一個(gè)新的特征加入到BTG模型[4]中。實(shí)驗(yàn)表明,在英語到漢語的翻譯工作中,我們的方法可以顯著提高翻譯質(zhì)量。
近年來,很多研究者利用上下文信息來提高機(jī)器翻譯的質(zhì)量。文獻(xiàn)[4]提出了一種利用邊界詞信息預(yù)測(cè)短語重排序的方法,他的工作中把重排序看做分類問題,利用最大熵模型實(shí)現(xiàn)。文獻(xiàn)[10-11]用上下文信息來幫助目標(biāo)端規(guī)則的選擇。他們利用非終結(jié)符的邊界詞信息建立最大熵模型。文獻(xiàn)[12]提出了利用功能詞選擇源端規(guī)則的方法。文獻(xiàn)[13]利用了相鄰詞的信息來計(jì)算語言模型的值。文獻(xiàn)[14]提出了用上下文信息來調(diào)序的方法,所用的上下文信息包括源端的詞匯化特征(邊界詞和相鄰詞),詞性標(biāo)注特征和目標(biāo)端的詞匯化特征(邊界詞)。也有研究者利用上下文信息來做領(lǐng)域自適應(yīng)[15]。
這些研究者的方法都利用了一部分上下文信息,但大都利用的是當(dāng)前跨度內(nèi)的信息或周圍詞的信息,并沒有利用到整個(gè)篇章中的信息。本文中我們提出了一種利用整個(gè)篇章信息的方法,實(shí)驗(yàn)表明,我們的方法可以顯著提高翻譯質(zhì)量。
VSM是信息檢索中運(yùn)用很廣泛的一個(gè)模型,近年來,一些研究者也把它用到了統(tǒng)計(jì)機(jī)器翻譯中[16]。在VSM中,每一篇文檔表示為一個(gè)向量,向量中的每一個(gè)元素對(duì)應(yīng)文檔中的一個(gè)詞,如果一個(gè)詞在文檔中出現(xiàn),那么在向量中對(duì)應(yīng)的就是一個(gè)非零的值,否則它對(duì)應(yīng)的值就是零。第j個(gè)文檔可以用向量Dj表示,Dj=<W1j,W2j,…,Wnj>。其中,Wkj表示第k個(gè)詞的權(quán)重。在計(jì)算權(quán)重時(shí)我們用了TF-IDF(Term Frequency-Inverse Document Frequency)[9]。
TF-IDF是一種統(tǒng)計(jì)方法,TF表示一個(gè)詞在一個(gè)文檔中的出現(xiàn)次數(shù),當(dāng)然經(jīng)常被歸一化。第i個(gè)詞的TF可以表示為是第i個(gè)詞在第j個(gè)文檔中的出現(xiàn)次數(shù),分母就表示在第j個(gè)文檔中所有所有詞的出現(xiàn)次數(shù)之和。IDF是評(píng)價(jià)一個(gè)詞在一個(gè)語料中重要性的指標(biāo)。第i個(gè)詞的IDF可以表示為:表示一個(gè)語料中文檔的個(gè)數(shù),|d|表示第i個(gè)詞出現(xiàn)過的文檔的個(gè)數(shù)。這樣,tfidfi,j=tfi,j·idfi,利用TF-IDF可以過濾掉常見的詞,并且保留重要的詞。
在計(jì)算兩個(gè)文檔間的相似度時(shí),我們利用了cosine angle[9]。
其中,W1k和W2k分別表示第k個(gè)詞在文檔向量D1和D2中的權(quán)重。
本文中,我們用了源端語言的篇章上下文信息,我們用的所有語料都是按照篇章信息分好的文檔,每個(gè)文檔就是一個(gè)篇章。首先,掃描訓(xùn)練語料并且記錄下其中出現(xiàn)的所有詞,去掉停用詞后保存在一個(gè)向量中,我們稱為words-vector。然后建立一個(gè)M×H的矩陣A,每個(gè)元素的初始值都為0。M是訓(xùn)練語料中文檔的個(gè)數(shù),H是words-vector的長(zhǎng)度。A中的每一行表示一個(gè)文檔。然后掃描訓(xùn)練語料中每一個(gè)文檔,如果一個(gè)詞在此文檔中出現(xiàn)過,并且也在words-vector中(即這個(gè)詞不是停用詞),矩陣A中對(duì)應(yīng)元素的值加1,最后我們可以得到包含所有文檔上下文信息的矩陣A。
對(duì)于測(cè)試集,建立一個(gè)P×Q的矩陣B。P是測(cè)試集中文檔的個(gè)數(shù),Q是在訓(xùn)練語料或測(cè)試語料中出現(xiàn)但不在停用詞中出現(xiàn)的詞的個(gè)數(shù)。用與得到A相同的方法得到B。
為了保證從訓(xùn)練語料中得到的文檔向量和測(cè)試語料中得到的文檔向量長(zhǎng)度相同,我們擴(kuò)展矩陣A的列的個(gè)數(shù)由H到Q,新擴(kuò)展出的元素的值都為0。在矩陣A和B中分別利用TF-IDF,得到每個(gè)詞對(duì)應(yīng)的權(quán)重。然后用cosine angle對(duì)矩陣B的每一行和矩陣A的每一行計(jì)算相似度,可以得到相似度矩陣C,矩陣中的每一個(gè)元素(i,j)是由矩陣B中的第i行和矩陣A的第j行得到的。在解碼過程中,我們會(huì)用到這個(gè)相似度矩陣。
本報(bào)訊 根據(jù)湖北三寧化工股份有限公司大修計(jì)劃節(jié)點(diǎn),11月18日上午9:00尿素廠正式進(jìn)入大修模式,1#系統(tǒng)停車,12:30置換完成,凈化車間1#系統(tǒng)置換較以往不同的是將羅茨機(jī)開著置換,這樣做旨在節(jié)約時(shí)間。19日凌晨3:002#系統(tǒng)停車,管理人員全體就位,到現(xiàn)場(chǎng)協(xié)調(diào)指揮,8:30完成置換,順利停車,各項(xiàng)檢修工作有序進(jìn)行。
我們所用的語料都是帶有文檔標(biāo)記的,即每個(gè)文檔都有一個(gè)ID標(biāo)記,比如1,2,3…在抽規(guī)則的同時(shí),記錄下每個(gè)規(guī)則所在的文檔的ID。有的規(guī)則可能同時(shí)出現(xiàn)在幾個(gè)文檔中,這樣的規(guī)則就有多個(gè)ID。比如一條規(guī)則表示為:
mouse|||鼠標(biāo)0.1 0.1 0.1 0.1|||1 3
這個(gè)規(guī)則中最后的1和3表示它出現(xiàn)在第1個(gè)和第3個(gè)文檔中。
對(duì)數(shù)線性模型的框架使得我們很容易在解碼器中加入新特征,如式(2)所示。
我們的目的是找到概率最大的e,λ代表特征函數(shù),h是特征函數(shù)對(duì)應(yīng)的權(quán)重,λm(m=1,2,…M)為原有的特征,λsimi為新加入的特征。
我們用的基準(zhǔn)系統(tǒng)是基于BTG的解碼器。該解碼器用的是CKY形式的解碼算法。為了利用整個(gè)文檔的上下文信息,我們把相似度作為一個(gè)新的特征加入到基于BTG的解碼器中。
對(duì)于給定的一個(gè)句子S,它所在文檔的ID為d。首先,用規(guī)則表中的規(guī)則初始化chart圖。對(duì)每個(gè)span(i,i),在規(guī)則表中可以找到有用的規(guī)則Pk(k=1,2,…K),有用規(guī)則的個(gè)數(shù)為K,有用規(guī)則指的是源端和span(i,i)一致的規(guī)則。我們用IDkt表示規(guī)則Rk所在的文檔ID,t=1,2,…,T,T是規(guī)則Rk所在的文檔ID 的個(gè)數(shù)。相似度特征的分?jǐn)?shù)可以在相似度矩陣C(d,IDkt)中找到,代表矩陣C中第d行,第IDkt列的元素的值。如果T大于1,需要得到一個(gè)最終的分?jǐn)?shù),實(shí)驗(yàn)中分別用了它們的最大值和平均值,所以最終的相似度分?jǐn)?shù)可以表示為:
對(duì)于span(i,j),i≠j,如果一條規(guī)則不能覆蓋整個(gè)span,為了得到span(i,j)的候選翻譯,需要把i,j間的子span進(jìn)行組合,這時(shí)span(i,j)的相似度分?jǐn)?shù)不能直接在相似度矩陣中得到,因?yàn)槎陶Z表中可能沒有對(duì)應(yīng)的規(guī)則。我們采用了比較簡(jiǎn)單的方法,例如,取兩個(gè)子span相似度特征分?jǐn)?shù)的平均值或最大值。
得到span(i,i)和span(i,j)相似度特征分?jǐn)?shù)都有平均值和最大值兩種方式,所以有四種不同的組合方式,可以得到四個(gè)解碼器,如表2所示。表2中“init”表示解碼的初始化過程,此過程中相似度特征的值可以取最大值或平均值;“cat”表示解碼時(shí)兩個(gè)span的拼接過程,此過程中相似度特征的值也可以取最大值或平均值。解碼器中其他特征的計(jì)算和基準(zhǔn)系統(tǒng)相同。在CKY解碼的最后,我們可以得到整個(gè)句子的候選翻譯。
表2 不同組合產(chǎn)生的四種解碼器
計(jì)算訓(xùn)練語料中文檔和測(cè)試語料中文檔相似度的時(shí)間復(fù)雜度是O(M×P×Q)。M是訓(xùn)練語料中文檔的個(gè)數(shù),P是測(cè)試語料中文檔的個(gè)數(shù),實(shí)驗(yàn)中它們的值如表3所示,Q是過濾后訓(xùn)練語料或測(cè)試語料中出現(xiàn)的詞的個(gè)數(shù),實(shí)驗(yàn)中其值為40 000。
我們的實(shí)驗(yàn)是在英語到漢語的翻譯工作中做的。雙語平行語料包括LDC2003E14,LDC2005T06,還有一部分LDC2004T08,共100萬平行句對(duì),用GIZA++做詞語對(duì)齊,并且使用“grow-diag-final”的啟發(fā)式方法。語言模型是5元giga語言模型。
我們?cè)贖TRDP-MT2005上做的最小錯(cuò)誤率訓(xùn)練,測(cè)試集使用CWMT2008和NIST2008。翻譯質(zhì)量的評(píng)價(jià)指標(biāo)是BLEU-4,測(cè)試工具是mtevalv11b.pl。實(shí)驗(yàn)中用的語料都是新聞?lì)I(lǐng)域的,詳細(xì)信息如表3所示。
表3 實(shí)驗(yàn)中所用語料信息
可以通過BLEU值證明我們方法的有效性,各個(gè)系統(tǒng)的結(jié)果見表4。在表4中,N表示閾值,即如果一個(gè)詞在訓(xùn)練語料的每個(gè)文檔中出現(xiàn)次數(shù)不超過N次,就過濾掉這個(gè)詞。在N為1時(shí),只有BTG_sim_4的結(jié)果比較好,對(duì)兩個(gè)測(cè)試集分別提高了0.95和1個(gè)點(diǎn)。N為2時(shí),只有BTG_sim_3低于基準(zhǔn)系統(tǒng)的結(jié)果,其他的都高于基準(zhǔn)系統(tǒng)。N為3時(shí),幾乎所有的結(jié)果都低于基準(zhǔn)系統(tǒng)的結(jié)果。
表4 兩個(gè)測(cè)試集的BLEU值
從這些結(jié)果我們可以得出一個(gè)結(jié)論:如果一個(gè)詞僅出現(xiàn)了一次或兩次,它可能是一個(gè)干擾,應(yīng)該過濾掉,所以N為2時(shí)效果最好;如果一個(gè)詞出現(xiàn)了3次,這個(gè)詞是有用信息的可能性比較大,應(yīng)該保留。在N為2時(shí)(最好的閾值),BTG_sim_2和BTG_sim_4的效果最好,即解碼的過程中初始化和連接相鄰span時(shí)都取平均值或都取最大值時(shí)效果最好。
我們通過兩個(gè)例子比較一下新解碼器和基準(zhǔn)系統(tǒng)的翻譯結(jié)果,見表5和表6,其中的兩個(gè)句子來自NTST08。
表5 單詞orders的翻譯結(jié)果
表6 單詞fans的翻譯結(jié)果
在表5和表6中,第一行sentence表示詞orders和fans所在的句子;第二行context 1表示當(dāng)前句子中出現(xiàn)的有用的單詞;第三行context 2表示當(dāng)前文檔中(除了當(dāng)前句子)出現(xiàn)的有用的單詞,一個(gè)文檔中有用的單詞可能有很多,這里只舉了其中幾個(gè)例子。有用單詞指的是對(duì)我們關(guān)心的單詞or-ders和fans的翻譯能起到幫助作用的詞。第四行reference是第一行sentence的參考譯文;第五行BTG-based model是基準(zhǔn)系統(tǒng)的翻譯結(jié)果;第六行BTG+similarity是加入相似度特征的解碼器的翻譯結(jié)果。
在第一個(gè)例子中,對(duì)于單詞orders,基準(zhǔn)系統(tǒng)的翻譯結(jié)果是“令”。在第二個(gè)例子中,對(duì)于單詞fans,基準(zhǔn)系統(tǒng)的翻譯結(jié)果是電風(fēng)扇。我們可以看出這兩個(gè)結(jié)果是錯(cuò)誤的,但是加入相似度后的解碼器找到了正確的結(jié)果“訂單”和“迷”。在當(dāng)前句子或當(dāng)前文檔中有很多上下文信息,相似度特征就是根據(jù)這些上下文信息得到的。通過這兩個(gè)例子我們可以得出結(jié)論,在加入相似度特征后的解碼器可以找到正確的規(guī)則,從而提高翻譯質(zhì)量。
本文中,我們提出了一種提高規(guī)則選擇準(zhǔn)確性的方法,利用整個(gè)篇章的上下文信息來提高翻譯質(zhì)量。首先我們利用向量空間模型獲得訓(xùn)練語料的文檔和測(cè)試集中文檔的相似度,然后把相似度作為一個(gè)新的特征加入到短語模型中。實(shí)驗(yàn)表明,在英語到漢語的翻譯工作中,我們的方法可以顯著提高翻譯質(zhì)量。最后,我們對(duì)計(jì)算相似度的時(shí)間復(fù)雜度進(jìn)行了分析。
下一步,我們會(huì)從兩個(gè)方面繼續(xù)這個(gè)工作。第一,在模型中加入相似度特征的方法是通用的,我們可以把它加入到層次短語模型或其他模型中;第二,由于很多語料是沒有分好文檔的,例如,WMT的語料,不能直接使用,所以我們可以利用語料自動(dòng)分類方法,把語料按照內(nèi)容劃分為多個(gè)文檔。
[1] 劉群.統(tǒng)計(jì)機(jī)器翻譯綜述[J].中文信息學(xué)報(bào),2003,17(4):1-12.
[2] Och F J,Ney H.Improved statistical alignmentmodels[C]//Proceeding of ACL,2000:440-447.
[3] Koehn P,Och F J,Marcu D.Statistical phrase-based translation[C]//Proceeding of ACL,2003:48-54.
[4] Xiong D,Liu Q,Lin S.Maximum entropy based phrase reordering model for statistical machine translation[C]//Proceeding of ACL,2006:521-528.
[5] Chiang D.A hierarchical phrase-based model for statistical machine translation[C]//Proceeding of ACL,2005:263-270.
[6] Liu Y,Liu Q,Lin S.Tree-to-string alignment template for statistical machine translation[C]//Proceeding of ACL,2006:609-616.
[7] Galley M,Graehl J,Knight K,et al.Scalable inference and training of context-rich syntactic translation models[C]//Proceeding of ACL,2006:961-968.
[8] Salton G,Wong A,Yang C S.A vector space model for automatic indexing[J].Communications of the ACM,1975,18(11):613-620.
[9] Salton G,McGil,M J.Introduction to Modern Information Retrieval[M].McGraw-Hill New York 1983.
[10] He Z,Liu Q,Lin S.Improving statistical machine translation using lexicalized rule selection[C]//Proceeding of ACL,2008:321-328.
[11] Liu Q,He Z,Liu Y,et al.Maximum entropy based rule selection model for syntax based statistical machine translation[C]//Proceeding of ACL,2008:89-97.
[12] Setiawan H,Kan M Y,Li H.Topological ordering of function words in hierarchical phrase-based translation[C]//Proceeding of ACL,2009:324-332.
[13] Shen L,Xu J,Zhang B.Effective use of linguistic and contextual information for statistical machine translation[C]//Proceeding of ACL,2009:72-80.
[14] He Z,Meng Y,Yu H.Maximum entropy based phrase reordering for hierarchical phrase-based translation[C]//Proceeding of ACL,2010:555-563.
[15] 曹杰,呂雅娟,蘇勁松,等.利用上下文信息的統(tǒng)計(jì)機(jī)器翻譯領(lǐng)域自適應(yīng)[J].中文信息學(xué)報(bào),2010,24(6):50-56.
[16] Chen B,F(xiàn)oster G,Kuhn R.Bilingual sense similarity for statistical machine translation[C]//Proceeding of ACL,2010:1-10.