黃 煒
(長沙航空職業技術學院,湖南 長沙 410124)
不同的教育領域都有了解和查詢相關知識的需要,比如醫學診斷、建筑工程、軟件設計等,這些領域的資源管理都起著舉足輕重的作用。但隨著科技的進步,各領域信息的增多,知識庫便會不斷擴大,需要運用教育信息系統的學科和領域也會不斷增加。面對海量的教育信息,傳統的教育查詢系統不再滿足需求,查到的教育和教師信息不再精確,以致系統的效率大大降低。
語義Web是一種能夠理解人類語言的智能網絡,其應用能夠根據語義來查詢和處理網絡上的資源[1]。文章利用Web技術和本體技術整合教育領域的教師信息,針對現有的查詢系統存在的上述問題,設計了基于語義本體的教師信息系統檢索方案。
傳統的方法是直接利用本體建模工具如Protégé等通過定義概念及概念之間的關系來建立本體,但這些工具存在難以處理復雜的本體概念和關系等問題。為解決領域本體建模過程中存在的問題,文獻[2]通過模糊本體技術實現了5W1H(Who,When,Where,What,Why,How;5W1H)層的劃分,從而直觀地描述了新聞本體的概念模型。為實現教育信息的領域語義查詢,文章以教師信息為例,采用5W1H分析法從六個層次來歸納分解領域本體中的概念和關系,并建立教師信息的領域本體概念模型。
領域本體可以用O=(C,AC,R,Ao)四元組表示,其中,C表示從5W1H的六個方面分析領域本體中概念的非空有限集合;AC表示概念屬性的集合,是對概念特征或性質的描述;R表示概念與概念間關系的集合;Ao表示領域本體公理,是定義在概念和屬性上的限定和規則。根據定義:
C={c│c∈ Cwho∨ Cwhen∨ Cwhere∨ Cwhat∨Cwhy∨Chow}
CiI Cj=Φ;

其中Cwho是關于教師主體的概念集合,Cwhen是關于時間的概念集合,Cwhere是關于地點的概念集合,Cwhat是關于研究對象的概念集合,Cwhy是關于評估、著作、獎勵等的概念集合,Chow是關于方法的概念集合。
關系集合R表示領域中概念之間的交互作用,主要有兩類關系,即概念之間的層次關系和關聯關系:

Rh是概念間的層次關系,包括了概念間的泛化關系kind-of和聚合關系part-of。泛化關系表示概念之間的繼承關系,聚合關系表示概念之間的整體與部分關系;Rb表示處在同一層次的概念間存在語義關系。對于教師本體而言,各個層次中的概念如表1所示。

表1 教師本體信息在5WIH各層次中的概念
依據領域本體、概念和關系的定義,設計了基于5W1H的教師本體概念模型。從When、Where、Who、What、Why和How六個層次分析領域本體概念,并通過每個層次內概念之間以及層次與層次中概念之間的交互關系,定義概念之間的層次關系和關聯關系,從而設計了基于5W1H的教師領域本 體的概念模型,如圖1所示。

圖1 教師本體的概念模型
根據教師本體的概念模型,基于領域本體的教師信息通用查詢系統具有以下四個層次:
(1)數據層。領域本體數據庫,包括領域本體中各類、各類之間的關系以及類的屬性等信息,除了對本體信息的描述信息外,還有各本體實體的信息。
(2)語義推理層。使用 RDF(Resource Description Framework,RDF)資源描述框架和 OWL(Web ontology language,OWL)本體描述語言對本體信息進行描述,并采用Protégé工具建立領域本體,采用 SPARQL(Simple Protocol and RDF Query Language,SPARQ)查詢語言來查詢領域本體數據,利用Jena提供的接口建立基于規則的推理查詢[3-5]。
(3)服務集成層。檢索引擎和推理引擎,對領域本體進行查詢和推理,根據用戶提供的查詢條件組合查詢語句結合規則進行推理。
(4)應用層。面向用戶的接口,用戶根據自己的需求提交相應的檢索條件。
其體系結構如圖2所示。

