999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于本體的機構信息智能檢索系統的設計與實現

2009-04-29 00:00:00馮微峰
現代情報 2009年3期

〔摘 要〕本文提出了一個基于本體的智能檢索系統的設計框架并實現了主要的功能模塊,該檢索系統對中科院圖情方向的機構信息進行提取和加工,利用本體語言對中科院圖情方向的組織機構,主要研究人員,重大研究項目等之間的邏輯進行描述,構建一個以機構為主要對象的具有邏輯推理 性的功能本體,并通過自定義規則,加載泛化規則引擎來實現系統的智能檢索功能。

〔關鍵詞〕智能檢索;機構信息;推理規則;本體建模

〔中圖分類號〕G35 〔文獻標識碼〕B 〔文章編號〕1008-0821(2009)03-0170-06

本體對領域和任務進行了良好的描述,具有較好的概念層次結構和對邏輯推理的支持,從而在信息檢索,特別是在智能檢索中得到了很好的應用。在基于本體的智能檢索系統中,通過對原始信息的加工提取和本體的語義推理機制,可以進一步提高檢索結果和檢索目標的相關性,從而使得檢索結果更加符合人們的要求。

起初,國內外本體研究機構[1]主要著力于頂層本體和領域本體的研究和探索,而現在隨著功能本體廣泛的應用,對于功能本體的研究也越來越多了。比如說,對一個跨國機構進行本體建模,利用本體對該機構的組織、資源、技術等進行邏輯描述。與資源直接相關是人,通過本體的邏輯性就可以知道,需要資源的人是屬于哪個部門的,他具有什么樣的研究技能。通過對機構的本體描述就可以優化機構的運作流程,促進信息溝通和便于協同管理。

本文提出了基于功能本體的智能檢索系統的構建模式和設計思想并且對系統的實現方案進行了解析和探索研究。

1 智能檢索系統框架設計方案

本文采用以Java環境下的Eclipse平臺加MySQL數據庫作為系統實現的基礎,并使用Jena和JPowerGraph等Java開源包。系統的體系結構如圖1所示。

智能檢索系統是一個三層體系架構:

1.1 表示層

這一層主要是通過JSP給用戶提供UI接口。用戶需求輸入的表達方式主要有如下幾種:一是以自然語言方式表示,最典型的例子是關鍵字的方式;二是以特定的查詢語言表示,如SQL、RQL、SPARQL[2]等;三是以可視化的方式表示,例如通過菜單選擇查詢條件的方式。本文設計的用戶需求輸入的目標就是在準確表達用戶需求的同時,盡可能使得用戶的輸入操作簡單易行,因此一方面從服務器端取得本體的Schema,生成清晰的樹形結構,用戶可以通過點擊樹形結構上的節點獲得所需信息,另一方面用戶可以根據需要選擇檢索的類型,比如“根據地區檢索”、“根據研究機構檢索”、“根據研究人員檢索”、“根據研究項目”等等。也可以通過限制查詢條件和查詢范圍和特定關鍵詞來實現復雜查詢。

結果語義輸出[3]是指把語義類、語義屬性和語義關系的實例進行可視化的輸出,對JPowerGraph開源包進行二次開發,把相關的語義數據轉化為相關聯的節點和邊,動態的呈現給用戶。

1.2 數據層

數據層包含本體Schema、推理規則和OWL知識庫3部分。本文以網上公布的中科院圖情機構相關信息作為原始材料進行語義提取,將最終結果轉化為OWL格式文件本體數據,從本質上來講,就是一組OWL文件和一系列推理規則(Rules)文件。本論文的智能檢索系統中所構建的中科院組織結構信息本體是從地區、機構、人員、項目4個維度來定義的語義本體。

首先通過討論確定語義類、語義屬性、語義關系以及傳遞、對稱、相反等規則。然后將討論結果定義為數據字典,數據字典包括名稱及其說明部分。最后在數據字典確定以后,通過Protégé手工創建OWL和推理規則文件。

1.2.1 本體Schema

本體的Schema是整個系統的概念基礎,它提供了本體模型基本的類別層次結構,是定義推理規則的基礎,是OWL知識庫中信息的結構基礎。

1.2.2 推理規則

推理規則以Jena規則語法描述,是進行基于推理的查詢的基礎。

1.2.3 OWL知識庫[4]

