●白如江,王效岳(山東理工大學(xué) 圖書館,山東 淄博 255049)
●芮文浩 (安徽安慶師范學(xué)院 文學(xué)院,安徽 安慶 246133)
KIM是OntoText實(shí)驗(yàn)室的研究項(xiàng)目。該項(xiàng)目的研究成果KIMPlatform(Knowledge andInformationManagementPlatform)提供了一個(gè)語義服務(wù)平臺構(gòu)架和在此構(gòu)架上的應(yīng)用,包括網(wǎng)頁內(nèi)容的半自動的語義標(biāo)注、本體部署、基于內(nèi)容的語義索引、檢索和知識導(dǎo)航以及知識問答。
KIM平臺包括以下四個(gè)部分:KIMOntology、KIM WorldKB、KIMServer和Front-ends。如圖1所示。
KIM的中部是API模塊。語義標(biāo)注模塊API對與KIM本體和KB有關(guān)的文檔進(jìn)行標(biāo)注,同時(shí)還提供內(nèi)容和標(biāo)注管理的基礎(chǔ)設(shè)施。文檔持久API模塊通過存儲文檔和相關(guān)標(biāo)注從數(shù)據(jù)集中加載。索引API基于Lucene信息檢索引擎,通過修改索引策略允許對命名實(shí)體建立索引。查詢API模塊可以看成是語義檢索API,允許傳統(tǒng)的關(guān)鍵字搜索和其他基于本體的訪問方法。同時(shí)它還能夠建立復(fù)合型搜索,將實(shí)體搜索、關(guān)鍵字搜索和實(shí)體模式搜索集成在一起。語義存儲API能夠管理和訪問知識庫,通過RDFS和方法集訪問已有的知識庫。
圖1 KIM體系結(jié)構(gòu)
KIM在技術(shù)上借助了目前在本體及自然語言處理領(lǐng)域比較受推崇的三個(gè)開源項(xiàng)目:GATE[1]、Sesame[2]和 Lucene。[3]
GATE項(xiàng)目開始于1995年英國的謝菲爾德大學(xué),其全稱是General Architecture forText Engineering,文本工程通用框架。經(jīng)歷了近10年的不斷發(fā)展,GATE已經(jīng)被應(yīng)用于廣泛的研究和項(xiàng)目開發(fā)。GATE的主要開發(fā)者認(rèn)為,GATE可以被看作是語言工程的軟件架構(gòu)。
GATE框架采用了基于組件的軟件開發(fā)方式和面向?qū)ο蟮撵`活編程。GATE框架是由純Java語言開發(fā)的免費(fèi)開源軟件,遵循GNU library license。GATE使用的編碼方式是Unicode,可以支持多種語言編碼,并且針對各種斯拉夫語言、日爾曼語言、拉丁系語言和印度語做過系統(tǒng)測試。GATE支持的文檔類型包括XML、RTF、Email、HTML、SGML以及純文本文件。
GATE作為一個(gè)框架,規(guī)定其框架內(nèi)所有的自然語言處理軟件系統(tǒng)元素都可以有效地被細(xì)分成不同的幾種組件,在GATE中它們被稱為資源。在GATE框架下組件的集合被稱為CREOLE(a Collection of Reusable Objects forLanguage Engineering)。CREOLE組件是通過Java Beans的形式來實(shí)現(xiàn)的,CREOLE在GATE中分為三種形式:語言組件(LR)、處理組件(PR)和可視化組件 (VR)。
GATE除了提供語言組件(LR)、可視化組件(VR)和處理組件(PR)之外,還提供了一些其他組件,比如GATE 提供了 JAPE(a Java Annotation Patterns Engine)作為建立規(guī)則庫的語法工具組件,用于英文信息抽取 的組件 ANNIE(ANearly-NewInformationExtraction System)。其中,JAPE提供了基于正規(guī)表達(dá)式的標(biāo)注有限狀態(tài)轉(zhuǎn)換,我們通過JAPE手工設(shè)立各種規(guī)則來實(shí)現(xiàn)分詞、分句和命名實(shí)體識別等功能。優(yōu)秀的規(guī)則設(shè)置可以大大提高信息抽取的準(zhǔn)確性。
Sesame是一個(gè)本體存儲工具,可以用來存儲和查詢由RDF、RDFS語言構(gòu)建的本體,是歐洲IST項(xiàng)目On-To-Knowledge的一部分。值得指出的是,Sesame的設(shè)計(jì)和實(shí)現(xiàn)與具體的存儲設(shè)備無關(guān),這意味著Sesame可以部署在各個(gè)不同的存儲設(shè)備之上,如關(guān)系型數(shù)據(jù)庫、面向?qū)ο髷?shù)據(jù)庫、文本文件等,但對外可提供一致的訪問接口,從而屏蔽了底層存儲設(shè)備的異構(gòu)性。我們采用Sesame來存儲protonontology,以及信息抽取出的ontology。
Lucene是一個(gè)基于 Java的全文信息檢索工具包,它不是一個(gè)完整的搜索應(yīng)用程序,而是為應(yīng)用程序提供索引和搜索功能。Lucene目前是 Apache Jakarta家族中的一個(gè)開源項(xiàng)目。也是目前最為流行的基于 Java開源全文檢索工具包。
在KIM中KIMOntology中定義了實(shí)體的類型、實(shí)體類型的關(guān)系和屬性,而實(shí)體的具體描述則保存在KIMKnowledge Base中。所謂KIM Knowledge Base,就是所有實(shí)體的描述集合。可以把KIMOntology看作是KIM Knowledge Base的模式(Schema),兩者都采用RDFS存儲在語義數(shù)據(jù)庫中,該語義數(shù)據(jù)庫存儲工具能夠支持知識推理、檢索,甚至版本控制、訪問控制、事務(wù)處理等功能。
KIM KB已經(jīng)建立了一些重要實(shí)體的知識庫,目前包括8萬個(gè)實(shí)體。例如KB包含了5萬個(gè)位置實(shí)體,包含大陸、地區(qū)、282個(gè)國家、4700座城市以及山峰、河流、海洋甚至油田。為了使IE處理能夠識別KB中不包含的新實(shí)體和關(guān)系,KB還提供了詞匯資源的集合,該集合覆蓋了組織機(jī)構(gòu)的后綴、人名、時(shí)間、貨幣前綴,等等。為了保證KB對重要實(shí)體的覆蓋率,KB要一直處理和分析全球主要新聞的內(nèi)容,每周要更新4000份文檔,包括從15個(gè)媒體收集的重要報(bào)道、經(jīng)濟(jì)、政治新聞。
基于KIM語義檢索系統(tǒng)分為實(shí)體搜索、實(shí)體模式搜索、預(yù)先定義模式搜索、本體瀏覽、關(guān)鍵詞搜索等幾部分功能。下面就幾個(gè)重要的功能分別進(jìn)行介紹。
在實(shí)體模式搜索界面中讀者可以根據(jù)自己的要求進(jìn)行檢索資源。舉個(gè)例子,如果要查詢“座落于中國的員工人數(shù)大于300的企業(yè)是哪些?并輸出這些企業(yè)的信息”。在實(shí)體模式搜索界面下,我們首先選擇X是一個(gè)organization,然后,確定X和Y的關(guān)系是X座落于Y,Y的值是“CHINA”;在屬性約束欄目中,我們定義X的“numberOfemployee”屬性大于“300”,最后點(diǎn)擊Entites按鈕就可以得到搜索結(jié)果了。如圖2所示。
圖2 實(shí)體模式搜索界面
在實(shí)體模式搜索結(jié)果界面,我們可以看到剛才定義的想要查找的內(nèi)容,總共有3條記錄符合要求,分別是 Yanzhou Coal Mining Company Limited、Qiao Xing Universal Telephone,Inc.、HaierGroupCompany。
如果想繼續(xù)了解海爾公司的情況,我們點(diǎn)擊“HaierGroup Company”,這樣就可以看到與海爾公司相關(guān)的信息。如果點(diǎn)擊“D”按鈕,就可以獲得與海爾公司有關(guān)的文檔。此外我們還可以通過點(diǎn)擊“V”按鍵得到有關(guān)海爾公司的可視化信息。這樣就能幫助讀者方便迅速地了解了海爾公司的主要情況,而這是傳統(tǒng)信息檢索系統(tǒng)所不能的。
在預(yù)先定義搜索模式中,可以選擇預(yù)先定義好的搜索模式。比如,我們要查詢海爾公司的CEO是誰,我們就可以選擇“Person has Position Job Position within Organization Organization”模式,然后在person欄目中留空,在who has position一欄中填入CEO,在within Organization一欄中填入HaierGroup Company。然后點(diǎn)擊entity按鈕就可以找到海爾的CEO是張瑞敏。如果想要繼續(xù)了解有關(guān)張瑞敏的信息可以繼續(xù)點(diǎn)擊“Zhang Ruimin”,如果想查看與“Zhang Ruimin”有關(guān)的文檔點(diǎn)擊“D”按鈕;如果想查看與“ZhangRuimin”有關(guān)的可視化信息點(diǎn)擊“V”按鈕。我們還可以自己設(shè)定自己經(jīng)常需要用到的一些查詢模式存儲到預(yù)先定義搜索模式中。
基于KIM語義檢索系統(tǒng)還提供了通過傳統(tǒng)的關(guān)鍵詞查找來搜索我們想要的資源。比如我們要查詢有關(guān)于石油(oil)方面的文檔,可以在content欄目中輸入“oil”一詞,然后點(diǎn)擊Documents,就可以得到查詢結(jié)果。除此之外,我們還可以按照標(biāo)題、副標(biāo)題、作者等選項(xiàng)查找資源。查詢到某篇文章后,我們可以在系統(tǒng)中將其打開,然后通過系統(tǒng)對文章進(jìn)行標(biāo)引。這樣,讀者可以隨時(shí)點(diǎn)擊自己感興趣的內(nèi)容,做到了真正的智能檢索。如一篇題為“Spy claim threat to SingTel's buyinAustralia”的文章,我們通過系統(tǒng)打開,然后對其進(jìn)行標(biāo)引。當(dāng)我們看到“Australian National University”這個(gè)詞條時(shí),如果讀者不熟悉Australian National University的有關(guān)信息,就可以點(diǎn)擊它。這時(shí)系統(tǒng)會彈出與Australian National University有關(guān)的信息。同樣,如果我們想瀏覽和“Australian National University”有關(guān)的文章時(shí)可以繼續(xù)點(diǎn)擊“D”按鈕,想瀏覽與“Australian National University”有關(guān)的可視化信息可以點(diǎn)擊“V”按鈕。
本文介紹了一個(gè)語義信息檢索平臺KIM。KIM通過對文檔建立基于本體的語義模式,結(jié)合傳統(tǒng)的IR技術(shù),一定程度上能夠提高檢索的查全率。它開拓了信息檢索的新領(lǐng)域,利用了文檔豐富的語義信息和傳統(tǒng)的信息檢索技術(shù),會是未來檢索技術(shù)發(fā)展的一個(gè)熱點(diǎn)領(lǐng)域。
KIM的解決方案為協(xié)同環(huán)境下基于搜索的文檔定位提供了一個(gè)很有價(jià)值的研究方向。傳統(tǒng)的信息檢索技術(shù)目前已經(jīng)非常成熟,但是查詢效果不是令人很滿意。傳統(tǒng)的信息檢索根本不會理解查詢者的意圖,不會理解文檔中每句話中的語義信息。顯而易見,KIM現(xiàn)在可以解決這個(gè)問題,但尚不完美。
KIM的信息抽取是基于英文的,我們未來的工作目標(biāo)應(yīng)該是使KIM實(shí)現(xiàn)中文的語義信息檢索。
[1]Gate Research Group.General Architecture for Text Engineering[EB/OL].[2010-02-10].http://www.gate.ac.uk/,2009-09-01.
[2]Open RDF org.Sesame Project[EB/OL].[2010-02-19].http://www.openrdf.org/,2009-09-07.
[3]TheApacheSoftwareFoundation.LuceneProject[EB/OL].[2010-02-19].http://lucene.apache.org/,2009-09-07.