邢富坤,宋 柔,羅智勇
(1. 北京語言大學(xué) 語言信息處理研究所,北京 100083; 2. 解放軍外國(guó)語學(xué)院,河南 洛陽 471003)
該式可以進(jìn)一步轉(zhuǎn)化為下式:
(1)
HMM存在一個(gè)重要假設(shè),稱為輸出獨(dú)立性假設(shè),其基本內(nèi)容是當(dāng)前可能狀態(tài)到當(dāng)前觀察值的發(fā)射概率只與當(dāng)前觀察值有關(guān),而與其他觀察值無關(guān)。這種假設(shè)在解決某些特定問題時(shí)是基本成立的,但是在自然語言中,這種假設(shè)與現(xiàn)實(shí)差別很大。例如:
例(1) 領(lǐng)導(dǎo)/n 強(qiáng)調(diào)/v 深入/v a 細(xì)致/a 的/u 工作/vn 作風(fēng)/n
例(2) 領(lǐng)導(dǎo)/n 要/v 深入/v a 困難/a 的/u 群眾/n 中間/f
假定在這兩句中,只有“深入”是兼類詞,有動(dòng)詞v和形容詞a兩個(gè)可能詞性,需要進(jìn)行詞性排歧,而其他詞只有唯一詞性。當(dāng)利用一階HMM模型估計(jì)例(1)中“深入”的詞性X時(shí),根據(jù)上述公式有:
X)p(u|a)p(vn|u)p(n|vn)p(領(lǐng)導(dǎo)|
n)p(強(qiáng)調(diào)|v)p(深入|X)p(細(xì)致|
a)p(的|a)p(工作|vn)p(作風(fēng)|n)
由于除了“深入”以外,其他詞性均唯一且確定,因此可以得到
(深入|X)
同理,我們也可以求出例(2)中“深入”的詞性為
(深入|X)
本文提出了一種模型,稱為SSD(Symbol-and-Statistics Decoding)模型,該模型以n元詞序列為觀察單元,并在相鄰觀察單元間具有n-1元搭接關(guān)系,較好地克服了HMM模型的不足。
本文的結(jié)構(gòu)安排是:第1部分對(duì)HMM進(jìn)行介紹及分析;第2部分是對(duì)SSD模型的形式化描述及與HMM的對(duì)比分析;第3部分介紹SSD模型的參數(shù)估計(jì)及稀疏數(shù)據(jù)處理方法;第4部分介紹評(píng)價(jià)方法;第5部分介紹詞性標(biāo)注實(shí)驗(yàn)并與最大熵模型進(jìn)行比較。
n元SSD模型的觀察單元是由n個(gè)詞組成的序列,而不是單個(gè)詞。我們這里給出二元SSD模型的形式化描述,n大于2的模型可由此類推。
利用二元SSD模型求解S=w1w2...wh的最優(yōu)狀態(tài)序列的過程可以表示為:
(2)
為了便于計(jì)算,我們?cè)谛蛄蠸的起始位置統(tǒng)一加入起始標(biāo)記序列“*開始*-*開始*”,其狀態(tài)記為B-B,結(jié)束標(biāo)記序列“*結(jié)束*-*結(jié)束*”,其狀態(tài)記為E-E,則公式(2)可以進(jìn)一步表示為:
(3)
(4)
通過以上公式求解出由h+2個(gè)二元狀態(tài)序列組成的最優(yōu)狀態(tài)序列:
,,,...,,∈Q)
顯然,它們唯一地確定了每個(gè)觀察所對(duì)應(yīng)的狀態(tài)。
SSD模型與HMM模型主要有3點(diǎn)不同:
首先,在n階HMM中,與t時(shí)刻的可能狀態(tài)qt相關(guān)聯(lián)的觀察,只考慮了ot;但在n元SSD模型中,則要考慮包含ot的n個(gè)基元(詞性標(biāo)注中為詞)所構(gòu)成的序列。每一個(gè)可能狀態(tài)序列的集合由于受到n個(gè)觀察值共現(xiàn)的約束,其規(guī)模會(huì)大大減小,從而模型的搜索范圍大大壓縮。
第二,n階HMM中,涉及t時(shí)刻的狀態(tài)qt和觀察值ot的概率只有P(ot|qt);而在n元SSD模型中,則有n個(gè)發(fā)射概率:P(ot-n+1...ot|qt-n+1...qt),...,P(ot...ot+n-1|qt...qt+n-1)。如此,觀察值的前后聯(lián)系將對(duì)狀態(tài)的判斷形成約束。
第三,n階HMM中計(jì)算n個(gè)狀態(tài)的序列到下一個(gè)狀態(tài)的轉(zhuǎn)移概率P(qi|qi-n,...qi-1);n元SSD模型則計(jì)算的是相鄰且搭接的兩個(gè)n元狀態(tài)序列之間的轉(zhuǎn)移概率。當(dāng)搭接部分相同時(shí),即滿足搭接約束條件時(shí),這個(gè)概率同n階HMM中的概率是相同的;當(dāng)不滿足約束條件時(shí),轉(zhuǎn)移概率無定義。這一約束條件剪裁掉了大量的搜索路徑,進(jìn)一步提高了解碼的速度。
下面通過實(shí)例說明二元SSD模型求解最優(yōu)狀態(tài)序列的過程,從中可以發(fā)現(xiàn),該句通過符號(hào)解碼,不必進(jìn)行概率計(jì)算就可以得到最終的最優(yōu)詞性序列,如下表所示:
表1 SSD模型解碼結(jié)果
表1中陰影部分的節(jié)點(diǎn)是由于不滿足前后搭接約束條件而被剪裁掉的節(jié)點(diǎn),當(dāng)這些節(jié)點(diǎn)剪裁掉后,剩下的只有唯一一條可能路徑,這也是最終所要求解的最優(yōu)路徑。
在實(shí)際標(biāo)注過程中,并不一定每次都能夠通過符號(hào)解碼獲得唯一可能路徑。當(dāng)符號(hào)解碼后的可能路徑不唯一時(shí)就需要進(jìn)行數(shù)值計(jì)算,利用Viterbi算法進(jìn)行數(shù)值解碼,然后得到最優(yōu)狀態(tài)路徑。
SSD模型需要估計(jì)的參數(shù)有兩個(gè):(1)狀態(tài)轉(zhuǎn)移參數(shù)Pt;(2)狀態(tài)發(fā)射參數(shù)Po。我們采用最大似然法估計(jì)相關(guān)參數(shù),篇幅所限不給出具體過程。
SSD模型采用回退策略解決數(shù)據(jù)稀疏問題,設(shè)某個(gè)n元詞序列wj-n+1...wj未在詞表中出現(xiàn),則根據(jù)回退策略取wj-n+1...wj的后n-1個(gè)詞組成n-1元詞序列wj-n+2...wj作為替代序列,如果該序列仍然未在詞表中出現(xiàn),則繼續(xù)回退,直至成為二元詞序列?;赝说絪元詞序列時(shí),就使用s元詞表中給出的詞性序列。但如果wj-1wj仍未在二元詞表中出現(xiàn),則不再回退到單個(gè)詞,而將詞wj-1與詞wj的所有可能詞性組合作為wj-1wj的詞性序列。
(1) 總體標(biāo)注正確率
(2) 兼類詞標(biāo)注正確率
(3) 優(yōu)化幅度
優(yōu)化幅度=
×100%
訓(xùn)練語料與測(cè)試語料均來自北京大學(xué)標(biāo)注的1998年上半年《人民日?qǐng)?bào)》,具體劃分為如下:
表2 語料劃分
實(shí)驗(yàn)采用兩種方法,一種方法是利用二階HMM進(jìn)行標(biāo)注,另一種方法是利用二元SSD模型進(jìn)行標(biāo)注,然后對(duì)結(jié)果進(jìn)行對(duì)比分析。
在標(biāo)注之前首先根據(jù)標(biāo)注語料的標(biāo)注結(jié)果對(duì)訓(xùn)練語料與測(cè)試語料進(jìn)行了預(yù)處理,將姓名、地名、機(jī)構(gòu)名、數(shù)字、時(shí)間等進(jìn)行了歸并,所有姓名(不區(qū)分姓與名)以“*姓名*”表示,地名以“*地名*”表示,機(jī)構(gòu)名以“*機(jī)構(gòu)名*”表示,數(shù)字以“*數(shù)字*”表示,時(shí)間以“*時(shí)間*”表示,這樣處理后可以排除專名識(shí)別對(duì)于比較不同模型標(biāo)注性能的影響。
表3 封閉測(cè)試結(jié)果
表4 不同規(guī)模訓(xùn)練語料的開放測(cè)試總體正確率結(jié)果
表5 不同規(guī)模訓(xùn)練語料的兼類詞標(biāo)注正確率結(jié)果
對(duì)于n-gram數(shù)據(jù)來說,隨著n的增大數(shù)據(jù)稀疏問題會(huì)越來越嚴(yán)重。但從n元SSD模型處理數(shù)據(jù)稀疏的回退方法容易看出,n的增大不會(huì)降低n元SSD模型的標(biāo)注準(zhǔn)確性。我們的實(shí)驗(yàn)驗(yàn)證了這一點(diǎn)。我們利用1998年2~3月《人民日?qǐng)?bào)》語料作為訓(xùn)練語料,以1998年1月《人民日?qǐng)?bào)》語料作為測(cè)試語料, 檢驗(yàn)SSD模型在完全稀疏條件下的標(biāo)注性能。所謂完全稀疏,是指在利用n元SSD模型標(biāo)注時(shí),不使用n元詞表,而只使用1元至n-1元詞表,這使得測(cè)試語料中出現(xiàn)的所有n元詞序列都成為稀疏詞序列,這是n元SSD模型可能遇到的最稀疏情況,這時(shí)的標(biāo)注性能可以認(rèn)為是n元SSD模型的性能底線,測(cè)試結(jié)果如下:
表6 小規(guī)模訓(xùn)練大規(guī)模測(cè)試的結(jié)果
表7 完全稀疏條件下的SSD模型標(biāo)注結(jié)果對(duì)比
從上表結(jié)果及錯(cuò)誤分析發(fā)現(xiàn),完全稀疏的二元SSD模型標(biāo)注正確率與二階HMM的標(biāo)注正確率等同且錯(cuò)誤完全一樣;完全稀疏的三元SSD模型的標(biāo)注正確率與二元SSD模型的標(biāo)注正確率等同且錯(cuò)誤完全一樣。這驗(yàn)證了,n元SSD模型對(duì)于稀疏數(shù)據(jù)的處理策略保證了當(dāng)n增長(zhǎng)的情況下,模型不會(huì)因?yàn)閿?shù)據(jù)稀疏問題而造成性能的降低,反而會(huì)隨著n的增長(zhǎng),模型的語境觀察范圍得到擴(kuò)大,其性能會(huì)得到不同程度的提高。
為了與判別模型在詞性標(biāo)注上的性能進(jìn)行對(duì)比分析,我們選用最大熵模型進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)工具使用的是Standford最大熵標(biāo)注器(http://nlp.stanford.edu/software/tagger.shtml),訓(xùn)練語料是1998年1月《人民日?qǐng)?bào)》標(biāo)注語料,測(cè)試語料是2月《人民日?qǐng)?bào)》的前5 000句語料,使用的模板是該標(biāo)注器自帶的漢語詞性標(biāo)注模板(取當(dāng)前詞及其左右各一個(gè)詞的詞形以及某些類信息(如數(shù)字、字母等)為特征,具體參見文獻(xiàn)[9])。結(jié)果如下表:
表8 最大熵模型標(biāo)注結(jié)果比較
上述結(jié)果說明,在當(dāng)前的訓(xùn)練規(guī)模條件下,最大熵模型的標(biāo)注正確率要高于SSD模型和HMM模型,顯示出判別模型在利用語境信息方面的優(yōu)勢(shì)。但是最大熵模型的訓(xùn)練時(shí)間遠(yuǎn)高于其他兩種模型,而SSD模型的訓(xùn)練時(shí)間雖多于HMM模型,但是二者相差不過20秒左右,基本在同一個(gè)數(shù)量級(jí)上,且SSD模型的標(biāo)注正確率高于HMM,盡管低于最大熵模型,但其保持了HMM簡(jiǎn)單快捷的優(yōu)勢(shì),又較HMM的標(biāo)注正確率有較大幅度提高,具有一定的實(shí)用價(jià)值。
SSD模型訓(xùn)練復(fù)雜度較判別模型要低,解碼速度較快,因此能夠更靈活方便地根據(jù)實(shí)際需求,迅速訓(xùn)練并提供所需語言模型,同時(shí),SSD模型還克服了HMM模型的強(qiáng)獨(dú)立性假設(shè)的不足,能夠利用更多的觀察信息,保證較高的標(biāo)注正確率。同時(shí),SSD模型也并非絕對(duì)不能夠利用語境中的其他特征信息進(jìn)行狀態(tài)判斷,而是有可能將其他有用信息也集成到模型之中,因此,我們下一步的工作重點(diǎn)將研究如何將豐富的語境信息合理地集成到SSD模型之中,使其性能得到進(jìn)一步提高。
[1] Daniel Jurafsky, James H. Martin. Speech and Languge Processing:An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition[M]. USA:Prentice Hall,2000.
[2] Doug Cutting, Julian Kupiec, Jan Pedersen, Penelope Sibun. A Practical Part-of-Speech Tagger [C]//Proceedings of the Third Conference on Applied Natural Language Processing, 1992:133-140.
[3] Adwait Ratnaparkhi. A maximum entropy model for Part-of-speech Tagging[C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing, 1996:133-141.
[4] 俞士汶,段慧明,朱學(xué)鋒,等. 北京大學(xué)現(xiàn)代漢語語料庫(kù)基本加工規(guī)范[J]. 中文信息學(xué)報(bào),2002,16(6): 58-65.
[5] 梁以敏,黃德根. 基于完全二階隱馬爾可夫模型的漢語詞性標(biāo)注[J]. 計(jì)算機(jī)工程, 2005, 31(10):177-179.
[6] 屈剛,陸汝占 一個(gè)改進(jìn)的漢語詞性標(biāo)注系統(tǒng)[J]. 上海交通大學(xué)學(xué)報(bào),2003,37(6):897-900.
[7] 洪銘材,張闊,唐杰,等. 基于條件隨機(jī)場(chǎng)(CRFs)的中文詞性標(biāo)注方法[J]. 計(jì)算機(jī)科學(xué), 2006, 33(10):148-155.
[8] 姜維,關(guān)毅,王曉龍. 基于條件隨機(jī)域的詞性標(biāo)注模型[J]. 計(jì)算機(jī)工程與應(yīng)用,2006, 21:13-16.
[9] Kristina Toutanova, Dan Klein, Christopher Manning, and Yoram Singer. Feature-Rich Part-of-Speech Tagging with a Cyclic Dependency Network[C]//Proceedings of HLT-NAACL, 2003: 252-259.