用OWL描述的本體知識,是智能檢索系統的數據源,它不僅包含了實例化的本體本身,還包含了本體經過描述邏輯推理(DL reasoning)[5]分類后的隱含信息以及本體推理引擎推理所獲得的蘊含知識。

1.3 推理層

推理層采用Jena[6]自帶的GenericRuleReasoner。該泛化規則引擎是基于規則的,并且支持用戶的自定義。該推理引擎支持前向鏈、后向鏈以及二者混合的推理執行模型,更準確地說,Jena有2個內部規則引擎:前向鏈推理RETE[7]引擎和一個tabled da talog engine[7]。它們可以獨立運行,或者前向鏈作為后向鏈引擎的先導,來完 成“查詢——問答”。泛化規則引擎可以自定義規則,因此具有強大的推理功能和靈活性, 并且易于擴展,因此本智能檢索系統的推理以基于靜態規則推理為主,采用GenericRuleRea soner,根據事實庫中的已有事實,加載規則庫中的規則,并將新的事實加入到OWL知識庫中 ,實現了OWL知識庫內容的更新與擴充。

2 智能檢索系統實現方案

2.1 瀏覽器端

對于瀏覽器端而言,采用Ajax框架實現瀏覽器端的主要功能。Ajax采取了JavaScript+DOM的方式來實現與瀏覽器的交互功能。另外,Ajax利用基于JavaScript的XmlHttpRequest組件提供Xml數據異步傳輸,它能夠實現頁面無刷新的數據傳輸。瀏覽器端主要包括了以下3個方面的功能:

2.1.1 本體知識的檢索

本體檢索的界面如圖2所示。用戶可以采用簡單查詢和復雜查詢2種方式來進行本體知識檢 索。簡單查詢就是輸入關鍵詞進行查詢。復雜查詢一方面可以通過導入本體的Schema文件,采用Jtree這個插件生成清晰的本體檢索導航樹,用戶可以點擊相關節點進行查詢。另一方面用戶可以指定檢索條件和檢索關系來構造復雜查詢。檢索條件包括地區名稱、機構名稱等等。檢索關系包括所屬關系、擁有關系、合作關系等等。

2.1.2 本體知識的添加

本體知識的添加的界面如圖3所示。用戶通過添加各個類別的實例來實現OWL事實庫的初始化。本體的Schema和本體的初始事實庫是以后進行語義推理的知識基礎。用戶也可以直接添加本體事實描述,用戶首先選擇相關的本體類別,比如說用戶選擇了“Branch”類,則后面級聯的選擇框會自動彈出事實庫中已有的該類的實例,比如說用戶選擇了“國家科學圖書館北京分館”的實例,然后選擇“HasDepartment”關系,在最后的本體實例框中填寫了“信息技術部”,這樣用戶就添加了這樣一條本體事實:

國家科學圖書館→HasDepartment→信息技術部

2.1.3 結果語義可視化輸出

結果語義可視化輸出如圖4所示,這個功能主要是通過JPowerGraph開源包來實現的。用戶在客戶端提交了檢索內容后,服務器端通過語義推理將與檢索內容相關聯的語義類、語義屬性和語義關系傳回給客戶端,客戶端再通過JPowerGraph可視化功能把獲得的相關聯的語義類、語義屬性和語義關系的實例轉化成節點和邊,動態的呈現給用戶。

2.2 服務器端

對于服務器端而言,包括數據層和推理層兩層結構,所以服務器端主要實現以下兩大功能模塊:

2.2.1 本體知識庫的建立和持久化

本文以中科院圖情機構為例說明構建機構信息這個功能本體的基本流程。

(1)機構信息本體的建立

因為機構具有良好的層次性,所以采用自上而下的本體構建法。首先標識本體中最通用的概念,然后在通用層次上創建相應的種類并逐步的細化本體。總體而言只要包括以下3個步驟:

①分析機構本體和定義數據字典

該機構本體是中科院圖情方向的機構信息為基礎,利用本體語言對該方向的組織機構、主要研究人員、重大研究項目等進行邏輯描述。所以相關的實體主要包括:

相關本體描述:

1.房俊民老師是情報研究部的成員。

2.房俊民老師的研究方向是競爭情報。

3.……

4.……

圖4 語義結果可視化輸出

機構:名稱,地址,簡介

