阿里木·賽買提,沙麗瓦爾·阿里木,吐爾根·依不拉音,段雪明,古麗尼格爾·阿不都外力,麥合甫熱提,吾守爾·斯拉木
(1.新疆大學信息科學與工程學院多語種信息技術實驗中心,新疆 烏魯木齊 830046;2.新疆開放大學,新疆 烏魯木齊 830049;3.新疆科大訊飛信息科技有限責任公司,新疆 烏魯木齊 830015)
人工智能的不斷發展,深度學習技術推動了機器翻譯等自然語言處理技術重大進展,并且通過大量的訓練數據的支撐下核心效果不斷提升[1].在神經機器翻譯模型中Arthur等[2]引入外部詞匯從而解決翻譯過程中的數據稀疏問題.文獻[3-5]提出的基于注意力機制的神經機器翻譯相比傳統基于統計的短語翻譯方法,翻譯性能也取得了大幅改善,部分場景下翻譯效果接近人類翻譯水平.
維吾爾語是典型的黏著語種,自右向左橫寫,有8個元音字母,24個輔音字母,構詞和構形附加成分很豐富,每個字母按出現在詞首、詞中、詞末的位置有不同的形式,有些字母只有單式和末式,有些字母所帶的符號除作獨立形式和詞首形式的標志外,還起隔音的作用[6].32個字母實際共有126種寫法.維吾爾語因其黏著語言特征構詞和構形附加成分很豐富而具有一個詞桿可同時連接單個或多個詞綴導致不斷派生出新詞的特點,易造成集外詞問題,使維吾爾語信息處理技術成為眾多研究者們的學術熱點的原因之一,盡管采用BPE切詞[7]、擴展詞表等業界主流的方法后,在一定程度上緩解了部分集外詞的翻譯效果,但本質上并未解決集外詞翻譯問題,仍然伴有集外詞錯譯、漏譯、欠譯、過譯等現象,同時,維吾爾人名在機器翻譯中除了面對集外詞問題以外還會出現不恰當表示、不雅詞或字等問題,因此維吾爾人名的翻譯問題是維漢機器翻譯中需要解決的重要問題之一.同樣維吾爾語人名因其數據稀疏性,在機器翻譯中易造成OOV問題,因此需要在前處理工作中除了需要做好人名譯文體驗感方面的工作外,還需要在建立神經網絡翻譯模型時將OOV問題的處理工作考慮在內.
OOV即訓練集以外的詞,可以有兩種解釋[8]:一是指已有的訓練語料中未曾出現過的詞;二是指已有的詞表中沒有收錄的詞又稱為未登錄詞(unknown word).通常情況下將OOV與未登錄詞視為同一個概念.
盡管對于機器翻譯而言,人名翻譯是其中至關重要的環節,但由于維吾爾語人名存在著命名不規范、空間難以界定、在語料庫中出現頻率低等問題,維吾爾語人名識別和翻譯一直是學術界和工業界研究的方向.也正是因為維吾爾語人名存在的上述特性,通常情況下,維吾爾語人名翻譯不能與英文人名或漢語人名一樣采用通用的規則或翻譯方法進行處理.因此,維吾爾語人名翻譯本質上是以信達雅為導向,對其進行字符級端到端的神經網絡模型的建模.
維吾爾語人名具有頻率稀疏性、邊界模糊性、語義獨立性、組成不規則性和譯文多樣性等特點,并且對譯文的準確性和規范性的要求更高.不同語言的人名在構成方式和翻譯規律方面也存在較大的差異,漢族人名譯維吾爾語是按照字或者詞為單位的發音進行音譯和意譯,并且翻譯方向是順序的,通常采用輸出原詞或音譯相結合的方法進行翻譯.維吾爾語人名處理不僅僅要解決普通句子翻譯的固有問題,如詞語選擇與譯文準確及流暢,還需要解決譯文是否符合信達雅的問題.可見,維吾爾語人名的翻譯是機器翻譯中一個極具挑戰的任務.
本文從機器翻譯的角度出發.引入了一套前處理流程,提出了Fast align + NER組合方法,通過從常規維漢句對數據中進行識別及對齊,有效地解決了維漢對照人名數據稀少、難以獲取的問題.
命名實體識別(name entity recognition,NER)是指從大量的非結構化或結構化文本中抽取出相應的人名、地名或組織機構等實體,并對其進行精確的分類識別.而傳統的命名實體識別方法非常依賴于語言學知識和特征工程,忽略了文本中實體所隱含的潛在信息,從而增加了文本中命名實體的識別難度.因此,如何利用有效的特征和神經網絡技術來提高文本中命名實體的識別準確度已成為研究的一個熱點課題.隨著人類生活水平的提高,每天在互聯網上出現海量的人名信息.對人名信息的處理能力受到的關注度越來越強烈.
本文通過收集歷屆機器翻譯研討會CWMT及CCMT提供的維漢雙語平行訓練集和通過人民網、天山網自建的維漢平行訓練數據集上進行維漢人名抽取.在整理好的維漢平行語料基礎上通過漢語命名實體識別方法與維吾爾語命名實體的識別方法進行了人名抽取并且分詞后通過Fast align快速詞對齊工具進行了維漢人名的識別對齊及抽取,對齊實例見表1.

