麥熱哈巴·艾力,姜文斌,吐爾根·依布拉音
(1.新疆大學(xué) 信息科學(xué)與工程學(xué)院,新疆 烏魯木齊830046;2.中國(guó)科學(xué)院 計(jì)算技術(shù)研究所,北京100190)
維吾爾語屬于阿爾泰語系突厥語族,是典型的黏著語,其特點(diǎn)是詞干可接多層(可以是零層)詞綴,呈現(xiàn)出豐富而復(fù)雜的形態(tài)變化。維吾爾語詞干在接詞綴時(shí)按維吾爾語語音和諧規(guī)律有些語音會(huì)發(fā)生弱化、脫落、增音等現(xiàn)象,例如,mektep(學(xué)校),mektipim(我的學(xué)校),mektipidin(從他的學(xué)校),mektipiningki(是他的學(xué)校的)等,都是同一個(gè)詞干mektep(學(xué)校)后分別接_im(第一人稱單數(shù))、_i(第三人稱單數(shù))+din(從格)、_i+ning(領(lǐng)屬格)+ki(替代人(物))等詞綴而來,其形態(tài)發(fā)生變化的同時(shí)詞干中最后一個(gè)元音e弱化成i。本文中,我們把這三種情況(弱化、脫落、增音)統(tǒng)稱為音變現(xiàn)象。維吾爾語詞綴類型、數(shù)目都較多,例如,名詞詞綴達(dá)到50個(gè),而動(dòng)詞詞綴的數(shù)量最多,遠(yuǎn)多于200個(gè),這么多數(shù)量的詞綴以及詞綴的多層連接使得維吾爾語的一個(gè)詞呈現(xiàn)出很多不同的形式,這給計(jì)算機(jī)處理維吾爾語帶來很多不便,所以詞干與詞綴的切分是非常必要的。
詞干、詞綴的切分又叫做詞干提取,是詞干、詞綴連接的逆過程。所以在詞綴連接過程中所發(fā)生的音變現(xiàn)象需要找出它的原始形式即還原??梢哉f還原是提高詞干提取正確率的重要條件。目前為止,對(duì)于維吾爾語音變現(xiàn)象還原方法的研究可以分為基于規(guī)則的方法[1-3]和基于統(tǒng)計(jì)的方法[4-6]兩種?;谝?guī)則的方法中研究者主要以詞干、詞綴連接過程中所遵守的語音和諧規(guī)律作為還原的依據(jù),但還原過程并不是生成過程的簡(jiǎn)單逆過程,有些語音的變化依賴的條件較復(fù)雜,還原時(shí)會(huì)有一定的困難繼而容易產(chǎn)生歧義。雖然研究者利用創(chuàng)建詞干庫的方法試圖進(jìn)行消歧,但是詞干庫的覆蓋面以及還原后所產(chǎn)生的多個(gè)候選同時(shí)存在于詞干庫等情況一直成為此方法的弊端;還有些研究者利用統(tǒng)計(jì)方法來展開研究,雖然較好的克服了以上問題,但是對(duì)于多種音變現(xiàn)象同時(shí)出現(xiàn)、變化復(fù)雜等情況還是未能得到很好的解決。
針對(duì)以上問題,本文提出維吾爾語音變現(xiàn)象的自動(dòng)還原模型。此模型的思路是,維吾爾語詞被看作是所包含語音的線性序列,先假設(shè)音變現(xiàn)象會(huì)發(fā)生在每個(gè)語音上,那么構(gòu)成一個(gè)詞的語音序列中每一個(gè)語音就可以有n(0≤n≤31)個(gè)原形候選,找到它們的原形就類似于詞序列自動(dòng)標(biāo)注,再利用序列標(biāo)注的方法即可解決還原問題。
維吾爾語詞綴種類多、數(shù)目多,而且可以多層綴接,在綴接過程中由于語音和諧規(guī)律某些語音會(huì)發(fā)生弱化、增音、脫落等音變現(xiàn)象,構(gòu)成同一個(gè)詞干的多種不同形態(tài)。例如:
(1)弱化現(xiàn)象。
a)元音弱化:qelem(筆)+im(第一人稱單數(shù))=qelimim(我的筆) (其中元音e弱化成i)
b)輔音弱化。kel(來)+ip+idim(系助動(dòng)詞,第一人稱過去式)=k?liwidim(我一來…)(其中輔音p弱化成w)
(2)增音。arzu(愿望)+um(第一人稱單數(shù))=arzuyum(我的愿望) (詞干后增加了輔音y)
(3)脫落音。
burun(鼻子)+i(第三人稱單數(shù))=burni(他的鼻子)(詞干中第二個(gè)元音u被脫落)
kel(拿)+ip(p型副動(dòng)詞)+tu(為轉(zhuǎn)述式,過去時(shí),第三人稱單(復(fù))數(shù))=keptu(他來了)(l和i被脫落)
(4)有些情況下多種現(xiàn)象同時(shí)發(fā)生。
chal(彈)+ip +tu +iken(系助動(dòng)詞)=ch?ptiken(聽說他彈了)(a弱化成?,l,第一個(gè)i,u被脫落)
詞干提取是以上生成過程的逆過程。由于音變現(xiàn)象的存在,在對(duì)維吾爾語進(jìn)行詞干提取時(shí)往往會(huì)發(fā)生一些歧義以及更復(fù)雜的情況。可歸納為以下幾種情況。
(1)詞干的還原帶來的歧義
(2)詞綴帶來的歧義
(3)需還原多個(gè)語音,往往出現(xiàn)在合成詞中,切分時(shí)需還原成兩個(gè)詞。
從以上分析可以看出,還原操作不是語音和諧規(guī)律的簡(jiǎn)單逆向應(yīng)用,使用規(guī)則有時(shí)很難消除這些現(xiàn)象;統(tǒng)計(jì)方法雖然可以彌補(bǔ)規(guī)則方法的缺點(diǎn),但是對(duì)于復(fù)雜變化現(xiàn)象還是表現(xiàn)不佳。
首先確定本文中使用的幾個(gè)術(shù)語。
術(shù)語1 詞的當(dāng)前形式。是指在句子中出現(xiàn)的,已有n(0≤n≤lenw)個(gè)語音發(fā)生了變化的詞,本文用wcur來表示;
術(shù)語2 詞的原始形式。指詞中所有語音都為原始形式即未發(fā)生變化的詞,本文用worg來表示;
例如,“我的本子”詞的當(dāng)前形式和原始形式分別為:wcur=deptirim worg=depterim。
針對(duì)還原操作所存在的以上問題,我們提出了這樣一個(gè)模型:把維吾爾語詞看成它所包含語音的線性序列,先假設(shè)音變現(xiàn)象會(huì)發(fā)生在每個(gè)語音上,那么詞中每個(gè)語音就會(huì)有n(0≤n≤31)個(gè)原形候選。如果我們能夠事先知道每一個(gè)語音可能的原形候選(可包括自己),那么對(duì)當(dāng)前詞的原操相當(dāng)于從這個(gè)候選中找到最優(yōu)的一個(gè)。這個(gè)過程類似于自動(dòng)標(biāo)注問題,而從候選中找到最優(yōu)的一個(gè)就相當(dāng)于它的解碼過程,則完全可以利用序列標(biāo)注的方法解決此問題。
還原模型中最重要的環(huán)節(jié)是枚舉出每個(gè)語音相應(yīng)的原形候選,這也是模型的重點(diǎn)和難點(diǎn),我們從最短編輯距離算法得到了啟發(fā),從而提出了詞內(nèi)字母對(duì)齊的算法。通過此方法即可得到每個(gè)語音可能的原形候選,那么對(duì)給定的一個(gè)詞進(jìn)行還原相當(dāng)于從每個(gè)語音原形的候選中找出“最為合理”的一個(gè),而“最為合理”可以用概率值對(duì)其計(jì)算出來。
詞內(nèi)字母對(duì)齊算法的目的是找出詞內(nèi)每一個(gè)語音所有可能的原形候選。為了描述方便,以下我們將語音替換成它的文字形式——字母。
假設(shè)一個(gè)詞的兩種形式分別為wcur、worg,詞內(nèi)字母的對(duì)齊原則為:以當(dāng)前詞中字母為準(zhǔn),依次對(duì)齊wcur、worg中的字母,直到將wcur、worg中的所有字母互相對(duì)齊完為止,對(duì)齊的結(jié)果為一對(duì)一、一對(duì)多、一對(duì)空。其中“一對(duì)多”中“多”方的長(zhǎng)度我們控制為2,這個(gè)值是經(jīng)驗(yàn)值,可根據(jù)情況調(diào)整。字母對(duì)齊情況可由表1所示。
表1 詞內(nèi)字母對(duì)齊情況
利用動(dòng)態(tài)規(guī)劃算法來實(shí)現(xiàn)了詞內(nèi)字母對(duì)齊模塊,其算法如下:
算法中主要匹配工作是由maxMatch函數(shù)完成,其功能是依次比較wcur,worg中的每個(gè)字母,最大程度地匹配,盡量找出詞中發(fā)生音變的字母對(duì),并將這些配對(duì)項(xiàng)壓入棧。棧中每個(gè)項(xiàng)為一個(gè)字母當(dāng)前形式與對(duì)應(yīng)的原形。
找出發(fā)生音變字母對(duì)后,方可利用機(jī)器學(xué)習(xí)的方法歸納出維吾爾語中每個(gè)字母可能的原形候選。
我們利用最大熵模型對(duì)訓(xùn)練語料進(jìn)行了訓(xùn)練。訓(xùn)練語料庫中包括每個(gè)詞的當(dāng)前形式和人工還原的原始形式。特征模版的選擇上,為了不失一般性,我們選擇了當(dāng)前字母以及前后兩個(gè)字母變化的情況,如表2所示(下頁)。
對(duì)給定的一個(gè)詞進(jìn)行還原的操作即成為解碼過程,其實(shí)質(zhì)就是從原形候選中選“最可能”的一個(gè)作為原形,即:待還原的詞所包含的字母互相被隔開,將其變成字母線性序列,根據(jù)訓(xùn)練得到的知識(shí)枚舉出每個(gè)字母可能的原形候選,再利用動(dòng)態(tài)規(guī)劃算法找出各后選中其概率值之積為大者,而概率值就是最大熵訓(xùn)練的結(jié)果。
表2 選擇原始形式中字母位置的特征模板
我們?cè)谛陆嗾Z種信息技術(shù)重點(diǎn)實(shí)驗(yàn)室手工標(biāo)注的《維吾爾語百萬詞詞法分析語料庫》上進(jìn)行試驗(yàn)。此語料庫收集了維吾爾語文小說《故鄉(xiāng)3》全書、農(nóng)業(yè)雜志《棉花技術(shù)》、《小麥》的部分內(nèi)容,《黨的17大報(bào)告》、《知識(shí)——力量》、《新疆社科》等報(bào)告、雜志的部分內(nèi)容,包括67 114個(gè)完整的句子,牽扯到文學(xué)、科技、文獻(xiàn)等多個(gè)領(lǐng)域。語料被手工進(jìn)行詞干與詞綴切分、還原并進(jìn)行了三級(jí)標(biāo)注。我們隨機(jī)抽取各5%的句子分別用做開發(fā)集和測(cè)試集,剩余的用做訓(xùn)練集。
我們開發(fā)了一套維吾爾語詞法分析器,其中引入了本文所介紹的還原模塊,為了全面地描述還原模型的功能,我們?cè)O(shè)計(jì)了多種實(shí)驗(yàn),從不同的側(cè)面進(jìn)行了分析討論。
實(shí)驗(yàn)1 還原模型對(duì)維吾爾語詞法分析器中的作用
此實(shí)驗(yàn)的目的是測(cè)試還原模塊對(duì)我們開發(fā)的詞法分析器結(jié)果的影響。為了測(cè)試這一點(diǎn),在詞法分析器中我們對(duì)開發(fā)集分別進(jìn)行了兩次詞法分析操作,第一次打開了自動(dòng)還原模塊,其結(jié)果記為w1;第二次關(guān)閉自動(dòng)還原模塊,其結(jié)果記為w2;詞法分析器的功能包括詞的還原,詞干、詞綴切分以及標(biāo)注,而此實(shí)驗(yàn)中我們暫時(shí)忽略了分析器的標(biāo)注功能。評(píng)價(jià)自動(dòng)詞法分析的結(jié)果時(shí)我們規(guī)定如果詞干、詞綴被正確切分且詞綴與詞綴互相正確切分時(shí)算是正確。兩次實(shí)驗(yàn)的結(jié)果為圖1所示。
圖1 自動(dòng)還原模塊對(duì)詞法分析器結(jié)果的應(yīng)用
測(cè)試結(jié)果表明,系統(tǒng)中加自動(dòng)還原模塊后其F值達(dá)到91.8%,比不加此模塊的F值84.1%提高了7.7%;準(zhǔn)確率和召回率也都有相應(yīng)的提高,說明自動(dòng)還原模塊在詞干提取操作中起到了積極的作用。
實(shí)驗(yàn)2 測(cè)試還原模塊對(duì)維吾爾語不同詞類還原的影響
維吾爾語詞類共有12種,其中動(dòng)詞、名詞、形容詞、代詞和副詞的出現(xiàn)頻率高、詞綴類型較多,音變現(xiàn)象相對(duì)多發(fā)生。此實(shí)驗(yàn)的目的為測(cè)試自動(dòng)還原模塊對(duì)這些詞類詞法分析結(jié)果的影響。我們?cè)陂_發(fā)集上分別做了兩個(gè)實(shí)驗(yàn):關(guān)閉自動(dòng)還原模型和打開自動(dòng)還原模型。這次把測(cè)試的重點(diǎn)放在了各詞類中被提取詞干的正確性,而忽略了詞綴。其結(jié)果如表3所示。
表3 還原模塊對(duì)不同詞類詞干還原的影響
表中可以看出,詞法分析其中打開自動(dòng)還原模型后,各詞類詞干提取的正確率都有了向上走的趨勢(shì),而且有些詞類這個(gè)趨勢(shì)的幅度較大,例如,名詞、動(dòng)詞。同時(shí),動(dòng)詞詞干提取的F值為88.6%,屬于其他詞類中最低的。這是因?yàn)榫S吾爾語動(dòng)詞詞綴數(shù)目多,連接到詞干后的音變現(xiàn)象最復(fù)雜,合成詞的還原也是處理較難的一個(gè)問題。
實(shí)驗(yàn)3 測(cè)試語料規(guī)模對(duì)還原模塊的影響
此實(shí)驗(yàn)的目的是測(cè)試語料擴(kuò)建會(huì)否提高還原模塊的性能。為此,我們固定開發(fā)集和測(cè)試集不變,而從訓(xùn)練集中每次提取不同規(guī)模的子集以訓(xùn)練還原模塊,并考察該系統(tǒng)在測(cè)試集上的表現(xiàn)。整個(gè)訓(xùn)練集含67 114條句子,我們從中取出50%、20%、10%、6%、4%及2%等不同規(guī)模的子集,并按照由小到大的次序訓(xùn)練還原模塊,并對(duì)測(cè)試集進(jìn)行詞法分析。與實(shí)驗(yàn)1相似,這次的評(píng)價(jià)標(biāo)準(zhǔn)仍然是詞干和詞綴的正確切分。圖2為系統(tǒng)性能隨訓(xùn)練數(shù)據(jù)增加的變化曲線。
通過圖2所示的訓(xùn)練集規(guī)?!到y(tǒng)性能曲線我們發(fā)現(xiàn),隨著訓(xùn)練集語句數(shù)量的增加,系統(tǒng)性能有提高的趨勢(shì)。這在訓(xùn)練語料規(guī)模較小的時(shí)候尤其明顯,例如,訓(xùn)練集從1 344句擴(kuò)大到4 028句時(shí),詞干提取的F值從80%上升到85%。隨著語料規(guī)模的繼續(xù)擴(kuò)大,系統(tǒng)性能的提升幅度趨于緩和,例如,訓(xùn)練集從33 550句擴(kuò)大到60 402句時(shí),F(xiàn)值從91.3%提升到91.9%。這帶給我們兩方面的啟示,其一,通過進(jìn)一步擴(kuò)建語料庫以提升性能仍然是有意義的;其二,語料規(guī)模繼續(xù)增加到一定程度后,系統(tǒng)通過語料擴(kuò)建提升性能的性價(jià)比會(huì)越來越低,此時(shí),可以研究用語言學(xué)知識(shí)來增強(qiáng)模型。這也是我們今后在改善模型性能時(shí)需考慮的方面。
圖2 訓(xùn)練集規(guī)?!到y(tǒng)性能曲線
我們對(duì)于還原模塊失效的詞進(jìn)行了分析。我們隨即抽了904個(gè)被還原的詞,從中人工檢查后找出101個(gè)被錯(cuò)誤還原的詞,對(duì)其進(jìn)行錯(cuò)誤分類統(tǒng)計(jì)的結(jié)果為表4所示。
表4 被錯(cuò)誤還原的種類
經(jīng)過分析發(fā)現(xiàn)錯(cuò)誤主要出現(xiàn)在:(1)經(jīng)常被還原的字母,例如:?,i等;(2)形態(tài)比較接近;(3)形態(tài)變化復(fù)雜的詞。出現(xiàn)此錯(cuò)誤的原因可能:(1)模型的適應(yīng)能力還不夠強(qiáng),所學(xué)到的知識(shí)不夠全面;(2)所使用的特征模板沒能更好地體現(xiàn)維吾爾語語音和諧規(guī)律的特點(diǎn)。針對(duì)這個(gè)問題,我們可采取增大訓(xùn)練語料的規(guī)模以及優(yōu)化特征模版等方法,一邊給系統(tǒng)提供更豐富的發(fā)生音變現(xiàn)象的上下文,一邊將語音和諧規(guī)律的規(guī)則引入到特征模板上。我們將此問題作為優(yōu)化系統(tǒng)的任務(wù)之中。
本文為維吾爾語音變現(xiàn)象的還原建立了一種模型,此模型不再單獨(dú)地考慮音變語音的規(guī)則以及其發(fā)生的條件,而是將音變現(xiàn)象泛化,從而將還原問題轉(zhuǎn)化為類似于序列自動(dòng)標(biāo)注問題,再利用成熟的標(biāo)注方法解決了還原問題并在實(shí)際試驗(yàn)中得到了較好的效果。
然而,就像上面的分析,當(dāng)前模型還有一些不足之處需一步改進(jìn)。例如,詞內(nèi)字母對(duì)齊算法。目前算法實(shí)現(xiàn)起來較復(fù)雜,有些經(jīng)驗(yàn)值還需多做實(shí)驗(yàn)重新制定,同時(shí)在簡(jiǎn)化算法復(fù)雜度方面也值得進(jìn)一步研究。再者,我們可以適當(dāng)?shù)財(cái)U(kuò)建語料,以及將語料內(nèi)容多樣化,從而使得模型適應(yīng)多種環(huán)境。此外,實(shí)驗(yàn)2提醒我們維吾爾語動(dòng)詞的還原有待于進(jìn)一步研究。如何利用語言學(xué)規(guī)則來提高是我們下一步研究的內(nèi)容。同時(shí),可喜的是,此還原模型不依賴于任何規(guī)則,與語言無關(guān)。通過此特性,我們完全有理由考慮將其擴(kuò)展到其他有變化形式的語言。這也是我們下一步研究的另一個(gè)方面。表5是此系統(tǒng)還原的結(jié)果一覽。
表5 系統(tǒng)還原的詞舉例
[1]早克熱·卡德爾,艾山·吾買爾,吐爾根·依布拉音,等.維吾爾語名詞構(gòu)形詞綴有限狀態(tài)自動(dòng)機(jī)的構(gòu)造[J].中文信息學(xué)報(bào),2009,23(6):116-121.
[2]米熱古麗·艾力,米吉提·阿不力米提,艾斯卡爾·艾木都拉.基于詞法分析的維吾爾語元音弱化算法研究[J].中文信息學(xué)報(bào),2008,22(4):43-47.
[3]古麗拉·阿東別克,米吉提·阿布力米提.維吾爾語詞切分方法初探 [J].中文信息學(xué)報(bào).2004,18(6):61-66.
[4]Aishan Wumaier,Tuergen Yibulayin,Zaokere Kadeer.Shengwei Tian Conditional Random Fields Combined FSM Stemming Method for Uyghur Proceeding[C]//2nd IEEE International Confrence on Computer and information Technology(ICCSIT 2009 )2009.8:295-299.
[5]Aisha Batuer,Maosong Sun.A statistical method for Uyghur tokenization[C]//International Conference on Natural Language Processing and Knowledge Engineering.2009.9 :1-5.
[6]M.Ablimit,M.Eli,T.Kawahara.Partly supervised Uyghur morpheme segmentation[C]//Proceedings of Oriental-COSOCODA Workshop.2008:71-76.
[7]Lawrence.R.Rabiner.A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition[C]//Proceedings of IEEE,1989:257-286.
[8]McCallum,A.,F(xiàn)reitag,D.,Pereira,F(xiàn).Maximum entropy Markov models for information extraction and segmentation[C]//Proceedings of ICML,2000:591-598.
[9]Hwee Tou Ng,Jin Kiat Low.Chinese part-of-speech tagging:One-at-a-time or all-at-once?Wordbased or character-based? [C]//Proceedings of EMNLP,2004.
[10]Wenbin Jiang,Liang Huang,Yajuan Lv,et al.A cascaded linear model for joint Chinese word segmentation and part-of-speech tagging [C]//Proceedings of the 46th ACL,2008.
[11]阿依克孜·卡德爾,開沙爾·卡德爾,吐爾根·依布拉音.面向自然語言信息處理的維吾爾語名詞形態(tài)分析研究[J].中文信息學(xué)報(bào),2006,20(3):43-48.
[12]阿孜古麗·夏力甫.維吾爾語動(dòng)詞附加語素的復(fù)雜特征研究[J].中文信息學(xué)報(bào),2008,22(3):105-109.
[13]力提甫·托乎提.電腦處理維吾爾語語音和諧律的可能性[J].中央民族大學(xué)學(xué)報(bào),2004,(5):108-113.
[14]瑪依熱·依布拉音,米吉提·阿不里米提,艾斯卡爾·艾木都拉.基于最小編輯距離的維語詞語檢錯(cuò)與糾錯(cuò)研究[J].中文信息學(xué)報(bào).2008,22(3):110-114.
[15]田生偉,吐爾根·依布拉音,禹龍.EBMT中高效的維吾爾語單詞散列表構(gòu)造算法[J].中文信息學(xué)報(bào),2009,23(4):124-128.
[16]阿孜古麗·夏力甫.論維吾爾語SUBS+NP結(jié)構(gòu)的形式化描述[J].中文信息學(xué)報(bào),2011,25(2):117-121.