知識圖譜基本概念


知識圖譜是結構化的語義知識庫,用於以符號形式描述物理世界中的概念及其相互關系。其基本組成單位是“實體 關系 實體”三元組,以及實體及其相關屬性值對,實體間通過關系相互聯結,構成網狀的知識結構。

元組的基本形式主要包括實體1、關系、實體2 和概念、屬性、屬性值等,

 

 

實體是知識圖譜中的最基本元素,不同的實體間存在不同的關系。

概念主要指集合、類別、對象類型、事物的種類,例如人物、地理等;

屬性主要指對象可能具有的屬性、特征、特性、特點以及參數,例如國籍、生日等;

屬性值主要指對象指定屬性的值,例如中國、1988-09-08等。

每個實體(概念的外延)可用一個全局唯一確定的ID來標識,每個屬性-屬性值對(attribute-value pair,AVP)可用來刻畫實體的內在特性,而關系可用來連接兩個實體,刻畫它們之間的關聯。

總結一下知識圖譜包含三層含義:

  1. 知識圖譜本身是一個具有屬性的實體通過關系鏈接而成的網狀知識庫.從圖的角度來看,知識圖譜在本質上是一種概念網絡,其中的節點表示物理世界的實體(或概念),而實體間的各種語義關系則構成網絡中的邊.由此,知識圖譜是對物理世界的一種符號表達 .
  2. 知識圖譜的研究價值在於,它是構建在當前Web基礎之上的一層覆蓋網絡(overlay network),借助知識圖譜,能夠在Web網頁之上建立概念間的鏈接關系,從而以最小的代價將互聯網中積累的信息組織起來,成為可以被利用的知識。
  3. 知識圖譜的應用價值在於,它能夠改變現有的信息檢索方式,一方面通過推理實現概念檢索(相對於現有的字符串模糊匹配方式而言);另一方面以圖形化方式向用戶展示經過分類整理的結構化知識,從而使人們從人工過濾網頁尋找答案的模式中解脫出來。

 

知識圖譜架構主要部分:

  • 知識抽取(包括實體抽取、關系抽取以及屬性抽取等)
  • 知識融合(包括實體消岐等)
  • 知識加工(包括本體構架、知識推理等)
  • 知識更新

 

知識圖譜基本結構單元:

RDF(Resource Description Framework),即資源描述框架,其本質是一個數據模型(Data Model)。

它提供了一個統一的標准,用於描述實體/資源。簡單來說,就是表示事物的一種方法和手段。

RDF形式上表示為SPO三元組,有時候也稱為一條語句(statement),知識圖譜中我們也稱其為一條知識

 

 

 RDF由節點和邊組成,節點表示實體/資源、屬性,邊則表示了實體和實體之間的關系以及實體和屬性的關系

 

RDF序列化存儲------------------RDF數據庫存儲

  1. RDF/XML,顧名思義,就是用XML的格式來表示RDF數據。之所以提出這個方法,是因為XML的技術比較成熟,有許多現成的工具來存儲和解析XML。然而,對於RDF來說,XML的格式太冗長,也不便於閱讀,通常我們不會使用這種方式來處理RDF數據。
  2. N-Triples,即用多個三元組來表示RDF數據集,是最直觀的表示方法。在文件中,每一行表示一個三元組,方便機器解析和處理。開放領域知識圖譜DBpedia通常是用這種格式來發布數據的。
  3. Turtle, 應該是使用得最多的一種RDF序列化方式了。它比RDF/XML緊湊,且可讀性比N-Triples好。
  4. RDFa, 即“The Resource Description Framework in Attributes”,是HTML5的一個擴展,在不改變任何顯示效果的情況下,讓網站構建者能夠在頁面中標記實體,像人物、地點、時間、評論等等。也就是說,將RDF數據嵌入到網頁中,搜索引擎能夠更好的解析非結構化頁面,獲取一些有用的結構化信息。讀者可以去這個頁面感受一下RDFa,其直觀展示了普通用戶看到的頁面,瀏覽器看到的頁面和搜索引擎解析出來的結構化信息。
  5. JSON-LD,即“JSON for Linking Data”,用鍵值對的方式來存儲RDF數據

 

