毛麗旦?尼加提 古麗尼尕爾?買合木提 艾斯卡爾?艾木都拉
摘 ?要: 針對當(dāng)前維吾爾語語言模型存在的語料庫數(shù)據(jù)稀疏問題以及困惑度較高等問題,在SRILM和MITLM兩種工具生成的2?gram,3?gram,…,9?gram語言模型做了對比實(shí)驗(yàn),試圖找出在一定規(guī)模的維吾爾語語料條件下使困惑度最低的N?gram語言模型。通過對比分析最終得出結(jié)論,對于基于維吾爾語句子的N?gram模型,維度N取在介于3~5之間較宜,困惑度和計(jì)算復(fù)雜度等因素考慮N=3為較優(yōu)。這一結(jié)論將有助于維吾爾語自然語言處理的發(fā)展。
關(guān)鍵詞: N?gram語言模型; 性能分析; SRILM; MITLM; 困惑度; 平滑算法; 機(jī)器翻譯
中圖分類號: TN912.34?34; TP391.1 ? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼: A ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2019)10?0027?04
Performance analysis of Uyghur N?gram language models in different dimensions
Mewlude Nijat1, Gulnigar Mahmut2, Askar Hamdulla2
(1. School of Software Engineering, Xinjiang University, Urumqi 830046, China;
2. School of Information Science and Engineering, Xinjiang University, Urumqi 830046, China)
Abstract: In allusion to the problems of sparse corpus data and high perplexity degree of the current Uyghur language models, a contrast experiment was carried out for the 2?gram, 3?gram, 4?gram,…, and 9?gram language models generated by the SRILM and MITLM tools, so as to find out the N?gram language model with the lowest perplexity degree under a certain scale of Uyghur corpus. It is concluded from the contrastive analysis that it is better to determine the value of the dimension N between 3 and 5 for the N?gram model based on Uyghur sentences, and N=3 is more appropriate considering the factors of confusion degree and computation complexity. The conclusion can contribute to the development of Uyghur natural language processing.
Keywords: N?gram language model; performance analysis; SRILM; MITLM; perplexity; smoothing algorithm; machine translation
語言模型(LM)在自然語言處理中占據(jù)重要的位置,用于自然語言處理,主要描述自然語言中的統(tǒng)計(jì)和結(jié)構(gòu)方面的內(nèi)在規(guī)律,是根據(jù)特定語言的客觀事實(shí)而進(jìn)行的語言抽象數(shù)學(xué)模型。近年來,語言模型在基于統(tǒng)計(jì)模型的語音識別、機(jī)器翻譯、拼寫糾錯(cuò)、詞性標(biāo)注、印刷體或手寫體識別、句法分析和拼寫錯(cuò)誤等相關(guān)的自然語言處理研究工作中廣泛應(yīng)用。維吾爾語語言模型是維吾爾語自然語言處理技術(shù)的重要基石,因此對維吾爾語自然語言處理系統(tǒng)來說,構(gòu)建一個(gè)可靠的語言模型具有重要意義。目前流行的語言模型是N元語法模型(N?gram Model)[1],此模型作為統(tǒng)計(jì)語言處理的主流技術(shù)已被廣泛應(yīng)用于自然語言處理應(yīng)用中。本文針對當(dāng)前維吾爾語自然語言處理過程中存在的語料庫資源匱乏、數(shù)據(jù)稀疏等問題,試圖找出使困惑度較低的語言模型,分別用SRILM和MITLM兩個(gè)語言模型工具生成模型,從對困惑度的度量出發(fā),對2?gram,3?gram,…,9?gram模型的結(jié)果進(jìn)行綜合比較和分析,進(jìn)而確定基于維吾爾語句子的N?gram模型中較佳的N值。
1 ?N?gram語言模型與度量標(biāo)準(zhǔn)
1.1 ?N?gram語言模型
N?gram語言模型元語言模型是生成模型的典型代表。為了估計(jì)一個(gè)句子的概率,將句子的生成過程假設(shè)為一個(gè)馬爾可夫過程。馬爾可夫假設(shè)某一詞的出現(xiàn)概率由該詞前面的一個(gè)單詞所決定,前一個(gè)詞對這一詞的轉(zhuǎn)移概率可以采用極大似然估計(jì)來獲得,基于這些轉(zhuǎn)移概率,利用鏈?zhǔn)椒▌t就可以直接估計(jì)一個(gè)句子的概率[2]。
1.2 ?度量標(biāo)準(zhǔn)
根據(jù)模型計(jì)算的測試數(shù)據(jù)的概率是評價(jià)一個(gè)語言模型最常用的度量,用于評價(jià)N?gram模型的最常用的指標(biāo)是交叉熵(Cross?entropy)和困惑度(Perplexity) [3]。
1.2.1 ?交叉熵
交叉熵是用于衡量估計(jì)模型和概率分布之間的差異的概念。如果一個(gè)隨機(jī)變量q(x)用于近似p(x)的概率分布,那么隨機(jī)變量x和模型q之間的交叉熵定義為:
[HX,q=HX+Dpq=-xp(x)log2 q(x) ? ? ? ? ? ? ? ?=Eplog21q(x)]
由此,可以定義語言[L=Xi~px]與其模型q的交叉熵為:
[H(L,q)=-limn→∞1nxn1p(xn1)log2 q(xn1)]
式中:[H(L,q)]表示L的語句;q(x)表示估計(jì)模型。因?yàn)闊o法從有限的數(shù)據(jù)中獲取真實(shí)模型的概率,所以需要做出一個(gè)假設(shè):假定L是遍歷的隨機(jī)過程,即當(dāng)n無窮大時(shí),所有句子的概率和為1。
[H(L,q)=-limn→∞1n log2 qxn1≈-1nlog2 qxn1]
交叉熵與模型測試語料中分配給每個(gè)單詞的平均概率所表達(dá)的含義正好相反,模型的交叉熵越小,模型的表現(xiàn)越好[1]。
1.2.2 ?困惑度
通常用困惑度來代替交叉熵衡量語言模型的好壞。給定語言L的樣本,L的困惑度[ppq]定義為:
[ppq=2HL,q≈2-1nlog2qln1=qln1-1n]
式中,困惑度的概率函數(shù)正比于由語言模型產(chǎn)生測試數(shù)據(jù)的log似然的負(fù)值。在交叉熵上的一個(gè)遞減函數(shù)即是困惑度。語言模型在測試語料的似然度越大,困惑度越小,語言模型對這種語言的擬合也就越成功,模型對測試語料的擬合能力越強(qiáng)[1]。語言模型設(shè)計(jì)的任務(wù)就是尋找困惑度最小的模型。
在實(shí)際應(yīng)用中使用最多的是三元語言模型,更高階的語言模型使用很少。N取小有兩個(gè)方面的原因:一是,模型大?。ɑ蛘呤强臻g復(fù)雜度)幾乎是以語料庫大小為底,N為指數(shù)的指數(shù)函數(shù);二是,使用N元模型的速度(或者時(shí)間復(fù)雜度)也是一個(gè)指數(shù)函數(shù)。因此N不能很大,當(dāng)N在1~3時(shí),模型的效果上升明顯,N值從4開始效果提升不是很明顯,但資源的耗費(fèi)卻增加得非常快[4]。
2 ?維吾爾語形態(tài)特性與平滑算法
維吾爾語是黏著性語言,共有32個(gè)字母,包括8個(gè)元音字母和24個(gè)輔音字母。每個(gè)字母按照出現(xiàn)在單詞中的詞首、詞中、詞尾的位置不同會有不同的寫法。32個(gè)字母一共有126種書寫形式。詞法形態(tài)變化豐富是維吾爾語的特點(diǎn)。維吾爾語的構(gòu)詞、構(gòu)形都是通過在詞干后面連接不同的詞尾來實(shí)現(xiàn)的且可以不斷的綴接 [5],理論上可以構(gòu)成無限大的詞表,由此也就會產(chǎn)生數(shù)據(jù)稀疏問題。就維吾爾語這一類黏著性語言而言,存在很大的數(shù)據(jù)稀疏問題,導(dǎo)致最大似然估計(jì)(MLE)對該語言而言不再是一種很好的參數(shù)估計(jì)方法。對于N?gram語言模型,訓(xùn)練數(shù)據(jù)稀疏會導(dǎo)致兩種錯(cuò)誤的概率評估:小概率的事件和零概率事件。采取平滑技術(shù)是解決數(shù)據(jù)稀疏問題的主要方法。數(shù)據(jù)平滑技術(shù)(Smoothing)主要采用最大似然規(guī)則的概率估計(jì)進(jìn)行調(diào)整,保證語言模型任何概率都不是零,并且使得模型參數(shù)概率分布的趨向更加均勻合理。該技術(shù)較低的概率被調(diào)高,較高的概率被調(diào)低。
數(shù)據(jù)平滑的基本思想是:訓(xùn)練樣本中出現(xiàn)過的事件的概率適當(dāng)減小,將減小得到的概率密度分配給訓(xùn)練語料中沒有出現(xiàn)過的事件。這個(gè)過程稱為數(shù)據(jù)平滑(datasmooting),也稱為折扣(discounting)。本文采用的語言模型生成工具中用到的平滑算法有:Witten?Bell 平滑和修正的Kneser?Ney(ModKN)[3]。ModKN算法具有以下的特點(diǎn):ModKN使用的方法是插值方法,而不是后備方法,對于出現(xiàn)次數(shù)較低的N元語法采用不同的減值,實(shí)現(xiàn)了基于留存(held?out)數(shù)據(jù)進(jìn)行減值估計(jì),而不是基于訓(xùn)練數(shù)據(jù)的對比試驗(yàn)。在該對比試驗(yàn)中發(fā)現(xiàn),修正的ModKN平滑算法比其他的平滑算法效果要好得多[6]。
3 ?實(shí) ?驗(yàn)
3.1 ?數(shù)據(jù)準(zhǔn)備
自然語言處理的前提工作是構(gòu)建一個(gè)高質(zhì)量的語料庫,它是建立語言模型非常重要的一個(gè)步驟,語料庫質(zhì)量的優(yōu)劣直接影響到語言模型的性能。本文收集的維吾爾語料主要來自維吾爾語版本的《新疆日報(bào)》,《人與自然》,《世界》和《世界周刊》節(jié)目臺詞等官方提供的較高質(zhì)量的維吾爾語語料。語料的預(yù)處理主要包括原始數(shù)據(jù)分段、段落分句、內(nèi)容篩選、統(tǒng)一文件格式保存、特殊處理特殊符號、數(shù)字替換、編碼轉(zhuǎn)寫(阿拉伯文格式轉(zhuǎn)換為拉丁文格式)等。最終建立的語料為26萬個(gè)維吾爾語句子,將整個(gè)語料庫分成了兩個(gè)部分,分別為訓(xùn)練集(Training Data)、驗(yàn)證集(Validation Data)和測試集(Test Data)。其中訓(xùn)練語料用于N?gram語言模型的訓(xùn)練;2 500句作為驗(yàn)證集,用于在MITLM模型中powell方法來進(jìn)行參數(shù)優(yōu)化;2 500句作為測試語料,對模型進(jìn)行測試。訓(xùn)練集規(guī)模255 048 sentences,5 306 368 words,測試集規(guī)模2 500 sentences,52 630 words,驗(yàn)證集規(guī)模2 500 sentences,51 384 words。
3.2 ?實(shí)驗(yàn)工具
1) SRILM
SRILM是著名的約翰霍普金斯夏季研討會的產(chǎn)物,由SRI實(shí)驗(yàn)室負(fù)責(zé)開發(fā)維護(hù)。它是一個(gè)生成和使用統(tǒng)計(jì)語言模型的工具包,廣泛應(yīng)用于語音識別、機(jī)器翻譯等自然語言處理領(lǐng)域。將經(jīng)過分詞及預(yù)處理過的單語料文本作為它的輸入數(shù)據(jù),輸出數(shù)據(jù)為輸入數(shù)據(jù)中的N?gram文法概率[7]。SRILM的主要目標(biāo)是支持語言模型的估計(jì)和評測。訓(xùn)練數(shù)據(jù)中得到一個(gè)模型稱之為模型估計(jì),評測則是計(jì)算測試集的困惑度。支持的平滑算法包括Good?Turing平滑、Absolute平滑、Witten?Bell 平滑和Modified Knerser?Ney 平滑等常用的平滑算法。
2) MITLM
麻省理工學(xué)院語言建模工具包MITLM是用于有效估計(jì)涉及迭代參數(shù)估計(jì)的統(tǒng)計(jì)N?gram語言模型的工具。除標(biāo)準(zhǔn)語言建模估計(jì)外,還可以使用smoothing參數(shù)指定不同的平滑算法支持調(diào)整平滑、插值和N?gram加權(quán)參數(shù)。支持的平滑算法包括Good?Turing平滑,Absolute 平滑、Witten?Bell 平滑和Modified Knerser?Ney 平滑等常用的平滑算法。默認(rèn)情況下,MITLM使用修改的Modified Knerser?Ney平滑(ModKN)。除了支持常規(guī)的ModKN平滑外,Powell優(yōu)化算法還采用validation集合對生成的模型參數(shù)進(jìn)行再次調(diào)整,數(shù)值優(yōu)化,最終得出更優(yōu)的結(jié)果。
3.3 ?實(shí)驗(yàn)結(jié)果與分析
實(shí)驗(yàn)一:用SRILM和MITLM兩個(gè)工具,分別生成2?gram,3?gram,4?gram,…,9?gram語言模型,并對困惑都進(jìn)行對比。實(shí)驗(yàn)二:將本實(shí)驗(yàn)得到的語言模型在文獻(xiàn)[8]中的漢維統(tǒng)計(jì)機(jī)器翻譯系統(tǒng)中進(jìn)行測試。測試實(shí)驗(yàn)中在原來目標(biāo)語言語料中作為額外語料加入本文中的26萬句維吾爾語語料,用SRILM工具M(jìn)odKN平滑算法分別生成3?gram,4?gram和5?gram語言模型,進(jìn)行翻譯BLEU值對比。結(jié)果如表1、表2所示。
實(shí)驗(yàn)一結(jié)果分析:在SRILM中,默認(rèn)的Witten?Bell 平滑算法得出的語言模型困惑度比ModKN平滑算法得出的模型的困惑度要高;同樣采用ModKN平滑算法的情況下,MITLM優(yōu)化前的困惑度比SRILM的困惑度要低;MITLM用Powell優(yōu)化之后困惑度又明顯下降。無論用SRILM還是MITLM得到的語言模型,從1~3元模型困惑度有大幅度降低,但從3~5元模型困惑度雖然有逐步降低,但降低幅度較小;從5~9元模型困惑度基本平穩(wěn)。
表1 ?N?gram模型困惑度對比
表2 ?5?gram模型在統(tǒng)計(jì)機(jī)器翻譯中BLEU值對比
實(shí)驗(yàn)二結(jié)果分析:在3~5元語言模型中,采用5元語言模型的統(tǒng)計(jì)機(jī)器翻譯BLEU值較高,但相差不大,這也跟語言模型困惑度從3元模型開始困惑度變化幅度小有關(guān)。
4 ?結(jié) ?語
本文從對困惑度的度量出發(fā),綜合比較和分析了基于維吾爾語句子的N?gram模型中N值的選擇。實(shí)驗(yàn)結(jié)果表明,隨著N值的增加,語言模型性能的增加不是正比的關(guān)系,而是隨著N的增大逐漸出現(xiàn)平穩(wěn)趨勢。將對2?gram,3?gram,4?gram,…,9?gram模型的結(jié)果進(jìn)行對比,并得出結(jié)論:對于基于維吾爾語句子的N?gram模型,從模型困惑度和計(jì)算時(shí)間復(fù)雜度等多方面考慮,N的取值范圍應(yīng)介于3~5之間,N=3為較優(yōu)。所以最后得出結(jié)論:在N?gram維吾爾語語言模型及其幾種平滑算法的試驗(yàn)中,雖然Powell方法優(yōu)化之后的ModKN平滑算法得到的5?gram以及較高階的語言模型的效果在維吾爾語N?gram模型中表現(xiàn)比較良好,但考慮到資源消耗和效果增加不明顯的原因,選擇使用3?gram語言模型。
參考文獻(xiàn)
[1] 宗成慶.統(tǒng)計(jì)自然語言處理[M].北京:清華大學(xué)出版社,2013.
ZONG Chengqing. Statistical natural language processing [M]. Beijing: Tsinghua University Press, 2013.
[2] 李春生.一種體現(xiàn)長距離依賴關(guān)系的語言模型[J].科技視界,2014(5):55?56.
LI Chunsheng. A language model reflecting long?distance dependence relation [J]. Science & technology vision, 2014(5): 55?56.
[3] 文娟.統(tǒng)計(jì)語言模型的研究與應(yīng)用[D].北京:北京郵電大學(xué),2010.
WEN Juan. Research and application of statistical language model [D]. Beijing: Beijing University of Posts and Telecommunications, 2010.
[4] 吳軍.數(shù)學(xué)之美[M].北京:人民郵電出版社,2012.
WU Jun. Beauty of mathematics [M]. Beijing: Posts & Telecom Press, 2012.
[5] 王賀福.統(tǒng)計(jì)語言模型應(yīng)用與研究[D].上海:復(fù)旦大學(xué),2012.
WANG Hefu. Application and research of statistical language model [D]. Shanghai: Fudan University, 2012.
[6] 張亞軍.維吾爾語的N?gram語言模型及其平滑算法研究[D].烏魯木齊:新疆大學(xué),2010.
ZHANG Yajun. Research of Uyghur N?gram model and smoothing algorithm [D]. Urumqi: Xinjiang University, 2010.
[7] 唐亮.維吾爾語統(tǒng)計(jì)語言模型中建模基元的研究[D].成都:電子科技大學(xué),2013.
TANG Liang. Research on modeling primitives in Uyghur language statistical language model [D]. Chengdu: University of Electronic Science and Technology of China, 2013.
[8] MAHMUT G, NIJAT M, MEMET R, et al. Exploration of Chinese?Uyghur neural machine translation [C]// Proceedings of International Conference on Asian Language Processing. [S.l.: s.n.], 2017: 176?179.
[9] 張亞軍.維吾爾語的N?gram語言模型研究[J].電腦知識與技術(shù),2011,7(17):4177?4179.
ZHANG Yajun. Research of Uyghur N?gram model [J]. Computer knowledge and technology, 2011, 7(17): 4177?4179.
[10] 古麗尼尕爾·買合木提,熱木土拉·買買提,毛麗旦·尼加提,等.基于雙語對話文本的漢、維口語翻譯技術(shù)研究[C]//第十四屆全國人機(jī)語音通訊學(xué)術(shù)會議論文集.連云港:中國中文信息學(xué)會語音信息專業(yè)委員會,2017:490?494.
Gulnigar Mahmut, Multura Maimaiti, Mewlude Nijat, et al. Research on Chinese?Uyghur oral translation technology based on bilingual dialogue texts [C]// Proceedings of the 14th National Conference on Man?machine Speech Communication. Lianyungang: Speech Information Specialty Committee of Chinese Information Processing Society of China, 2017: 490?494.
[11] 努爾艾力·喀迪爾,彭良瑞.基于SRILM的阿拉伯和維吾爾文語言模型建立方法[C]//第三屆全國少數(shù)民族青年自然語言信息處理、第二屆全國多語言知識庫建設(shè)聯(lián)合學(xué)術(shù)研討會論文集.烏魯木齊:中國中文信息學(xué)會,2010:94?97.
Nurali Kadir, PENG Liangrui. A method to build Arabic and Uyghur language model based on SRILM [C]// Proceedings of the Third National Minority Youth Natural Language Information Processing and the Second National Multilingual Knowledge Base Construction Joint Academic Seminar. Urumqi: Chinese Information Processing Society of China, 2010: 94?97.
[12] ZHANG Wenyang. Comparing the effect of smoothing and N?gram order: finding the best way to combine the smoothing and order of N?gram [D]. Melbourne: Florida Institute of Technology, 2015.
[13] SADIQUI A, ZINEDINE A. A new method to construct a statistical model for Arabic language [C]// Proceedings of the Third IEEE International Colloquium in Information Science and Technology. Tetouan: IEEE, 2015: 296?299.
[14] ALUM?E T, KURIMO M. Efficient estimation of maximum entropy language models with N?gram features: an SRILM extension [C]// Proceedings of the 11th Annual Conference of the International Speech Communication Association. Chiba: [s.n.], 2010: 1820?1823.