科普 | 动态本体简介
本文轉載自知乎專欄知識圖譜和智能問答。
1
近年來,隨著語義Web的興起,本體技術受到了廣泛關注。很多大型跨國公司都開始研究本體技術。谷歌于2012年提出了知識圖譜的項目,旨在利用本體技術來提高搜索的精度和更智能化的知識瀏覽。國內的互聯網公司,如百度、搜狗,也已經開展這方面的項目。微軟提出了Probase項目,旨在通過爬取網頁中的信息來構建大規模的本體。IBM利用語義Web技術來處理異構醫療數據的整合以及更準確的查詢回答。本體技術在IBM的著名問答系統Watson中發揮了重要的作用。Oracle實現了一個強大的語義數據推理和索引系統。本體技術還受到歐美政府的支持。英國政府發起了http://Data.gov.uk項目,把很多政府網站的信息都以本體的形式分布。而美國政府也有類似的項目。學術界對本體的研究有很多成果,特別是在計算機科學領域,有很多實用的技術被開發。歐盟在最近5年投入大量科研經費(累積超過數億歐元)用于本體相關的研究。
本體可以被理解成特定領域規范概念集及其邏輯關系的描述。本體為特定領域中的信息提供了一個基本的分類框架,同時也為特定領域中的信息之間的關聯性提供了一定程度的邏輯描述,使得特定領域中的信息資源能夠在本體描述的框架上組織成一個有機的整體。近十多年來,在許多計算機科學家與許多領域的科學家及其工程人員的共同努力之下,在許多領域都已經創建有對應的元數據與本體。使用這些特定領域的元數據與本體,我們就可以對萬維網上的現有的許多信息資源采用手工,半自動化,或自動化的手段進行語義標注(Semantic Annotation)。這樣,我們就可以通過針對特定領域的語義搜索引擎有效地更精準地提供人們所需要的信息資源。由于許多領域知識之間都有一定的關聯性,某個元數據或本體中的一些概念可能概念等價于其他一些元數據或本體中的另外一些概念,故這些特定領域的本體與元數據都存在著一定的語義關聯性。這種關聯性可以通過其關聯描述來刻畫。于是,關聯語義數據集為我們提供了跨學科跨領域的語義數據的整合體。
一個本體在生成之后,根據應用發展的需求,總是處于不斷地發展和變化之中,這就需要對之進行有效的管理。這些本體管理環節包括:
1. 本體演化(Ontology Evolution):研究本體的發展過程中的變化規律及其管理與維護的相關技術。
2. 本體融合(Ontology Integration):研究如何從多個本體中集成一個新的本體。
3. 本體驗證(Ontology Validation): 研究如何驗證本體的正確性。
4. 本體版本化(Ontology Versioning):研究如何維護與管理本體的演化過程中所生成的不同版本的本體的相關技術。
下面以元素周期表為例介紹本體。
圖1
如圖1所示,元素周期表分為10類,比如說堿金屬和堿土金屬,這些可以看成是本體的類。每個類都包含一些化學元素,比如說主族金屬包含鋁和鎵等。每一個化學元素通過百科可以找到各自的屬性等信息。并且不同的化學元素之間會有一些關系。
在Palantir中,一個本體主要包括以下幾個成分:
1. 對象(Object):這里對象指的是任何被建模的事物, Palantir中對象分為文檔(document)、實體(entities)和事件(event)。文檔是基于文本的,實體是一些類,比如說人、地點,而事件是以時間出現的事物。
2. 屬性(Properties): 這里屬性指的是對象的品質,比如說人的性別。
3. 關系(Relationship):這里關系指的是概念之間的關聯,比如說人物之間的雇傭關系。
在Palantir中,對象、屬性和關系是硬編碼的,基于它們可以設計各種靈活的本體和數據模型。而這里的對象又被分為文檔、實體和事件。這個分類非常有講究,因為對于情報分析來說,很重要的就是對文檔的檢索以及文檔的分析,對人物、組織等實體的畫像和關聯,對事件的建模和分析,而且文檔、實體和事件之間是一個自循環的系統。這種靈活性是通過給某個對象添加不同的屬性,或者給兩個對象添加不同的關系來實現。跟一般的本體不一樣的地方在于,動態本體允許對任何不再使用的對象、屬性和關系進行移除,并且可以根據需求添加新的對象、屬性和關系,所以本體是時刻處于動態更新的。另外,還支持對已有對象、屬性和關系的功能的修改,比如說可以添加和修改標簽、圖標、解析器等。
動態本體允許一個組織對領域相關的信息進行建模,而且這種建模比較靈活。對于同一個概念或者相似概念可以多種方式進行建模。比如說,如果要對人的職業進行建模,有以下幾種模式:
圖2
圖2中左邊是把職業作為一種對象定義,即把Pilot、Lawyer、Doctor作為Person的子類,這里Pilot和Person一樣都是對象,可以給出他們的屬性等。圖2中間是把職業作為Person的屬性,而這里屬性值是Doctor、Pilot、Lawyer。這里假設了一個人可以從事多個職業。圖2中右邊把職業看成是一種關系,這里有三種關系,即人和人之間的醫患關系、人跟飛機之間的駕駛關系以及人跟人之間的律師關系。從圖2可以看出對于不同的上下文,可以對一個事物做不同的建模。
動態本體對于異構數據的集成很有幫助。現有關系數據庫的數據管理系統一般采用表和關系的固定模式來組織數據,當模式變化是,需要對表進行修改,導致很多重復勞動。另外,基于一個固定的模式也不利于對數據做集成,特別是對于數據經常要更新的場景。動態本體的提出就是為了提供一個靈活可變的數據模型,方便數據管理和多源數據的集成。在一個應用中,可以構建一個數據庫的動態本體,而該動態本體可以用來集成各種數據。具體思路如下:
1. 通過一個對象類型編輯器來生成數據類型和數據類型的特征。
2. 通過一個屬性類型編輯器生成屬性類型并且定義該屬性類型的特征。
3. 每個屬性類型都有一個解析器,該解析器將一些輸入的數據跟動態本體做一個映射,并且把輸入數據添加到數據庫中。
Palantir動態本體通過解析器可以把各種格式的數據都集成到一個數據庫中,從而很好地實現了異構數據的集成。為了達到這個目前,需要將動態本體的對象類型和屬性類型定義完備,同時需要將解析器的正則表達式寫好,否則很難使用。這也是Palantir的動態本體的缺陷所在。
OpenKG.CN
中文開放知識圖譜(簡稱OpenKG.CN)旨在促進中文知識圖譜數據的開放與互聯,促進知識圖譜和語義技術的普及和廣泛應用。
點擊閱讀原文,進入 OpenKG 博客。
總結
以上是生活随笔為你收集整理的科普 | 动态本体简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 风控模型师面试准备--技术篇(逻辑回归、
- 下一篇: YOLO系列:YOLOv1,YOLOv2