同一個實體擁有多個屬性(數據屬性)或關系(對象屬性),我們可以只用一個subject來表示,使其更緊湊。

@prefix person: <http://www.kg.com/person/> .
@prefix place: <http://www.kg.com/place/> .
@prefix : <http://www.kg.com/ontology/> .

person:1 :chineseName "羅納爾多·路易斯·納薩里奧·德·利馬"^^string;
         :career "足球運動員"^^string;
         :fullName "Ronaldo Luís Nazário de Lima"^^string;
         :birthDate "1976-09-18"^^date;
         :height "180"^^int;
         :weight "98"^^int;
         :nationality "巴西"^^string; 
         :hasBirthPlace place:10086.
place:10086 :address "里約熱內盧"^^string;
            :coordinate "-22.908333, -43.196389"^^string.

RDF的表達能力

       RDF的表達能力有限,無法區分類和對象,也無法定義和描述類的關系/屬性。我的理解是,RDF是對具體事物的描述,缺乏抽象能力,無法對同一個類別的事物進行定義和描述。就以羅納爾多這個知識圖為例,RDF能夠表達羅納爾多和里約熱內盧這兩個實體具有哪些屬性,以及它們之間的關系。但如果我們想定義羅納爾多是人,里約熱內盧是地點,並且人具有哪些屬性,地點具有哪些屬性,人和地點之間存在哪些關系,這個時候RDF就表示無能為力了。不論是在智能的概念上,還是在現實的應用當中,這種泛化抽象能力都是相當重要的;同時,這也是知識圖譜本身十分強調的。RDFS和OWL這兩種技術或者說模式語言/本體語言(schema/ontology language)解決了RDF表達能力有限的困境。

輕量級的模式語言——RDFS

RDFS,即“Resource Description Framework Schema”,是最基礎的模式語言。

介紹RDFS幾個比較重要、常用的詞匯:

    1. rdfs:Class. 用於定義類。

    2. rdfs:domain. 用於表示該屬性屬於哪個類別。

    3. rdfs:range. 用於描述該屬性的取值類型。

    4. rdfs:subClassOf. 用於描述該類的父類。比如,我們可以定義一個運動員類,聲明該類是人的子類。

    5. rdfs:subProperty. 用於描述該屬性的父屬性。比如,我們可以定義一個名稱屬性,聲明中文名稱和全名是名稱的子類。

        其實rdf:Property和rdf:type也是RDFS的詞匯,因為RDFS本質上就是RDF詞匯的一個擴展。

 

 

 

RDFS的擴展——OWL

        上面我們提到,RDFS本質上是RDF詞匯的一個擴展。后來人們發現RDFS的表達能力還是相當有限,因此提出了OWL。我們也可以把OWL當做是RDFS的一個擴展,其添加了額外的預定義詞匯。

       OWL,即“Web Ontology Language”,語義網技術棧的核心之一。OWL有兩個主要的功能:

          1. 提供快速、靈活的數據建模能力。

          2. 高效的自動推理。

介紹一下常用的詞匯:

描述屬性特征的詞匯

  1. owl:TransitiveProperty. 表示該屬性具有傳遞性質。例如,我們定義“位於”是具有傳遞性的屬性,若A位於B,B位於C,那么A肯定位於C。

  2. owl:SymmetricProperty. 表示該屬性具有對稱性。例如,我們定義“認識”是具有對稱性的屬性,若A認識B,那么B肯定認識A。

  3. owl:FunctionalProperty. 表示該屬性取值的唯一性。 例如,我們定義“母親”是具有唯一性的屬性,若A的母親是B,在其他地方我們得知A的母親是C,那么B和C指的是同一個人。

  4. owl:inverseOf. 定義某個屬性的相反關系。例如,定義“父母”的相反關系是“子女”,若A是B的父母,那么B肯定是A的子女。

本體映射詞匯(Ontology Mapping)

1. owl:equivalentClass. 表示某個類和另一個類是相同的。

2. owl:equivalentProperty. 表示某個屬性和另一個屬性是相同的。

3. owl:sameAs. 表示兩個實體是同一個實體。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM