在計算機科學 和信息科學 中,本體 是指對概念、數據和實體之間的類別、屬性和關係的表示、命名和定義,這些概念、數據和實體 構成了一個、大量或所有的論域 [ 1] 。本體提供的是特定領域之中那些存在着的對象 類型 或概念及其屬性和相互關係 [ 2] ;或者說,本體就是一種特殊類型的術語集 ,具有結構化的特點,且更加適合於在計算機系統 之中使用;或者說,本體實際上就是「對特定領域 之中某套概念 及其相互之間關係 的形式化表達(formal representation )」。本體是人們以自己興趣領域 的知識 為素材,運用信息科學的本體論 原理而編寫出來的作品 。本體一般可以用來針對該領域的屬性進行推理 ,亦可用於定義該領域(也就是對該領域進行建模)。此外,有時人們也會將本體稱為本體論 。
簡單的本體示例:關於動物 的概念 及其相互關係 所構成的語義網絡
作為一種關於現實 世界 或其中某個組成部分的知識表達形式,本體目前的應用領域包括(但不僅限於):人工智能 、語義網 、軟件工程 、 生物醫學信息學 、圖書館學 以及信息架構 。
英文術語「ontology 」一詞源於哲學 領域,且一直以來存在着許多不同的用法。在計算機科學 領域,其核心意思是指一種模型,用於描述由一套對象類型(概念 或者說類 )、屬性以及關係類型所構成的世界。儘管不同的本體對於這些構成成分的確切稱謂有所不同,但它們卻都是一部本體不可或缺的基本要素。一般來說,人們所普遍期望的一點就是,本體之中模型的那些特徵應當非常類似於相應的現實世界[ 3] 。
就計算機科學與哲學來說,二者所說的本體之間的共同之處就在於,它們都是依據某種類別體系,來表達實體 、概念 、事件及其屬性和相互關係。在這兩個領域當中,存在針對本體相對性(ontological relativity )的種種問題(比如,哲學領域的奎因 和克里普克 ,計算機科學領域的索瓦 和高利諾 ),人們已經和正在開展相當大量的工作[ 4] ;而且,人們也在討論關於規範化本體是否具有生命活力(比如,哲學領域之中針對基礎主義(foundationalism)的討論,人工智能領域之中針對Cyc 項目的討論)。二者之間的那些差別在很大程度上只是側重點的問題。與計算機科學領域的研究人員相比,哲學家們則較少關心建立固定不變的受控詞表 。然而,計算機科學家們則較少參與有關首要原則的討論(比如,關於是否存在諸如不變本質 (fixed essences )之類事物的討論,或者關於實體在本體論上必定比過程更為基本的討論)。
奧格登 與理查茲 的語義三角 [ 5]
語義三角 :事物 、概念 及符號 之間的關係
從歷史上來看,本體源自哲學 之中稱為「形而上學 」的分支。形而上學所關注的是現實 的本質 ,也就是存在 的本質。作為哲學的一個基本分支,形而上學關注的是分析存在的各種類型或模式,且往往尤其關注共相 與殊相 之間的關係、本徵性質與非本徵性質 之間的關係以及本質 與存在 之間的關係。本體論探索活動的傳統目標尤其是,為了揭示那些基本的類別或者說種類,而在關鍵之處將現實世界劃分為對象的自然類別[ 6] 。
二十世紀下半葉,哲學家 們就如何構建本體的可行方法或途徑展開過廣泛的討論,但實際上他們自己卻並沒有真正「構建」出任何非常精細詳盡的本體。與此相比,計算機科學家 們當時則正在構建着一些大型而又穩健的本體(如WordNet 和Cyc ),但相對來說卻很少針對「如何」構建本體而進行辯論。
自二十世紀70年代中期以來,人工智能 (簡稱AI )領域的研究人員認識到,知識的獲取乃是構建強大AI系統的關鍵所在。AI研究人員認為,他們可以把新的本體創建成為計算模型 ,從而成就特定類型的自動推理 。二十世紀80年代,AI領域就開始採用術語ontology 來同時指稱關於模型化世界的一種理論以及知識系統的一種組件。藉助於來自哲學本體論的靈感,一些研究人員繼而把計算機本體論視為一種應用哲學 [ 7] 。
二十世紀90年代初期,湯姆·格魯伯 發表了一篇後來得到廣泛引用的網頁和論文 《邁向知識共享型本體的設計原則 》[ 8] 。之所以該論文獲得人們如此的青睞,那要歸功於其中格魯伯對於計算機科學 術語 「ontology 」的審慎定義。格魯伯採用這條術語來指一種對於某一概念體系 (概念表達 或概念化過程 )(conceptualization )的詳細說明 (specification ,明確表述 )。也就是說,就像關於特定程序的形式化規格說明(形式化規約)那樣,本體就是對那些可能相對於某一智能體(agent)或智能體群體而存在的概念和關係的一種描述。這項定義與「ontology」作為「概念定義之集合」的用法是一致的,但相對來說要顯得更為通用。不過,這個單詞在此的含義卻有別於哲學領域對它的用法 。
本體 往往等同於那些由各種類、類之定義 以及歸類關係(subsumption relation )所構成的分類法層次結構,但本體並不一定僅限於此類形式。同時,本體也並不局限於保守型的定義(也就是傳統邏輯學 意義上的那些定義,它們所引入和採用的僅僅是術語 ,而沒有添加任何有關現實世界的知識)[ 9] 。要明確而又詳細地說明所要表達的某個概念之時,我們需要聲明若干的公理 ,從而對所定義術語的那些可能解釋加以約束和限制[ 10] 。
在二十一世紀伊始的頭幾年,認知科學 的跨學科 項目一直在將這兩個領域的學者群體拉得更近[來源請求] 。例如,有人談到「哲學領域當中的計算機化轉變」。在這種轉變當中,包括哲學家 們分析計算機科學領域所編制的形式化本體(有時甚至還在工作中直接運用計算機軟件 ),而與此同時,計算機科學領域的研究人員也在越來越多地引用那些致力於本體論的哲學家們的研究工作(有時甚至還是後者方法的直接結果)。不過,在這兩個領域當中,依然有許多學者並未順從認知科學 的這種發展趨勢,並且仍繼續相互獨立地開展着自己的工作,分別從事着各自的所關心的事情。
軟件工程 領域之中所常見的實體關係模型
交通工具 本體的局部:「Car 」(汽車)這個類擁有兩個子類「2-Wheel Drive Car 」(兩輪驅動型汽車)和「4-Wheel Drive Car 」(四輪驅動型汽車)
關係:「Ford Explorer」(福特 探索者)是一種 「4-Wheel Drive Car」(四輪驅動型汽車),而後者則是一種 「Car」(汽車)
就現有的各種本體而言,無論其在表達上採用的究竟是何種語言,在結構上都具有許多的相似性。如前所述,大多數本體描述的都是個體(實例)、類(概念)、屬性以及關係。在這一節當中,我們將分別依次論述本體的這些構成要素。
常見的本體構成要素包括:
個體(實例):基礎的或者說「底層的」對象。
類:集合 (sets )、概念、對象類型或者說事物的種類[ 注釋 1] 。
屬性:對象(和類)所可能具有的屬性、特徵、特性、特點和參數。
關係 :類與個體之間的彼此關聯所可能具有的方式。
函式術語:在聲明語句當中,可用來代替具體術語的特定關系所構成的複雜結構。
約束(限制):採取形式化方式所聲明的,關於接受某項斷言作為輸入而必須成立的情況的描述。。
規則:用於描述可以依據特定形式的某項斷言所能夠得出的邏輯推論的,if-then(前因-後果)式語句形式的聲明。
公理:採取特定邏輯形式的斷言(包括規則在內)所共同構成的就是其本體在相應應用領域當中所描述的整個理論。這種定義有別於產生式語法和形式邏輯當中所說的「公理」。在這些學科當中,公理之中僅僅包括那些被斷言為先驗 知識的聲明。就這裡的用法而言,「公理」之中還包括依據公理型聲明所推導得出的理論。
事件 (哲學):屬性或關係的變化。
通用形式化本體 (General Formal Ontology ,GFO)的基本分類樹
領域本體 (domain ontology 或者說domain-specific ontology ,即領域特異性本體 )所建模的是某個特定領域,或者現實世界的一部分。領域本體所表達的是那些適合於該領域的那些術語的特殊含義。例如,就拿具有許多種含義的英文 單詞 「card 」來說。關於撲克 領域的本體可能會賦予該詞以「打撲克 」的意思,而關於計算機硬件 領域的本體則可能會賦予其「穿孔卡片 」和「視頻卡 」的意思。
上層本體 (upper ontology 或者說foundation ontology ,即基礎本體 )是指一種由那些在各種各樣的領域本體之中都普遍適用的共同對象所構成的模型。其中所收錄的核心詞表 ,可以用來描述一套領域當中的對象。目前,存在着幾部現成可用的標準化上層本體,包括都柏林核心 、通用形式化本體 (General Formal Ontology ,GFO)、OpenCyc /Cyc 、推薦上層合併本體 (Suggested Upper Merged Ontology ,SUMO)以及DOLCE (頁面存檔備份 ,存於網際網路檔案館 )。另外,有些人認為WordNet 屬於上層本體,但實際上它並不是一部本體:WordNet 只是由一部分類法 (taxonomy )與一部受控詞表 所形成的獨特組合(參見上述關於「屬性」方面的內容)。
Gellish 本體則是一個關於上層本體與領域本體彼此組合的例子。
領域本體在表達概念時採用的是非常特殊而又往往具有選擇性的方式,因而它們常常缺乏兼容性。隨着那些依賴於領域本體的系統的擴展,它們往往需要將不同的領域本體合併成一部更為通用的表達形式。對於本體設計者來說,這就提出了一項富有挑戰性的難題。在同一領域內,由於文化背景、受教育程度以及意識形態 的不同所造成的,對於該領域感知 (perceptions )情況的不同,或者因為所採用的表達語言的不同,還可能出現不同的本體。
當前,對於那些並非依據同一部基礎本體所編制的本體的合併工作,在很大程度上還是一種手工過程,因而既耗費時間又成本高昂。那些利用同一部基礎本體所提供的一套基本元素來規定領域本體元素之含義的領域本體,則可以實現自動化的合併。目前,存在着多項針對本體合併方面的通用技術方法的研究工作,但這個方面的研究在很大程度上依然還處於理論層面。
本體工程 ,又稱為本體構建 、本體編制 或本體開發 ,是一個旨在研究有關構建本體的方法和方法學 的領域。本體工程研究的內容包括本體開發過程、本體生命周期、本體構建方法及方法學,以及為這些方面提供支持的工具包和語言[ 11] [ 12] 。
本體工程旨在讓軟件應用程序、企事業單位、組織機構以及特定領域業務操作過程之中所包含的那些知識變得明確清晰。本體工程為解決語義 障礙所造成的互操作性 問題指出了一個方向。比如,那些與業務術語 和軟件類的定義 相關的障礙。本體工程實際上就是一套與特定領域之中的本體開發與編制工作相關的任務[ 13] 。
英國牛津大學 計算機科學 教授伊恩·霍洛克斯
本體一般都是採用本體語言 來編制的。本體語言 ,又稱為「本體論語言 」,是一種用於編制本體的形式化語言 。目前,存在着許許多多此類的本體語言,既包括專有的,也包括基於標準 的:
普通邏輯 (Common logic )就是ISO 標準24707;這是關於一種本體語言 家族的技術規範,其中的本體語言彼此之間可以準確地相互轉換[ 14] 。
Cyc 項目有其自己的,基於一階謂詞演算 ,且具有某些高階擴展的本體語言(即CycL )[ 15] 。
Gellish 語言之中包括了關於自身擴展的規則,因而集成了一部本體和一種本體語言[ 16] 。
IDEF5 是一種用於編制和維護準確的,具有可復用性 的領域本體的軟件工程 方法[ 6] 。
知識交換格式 (Knowledge Interchange Format ,KIF)是基於S-表達式 的一種一階邏輯 語法[ 17] 。
規則交換格式 (Rule Interchange Format,RIF)與F-邏輯 (F-Logic )可將各種本體和規則結合起來[ 18] 。
OWL (Web Ontology Language )是一種用於編寫本體聲明(ontological statements )的語言 。OWL的發展繼承了RDF 和RDFS 以及一些早期的本體語言項目,包括本體推理層 (Ontology Inference Layer ,OIL)、DARPA智能體標記語言 (DARPA Agent Markup Language ,DAML)以及DAMLplusOIL 。OWL旨在應用於萬維網 之上;而且,其構成要素(類、屬性和個體)均被定義為RDF資源 ,並採用URI 加以標識[ 19] 。
可視化 方式展現的本體示例:Mason本體。
關於地球 表面的水 及其模式的概念圖
氨基酸本體[ 20] :關於氨基酸及其性質的小型本體(其中,概念、屬性和關係均備有中英文名稱、同義詞及縮寫)。
基本形式化本體(Basic Formal Ontology )[ 21] :一部設計旨在為科學技術研究工作提供支持的形式化上層本體。
BioPAX[ 22] :一部旨在促進生物學途徑(細胞過程)數據之交換和互操作性 的本體。
細胞周期本體(Cell-Cycle Ontology ,CCO)[ 23] :一部用於表達細胞周期的應用本體。
CContology[ 24] :一部旨在支持在線客戶 抱怨 管理的電子商務 本體。
CIDOC概念參考模型(CIDOC Conceptual Reference Model )[ 25] :一部關於文化遺產 的本體。
COSMO[ 26] :屬於一部基礎本體(當前版本為OWL),其設計旨在收錄所有那些從邏輯上明確說明任何領域實體 的含義 之時所需的原初型概念(primitive concepts)。其旨在作為一部基礎的本體,可以用於完成其他本體或數據庫 之中不同表達之間的轉換。起初,它只是OpenCyc和SUMO本體之中基本構成要素的合併產物。目前,已經採用其他的本體構成要素(類型、關係) 對其加以了補充,從而便於收錄朗文詞典定義詞彙表之中所有單詞的表達形式。
Cyc :一部關於論域 之形式化表達的基礎本體。
疾病本體(Disease Ontology )[ 27] :在設計上旨在促進各種疾病 及相關健康狀況向特定醫學代碼的映射。
DOLCE :即語言學與認知工程描述型本體(Descriptive Ontology for Linguistic and Cognitive Engineering )[ 28] 。
都柏林核心 :一部關於文檔和出版 方面的簡單本體。
基礎性核心語言學本體(Foundational, Core and Linguistic Ontologies )[ 29]
人類解剖學 方面的解剖學基礎模型 (Foundational Model of Anatomy ,FMA)[ 30]
有關內科學 與外科學 醫學術語的GALEN本體(OWL -DL 格式)[ 31] [ 32]
基因組學領域的基因本體 (Gene Ontology ,GO)
通用上層模型(Generalized Upper Model )[ 33] :一部用於在客戶系統與自然語言 技術之間發揮中介作用的,帶有語言學動機的本體。
Gellish英語詞典 :是一部包括有詞典和分類法的本體;其中,收錄有一部上層本體和一部下層本體(lower ontology ),側重於工程、技術以及採購方面的工業及商業應用。參見SourceForge的開源 項目[ 34] 。
GOLD[ 35] :即語言描述 通用本體(General Ontology for Linguistic Description)。
IDEAS工作組 [ 36] :澳大利亞 、加拿大 、英國 以及美國國旗 的國防部所正在共同構建的一部關於企業架構 (enterprise architecture )的形式化本體。
Linkbase[ 37] :在http://www.ifomis.org/bfo/ (頁面存檔備份 ,存於網際網路檔案館 )的基礎之上,對於生物醫學領域的一種形式化表達。
LPL (Lawson Pattern Language ,LPL)
開放生物醫學本體鑄造廠 (OBO Foundry ):生物醫學領域的一套具有互操作性 的參考本體。
生物醫學調查本體 (Ontology for Biomedical Investigations ):用於描述生物學 及臨床 調查研究活動的一部開放的集成化本體。
植物本體(Plant Ontology )[ 38] :關於植物 結構以及生長/發育階段等方面的本體。
POPE(Purdue Ontology for Pharmaceutical Engineering ,普渡大學 製藥工程 本體)
喬治敦大學 有關蛋白質 信息資源 的蛋白質本體PRO [ 39]
程序抽象分類法(Program abstraction taxonomy )[ 40]
蛋白質組學 領域的蛋白質本體(Protein Ontology )[ 41]
系統生物學本體 (Systems Biology Ontology ):描述的是生物學 領域的計算機模型
推薦上層合併本體 :一部形式化上層本體
SWEET(Semantic Web for Earth and Environmental Terminology ,地球與環境術語集語義網)[ 42]
思想財富 本體
醫學教育標引主題 (Topics for Indexing Medical Education )
WordNet :一個詞彙參考系統(Lexical reference system)[ 注釋 2] 。
[[0101031 SemanticMediaWiki Logo.png|thumb|300px|MediaWiki 的擴展:可在Wiki 網頁 之中標註語義數據 的Semantic MediaWiki (SMW)。]]
為互聯網開發各種本體的工作,已經孕育出那些具有搜索功能的,提供本體目錄 (directories )或列表的服務 。此類目錄就稱為「本體庫 」。
如下是一些採用人工方式選擇出來的本體所構成靜態庫 :
CO-ODE項目本體庫[ 43] :提供的是一些與CO-ODE項目相關的本體示例和本體資源鏈接。
DAML本體庫(DAML Ontology Library)[ 44] 之中保存的是那些採用DAML格式的歷史遺留本體。
Protege本體庫(Protege Ontology Library)[ 45] 之中收錄的是一套採用OWL格式、基於框架的格式以及其他格式的本體。
SchemaWeb[ 46] 則是一個由採用RDFS、OWL以及DAML+OIL格式所表達的RDF模式(RDF schemata)而構成的目錄。
下列這些即是目錄,同時又是搜索引擎 。其中,包括用於在互聯網上搜索良構性本體的搜尋器 。
OBO Foundry / Bioportal[ 47] 是生物學 和生物醫學 (biomedicine )領域的一套具備互操作性 的參考本體。
OntoSelect Ontology Library(OntoSelect本體庫)[ 48] 提供的是多種類似的,適用於RDF/S、DAML以及OWL本體的服務。
Ontaria[ 49] 是「一個可以搜索和瀏覽的語義網 數據目錄,且側重於RDF詞表以及OWL本體」。
Swoogle 是一個目錄和搜索引擎,適用於互聯網上現成可用的所有RDF資源,包括各種本體。
Protégé 本體編輯器之中所顯示的OWL 格式比薩餅 本體的層級結構: 「素比薩餅」
用於編纂本體的軟件編輯器稱為「本體編輯器 (ontology editor )」,有時又稱為「本體論編輯器」。
(英文) (Top-level ontological categories. By: Sowa, John F. In International Journal of Human-Computer Studies, v. 43 (November/December 1995) p. 669-85.),
(英文) C. K. Ogden and I. A. Richards (1923) The Meaning of Meaning
(英文) Tom Gruber (2008). "Ontology" (頁面存檔備份 ,存於網際網路檔案館 ). To appear in the Encyclopedia of Database Systems , Ling Liu and M. Tamer Özsu (Eds.), Springer-Verlag, 2008.
(英文) Gruber, T. R., "Toward Principles for the Design of Ontologies Used for Knowledge Sharing". In: International Journal Human-Computer Studies , 43(5-6):907-928, 1995
(英文) Enderton, H. B. (1972). A Mathematical Introduction to Logic . San Diego, CA: Academic Press.
(英文) Gruber, T. R. (1993). "A translation approach to portable ontologies". In: Knowledge Acquisition . 5(2):199-220, 1993.
(英文) Asunción Gómez-Pérez, Mariano Fernández-López, Oscar Corcho (2004). Ontological Engineering: With Examples from the Areas of Knowledge Management, E-commerce and the Semantic Web . Springer, 2004.
BioPAX . [2009-03-05 ] . (原始內容存檔 於2011-06-25) (英語) .
CCO . [2009-03-05 ] . (原始內容 存檔於2019-02-15) (英語) .
COSMO . [2009-03-05 ] . (原始內容存檔 於2009-02-17) (英語) .
DOLCE . [2009-03-05 ] . (原始內容存檔 於2009-04-16) (英語) .
GOLD . [2009-03-05 ] . (原始內容存檔 於2009-04-06) (英語) .
PRO . [2009-03-05 ] . (原始內容 存檔於2011-03-10) (英語) .
SWEET . [2009-03-05 ] . (原始內容 存檔於2011-04-11) (英語) .
如前所述,關於WordNet是否屬於本體,人們尚未完全達成一致意見。
(英文) Fensel, D., van Harmelen, F., Horrocks, I., McGuinness, D. L., & Patel-Schneider, P. F. (2001). "OIL: an ontology infrastructure for the Semantic Web" . In: Intelligent Systems . IEEE, 16(2): 38-45.
(英文) Maria Golemati, Akrivi Katifori, Costas Vassilakis, George Lepouras, Constantin Halatsis (2007). "Creating an Ontology for the User Profile: Method and Applications" . In: Proceedings of the First IEEE International Conference on Research Challenges in Information Science (RCIS) , Morocco 2007.
(英文) Tom Gruber 1993. "A translation approach to portable ontology specifications" (頁面存檔備份 ,存於網際網路檔案館 ). In: Knowledge Acquisition . 5: 199-199.
(英文) Maedche, A. & Staab, S. (2001). "Ontology learning for the Semantic Web" . In: Intelligent Systems . IEEE, 16(2): 72-79.
(英文) R. Navigli, P. Velardi. Learning Domain Ontologies from Document Warehouses and Dedicated Web Sites (頁面存檔備份 ,存於網際網路檔案館 ), Computational Linguistics, 30(2), MIT Press, 2004, pp. 151-179.
(英文) Razmerita, L., Angehrn, A., & Maedche, A. 2003. "Ontology-Based User Modeling for Knowledge Management Systems" [永久失效連結 ] . In: Lecture Notes in Computer Science : 213-217.
(英文) Smith, B. Ontology (Science) (頁面存檔備份 ,存於網際網路檔案館 ), in C. Eschenbach and M. Gruninger (eds.), Formal Ontology in Information Systems. Proceedings of FOIS 2008, Amsterdam/New York: ISO Press, 21-35.
(英文) Uschold, M. & Gruninger, M. (1996). Ontologies: Principles, Methods and Applications (頁面存檔備份 ,存於網際網路檔案館 ). Knowledge Engineering Review, 11(2).
(英文) Yudelson, M., Gavrilova, T., & Brusilovsky, P. 2005. Towards User Modeling Meta-ontology . Lecture Notes in Computer Science, 3538: 448.