袁國銘,樊波,成天華
本體(Ontology)的概念最初起源于哲學領(lǐng)域,可以追溯到公元前古希臘哲學家亞里士多德(384-322b.c.)。它在哲學中的定義為:“對世界上客觀存在物的系統(tǒng)描述,即存在論”,是客觀存在的一個系統(tǒng)的解釋或說明,關(guān)心的是客觀現(xiàn)實的抽象本質(zhì)。
Ontology這個哲學范疇,被人工智能界賦予了新的定義,從而被引入信息科學中,然而信息科學界對 Ontology的理解也是逐步發(fā)展才走向成熟的。1991年Neches等人最早給出Ontology在信息科學中的定義:“給出構(gòu)成相關(guān)領(lǐng)域詞匯的基本術(shù)語和關(guān)系,以及利用這些術(shù)語和關(guān)系構(gòu)成的規(guī)定這些詞匯外延規(guī)則”。后來在信息系統(tǒng)、知識系統(tǒng)等領(lǐng)域,隨著越來越多的人研究 Ontology,產(chǎn)生了不同的定義;1993年Gruber定義Ontology為“概念模型的明確的規(guī)范說明”。1997年Borst進一步完善為“共享概念模型的形式化規(guī)范說明”。Studer等人對上述兩個定義進行了深入研究,認為:“Ontology是共享概念模型的明確的形式化規(guī)范說明”,這也是目前對Ontology概念的統(tǒng)一看法[1-2]。
Studer等人的Ontology定義包含4層含義:概念模型(Conceptualization)、明確(Explicit)、形式化(Formal)和共享(Share)。“概念模型”是指通過抽象出客觀世界中一些現(xiàn)象(Phenomenon)的相關(guān)概念而得到的模型,其表示的含義獨立于具體的環(huán)境狀態(tài);“明確”是指所使用的概念及使用這些概念的約束都有明確的定義;“形式化”是指Ontology是計算機可讀的,也就是計算機可處理的;“共享”是指 Ontology中體現(xiàn)的是共同認可的知識,反映的是相關(guān)領(lǐng)域中公認的概念集,它所針對的是團體而非個體。Ontology的目標是捕獲相關(guān)領(lǐng)域的知識,提供對該領(lǐng)域知識的共同理解,確定該領(lǐng)域內(nèi)共同認可的詞匯,并從不同層次的形式化模式上給出這些詞匯(術(shù)語)和詞匯之間相互關(guān)系的明確定義。
盡管定義有很多不同的方式,但是從內(nèi)涵上來看,不同研究者對于 Ontology的認識是統(tǒng)一的,都把它當作是領(lǐng)域(領(lǐng)域的范圍可以是特定應用中,也可以是更廣的范圍)內(nèi)部不同主體(人、機器、軟件系統(tǒng)等)之間進行交流(對話、互操作、共享等)的一種語義基礎(chǔ),即由 Ontology提供一種共識,如圖1所示:

