01 - 知識圖譜入門


轉載自:KG的前世今生,本文主要介紹為什么需要知識圖譜,什么是知識圖譜以及知識圖譜的形式化表示。

 

一、為什么需要知識圖譜?

當你看到下面這行文本時會想到什么?

Ronaldo Luís Nazário de Lima 

估計大多數人不明白這串文本表達了什么。讓我們看看它的中文翻譯:

羅納爾多·路易斯·納薩里奧·德·利馬

現在大多數人應該能夠明白這是一個外國人的名字。熟悉足球的人可能會知道這是一個巴西足球運動員,綽號“肥羅”。

 

舉這個例子是為了說明,計算機面臨這樣的困境——無法獲取網絡文本的語義信息。盡管人工智能得到了長足的發展,但是距一台機器擁有一個兩三歲小孩的智力還有一段距離,很大一部分原因是機器缺乏先驗知識。機器看到這個字符串的反應和大多數不懂葡萄牙語不看足球的人看到這個字符串的反應是一樣的。為了讓機器能夠明白文本背后的含義,需要構建機器的先驗知識,即對事物進行建模,填充其屬性,擴展它和其他事物的關聯關系。以羅納爾多為例,通過對“羅納爾多”實體進行擴展,我們可以得到如下的知識圖。

機器有了這樣的先驗知識,當它再看到“Ronaldo Luís Nazário de Lima”這個字符串時,就能知道這是一個出生於里約熱內盧、名叫“羅納爾多”的巴西足球運動員。這和我們人類在看到熟悉的事物時會進行聯想和推理是一致的。需要注意的是,這張圖就是一個草圖,並非知識圖譜的實際組織形式,甚至會對理解知識圖譜帶來負面影響。后面會給出這張圖在知識圖譜中更正式的表示。

 

Google為了提升搜索引擎返回的答案質量,推出了知識圖譜概念。有知識圖譜的輔助,搜索引擎能夠根據用戶查詢背后的語義信息,返回更准確、更結構化的信息。Google知識圖譜的宣傳語“things not strings”道出了知識圖譜的精髓:不要無意義的字符串,需要文本背后的對象或事物。以羅納爾多為例,當用戶以“羅納爾多”作為關鍵詞進行搜索,沒有知識圖譜的情況下,我們只能得到包含這個關鍵詞的網頁,然后不得不點擊進入相關網頁查找需要的信息。有了知識圖譜,搜索引擎在返回相關網頁的同時,還會返回一個包含查詢對象基本信息的”知識卡片“,如果我們需要的信息就在卡片中,就無需進一步操作了。也就是說,知識圖譜能夠提升查詢效率,讓我們獲得更精准、更結構化的信息。

 

 

 

二、什么是知識圖譜?

知識圖譜的概念可以追溯到上世紀六十年代提出的一種知識表示形式——語義網絡。語義網絡,Semantic Network,由相互連接的節點和邊組成,節點表示概念或對象,邊表示節點與節點之間的關系。在表現形式上,語義網絡和知識圖譜相似,但語義網絡側重於描述概念與概念之間的關系,知識圖譜側重於描述實體與實體之間的關系。除了語義網絡,語義網(Semantic Web)和鏈接數據(Linked Data)也和知識圖譜有着千絲萬縷的關系,可以說是知識圖譜的前身。

 

目前,知識圖譜沒有標准的定義,借用下面這句話描述知識圖譜:

A knowledge graph consists of a set of interconnected typed entities and their attributes. 

知識圖譜是由一些相互連接的實體以及它們的屬性構成的。知識圖譜由一條條知識組成,每條知識可以表示為一個SPO三元組(Subject-Predicate-Object)。

 

在知識圖譜中我們用 RDF 形式化的表示這種三元關系。RDF,Resource Description Framework,資源描述框架,是W3C制定的一種用於描述實體/資源的標准數據模型。RDF中有三種類型:IRI、blank node和literals,常用的是 IRI 和 literals,至於 blank node 為什么不常用請參考原文(因為我也沒看太明白)。IRI,International Resource Identifier,可以看做是 URI 或 URL 的泛化,用於在整個知識圖譜中唯一的表示一個實體/資源。literals,字面量,可以看做是帶有數據類型的純文本,比如羅納爾多的全名是 Ronaldo Luís Nazário de Lima 這個字面量可以表示為:

"Ronaldo Luís Nazário de Lima"^^xsd:string 

那么,“羅納爾多的全名是Ronaldo Luís Nazário de Lima”這個 SPO 三元組用 RDF 形式表示就是:

@prefix kg: <http://www.kg.com/ontology/>
http://www.kg.com/person/1 kg:fullName "Ronaldo Luís Nazário de Lima"^^xsd:string 

"http://www.kg.com/person/1"是一個 IRI,唯一表示“羅納爾多”這個人類的實體。“kg:fullName”也是一個 IRI,表示“全名”這樣一個屬性,其中“kg:”是“http://www.kg.com/ontology/”的縮寫。

 

將之前的那張圖用更正式的形式表示出來:

我們可以認為知識圖譜包含兩種節點:實體和字面量。字面量類似葉子節點,出度為0,所以之前那張圖中“羅納爾多·路易斯·納薩里奧·德·利馬”這個字面量是不應該有指向外部節點的邊的。此外,之前那張圖也無法突出“實體/資源”這個在知識圖譜中極其重要的概念。

 

 

 

三、小結

本文通過羅納爾多這個例子引出知識圖譜解決的問題,接着給出知識圖譜的概念及其 RDF 形式化的表示。

 

下一篇會介紹和知識圖譜相關的幾個大概念。

 


免責聲明!

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



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