表1 Fast align 對齊操作實例
本文在中文人名識別中使用了業界開源且比較主流的哈工大語言技術平臺(Language Technology Platform,LTP)提供的中文命名實體識別能力.在維吾爾語命名實體的識別方法中使用了引入子詞向量的bi-LSTM+CRF的方法[9],傳統的bi-LSTM+CRF神經網絡模型中,輸入向量以單詞為基本單位.然而,維吾爾語是一種由詞干和詞綴組成的黏著語言.如果只考慮單純的使用詞向量,就不能充分學習語義信息,導致詞法過程中數據的稀疏性.因此,我們考慮利用更小的承載單元子詞選為基本單元.這里的子詞是將維吾爾語單詞通過形態切分將一個單詞的詞綴與詞干切分開后的輸入單元進行訓練建模的方法.
被NER識別后抽取出來的人名信息會傳輸到端到端的字符級神經網絡翻譯模型中.在傳統的維吾爾語漢語機器翻譯結果中,在維譯漢方向經常會出現不雅字或詞.不能使譯文達到信達雅.例如:“bEkriyE”對應的常見人工翻譯的恰當選詞結果為“拜克熱亞”,但在以往的機器翻譯結果中經常會看到“拜可日牙”或將“turGun”翻譯成“吐兒滾”等不雅詞(而正確的選詞結果應該為“圖爾洪”).對該類情況的出現綜合分析認為:
(1) 部分是因早期維吾爾人名用漢字記錄證件時未有一個恰當的選詞標準;
(2) 當時人們的恰當選詞意識不強;
(3) 因漢字常用多音字而維吾爾語一音一字,造成維吾爾語人名可對應多個漢語,結果無法統一.
因此使該類數據混入機器翻譯訓練數據呈現數據稀疏狀態易造成OOV問題,而另一個原因可能是因為在常規的訓練數據的形式為句對形式為主,而對應的人名數據因在數據中的比例較少,可能在常規的機器翻譯結果中會出現非規范的結果.為解決上述問題,使得維吾爾語人名翻譯結果能夠盡可能準確、雅觀,通過一個基于純維漢人名的端到端的神經網絡翻譯模型,使抽取到的實體能夠通過該模型給出準確的譯文,提高用戶體驗效果.
因此,選用詞對形式的純人名訓練數據,并且為了從人名訓練數據中去除影響譯文雅觀的潛在因素,將漢語維吾爾族人名通過N-gram語言模型進行訓練,分別得到1—4階語言模型,找到數據中一個維吾爾文人名對應的多個中文表示(1對N)的數據,根據語言模型對人名列表進行打分,去除打分結果中每個得分最優的兩個漢語人名表示以外的結果,見圖1.最后結合人工審核,獲取精煉后的人名訓練數據集,因精煉后的數據集量級較少,避免OOV問題的困擾,為此選用字符級的建模方案,選用Lee等[10]提出的字符級端到端的神經網絡框架完成對維漢人名翻譯模型的訓練(見圖2).

圖1 維漢人名翻譯前處理總框架

圖2 字符級維漢人名翻譯模型
考慮到目前國內各機器翻譯研討會提供的維漢雙語平行訓練集都以句子級語料,無公開維漢人名數據集,因此本文通過收集歷屆CWMT及CCMT等研討會提供的維漢句對數據為主進行人名的抽取及精煉獲取最終的維漢人名訓練集.目前已從61萬條維漢句對數據中抽取并人工收集維漢人名訓練集,在通過對數據進一步預處理分別完成了形式轉換、編碼轉換、全角半角轉換、標點符號的規整、亂碼過濾、去重等預處理過程后最終獲得32 126條人名集.
目前業界無公開且符合我們需要的維漢人名數據,因此無法通過公開且統一的測試集進行衡量,為了降低維漢機器翻譯中維吾爾語人名譯文中不雅字或詞的出現及避免OOV問題的困擾,采用人工收集人民網、天山網中出現頻率比較高的漢語維吾爾人名,自建500條維漢雙語維吾爾人名測試集.
實驗環境采用CentOS 7.3 64 位操作系統,內存64 GB,Tesla p40,Intel(R)Xeon(R)CPU E5-2650 v3@2.30 GHz 2CPU 20核處理器.在實驗部分,使用了開源的基于 Theano 深度學習庫的dl4mt-c2c框架進行模型訓練,模型網絡參數基本以開源base版本參數一直使用GPU單卡訓練.

表2 實驗過程參數
在實驗過程中網絡的源端詞表大小為97,目標端詞表大小為542,訓練和解碼時長、模型大小參數見表2,該系統采用網絡結構為CNN+RNN網絡形式;encoder隱層節點數目為512;decoder隱層節點數目為1 024;Embedding向量長度方面source embedding為128 MB,Target embedding為512 MB;Highway網絡為4 layers;Cnn_kernel_width=(3,5);Initial_learning_rate為0.000 2;Conv_embed_num_filters為200-250-300-300-400-400-400-400;Pooling Strid值設為5;BatchSize大小為64.
實驗結果見表3.由表3可見,當對訓練數據通過1—4階N-Gram語言模型打分后,其在自建的用字恰當的人名測試集上的譯文BLEU結果提升了0.95分.但一個維吾爾語人名除去帶有不雅字的結果外常還有其他譯文易導致機器打分存在歧義,因此,在無權威公開用字準確且標準的維漢人名測試集的前提下用BLEU打分機制結果具有片面性,無法全面體現本文的研究成果,但通過對比加入本文前處理方法后,在處理不雅字或詭異表達效果較好,表4為譯文數據中抽取出的較典型的實例.由表4可以看出,雖然加入了本文前處理方法后的模型結果中仍有“吐”,“沙”等字樣的出現,但是在雅觀或體驗上都有了顯著的提升.

表3 實驗結果

表4 典型實例展示
本文以維漢人名翻譯中譯文結果中出現OOV或不雅字問題的處理方法為初始目標進行探索,通過實驗分析規劃出了一套完整地將含有不雅字或詞的人名數據處理方法,考慮到數據稀疏原因,為避免模型訓練無法達到良好的收斂效果,選用輕量級的dl4mt-c2c框架,本文方法對處理不雅字或不恰當的表示有明顯的改善.