圖1 本體層次
本體處于處于一種公共基本平臺層次。而且 Ontology提供的這種共識更主要的是為機器服務(wù),機器并不能像人類一樣理解自然語言中蘊含的語義,目前的計算機也只能把文本看成字符串進行處理。因此,在計算機領(lǐng)域討論Ontology,就要討論如何表達共識,也就是概念的形式化問題。本體作為一種知識共享模式,為特定領(lǐng)域的人和應用系統(tǒng)的交流提供了極大的便利,也正因為如此,本體的研究和應用迅速延伸到知識工程、自然語言處理、信息檢索系統(tǒng)、智能信息集成和知識管理、信息交換和軟件工程等領(lǐng)域。而如何對這些不同領(lǐng)域內(nèi)的知識進行抽取和描述并構(gòu)建出合適的領(lǐng)域本體已經(jīng)成為當前的研究熱點之一。
領(lǐng)域本體(Domain-specific ontology)是對學科概念的一種描述,包括學科中的概念、概念的屬性、概念間的層次和非層次關(guān)系、屬性和關(guān)系的約束以及存在的公理等。由于知識具有顯著的領(lǐng)域特性,所以領(lǐng)域本體能夠更為合理而有效的進行知識的表示。領(lǐng)域本體一般用來表示某一特定領(lǐng)域范圍內(nèi)的專業(yè)知識,在各個領(lǐng)域的本體目前發(fā)展迅速[3-5]。
本體的有效工作需要使用高級本體語言來表達和描述本體信息,本體描述語言需要滿足以下3條標準:
(1) 對人類用戶應有較高的直覺,考慮到基于框架OO建模范例的成功,本體應該類似于框架建模。
(2) 應該有包含已定制的、推理特性的、定義良好的形式化語義,以確保其完整性、正確性和有效性。
(3) 應與現(xiàn)有的Web語言有著適當?shù)逆溄樱源_保其互用性。
自上世紀90年代以來,許多科研工作者在這個領(lǐng)域進行深入的研究,產(chǎn)生了許多種類的本體描述語言,如RDF(s)、OWL、OIL、Ontolingua、XOL等等。我們把它們簡單的歸類如下:
(1) 基于Web的本體語言(也叫做本體標記語言)有:RDF(S)、OWL、SHOE、OIL等等。其中RDF(S)、OWL、OIL之間有著密切的聯(lián)系,是W3C的本體語言棧中的不同層次,也都是基于XML的。而SHOE是基于HTML的,它是HTML的一個擴展。
(2) 基于AI(Artificial Intelligence)的本體實現(xiàn)語言有:KIF、Ontolingua、CycL、Loom、OCML、Flogic。KIF己經(jīng)是美國國家標準,但是它并沒有被廣泛應用于互聯(lián)網(wǎng),而是作為一種交換格式更多的應用于企業(yè)之間的交互。
常用的13種本體論語言的比較如表1所示:

