秦添軼 林蟬 宋博宇 關毅
摘 要:中文實體描述短文本具有詞語稀疏、語義離散、用詞等特點。本文分析《知網》義原網絡和詞語相似度的關系,提出了短文本間語義相似度部分和短文本分類部分相結合的實體描述短文本間相似度計算方法。語義相似度部分分析《知網》義原網絡和詞語間相似度的關系,在計算詞語間相似度和短文本間相似度的過程中弱化了淺層《知網》義原影響并均衡了義原權重,使義原相似度計算結果更加合理。短文本分類部分將短文本分解為義原向量,根據特定領域短文本的義原分布情況進行短文本分類。兩部分結合得到實體描述短文本間相似度。本文方法的有效性在百度知識圖譜數據分析競賽任務1的測試結果中得到了證明。
關鍵詞:實體描述短文本;文本分類;文本相似度;《知網》
中圖分類號:TP391 文獻標識碼:A 文章編號:2095-2163(2015-)02-
A Short Text Description Similarity Computation Method for Chinese Entities
QIN Tian-yi1, LIN Chan2, SONG Bo-yu2, GUAN Yi1
(1. School of Computer Science and Technology Harbin Institute of Technology, Harbin, Heilongjiang, 150001, China ;
2. School of Software Harbin Institute of Technology, Harbin, Heilongjiang, 150001, China ; )
Abstract: Short text description for Chinese entities has features of statistical sparsity, semantic discretization and irregular vocabulary. This research analyses the relationship between sememe network and word similarity in Hownet and presents a short text description similarity computation method that is consist of semantic similarity part and short text classification part. In the semantic similarity part, the method weakens the influence of Hownets shallow sememes and balances weights of sememes. In the short text classification part, the method transforms short texts into sememe vectors and classifies them according to the distribution of sememes in certain fields.Take average results of those two parts to generate short text description similarity. Effectiveness of the method is proved by task 1 of Baidu knowledge map analyzing competition.
Keywords: Short text description for Chinese entities;Text categorization;Text similarity;Hownet
0引言
中文實體是中文文本中名詞性詞匯或短語的統稱,本文處理的中文實體,包括電影、電視劇、電視節目、軟件應用、電子游戲和歌曲的名稱,在互聯網上常用短文本描述。一般認為,短文本是長度不超過200個字符的文本[1],具有詞語稀疏、語義離散和用詞隨意等特點[2]。實體的定義通常由實體描述短文本給出,實體描述短文本間的相似度即是對應的實體間相似度。短文本間相似度計算是近年來自然語言處理的研究熱點之一,被廣泛應用于信息檢索、反作弊系統、智能問答系統、智能推薦系統、文本自動分類、機器翻譯中。
文本間相似度計算方法大多通過統計分詞后文本的詞頻信息,將文本建模為向量,利用向量間余弦相似度、Jaccard相似度等方法計算文本相似度。文本間相似度也可以通過文本分類來近似。文本間相似度計算方法通常只考慮文本中單個詞語的統計特性而沒有考慮文本整體的語義特性,并在處理短文本時會生成稀疏的高維向量,容易出現語義漂移問題。
本文利用《知網》的語義知識資源和概念網絡,針對短文本特點,提出了短文本間語義相似度部分和短文本分類部分相結合的實體描述短文本間相似度計算方法。
1相關工作
1.1 《知網》
《知網》是一個以漢語和英語的詞語所代表的概念為描述對象,以揭示概念與概念之間以及概念所具有的屬性之間的關系為基本內容的常識知識庫[3]。詞語的語義在《知網》中通過一個或多個概念來描述,而每一個概念由義原來描述。義原是《知網》中最小的、不可再分割的語義單位,《知網》作者用1 600多個義原對8萬多個中文詞匯進行描述,義原的上下位關系為所有義原建立起一個包含多個子樹的多層義原網絡[4]。
1.2 基于《知網》的文本間語義相似度計算
義原間相似度的計算方法可以分為兩類:基于節點之間路徑長度的方法和基于節點之間共有信息大小的方法[5]。基于節點之間路徑長度的方法需要計算兩個節點在義原網絡上的最短距離,基于節點之間共有信息大小的方法需要計算兩個節點最近的共同祖先節點含有的子節點個數。許多學者已經在義原間相似度的問題上做了大量的研究,如劉群[4]、李峰[5]、吳健[6]、Dekang Lin[7]、Resnik[8]、江敏[9]等。詞語間相似度可由義原間相似度合成。
在文本間相似度計算方面,文獻[10]通過統計出兩個直接義原集合間的共有信息和差異信息來計算集合間的相似度,并把該方法引進到詞語間和句子間相似度的計算中去。文獻[11]基于向量空間模型,計算關鍵詞的語義相似度并采用最大權匹配方法計算兩個文本向量間的相似度。文獻[12]強調了除第一獨立義原以外其它義原的獨立性,用兩個文本中實詞間的相似度構成特征矩陣,遞歸刪除最大元素所在行、得到詞語最大組合序列進而計算句子間相似度和段落間相似度。文獻[13]在詞語間相似度中加入了主要義原對次要義原的抑制因素。
1.3 短文本間語義相似度計算
由于短文本具有詞語稀疏和語義離散的特點,其中包含的信息量有限。通過文本間相似度計算方法得到的短文本間相似度偏差較大。現有的短文本間語義相似度計算方法大多需要構建知識庫或利用已有的知識庫,這些方法的普適性普遍較差。
2實體描述短文本語義相似度計算方法概述
本文從短文本間語義相似度和短文本分類兩個部分出發計算實體描述短文本間相似度,并將兩部分相似度的平均值作為實體描述短文本間相似度計算的最終結果。
短文本間語義相似度部分首先根據《知網》義原網狀結構中的義原節點深度、義原子節點數量、義原節點間最短路徑長度等信息計算義原間相似度,再通過較小語義單位間相似度計算較大語義單位間相似度,逐步計算義項、詞語和短文本間相似度。
短文本分類部分將短文本分解為義原向量,再從分解為義原向量的網絡語料中抽取特征義原,訓練一個樸素貝葉斯分類器,并通過兩篇短文本的分類結果計算兩者之間的相似度。
3短文本間相似度計算方法的語義相似度部分
3.1 義原間相似度計算
本文分別采用基于節點之間路徑長度的方法和基于節點間共有信息大小的方法計算義原間相似度。基于節點之間路徑長度的方法以李峰[5]等人的公式為基礎:
(1)
其中,S1和S2表示兩個義原,distance(S1,S2)表示兩個義原在《知網》義原網狀結構上的最短路徑長度,depth1和depth2是兩個義原在義原網狀結構中各自所在的層次,即義原深度,是一個調節參數,代表Sim值為0.5時兩個義原的最短路徑長度。這個公式利用義原之間的上下位關系,以兩個義原在義原網絡上的路徑長度作為義原間相似度計算的基礎。
本文發現,在利用公式(1)進行義原間相似度計算時,義原深度較淺的葉節點義原參與的相似度計算結果普遍偏低,而義原深度較深的非葉節點義原參與的相似度計算結果普遍偏高。由于《知網》的義原形成的是一個網狀結構而不只是一顆義原樹,義原的絕對深度不能直接反應其相應的具體程度。本文提出”義原相對深度”的概念來表達義原的具體程度,義原相對深度可以通過義原深度和義原所在樹深度計算:
(2)
其中,depth1是義原在義原網狀結構中的深度,length(treeof(S1))是義原S1所在的子樹中,經過S1的根節點-葉節點路徑的最短長度。
本文提出基于節點之間路徑長度的公式:
(3)
這個公式可以平衡”event|事件”樹等深度較大的樹對相似度計算的影響,使位于深度較小的樹深層的義原也可以獲得較大的相似度值。
本文在Dekang Lin[7]的公式基礎上引入義原相對深度,得到基于共有信息的義原間相似度計算公式:
(4)
其中,p(S)表示兩個義原最近公共父節點的子節點個數與其所在義原樹中所有節點個數的比,p(S1)和p(S2)是兩個義原連接的節點個數與其所在義原樹中所有節點個數的比。deep(S1)和deep(S2)表示兩個義原用(2)式計算得到的相對深度。
本文將(3)式和(4)式結果的平均值作為義原間相似度計算的結果。
3.2 義項間相似度計算和詞語間相似度計算
《知網》中用于描述一個實詞義項的特征結構可以分為四個部分[4]:第一獨立義原描述式、其它獨立義原描述式、關系義原描述式和符號義原描述式。
兩個義項間的整體相似度可以表示為:
(5)
其中,βi(1≤i≤4)是用于調節四個部分權重的參數,且β1+β2+β3+β4=1。
不同義項包含的各類義原對描述義項起到的貢獻不同。《知網》中不同詞語所對應的義原數量差別很大,如果將四個部分的權重參數βi(1≤i≤4)設置為常數,會導致一定程度的偏差。
本文根據參與義項間相似度計算的兩個義項的義原分布情況,為其動態設置權重:
(6)
其中,ci(1≤i≤4)是兩個義項中四種義原的合計數量。
計算兩個詞語間的相似度時,本文把相應的義項兩兩結合,形成一個完全二分圖,計算二分圖每條邊上兩個頂點間的相似度,取相似度的最大值作為兩個詞語間的相似度。
3.3 短文本間相似度計算
本文用詞語間相似度計算短文本間相似度,采用文獻[12]的方法,建立起一個相似度特征矩陣,并通過詞語間相似度的最大組合序列計算文本間相似度。
在計算短文本間相似度時,本文統計《知網》中所有詞語的tf-idf值,利用參數來降低與高逆文本頻率詞、單字詞和多義項詞相關的相似度計算結果:
(7)
其中,c1、c2、c3分別是用于降低高逆文本頻率詞、單字詞和多義項詞參與的詞語相似度的參數。整句相似度由各集合加權平均得到。
4短文本相似度計算方法的短文本分類部分
本文將實體描述短文本分解為義原向量,根據短文本的義原分布情況為其分類,再根據分類結果計算實體描述短文本間相似度。短文本語義相似度方法和短文本分類方法輸出的相似度平均值即是實體描述短文本間相似度的最終結果。
4.1 用義原向量描述短文本
短文本分類部分用義原向量來表示短文本。本文采用文獻[14]提出了將文本根據義原系數分解為義原向量的方法,并結合文獻[15]的概念排歧方法。系統設計如圖1所示。
圖1 文本分解為義原向量流程圖
Fig.1 Flow chart of text transforming into sememe vector
4.2 特征抽取和模型訓練
為了得到一篇短文本屬于各個分類的概率并保持較高的計算效率,本文選擇樸素貝葉斯分類器來為實體描述短文本分類。研究將每個實體的描述短文本按4.1的方法整理為義原向量。考慮到非葉節點義原的表意模糊,本文從義原向量中刪除所有非葉節點義原。
生成義原向量之后,本文需要在葉節點義原中抽取出n個適用于分類的義原作為分類特征。文獻[16]提出了四種特征抽取方法:文檔頻率、信息增益、CHI統計和互信息。本文選擇信息增益(IG)法、χ2統計量(CHI)法和互信息(MI)法作為特征選擇的方法。當一個義原的信息增益、CHI值和互信息均大于特定閾值時,這個義原作為表達文本的特征。
本文將每個文本表示為一個n維特征向量,X={x1,x2,......xn},其中xi表示文本中對應義原的出現次數,以九類電影簡介信息生成的特征向量作為訓練集,建立樸素貝葉斯分類模型。
4.3 相似度計算
本文通過樸素貝葉斯分類模型,計算兩篇短文本屬于每一個類別ci的后驗概率P(ci|X),并將其整理為向量形式:Y1=(c1first,p1first,c1second,p1second)和Y2=(c2first,p2first,c2second,p2second)。
其中,cfirst為特征向量在樸素貝葉斯分類器中后驗概率最高的分類,cfirst為其所對應的后驗概率,csecond為特征向量在樸素貝葉斯分類器中后驗概率次高的分類,psecond為其所對應的后驗概率。通過向量Y1和Y2計算短文本間相似度的方法如表1所示。
表1 通過短文本向量計算相似度值
Tab.1 Calculate similarity value using vectors of short text
條件
相似度值
c1first=c2first
max(c1first,c2first)
c1second=c2first
c1second*c2first
c1first=c2second
c1first*c2second
c1second=c2second
0.8*c1second*c2second
其它
0.1
5.實驗及結果分析
本文的實驗建立在百度知識圖譜數據分析競賽任務一:實體相似度計算的基礎之上,并以其評測結果為基準。百度知識圖譜數據分析競賽給出的數據集包括11 463組實體屬性數據和8 001組實體間相似度數據。參與實驗的實體描述文本平均長度約為159字。
本文用8 001組實體間相似度數據進行訓練并通過機器學習得到相似度計算模型,再用來為1 991組測試數據進行打分。本文方法給出的相似度評分Sc將與百度給出的人工標注結果Sm進行對比,計算相似度評分向量(Sc1,Sc2,......Sc1991)和標注結果(Sm1,Sm2,......Sm1991)的歐氏距離,最終測試結果表示為:
(8)
短文本間語義相似度計算公式(7)的參數設置如表2所示。
表2實驗中公式(7)的參數設置情況
Tab.2 Parameter of Eq.(7) in experiment
參數名
參數意義
取值條件
參數值
c1
降低tf-idf值較低詞語參與的相似度計算結果
tf-idf(w1)>α且tf-idf(w2)>α
1
tf-idf(w1)<β且tf-idf(w2)<β
0.5
其它
0.8
c2
降低單字詞語參與的相似度計算結果
w1或w2是單字詞
0.9
其它
1
c3
降低多義項詞語參與的相似度計算結果
w1和w2都是多義項詞
0.9
其它
1
為了證明方法的有效性和短文本分類部分的必要性,本文對短文本間語義相似度的計算結果和兩種方法結合后的計算結果分別進行測試,測試結果如表3所示。
表3 語義相似度方法和語義相似度、短文本分類綜合方法的實驗結果
Tab.3 Result of semantic similarity method and synthetic method of semantic similarity and short text classification
方法
D值
排名
語義相似度方法
26.31
26
語義相似度、短文本分類綜合方法
24.80
5
兩種方法的綜合結果得到了較小的D值,證明短文本分類方法有效地提高了實體描述短文本相似度計算的準確率。
6結束語
本文提出了基于分類和語義網的實體間相似度計算方法,利用《知網》的語義網絡資源,提出了自己的義原間相似度、詞語間相似度、短文本間相似度表達式;并將短文本分解為義原向量,根據短文本的義原頻率分布訓練文本分類器,并通過分類結果計算兩個文本間的相似度,最后在實驗中分析驗證了模型的有效性。
參考文獻:
[1] 柴春梅.互聯網短文本信息分類關鍵技術研究[D] 上海,上海交通大學,2009.
[2] 路榮,項亮,劉明榮,楊青. 基于隱主題分析和文本聚類的微博客中新聞話題的發現[J]. 模式識別與人工智能,2012,25(3):382-387.
[5] 董振東,董強.知網[DB/OL].[2011-06-23].http://www.keenage.com.
[4] 劉群,李素建.基于《知網》的詞匯語義相似度計算[C]//第三屆漢語詞匯語義學研討會論文集.臺北:[s.n.],2002:59-76.
[5] 李峰,李芳.中文詞語語義相似度計算——基于《知網》2000[J].中文信息學報,2007,21(3):99-105.
[6] 吳健,吳朝暉,李瑩,等.基于本體論和詞匯語義相似度的Web服務發現[J].Chinese Journal of Computers,2005,28(4).
[7] LIN Dekang. An information-theoretic definition of similarity semantic distance in WordNet[C]//Proceedings of the Fifteenth International Conference on Machine Learning.San Francisco, CA:[s.n.],1998.
[8] RESNIK P. Using information content to evaluate semantic similarity in a taxonomy[J]. arXiv preprint cmp-lg/9511007, 1995.
[9] 江敏,肖詩斌,王弘蔚,施水才.一種改進的基于《知網》的詞語語義相似度計算[J].中文信息學報,2008,22(5):84-89.
[10] 劉青磊,顧小豐.基于《知網》的詞語相似度算法研究[J].中文信息學報,2010,24(5):31-36.
[11] 朱征宇,苑昆峰,陳杏環.一種基于最大權匹配計算的信息檢索方法[J].計算機工程與應用,2007,43(33):176-179.
[12] 金博,史彥軍,滕弘飛. 基于語義理解的文本相似度算法[J]. 大連理工大學學報,2005,45(2):291-297.
[13] 李培. 基于《知網》的文本相似度研究[D]. 天津:河北工業大學,2012.
[14] 蘇偉峰,李紹滋,李堂秋.一個基于概念的中文文本分類模型[J].計算機工程與應用,2002,38(5):193-195.
[15] 蘇偉峰. 基于概念的文本自動分類研究[D].廈門:廈門大學,2002.
[16] 代六玲,黃河燕,陳肇雄. 中文文本分類中特征抽取方法的比較研究[J].中文信息學報,2014,18(1):26-32.
1 作者簡介:秦添軼(1993-),男,黑龍江哈爾濱人,主要研究方向:自然語言處理、智能化信息檢索。