分支機構:名稱,地址,簡介

部門:名稱,人員數目,簡介

導師:姓名,職稱,性別

學生:姓名,性別

研究方向:名稱,簡介

研究項目:名稱,時間段,經費

本文將機構信息所用到的詞典整理出來,這些詞匯有可能是類或是屬性,將在后面幾個步驟中加以區分。表1是本文所制定的詞典。

詞 匯Class/Property定 義OrganizationClass所有分支機構的父類BranchClass分支機構類DepartmentClass部門類InstructorClass導師類StudentClass學生類DirectionClass研究方向類ProjectClass研究項目類NameDatatype Property名稱AddressDatatype Property地址IntroductionDatatype Property簡介InstructorNumDatatype Property導師數目StudentNumDatatype Property學生數目PositionDatatype Property職稱SexDatatype Property性別PeriodDatatype Property時間段OutlayDatatype Property經費HasBranchsObject Property機構擁有的分支機構HasDepartmentsObject Property分支機構的部門HasInstructorsObject Property部門擁有的導師HasDirectionObject Property導師的研究方向 續表1

詞 匯Class/Property定 義HasStudentsObject Property導師指導的學生InverseofHasStudentsObject Property學生的指導導師HasProjectsObject Property導師的研究項目HasPartnerObject Property導師項目的合作老師

②建立類別、屬性和實例

類別:

該本體包括Organization、Branch、Department、Instructor、Student、Direction、Project等類別及其它們的子類別和父類別,本體的根節點是owl:Thing。

屬性:

在屬性方面可分為數據屬性(Datatype Property)和對象屬性(Object Property)。

數據屬性:使用RDF(S)的數據類型,包括定義域(domain)、值域(range)和公理(axiom)。

定義域:定義域限制該屬性在哪一個類別使用。

值域:數據屬性的限制包含any、string、integer、boolean、float、symbol,可以使用xml schema datatype,在填入實例時只要符合其數據類型限制即可。

公理:可以使用functional,如果一個屬性P被聲明為functional,那么對于每個個體,屬性最多只有1個值。

該機構信息本體的數據屬性如表2所示。Name使用的定義域包括Organization、Branch、Department、Instructor、Student、Direction、Project等類別,因為這些類別都會有一個特定的名字,所以Axiom是Functional的。其它幾項數據屬性也同樣具有Functional的特性。

對象屬性:仍然包括定義域(domain)、值域(range)和公理(axiom)3個方面。

定義域:限制該屬性在哪一個類別中使用。

值域:對象屬性的值域是類的實例而不是具體的數值。

公理:包含Functional、InverseFunctional、Symmetric、transitive、Inverse等Axiom。

該機構信息本體的對象屬性如表3所示。

HasBranch的Domain是Organization,Range是Branch類的實例,定義了Organization擁有的Branch。

HasDepartment的Domain是Branch,Range是Department類的實例,定義了Branch擁有的Department。

HasInstructors的Domain是Department,Range是Instructor類的實例,定義了Department擁有的Instructor。

HasDirection的Domain是 Instructor,Range是Direction類的實例,定義了Instructor的Direction,因為中科院圖情方向的老師一般都只有1個研究方向,所以Axiom是Functional。

HasStudents的Domain是Instructor,Range是Student類的實例,定義了Instructor擁有的Student。因為中科院圖情方向的老師一般都只有1個學生,所以Axiom是Functional。并且設定它與InverseofHasStudents具有Inverse的關系。

InverseofHasStudents的Domain是Student,Range是Instructor類的實例,定義了Student的Instructor。它與HasStudents屬性具有Inverse的關系,并且HasStudents是Functional的,所以InverseofHasStudents具有InverseFunctional屬性。

HasProjects的Domain是Instructor,Range是Project類的實例,定義了Instructor擁有的Project。

HasPartner的Domain是Instructor ,Range是Instructor類的實例,定義了Instructor擁有的Partner。因為對于同一個項目的導師而言他們是互為partner,因此Axiom是Symmetric。

實例:

在本體的Schema構建完成后,Organization類、Branch類、Department類、Instructor類、Student類、Direction類、Project類的實例作為初始化的查詢條件,在本體規則基礎上經過首次推理以后形成原始的OWL知識庫。

(2)本體知識庫的持久化