表1 本體論語言的比較
通過對這13種語言在概念(Concepts)、多元關(guān)系(n-aryrelations)、函數(shù)(Functions)、過程(Procedures)、實例(Instances)、公理(Axioms)、產(chǎn)生式規(guī)則(Production Rules)和形式語義(Formal Semantics)的橫向比較,得到相對結(jié)論:(1)Loom是定義最完備、功能最齊全的本體表示語言。(2) CycL,Ontolingua和OWL也能較好的表示本體語言。
在過去的20年里,已經(jīng)出現(xiàn)了上百種本體構(gòu)建工具,從最早的Ontolingua,Onto Saurus,Web Onto,到Protégé,Web ODE,Oil Ed,Onto Edit,以及KAON等,本體構(gòu)建工具也日趨成熟。這些工具提供了友好的圖形化界面和一致性檢查機制。借助這些工具,用戶可以把精力集中在本體內(nèi)容的組織上,而不必了解本體描述語言的細節(jié),而且避免了很多錯誤的發(fā)生,方便了本體的構(gòu)建。但是,這些工具提供的僅僅是本體編輯功能,支持的仍然是手工構(gòu)建本體的方式。即使使用這些本體編輯工具,用戶依然需要逐個地輸入和編輯每個概念的名字、約束、屬性等內(nèi)容。現(xiàn)有的大部分系統(tǒng),例如Cyc和Mikrokosmos等,都是靠手工輸入大量的知識,然后才能基于這些知識進行推理或獲取新的知識。由于手工方法費時費力,使得本體的構(gòu)建成為一項艱巨的任務(wù)。因此,如何利用知識獲取技術(shù)來降低本體構(gòu)建的開銷是一個很有意義的研究方向。目前,國外在該方向的研究很活躍,把相關(guān)的技術(shù)稱為本體學習(Ontology learning)技術(shù),其目標是利用機器學習和統(tǒng)計等技術(shù)自動或半自動地從已有的數(shù)據(jù)資源中獲取期望的本體。由于實現(xiàn)完全自動的知識獲取技術(shù)還不現(xiàn)實,所以,整個本體學習過程是在用戶指導下進行的一個半自動的過程。
本節(jié)將特別介紹WebOnto,OntoEdit,Hozo和Protégé這四個各具特色的本體開發(fā)工具。
(1) WebOnto
WebOnto是由英國Open大學的知識媒體研究所開發(fā),可通過Internet訪問基于Web的完全圖形化工具[32]。它支持本體的寫作瀏覽、生成和編輯,還提供直接接口以便通過大量的媒介顯示出本體表示。不同的用戶都可以生成本體注釋并用不同的顏色對當前本體進行修改等一系列操作。
WebOnto的主要目標是簡單易用且便于擴展到大的本體應用中,還是本體討論工具Tadzebao的補充,對本體進行建模的語言是VITAL項目開發(fā)的操作概念建模語言。還有很多可用的功能是保存結(jié)構(gòu)圖以及瀏覽類、關(guān)系和規(guī)則等等。
(2) OntoEdit
OntoEdit是德國Karlsruhe大學AIFB學院的知識管理團隊開發(fā)的本體論工程環(huán)境,該環(huán)境支持使用圖形化方式來開發(fā)和維護本體[33]。OntoEdit將本體開發(fā)方法論(骨架法)與合作開發(fā)和推理的能力相結(jié)合,關(guān)注本體開發(fā)的3個步驟:收集需求階段、提煉階段、評估階段。OntoEdit工具已是德國Onto Prise公司的商業(yè)化產(chǎn)品。OntoEdit建立在有力的內(nèi)部本體模型上,此模型能用支持內(nèi)部文件處理的XML序列化。環(huán)境架構(gòu)中包含的圖形化視圖支持對本體論工程開發(fā)生命周期的不同階段進行建模,還支持Frame-Logic、XML、RDF(S)和OIL等,并允許用戶編輯不同抽象級別的層次化的概念或者類,允許對關(guān)系的屬性進行集成和細化。
(3) HOZO
HOZO本體構(gòu)建工具是日本大阪大學ISIR(The Institute of Scientific and Industrial Research)研究所Mizoguchi研究室開發(fā)的[34]。
HOZO是基于Java開發(fā)的本體編輯工具,其主要由四部分組成:Ontology Editor、Ontology Manager、Ontology Server和Onto-Studio。Ontology Editor是一個本體編輯圖形界面,通過該界面可以對本體進行構(gòu)建、修改等。Ontology Manager可以幫助用戶管理本體,通過圖形化的方式將本體A與本體B之間的區(qū)別表示出來,方便本體映射。Ontology Server用于管理本體的存儲和使用,也可以利用本體中定義的公理對本體的一致性進行檢查。Onto-studio是基于AFM(Activity-First Method)的本體構(gòu)建,它可以幫助用戶從文檔中自動構(gòu)建本體。
HOZO本體編輯工具與其它本體構(gòu)建工具的顯著區(qū)別在于HOZO引入角色概念。角色概念最早由John Sowa提出,并引入“firstness”和“secondness”概念,其中前者是指一些獨立的概念,即不需要依賴于其它概念即可存在,同時不會產(chǎn)生歧義:如樹、人、鐵等;后者必須依賴于其它概念才能存在:如丈夫、妻子、學生等。Mizoguchi借助于這一思想,將第二種概念定義為角色概念,即將本體中概念一共分為3類:基本概念、角色概念及關(guān)系概念。基本概念是單獨的概念,是不需要其它概念就可定義的概念,對應于firstness;角色概念是一個事物在特定語境中所扮演的角色,它需要由其它概念來定義,對應于secondness;關(guān)系概念用于描述基本概念的屬性之間的關(guān)系及角色概念之間的關(guān)系。
(4)Protégé
Protégé是由美國斯坦福大學醫(yī)學院醫(yī)學信息中心(Stanford Medical Informatics,SMI)的Musen領(lǐng)導的開發(fā)團隊開發(fā)的一個開放源碼的本體編輯器,它是用Java編寫的,可以免費下載[35]。Protégé界面風格與普通Windows應用程序風格一致,用戶可以較容易學習使用。Protégé支持多重繼承,并能夠?qū)π聰?shù)據(jù)進行一致性檢查,同時具有很強的可擴展性,主要表現(xiàn)在如下幾點:
① Protégé是一個可擴展的知識模型,用戶可以重新定義系統(tǒng)使用的表示原語。
② 文件輸出格式可以定制。可以將Protégé的內(nèi)部表示轉(zhuǎn)換成多種形式的文本表示格式,包括XML、RDF(S)、OIL、DAML、DAML+OIL、OWL等系列語言。
③ 用戶接口可以定制。提供可擴展的API接口,用戶可以更換Protégé的用戶接口的顯示和數(shù)據(jù)獲取模塊來適應新的語言。
④ 有可以與其它應用結(jié)合的可擴展的體系結(jié)構(gòu)。用戶可以將其與外部語義模塊(例如針對新語言的推理引擎)直接相連。
⑤ 后臺支持數(shù)據(jù)庫存儲,能夠使用JDBC和JDBC-ODBC橋連接和訪問數(shù)據(jù)庫。Protégé開放源代碼,提供了本體建設(shè)的基本功能,使用簡單方便,擁有友好詳盡的幫助文檔,模塊劃分清晰,提供完全的API接口,它成為國內(nèi)外眾多本體研究機構(gòu)的開發(fā)工具[6-8]。
目前,本體編輯工具種類繁多,它們的共同點是:設(shè)計界面采用GUI形式,方便用戶使用,使用戶不必要學習繁瑣的本體編輯語言仍然可以構(gòu)建所需要的本體。可以看出,以上描述的本體編輯工具都有各自特點,針對以上特點本體編輯工具仍有以下發(fā)展趨勢:
(1) 目前本體編輯工具均為手工構(gòu)建本體,不支持自動構(gòu)建,而隨著本體的發(fā)展,手工構(gòu)建本體將會是一項龐大的任務(wù)。因此,需要對現(xiàn)有的工具進行改進,使其能夠自動對現(xiàn)有本體進行更新。
(2) 目前國內(nèi)還沒有發(fā)布通用的本體編輯工具,以便更好的支持以中文為主的本體,因此,需要自行開發(fā)一個能較好支持中文的本體構(gòu)建工具。
(3) 當前WEB和本體庫中有很多本體可以直接利用,但如何將這些本體應用于當前本體編輯工具仍是需要解決的問題。
如表2所示:

