沈熠1,,趙琳2
(1.上海大學 計算機中心,,上海 200444,;2.上海大學 計算機工程與科學學院,上海 200444 )
摘要:在語義搜索引擎系統(tǒng)中,,為了使檢索內容在不限制用戶輸入的情況下,,檢索結果更接近用戶的需求,,提出一種基于影視素材本體的查詢擴展方法。對用戶的檢索文本中的關鍵詞依據(jù)本體模型進行推理并按照相似度語義擴展,,旨在得到更符合用戶檢索需求的擴展關鍵詞集,,在此基礎上進行影視素材的檢索,從而提高搜索引擎的召回率,。
關鍵詞:語義搜索,;本體;查詢擴展,;影視素材
0引言
基于關鍵詞的搜索引擎的查詢擴展通常以檢索文本中的關鍵詞為中心進行擴展,,與這些關鍵詞相關的語義概念很少被包含在擴展集中,在這種情況下,,當用戶輸入的檢索內容較少時,,系統(tǒng)按照擴展集進行檢索得到的結果的準確率與召回率較低,從而無法滿足用戶需求,,因此基于關鍵詞的搜索引擎并不能消除用戶需求與檢索結果的不一致性問題,。基于本體的關鍵詞查詢擴展彌補了這一不足,,該技術結合本體,、搜索引擎、計算機語言學等多種技術,,將用戶輸入的檢索文本中的關鍵詞,,以及本體模型中與這些關鍵詞相關的詞語一起,組成新的,、更長的,、更能準確表達用戶檢索需求的擴展關鍵詞集,,按照該集合,,實現(xiàn)在盡可能充分理解用戶的檢索意圖的基礎上進行信息資源的檢索[1] ,從而在一定程度上彌補了用戶檢索信息過短的不足,,同時提高了搜索引擎的召回率,。
1相關研究
1.1本體
本體(Ontology)源于哲學,又稱為本體論,、實體論或者存在論,。GRUBER T R[2]對本體的定義“本體是共享概念模型的明確形式化規(guī)范說明”得到了最廣泛的認可。自2000年人工智能領域引入本體概念以來,,本體就引起各個學科的極大興趣,。
目前存在多種本體描述語言,由于網(wǎng)絡本體語言(Web Ontology Language, OWL)格式在所有本體語言中具有最強的描述能力,,能夠明確表示詞匯表中術語的含義以及術語間的關系,,使之在Web內容的可理解性方面要優(yōu)于其他幾種本體語言,,故本文選擇OWL作為本文的本體描述語言。
1.2本體推理
本體中除了直接定義的知識外,,還隱含了大量的其他知識,,需要使用推理工具進行關鍵詞的推理與查詢,從而獲取蘊含的知識,。本文選用Jena[3]作為影視領域本體的推理機,,Jena是由惠普公司開發(fā)的Java開源工具包,它的推理API能夠憑借其強大的推理功能,,操作由OWL描述的本體,,目前已經(jīng)被廣泛地運用于語義網(wǎng)應用。
本文中,,Jena推理需要實現(xiàn)的內容有:(1)實現(xiàn)本體持久化到數(shù)據(jù)庫的操作,;(2)推理類間關系,解析影視素材本體模型并生成描述上下位關系概念的三元組集合,,用于后續(xù)對本體模型中概念相似度的計算,。
1.3查詢擴展
為了提高檢索的命中率,在不限制用戶輸入檢索文本內容的情況下,,需要通過查詢擴展技術[4],,根據(jù)用戶輸入的檢索信息中的關鍵詞進行語義擴展?;诒倔w的查詢擴展技術的引入在信息檢索過程中取得了一定效果,。該技術依據(jù)領域本體推理得到的知識,通過對本體概念的相似度計算,,將與檢索關鍵詞相關的本體中的概念作為查詢擴展的一部分,。這種由量化得出的查詢擴展集不僅減少了搜索偏差,而且限制了檢索關鍵詞擴展的范圍,,從而在召回率方面有較大提高,。為了完成這一目標,需要在建立領域本體模型的基礎上進行語義擴展,。
2基于影視素材本體的查詢擴展
2.1影視素材本體建模
基于影視素材本體的關鍵詞查詢擴展采用語義技術,,對本體中的概念進行推理與擴展,而推理與擴展的依據(jù)為影視素材本體模型,。
本文選用Protégé以圖形化的建模方法構建影視本體模型,。可以點擊Protégé中對應的項以增加或者編輯類,、子類,、屬性、實例等。建模完成后保存為OWL格式文件,,Protégé將本體自動轉化為OWL格式的語言,。影視素材本體建模后的部分效果如圖1所示。
2.2查詢推理規(guī)則
Jena自帶的通用規(guī)則[5]不會限制具體領域,,主要是根據(jù)本體中的實例,、公理、規(guī)則等檢查概念的可滿足性以及類間層次關系,、傳遞,、不相交等約束,從而實現(xiàn)查詢隱含信息并擴充隱含知識,。當Jena自帶的規(guī)則無法滿足系統(tǒng)的推理要求時,,可以自定義規(guī)則以滿足系統(tǒng)個性化需求。本文借助SPARQL[6]查詢語言,,建立自定義查詢規(guī)則,,從而獲取更加準確的查詢結果。
SPARQL是W3C推出的,,其根據(jù)定義匹配三元組模板對RDF進行查詢,,可以將RDF中滿足一定要求的三元組以集合或者RDF圖的方式作為查詢結果返回。SPARQL提供4種不同形式的查詢[7]:SELECT,、ASK,、CONSTRUCT、DESCRIBE,,其中SELECT是最常用的查詢類型,,本文也采用該形式的查詢。SPARQL的查詢語法是一個四元組(GP,、DS,、SM、R),,其中DS,、R可根據(jù)查詢要求省略,查詢語句格式如表1所示,。
2.3相似度值與查詢擴展閾值的確定
相似度與查詢擴展閾值的詳細計算過程本文不重點討論,,只給出簡要的處理方法。
影響概念的語義相似度因素有多種,,常見的有:字面相似度、語義重合度,、距離相似度,、層次差與層次深度、屬性匹配度等。需要結合本體模型結構與性質,,將有關的因素考慮到相似度的計算方法中,,結合多種影響因素得到概念相似度的計算公式。
獲取本體中概念的相似度后,,在進行查詢擴展的過程中,,需要確定閾值,用于過濾相似度不滿足閾值的概念,,而將滿足閾值的概念加入查詢擴展集,。確定閾值的通常做法為:根據(jù)本體中小規(guī)模測試概念的相似度值以及暫定閾值進行人工評估,判斷相似度滿足閾值的概念間是否滿足系統(tǒng)需求,,經(jīng)過不斷試驗對閾值進行調整,,最終確定閾值。
3語義擴展
3.1關鍵詞查詢擴展流程
本節(jié)結合本體模型與推理規(guī)則,,在參考文獻[1],、[8]的基礎上,總結出對影視素材檢索文本中的關鍵詞進行語義相似度擴展的流程,如圖2所示,。其中sim1(A,B) ,、sim2(A,B)表示根據(jù)關鍵詞是否為影視素材本體中的概念,綜合影響概念相似度的多種因素而確定的不同情況下相似度的計算公式,;而a,、b則是用于過濾不滿足相似度概念的閾值,本文經(jīng)過試驗與對參數(shù)的不斷調整,,最終將a設置為0.51,,b設置為0.63。
關鍵詞語義相似度擴展流程為:首先將檢索文本經(jīng)過預處理后得到的關鍵詞集中的關鍵詞加入到擴展關鍵詞集,,接著依次對關鍵詞集中的每個關鍵詞判斷是否是影視素材本體中的概念,。若當前關鍵詞不是本體中的概念,則需要先找出本體中根據(jù)公式sim1(A,B)計算出的相似度大于閾值a的概念,,將這些概念加入到擴展關鍵詞集,;若當前關鍵詞是影視素材本體中的概念,則查找本體中是否存在與當前關鍵詞等價的關鍵詞,,若存在,,就將等價詞加入到擴展關鍵詞集中,若不存在,,則將本體中根據(jù)公式sim2(A,B)計算出的相似度大于閾值b的概念加入到擴展的關鍵詞集,。
3.2查詢擴展實現(xiàn)
在關鍵詞查詢擴展實現(xiàn)部分,本文選用MySQL數(shù)據(jù)庫存儲數(shù)據(jù),。以下是查詢擴展的實現(xiàn)計算過程中用到的數(shù)據(jù)表:
searchText:用于存儲經(jīng)預處理后得到的檢索關鍵詞,;
classCon:存儲由Jena解析本體文件后得到的概念的信息,,包括(結點ID,結點名,,結點層次,,父結點ID);
classInOnt:存儲本體中滿足閾值b的結點對及其相似度信息,,包括(結點AID,,結點BID,相似度),;
classDouble:存儲屬于預處理得到的但不屬于本體中結點的關鍵詞,,以及與該關鍵詞的相似度達到閾值b的本體中的結點信息,以及二者的相似度信息,。包括(關鍵詞,,結點ID,結點名,,相似度),;
expandKeywords:存儲擴展的關鍵詞,包括(結點ID,,結點名,,相似度)。
下面給出關鍵詞基于影視素材本體查詢擴展的實現(xiàn):
?。?)獲取領域本體文件,;
(2)用Jena解析本體文件,,生成描述概念的上下位關系三元組集合,,并以文件的形式存于內存中;
?。?)對步驟(2)文件中的三元組從根結點出發(fā),,依次遍歷每個結點,并將結點信息存至表classCon,;
?。?)從表classCon中讀取結點并組成所有結點對,按照(結點1,,結點2,,相似度)的方式寫入表classInOnt,其中相似度值置為0,;
?。?)依次取出表classInOnt中的未處理過的記錄,根據(jù)取出的記錄及本體模型計算影響兩個概念相似度的不同因素值,;
?。?)根據(jù)步驟(5)中計算出的決定語義相似度因素的值,,按照公式sim2(A,B)計算出概念對的相似度,,修改表classInOnt中對應的相似度值,;
(7)檢查表classInOnt中是否有未處理過的記錄,,如果有轉至步驟(5),;否則轉至步驟(8);
?。?)刪除表classInOnt中相似度小于閾值b的結點對,,完成本體中結點對的相似度值的更新;
?。?)根據(jù)步驟(4)~(8),,可以完成表classDouble中關鍵詞與結點對的更新,不同的是需要按照公式sim1(A,B)計算概念相似度,,保留的關鍵詞與結點對的相似度需滿足閾值a,;
(10)從表searchText中依次取出一個未處理的關鍵詞,,判斷是否是本體中的概念,,如果是,設置其相似度為1,,將該關鍵詞與相似度值加入擴展關鍵詞集expandKeywords中,,判斷在本體中是否存在與當前關鍵詞等價的概念,若存在,,將等價詞加入到expandKeywords中,,等價詞對應的相似度值置為1,轉至步驟(11),,否則轉至步驟(12),;
(11)從表classInOnt中查找與當前關鍵詞組成的結點對的關鍵詞,,將這些關鍵詞及結點對的相似度加入到expandKeywords,;
(12)從表classDouble中查找與當前關鍵詞組成的結點對的結點,,將這些結點及相似度加入到expandKeywords,;
(13)檢查searchText中是否存在未處理的關鍵詞,,若有,,轉至步驟(10),否則轉至步驟(14),;
?。?4)輸出存儲擴展關鍵詞的表expandKeywords,,算法結束。
通過上述算法,,求得了擴展關鍵詞集,。
3.3查詢擴展實驗
為驗證關鍵詞相似度查詢擴展算法的有效性,用影視素材本體模型對該算法進行驗證,。選用一段檢索文本“兩個孩子在路上騎自行車”,,該文本經(jīng)預處理后,得到檢索關鍵詞集中的關鍵詞“兩個”,、“孩子”,、“路”、“騎”,、“自行車”,,對這些關鍵詞按照3.2節(jié)的擴展實現(xiàn)算法進行查詢擴展,得到擴展的關鍵詞及對應的相似度,,如表2所示,。
從表2中可以看出,檢索文本“兩個孩子在路上騎自行車”經(jīng)過預處理以及語義相似度擴展,,得到擴展的關鍵詞集,,對該集合按相似度值從大到小進行排序,如表3所示,。
由表2,、表3可得,按照本文研究的對檢索關鍵詞基于影視素材本體模型進行相似度查詢擴展,,得到擴展集中的概念可以較完整地反映用戶的檢索意圖,,從而驗證了本文提出的關鍵詞查詢擴展方法的有效性。
4結束語
本文基于影視領域本體模型,,對素材檢索過程中關鍵詞的查詢擴展進行研究,,提出關鍵詞按照相似度擴展的一種實現(xiàn)方案,即對檢索文本中的關鍵詞及影視素材本體模型中的概念進行推理并得到相似度滿足閾值的查詢擴展集,。實驗結果表明,,擴展關鍵詞集更能充分包含用戶的檢索需求。本文的下一步工作是對檢索結果按照擴展關鍵詞集中關鍵詞的相似度關系的排序方式進行深入研究,。
參考文獻
?。?] 甘健侯,姜躍.本體方法及其應用[M].北京:科學出版社,,2011.
?。?] GRUBER T R.Toward principles for the design of ontologies used for knowledge sharing [J].International Journal of HumanComputer Studies, 1995, 43(56): 907928.
[3] Getting started with Apache Jena [EB/OL].(2015××××)[20160130] . https://jena.apache.org/getting_startedl.
?。?] 李帥.基于語義相似度的查詢擴展優(yōu)化[D].杭州:杭州電子科技大學,2011.
?。?] 李兵.基于領域本體的專利語義檢索研究[D].北京:北京理工大學,2015.
?。?] W3C.SPARQL Query Language for RDF [EB/OL].(20130321)[20160120].https://www. w3.org/TR/2013/RECsparql11query20130321/.
[7] 岳曉露.語義Web中RDF數(shù)據(jù)的關聯(lián)規(guī)則挖掘方法研究[D].大連:大連海事大學,2015.
?。?] 呂婧.基于語義網(wǎng)的語義搜索的研究與應用[D].北京:北京工業(yè)大學,2013.