〔摘 要〕同義詞自動識別在信息檢索#65380;知識挖掘等方面起著重要作用,一直以來都是業界的關注焦點#65377;本文結合網上詞典鏈接分析方法和共現分析方法來自動提取同義詞,分別通過分析頁面的后向鏈接信息#65380;重定向頁面和對網頁內容利用共現分析方法來識別同義詞,和傳統的同義詞識別方法比較有更好的覆蓋率和準確性#65377;
〔關鍵詞〕同義詞識別;鏈接挖掘;共現分析;相似度
〔中圖分類號〕TP393 〔文獻標識碼〕C 〔文章編號〕1008-0821(2009)08-0125-03
Automatic Recognition of Chinese Synonyms Using
Link Structure and Co-occurrence AnalysisHuang Fang1 Liu Youhua1,2 Zhang Kezhuang1 Li Yin2
(1.Department of Information Management,Nanjing University,Nanjing 210093,China;
2.School of Management and Engineering,Nanjing University,Nanjing 210093,China)
〔Abstract〕Automatic Recognition of Synonyms plays an important role in aspects such as information retrieval and knowledge mining,and has always been a focus in these fields.This paper combined link structure analysis of web dictionary and co-occurrence analysis to detect synonyms.It was realized by analyzing backward link and redirect page information,and meanwhile by co-occurrence analysis of theweb page contents.The result showed that this method has better coverage and precision.
〔Key words〕synonym recognition;link mining;co-occurrence analysis;similarity
目前,自動識別中文同義詞的方法主要有以下幾種:(1)基于字面相似度和詞素相似度的算法;(2)基于《同義詞詞林》[1]#65380;《知網》語義體系的同義詞識別[2];(3)基于信息檢索的同義詞識別算法[3]#65377;其中,第一種方法依據字面的相似度,然而很多同義詞字面并不相似,并且字面相似的詞也并不一定是同義詞;基于詞典語義體系的方法解決了字面相似性不足的問題,但它要基于專門的詞典,而像《同義詞詞林》#65380;《知網》等詞典本身詞匯覆蓋率不夠,并且還存在新詞未收錄的問題;而基于信息檢索的識別算法則依賴于搜索引擎的性能#65377;隨著互聯網和web挖掘技術的發展,通過分析網上詞典鏈接來獲取同義詞也逐漸成為同義詞識別一個研究方向#65377;文獻[4]利用HITS算法分析wikipedia的鏈接和分類得到同義詞和相關詞,取得比較好的效果;文獻[5]把詞典中存在的詞匯之間的解釋和被解釋關系看成是一種語義上的鏈接關系,并引用pagerank算法來計算詞匯間的語義相似度#65377;
本文結合鏈接分析和共現分析的方法進行同義詞的自動提取,通過分析網上詞典的鏈接結構,并對其頁面內容利用共現分析方法,兩者相結合獲取同義詞,不僅擴大了同義詞識別的覆蓋率,而且還可以提高識別的準確性#65377;
1 對基于鏈接結構識別方法的改進
1.1 幾個相關的術語
1.1.1 網上詞典
網上詞典的一個重要特征是其對鏈接的應用,對詞匯概念的解釋由鏈接的方式給出,且概念之間相互鏈接,相互存在鏈接的概念通常比沒有鏈接的概念具有更大的相關性或者相似性;另一個特征是它的擴展性,它的詞匯收錄量是不斷增長的,可以及時收錄新詞#65377;
1.1.2 前向#65380;后向鏈接
某個概念的前向鏈接是指由此概念鏈出的超鏈接,后向鏈接是指鏈向此概念的超鏈接#65377;前向鏈接和后向鏈接都是分析網頁鏈接結構和網頁內容的重要信息#65377;
1.1.3 鏈接文本[6]
鏈接文本是指網上詞典頁面的一部分,它們鏈接到目標頁面#65377;這里分析的鏈接文本是出現在主題文章的鏈接文本#65377;這樣的鏈接文本通常和它所鏈接到的目標概念有很強的關聯#65377;
1.1.4 重定向頁面
有的網上詞典支持在重定向頁面,當一個概念有不同的表達方式,比如電腦又可稱為電子計算機,則在搜索時重定向到另一個頁面,如搜索“電腦”即重定向到“電子計算機”這個頁面#65377;重定向頁通常和目標頁面概念有很強的聯系,它們很有可能是同義詞#65380;縮寫#65380;或是極常見錯拼的詞,利用重定向頁面信息可以直接提取出同義詞#65377;
1.2 概念相似度計算
由上文所述,我們可以用有向圖G={V,E}來表示網上詞典的內容和結構#65377;一般頁面內容由一個概念和它的釋義組成,這里,V表示頁面集合,E表示鏈接集合#65377;任意兩個概念vi和vj的相關性強度可以由從vi到vj的鏈接數和鏈接路徑的長度來衡量#65377;從vi到vj的鏈接數越多#65380;鏈接路徑越短,則它們之間的相關性越大[7]#65377;用P={p1,p2,…pn}來表示所有vi到vj的路徑,vi和vj的鏈接關系用鏈接頻率(link frequency)來表示,其計算方法為:
lf(vi,vj)=∑nk=11d(pk)
其中d(pk)代表vi到vj第k條路徑的長度#65377;
在信息檢索向量模型中,有詞頻(tf因子)和逆文獻頻率(idf因子)這兩個概念[8],在此基礎上有著名的詞語加權方案即tf-idf方案#65377;同樣,我們利用鏈接頻率lf#65380;逆后向鏈接頻率ibf#65380;lf-ibf加權方案來表示兩個概念之間的相關性程度#65377;這里的逆后向鏈接頻率ibf表明,如果某個概念指向很多其他的概念,說明此概念比較寬泛,不能認為它與某個其他概念有很強的相關性,ibf可用下式計算獲得:
ibf(vi)=logNlf(vi)
其中,N是網上詞典概念總數量,lf(vi)是vi的鏈出數量#65377;
這時用lf-ibf加權方案來表示兩個概念之間的相似性:
lf-ibf(vi,vj)=lf(vi,vj)×ibf(vi)
上式表明,從vi到vj的路徑越多,且vi指向的概念越少,則lf-ibf值越大,不難看出,用此來衡量vi和vj的相似性程度比單純的lf值更加合理,綜合得vi和vj的相似性:
sim1(vi,vj)=∑nk=11d(pk)×logNlf(vi)
1.3 利用后向鏈接和重定向頁面信息提取同義詞
鏈接分析方法利用網上詞典網頁后向鏈接中的鏈接文本和重定向頁面來提取同義詞#65377;第一步,利用后向鏈接信息識別同義詞,為了簡化計算過程,在本算法中,后向鏈接指定為直接指向某個概念的鏈接,即上述中的d(pk)取統一的一個常值#65377;后向鏈接獲取同義詞算法:
其中,B(vj)是vj的后向鏈接集合,vk∈B(vj),n是vj的后向鏈接數量,vi是鏈接文本,它屬于網上詞典中的一個概念,wij即為概念vi和vj的相似度sim1(vi,vj),即:
sim1(vi,vj)=wij(0≤wij<1)
第二步,利用重定向頁面鏈接信息來識別同義詞,將某個概念與它的重定向頁面相似度的值取為所有得到的概念間相似度的最大值MAX(sim1)#65377;這樣,加大了同義詞識別的廣度#65377;
2 結合共現分析方法進行同義詞識別
2.1共現分析法詞匯相似度計算
基于詞匯共現分析的方法的前提是如果兩個詞經常一起出現在同一文獻或一定的窗口單元中,則認為兩個詞在意義上是相互關聯的#65377;該方法又稱為基于分布的詞匯相似度方法,利用詞匯的同現信息,對詞匯之間的相關性進行度量和量化#65377;
這里,借鑒文獻[9]中的方法,對文檔集M中的每篇文檔,提取出K個詞匯,用下式來計算兩個詞匯之間的關聯權值:
wgt(vik,vjk)=2×NS(vik∩vjkNS(vik)+NS(vjk)×ln(1.72+NSk)
其中,NSk表示文檔k中全部句子數,NS(vik)#65380;NS(vjk)分別表示文檔k中出現詞匯vi的句子數和出現詞匯vj的句子數,NS(vik∩vjk)表示文檔k中同時出現詞匯vi和詞匯vj的句子數#65377;Ln(1.72+NSk)用來修正在長文檔中的詞匯對的關聯權值,使得不同長度文檔得到的權值處在相似的范圍值內#65377;設定一個閾值(這里設為1),達到閾值的權值被累加,最后得到詞匯vi和詞匯vj的相似度:
sim2(vi,vj)=∑nk=1wgt(vik,vjk)
2.2 結合鏈接分析和共現方法
利用上述鏈接結構分析方法和共現分析方法計算概念間相似度后,將兩者結合,得到概念之間最后的相似度為:
sim(vi,vj)=βsim1(vi,vj)+(1-β)sim2(vi,vj)
其中,sim1(vi,vj)為利用鏈接結構分析方法得到概念間的相似度,sim2(vi,vj)為用共現分析法得到的相似度,sim0(vi,vj)為最終得到的相似度,β和1-β(0<β<1)分別是兩種方法得到的相似度的權值#65377;這里,將兩種方法相結合,不僅進一步增大了同義詞識別的廣度,更重要是提高了同義詞識別的準確性#65377;
2.3 實驗結果及分析
本文利用維基百科(Wikipedia)中文版來進行同義詞的識別#65377;維基百科是一個由大量用戶創造并具有高覆蓋度的在線百科全書#65377;這里選擇中文維基百科分類中的信息技術這個大類,分別利用頁面鏈接數據和頁面文本數據分析識別同義詞,在結果中隨機抽取20個概念,得到它們同義詞識別的平均準確率,即對每個概念,經過人工判斷,計算識別出的正確的同義詞所占的比例,最后計算這20個數值的平均值#65377;結果如表1,部分推薦的同義詞或相關詞見表2#65377;
試驗結果表明,結合兩種方法識別同義詞比單獨利用鏈接結構分析方法和共現分析方法可達到更高的準確率#65377;另外,和利用《同義詞詞林》等語義體系識別方法相比,本文的方法可以識別更多新詞,如表2中博客以及它的同義詞網志#65380;網志空間都不能利用前者識別出來#65377;表1 不同方法同義詞識別比較
識別方法鏈接結構分析共現分析兩種方法結合準確率68.4%33.7%76.2%表2 同義詞識別例子
目標概念同義詞#65380;相關詞本體論語義網微軟微軟公司#65380;操作系統#65380;比爾蓋茨#65380;Microsoft Windows互聯網因特網#65380;萬維網#65380;上網#65380;網絡博客網志#65380;網志空間
3 結 論
利用鏈接結構分析的方法提取同義詞,減去了復雜的自然語言處理過程,使得識別過程比較簡便,利用網上詞典,也可以解決以往利用《同義詞詞林》#65380;《知網》等語義體系時存在的缺乏新詞的問題#65377;將網上詞典連接結構分析方法和共現分析方法相結合不僅可以提高同義詞識別的準確率,也增大了識別的廣度#65377;在網上詞典中,概念通常還被歸類存放,我們將在進一步的工作中利用分類信息等識別概念之間更具體的關系,比如同位#65380;父子關系等#65377;
參考文獻
[1]曹晶.同義詞挖掘及其在概念信息檢索系統中的應用研究[D].長春:東北師范大學,2006,(5):25-30.
[2]朱毅華.智能搜索引擎中的同義詞識別算法研究[D].南京:南京農業大學,2001,(6):32-39.
[3]劉華梅,侯漢清.基于情報檢索的漢語同義詞識別初探[J].情報理論與實踐,2005,(4):373-382.
[4]Andrew A.Krizhanovsky.Synonym search in Wikipedia:Synarcher[EB].http:∥www.citebase.org/abstract?id=oai:arXiv.org:cs/0606097,2005,2008-10-21.
[5]陸勇.面向信息檢索的漢語同義詞自動識別[D].南京:南京農業大學,2005,(6):27-35.
[6]Kotaro Nakayama.Wikipedia Mining for Triple Extraction Enhanced by Co-reference Resolution[EB].http:∥ftp.informatik.rwth-aachen.de/Publications/CEUR-WS/Vol-405/paper6.pdf,2008-10-21.
[7]Nakayama,K.,Hara,T.,Nishio,S.A thesaurus construction method from largescale web dictionaries.Proceedings of IEEE International Conference on AdvancedInformation Networking and Applications,2007:932-939.
[8]Ricardo Baeza2Yates.現代信息檢索[M].王知津,譯.北京:機械工業出版社,2006.5:19-23.
[9]Yuen2Hsien Tseng,Fast Co-occurrence Thesaurus Construction for Chinese News[A].Proceedings of 2001 IEEE International Conference on Systems,Man,and Cybernetics[C],Volume 2,2001,(10):853-858.