專利名稱:一種從雙語語料庫中自動抽取多詞翻譯等價單元的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機自然語言處理技術(shù),特別涉及一種從雙語句子對齊語料庫中自動抽取雙語多詞翻譯等價單元的技術(shù)。
背景技術(shù):
多詞單元(Multi-Word Unit,MWU)是在語法上合理,具有一定語義,搭配較為緊密,由多個詞語構(gòu)成的語法結(jié)構(gòu);包括多詞短語、多詞固定搭配、多詞習語和多詞術(shù)語等;從屬性上可以分為名詞多詞單元、動詞多詞單元、形容詞多詞單元、副詞多詞單元等等。多詞翻譯等價單元是指源語言和目標語言均為多詞單元,而且源語言和目標語言部分具有對等關(guān)系的翻譯等價對。多詞翻譯等價單元能夠應(yīng)用于機器翻譯、機器輔助翻譯、雙語詞典編纂、術(shù)語學、信息抽取、自然語言生成等自然語言處理技術(shù)以及應(yīng)用于第二語言教學等等。
從上個世紀90年代以來,雙語多詞單元的自動抽取技術(shù)就一直受到很多研究人員的關(guān)注,該技術(shù)傳統(tǒng)的方法也是應(yīng)用最多的方法由兩部分技術(shù)組成單語多詞單元的抽取和雙語等價單元的對齊。國內(nèi)外相關(guān)的工作很多,典型技術(shù)流程可以總結(jié)如下
首先,用某個關(guān)聯(lián)度度量標準,如互信息(mutual information)[Church et al.,1990]等等,計算文本中所有詞對(Bi-gram)之間的關(guān)聯(lián)度,并標記出所有關(guān)聯(lián)度大于某個預(yù)設(shè)閾值的詞對;然后,遞歸調(diào)用算法,進一步標記出長度大于2個詞的多詞單元;第三步,從對齊語料中列出所有可能的雙語翻譯等價單元并計算出它們之間的關(guān)聯(lián)度;最后,抽取關(guān)聯(lián)度大于某個預(yù)設(shè)閾值的雙語多詞單元。
這些方法由于主要算法流程相似,所以它們都有一些共同的不足之處(a)預(yù)設(shè)閾值為全局閾值,高頻多詞單元和低頻多詞單元的關(guān)聯(lián)度的大小存在較大差異,該閾值不能兼顧,這就導致低頻多詞單元無法正確抽取,如在[Smadja et al.,1996]的實驗中抽取的是出現(xiàn)頻次大于10的多詞單元,而且閾值會隨著語言種類的改變、語料的多少以及所選取的關(guān)聯(lián)值的不同而發(fā)生改變;(b)抽取結(jié)果很大程度上依靠于算法中循環(huán)開始時合適的詞對(Bi-gram)的確定[Dias et al.,2000a];(c)這種方法有多處需要計算兩個對象之間的關(guān)聯(lián)度,而最后結(jié)果的正確率依賴于這多處應(yīng)用關(guān)聯(lián)度所得正確率的乘積,因此,如果當應(yīng)用一次關(guān)聯(lián)度和閾值所得到結(jié)果的正確率不高的話,那么這些錯誤就會累計,導致最后結(jié)果的正確率迅速下降。同時需要很大的計算量。
發(fā)明內(nèi)容
為了提高抽取雙語翻譯等價單元的正確率和降低計算復雜度,本發(fā)明提供一種計算方法,該方法應(yīng)具有以下特點(1)摒棄了利用關(guān)聯(lián)度參數(shù)反復統(tǒng)計詞對(Bi-gram)來獲取多詞單元的算法,而是利用關(guān)聯(lián)度的平均值和歸一化差值構(gòu)建抽取模型;(2)把首先識別單語多詞單元,然后對齊的算法流程改成在對齊的過程中同時識別多詞單元;(3)把滿足全局閾值改成局部最優(yōu)算法。
為達到上述目的,本發(fā)明的技術(shù)解決方法是提供一個從雙語語料庫中抽取雙語多詞翻譯等價單元的方法,其采用平均關(guān)聯(lián)度和關(guān)聯(lián)度的歸一化差值作為雙語多詞翻譯等價單元的關(guān)聯(lián)衡量標準;在對齊的過程中同時識別多詞單元。
所述的方法,其分為以下幾步(1)語料預(yù)處理,包括英文的斷詞、詞形變換和中文分詞將英文標點符號和單詞分開,詞形變換,包括將動詞的單數(shù)形式、分詞形式、過去式和過去分詞形式變換成動詞原形,以及名詞的復數(shù)形式變換成名詞原形;將中文進行分詞;(2)通過統(tǒng)計共現(xiàn)頻率估計共現(xiàn)概率統(tǒng)計出所有詞對的共現(xiàn)頻次和每個詞匯的出現(xiàn)頻次后,以公式計算出它們的概率;(3)計算單個源語言詞匯和單個目標語言詞匯的關(guān)聯(lián)度用公式
MI(X,Y)=logPr(X,Y)Pr(X)Pr(Y)]]>計算每個詞對的關(guān)聯(lián)度互信息MI(S,T);其中Pr(X,Y)為X和Y的共現(xiàn)概率,Pr(X)和Pr(Y)分別為這兩個變量的出現(xiàn)概率;(4)計算每個源語言詞匯和與其共現(xiàn)的目標語言的詞串之間的平均關(guān)聯(lián)度運用公式AMI(S,C)=1nΣi=1nMI(S,Wi)]]>計算單個源語言詞匯和目標語言多詞單元之間的平均關(guān)聯(lián)度;(5)計算每個目標語言的詞串和與其共現(xiàn)的源語言的詞串之間的關(guān)聯(lián)值運用公式ASAMI(H,C)=1mΣi=1mAMI(Si,C)]]>和NDAMI(H,C)=1m×ASAMI(H,C)Σi=1m|ASAMI(H,C)-AMI(Si,C)|]]>計算源語言多詞單元和目標語言多詞單元之間的平均關(guān)聯(lián)度和歸一化關(guān)聯(lián)度差值;(6)應(yīng)用局部最優(yōu)算法針對每個源語言詞串利用局部最優(yōu)算法將其非局部最優(yōu)的候選目標語言多詞單元排除掉,針對每個目標語言詞串也運用局部最優(yōu)算法做同樣的過濾;
(7)關(guān)聯(lián)值最優(yōu)過濾將剩下的候選多詞單元取其中關(guān)聯(lián)值最大的一項作為可能的目標語言翻譯出來。
所述的方法,其第(3)步所述的互信息MI(X,Y),表示的是兩個變量獨立的情況下,這兩個變量均出現(xiàn)1的事件的聯(lián)合概率的對數(shù)似然比。
所述的方法,其第(6)步所述的局部最優(yōu)算法可以表述如下x∈Ωn-1,y∈Ωn+1如果(length(C)=2and S(C)>S(y))或者(length(C)>2and S(x)<=S(C)and S(C)>S(y))則詞串C是一個短語;其中l(wèi)ength(C)表示詞串C所包含的詞語的個數(shù);其中,用Ωn-1表示所有(n-1)詞串的集合,Ωn+1表示所有(n+1)詞串的集合。
本發(fā)明的這些改進使得算法能有效地同時抽取高頻和低頻雙語多詞翻譯等價單元,能提高抽取的正確率和降低計算復雜度。
具體實施例方式
本發(fā)明先建立一個數(shù)學模型,再歸納出實施的方法。
一、數(shù)學模型從信息論的角度,兩個隨機變量之間的互信息的定義是I(X,Y)=Σx∈(0,1)Σy∈(0,1)p(X=x,Y=y)logp(X=x,Y=y)p(X=x)p(Y=y).--(1)]]>
但是,在自然語言處理領(lǐng)域中,大多數(shù)情況下,互信息只用到了上面公式中的一部分,也就是當X=1,Y=1的情況,在這里我們用MI(X,Y)表示,見公式(2)。I(X,Y)表示的是通信前后,平均不確定度的消除,也就是X包含在Y中的信息。而計算語言學意義上的互信息MI(X,Y)表示的是兩個變量獨立的情況下,這兩個變量均出現(xiàn)1的事件的聯(lián)合概率的對數(shù)似然比。
MI(X,Y)=logPr(X,Y)Pr(X)Pr(Y).--(2)]]>其中Pr(X,Y)為X和Y的共現(xiàn)概率,Pr(X)和Pr(Y)分別為這兩個變量的出現(xiàn)概率?;バ畔⒖梢詾檎?,也可以為負,當它為正時,說明這兩個變量是相互關(guān)聯(lián)的,而且互信息越大,表示兩個變量的關(guān)聯(lián)度也越大。當互信息為0時,說明這兩個變量無關(guān),而當它為負時,說明這兩個變量的出現(xiàn)為相互排斥事件。如果把一個中文機譯單元的出現(xiàn)和一個英文機譯單元的出現(xiàn)分別看作兩個事件,那么就可以通過統(tǒng)計它們在整個語料庫中的出現(xiàn)概率以及共現(xiàn)概率來計算它們的關(guān)聯(lián)度。
假設(shè)一個目標語言詞串C(Chunk)用下面的符號表示C=W1W2...Wi...Wn。 (3)則互信息平均值A(chǔ)MI(Average Mutual Information)、互信息歸一化差值NMID(Normalized Mutual Information Difference)的計算公式分別如下
AMI(S,C)=1nΣi=1nMI(S,Wi),--(4)]]>NMID(S,C)=1n×AMI(S,C)Σi=1n|MI(S,Wi)-AMI(S,C)|.--(5)]]>其中S為源語言詞匯。
假設(shè)輸入端為一個源語言詞匯,N個輸出端分別為N個獨立的目標語言詞匯,那么單元源語言詞匯和目標語多詞單元中每個詞語之間得互信息的算術(shù)平均值指的是輸入端和所有輸出端均為1的事件(假設(shè)該事件叫做E1)的概率對數(shù)似然比的歸一化值。
互信息歸一化差值是度量將詞串C中的N個詞匯分別與源語言詞匯共現(xiàn)這N個事件各自的概率對數(shù)似然比與事件E1的概率對數(shù)似然比之間的偏離程度。當這個偏離程度較小的時候,說明當源語言詞匯出現(xiàn)時,詞串C中的N個詞匯也出現(xiàn)的可能性較大,說明詞串C是一個固定多詞單元的可能性同時也增大,所以能用關(guān)聯(lián)度的歸一化差值來提取多詞單元。
假設(shè)一個源語言詞串H(Chunk)用下面的符號表示H=S1S2...Si...Sm。
(6)那么每個目標語言的詞串(n-gram)和與其共現(xiàn)的源語言的詞串(n-gram)之間的統(tǒng)計關(guān)聯(lián)度平均互信息的平均值A(chǔ)SAMI(Average Score ofAverage Mutual Information)與平均互信息的歸一化差值NDAMI(Normalized Difference of Average Mutual Information)的計算公式如下ASAMI(H,C)=1mΣi=1mAMI(Si,C),--(7)]]>NDAMI(H,C)=1m×ASAMI(H,C)Σi=1m|ASAMI(H,C)-AMI(Si,C)|.--(8)]]>同理,當平均互信息的歸一化差值NDAMI較小的時候,說明詞串H中的每個詞匯出現(xiàn),同時詞串C中的每個詞匯也出現(xiàn)的可能性較大。也就是,詞串H是一個固定多詞單元的可能性同時也增大。
二、算法描述本發(fā)明提取雙語多詞等價翻譯單元的方法分為以下幾步(1)語料預(yù)處理,包括英文的斷詞、詞形變換和中文分詞所謂英文的斷詞(tokenization)主要是指將標點符號和單詞分開,詞形變換(lemmatization)主要包括將動詞的單數(shù)形式、分詞形式、過去式和過去分詞形式變換成動詞原形,以及名詞的復數(shù)形式變換成名詞原形等等。因為中文沒有詞邊界,而該方法是以詞語為處理對象,所以必須進行分詞。
(2)通過統(tǒng)計共現(xiàn)頻率估計共現(xiàn)概率統(tǒng)計出所有詞對的共現(xiàn)頻次和每個詞匯的出現(xiàn)頻次后可以估計出它們的概率,計算公式如(9)、(10)、(11)。
Pr(S)=freq(S)N,---(9)]]>Pr(T)=freq(T)N,---(10)]]>Pr(S,T)=freq(S,T)N.---(11)]]>其中N是語料庫中所有句子對(共現(xiàn)模型)的總數(shù)。freq(.)表示的是源語言詞匯S、目標語言詞匯T出現(xiàn)的頻次或者S和T共現(xiàn)的頻次。Pr(.)表示的是概率。
(3)計算單個源語言詞匯和單個目標語言詞匯的關(guān)聯(lián)度用公式(2)計算每個詞對的關(guān)聯(lián)度互信息MI(S,T)。
(4)計算每個源語言詞匯和與其共現(xiàn)的目標語言的詞串(n-gram)之間的平均關(guān)聯(lián)度運用公式(4)計算單個源語言詞匯和目標語言多詞單元之間的平均關(guān)聯(lián)度。
(5)計算每個目標語言的詞串(n-gram)和與其共現(xiàn)的源語言的詞串(n-gram)之間的關(guān)聯(lián)值運用公式(7)和(8)計算源語言多詞單元和目標語言多詞單元之間的平均關(guān)聯(lián)度和歸一化關(guān)聯(lián)度差值。
(6)應(yīng)用局部最優(yōu)算法針對每個源語言詞串(n-gram)利用局部最優(yōu)算法將其非局部最優(yōu)的候選目標語言多詞單元排除掉,針對每個目標語言詞串(n-gram)也運用局部最優(yōu)算法做同樣的過濾。
從局部最大算法改進得到的局部最優(yōu)算法提供了一個魯棒性更強、適用范圍更廣、更為靈活的提取短語的手段。如果每一個詞串(n-gram)是一個短語,那么會有著更強的內(nèi)在關(guān)聯(lián),同時它的關(guān)聯(lián)值肯定也會更高,并且一個短語是一個局部的結(jié)構(gòu),在一個局部能表現(xiàn)出最優(yōu)的關(guān)聯(lián)程度,而在全局范圍內(nèi)可能會因為它出現(xiàn)的頻率太低等原因而表現(xiàn)不出在全局范圍內(nèi)有優(yōu)勢的關(guān)聯(lián)值來,所以當一個詞串的關(guān)聯(lián)值在一個局部表現(xiàn)出最優(yōu),那么可以認為該詞串就是一個短語。例如,對于詞對(Bi-gram)<ice,cream>,在詞語“ice”和“cream”之間有很強的內(nèi)在關(guān)聯(lián),但是對于詞對(Bi-gram)<the,in>,不能說詞語“the”和“in”之間有很強的內(nèi)在關(guān)聯(lián)。假設(shè)函數(shù)S(.)可以衡量這種內(nèi)在關(guān)聯(lián)的大小。
假設(shè)一個詞串(n-gram)C(Chunk)包含的所有(n-1)-gram的集合用Ωn-1表示,而所有包含該詞串(n-gram) C的(n+1)-gram的集合用Ωn+1表示,假設(shè)關(guān)聯(lián)值S(.)越大,結(jié)果就越優(yōu),則局部最優(yōu)算法可以表述如下算法2.1局部最優(yōu)算法x∈Ωn-1,y∈Ωn+1如果(length=2 and S>S(y))或者(length>2 and S(x)<=Sand S>S(y))則詞串C是一個短語。
其中l(wèi)ength表示詞串C所包含的詞語的個數(shù)。
(7)關(guān)聯(lián)值最優(yōu)過濾將剩下的候選多詞單元取其中關(guān)聯(lián)值最大的1項作為可能的目標語言翻譯。
實施例以抽取“meat packing肉類/加工廠”為例來說明整個算法的過程,選擇該雙語多詞單元的原因是它在語料庫中出現(xiàn)的頻率較低,只有一次,其他算法很容易漏掉。
(a)There is meat packing a big industry in your country?(b)在 你們 國家 肉類 加工廠 是否 算一門 大型 工業(yè)?該句對中各個詞語在語料庫中出現(xiàn)的頻次以及各個源語言詞匯和各個目標語言詞匯在語料庫中共現(xiàn)的頻次如表1所示。
表1. 例句句對中各詞匯的頻次以及共現(xiàn)頻次
其中第二行是中文各詞匯在語料庫中出現(xiàn)的頻次,第二列是各英文單詞在語料庫中出現(xiàn)的頻次。
用公式(2)計算的每個源語言詞匯與它所有共現(xiàn)的單個目標語言詞匯的互信息MI(S,T)如表2所示。S為源語言詞匯,T為目標語言詞匯。
表2.“meat、packing、肉類、加工廠”四個詞語與其他詞語的共現(xiàn)概率
以“meat”和“packing”為源語言詞匯,所有可能由上面例句(a)和(b)所產(chǎn)生的中文多詞單元為目標語言,其采用公式(4)計算得到的互信息的平均值為表3所示(為了節(jié)省篇幅,僅列出與“肉類/加工廠”有關(guān)的若干條記錄)。
表3.與“meat、packing”共現(xiàn)的目標語言多詞單元的互信息平均值
以與“肉類/加工廠meat packing”有關(guān)的雙語詞串(n-gram)為例,其采用公式(7)和(8)計算得到的平均互信息的平均值A(chǔ)SAMI和平均互信息的歸一化差值NDAMI為表4所示。
表4雙語詞串(n-gram)的ASAMI和NDAMI
在基于該例句對生成的1980個雙語詞串(n-gram)中,平均互信息的平均值A(chǔ)SAMI和平均互信息的歸一化差值NDAMI同時滿足局部最優(yōu)算法的記錄如表5所示。
表5 ASAMI和NDAMI同時滿足局部最優(yōu)的雙語詞串(n-gram)
關(guān)聯(lián)度最優(yōu)過濾所得結(jié)果如表5中黑體字所示。
權(quán)利要求
1.種從雙語語料庫中抽取雙語多詞翻譯等價單元的方法,其特征在于,采用平均關(guān)聯(lián)度和關(guān)聯(lián)度的歸一化差值作為雙語多詞翻譯等價單元的關(guān)聯(lián)衡量標準;在對齊的過程中同時識別多詞單元。
2.如權(quán)利要求1所述的方法,其特征在于,該方法分為以下幾步a)語料預(yù)處理,包括英文的斷詞、詞形變換和中文分詞將英文標點符號和單詞分開,詞形變換,包括將動詞的單數(shù)形式、分詞形式、過去式和過去分詞形式變換成動詞原形,以及名詞的復數(shù)形式變換成名詞原形;將中文進行分詞;b)通過統(tǒng)計共現(xiàn)頻率估計共現(xiàn)概率統(tǒng)計出所有詞對的共現(xiàn)頻次和每個詞匯的出現(xiàn)頻次后,以公式計算出它們的概率;c)計算單個源語言詞匯和單個目標語言詞匯的關(guān)聯(lián)度用公式MI(X,Y)=logPr(X,Y)Pr(X)Pr(Y)]]>計算每個詞對的關(guān)聯(lián)度互信息MI(S,T);其中Pr(X,Y)為X和Y的共現(xiàn)概率,Pr(X)和Pr(Y)分別為這兩個變量的出現(xiàn)概率;d)計算每個源語言詞匯和與其共現(xiàn)的目標語言的詞串之間的平均關(guān)聯(lián)度運用公式AMI(S,C)=1nΣi=1nMI(S,Wi)]]>計算單個源語言詞匯和目標語言多詞單元之間的平均關(guān)聯(lián)度;e)計算每個目標語言的詞串和與其共現(xiàn)的源語言的詞串之間的關(guān)聯(lián)值運用公式ASAMI(H,C)=1mΣi=1mAMI(Si,C)]]>和NDAMI(H,C)=1m×ASAMI(H,C)Σi=1m|ASAMI(H,C)-AMI(Si,C)|]]>計算源語言多詞單元和目標語言多詞單元之間的平均關(guān)聯(lián)度和歸一化關(guān)聯(lián)度差值;(6)應(yīng)用局部最優(yōu)算法針對每個源語言詞串利用局部最優(yōu)算法將其非局部最優(yōu)的候選目標語言多詞單元排除掉,針對每個目標語言詞串也運用局部最優(yōu)算法做同樣的過濾;(7)關(guān)聯(lián)值最優(yōu)過濾將剩下的候選多詞單元取其中關(guān)聯(lián)值最大的一項作為可能的目標語言翻譯出來。
3.如權(quán)利要求2所述的方法,其特征在于,第(3)步所述的互信息MI(X,Y),表示的是兩個變量獨立的情況下,這兩個變量均出現(xiàn)1的事件的聯(lián)合概率的對數(shù)似然比。
4.如權(quán)利要求2所述的方法,其特征在于,第(6)步所述的局部最優(yōu)算法可以表述如下x∈Ωn-1,y∈Ωn+1如果(length(C)=2 and S(C)>S(y))或者(length(C)>2 and S(x)<=S(C)and S(C)>S(y))則詞串C是一個短語;其中l(wèi)ength(C)表示詞串C所包含的詞語的個數(shù);其中,用Ωn-1表示所有(n-1)詞串的集合,Ωn+1表示所有(n+1)詞串的集合。
全文摘要
本發(fā)明涉及計算機自然語言處理技術(shù),特別涉及一種從雙語句子對齊語料庫中自動抽取雙語多詞翻譯等價單元的技術(shù)。本發(fā)明方法采用平均關(guān)聯(lián)度和關(guān)聯(lián)度的歸一化差值作為雙語多詞翻譯等價單元的關(guān)聯(lián)衡量標準;在對齊的過程中同時識別多詞單元。本發(fā)明方法的改進使得算法能有效地同時抽取高頻和低頻雙語多詞翻譯等價單元,提高抽取的正確率和降低計算復雜度。
文檔編號G06F17/28GK1567297SQ03148989
公開日2005年1月19日 申請日期2003年7月3日 優(yōu)先權(quán)日2003年7月3日
發(fā)明者杜利民, 陳博興 申請人:中國科學院聲學研究所