表2 本體標準化組織與項目
國際上大型本體標準化組織包括:美國國家標準化組織(ANSI)、電器與電子工程師協(xié)會(IEEE)、德國GMD公司IPSI研究所、美國斯坦福研究所人工智能中心、ISO Texas A& M Univ、斯坦福大學,荷蘭阿姆斯特丹大學,貝爾實驗室,AIFB研究所和ISO-STEP等,它們組織了專門的研究項目支持本體標準化的研究。
領(lǐng)域本體的構(gòu)建研究是當前的熱點之一,已經(jīng)公布的本體庫包括:
氨基酸本體:關(guān)于氨基酸及其性質(zhì)的小型本體(其中,概念、屬性和關(guān)系均備有中英文名稱、同義詞及縮寫)。
基本形式化本體(Basic Formal Ontology):一部設(shè)計旨在為科學技術(shù)研究工作提供支持的形式化上層本體。
BioPAX:一部旨在促進生物學途徑(細胞過程)數(shù)據(jù)之交換和互操作性的本體。
細胞周期本體(Cell-Cycle Ontology,CCO):一部用于表達細胞周期的應用本體。
CContology:一部旨在支持在線客戶抱怨管理的電子商務(wù)本體。
CIDOC概念參考模型(CIDOC Conceptual Reference Model):一部關(guān)于文化遺產(chǎn)的本體。
COSMO:屬于一部基礎(chǔ)本體(當前版本為OWL),其設(shè)計旨在收錄所有那些從邏輯上明確說明任何領(lǐng)域?qū)嶓w的含義之時所需的原初型概念(primitive concepts)。其旨在作為一部基礎(chǔ)的本體,可以用于完成其他本體或數(shù)據(jù)庫之中不同表達之間的轉(zhuǎn)換。起初,它只是OpenCyc和SUMO本體之中基本構(gòu)成要素的合并產(chǎn)物。目前,已經(jīng)采用其他的本體構(gòu)成要素(類型、關(guān)系) 對其加以了補充,從而便于收錄朗文詞典定義詞匯表之中所有單詞的表達形式。
Cyc:一部關(guān)于論域之形式化表達的基礎(chǔ)本體。
疾病本體(Disease Ontology):在設(shè)計上旨在促進各種疾病及相關(guān)健康狀況向特定醫(yī)學代碼的映射。
DOLCE:即語言學與認知工程描述型本體(Descriptive Ontology for Linguistic and Cognitive Engineering)。
都柏林核心:一部關(guān)于文檔和出版方面的簡單本體。
基礎(chǔ)性核心語言學本體(Foundational, Core and Linguistic Ontologies)。
人類解剖學方面的解剖學基礎(chǔ)模型(Foundational Model of Anatomy,F(xiàn)MA)。
有關(guān)內(nèi)科學與外科學醫(yī)學術(shù)語的GALEN本體(OWL-DL格式)。
基因組學領(lǐng)域的基因本體(Gene Ontology,GO)
通用上層模型(Generalized Upper Model):一部用于在客戶系統(tǒng)與自然語言技術(shù)之間發(fā)揮中介作用的,帶有語言學動機的本體。
Gellish英語詞典:是一部包括有詞典和分類法的本體;其中,收錄有一部上層本體和一部下層本體(lower ontology),側(cè)重于工程、技術(shù)以及采購方面的工業(yè)及商業(yè)應用。參見SourceForge的開源項目。
GOLD:即語言描述通用本體(General Ontology for Linguistic Description)。
IDEAS工作組:澳大利亞、加拿大、英國以及美國的國防部所正在共同構(gòu)建的一部關(guān)于企業(yè)架構(gòu)(enterprise architecture)的形式化本體。
LinkbaseLinkbase.[2009-03-05](英文):在基本形式化本體(Basic Formal Ontology)的基礎(chǔ)之上,對于生物醫(yī)學領(lǐng)域的一種形式化表達。
勞森模式語言(Lawson Pattern Language,LPL)。
開放生物醫(yī)學本體鑄造廠(OBO Foundry):生物醫(yī)學領(lǐng)域的一套具有互操作性的參考本體。
生物醫(yī)學調(diào)查本體(Ontology for Biomedical Investigations):用于描述生物學及臨床調(diào)查研究活動的一部開放的集成化本體。
植物本體(Plant Ontology):關(guān)于植物結(jié)構(gòu)以及生長/發(fā)育階段等方面的本體。
POPE(Purdue Ontology for Pharmaceutical Engineering,普渡大學制藥工程本體)
喬治敦大學有關(guān)蛋白質(zhì)信息資源的蛋白質(zhì)本體PRO。
程序抽象分類法(Program abstraction taxonomy)。
蛋白質(zhì)組學領(lǐng)域的蛋白質(zhì)本體(Protein Ontology)。
系統(tǒng)生物學本體(Systems Biology Ontology):描述的是生物學領(lǐng)域的計算機模型。
推薦上層合并本體:一部形式化上層本體
SWEET(Semantic Web for Earth and Environmental Terminology,地球與環(huán)境術(shù)語集語義網(wǎng))。
思想財富本體。
醫(yī)學教育標引主題(Topics for Indexing Medical Education)。
WordNet:一個詞匯參考系統(tǒng)(Lexical reference system)。
中國的農(nóng)業(yè)本體庫、航天航空本體庫、中醫(yī)藥本體庫、石油勘探開發(fā)本體庫等多個專業(yè)領(lǐng)域都建成或在建本學科領(lǐng)域本體庫[9-10]。
本體理論作為一種被廣泛接受的信息學科基礎(chǔ)理論,它就像基因一樣是不同門類知識的基礎(chǔ)理論,可以廣泛應用于任何知識系統(tǒng),相信在不就的將來,本體理論不僅僅用于理學、工學等應用學科,還能應用到社科人文學科領(lǐng)域并大放異彩。
[1]本體論,http://baike.baidu.com/link?url=7f4oPT2oUaMuh Qs3nxgYPFP-8FWypi0--o9hAHMC7GrazKKYet1ddm TBrZRrLTau.
[2]Gruber, T.R.(1993)."A translation approach to port able ontologies".[J]In: Knowledge Acquisition.5(2):199-220, 1993.
[3]張宇翔.知識工程中的本體綜述.[J]計算機工程,2005.31(7):l12-114.
[4]袁國銘,李洪奇,樊波.關(guān)于知識工程的發(fā)展綜述[J].計算技術(shù)與自動化.2011,30(1):138-143.
[5]孫雨生,詹萌.國內(nèi)外本體論技術(shù)研究與進展[J].情報雜志.2005,(12).
[6]OntoEdit[DB/OL]:http://www.ontoknowledge.org/tools/o ntoedit.shtml.
[7]王長霞,李冠宇,陳布偉.語義網(wǎng)本體構(gòu)建工具現(xiàn)狀及發(fā)展趨勢研究[J].計算機與現(xiàn)代化, 2009(7):26-31.
[8]WebOnto.http://eldroa.open.ac.uk:3000/webonto.
[9]陳科文,張祖平,龍軍.多源信息融合關(guān)鍵問題、研究進展與新動向[J].計算機科學.2013,40(8):6-13.
[10]袁國銘,陳殊聰,辛盈,鄧小亞.本體構(gòu)建理論在石油領(lǐng)域的應用研究[J].計算技術(shù)與自動化.2011,30(3):113-118.