裴 培,丁雪晶
(安徽三聯(lián)學(xué)院 計算機工程學(xué)院, 合肥 230601)
伴隨著Internet的飛速發(fā)展、網(wǎng)絡(luò)資源的爆炸式增長,人們對于Web信息的獲取提出了更高的要求。一方面,用戶對信息獲取的準(zhǔn)確性、系統(tǒng)性越來越難;另一方面,由于語義的異構(gòu)特征,利用關(guān)鍵詞實現(xiàn)的簡單匹配,缺失了有針對性的語義信息和數(shù)據(jù)關(guān)聯(lián),缺少對用戶意圖的精準(zhǔn)推測,因而導(dǎo)致了“信息孤島”現(xiàn)象。諸如此類的“差異化表達(dá)”,無法滿足用戶從信息到知識層面探索的深層次體驗。因此,能夠?qū)ξ谋具M(jìn)行自動化的處理與檢索是人們一直關(guān)注的話題。語義相似度作為機器學(xué)習(xí)、自然語言處理領(lǐng)域的底層框架,在過去的20年里發(fā)展迅速,成果豐富。其中利用本體解決語義層面的信息共享問題,成為該領(lǐng)域的一個核心研究方向。通過總結(jié)經(jīng)典方法、梳理匯報最新研究成果,對于完善基于本體的語義相似度研究進(jìn)展具有重要應(yīng)用價值。
相似性最早出現(xiàn)于心理學(xué)領(lǐng)域,是人對兩類對象進(jìn)行比較而產(chǎn)生的認(rèn)知反應(yīng)。這種反應(yīng)是人對對象進(jìn)行感知體驗后進(jìn)行定性的比較,而非定量的表示。[1]
Dekang L.認(rèn)為任何兩個對象的相似度取決于它們的共性(Commonality)和差異性(Differences)。即兩個對象的共性越多,相似度越大;兩個對象的差異性越大,相似度越小。借助數(shù)據(jù)挖掘中二維數(shù)據(jù)特征向量的表達(dá)形式,建立一個對象-屬性結(jié)構(gòu)數(shù)據(jù)矩陣(n個對象被p個屬性刻畫,其中xij是對象xi的第j個屬性的值,如公式(1)所示),可以從中得到任意兩個數(shù)據(jù)對象之間的相似性矩陣(公式(2))。
(1)
(2)
用Sim(i,j)來表示對象i和j的相似度,用Dis(i,j)表示兩者的相異度(即語義距離)。如果兩個對象i和j不相似,則Sim(i,j)=0;如果相似性值越高,那么對象之間的相似性越大(典型的,值1表示完全相似,即對象是等同的)。而語義距離的求解反之。[2]具體分析如下:
(1)當(dāng)Sim(i,j)=1時,Dis(i,j)=0,即兩個語義對象之間完全相似;
(2)當(dāng)Sim(i,j)=0時,Dis(i,j)則趨向于無窮大,表示兩個語義對象之間完全不相似或不相關(guān);
(3)語義距離的值是非負(fù)的,當(dāng)對象i和j彼此高度相似時,Dis(i,j)接近于0;
(4)相似度和語義距離的對應(yīng)關(guān)系還可以歸納為:Sim(i,j)=α/Dis(i,j)+α,α為調(diào)節(jié)因子,用來調(diào)節(jié)相似度的取值。
本體論最先起源于哲學(xué)領(lǐng)域。柏拉圖認(rèn)為本體就是理念,康德認(rèn)為的本體是“自在之物”。[3]本體可以被看作是一個客觀存在的元系統(tǒng),用于解釋或說明。[4]Gruber給出的本體定義為: Ontology是概念模型的明確的規(guī)范說明。[5]Studer在Gruber基礎(chǔ)上提出“Ontology是共享概念模型的明確的形式化規(guī)范說明”,其中包括四個層面[6,7]:概念模型(conceptualization)、明確(explicit)、形式化(formal)和共享(share)。
在語義相似度的研究范疇中,本體是由概念組成的高級描述,是表述特殊知識領(lǐng)域的形式化語言。如圖1所示,這是一個以WordNet為基礎(chǔ)的一個概念分類體系片段。[8]實線代表概念之間屬于 “is-a”關(guān)系,虛線連接的是省略了部分中間節(jié)點的概念集合。在這個分類中, “5分硬幣”概念節(jié)點和“1角硬幣”概念節(jié)點都位于“硬幣形式”概念節(jié)點下方,進(jìn)一步歸納得出:“5分硬幣”和“信用卡交易”這兩個概念子節(jié)點共享了一個特定的父節(jié)點“交易媒介”。在以概念特征為背景的本體劃分體系中,還可以進(jìn)一步歸納“5分硬幣”節(jié)點和“1角硬幣”概念節(jié)點共性特征,兩種都是外形上小巧、圓形、金屬材質(zhì)的貨幣,兩個節(jié)點作為子節(jié)點共同隸屬于“硬幣形式”這個父節(jié)點。
圖1 WordNet概念分類體系片段
本體借助樹形結(jié)構(gòu)來表征概念之間的語義關(guān)系。樹中節(jié)點表示概念,邊表示概念節(jié)點之間的關(guān)系。具體來說,較為寬泛的概念的節(jié)點處于樹中較高的位置,周圍節(jié)點相對稀疏。[9]較為具體的概念節(jié)點處于樹中較低位置或末端,周圍節(jié)點稠密。梳理相關(guān)研究,發(fā)現(xiàn)本體結(jié)構(gòu)對文本相似度影響包括以下5點因素:[10]
表1中描述的本體結(jié)構(gòu)分類片段如圖2—圖5所示。
表1 不同本體結(jié)構(gòu)對語義相似度的影響
圖2 節(jié)點間概念深度比較
圖3 節(jié)點間概念密度比較
圖4 連接概念節(jié)點中間路徑類型
圖5 有向邊關(guān)聯(lián)強度
國內(nèi)外學(xué)者在語義相似度領(lǐng)域已經(jīng)形成了較為成熟劃分體系和研究成果,本文參照Hlianoutakis[12]、Batet[13]等的研究,結(jié)合陳二靜[14]等文本相似度綜述劃分體系,將基于本體的語義相似度計算為4種:基于距離的語義相似度計算、基于內(nèi)容的語義相似度計算、基于屬性語義計算相似度和混合方法。
基于距離的語義相似度計算方法是通過測量兩個概念節(jié)點在本體層次樹中的位置,以路徑長度的方式體現(xiàn)差異。路徑越短,相似度越大;路徑越長,相似度越小。后期稱之為“利用最短路徑(Shortest Path)計算文本相似度的模型”。Rada利用本體的層次結(jié)構(gòu)中兩個概念詞的距離來表征相互之間的語義距離[15]。計算公式如下(3):
(3)
該算法的計算復(fù)雜度相對較小,缺陷是大部分均未考慮邊的類型影響因素,算法成立的前提是假設(shè)“本體分類體系中所有邊的距離權(quán)重相等”。此外,結(jié)合前文所提,邊的重要性還會受到位置信息、所表征的關(guān)聯(lián)強度等因素的影響。Hao[16]等提出從概念距離和概念深度兩方面計算相似度,但缺少對同一層次的最小公共父節(jié)點相似度結(jié)果的對比計算,算法準(zhǔn)確性有待進(jìn)一步探索。
Wu和Palmer[17]法是基于最近公共父節(jié)點的位置關(guān)系計算語義相似度。Leacock和Chodorow[18]法在最近公共父節(jié)點基礎(chǔ)上加入了本體樹深度對被比較概念詞相似度的影響。Hirst-Stonge[19]法取而代之先前的概念關(guān)系,轉(zhuǎn)而針對路徑的方向因素,其認(rèn)為:如果兩個概念節(jié)點路徑越短,且遍歷過程中較少改變路徑方向,則這兩個概念節(jié)點語義相關(guān)度高,但計算結(jié)果顯示并不理想。
Yang和Power[20]法提出基于本體結(jié)構(gòu)中有向邊關(guān)系的語義相關(guān)度計算方法,有向邊關(guān)系包括:“is a”“equivalence”和“part of”關(guān)系。設(shè)計了BDLS和UBFS兩種搜索算法和兩種語義相關(guān)度計算方法,由于該算法的實現(xiàn)需要涉及到7個可以自由參數(shù),因而不穩(wěn)定。
基于內(nèi)容的方法是將信息熵的計算與本體關(guān)系相結(jié)合?;舅枷霝椋焊拍钪g共享信息越多,熵越小,相似度越大。共享的信息內(nèi)容通過共有的父節(jié)點信息量計算表示。因為在本體中子節(jié)點往往是其上一層父節(jié)點的細(xì)化,故在整個樹形結(jié)構(gòu)中任意一個子節(jié)點的信息內(nèi)容能夠反映其所有的祖先節(jié)點的信息內(nèi)容[21]。單個概念節(jié)點信息量的計算公式(4)如下:
(4)
在本體中計算任意兩個節(jié)點之間的相似度公式(5)如下:
(5)
Lord[22]和Resnik[8]等提出基于最近公共父節(jié)點概念詞的出現(xiàn)頻率和信息量來計算節(jié)點詞對間的相似度。Lin[23]法還考慮到當(dāng)兩個概念詞同屬于一個本體時,還應(yīng)考慮概念詞自身所包含的信息內(nèi)容,即既考慮到被比較概念詞之間的共享信息熵也考慮到兩個概念自身的信息熵之和,通過二者比值進(jìn)行相似度求解。Jiang和Conrath法[24]直接通過對語義距離的計算來表征被比較概念詞間的相似度,并加入了對結(jié)構(gòu)密度、節(jié)點深度、連通路徑類型等因素的考慮。榮河江[25]等利用基因本體攜帶的語義關(guān)系、基因產(chǎn)物屬性,改進(jìn)了基于信息量的計算方法,將信息量均值納入考慮,在Li方法的基礎(chǔ)上做了拓展,實驗結(jié)果進(jìn)一步提升。
基于屬性的方法針對兩個概念對應(yīng)的屬性集進(jìn)行相似度計算。該方法的計算效果依賴于本體屬性集的完備性。兩個概念間共有更多的相同屬性,則相似度更高,反之概念間不同屬性越多,相似度降低。Tversky[26]算法從屬性角度研究兩個概念之間的語義相似度,計算模型如下公式(6):
Sim(c1,c2)=Xf(c1∩c2)-Yf(c1-c2)-Zf(c2-c1)
(6)
該模型從屬性的角度出發(fā),綜合比較了兩個概念之間的共同屬性(f(c1∩c2)的返回值)和不同屬性((c1-c2)和(c2-c1))。利用相同的屬性增加概念間的相似度,不同的屬性減少概念間相似度進(jìn)行計算。該算法的特點在于屬性的選擇,但缺乏對數(shù)據(jù)類型屬性的區(qū)分,沒有考慮被比較概念詞的位置信息、以及祖先節(jié)點和所包含信息內(nèi)容。
楊方穎[27]等在Tversky算法模型基礎(chǔ)上,綜合了距離和信息量兩種算法的優(yōu)點,加入了層次特征和屬性特征的度量來進(jìn)行相似度計算。
混合方法是對上面所有方法的綜合。代表算法有:Li[28]法同時考慮了考慮路徑長度、概念深度、概念密度等要素,算法參數(shù)是基于經(jīng)驗值,缺乏理論基礎(chǔ),并不能完全適應(yīng)到其他的本體中。史斌[29]等提出基于圖理論和信息論兩種方法結(jié)合的語義相似度計算方法。利用兩個概念的路徑長度、局部密度結(jié)合連接路徑權(quán)重和信息量來度量相似度,但該算法主要是基于“is-a”語義關(guān)系。鄭志蘊[30]等提出一種自適應(yīng)相似度綜合加權(quán)計算方法(ACWA),基于信息內(nèi)容、距離、屬性的相似度改進(jìn)計算方法,并采用主成分分析方法解決加權(quán)計算時人工賦權(quán)的不足的問題。該方法有效提升了本體語義相似度計算的準(zhǔn)確性。張滬寅[31]等提出一種改進(jìn)的綜合加權(quán)的相似度計算算法(PRSSC),在共享路徑重合度的基礎(chǔ)上綜合加權(quán)概念節(jié)點密度、深度、最低共同祖先節(jié)點深度以及概念的屬性,在解決各種多繼承問題的基礎(chǔ)上,進(jìn)一步提高計算準(zhǔn)確度。賀元香[32]等提出一種改進(jìn)的本體語義相似度計算方法,在本體結(jié)構(gòu)類型的計算中加入了深度、密度、寬度三種權(quán)重因子,并且綜合考慮語義重合度,語義距離對相似度的影響。徐英卓[33]等提出利用樹層次結(jié)構(gòu)特征表征本體間的關(guān)系,計算基于實例的概念相似度。該方法建立在領(lǐng)域本體的模型基礎(chǔ)上,利用重構(gòu)的本體樹反映本體間的映射關(guān)系。甄亞亞[34]等提出了一種基于領(lǐng)域本體樹狀結(jié)構(gòu)的相似度改進(jìn)算法,將本體樹結(jié)構(gòu)分為上下位兩個分層,在計算中綜合考慮語義距離與重合度、節(jié)點深度與密度,并結(jié)合加權(quán)計算對節(jié)點密度因子、語義重合度因子做了進(jìn)一步改進(jìn)。張思琪[35]改進(jìn)了基于信息量的計算方法,基于WordNet中概念結(jié)點的深度和下位詞提供的語義信息,并綜合考慮了Shortest Path以及IC語義距離,并設(shè)計了基于圖形用戶界面的交互系統(tǒng),實現(xiàn)了對某個單詞的上位詞或下位詞的查詢。許飛翔[36]等利用模擬退火改進(jìn)神經(jīng)網(wǎng)絡(luò)的算法實現(xiàn)了對本體概念的映射和集成,設(shè)立的具有全局指標(biāo)性能的本體樹,解決了信息交互上的語義異構(gòu)問題。
基于距離的方法直觀、易于理解、具有較低的時間復(fù)雜度,對于小規(guī)模的本體結(jié)構(gòu)具有一定的實用價值。當(dāng)面對復(fù)雜結(jié)構(gòu)大型本體時,因其較少對本體特征的關(guān)注,導(dǎo)致忽略結(jié)構(gòu)中存在的多種繼承性以及其他相似度的影響因素(公共父節(jié)點的分布與數(shù)量等),算法效果不是很突出。此外,該方法較多的依賴于本體結(jié)構(gòu)的完備性和覆蓋力,適用于WordNet這種大型專業(yè)的通用本體庫。[11]
基于內(nèi)容的方法依托于大規(guī)模語料庫的統(tǒng)計,結(jié)果相對比較客觀,能夠體現(xiàn)概念之間的相異性。但同時存在一些缺陷:第一,單純依靠信息熵作為判斷條件,往往會忽略其他影響因素例如本體自身結(jié)構(gòu)(概念節(jié)點密度與深度、路徑邊的關(guān)聯(lián)性和強度等),造成計算結(jié)果的準(zhǔn)確性下降。第二,計算需要統(tǒng)計概念詞的所有下位節(jié)點或下位樣子節(jié)點總數(shù),而在大數(shù)據(jù)環(huán)境下,一部分概念詞會受到“維度詛咒”影響,數(shù)據(jù)量呈現(xiàn)指數(shù)級增長,而一部分概念詞會受到形成“稀疏數(shù)據(jù)”現(xiàn)象,因此統(tǒng)計結(jié)果的精確度有待考量。此外,當(dāng)針對新的應(yīng)用領(lǐng)域建立領(lǐng)域本體時,其語料庫的完備性不足,算法難以推進(jìn)實施。
基于屬性的方法存在兩個突出問題:一是該算法的建立依賴于領(lǐng)域語料庫的規(guī)模和候選概念的詞頻,用于區(qū)分概念詞之間的相同屬性與不同屬性,除卻大型通用本體一般本體無法到達(dá)相應(yīng)的信息量;二是調(diào)節(jié)參數(shù)。不同本體下參數(shù)設(shè)置有所差異,因此限制了此算法的普適性。
混合方法由于考慮的因素較多,相對計算效果較好。但是在計算過程中較多依賴于附加信息因素,因此不能從根本上克服基于方法的局限性。[37]
任何一種算法的選擇因研究需求、具備的條件和實用場景而各異。從算法原理到模型實踐,從基于規(guī)則的理性主義(人工建模、基于規(guī)則體系的知識庫)到基于統(tǒng)計的經(jīng)驗主義(語料庫)。伴隨著自然語言處理技術(shù)的深入研究,信息的飛速發(fā)展,新的知識體系亟待進(jìn)一步完善,相似度的研究還存在以下幾點問題,值得深入思考與探究:
(1)本體的映射與更新。由于領(lǐng)域?qū)<抑R背景的差異,導(dǎo)致同一領(lǐng)域產(chǎn)生不同的本體。隨著信息的不斷變化,已構(gòu)建好的本體也需要適應(yīng)性的更新。本體的映射與更新,能夠有效解決上述問題。[38]本體更新方法大致可以分為人工添加和自動添加。依靠人工添加的方法效率低、易出錯,因此,應(yīng)當(dāng)關(guān)注本體的自擴展與自動化建設(shè),關(guān)注基于語義相似度的本體概念的自動更新算法。
(2)本體的異構(gòu)性與跨本體語義相似度研究。網(wǎng)絡(luò)信息資源分散性提高了本體的使用頻率,同時也使得同一領(lǐng)域里存在多個形式的本體,這種本體異構(gòu)性影響了實際計算的準(zhǔn)確率。同時,單一本體的計算并不能滿足研究與應(yīng)用的需求,相似性的計算可以在單一本體結(jié)構(gòu)內(nèi)的完成,也可以在本體之間實現(xiàn)。因此,應(yīng)當(dāng)加強跨本體、異構(gòu)本體的語義相似度相關(guān)研究。
(3)網(wǎng)絡(luò)資源背景下的相似度計算所面臨的挑戰(zhàn)。網(wǎng)絡(luò)資源為相似度計算提供了大規(guī)模語料庫,新型的Web信息組織結(jié)構(gòu)與表征也將應(yīng)用到文本的相似度計算之中。但現(xiàn)實的問題是,在小數(shù)據(jù)集規(guī)模中本體研究表現(xiàn)穩(wěn)定,而經(jīng)過累加詞語相似度獲得長文本相似度,則突顯出計算效率較低的問題。因此,需要關(guān)注數(shù)據(jù)挖掘領(lǐng)域機器學(xué)習(xí)的相關(guān)方法,例如監(jiān)督學(xué)習(xí)、詞向量的文本表示等,將本體中的概念與網(wǎng)絡(luò)知識詞條進(jìn)行匹配,以便充分挖掘完善語義信息。
(4)混合方法突破創(chuàng)新,日漸豐富。在進(jìn)行相似度計算的過程中,單一的計算方法容易導(dǎo)致計算結(jié)果非線性偏高。例如,基于WordNet結(jié)構(gòu)的計算方法受到人工的主觀影響較大,基于信息量的方法受到語料庫的影響較大,在某些特定領(lǐng)域,語料庫的質(zhì)量決定相似度計算的精確度。因此,多種方法的融合能在一定程度上彌補單一方法的不足,提供基于本體的語義相似度計算方法的準(zhǔn)確性,而這種方法的融合需要根據(jù)具體任務(wù)選擇相應(yīng)的算法并進(jìn)行加權(quán)和回歸。
(5)領(lǐng)域之間的融合與探索。任何一種算法都不可能解決所有問題,每個算法都有針對性。因此,加強跨學(xué)科領(lǐng)域的交流、領(lǐng)域?qū)<业暮献?,能夠促進(jìn)跨領(lǐng)域本體的集成與融合,并對相似度的計算提供更有價值的方法與思路。