知識圖譜是AI的基礎功能,本篇文章筆者就知識圖譜是什麼?如何構建知識圖譜?怎麼應用?進行了討論分析,與大家分享。
一、人工智慧時代已經來臨
伴隨著全球智慧型手機銷量的首次下滑,移動網際網路已經不可避免地步入了下半場。
與此同時,智能音箱銷量爆發式增長,ZAO換臉APP刷屏朋友圈……人工智慧技術正在越來越深刻地影響人們的日常生活。
作為人工智慧領域的核心技術之一,知識圖譜已經成為了AI產品經理必須掌握的基礎技能。
二、什麼是知識圖譜?
1. 什麼是知識?
在聊知識圖譜之前,我們先簡單了解下什麼是知識。
下圖是在Quora(國外版知乎)上關於信息與知識的對比圖。
信息是雜亂無章的點,而知識相對來說更有邏輯性。在當今這個信息爆炸的時代,知識對人們來說顯然更便於理解和記憶。
圖一,圖片出處:https://www.siilo.com/blog/information-vs-knowledge
2. 什麼是知識圖譜?
知識圖譜(Knowledge Graph,簡稱KG)的概念由Google在2012年5月提出,初衷是希望藉助網絡多源數據構建的知識庫來增強語義搜索的效率和質量。
Google知識圖譜團隊負責人Amit Singhal認為,「The world is not made of strings,but is made of things」。
知識圖譜的主要作用在於以結構化的方式來描述客觀世界實體間的複雜關係。通過在信息與信息之間建立聯繫,人類更加容易獲取自己所需要的知識。
3. 維基百科關於知識圖譜的介紹
知識圖譜是Google用於增強其搜尋引擎功能的知識庫。
本質上, 知識圖譜旨在描述真實世界中存在的各種實體或概念及其關係,其構成了一張巨大的語義網絡圖,節點表示實體或概念,邊則由屬性或關係構成。
三、如何構建知識圖譜?
知識圖譜的構建主要分為知識體系構建、知識獲取、知識融合、知識存儲和檢索、知識推理、知識應用六個步驟。
下面是產品視角的知識圖譜構建流程圖:
1. 知識體系構建(建模)
1.1 定義
知識體系構建,也稱為知識建模,是指採取什麼樣的方式來表達知識,其核心是構建一個本體對目標知識進行描述。
在這個本體中需要定義出知識的類別體系、每個類別下所屬的概念和實體、某類概念和實體所具有的屬性以及概念之間、實體之間的語義關係,同時也包括定義在這個本體上的一些推理規則。
知識圖譜是隨著語義網的發展而出現的概念。語義網的核心目標是讓計算機能夠理解文檔中的數據,以及數據和數據之間的語義關聯關係,從而使得計算機可以自動化、智能化地處理這些信息。
1.2 RDF三元組
語義網技術涉及面較廣,這裡只介紹與知識圖譜數據建模緊密相關的核心概念——資源描述框架(RDF)。RDF基本數據模型包括了三個對象類型:資源(resource)、謂詞(predicate)以及陳述(statements)。
資源:能夠使用RDF表示的對象稱之為資源,包括網際網路上的實體、事件和概念等;謂詞:謂詞主要描述資源本身的特徵和資源之間的關係;陳述:一條陳述包含三個部分,通常稱之為RDF三元組(主題:被描述的資源,謂詞:可以表示主體的屬性,也可以表示主語和賓語之間的關係,賓語:屬性值)。知識圖譜將三元組(triple)作為知識存儲和表示的基本單元。三元組的表現形式有兩種:「實體—關係—實體」、「實體—屬性—屬性值」。
其中每個實體代表現實世界中一個獨一無二的對象,並對應全局唯一的ID。
1.3 實例
下圖中包含了多組三元組信息:
桃李麵包作為一個實體,其屬性是公司名稱,屬性值是桃李麵包股份有限公司;吳志剛作為實體,與桃李麵包之間是持股關係,屬性值為具體持股比例;吳志剛作為實體,與盛雅莉之間是親屬關係,屬性值為夫妻。
2. 知識獲取
2.1 目標
知識獲取的目標是從海量的文本數據中通過信息抽取的方式獲取知識,其方法根據所處理數據源的不同而不同。
2.2 數據類型
知識圖譜中數據的主要來源包括結構化數據、半結構化數據和非結構化數據(純文本)。
其中,非結構化文本的信息抽取是構建知識圖譜的核心技術。
2.3 知識獲取的基本任務
實體識別:指從文本中識別實體信息;實體消歧:指消除指定實體的歧義;關係抽取:指獲取兩個實體之間的語義關係;事件抽取:指從描述事件信息的文本中抽取出用戶感興趣的事件信息並以結構化的形式呈現出來。
3. 知識融合
知識融合是對不同來源、不同語言或不同結構的知識進行融合,從而對已有知識圖譜進行補充、更新和去重。
從融合的對象來看,包括知識體系的融合和實例的融合;從融合的圖譜類型來看,可以分為豎直方向的融合和水平方向的融合。
4. 知識存儲
知識存儲就是研究採取何種方式將已有知識圖譜進行存儲。
4.1 存儲方式
目前知識圖譜大多是基於圖的數據結構,存儲方式通常採用RDF格式存儲和圖資料庫(Graph Database),前者例如Google開放的Freebase知識圖譜,後者例如開源圖資料庫Neo4j。
4.2 質量評估
有效的質量評估可以對知識的可信度進行量化,通過捨棄置信度較低的知識來保障知識圖譜的質量。
4.3 知識更新
(1)更新類型
從邏輯上看,知識圖譜的更新包括概念層的更新和數據層的更新。
概念層的更新是指新增數據後獲得了新的概念,需要自動將新的概念添加到知識圖譜的概念層中。數據層的更新主要是新增或更新實體、關係、屬性值,對數據層進行更新需要考慮數據源的可靠性、數據的一致性等,並選擇在各數據源中出現頻率高的事實和屬性加入知識庫。(2)更新方式
全面更新:指以更新後的全部數據為輸入,從零開始構建知識圖譜。增量更新:以當前新增數據為輸入,向現有知識圖譜中添加新增知識。相對而言,前者比較簡單,但資源消耗大,而後者資源消耗小。
5. 知識推理
為了解決數據的不完備性和稀疏性,需要採取推理的手段發現已有知識中隱含的知識。
目前研究重點在於挖掘兩個實體之間隱含的語義關係。
兩種推理方法:
基於傳統邏輯規則的方法進行推理,其研究熱點在於如何自動學習推理規則,以及如何解決推理過程中的規則衝突問題;基於表示學習的推理,即採用學習的方式,將傳統推理過程轉化為基於分布式表示的語義向量相似度計算任務。
四、如何應用知識圖譜?
伴隨著人工智慧浪潮,知識圖譜已經在搜尋引擎、智能問答、推薦等領域得到了廣泛的應用。
1. 智能搜索(實體關係)
在智能搜索方面,基於知識圖譜的搜尋引擎,內容存儲了大量的實體以及實體時間的關係,可以根據用戶問句準確地返回答案。
下圖中,用戶詢問馬雲,機器人便可以準確地給出馬雲的個人介紹。
當存在多個同名的人時,知識圖譜可以基於實體唯一ID進行消歧,幫助用戶更加準確地定位答案。
2. 自動問答(實體關係推理)
在自動問答方面,可以利用知識圖譜中實體及其關係進行推理得到答案。
下圖中,百度「馬化騰是哪裡人?」百度會基於知識圖譜直接給出馬化騰的出生地。
3. 推薦(實體關係)
在推薦方面,可以利用知識圖譜中實體的關係向用戶推薦相關的產品。
下圖中,用戶詢問「科大訊飛市盈率」,機器人通過判斷科大訊飛是一隻A股的股票,然後給出了相同屬性其它實體的推薦。
4. 決策支持
知識圖譜能夠把領域內複雜知識通過信息抽取、數據挖掘、語音匹配、語義計算、知識推理等過程精確地描述出來,並且可以描述知識的演化過程和發展規律,從而為研究和決策提供準確、可追蹤、可解釋、可推理的知識數據。
下圖中,用戶輸入Bilibili,天眼查企業圖譜便可以準確地返回上市公司股東、董監高、對外投資等完整信息,輔助用戶進行決策。
#參考文獻#
《智能問答》,段楠,周明
《知識圖譜》,趙軍,劉康,何世柱,陳玉博
《人工智慧產品經理:人機對話系統設計邏輯探究》,朱鵬臻
《自然語言處理實踐:聊天機器人技術原理與應用》,王昊奮,邵浩等
本文由 @Alan 原創發布於人人都是產品經理,未經作者許可,禁止轉載。
題圖來自Unsplash,基於CC0協議。