圖2 系統四層構架示意圖
在研究了語義網絡理論知識研究的基礎上,設計了基于SPARQL查詢規則和基于Jena推理規則的信息查詢算法,實現了基于領域本體的教師信息通用查詢。
將本體數據持久化到數據庫之后,便能通過Jena API來對本體進行查詢和推理[6]。Jena支持SPARQL查詢語言,因此采用SPARQL查詢語言對本體信息進行查詢推理。查詢語句包括查詢信息的名稱以及名稱應該符合的條件。條件子句以三元組形式出現,按照<主語,謂語,賓語>的順序排列。查詢條件也成為一個模式。查詢的結果實際就是條件三元組與數據文件中RDF三元組匹配的結果。
Jena 2支持基于規則的簡單推理,其推理機制支持將推理器導入Jena,在創建模型時將推理器與模型關聯以實現推理。
在基于規則的推理機中,規則被定義為一個Rule對象,該對象由 body terms的 list、head terms的list以及可選的名字和方向來定義。只要編寫查詢的規則,就可以在推理機中使用了。一個推理示例如下:
[expertAndSubject:
(?x http://www.owl- ontologies.com/expert.owl#research?d),
(?d http://www.owl- ontologies.com/expert.owl#associate?s)->
(?x http://www.owl- ontologies.com/expert.owl#familiar_with?s)]
以上推理示例定義了一個名為expertAndSubject的規則,規則內容為教師x的研究方向d,研究方向d關聯學科s,此規則可以推出教師x熟悉學科s。上述推理規則可表示如下:
(1)Rule expertAndSubject
Familiar(x,s)=Expert(x)I Direction(d)I
Subject(s)I research(x,d)I associate(y,s)
(2)Rule subSubject
FamiliarSub(x,z)=Expert(x)I Subject(y)
I Subject(z)I Familiar(x,y)I subClass(y,z)上述推理規則表示教師x熟悉學科y,學科y是學科z的子學科,那么教師x熟悉學科z。
(3)Rule bookAndSubject
Familiar(x,s)=Expert(x)I Book(b)I
Subject(s)I write(x,b)I associate(y,s)
上述推理規則表示書籍b的作者是教師x,書籍b關聯學科s,那么教師x熟悉學科s。
(4)Rule paperAndSubject
Familiar(x,s)=Expert(x)I Paper(p)I
Subject(s)I write(x,p)I associate(y,s)上述推理規則表示論文p的作者是教師x,論文p關聯學科s,那么教師x熟悉學科s。
基于Jena推理的教師信息查詢,主要是通過在定義業務規則的基礎上,利用Jena2推理機進行本體推理,查詢滿足條件的教師信息。
系統采用SPARQL設計了教師信息查詢算法,采用Jena推理實現了教師信息的語義檢索,實現了系統的精確查詢、模糊查詢、語義查詢等三個功能,其人機交互界面如圖3所示:

圖3 人機交互界面
用戶通過人機交互界面提交查詢條件后,系統開始進行推理查詢。由于在領域本體中教師和學科是沒有直接聯系的,教師研究方向與學科關聯,通過學科推出教師的研究方向和專業,然后根據研究方向和專業檢索出符合條件的教師。
為了比較不同的查詢方式,通過中南大學信息院120位教師的信息構造了教師本體庫,并在不同的查詢過程中使用相同的查詢條件,查詢條件中的“地區”對應“湖南省”、“教師姓名”對應“志剛”,三種查詢方式返回的結果有所區別:精確查詢返回的結果為空;模糊查詢和語義查詢都返回了湖南省的名字中帶有“志剛”的教師。如果查詢條件中“熟悉專業”對應“計算機”,則精確查詢只能找出熟悉專業為“計算機”的教師,模糊查詢返回了所有的熟悉學科為“計算機”的教師;語義查詢根據教師的研究方向和發表論文等推理出教師的熟悉學科,然后檢索出熟悉學科有“計算機”教師。在查詢條件相同的情況下,三種查詢方式查詢結果比較如表2所示。

表2 三種查詢方式比較
實驗結果表明,傳統的基于關鍵字的查詢效率遠遠低于基于語義的查詢。通過系統中的精確查詢、模糊查詢、語義查詢結果的分析,發現精確查詢在已知查詢條件的情況下具有較高的查準率,但其查全率并不高;模糊查詢雖然能把數據庫中所有與查詢條件相關的數據都查詢出來,但是很多數據不是用戶所需的,所以其查準率并不高;而基于本體的查詢很好的解決了查全率和查準率的問題,對用戶輸入的查詢條件進行語義擴展以及規則推理,能夠根據查詢條件推理出用戶所要找的所有教室信息并且很少有無關的信息,同時,基于領域本體的信息擴展查詢在響應時間上也有很大的改善。
文章給出了基于教師領域本體的通用信息查詢系統的實現方案,采用5W1H分析法來歸納領域本體中的概念和關系,建立了基于5W1H的領域本體概念模型,設計了基于SPARQL查詢規則和基于Jena推理規則的領域信息查詢算法,采用Jena開發平臺和MySQL數據庫,實現了領域本體查詢系統的查詢服務,實驗結果表明,基于領域本體的語義查詢技術在查準率、查全率及響應速度方面比之于其它兩種檢索方法都具有明顯的優勢。
[1]王杰生,李舟軍,李夢君.用描述邏輯進行語義Web服務組合[J].軟件學報,2008,19(4):967-980.
[2]Chang-Shing Lee,Zhi-Wei Jian,Lin-Kai Huang.A Fuzzy Ontology and Its Application to News Summarization[J].IEEE Transaction on Systems,Man,and Cybernetics—Part B:Cybernetics,2005,35(5):859-880.
[3]王進鵬,張亞非,苗壯.RDF(S)三元組的推理控制算法[J].計算機工程,2009,35(19):17-19.
[4]汪晨,俞家文,陸阿濤.OWL及其在Ontology建模中的應用研究[J].情報雜志,2007,(6):63-67.
[5]李柳青.SPARQL運行時查詢優化算法研究[D].天津:天津大學,2012.
[6]歐黎源,邱會中,白亞茹.基于JPA的數據持久化模型設計與實現[J].計算機工程,2009,35(20):76-77.