郭丙華 俞亞堃 李中華
1(肇慶學(xué)院電子信息工程系 廣東 肇慶 526061)2(中山大學(xué)信息科學(xué)與技術(shù)學(xué)院 廣東 廣州 510006)
?
基于詞語搭配關(guān)系的一種中文分詞歧義性消除方法
郭丙華1俞亞堃1李中華2
1(肇慶學(xué)院電子信息工程系廣東 肇慶 526061)2(中山大學(xué)信息科學(xué)與技術(shù)學(xué)院廣東 廣州 510006)
漢語中詞與詞之間存在固定的搭配關(guān)系,基于詞語搭配關(guān)系提出一種分詞歧義性消除方法。該方法先利用正向和逆向最大匹配方法進(jìn)行句子預(yù)切分,并對詞的歧義性進(jìn)行檢測和詞性標(biāo)注,再對歧義詞與詞語搭配詞典進(jìn)行匹配或者動賓搭配判斷,實(shí)現(xiàn)了較為準(zhǔn)確的文檔詞語歧義性消除。通過詞的歧義性檢測實(shí)驗(yàn)和詞語搭配檢測對比實(shí)驗(yàn),該方法取得了較好的效果。
詞語搭配最大匹配中文分詞歧義性動賓搭配
ACHINESESEGMENTATIONDISAMBIGUATIONMETHOD
中文分詞技術(shù)是中文文本信息自動處理諸如漢語語言理解、機(jī)器翻譯與服務(wù)、自動分類、搜索引擎等關(guān)鍵技術(shù)之一[1],但由于機(jī)器自動分詞的缺陷和中文的特殊性,其效果遠(yuǎn)遠(yuǎn)達(dá)不到人對中文的理解程度?,F(xiàn)有的常用分詞算法主要有以下兩類:
(1) 最大匹配方法[2]
最大匹配算法是一種基于詞典的機(jī)械分詞算法,其包括正向匹配和逆向匹配兩種方法以及這兩種方法的一些改進(jìn)[3,4]。這些方法主要從句頭或句尾開始進(jìn)行詞的掃描并與詞典匹配,匹配成功則在此位置進(jìn)行切分。由于最大匹配算法實(shí)現(xiàn)簡單、分詞速度快的特點(diǎn),使其成為應(yīng)用最為廣泛的一種分詞方法。但也存在明顯的不足,主要包括匹配時(shí)需要依賴于詞典、詞切分的準(zhǔn)確率較低等缺陷,特別是當(dāng)存在多歧義詞時(shí),難以有效地進(jìn)行切分。
(2) 基于統(tǒng)計(jì)概率的分詞方法[5]
以統(tǒng)計(jì)概率方法進(jìn)行分詞主要是利用文本中詞出現(xiàn)的概率來預(yù)測組合成詞的可信度的一種方法。由于漢字成詞有其特定的統(tǒng)計(jì)規(guī)律,即相鄰的字出現(xiàn)的頻率越高,構(gòu)成詞的可能性就越大,這類算法的優(yōu)點(diǎn)是不依賴于詞典,能夠較好解決成詞的歧義。這類方法主要有:隱馬爾可夫模型[5]、最大熵模型[6]和條件隨機(jī)域模型[6]等算法,但由于需要對整個(gè)文檔成詞的概率進(jìn)行統(tǒng)計(jì),因而效率較低。由于基于統(tǒng)計(jì)概率的分詞方法的良好歧義解決能力,因此統(tǒng)計(jì)概率常與最大匹配方法相結(jié)合,實(shí)現(xiàn)對文檔的有效分詞[2]。
由于最大匹配算法的簡單和高效,本文針對其對解決分詞歧義性不足的缺陷,提出一種基于詞語搭配關(guān)系的改進(jìn)算法。由于中文(漢語)的習(xí)慣,詞與詞之間有著一種固定的搭配關(guān)系,即詞語搭配,利用漢語的這種固定搭配,可以有效提升切分的準(zhǔn)確性。
分詞的歧義性主要表現(xiàn)在切分的結(jié)果存在多種可能。實(shí)際上,正確的切分只有一種形式,由于機(jī)器自動分詞算法存在的缺陷,導(dǎo)致切分的結(jié)果無法理解,因此一個(gè)魯棒的分詞算法應(yīng)該能夠較好地消去這種歧義性。根據(jù)對分詞歧義性的分析,一般有兩種歧義性[2,7-9],即交集型歧義和組合型歧義。為了能夠應(yīng)用于提出的算法,我們對其定義如下:
(1) 假定已切分的詞構(gòu)成一n維向量S,即S={C1,C2,…,Ci}。其中Ci為已切分的詞,1≤i≤n,且Ci為由若干個(gè)字組成的m維向量,即Ci={xi1,xi2,…,xik},1≤ik≤m。假設(shè)詞Ci和Ci+1為S中兩個(gè)相鄰元素,如果xik和xjk能夠成詞,則分詞存在交集型歧義。比如:“他只會診斷一般的疾病”,分詞的結(jié)果可能是“他/只/會診/斷/一般/的/疾病”或“他/只/會/診斷/一般/的/疾病”兩種情況,其中“會診斷”三個(gè)字切分時(shí)就會出現(xiàn)交集型歧義。這種類型的歧義占絕大部分[8]。
(2) 對于(1)中定義的m維向量中,如果相鄰的Ci和Ci+1能夠成詞,則分詞存在組合型歧義。
比如:“白天鵝在水上游來游去”,分詞的結(jié)果可能是“白天鵝/在/水上/游來游去”或“白天/鵝/在/水上/游來游去”兩種情況,其中“白天鵝”三個(gè)字切分時(shí)就會出現(xiàn)組合型歧義。對于組合型歧義,一般需要根據(jù)上下文來進(jìn)行判斷,僅僅從單句來切分,兩種切分結(jié)果都是符合邏輯的。
最大匹配算法[2]是一種基于詞典的分詞方法,其過程是通過切分的詞與詞典進(jìn)行匹配,主要有最大正向分詞算法和最大逆向分詞算法兩種。正向算法的實(shí)現(xiàn)主要如下:
(1) 從句子的開頭取固定長度的詞并與詞典作匹配,如果匹配成功,則切分;否則從后面減少一個(gè)字并繼續(xù)匹配。
(2) 初次切分完成后,繼續(xù)從未切分句子中取固定長度的詞并重復(fù)(1)的操作,直至整個(gè)句子完成詞語切分。
與正向算法不同的逆向算法,是從句尾取固定長度的詞,當(dāng)匹配不成功時(shí)是前面減少一個(gè)字并繼續(xù)匹配。由于最大匹配算法是按照一種慣性的方法進(jìn)行詞的切分,即按順序取固定數(shù)量的字作為詞對照詞典的方法,無法分辨詞的歧義性,因此僅僅采用單一的最大匹配算法很難解決詞切分的歧義性問題。
實(shí)際上,分詞的結(jié)果既要符合中文的習(xí)慣,也要滿足漢語語法的要求,否則就說不通或者不成句子。在漢語中,詞與詞之間有著一種固定的搭配關(guān)系,即詞語搭配[10]。如上述的“診斷…疾病”、“會診…病情”等,如果切分錯(cuò)誤,就會形成不正確的搭配關(guān)系。另外從漢語語法的角度來說,動賓搭配也是一種重要且最為常見的詞語搭配,句子切分的結(jié)果應(yīng)該能夠保持這樣一種搭配關(guān)系,即動詞(v)+名詞(n)的結(jié)構(gòu)。在動賓搭配的判斷上,一些學(xué)者提出了一些方法,如文獻(xiàn)[11]采用了一種統(tǒng)計(jì)模型用于漢語動賓搭配的自動識別;文獻(xiàn)[12]通過提取制約規(guī)則,依據(jù)v+n中漢語名詞、動詞的語義在英語譯文中的具體形式及上下文模板來判斷v+n的結(jié)構(gòu)關(guān)系。本文將提出一種基于詞語搭配的句子切分算法,以達(dá)到快速且準(zhǔn)確的分詞效果。
歧義性檢測主要用于查找產(chǎn)生歧義的詞以及確定其發(fā)生歧義的位置。由于最大分詞算法的特點(diǎn),因此僅僅采用單一的最大匹配算法難以發(fā)現(xiàn)切分的歧義性。但因該算法的高效性,本文擬對其改進(jìn),并將其應(yīng)用于歧義的檢測。
最大匹配算法有正向和逆向匹配方法,分別從句頭和句尾開始進(jìn)行詞的掃描并與詞典匹配。由于切分后產(chǎn)生的歧義性主要發(fā)生在臨近詞之間,當(dāng)字與其左右兩邊的字或詞組合成詞時(shí),采用正向匹配算法和逆向匹配算法切分的結(jié)果可能不同。比如:“他的確切地址在這兒”,采用正向匹配算法切分的結(jié)果是“他/的確/切/地址/在/這兒”,而采用逆向匹配算法切分的結(jié)果則變成“他/的/確切/地址/在/這兒”。通過比較兩種結(jié)果則可以確定切分歧義發(fā)生在“的確切”位置。如果一個(gè)句子采用正向和逆向匹配算法分詞的結(jié)果一樣,則有可能是正確切分,但也可能切分不正確。比如:“當(dāng)原子結(jié)合成分子時(shí)”,兩種算法切分的結(jié)果都是“當(dāng)/原子/結(jié)合/成分/子時(shí)”,這種情況下兩種分詞算法的切分結(jié)果都是不正確的。出現(xiàn)這種情況一般都是在存在連續(xù)多個(gè)交集型歧義時(shí)出現(xiàn),即文獻(xiàn)[13]中提到的歧義的鏈長大于1的情況。如上述“結(jié)合成分子時(shí)”的歧義是“合”、“成”、“分”、“子”四個(gè)字組成鏈長為4的交集型歧義,其都可以與左右的字組合成詞。
當(dāng)出現(xiàn)鏈長大于1的情況,采用正向和逆向匹配算法有可能無法檢測詞的歧義性位置。這種情況下,為了檢測詞的歧義性,可以利用正向匹配切分的結(jié)果,對已切分的詞按句子的順序與其臨近的字或詞重新匹配,如果匹配成功,則在該位置存在歧義性。比如前述的“當(dāng)原子結(jié)合成分子時(shí)”,正向匹配切分后得到“當(dāng)/原子/結(jié)合/成分/子時(shí)”,依次匹配按下述的框中的詞,“當(dāng)/原子/結(jié)合/成分/子時(shí)”,其中“合成”和“分子”匹配成功,因此“結(jié)合成分子時(shí)”構(gòu)成交集型歧義。
采用上述方法,可以實(shí)現(xiàn)交集型歧義的檢測,但不能保證句子切分的正確性。為了達(dá)到正確的切分,我們擬在歧義檢測的基礎(chǔ)上利用詞語搭配進(jìn)行分詞。由于在漢語中,詞與詞之間有著一種固定的搭配關(guān)系(包括重要且最為常見的動賓搭配),我們參考文獻(xiàn)[14,15]建立了一個(gè)常用的詞語搭配詞典。在檢測到詞的歧義同時(shí),進(jìn)行詞語的詞性標(biāo)注,再對歧義詞按照順序依次與詞語搭配詞典進(jìn)行匹配,匹配成功則進(jìn)行切分。如果所有的歧義詞與詞典匹配不成功,則結(jié)合歧義詞的詞性標(biāo)注進(jìn)行詞語動賓匹配,即“動詞+…+名詞”。比如前面提到的句子“他只會診斷一般的疾病”,通過歧義性檢測得到“會診斷”產(chǎn)生兩種詞的歧義,即“會診/斷”和“會/診斷”;再搜索后面與其組合的名詞“疾病”,結(jié)合“會診…疾病”和“診斷…疾病”的詞語搭配關(guān)系與詞語搭配詞典匹配,匹配的結(jié)果是“診斷…疾病”,因此正確的切分是“他/只/會/診斷/一般/的/疾病”。
綜合上述方法,我們提出了一種詞語搭配關(guān)系的分詞歧義性消除算法,其具體如下:
(1) 先對待切分的句子分別用最大正向匹配和逆向最大匹配算法進(jìn)行預(yù)切分,并對其切分的結(jié)果進(jìn)行比較,再根據(jù)比較的結(jié)果確定分詞的歧義性。
(2) 根據(jù)詞典對切分的詞進(jìn)行詞性標(biāo)注。
(3) 對所有歧義的詞與詞語搭配詞典進(jìn)行匹配,匹配成功則在該位置切分;否則結(jié)合歧義詞的詞性標(biāo)注進(jìn)行詞語動賓判斷,根據(jù)判斷的結(jié)果進(jìn)行切分。
具體實(shí)現(xiàn)的流程見圖1所示。
實(shí)驗(yàn)采用由東北大學(xué)中文信息處理實(shí)驗(yàn)室提供的詞性詞典,其中用戶詞典修改為詞語搭配詞典。該詞典由參考文獻(xiàn)[14,15]建立,其中包含了絕大多數(shù)常用的詞語搭配。本文實(shí)驗(yàn)主要包括分詞歧義性(包括不同鏈長的交集型歧義和組合型歧義)檢測和詞語搭配檢測實(shí)驗(yàn)。表中切分正確率=正確切分?jǐn)?shù)/所有標(biāo)準(zhǔn)切分?jǐn)?shù)。
3.1分詞歧義性檢測實(shí)驗(yàn)
為了說明算法對分詞歧義性的檢測效果,本文分別對鏈長為1、2、3、4等四種交集型歧義進(jìn)行了測試,同時(shí)也對比較難以檢測的組合型歧義進(jìn)行了實(shí)驗(yàn),實(shí)驗(yàn)的結(jié)果見表1所示。從表1可以看出,提出的算法對交集型歧義有非常好的檢測效果,對交集型歧義檢測效果都在99%以上。尤其是對鏈長為1和3,歧義檢測效果更好些。對鏈長為2和4的歧義性檢測效果要低于鏈長為1和3。對于鏈長為1和3的歧義檢測誤差,通過分析發(fā)現(xiàn)主要是出現(xiàn)了詞典中不能匹配的一些新詞;而鏈長為2和4的歧義性檢測誤差原因是除了詞典中不能匹配的一些新詞外,還存在當(dāng)匹配不成功時(shí)主要靠動賓結(jié)構(gòu)(動詞v+名詞n)來判斷。由于詞語搭配詞典中錄入的詞語搭配數(shù)量的有限性,依賴動賓結(jié)構(gòu)可能會導(dǎo)致錯(cuò)誤的搭配關(guān)系,算法在這個(gè)方面還有待改進(jìn),比如搭配詞典擴(kuò)展、增加語法識別等。另外,提出的算法在組合型歧義檢測方面其正確率比較低,這主要是組合型歧義的識別還必須依靠上下文關(guān)系才能更有效地識別,這可以通過增加詞語統(tǒng)計(jì)方法來改進(jìn)。
表1 分詞歧義性檢測實(shí)驗(yàn)結(jié)果
3.2詞語搭配檢測對比實(shí)驗(yàn)
為了驗(yàn)證詞語搭配的切分效果,我們隨機(jī)從網(wǎng)上摘錄3篇文檔進(jìn)行測試,實(shí)驗(yàn)的結(jié)果如表2所示。
表2中詞語搭配切分包括動賓結(jié)構(gòu)切分和除動賓搭配以外的其他詞語搭配切分。動賓結(jié)構(gòu)切分正確率=動賓結(jié)構(gòu)正確切分?jǐn)?shù)/動賓結(jié)構(gòu)標(biāo)準(zhǔn)切分?jǐn)?shù),其他詞語搭配切分正確率類同動賓結(jié)構(gòu)。所有不包含詞語搭配切分正確率是指本文的算法不包含詞語搭配時(shí)切分的正確率。從表中可以看到,采用詞語搭配后其切分的正確率增加了大約9%左右,詞語搭配的應(yīng)用起到比較好的效果。但仍有1%左右的誤切分,主要原因是一個(gè)完整的句子中,不僅包括詞語搭配關(guān)系,還可能包含其他復(fù)雜的語法關(guān)系,因此進(jìn)一步的語法分析有助于獲得滿意的效果,這也是本文算法下一步改進(jìn)的方向。表中第3篇文檔動賓結(jié)構(gòu)的切分正確率明顯低于第1和第2篇文檔,主要原因是該文檔的新詞較多,檢測效果要差一些。
表2 詞語搭配切分實(shí)驗(yàn)結(jié)果
在最大匹配算法的基礎(chǔ)上,本文基于詞語搭配關(guān)系提出一種分詞歧義性消除方法。算法通過正向和逆向匹配檢測詞的歧義性及其位置,再對歧義詞與詞語搭配詞典進(jìn)行匹配,直至句子切分。為了驗(yàn)證算法的效果,本文設(shè)計(jì)了不同鏈長的交集型歧義性和組合型歧義檢測、詞語搭配檢測對比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果證明,該算法對交集型歧義詞具有較高的檢測效果和切分正確率。該算法切分的誤差主要表現(xiàn)在新詞、未錄入的一些詞語搭配詞以及一些組合型歧義詞,這方面的研究還有待于將來的完善。
[1] 劉遷,賈惠波.中文信息處理中自動分詞技術(shù)的研究與展望[J].計(jì)算機(jī)工程與應(yīng)用,2006,42(3):175-177,182.
[2] 李國和,劉光勝,秦波波,等.綜合最大匹配和歧義檢測的中文分詞粗分方法[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(14):139-142,167.
[3] 周俊,鄭中華,張煒.基于改進(jìn)最大匹配算法的中文分詞粗分方法[J].計(jì)算機(jī)工程與應(yīng)用,2014,50(2):124-128.
[4] 戴上靜,石春,吳剛.中文分詞中的正向增字最大匹配算法研究[J].微型機(jī)與應(yīng)用,2014,33(17):15-18.
[5] 劉丹,方衛(wèi)國,周泓.基于貝葉斯網(wǎng)絡(luò)的二元語法中文分詞模型[J].計(jì)算機(jī)工程,2010,36(1):12-14.
[6] 孫曉.中文詞法分析的研究及其應(yīng)用[D].大連:大連理工大學(xué),2010.
[7] 侯敏,孫建軍.漢語自動分詞中的歧義問題[J].語言文字應(yīng)用,1996(1):68-72.
[8] 馮素琴,陳惠明.基于語境信息的漢語組合型歧義消歧方法[J].中文信息學(xué)報(bào),2007,21(6):13-16.
[9] 修馳,宋柔.基于無監(jiān)督學(xué)習(xí)的專業(yè)領(lǐng)域分詞歧義消解方法[J].計(jì)算機(jī)應(yīng)用,2013,33(3):780-783.
[10] 孫茂松,黃昌寧,方捷.漢語搭配定量分析初探[J].中國語文,1997(1):29-38.
[11] 程月,陳小荷.基于條件隨機(jī)場的漢語動賓搭配自動識別[J].中文信息學(xué)報(bào),2009,23(1):9-15.
[12] 馮敏萱.現(xiàn)代漢語“V+N”序列關(guān)系的平行處理[J].計(jì)算機(jī)工程與應(yīng)用,2010,46(30):8-10.
[13] 鄭逢斌,付征葉,喬保軍,等.HENU漢語自動分詞系統(tǒng)中歧義字段消除算法[J].河南大學(xué)學(xué)報(bào):自然科學(xué)版,2004,34(4):49-52.
[14] 梅家駒.現(xiàn)代漢語搭配詞典[M].上海:漢語大詞典出版社,1999.
[15] 趙培癢.常用詞語搭配詞典[M].北京:首都師范大學(xué)出版社,1999.
BASEDONWORDCOLLOCATIONRELATIONSHIP
GuoBinghua1YuYakun1LiZhonghua2
1(DepartmentofElectronicsandInformationEngineering,ZhaoqingUniversity,Zhaoqing526061,Guangdong,China)2(SchoolofInformationScienceandTechnology,SunYat-senUniversity,Guangzhou510006,Guangdong,China)
InChinesetherearethefixcollocationrelationshipsbetweenwords.ThispaperpresentsadisambiguationmethodforChinesesegmentationbasedonwordcollocation.Itfirstlypre-segmentsthesentencesbyusingtheforwardmaximummatchingmethodandbackwardmaximummatchingmethod,andcarriesoutthewordambiguitydetectionandtagsthepartofspeech,andthenitmatchestheambiguouswordswithwordcollocationdictionaryormakesdistinguishmentonverb-objectcollocations,thusachievesthemoreaccurateresultsofdocumentwordsdisambiguation.Theproposedmethodreachesgoodresultsasshownincontrastexperimentsofwordambiguitydetectionandwordcollocationdetection.
WordcollocationMaximummatchChinesesegmentationWordambiguityVerb-objectcollocations
2015-05-15。國家自然科學(xué)基金項(xiàng)目(61201087);廣東 省特色創(chuàng)新項(xiàng)目(2014KTSCX191)。郭丙華,副教授,主研領(lǐng)域:自動信息處理,機(jī)器服務(wù)。俞亞堃,講師。李中華,副教授。
TP
ADOI:10.3969/j.issn.1000-386x.2016.10.021