楊韋潔+高瓏+蘇靜
〔摘要〕針對傳統(tǒng)數(shù)字圖書館中基于關鍵字的P2P查詢擴展存在對用戶檢索詞語義信息解釋不足的缺陷,本文提出一種P2P環(huán)境下基于語義的節(jié)點查詢擴展方法,通過把關鍵字關聯(lián)表和本體相結(jié)合,實現(xiàn)了一種個性化查詢擴展方法,同時利用這種擴展方法實現(xiàn)P2P中基于興趣網(wǎng)絡的搜索,能夠較大幅度提升檢索效率。
〔關鍵詞〕P2P;語義擴展;關鍵字關聯(lián)表;數(shù)字圖書館
隨著信息技術的發(fā)展,數(shù)字圖書館的規(guī)模不斷擴大,文本、視頻、音頻等流媒體資源急劇擴充,網(wǎng)絡規(guī)模也不斷擴大。為了解決傳統(tǒng)客戶機/服務器網(wǎng)絡結(jié)構(C/S,Client/Server)在應對數(shù)字圖書館日益龐大的存儲量和傳輸量帶來的讀者檢索體驗遲滯、傳輸速度緩慢的影響,點對點(P2P,Peer to Peer)技術被越來越廣泛的應用在數(shù)字圖書館中,讀者對建立在這種技術之上的數(shù)字圖書館檢索性能的要求也越來越高,而查詢擴展作為信息檢索中的一個重要環(huán)節(jié),對于改善信息檢索中查全率和查準率非常重要。不同于C/S結(jié)構,由于非結(jié)構化P2P網(wǎng)絡具有動態(tài)、完全分布式結(jié)構的優(yōu)點,它在數(shù)字圖書館檢索的應用雖然比較廣泛,但仍然具有以下兩類問題:(1)P2P中同樣存在“詞典問題”,即由于大多數(shù)用戶提交的查詢詞都是短詞,會出現(xiàn)缺少上下文信息而存在語義歧義現(xiàn)象;同時由于自然語言大量同義詞的存在,很可能會導致用戶所需要結(jié)果漏檢。(2)傳統(tǒng)的基于關鍵字的查詢擴展會把與用戶檢索詞不相似而相關的結(jié)果漏檢也就是缺乏相關性推理機制,如,“醫(yī)生”和“疾病”兩個詞語,盡管相關性很高,但由于其相似性非常低,所以經(jīng)常被漏檢。上述問題歸結(jié)為一點,就是缺乏對讀者檢索關鍵字進行必要的語義信息和推理信息解釋。然而雖然之前的基于語義查詢擴展方法能夠通過本體所提供的良好的層次化結(jié)構和推理機制在概念層次上對P2P中節(jié)點用戶的查詢關鍵詞進行必要的解釋和推理,但這種語義擴展方式下,由于本體庫構建后是靜態(tài)的,難以適應對新詞或未收錄詞的擴展需求。為了避免上述問題,本文提出一種改進方法,即將關鍵字關聯(lián)表和本體技術相結(jié)合,該方法首先利用節(jié)點本地本體庫擴展檢索詞,然后采用歷史查詢記錄中的關鍵字關聯(lián)表再次對原始檢索詞進行擴展,最終對擴展結(jié)果進行權重更新,根據(jù)權重值從大到小輸出擴展結(jié)果,以提高讀者對檢索結(jié)果的滿意程度。
1相關理論基礎
11查詢擴展方法
“查詢擴展”概念的提出,最早可以追溯到1986年,學者Van Rijsberge[1]指出“僅限于原查詢詞來提高系統(tǒng)的檢索性能是有限的,必須對原查詢進行修改以提高檢索性能”,同時他還指出,查詢擴展主要涉及原查詢詞的權重修改和加入與原查詢相關的詞。目前通過對現(xiàn)有大量國內(nèi)外文獻研究發(fā)現(xiàn),不同學者從不同角度對查詢擴展方法進行了研究,主要分為3個階段:①基于關鍵字的查詢擴展技術。這一階段又按照擴展詞來源不同有全局分析、局部分析、基于關聯(lián)規(guī)則分析、基于用戶查詢?nèi)罩痉治鲆约吧鲜龇椒ǖ娜我饨M合[2-3]。后來學者Song Jin等人[4]指出可以使用標簽共現(xiàn)的方法發(fā)現(xiàn)擴展詞。上述這些方法都是在符號匹配層次上進行的擴展,忽略了查詢語義及查詢概念之間的語義關聯(lián),因而沒有充分表達和擴展用戶查詢意圖,也就不能從根本上消除用戶查詢意圖與檢索結(jié)果之間的語義偏差和用戶查詢的歧義性問題,同時會出現(xiàn)查詢漂移問題。②語義擴展階段。該階段主要是把本體技術或概念圖等引入到查詢擴展中,解決了對初始查詢詞語義信息的充分挖掘。雖然語義擴展能夠清晰的表達用戶檢索詞相關信息,但是單獨使用語義擴展的缺陷也是比較明顯的,例如,靜態(tài)性或非即時性以及語料庫無關性。③前兩個階段的融合。這時的研究目的是為用戶提供個性化的查詢擴展,使用的方法包括語義擴展與用戶興趣模型相結(jié)合、語義擴展與關聯(lián)規(guī)則相結(jié)合、語義擴展與局部共現(xiàn)分析或互信息相結(jié)合、上下文感知矩陣與本體相結(jié)合、概念圖與知網(wǎng)相結(jié)合、語義擴展與社會標簽相結(jié)合等。
目前P2P中查詢擴展主要有兩大類:基于關鍵詞的查詢擴展和基于語義的查詢擴展。目前基于關鍵詞的查詢擴展研究主要是根據(jù)節(jié)點用戶歷史記錄進行查詢擴展,具體又有兩種方式:①分析用戶歷史查詢記錄,建立查詢關鍵詞與文檔用詞之間的關聯(lián)關系,為下一次擴展提供候選詞依據(jù)[5-6];②分析用戶歷史記錄,建立查詢關鍵詞與文檔之間的關聯(lián)關系,可以對傳統(tǒng)局部上下文分析技術進行改進[6]。而P2P中基于語義的查詢擴展根據(jù)語義的表現(xiàn)形式不同,分為兩種方式:①基于LSI的查詢擴展方法,其主要思想是借助于LSI分別進行本地和遠程擴展解決同義詞問題,通過對兩個擴展查詢結(jié)果的集合操作解決P2P中存在的查詢擴展問題[7];②基于本體的查詢擴展方法,主要是指節(jié)點用戶根據(jù)語義詞典建立本體庫[8]或利用大眾標簽建立本體庫,據(jù)此進行查詢擴展。
綜上所述,可以看出現(xiàn)有P2P中的查詢擴展基本上都是把關鍵字擴展和語義擴展人為地割裂開了,沒有把兩者相結(jié)合起來使用。適應于P2P環(huán)境的關鍵字擴展主要是利用節(jié)點關鍵詞關聯(lián)表進行查詢擴展,但這只是根據(jù)節(jié)點的歷史查詢記錄擴展,缺乏查詢詞的語義性擴展。而P2P中基于語義的查詢擴展難以適應對新詞或未收錄詞擴展的需求。因此,隨著科學技術的發(fā)展和理論研究的深入,網(wǎng)絡的普及和文化交流的日益密切,新詞不斷涌現(xiàn),盡管節(jié)點本體也在不斷地更新發(fā)展,但是仍然很難跟上應用的腳步。
2基于關鍵字關聯(lián)表和本體的查詢擴展
為了解決上述問題,本文提出了一種新的語義查詢擴展方法,即將關鍵字關聯(lián)表和本體技術相結(jié)合應用到P2P查詢擴展中,來彌補單獨使用基于本體查詢擴展的缺陷。關鍵字關聯(lián)表建立在每一個節(jié)點上,通過記錄該節(jié)點歷史成功查詢記錄,使初始檢索詞與最終成功檢索用詞發(fā)生關聯(lián)關系,下一次將該成功檢索用詞直接作為擴展候選詞使用。這種方法也是為用戶提供個性化檢索的一種途徑。通過該方法可以快速適應新環(huán)境的變化,彌補利用本體進行查詢擴展的不足。
21關鍵字關聯(lián)表的建立endprint
關鍵字關聯(lián)表(如圖1所示)是根據(jù)節(jié)點用戶歷史查詢記錄,為每一個節(jié)點建立一個關鍵字關聯(lián)表,每個節(jié)點僅存儲本地節(jié)點的關鍵字關聯(lián)表信息,相當于一個同義詞詞典,只是它是根據(jù)節(jié)點的歷史記錄建立的,在搜索時可以作為查詢擴展的依據(jù)。關鍵字關聯(lián)表的構建主要有兩種方法,一種建立用戶輸入的初始檢索詞和最后一個成功檢索詞之間的關聯(lián)關系,另一種是建立用戶檢索詞與成功檢索的結(jié)果文檔所使用的標引詞之間的關聯(lián)關系。(如圖2所示)本文使用的關鍵字關聯(lián)表的構建采用的是后者。也即將查詢詞空間(用戶檢索詞)與目標文檔標引詞空間(成功檢索的結(jié)果文檔所使用的標引詞)直接關聯(lián)起來,建立查詢單詞與目標文檔標引詞之間的關聯(lián)關系,其中關聯(lián)權重可作為選擇查詢擴展詞排序輸出的依據(jù)。
22語義擴展架構
利用本地本體庫對節(jié)點查詢詞進行初步擴展,然后利用該節(jié)點的歷史查詢記錄對初次擴展結(jié)果進行再次擴展合并,去掉一些語義相關但實際查詢不相關的擴展分支,同時對概念樹上各個節(jié)點的權值進行修正,只有滿足一定權值要求的概念才會被最終選中加入查詢,同時使得滿足一定要求的只在歷史記錄集中出現(xiàn)的詞也能夠被選中加入到最終的查詢詞中。這種結(jié)合的算法克服了單獨算法的弊端,提供更好的查詢質(zhì)量。首先,可以過濾一些語義上相關但與實際的文檔集合不符合的擴展詞,提高查準率和查詢效率。另外,使用這種算法能夠向查詢擴展詞集中添加語義概念樹上沒有收錄的擴展詞。
基于本體的語義擴展,核心任務是一系列語義推理——同義擴展、語義蘊含、外延擴展及語義相關擴展。本文采用如下方法選取擴展詞,并賦予擴展詞權值。
定義1基于本體的語義擴展候選詞集:利用語義詞典WordNet為初始查詢詞構造概念樹。記為CForest{SenseTree1,SenseTree2,…,SenseTree n},其中,SenseTree i表示由查詢詞的一個詞義生成的概念樹。根據(jù)各個詞在概念樹中的位置定義的權重,反映在語義方面是擴展詞和初始查詢詞的緊密程度。記為WeightSem(Concepti)=1/distance(Root,Concept),其中Root是初始查詢詞,distance(Root,Concepti)是從初始查詢詞到Concepti的最短距離。
定義2關鍵詞擴展候選詞集:記為StaCandidates{T1,T2,…,Tm},是與初始查詢詞最相關的m個候選查詢詞。按照條件概率的方法計算每一個關聯(lián)關鍵字的權值,然后根據(jù)閾值排序輸出。
設歷史記錄中包含的文檔集為D,查詢用詞A與文檔標引詞B的關聯(lián)權重設為B相對于A的條件概率,
3P2P下一種基于語義查詢擴展的檢索模型
該模型采用基于超級節(jié)點的P2P網(wǎng)絡結(jié)構,它是一種采用超級節(jié)點來管理普通節(jié)點的半結(jié)構化網(wǎng)絡,既具有傳統(tǒng)集中式P2P系統(tǒng)的可控性和搜索效率高的特點,又能充分發(fā)揮非結(jié)構化P2P網(wǎng)絡擴展性強、容錯性好以及負載平衡等優(yōu)勢。網(wǎng)絡中各普通節(jié)點在本地超級節(jié)點的控制下直接建立連接。超級節(jié)點負責本地節(jié)點的集中認證和管理,并與其他超級節(jié)點構成對等結(jié)構,同時作為本地的服務提供者和服務接受者,負責本地節(jié)點與其他區(qū)域超級節(jié)點或一般節(jié)點的通信。超級節(jié)點負責消息在本組中的轉(zhuǎn)發(fā)。本文中選取度數(shù)較高的節(jié)點作為超級節(jié)點,便于資源快速在對等網(wǎng)絡中傳播。圖3基于語義查詢擴展的檢索模型
從圖3可以看出,該模型包括6大模塊:
(1)詞表管理模塊。主要由領域?qū)<覙嫿I域詞匯表,同時對相關領域詞匯表進行定期維護和更新,它是節(jié)點用戶對本體存儲資源的本體化和規(guī)范化描述的基礎。
(2)提問處理模塊。該模塊主要是對用戶所提檢索問題進行分詞處理、詞性標注、去掉停用詞和虛詞等操作,得到具有實際意義并能夠反應用戶真實檢索意圖的關鍵詞。
(3)語義標注模塊。語義標注是根據(jù)有關本體為各個節(jié)點上的資源標引概念類、概念屬性和其他元數(shù)據(jù)的過程。目前有三類語義標引的方法,即人工標引、領域文檔類型定義和文檔模式進行概念映射和標引、利用詞匯語義分析進行標引。本文是在第三類基礎上進行基于本體的語義標引,通過分析文檔特征詞匯,建立詞匯與本體概念之間的映射,采用領域本體對文檔進行領域語義標引。根據(jù)領域共享詞表和本地本體庫,各節(jié)點對本地可共享信息資源實現(xiàn)語義標引。
(4)本體管理模塊。本體管理模塊支持本體的創(chuàng)建和進化,負責抽取節(jié)點數(shù)據(jù)的本體化描述,同時對節(jié)點本體中新概念進行整合,對本地可共享信息資源的本體和節(jié)點用戶進行管理并存放于本體庫中。
(5)匹配模塊。也即語義相似度計算,它是自然語言處理研究的重要組成部分,是衡量用戶查詢與資源信息匹配度的標準。傳統(tǒng)的概念語義相似度計算方法有基于距離的語義相似度、基于信息內(nèi)容的相似度計算方法、基于屬性的語義相似度計算方法,其中影響語義距離的因素主要有:語義重合度、語義深度、語義密度、語義屬性。但凡這3種方法單獨使用都會存在不足,目前的研究主要集中在把這3種方法混合使用。
(6)資源搜索模塊。由于對等網(wǎng)的網(wǎng)絡拓撲結(jié)構的不同,其資源搜索的路徑選擇亦不同。對非結(jié)構化P2P來說,通常有:泛洪搜索、BFS、迭代深入、隨機游走等。而本文采用的是基于興趣網(wǎng)絡的搜索算法,通過引入興趣組,減輕了節(jié)點查找和路由負擔,實現(xiàn)高效搜索和資源定位。當一個提問向量被發(fā)送到超級節(jié)點處,首先會與該節(jié)點進行基于距離的相似度匹配,匹配成功后,依次與屬于該興趣組的普通節(jié)點本體庫和關聯(lián)表進行查詢擴展,其中興趣組的構建過程包括3個步驟:①對每個節(jié)點資源抽取文件特征向量;②采用K-Means對文件向量空間聚類;③建立興趣索引表,在超級節(jié)點處記錄同一興趣的普通節(jié)點ID,在普通節(jié)點處記錄所屬超級節(jié)點ID。
4實例驗證
以某高校圖書館館藏圖書查詢?yōu)槔謩e以3種不同的算法進行分析,通過對比分析查詢結(jié)果,對上述說明進行驗證。根據(jù)文章所述各查詢算法的特點可知,關鍵詞搜索方便用于有信息記錄的用戶;語義是固定的語義庫,可用于初次使用系統(tǒng)的用戶,只要搜索內(nèi)容在語義庫中便可進行搜索,但不可進行自動的語義庫擴展。兩者結(jié)合可以用戶初次檢索,并可以自動更新擴展語義庫。
關鍵詞搜索適合應用于有信息記錄的搜索欄目中,對于首次搜索內(nèi)容,顯示結(jié)果會存在不準確,內(nèi)容不全面的情況出現(xiàn)。
基于語義的搜索是建立在語義庫的基礎上的搜索方式,對于圖書館系統(tǒng)的部分語義庫內(nèi)容如圖4所示。圖4圖書館檢索系統(tǒng)語義庫示意圖
以搜索關鍵詞“蘋果”為例,進行搜索試驗,基于語義庫和基于語義查詢擴展的搜索結(jié)果對比顯示,如表1所示。表1檢索結(jié)果對比表
序號〖〗關鍵詞名稱基于語義的查詢相關結(jié)果個性化推薦結(jié)果1蘋果《iLike蘋果Final Cut Pro X非線性編輯》、《蘋果計算機應用》、《蘋果電腦玩全攻略》、《蘋果電腦完全手冊》……《iLike蘋果Final Cut Pro X非線性編輯》、《蘋果計算機應用》、《蘋果電腦玩全攻略》、《蘋果電腦完全手冊》、《蘋果的種植技術》……
表中包括字段有,關鍵詞序號,關鍵詞名稱,查詢結(jié)果。如表1所示,由于語義庫中蘋果分類為社會科學類,所以結(jié)果顯示的均為蘋果電腦的相關內(nèi)容,而用戶事實上想搜索關于蘋果的飲食和種植方面書籍,但顯示結(jié)果中沒有這一項目。產(chǎn)生這一結(jié)果的原因就是建立的語義庫中蘋果所屬社會科學類,而目標搜索結(jié)果為自然科學類。語義庫中缺少類別擴展以及語義庫的靜態(tài)屬性造成了搜索的片面和不準確。于是,筆者采用語義庫與關鍵詞的結(jié)合完成搜索擴展,一方面補充語義庫靜態(tài)屬性的缺陷;另一方面彌補關鍵詞無記錄搜索的缺點。采用綜合搜索的結(jié)果,顯示結(jié)果除顯示蘋果電腦相關外,也加入了擴展內(nèi)容,為用戶推薦蘋果的種植方面書籍。
由此對比可知,基于語義的查詢擴展可以搜索到更加全面完整的結(jié)果,并且可以應用于記錄和非記錄用戶的搜索查詢。endprint
關鍵字關聯(lián)表(如圖1所示)是根據(jù)節(jié)點用戶歷史查詢記錄,為每一個節(jié)點建立一個關鍵字關聯(lián)表,每個節(jié)點僅存儲本地節(jié)點的關鍵字關聯(lián)表信息,相當于一個同義詞詞典,只是它是根據(jù)節(jié)點的歷史記錄建立的,在搜索時可以作為查詢擴展的依據(jù)。關鍵字關聯(lián)表的構建主要有兩種方法,一種建立用戶輸入的初始檢索詞和最后一個成功檢索詞之間的關聯(lián)關系,另一種是建立用戶檢索詞與成功檢索的結(jié)果文檔所使用的標引詞之間的關聯(lián)關系。(如圖2所示)本文使用的關鍵字關聯(lián)表的構建采用的是后者。也即將查詢詞空間(用戶檢索詞)與目標文檔標引詞空間(成功檢索的結(jié)果文檔所使用的標引詞)直接關聯(lián)起來,建立查詢單詞與目標文檔標引詞之間的關聯(lián)關系,其中關聯(lián)權重可作為選擇查詢擴展詞排序輸出的依據(jù)。
22語義擴展架構
利用本地本體庫對節(jié)點查詢詞進行初步擴展,然后利用該節(jié)點的歷史查詢記錄對初次擴展結(jié)果進行再次擴展合并,去掉一些語義相關但實際查詢不相關的擴展分支,同時對概念樹上各個節(jié)點的權值進行修正,只有滿足一定權值要求的概念才會被最終選中加入查詢,同時使得滿足一定要求的只在歷史記錄集中出現(xiàn)的詞也能夠被選中加入到最終的查詢詞中。這種結(jié)合的算法克服了單獨算法的弊端,提供更好的查詢質(zhì)量。首先,可以過濾一些語義上相關但與實際的文檔集合不符合的擴展詞,提高查準率和查詢效率。另外,使用這種算法能夠向查詢擴展詞集中添加語義概念樹上沒有收錄的擴展詞。
基于本體的語義擴展,核心任務是一系列語義推理——同義擴展、語義蘊含、外延擴展及語義相關擴展。本文采用如下方法選取擴展詞,并賦予擴展詞權值。
定義1基于本體的語義擴展候選詞集:利用語義詞典WordNet為初始查詢詞構造概念樹。記為CForest{SenseTree1,SenseTree2,…,SenseTree n},其中,SenseTree i表示由查詢詞的一個詞義生成的概念樹。根據(jù)各個詞在概念樹中的位置定義的權重,反映在語義方面是擴展詞和初始查詢詞的緊密程度。記為WeightSem(Concepti)=1/distance(Root,Concept),其中Root是初始查詢詞,distance(Root,Concepti)是從初始查詢詞到Concepti的最短距離。
定義2關鍵詞擴展候選詞集:記為StaCandidates{T1,T2,…,Tm},是與初始查詢詞最相關的m個候選查詢詞。按照條件概率的方法計算每一個關聯(lián)關鍵字的權值,然后根據(jù)閾值排序輸出。
設歷史記錄中包含的文檔集為D,查詢用詞A與文檔標引詞B的關聯(lián)權重設為B相對于A的條件概率,
3P2P下一種基于語義查詢擴展的檢索模型
該模型采用基于超級節(jié)點的P2P網(wǎng)絡結(jié)構,它是一種采用超級節(jié)點來管理普通節(jié)點的半結(jié)構化網(wǎng)絡,既具有傳統(tǒng)集中式P2P系統(tǒng)的可控性和搜索效率高的特點,又能充分發(fā)揮非結(jié)構化P2P網(wǎng)絡擴展性強、容錯性好以及負載平衡等優(yōu)勢。網(wǎng)絡中各普通節(jié)點在本地超級節(jié)點的控制下直接建立連接。超級節(jié)點負責本地節(jié)點的集中認證和管理,并與其他超級節(jié)點構成對等結(jié)構,同時作為本地的服務提供者和服務接受者,負責本地節(jié)點與其他區(qū)域超級節(jié)點或一般節(jié)點的通信。超級節(jié)點負責消息在本組中的轉(zhuǎn)發(fā)。本文中選取度數(shù)較高的節(jié)點作為超級節(jié)點,便于資源快速在對等網(wǎng)絡中傳播。圖3基于語義查詢擴展的檢索模型
從圖3可以看出,該模型包括6大模塊:
(1)詞表管理模塊。主要由領域?qū)<覙嫿I域詞匯表,同時對相關領域詞匯表進行定期維護和更新,它是節(jié)點用戶對本體存儲資源的本體化和規(guī)范化描述的基礎。
(2)提問處理模塊。該模塊主要是對用戶所提檢索問題進行分詞處理、詞性標注、去掉停用詞和虛詞等操作,得到具有實際意義并能夠反應用戶真實檢索意圖的關鍵詞。
(3)語義標注模塊。語義標注是根據(jù)有關本體為各個節(jié)點上的資源標引概念類、概念屬性和其他元數(shù)據(jù)的過程。目前有三類語義標引的方法,即人工標引、領域文檔類型定義和文檔模式進行概念映射和標引、利用詞匯語義分析進行標引。本文是在第三類基礎上進行基于本體的語義標引,通過分析文檔特征詞匯,建立詞匯與本體概念之間的映射,采用領域本體對文檔進行領域語義標引。根據(jù)領域共享詞表和本地本體庫,各節(jié)點對本地可共享信息資源實現(xiàn)語義標引。
(4)本體管理模塊。本體管理模塊支持本體的創(chuàng)建和進化,負責抽取節(jié)點數(shù)據(jù)的本體化描述,同時對節(jié)點本體中新概念進行整合,對本地可共享信息資源的本體和節(jié)點用戶進行管理并存放于本體庫中。
(5)匹配模塊。也即語義相似度計算,它是自然語言處理研究的重要組成部分,是衡量用戶查詢與資源信息匹配度的標準。傳統(tǒng)的概念語義相似度計算方法有基于距離的語義相似度、基于信息內(nèi)容的相似度計算方法、基于屬性的語義相似度計算方法,其中影響語義距離的因素主要有:語義重合度、語義深度、語義密度、語義屬性。但凡這3種方法單獨使用都會存在不足,目前的研究主要集中在把這3種方法混合使用。
(6)資源搜索模塊。由于對等網(wǎng)的網(wǎng)絡拓撲結(jié)構的不同,其資源搜索的路徑選擇亦不同。對非結(jié)構化P2P來說,通常有:泛洪搜索、BFS、迭代深入、隨機游走等。而本文采用的是基于興趣網(wǎng)絡的搜索算法,通過引入興趣組,減輕了節(jié)點查找和路由負擔,實現(xiàn)高效搜索和資源定位。當一個提問向量被發(fā)送到超級節(jié)點處,首先會與該節(jié)點進行基于距離的相似度匹配,匹配成功后,依次與屬于該興趣組的普通節(jié)點本體庫和關聯(lián)表進行查詢擴展,其中興趣組的構建過程包括3個步驟:①對每個節(jié)點資源抽取文件特征向量;②采用K-Means對文件向量空間聚類;③建立興趣索引表,在超級節(jié)點處記錄同一興趣的普通節(jié)點ID,在普通節(jié)點處記錄所屬超級節(jié)點ID。
4實例驗證
以某高校圖書館館藏圖書查詢?yōu)槔謩e以3種不同的算法進行分析,通過對比分析查詢結(jié)果,對上述說明進行驗證。根據(jù)文章所述各查詢算法的特點可知,關鍵詞搜索方便用于有信息記錄的用戶;語義是固定的語義庫,可用于初次使用系統(tǒng)的用戶,只要搜索內(nèi)容在語義庫中便可進行搜索,但不可進行自動的語義庫擴展。兩者結(jié)合可以用戶初次檢索,并可以自動更新擴展語義庫。
關鍵詞搜索適合應用于有信息記錄的搜索欄目中,對于首次搜索內(nèi)容,顯示結(jié)果會存在不準確,內(nèi)容不全面的情況出現(xiàn)。
基于語義的搜索是建立在語義庫的基礎上的搜索方式,對于圖書館系統(tǒng)的部分語義庫內(nèi)容如圖4所示。圖4圖書館檢索系統(tǒng)語義庫示意圖
以搜索關鍵詞“蘋果”為例,進行搜索試驗,基于語義庫和基于語義查詢擴展的搜索結(jié)果對比顯示,如表1所示。表1檢索結(jié)果對比表
序號〖〗關鍵詞名稱基于語義的查詢相關結(jié)果個性化推薦結(jié)果1蘋果《iLike蘋果Final Cut Pro X非線性編輯》、《蘋果計算機應用》、《蘋果電腦玩全攻略》、《蘋果電腦完全手冊》……《iLike蘋果Final Cut Pro X非線性編輯》、《蘋果計算機應用》、《蘋果電腦玩全攻略》、《蘋果電腦完全手冊》、《蘋果的種植技術》……
表中包括字段有,關鍵詞序號,關鍵詞名稱,查詢結(jié)果。如表1所示,由于語義庫中蘋果分類為社會科學類,所以結(jié)果顯示的均為蘋果電腦的相關內(nèi)容,而用戶事實上想搜索關于蘋果的飲食和種植方面書籍,但顯示結(jié)果中沒有這一項目。產(chǎn)生這一結(jié)果的原因就是建立的語義庫中蘋果所屬社會科學類,而目標搜索結(jié)果為自然科學類。語義庫中缺少類別擴展以及語義庫的靜態(tài)屬性造成了搜索的片面和不準確。于是,筆者采用語義庫與關鍵詞的結(jié)合完成搜索擴展,一方面補充語義庫靜態(tài)屬性的缺陷;另一方面彌補關鍵詞無記錄搜索的缺點。采用綜合搜索的結(jié)果,顯示結(jié)果除顯示蘋果電腦相關外,也加入了擴展內(nèi)容,為用戶推薦蘋果的種植方面書籍。
由此對比可知,基于語義的查詢擴展可以搜索到更加全面完整的結(jié)果,并且可以應用于記錄和非記錄用戶的搜索查詢。endprint
關鍵字關聯(lián)表(如圖1所示)是根據(jù)節(jié)點用戶歷史查詢記錄,為每一個節(jié)點建立一個關鍵字關聯(lián)表,每個節(jié)點僅存儲本地節(jié)點的關鍵字關聯(lián)表信息,相當于一個同義詞詞典,只是它是根據(jù)節(jié)點的歷史記錄建立的,在搜索時可以作為查詢擴展的依據(jù)。關鍵字關聯(lián)表的構建主要有兩種方法,一種建立用戶輸入的初始檢索詞和最后一個成功檢索詞之間的關聯(lián)關系,另一種是建立用戶檢索詞與成功檢索的結(jié)果文檔所使用的標引詞之間的關聯(lián)關系。(如圖2所示)本文使用的關鍵字關聯(lián)表的構建采用的是后者。也即將查詢詞空間(用戶檢索詞)與目標文檔標引詞空間(成功檢索的結(jié)果文檔所使用的標引詞)直接關聯(lián)起來,建立查詢單詞與目標文檔標引詞之間的關聯(lián)關系,其中關聯(lián)權重可作為選擇查詢擴展詞排序輸出的依據(jù)。
22語義擴展架構
利用本地本體庫對節(jié)點查詢詞進行初步擴展,然后利用該節(jié)點的歷史查詢記錄對初次擴展結(jié)果進行再次擴展合并,去掉一些語義相關但實際查詢不相關的擴展分支,同時對概念樹上各個節(jié)點的權值進行修正,只有滿足一定權值要求的概念才會被最終選中加入查詢,同時使得滿足一定要求的只在歷史記錄集中出現(xiàn)的詞也能夠被選中加入到最終的查詢詞中。這種結(jié)合的算法克服了單獨算法的弊端,提供更好的查詢質(zhì)量。首先,可以過濾一些語義上相關但與實際的文檔集合不符合的擴展詞,提高查準率和查詢效率。另外,使用這種算法能夠向查詢擴展詞集中添加語義概念樹上沒有收錄的擴展詞。
基于本體的語義擴展,核心任務是一系列語義推理——同義擴展、語義蘊含、外延擴展及語義相關擴展。本文采用如下方法選取擴展詞,并賦予擴展詞權值。
定義1基于本體的語義擴展候選詞集:利用語義詞典WordNet為初始查詢詞構造概念樹。記為CForest{SenseTree1,SenseTree2,…,SenseTree n},其中,SenseTree i表示由查詢詞的一個詞義生成的概念樹。根據(jù)各個詞在概念樹中的位置定義的權重,反映在語義方面是擴展詞和初始查詢詞的緊密程度。記為WeightSem(Concepti)=1/distance(Root,Concept),其中Root是初始查詢詞,distance(Root,Concepti)是從初始查詢詞到Concepti的最短距離。
定義2關鍵詞擴展候選詞集:記為StaCandidates{T1,T2,…,Tm},是與初始查詢詞最相關的m個候選查詢詞。按照條件概率的方法計算每一個關聯(lián)關鍵字的權值,然后根據(jù)閾值排序輸出。
設歷史記錄中包含的文檔集為D,查詢用詞A與文檔標引詞B的關聯(lián)權重設為B相對于A的條件概率,
3P2P下一種基于語義查詢擴展的檢索模型
該模型采用基于超級節(jié)點的P2P網(wǎng)絡結(jié)構,它是一種采用超級節(jié)點來管理普通節(jié)點的半結(jié)構化網(wǎng)絡,既具有傳統(tǒng)集中式P2P系統(tǒng)的可控性和搜索效率高的特點,又能充分發(fā)揮非結(jié)構化P2P網(wǎng)絡擴展性強、容錯性好以及負載平衡等優(yōu)勢。網(wǎng)絡中各普通節(jié)點在本地超級節(jié)點的控制下直接建立連接。超級節(jié)點負責本地節(jié)點的集中認證和管理,并與其他超級節(jié)點構成對等結(jié)構,同時作為本地的服務提供者和服務接受者,負責本地節(jié)點與其他區(qū)域超級節(jié)點或一般節(jié)點的通信。超級節(jié)點負責消息在本組中的轉(zhuǎn)發(fā)。本文中選取度數(shù)較高的節(jié)點作為超級節(jié)點,便于資源快速在對等網(wǎng)絡中傳播。圖3基于語義查詢擴展的檢索模型
從圖3可以看出,該模型包括6大模塊:
(1)詞表管理模塊。主要由領域?qū)<覙嫿I域詞匯表,同時對相關領域詞匯表進行定期維護和更新,它是節(jié)點用戶對本體存儲資源的本體化和規(guī)范化描述的基礎。
(2)提問處理模塊。該模塊主要是對用戶所提檢索問題進行分詞處理、詞性標注、去掉停用詞和虛詞等操作,得到具有實際意義并能夠反應用戶真實檢索意圖的關鍵詞。
(3)語義標注模塊。語義標注是根據(jù)有關本體為各個節(jié)點上的資源標引概念類、概念屬性和其他元數(shù)據(jù)的過程。目前有三類語義標引的方法,即人工標引、領域文檔類型定義和文檔模式進行概念映射和標引、利用詞匯語義分析進行標引。本文是在第三類基礎上進行基于本體的語義標引,通過分析文檔特征詞匯,建立詞匯與本體概念之間的映射,采用領域本體對文檔進行領域語義標引。根據(jù)領域共享詞表和本地本體庫,各節(jié)點對本地可共享信息資源實現(xiàn)語義標引。
(4)本體管理模塊。本體管理模塊支持本體的創(chuàng)建和進化,負責抽取節(jié)點數(shù)據(jù)的本體化描述,同時對節(jié)點本體中新概念進行整合,對本地可共享信息資源的本體和節(jié)點用戶進行管理并存放于本體庫中。
(5)匹配模塊。也即語義相似度計算,它是自然語言處理研究的重要組成部分,是衡量用戶查詢與資源信息匹配度的標準。傳統(tǒng)的概念語義相似度計算方法有基于距離的語義相似度、基于信息內(nèi)容的相似度計算方法、基于屬性的語義相似度計算方法,其中影響語義距離的因素主要有:語義重合度、語義深度、語義密度、語義屬性。但凡這3種方法單獨使用都會存在不足,目前的研究主要集中在把這3種方法混合使用。
(6)資源搜索模塊。由于對等網(wǎng)的網(wǎng)絡拓撲結(jié)構的不同,其資源搜索的路徑選擇亦不同。對非結(jié)構化P2P來說,通常有:泛洪搜索、BFS、迭代深入、隨機游走等。而本文采用的是基于興趣網(wǎng)絡的搜索算法,通過引入興趣組,減輕了節(jié)點查找和路由負擔,實現(xiàn)高效搜索和資源定位。當一個提問向量被發(fā)送到超級節(jié)點處,首先會與該節(jié)點進行基于距離的相似度匹配,匹配成功后,依次與屬于該興趣組的普通節(jié)點本體庫和關聯(lián)表進行查詢擴展,其中興趣組的構建過程包括3個步驟:①對每個節(jié)點資源抽取文件特征向量;②采用K-Means對文件向量空間聚類;③建立興趣索引表,在超級節(jié)點處記錄同一興趣的普通節(jié)點ID,在普通節(jié)點處記錄所屬超級節(jié)點ID。
4實例驗證
以某高校圖書館館藏圖書查詢?yōu)槔?,分別以3種不同的算法進行分析,通過對比分析查詢結(jié)果,對上述說明進行驗證。根據(jù)文章所述各查詢算法的特點可知,關鍵詞搜索方便用于有信息記錄的用戶;語義是固定的語義庫,可用于初次使用系統(tǒng)的用戶,只要搜索內(nèi)容在語義庫中便可進行搜索,但不可進行自動的語義庫擴展。兩者結(jié)合可以用戶初次檢索,并可以自動更新擴展語義庫。
關鍵詞搜索適合應用于有信息記錄的搜索欄目中,對于首次搜索內(nèi)容,顯示結(jié)果會存在不準確,內(nèi)容不全面的情況出現(xiàn)。
基于語義的搜索是建立在語義庫的基礎上的搜索方式,對于圖書館系統(tǒng)的部分語義庫內(nèi)容如圖4所示。圖4圖書館檢索系統(tǒng)語義庫示意圖
以搜索關鍵詞“蘋果”為例,進行搜索試驗,基于語義庫和基于語義查詢擴展的搜索結(jié)果對比顯示,如表1所示。表1檢索結(jié)果對比表
序號〖〗關鍵詞名稱基于語義的查詢相關結(jié)果個性化推薦結(jié)果1蘋果《iLike蘋果Final Cut Pro X非線性編輯》、《蘋果計算機應用》、《蘋果電腦玩全攻略》、《蘋果電腦完全手冊》……《iLike蘋果Final Cut Pro X非線性編輯》、《蘋果計算機應用》、《蘋果電腦玩全攻略》、《蘋果電腦完全手冊》、《蘋果的種植技術》……
表中包括字段有,關鍵詞序號,關鍵詞名稱,查詢結(jié)果。如表1所示,由于語義庫中蘋果分類為社會科學類,所以結(jié)果顯示的均為蘋果電腦的相關內(nèi)容,而用戶事實上想搜索關于蘋果的飲食和種植方面書籍,但顯示結(jié)果中沒有這一項目。產(chǎn)生這一結(jié)果的原因就是建立的語義庫中蘋果所屬社會科學類,而目標搜索結(jié)果為自然科學類。語義庫中缺少類別擴展以及語義庫的靜態(tài)屬性造成了搜索的片面和不準確。于是,筆者采用語義庫與關鍵詞的結(jié)合完成搜索擴展,一方面補充語義庫靜態(tài)屬性的缺陷;另一方面彌補關鍵詞無記錄搜索的缺點。采用綜合搜索的結(jié)果,顯示結(jié)果除顯示蘋果電腦相關外,也加入了擴展內(nèi)容,為用戶推薦蘋果的種植方面書籍。
由此對比可知,基于語義的查詢擴展可以搜索到更加全面完整的結(jié)果,并且可以應用于記錄和非記錄用戶的搜索查詢。endprint