黃 煒
(長沙航空職業(yè)技術(shù)學(xué)院,湖南 長沙 410124)
不同的教育領(lǐng)域都有了解和查詢相關(guān)知識(shí)的需要,比如醫(yī)學(xué)診斷、建筑工程、軟件設(shè)計(jì)等,這些領(lǐng)域的資源管理都起著舉足輕重的作用。但隨著科技的進(jìn)步,各領(lǐng)域信息的增多,知識(shí)庫便會(huì)不斷擴(kuò)大,需要運(yùn)用教育信息系統(tǒng)的學(xué)科和領(lǐng)域也會(huì)不斷增加。面對(duì)海量的教育信息,傳統(tǒng)的教育查詢系統(tǒng)不再滿足需求,查到的教育和教師信息不再精確,以致系統(tǒng)的效率大大降低。
語義Web是一種能夠理解人類語言的智能網(wǎng)絡(luò),其應(yīng)用能夠根據(jù)語義來查詢和處理網(wǎng)絡(luò)上的資源[1]。文章利用Web技術(shù)和本體技術(shù)整合教育領(lǐng)域的教師信息,針對(duì)現(xiàn)有的查詢系統(tǒng)存在的上述問題,設(shè)計(jì)了基于語義本體的教師信息系統(tǒng)檢索方案。
傳統(tǒng)的方法是直接利用本體建模工具如Protégé等通過定義概念及概念之間的關(guān)系來建立本體,但這些工具存在難以處理復(fù)雜的本體概念和關(guān)系等問題。為解決領(lǐng)域本體建模過程中存在的問題,文獻(xiàn)[2]通過模糊本體技術(shù)實(shí)現(xiàn)了5W1H(Who,When,Where,What,Why,How;5W1H)層的劃分,從而直觀地描述了新聞本體的概念模型。為實(shí)現(xiàn)教育信息的領(lǐng)域語義查詢,文章以教師信息為例,采用5W1H分析法從六個(gè)層次來歸納分解領(lǐng)域本體中的概念和關(guān)系,并建立教師信息的領(lǐng)域本體概念模型。
領(lǐng)域本體可以用O=(C,AC,R,Ao)四元組表示,其中,C表示從5W1H的六個(gè)方面分析領(lǐng)域本體中概念的非空有限集合;AC表示概念屬性的集合,是對(duì)概念特征或性質(zhì)的描述;R表示概念與概念間關(guān)系的集合;Ao表示領(lǐng)域本體公理,是定義在概念和屬性上的限定和規(guī)則。根據(jù)定義:
C={c│c∈ Cwho∨ Cwhen∨ Cwhere∨ Cwhat∨Cwhy∨Chow}
CiI Cj=Φ;
其中Cwho是關(guān)于教師主體的概念集合,Cwhen是關(guān)于時(shí)間的概念集合,Cwhere是關(guān)于地點(diǎn)的概念集合,Cwhat是關(guān)于研究對(duì)象的概念集合,Cwhy是關(guān)于評(píng)估、著作、獎(jiǎng)勵(lì)等的概念集合,Chow是關(guān)于方法的概念集合。
關(guān)系集合R表示領(lǐng)域中概念之間的交互作用,主要有兩類關(guān)系,即概念之間的層次關(guān)系和關(guān)聯(lián)關(guān)系:
Rh是概念間的層次關(guān)系,包括了概念間的泛化關(guān)系kind-of和聚合關(guān)系part-of。泛化關(guān)系表示概念之間的繼承關(guān)系,聚合關(guān)系表示概念之間的整體與部分關(guān)系;Rb表示處在同一層次的概念間存在語義關(guān)系。對(duì)于教師本體而言,各個(gè)層次中的概念如表1所示。
表1 教師本體信息在5WIH各層次中的概念
依據(jù)領(lǐng)域本體、概念和關(guān)系的定義,設(shè)計(jì)了基于5W1H的教師本體概念模型。從When、Where、Who、What、Why和How六個(gè)層次分析領(lǐng)域本體概念,并通過每個(gè)層次內(nèi)概念之間以及層次與層次中概念之間的交互關(guān)系,定義概念之間的層次關(guān)系和關(guān)聯(lián)關(guān)系,從而設(shè)計(jì)了基于5W1H的教師領(lǐng)域本 體的概念模型,如圖1所示。
圖1 教師本體的概念模型
根據(jù)教師本體的概念模型,基于領(lǐng)域本體的教師信息通用查詢系統(tǒng)具有以下四個(gè)層次:
(1)數(shù)據(jù)層。領(lǐng)域本體數(shù)據(jù)庫,包括領(lǐng)域本體中各類、各類之間的關(guān)系以及類的屬性等信息,除了對(duì)本體信息的描述信息外,還有各本體實(shí)體的信息。
(2)語義推理層。使用 RDF(Resource Description Framework,RDF)資源描述框架和 OWL(Web ontology language,OWL)本體描述語言對(duì)本體信息進(jìn)行描述,并采用Protégé工具建立領(lǐng)域本體,采用 SPARQL(Simple Protocol and RDF Query Language,SPARQ)查詢語言來查詢領(lǐng)域本體數(shù)據(jù),利用Jena提供的接口建立基于規(guī)則的推理查詢[3-5]。
(3)服務(wù)集成層。檢索引擎和推理引擎,對(duì)領(lǐng)域本體進(jìn)行查詢和推理,根據(jù)用戶提供的查詢條件組合查詢語句結(jié)合規(guī)則進(jìn)行推理。
(4)應(yīng)用層。面向用戶的接口,用戶根據(jù)自己的需求提交相應(yīng)的檢索條件。
其體系結(jié)構(gòu)如圖2所示。
圖2 系統(tǒng)四層構(gòu)架示意圖
在研究了語義網(wǎng)絡(luò)理論知識(shí)研究的基礎(chǔ)上,設(shè)計(jì)了基于SPARQL查詢規(guī)則和基于Jena推理規(guī)則的信息查詢算法,實(shí)現(xiàn)了基于領(lǐng)域本體的教師信息通用查詢。
將本體數(shù)據(jù)持久化到數(shù)據(jù)庫之后,便能通過Jena API來對(duì)本體進(jìn)行查詢和推理[6]。Jena支持SPARQL查詢語言,因此采用SPARQL查詢語言對(duì)本體信息進(jìn)行查詢推理。查詢語句包括查詢信息的名稱以及名稱應(yīng)該符合的條件。條件子句以三元組形式出現(xiàn),按照<主語,謂語,賓語>的順序排列。查詢條件也成為一個(gè)模式。查詢的結(jié)果實(shí)際就是條件三元組與數(shù)據(jù)文件中RDF三元組匹配的結(jié)果。
Jena 2支持基于規(guī)則的簡單推理,其推理機(jī)制支持將推理器導(dǎo)入Jena,在創(chuàng)建模型時(shí)將推理器與模型關(guān)聯(lián)以實(shí)現(xiàn)推理。
在基于規(guī)則的推理機(jī)中,規(guī)則被定義為一個(gè)Rule對(duì)象,該對(duì)象由 body terms的 list、head terms的list以及可選的名字和方向來定義。只要編寫查詢的規(guī)則,就可以在推理機(jī)中使用了。一個(gè)推理示例如下:
[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)]
以上推理示例定義了一個(gè)名為expertAndSubject的規(guī)則,規(guī)則內(nèi)容為教師x的研究方向d,研究方向d關(guān)聯(lián)學(xué)科s,此規(guī)則可以推出教師x熟悉學(xué)科s。上述推理規(guī)則可表示如下:
(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)上述推理規(guī)則表示教師x熟悉學(xué)科y,學(xué)科y是學(xué)科z的子學(xué)科,那么教師x熟悉學(xué)科z。
(3)Rule bookAndSubject
Familiar(x,s)=Expert(x)I Book(b)I
Subject(s)I write(x,b)I associate(y,s)
上述推理規(guī)則表示書籍b的作者是教師x,書籍b關(guān)聯(lián)學(xué)科s,那么教師x熟悉學(xué)科s。
(4)Rule paperAndSubject
Familiar(x,s)=Expert(x)I Paper(p)I
Subject(s)I write(x,p)I associate(y,s)上述推理規(guī)則表示論文p的作者是教師x,論文p關(guān)聯(lián)學(xué)科s,那么教師x熟悉學(xué)科s。
基于Jena推理的教師信息查詢,主要是通過在定義業(yè)務(wù)規(guī)則的基礎(chǔ)上,利用Jena2推理機(jī)進(jìn)行本體推理,查詢滿足條件的教師信息。
系統(tǒng)采用SPARQL設(shè)計(jì)了教師信息查詢算法,采用Jena推理實(shí)現(xiàn)了教師信息的語義檢索,實(shí)現(xiàn)了系統(tǒng)的精確查詢、模糊查詢、語義查詢等三個(gè)功能,其人機(jī)交互界面如圖3所示:
圖3 人機(jī)交互界面
用戶通過人機(jī)交互界面提交查詢條件后,系統(tǒng)開始進(jìn)行推理查詢。由于在領(lǐng)域本體中教師和學(xué)科是沒有直接聯(lián)系的,教師研究方向與學(xué)科關(guān)聯(lián),通過學(xué)科推出教師的研究方向和專業(yè),然后根據(jù)研究方向和專業(yè)檢索出符合條件的教師。
為了比較不同的查詢方式,通過中南大學(xué)信息院120位教師的信息構(gòu)造了教師本體庫,并在不同的查詢過程中使用相同的查詢條件,查詢條件中的“地區(qū)”對(duì)應(yīng)“湖南省”、“教師姓名”對(duì)應(yīng)“志剛”,三種查詢方式返回的結(jié)果有所區(qū)別:精確查詢返回的結(jié)果為空;模糊查詢和語義查詢都返回了湖南省的名字中帶有“志剛”的教師。如果查詢條件中“熟悉專業(yè)”對(duì)應(yīng)“計(jì)算機(jī)”,則精確查詢只能找出熟悉專業(yè)為“計(jì)算機(jī)”的教師,模糊查詢返回了所有的熟悉學(xué)科為“計(jì)算機(jī)”的教師;語義查詢根據(jù)教師的研究方向和發(fā)表論文等推理出教師的熟悉學(xué)科,然后檢索出熟悉學(xué)科有“計(jì)算機(jī)”教師。在查詢條件相同的情況下,三種查詢方式查詢結(jié)果比較如表2所示。
表2 三種查詢方式比較
實(shí)驗(yàn)結(jié)果表明,傳統(tǒng)的基于關(guān)鍵字的查詢效率遠(yuǎn)遠(yuǎn)低于基于語義的查詢。通過系統(tǒng)中的精確查詢、模糊查詢、語義查詢結(jié)果的分析,發(fā)現(xiàn)精確查詢?cè)谝阎樵儣l件的情況下具有較高的查準(zhǔn)率,但其查全率并不高;模糊查詢雖然能把數(shù)據(jù)庫中所有與查詢條件相關(guān)的數(shù)據(jù)都查詢出來,但是很多數(shù)據(jù)不是用戶所需的,所以其查準(zhǔn)率并不高;而基于本體的查詢很好的解決了查全率和查準(zhǔn)率的問題,對(duì)用戶輸入的查詢條件進(jìn)行語義擴(kuò)展以及規(guī)則推理,能夠根據(jù)查詢條件推理出用戶所要找的所有教室信息并且很少有無關(guān)的信息,同時(shí),基于領(lǐng)域本體的信息擴(kuò)展查詢?cè)陧憫?yīng)時(shí)間上也有很大的改善。
文章給出了基于教師領(lǐng)域本體的通用信息查詢系統(tǒng)的實(shí)現(xiàn)方案,采用5W1H分析法來歸納領(lǐng)域本體中的概念和關(guān)系,建立了基于5W1H的領(lǐng)域本體概念模型,設(shè)計(jì)了基于SPARQL查詢規(guī)則和基于Jena推理規(guī)則的領(lǐng)域信息查詢算法,采用Jena開發(fā)平臺(tái)和MySQL數(shù)據(jù)庫,實(shí)現(xiàn)了領(lǐng)域本體查詢系統(tǒng)的查詢服務(wù),實(shí)驗(yàn)結(jié)果表明,基于領(lǐng)域本體的語義查詢技術(shù)在查準(zhǔn)率、查全率及響應(yīng)速度方面比之于其它兩種檢索方法都具有明顯的優(yōu)勢(shì)。
[1]王杰生,李舟軍,李夢(mèng)君.用描述邏輯進(jìn)行語義Web服務(wù)組合[J].軟件學(xué)報(bào),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]王進(jìn)鵬,張亞非,苗壯.RDF(S)三元組的推理控制算法[J].計(jì)算機(jī)工程,2009,35(19):17-19.
[4]汪晨,俞家文,陸阿濤.OWL及其在Ontology建模中的應(yīng)用研究[J].情報(bào)雜志,2007,(6):63-67.
[5]李柳青.SPARQL運(yùn)行時(shí)查詢優(yōu)化算法研究[D].天津:天津大學(xué),2012.
[6]歐黎源,邱會(huì)中,白亞茹.基于JPA的數(shù)據(jù)持久化模型設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2009,35(20):76-77.