本體數據持久化有文件存儲和數據庫存儲2種方式,文件存儲是將本體庫以文件形式存儲在本地文件系統中,將數據從文件中讀入內存,在內存中對本體庫進行一系列的操作,操作完成后再將本體庫以文件形式寫回到文件中。

以文件方式存儲本體庫輕便快捷,適合于小型的本體庫。因為它不需要過多的配置,而且便于備份、復制,還可以隨時編輯修改,而且查詢速度快。缺點在于不適合較大的本體庫,因為它每次都需要讀入內存在做操作,因此耗用太多的內存,如果再加入推理機將會占用大量 的內存,而且對于模型的修改需要一次性保存全部模型,效率不高。

而關系數據庫來持久化本體數據可以處理更大更復雜的本體模型,而且利用數據庫存儲本體模型,可以使得本體模型具有更大的靈活性和可擴展性,對于大多數本體應用來說,數據庫方式是較好的選擇。

因此本智能檢索系統采用關系數據庫來持久化本體數據,Jena通過一個數據庫引擎接口實現了對本體模型的透明持久化,目前支持的數據庫主要包括3種:MySQL,Oracle,PostgreSQL and Microsoft SQL server。本系統采用MySQL作為本體數據庫。其核心代碼包括4個方面:

①創建數據庫的連接

IDBConnection conn=new IDBConnection(MDBURL,MDBUSER,MDBPASSWD,MDB);

OntModelSpec spec=OntModelSpec.OWLMEM;

spec.setModelMaker(ModelFactory.createModelRDBMaker(conn));

②在已有數據庫連接的基礎上創建本體模型

Model base=maker.createModel(″MyNameModel″);

OntModel model=ModelFactory.createOntologyModel(spec,base);

③把本體本件轉化成三元組存儲到MySQL數據庫中

URL url=ClassLoader.getSystemResource(″file:src-examples/data/test1.owl″);

model.read(url.toString(),″RDF/XML-ABBREV″);

④從MySQL數據庫中獲取已存儲的本體數據

Model m=

ModelFactory.createModelRDBMaker(conn.openModel(″MyNameModel″));

2.2.2 本體推理規則庫的建立和推理引擎的加載

(1)建立推理規則庫[8]

在基于規則的推理機中,規則被定義為一個Java的Rule對象,該對象由body terms(前提)的list,head terms(結論)list以及可選的名字和可選的方向來定義。每一個term或者ClauseEntry是一個三元模式(triple pattern),一個擴展的三元模式(extended triple pattern)或者一個內嵌過程原語的調用。

規則文件支持一些額外的宏命令:

@prefix pre:http:∥domain/url#。

定義一個前綴pre,前綴對規則文件來說是局部的。

@include

包含在一個給定文件中定義的規則。不管@include出現在哪里,包含的規則都將出現在用戶定義的規則前面。規則文件可以包含預定義的規則,例如RDFS和OWL等,這時urlToRuleFile被關鍵字RDFS,OWL,OWLMicro,OWLMini取代。

下面是包含RDFS預定義規則的一個規則文件的完整例子:

# Example rule file

@prefix ins:.

@prefix rel:.

@include.

[rule1:(?f ins:hasproject?a)(?u ins:hasproject?a)->(?f rel:haspartner?u)]

這條規則是指如果導師f有項目a,導師u也有項目a,推出導師f和導師u是合作者。

(2)加載規則推理引擎[9]

規則文件的加載和分析是這樣進行的:

List rules=Rule.rulesFromURL(″file:myfile.rules″);

或者

BufferedReader br=/*open reader*/;

List rules=Rule.parseRules(Rule.rulesParserFromReader(br));

或者

String ruleSrc=/*lists of rules in lines*/

List rules=Rule.parseRules(rulesSrc);

3 小 結

本文以機構信息為例著重闡述了基于本體的智能檢索系統框架設計和基本功能模塊的實現。本體推理模塊在本體的描述邏輯上加載了可以自定義規則的泛化規則引擎,提高了推理能力,從而可以獲得更加有意義的蘊含知識。本體數據持久化的模塊采用數據存儲與本體模型存儲相分離的方案,即:本體數據庫只存儲基本的數據信息,本體Schema采用單獨的文件保存。OWL知識庫的已有事實在加載本體Schema后,經過推理獲得新的蘊含知識添加到OWL知識庫中,從而實現了OWL知識庫的更新與擴充。這種方式的本體數據存儲的數據結構設計更加簡單,本體模型也具有更好的遷移性。而對于如何做好本體的可重用性和面向特定領域之間的平衡,以及推理規則的優化和大規模本體存儲的數據結構設計是今后研究工作的重點和難點所在。

