A New Approach for English-Chinese Named Entity Alignment(跨语言实体对齐)
A New Approach for English-Chinese Named Entity Alignment(英漢實體對齊新方法)
- 0 Abstract
- 1 Introduction
- 2 相關工作
- 3 最大熵模型的NE對齊
- 3.1 功能函數
- 3.1.1 翻譯得分
- 3.1.2 音譯得分
- 3.1.3 共現分數
- 3.1.4 變形分數
- 3.2 使用最大熵模型進行bootstrapping訓練
- 3.2.1 NE候選者選擇
- 3.2.2 最大熵模型參數訓練
0 Abstract
傳統的詞對齊方法不能為實體提供令人滿意的結果。在本文中,我們提出了一種使用最大熵模型進行命名實體對齊的新方法。為了簡化最大熵模型的訓練,使用bootstrapping法來幫助監督學習。與以往文獻報道的工作不同,我們的工作對中文進行了無分詞的雙語命名實體對齊,其性能比有分詞的好得多。實驗結果表明,與IBM模型和HMM對齊模型相比,我們的方法顯著優于IBM模型4和HMM。
1 Introduction
本文討論了雙語語料庫的命名實體對齊問題,即在目標語言中建立每個源語言NE與其翻譯NE之間的對齊。研究表明,命名實體(NE)在人類語言中攜帶了必要的信息。對齊雙語命名實體是提取實體翻譯列表和翻譯模板的有效方法。例如,在下面的句子對中,對齊NE,[Zhi Chun road]和[知春路] 能夠正確生成翻譯模板。
- Can I get to [LN Zhi Chun road] by eight o’clock?
- 八點我能到 [LN 知春路]嗎?
此外,NE對齊對于統計機器翻譯(SMT)和跨語言信息檢索(CLIR)非常有用。
但是,命名實體對齊不容易獲得。它要求正確處理命名實體識別(NER)和對齊。NE可能無法很好地識別,或者在NER期間只能識別其中的一部分。在用不同語言對齊雙語NE時,我們需要處理多對多對齊。不同語言的NE翻譯和NER的不一致也是一個大問題。具體而言,在中文NE處理中,由于中文不是標記化語言,以前的工作通常進行分詞并依次識別命名實體。這涉及到中文NE的幾個問題,例如分詞錯誤、中文NE邊界的識別以及中文NE的錯誤標記。例如,”國防部長” 在中文里,它實際上是一個單位,不應該被分割成[ON 國防部]/長。分詞和NER產生的錯誤將傳播到NE對齊。
本文提出了一種利用最大熵模型進行英漢命名實體對齊的新方法。NER工具首先識別英語中的NE。然后,我們研究NE翻譯特征以識別中文中的NE,并確定最可能的對齊方式。為了簡化最大熵模型的訓練,使用 bootstrapping 技術來幫助監督學習。
另一方面,為了避免分詞和NER的錯誤傳播,我們直接提取中文NE,并在沒有分詞的情況下對純文本進行對齊。這與文獻中以前報道的工作不同。雖然這使任務變得更加困難,但它大大減少了前面步驟引入錯誤的機會,從而在任務中產生更好的性能。
為了證明我們的方法的合理性,我們采用了傳統的對齊方法,特別是IBM Model 4和HMM,以執行NE對齊作為我們的基線系統。實驗結果表明,在這個任務中,我們的方法明顯優于IBM Model 4和HMM。此外,不使用分詞的性能要比使用分詞的性能好得多。
本文的其余部分組織如下:在第2節中,我們討論了NE對齊的相關工作。第3節給出了NE校準的總體框架和我們的最大熵模型。本節還介紹了功能部件功能和引導過程。我們在第4節展示了實驗結果,并將其與基線系統進行了比較。第5節總結了本文,并討論了正在進行的未來工作。
2 相關工作
通過單詞和短語對齊可以獲得翻譯知識。迄今為止,在機器翻譯和知識獲取領域進行了大量研究,包括統計方法和符號方法。
然而,這些方法不能很好地用于NE對齊任務。遵循IBM模型的傳統方法無法產生令人滿意的結果,因為它們本身無法處理多對多對齊。他們只執行單詞之間的對齊,不考慮復雜詞組的情況,比如一些多詞NE。另一方面,IBM模型允許源語言中最多有一個單詞對應目標語言中的一個單詞。因此,它們不能很好地處理NE中的多對多單詞對齊。另一種眾所周知的單詞對齊方法HMM使得對齊概率取決于前一個單詞的對齊位置。它也沒有明確地考慮多對多的對齊方式。
Huang等人提出了基于線性組合多特征代價最小化的命名實體跨語言等價性提取方法。但是,它們需要在源端和目標端識別命名實體。Moore的方法基于一系列成本模型,然而,這種方法在很大程度上依賴于語言信息,例如兩側重復的字符串,以及來自大寫字母的線索,這些線索不適用于不具備同一屬性的語言對。此外,目標端已經確定了完整的詞匯復合詞,它們代表了最終結果的很大一部分。在對齊過程中,Moore沒有假設短語的翻譯需要在目標集上拆分預定的詞匯復合詞。
這些方法不適合我們的任務,因為我們只在源端識別了NE,而目標端沒有額外的知識。考慮到NE翻譯的固有特征,我們可以找到幾個有助于NE對齊的特征;因此,我們使用最大熵模型來整合這些特征并進行NE對齊。
3 最大熵模型的NE對齊
在不依賴英文或中文的語法知識的情況下,我們發現有幾個有價值的特性可以用于命名實體對齊。考慮到最大熵模型在整合不同類型特征方面的優勢,我們使用該框架來處理我們的問題。
假設源英語NE neene_enee?,nee={e1,e2,?,en}ne_e = \{ e_1, e_2, \cdots, e_n\}nee?={e1?,e2?,?,en?},包含 nnn 個英文單詞,候選中文NE necne_cnec?,nec={c1,c2,?,cn}ne_c = \{ c_1, c_2, \cdots, c_n \}nec?={c1?,c2?,?,cn?} 由 mmm 個漢字組成。假設我們有 MMM 個特征函數 hm(nee,nec),m=1,?,Mh_m(ne_e, ne_c), m = 1, \cdots, Mhm?(nee?,nec?),m=1,?,M,對于每個特征函數,我們有一個模型參數 λm,m=1,?,M\lambda_m, m = 1, \cdots, Mλm?,m=1,?,M,對齊概率定義如下:
選擇英文NE中最可能對齊的目標NE的決策規則為:
在我們的方法中,考慮到NE翻譯的特點,我們采用4個特征:翻譯得分、音譯分數、源NE和目標NE的共現分數、區分同一句子中相同NE的失真分數。接下來,我們將詳細討論這四個特性。
3.1 功能函數
3.1.1 翻譯得分
考慮英語NE中單詞與漢語NE中字符之間的翻譯概率是很重要的。在處理無分割的漢語句子時,這里的詞是指單個漢字。
此處的翻譯分數用于表示基于翻譯概率的實體對的接近程度。假設源英語NE neene_enee? 由 nnn 個英語單詞組成:nee={e1,e2,?,en}ne_e = \{ e_1, e_2, \cdots, e_n\}nee?={e1?,e2?,?,en?},候選中文NE necne_cnec?,nec={c1,c2,?,cn}ne_c = \{ c_1, c_2, \cdots, c_n \}nec?={c1?,c2?,?,cn?} 由 mmm個漢字組成,我們可以根據 eie_iei? 和 cjc_jcj? 之間的翻譯概率得到這兩個雙語NE的翻譯分數:
給定一個在句子層面對齊的平行語料庫,我們可以獲得每個英語單詞和每個漢字之間的翻譯概率 p(cj∣ei)p(c_j | e_i )p(cj?∣ei?)(通過與IBM Model 1的單詞對齊)。在沒有分詞的情況下,我們必須計算每個可能的候選詞來確定最可能的對齊,這將使搜索空間非常大。因此,我們對整個搜索空間進行修剪。如果在兩個相鄰字符之間有一個分數跳變,候選字符將被丟棄。通過該公式計算候選中文NE與源英文NE之間的分數,作為該特征的值。
3.1.2 音譯得分
雖然在理論上,翻譯分數可以在正確的NE對齊中建立關系,但在實踐中并非總是如此,這是由于語料庫的特點。當我們有稀疏的數據時,這一點更加明顯。例如,“命名實體”中的大多數人名在語料庫中分布很稀疏,沒有規律地重復。除此之外,一些英文NE也通過音譯翻譯而不是語義翻譯。因此,建立音譯模型是非常重要的。
給定一個英文實體 eee,e={e1,e2,?,en}e = \{ e_1, e_2, \cdots, e_n\}e={e1?,e2?,?,en?},將 eee 音譯為中文命名實體 ccc ,c={c1,c2,?,cn}c = \{ c_1, c_2, \cdots, c_n \}c={c1?,c2?,?,cn?} 的過程,可以用式(3.4)來描述(為便于表示,這里用 eee 和 ccc 代替 neene_enee? 和 necne_cnec? 來表示英文NE和中文NE)。
根據貝葉斯規則,可將其轉換為:
由于有超過6k個常用漢字,我們需要一個非常大的訓練語料庫來直接建立英語單詞和漢字之間的映射。我們采用了古羅馬化系統,漢語拼音,以便于轉換。每個漢字對應一個漢語拼音字符串。從漢字到拼音字符串的概率為 P(r∣c)≈1P(r | c) ≈ 1P(r∣c)≈1,除了多音字。因此,我們:
我們的問題是:給定英文NE和候選中文NE,找到最可能的對齊,而不是找到最可能的英文NE的中文翻譯。因此,與以前的英漢音譯模型工作不同,我們將每個候選的中文NE轉換為漢語拼音串,并直接訓練一個基于拼音的語言模型,該語言模型包含由1258個名字對組成的獨立英漢名單,從英文NE中解碼出最可能的拼音串。
為了從英文NE中找到最可能的拼音串,我們將公式(3.5)改寫如下:
其中r表示羅馬拼音(拼音字符串),r={r1,r2,?,rm}r = \{ r_1, r_2, \cdots, r_m\}r={r1?,r2?,?,rm?}。對于每一個因子,有:
其中 eie_iei? 是一個英語音節,rir_iri? 是一個漢語拼音子串。
例如,我們有英文NE “Richard” 和其候選中文NE ”理查德” 。由于通道模型和語言模型都是基于拼音的,維特比解碼的結果是從“Ri char d”到“Li Cha De”。我們將“理查德” 轉換為拼音串“Li Cha De”。然后,我們基于拼音字符串而不是直接與漢字進行相似度比較。這是因為在將英語NE音譯為漢語時,可以非常靈活地選擇哪個字符來模擬發音,但拼音字符串相對固定。
對于每個英語單詞,有幾種方法可以將其劃分為音節,因此本文采用動態規劃算法將英語單詞解碼為漢語拼音序列。基于英文NE的音譯字符串和原始候選中文NE的拼音字符串,我們可以計算它們與XDice系數的相似性。這是Dice系數的一個變體,它允許“擴展的二元圖”。擴展雙字元(xbig)是在原有雙字元的基礎上,從單詞的任何三個字母子串中刪除中間字母而形成的。
假設英語NE的音譯字符串和候選漢語NE的拼音字符串分別為 etle_{tl}etl? 和 cpyc_{py}cpy?。XDice系數通過以下公式計算:
另一點需要注意的是,外國人名和中國人名有不同的翻譯策略。上述音譯框架僅適用于外國名稱。對于中文人名翻譯,表面的英文字符串就是中文人名的拼音字符串。為了處理這兩種情況,請確保表示表層英語字符串,通過取兩個XDice系數的最大值來定義最終的音譯分數:
此公式不區分外國人姓名和中國人姓名,外國人姓名的音譯字符串或中國人姓名的拼音字符串可以適當處理。此外,由于英文字符串和拼音字符串共享同一個字符集,如果音譯解碼失敗,我們的方法也可以作為替代方法。
例如,對于英文名稱“Cuba”,與中文NE的對齊應為“古巴”。如果音譯解碼失敗,其拼音串“Guba”仍然通過XDice系數與表面串“Cuba”有很強的關系。這可以使系統更強大。
3.1.3 共現分數
另一種方法是在整個語料庫中找到源和目標NE的共現。如果兩個NE經常同時出現,那么它們很有可能相互對齊。從整個語料庫中獲取的知識對于NE對齊來說是一個額外且有價值的特征。我們使用以下公式計算源英語NE和候選漢語NE的共現分數:
式中,count(nec,nee)count(ne_c, ne_e)count(nec?,nee?) 是 necne_cnec? 和 neene_enee? 同時出現的次數,count(?,nee)count(*,ne_e)count(?,nee?),是 neene_enee? 出現的次數。這一概率是一個很好的指示,用于確定是否對齊。
3.1.4 變形分數
當跨語言翻譯NE時,我們注意到它們位置的差異也是確定它們關系的一個很好的指示,當目標語言中有相同的候選者時,這是必須的。差異越大,它們相互翻譯的可能性就越小。因此,我們將源英語NE和候選漢語NE之間的變形分數定義為另一個特征。
假設英語NE的起始位置的索引為 iii,英語句子的長度為 mmm。然后我們得到了源英語NE 的相對位置 pose=impos_e=\dfrac{i}{m}pose?=mi? ,以及候選中文NE的相對位置 poscpos_cposc?,0≤posc,posc≤10≤pos_c,pos_c ≤10≤posc?,posc?≤1。變形分數由以下公式定義:
式中,ABSABSABS 表示絕對值。如果目標語言中的不同位置有多個相同的候選中文NE,則變形分數最大的將獲勝。
3.2 使用最大熵模型進行bootstrapping訓練
為了將最大熵模型應用于NE對齊,我們分兩步進行:選擇NE候選對象和訓練最大熵模型參數。
3.2.1 NE候選者選擇
為了與我們的最大熵模型保持一致,我們首先使用NLPWIN識別英語中的命名實體。對于識別出的NE中的每個單詞,我們通過從IBM Model 1獲取的翻譯表找到所有可能的中文翻譯字符。最后,我們將所有選擇的字符作為“種子”數據。由于每個種子都有一個開放的窗口,因此窗口內的所有可能序列都被視為NE比對的可能候選序列。它們的長度范圍從1到根據經驗確定的窗口長度。在候選選擇過程中,采用上述剪枝策略來減少搜索空間。
例如,在圖1中,如果“China”的翻譯概率僅超過閾值,則為“中”, 這兩個種子數據位于索引為0和4的位置。假設窗口長度為3,則種子數據周圍的所有長度范圍為1到3的候選項,包括“中國”,將被選擇為候選項。
3.2.2 最大熵模型參數訓練
利用第3.1節中定義的四個特征函數,我們計算了所有選定的中文NE候選者的特征分數。
為了獲得最可能對齊的漢語NE,我們使用已發布的包YASMET對所有NE候選進行參數訓練和重新排序。YASMET需要監督學習來訓練最大熵模型。然而,獲得一個大的帶注釋的訓練集并不容易。在這里,bootstrapping 用于幫助該過程。圖2給出了參數訓練的整個過程。
總結
以上是生活随笔為你收集整理的A New Approach for English-Chinese Named Entity Alignment(跨语言实体对齐)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言网络编程:send函数详解
- 下一篇: 互联网晚报 | 2月16日 星期三 |