知識圖譜的思考

知識圖譜

知識圖譜 (Knowledge Graph)是一種基於圖的數據結構,由節點(Point)和邊(Edge)組成。在知識圖譜裏,每個節點表示現實世界中存在的“實體”,每條邊爲實體與實體之間的“關係”,實體和關係又有其自身的“屬性”。實體、關係和屬性構成知識圖譜的核心三要素。

概述

知識圖譜本質上是語義網絡(Semantic Network)。目前知識圖譜這個概念最早由Google在2012年提出,主要是用來優化現有的搜索引擎。最近,知識圖譜慢慢地被泛指各種大規模的知識庫。知識圖譜的構建屬於知識工程的範疇,其發展歷程如圖1所示。

 

圖1知識圖譜的發展歷程

知識圖譜從其知識的覆蓋面來看可以分爲開放域知識圖譜和垂直領域知識圖譜,前者主要是百科類和語義搜索引擎類的知識基礎,後者在金融、教育、醫療、汽車等垂直領域積累行業內的數據而構成。

知識圖譜相關的關鍵技術包括構建和使用。知識圖譜的構建有自頂向下和自底向上兩種方法,現在大部分情況會混合使用這兩種方法。知識圖譜的構建應用了知識工程和自然語言處理的很多技術,包括知識抽取、知識融合、實體鏈接和知識推理。知識的獲取是多源異構的,從非結構化數據中抽取知識是構建時的難點,包括實體、關係、屬性及屬性值的抽取。對不同來源的數據需要做去重、屬性歸一及關係補齊的融合操作。同時,根據圖譜提供的信息可以推理得到更多隱含的知識,常用知識推理方法有基於邏輯的推理和基於圖的推理。知識圖譜的使用需要自然語言處理和圖搜索算法的支持。

知識圖譜在語義搜索、百科知識及自動問答等方面有着很典型的應用。在語義搜索領域,基於知識圖譜的語義搜索可以用自然語言的方式查詢,通過對查詢語句的語義理解,明確用戶的真實意圖,從知識圖譜中獲取精準的答案,並通過知識卡片等形式把結果結構化地展示給用戶,目前具體應用有Google、百度知心、搜狗知立方等。在百科知識領域,知識圖譜構建的知識庫與傳統的基於自然文本的百科相比,有高度結構化的優勢。在自動問答和聊天機器人領域,知識圖譜的應用包括開放域、特定領域的自動問答以及基於問答對(FAQ)的自動問答。比如IBM的Watson,Apple的Siri,Google Allo,Amazon Echo,百度度祕以及各種情感聊天機器人、客服機器人、教育機器人等。

開源知識庫

Freebase是一個大規模鏈接數據庫,是由硅谷創業公司MetaWeb於2005年啓動的基於Creative Commons Attribution協議的語義網項目。Freebase主要採用社區成員協作方式構建,其數據源主要包括Wikipedia、NNDB、Fashion Model Directory、MusicBrainz和社區用戶貢獻等。Freebase基於RDF三元組模型,共有19億條三元組,底層採用圖數據庫進行存儲。2010年,Freebase被Google收購作爲其知識圖譜數據來源之一。2016年,Google宣佈將Freebase的數據和API服務都遷移至Wikidata,並正式關閉了Freebase。

WikiData是免費開放、多語言、任何人或機器都可以編輯修改的大規模鏈接知識庫,是由維基百科於2012年啓動的基於Creative Commons Attribution協議的項目。WikiData繼承了Wikipedia的衆包協作構建機制,但與Wikipedia不同,WikiData基於以三元組爲基礎的知識條目的自由編輯,目前已經有超過4667萬條知識條目。

DBPedia是由OpenLink Virtuoso託管和發佈的基於GPL協議的開源知識庫。DBpedia以互聯網挖掘的方式從各種維基媒體項目創建的信息中提取結構化內容,以機器可讀的形式存儲知識,並提供信息收集、組織、共享、搜索和利用的手段。DBpedia 2014年發佈的版本包含30億條三元組。DBpedia知識庫與現有的知識庫相比有幾個優點:涵蓋領域多、代表真實的社區協議、會隨着維基百科的變化而自動演變、多語言。DBpedia知識庫的用例非常廣泛,包括企業知識管理、Web搜索以及維基百科搜索的革命。

YAGO是一種基於鏈接數據庫的開放語義知識庫,是由德國馬普研究所與巴黎電訊科技大學於2007開始的基於Creative Commons Attribution協議的聯合項目。YAGO主要集成了Wikipedia、WordNet和GeoNames三個來源的數據,包含1.2億條三元組知識,其功能包括作爲一個分類單元直接連接到DBpedia雲知識庫。目前YAGO在SUMO Ontology項目、DBpedia計劃、UMBEL Ontology項目以及Freebase等項目中提供相關知識庫支持,同時它也是IBM Watson的後端知識庫之一。

其他的開放知識圖譜有:ConceptGraph、BabelNet、CN-DBPeidia、OpenKG等。

開源構建工具

Protege是基於Java語言開發的本體編輯和知識獲取軟件,是斯坦福大學醫學院生物信息研究中心於1999年發佈的基於BSD 2-clause協議的開源軟件。Protege提供本體概念類、關係、屬性和實例的構建,不基於具體的本體描述語言,因此用戶可以在概念層次上構建領域本體模型。

除了Protege,還有Stanford OpenIE、Tuffy、OpenKE、Grakn等應用於知識圖譜構建的開源軟件。但它們普遍受到的關注度不高,這在一定程度上體現出了知識圖譜領域用於構建圖譜的開源軟件的匱乏。

完整的知識圖譜構建還包括知識的存儲。知識圖譜有兩類存儲方式,一類是傳統的RDF結構存儲,RDF 標準的結構化查詢語言是SPARQL;另一類是圖數據庫,它可以彌補傳統關係型數據庫在存儲知識圖譜時查詢複雜、緩慢的缺陷。目前常用的圖數據庫軟件包括Neo4j、OrientDB、ArangoDB和AllegroGrap等。

小結

知識圖譜提供了一種新的數據和知識組織方式,能夠讓多源異構的數據知識化,基於知識圖譜能夠建立各種知識服務和智能應用。知識圖譜在金融、醫療、農業、法律等很多垂直領域的應用已經得到了迅速地展開,範圍越來越廣,程度由淺入深。但知識圖譜的構建和應用具有很大的技術難度,需要自然語言處理、數據庫和語義推理等多重技術的支持。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章