參考文獻

[1]鄧志鴻,唐世渭,張銘,等.Oniology研究綜述[J].北京大學學報:自然科學版,2002,38(5):730-738.

[2]SPARQL Query Language for RDF[EB/OL].http:∥www.w3.org/TR/rdf-sparql-query,2008-05-10.

[3]董慧,余傳明,楊寧,等.基于本體的數字圖書館檢索模型研究——體系結構解析[J].情報學報,2006,25(3):269-275.

[4]Zhijun Zhang.Ontology Query Languages for the Semantic Web:A Performance Evaluation.Masters Thesis,2005:5-34.

[5]F.Baader,D.Calvanese,D.MeGuinnes,The Description Logic Handbook:Theory,Implementation and Applications,Cambridge University Press,2003.

[6]Jena-A Semantic Web Framework for Java[EB/OL].http:∥jena.sourceforge.net,2008-03-15,2008-09-10.

[7]袁方,王濤.基于本體的推理機研究[J].計算機工程與應用,2006,(9):158-165.

[8]侯冕,廖樂健.基于語義Web本體語言的推理機引擎的實現[J].軍民兩用技術與產品,2005.7:41-43.

[9]韓亞洪,劉永革.本體的查詢與推理機制研究[J].計算機工程與應用,2005.9:82-85.

主站蜘蛛池模板: jizz在线免费播放| 中文字幕欧美日韩高清| 日韩精品一区二区三区中文无码| 99这里只有精品免费视频| 亚洲一级毛片免费观看| 粉嫩国产白浆在线观看| 26uuu国产精品视频| 国产午夜人做人免费视频中文| 在线观看免费黄色网址| 91视频青青草| 中文毛片无遮挡播放免费| 国产视频a| 永久免费AⅤ无码网站在线观看| 欧美成在线视频| 99热最新在线| 色欲色欲久久综合网| 情侣午夜国产在线一区无码| 久久精品娱乐亚洲领先| 美女视频黄又黄又免费高清| 亚洲人成影院在线观看| 国产成人精品视频一区视频二区| 国产尤物jk自慰制服喷水| 国产成人精品在线1区| 国产丝袜丝视频在线观看| 无码精品国产dvd在线观看9久| 国产成人艳妇AA视频在线| 蜜臀AV在线播放| 一级香蕉人体视频| 永久免费无码成人网站| 无码福利视频| 五月婷婷综合网| 亚洲日本韩在线观看| 狠狠五月天中文字幕| 久久综合九九亚洲一区| 亚洲乱码在线视频| www.狠狠| 亚洲系列无码专区偷窥无码| 国产成人综合日韩精品无码不卡| 91精品国产一区| 丝袜久久剧情精品国产| 九九久久精品国产av片囯产区| 99视频只有精品| 熟妇丰满人妻av无码区| 亚洲av无码人妻| 91在线高清视频| 精品视频一区二区三区在线播| 亚洲一区毛片| 日本免费新一区视频| 免费国产不卡午夜福在线观看| 国产无码精品在线播放| 久久久久夜色精品波多野结衣| 免费黄色国产视频| 中美日韩在线网免费毛片视频| 午夜福利亚洲精品| 日本久久免费| 国产精品真实对白精彩久久| 浮力影院国产第一页| 国产理论一区| 国产精品lululu在线观看| 成人在线观看一区| 欧美成人午夜视频| 欧美日韩精品一区二区视频| 强奷白丝美女在线观看| 香蕉久人久人青草青草| 日韩高清欧美| 一级爆乳无码av| 国产成人精品午夜视频'| 免费一极毛片| yjizz国产在线视频网| 国产97视频在线观看| 日韩国产另类| 久青草免费在线视频| 国产人成在线视频| 在线欧美国产| 日韩美女福利视频| 粗大猛烈进出高潮视频无码| 免费无码又爽又黄又刺激网站| 日韩美一区二区| 黄色网站在线观看无码| 国产精品大尺度尺度视频| 国产精品久久国产精麻豆99网站| 国产第一页亚洲|