需要知識的后深度學(xué)習(xí)時代,如何高效自動構(gòu)建知識圖譜?
日常生活中,我們經(jīng)常遇到以下兩種信息展現(xiàn)方式:
二者展示的信息量是差不多的,但右邊這種看起來更加直觀。而且,隨著文本篇幅的增長,這種優(yōu)勢會體現(xiàn)得更加明顯。
和人一樣,機(jī)器也更加擅長利用右圖所示的數(shù)據(jù)。但矛盾之處在于,互聯(lián)網(wǎng)等數(shù)據(jù)平臺存儲的大多是左圖所示的數(shù)據(jù)。要把左圖轉(zhuǎn)換成右圖,機(jī)器需要經(jīng)歷一個「閱讀理解」的過程。
這個過程如何完成?這就要提到我們今天的主題——知識圖譜。
知識圖譜可以做什么?
知識圖譜的概念于 2012 年由 Google 提出,當(dāng)時主要被用來提高其搜索引擎質(zhì)量,改善用戶搜索體驗(yàn)。隨著大數(shù)據(jù)時代的到來和人工智能技術(shù)的進(jìn)步,知識圖譜的應(yīng)用邊界被逐漸拓寬,越來越多的企業(yè)開始將知識圖譜技術(shù)融入其已經(jīng)成型的數(shù)據(jù)分析業(yè)務(wù),有的甚至使用知識圖譜作為其數(shù)據(jù)的基礎(chǔ)組織與存儲形式,成為其數(shù)據(jù)中臺的核心基建。
與谷歌類似,微軟將知識圖譜技術(shù)用于旗下必應(yīng)(Bing)搜索引擎,優(yōu)化搜索結(jié)果質(zhì)量和交互式搜索體驗(yàn);LinkedIn 與 Facebook 利用知識圖譜挖掘其平臺上人、事、資訊等之間的相互關(guān)系,使得用戶更容易發(fā)現(xiàn)感興趣的內(nèi)容、找到志同道合的朋友;eBay、亞馬遜等電商平臺使用知識圖譜為用戶和產(chǎn)品建立聯(lián)系,執(zhí)行更精準(zhǔn)的產(chǎn)品推薦;IBM 則專注于企業(yè)服務(wù),其 IBM Watson Discovery 產(chǎn)品能夠幫助用戶根據(jù)自身的特殊需求快速構(gòu)建自己的知識圖譜框架。
雖然知識圖譜的概念 2012 年才被提出,但其背后的思想本質(zhì)上是上個世紀(jì)的語義網(wǎng)絡(luò)(Semantic Network)知識表達(dá)形式,即一個由節(jié)點(diǎn)(Point)和邊(Edge)組成的有向圖結(jié)構(gòu)知識庫。其中,圖的節(jié)點(diǎn)代表現(xiàn)實(shí)世界中存在的“實(shí)體”,圖的邊則代表實(shí)體之間的“關(guān)系”。
圖 1:傳統(tǒng)知識庫與知識圖譜示意圖 [1]
與傳統(tǒng)的數(shù)據(jù)存儲和計(jì)算方式相比,知識圖譜技術(shù)更加側(cè)重于對非結(jié)構(gòu)化異構(gòu)數(shù)據(jù)的收集和處理,更擅長對于關(guān)系的表達(dá)和計(jì)算,可以處理復(fù)雜多樣的關(guān)聯(lián)分析、挖掘到更多隱藏知識。與此同時,知識圖譜的數(shù)據(jù)結(jié)構(gòu)與人工智能領(lǐng)域許多技術(shù)任務(wù)所基于的數(shù)據(jù)一脈相承(異質(zhì)結(jié)構(gòu)多關(guān)聯(lián)的大數(shù)據(jù)),可以為后續(xù)的機(jī)器學(xué)習(xí)和推理任務(wù)提供強(qiáng)有力的支持,幫助企業(yè)在智能搜索、智能問答、智能推薦、以及大數(shù)據(jù)分析這幾個方面提升性能。
智能搜索:傳統(tǒng)的搜索引擎依靠網(wǎng)頁之間的鏈接和權(quán)重進(jìn)行搜索排序,而知識圖譜提供了實(shí)體的分類、屬性和關(guān)系的描述,從而可以直接對事物進(jìn)行更精準(zhǔn)的語義搜索。
智能問答:基于知識圖譜的智能問答是目前產(chǎn)業(yè)界問答系統(tǒng)的主要技術(shù)路線之一,即對于給定的自然語言問題,利用知識圖譜技術(shù)進(jìn)行語義的解析、查詢、推理以得出答案。該技術(shù)常見于智能手機(jī)或音箱載體上的智能對話機(jī)器人,如 Siri、Google Assistant、Amazon Alexa、小愛同學(xué)、天貓精靈,以及微軟的小冰、小娜等,這些智能問答 agent 的背后都有相關(guān)企業(yè)各自積累的知識圖譜作為問答系統(tǒng)的支撐。
智能推薦:基于知識圖譜的推薦能更好將用戶與被推薦項(xiàng)目之間的各種相互聯(lián)系考慮進(jìn)來,可以增強(qiáng)數(shù)據(jù)的語義信息、挖掘隱藏的關(guān)聯(lián)信息,進(jìn)一步提高推薦的準(zhǔn)確度。
大數(shù)據(jù)分析:基于知識圖譜中實(shí)體的關(guān)聯(lián)信息和推理,我們能挖掘出傳統(tǒng)數(shù)據(jù)分析較難得到的隱含信息,該優(yōu)勢在存在大量異構(gòu)信息的數(shù)據(jù)集中更為顯著。基于知識圖譜的大數(shù)據(jù)關(guān)聯(lián)分析在金融風(fēng)控、反欺詐乃至安防等應(yīng)用場景中都有很好的效果。
近年來,知識圖譜的諸多優(yōu)勢和應(yīng)用前景使得面向特定領(lǐng)域的知識圖譜構(gòu)建在行業(yè)應(yīng)用中得到推廣,產(chǎn)生了如醫(yī)療知識圖譜、金融知識圖譜、電商圖譜等不同的垂直行業(yè)的知識圖譜形態(tài)。
圖 2:行業(yè)知識圖譜應(yīng)用一覽 [2]
如何構(gòu)建知識圖譜?
一般來說,構(gòu)建一個知識圖譜通常會經(jīng)歷知識獲取、知識表示與建模、知識融合、知識存儲,以及構(gòu)建完成后的知識查詢和推理幾大要素:
知識獲取:從不同來源、不同結(jié)構(gòu)的數(shù)據(jù)中抽取知識(實(shí)體、關(guān)系以及屬性等信息),這是知識圖譜構(gòu)建的核心與前提條件。
知識表示與建模:為知識制定統(tǒng)一的數(shù)據(jù)架構(gòu)(data schema),將獲取到的知識依照統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)存儲并形成知識庫,這是知識圖譜正式構(gòu)建的第一步,影響著后續(xù)的知識融合、存儲以及查詢推理可以使用的方法與效果。
知識融合:將不同源的知識以統(tǒng)一的框架規(guī)范進(jìn)行驗(yàn)證、消歧、加工等異構(gòu)數(shù)據(jù)整合工作,這是知識圖譜更新與合并的必經(jīng)之路,為不同知識圖譜間的交互融合提供可能性。
知識存儲:依據(jù)數(shù)據(jù)量的大小、數(shù)據(jù)特征以及應(yīng)用需求的不同,選取合適的存儲模式,將獲取到的數(shù)據(jù)存儲起來,形成知識圖譜。
知識查詢與推理:基于構(gòu)建完成的知識圖譜進(jìn)行查詢,或者進(jìn)一步推理挖掘出隱藏知識來豐富、擴(kuò)展知識圖譜,這是知識圖譜構(gòu)建的最終目的,與知識獲取共同影響著知識圖譜的應(yīng)用場景和范圍。
圖 3:知識圖譜構(gòu)建的要素與示例流程
在執(zhí)行正式的知識獲取步驟之前,通常會首先確認(rèn)知識的建模表示方式,主要的方式有兩種:
先為知識圖譜設(shè)計(jì)數(shù)據(jù)模式(data schema),再依據(jù)設(shè)計(jì)好的數(shù)據(jù)模式進(jìn)行有針對性的數(shù)據(jù)抽取,這是自頂向下(top-down)的數(shù)據(jù)建模方法,一般適用于數(shù)據(jù)相對集中、知識結(jié)構(gòu)相對確定的垂直領(lǐng)域行業(yè)知識圖譜;
先進(jìn)行數(shù)據(jù)的收集和整理,再根據(jù)數(shù)據(jù)內(nèi)容總結(jié)、歸納其特點(diǎn),提煉框架,逐步形成確定的數(shù)據(jù)模式,這是自底向上(bottom-up)的數(shù)據(jù)建模方法,一般適用于與涉及海量數(shù)據(jù)、內(nèi)容繁雜且架構(gòu)不清晰的公共領(lǐng)域通用知識圖譜。
圖 4:知識圖譜數(shù)據(jù)建模方法 [3]
知識圖譜構(gòu)建的核心技術(shù)、局限與發(fā)展方向
知識獲取是構(gòu)建知識圖譜的核心與前提條件,也是自動構(gòu)建知識圖譜最關(guān)鍵的影響要素和重點(diǎn)研究領(lǐng)域。除了純?nèi)斯さ闹R輸入之外,目前的知識獲取主要是指針對結(jié)構(gòu)化數(shù)據(jù)(如關(guān)系型數(shù)據(jù)庫)、半結(jié)構(gòu)化數(shù)據(jù)(如詞典、百科類標(biāo)記清晰的網(wǎng)頁數(shù)據(jù))、或者非結(jié)構(gòu)化數(shù)據(jù)(如聲音、圖像和文字語料數(shù)據(jù))這三類不同結(jié)構(gòu)的知識進(jìn)行的自動或半自動抽取。
對于結(jié)構(gòu)和半結(jié)構(gòu)化的數(shù)據(jù),通常只需要簡單的預(yù)處理和映射即可以作為后續(xù)數(shù)據(jù)分析系統(tǒng)的輸入,相關(guān)技術(shù)已經(jīng)比較成熟。而非結(jié)構(gòu)化數(shù)據(jù)通常需要借助自然語言處理、信息抽取、乃至深度學(xué)習(xí)的技術(shù)來幫助提取有效信息,這也是目前知識抽取技術(shù)的主要難點(diǎn)和研究方向,包含實(shí)體抽取、關(guān)系抽取和事件抽取三個重要的子技術(shù)任務(wù)。
實(shí)體抽取:主要是指命名實(shí)體識別(Named Entity Recognition, NER)任務(wù),即從純文本中自動識別并提出特定類別的命名實(shí)體,如人物、組織、地點(diǎn)、時間、金額等。實(shí)體抽取是知識抽取中最基礎(chǔ)的步驟,早期主要是通過人工編寫規(guī)則的方式進(jìn)行抽取,但規(guī)則不易總結(jié)、成本高且移植性差,目前主要是作為補(bǔ)充方法使用。在這之后,實(shí)體抽取多采用基于特征的統(tǒng)計(jì)方法,使用如隱馬爾可夫(HMM)和條件隨機(jī)場(CRF)等模型,將實(shí)體抽取當(dāng)做序列標(biāo)注問題進(jìn)行預(yù)測標(biāo)注。而近年來,隨著深度學(xué)習(xí)的發(fā)展,目前較流行的方法是將統(tǒng)計(jì)方法與深度神經(jīng)網(wǎng)絡(luò)相結(jié)合,使用如長短期記憶網(wǎng)絡(luò)(LSTM)自動提取特征,再結(jié)合 CRF 模型標(biāo)注提取實(shí)體,自動化程度更高,適用范圍更廣。
關(guān)系抽取:指從文本中識別抽取實(shí)體之間的關(guān)系,抽取結(jié)果常使用 SPO 結(jié)構(gòu)(即主謂賓結(jié)構(gòu))的三元組來表示。與實(shí)體抽取類似,早期主要使用基于模板的方法(觸發(fā)詞模板、依存句法分析模板等),近年來開始發(fā)展出半自動的基于監(jiān)督學(xué)習(xí)的方法(CNN、RNN 等)和純自動的基于弱監(jiān)督學(xué)習(xí)的方法(遠(yuǎn)程監(jiān)督、Boostrapping 等)。目前在關(guān)系抽取任務(wù)上取得最佳表現(xiàn)的模型大多融入了注意力機(jī)制,如 Attention CNNs 模型和 Attention BLSTM 模型等。
事件抽取:指識別文本中目標(biāo)事件的信息,并以結(jié)構(gòu)化的形式呈現(xiàn)。例如從投融資新聞中定位融資公司、融資金額、投資企業(yè)等信息;或是從恐怖襲擊事件的新聞報(bào)道中識別提取出襲擊發(fā)生的時間、地點(diǎn)和受害人信息等。事件抽取同時涉及到實(shí)體和關(guān)系抽取的相關(guān)技術(shù)。從宏觀的事件抽取思路上來看,事件抽取的方法可分為流水線抽取和聯(lián)合抽取兩大類方法。流水線抽取的思路是將事件抽取任務(wù)進(jìn)一步分解為事件識別、元素抽取、屬性分類等一條流水線上的多個子任務(wù),分別使用相應(yīng)的機(jī)器學(xué)習(xí)分類器實(shí)現(xiàn),這是目前事件抽取的主流方法。聯(lián)合抽取則主要是采用基于概率圖的模型進(jìn)行聯(lián)合建模,或基于深度學(xué)習(xí)的方法(如基于注意力機(jī)制的序列標(biāo)注模型),將事件的多個元素作為一個整體共同識別并提取。
移動互聯(lián)網(wǎng)、云計(jì)算、以及物聯(lián)網(wǎng)等技術(shù)的快速發(fā)展開啟了一個大規(guī)模生產(chǎn)、分析和應(yīng)用數(shù)據(jù)的大數(shù)據(jù)時代。然而,互聯(lián)網(wǎng)上只有少數(shù)的結(jié)構(gòu)或半結(jié)構(gòu)化的數(shù)據(jù)知識可方便直接地被機(jī)器解析。對于非結(jié)構(gòu)化數(shù)據(jù)的知識抽取尚達(dá)不到完全取代人工的準(zhǔn)確度要求,而依靠人工編輯的知識圖譜構(gòu)建有著高成本、低效率的問題。根據(jù)德國 Mannheim 大學(xué)的研究者估算 [5],手動創(chuàng)建一個三元組(即一條記錄)的成本在 2 到 6 美元之間。那么,使用純?nèi)斯さ姆绞綐?gòu)建一個大型知識圖譜的總成本就會在數(shù)百萬到數(shù)十億美元之間。相比較而言,自動創(chuàng)建知識圖譜的成本可以降低 15 到 250 倍左右,即一個三元組需要 1 美分到 15 美分左右的成本。因此,如何應(yīng)用自動化知識抽取技術(shù),在廣泛的自由文本信息中自動且準(zhǔn)確地提取高質(zhì)量、結(jié)構(gòu)化知識,將成為知識圖譜構(gòu)建的重要突破點(diǎn)。
圖 5:每個三元組成本與錯誤率之間的關(guān)系示意 [5]
前沿的知識圖譜自動構(gòu)建技術(shù)
知識獲取是知識圖譜自動構(gòu)建的核心,而非結(jié)構(gòu)化知識又是知識獲取里面最需要攻克的技術(shù)難點(diǎn)。近年來,深度學(xué)習(xí)和相關(guān)自然語言處理技術(shù)的迅猛發(fā)展使得非結(jié)構(gòu)化數(shù)據(jù)的自動知識抽取少人化、乃至無人化成為了可能。與傳統(tǒng)方法相比,深度學(xué)習(xí)方法減少了對外部工具的依賴,能構(gòu)建端到端的系統(tǒng)直接進(jìn)行實(shí)體識別、關(guān)系抽取等任務(wù),簡單高效。
在深度學(xué)習(xí)的基礎(chǔ)上,艾倫人工智能實(shí)驗(yàn)室和微軟的研究人員結(jié)合自然語言處理領(lǐng)域較為成功的預(yù)訓(xùn)練語言模型,提出了自動知識圖譜構(gòu)建模型 COMET(COMmonsEnse Transformers)[8]。該模型可以根據(jù)已有常識庫中的自然語言內(nèi)容自動生成豐富多樣的常識描述,在 Atomic 和 ConcepNet 兩個經(jīng)典常識圖譜上都取得了接近人類表現(xiàn)的高精度,證明了此類方法在常識知識圖譜自動構(gòu)建和補(bǔ)全方面替代傳統(tǒng)方法的可行性。
圖 6:COMET 從一個已有知識圖譜中學(xué)習(xí)(實(shí)線),并生成新的節(jié)點(diǎn)和邊(虛線) [8]
另一方面,IJCAI 2020 上一篇來自明略科學(xué)院知識工程實(shí)驗(yàn)室的論文另辟蹊徑,從傳統(tǒng)的基于文本的知識圖譜生成進(jìn)一步擴(kuò)展到了基于語音生成知識圖譜。其 HAO-Graph 系統(tǒng) [9] 設(shè)計(jì)并實(shí)現(xiàn)了實(shí)時的語音圖譜生成架構(gòu),并且能夠根據(jù)演講者的主題變化在不同的圖譜之間切換。
圖 7:結(jié)合摘要從一長段語音演講中提取出的知識圖譜示例 [10]
HAO-Graph 基于明略科技的 HAO 智能技術(shù),是已知的首個公開發(fā)布的從語音中構(gòu)建知識圖譜的系統(tǒng),實(shí)現(xiàn)了中文文本和語音知識圖譜的實(shí)時生成和可視化。與此同時,明略科技在最近的 WAIC 2020 上還進(jìn)一步開放了其 Text2KG API 接口,幫助相關(guān)從業(yè)人員進(jìn)行知識圖譜底層的數(shù)據(jù)收集、標(biāo)注、抽取、以及關(guān)聯(lián)等相關(guān)任務(wù),避免了大量的重復(fù)工作,節(jié)省開發(fā)者的時間。
在深度學(xué)習(xí)發(fā)展進(jìn)入瓶頸的時期,結(jié)合知識成為了下一步人工智能技術(shù)突破的關(guān)鍵,而知識圖譜必然是核心驅(qū)動力之一。我們期待這一技術(shù)在未來有更大、更廣的應(yīng)用。
參考
[1] A Survey on Knowledge Graphs: Representation, Acquisition and Applications
[2] 知識圖譜發(fā)展報(bào)告(2018)
[3] 知識圖譜標(biāo)準(zhǔn)化白皮書(2019)
[4] 人工智能之知識圖譜(2019)
[5] How much is a Triple?
[6] 67 億美金搞個圖,創(chuàng)建知識圖譜的成本有多高你知道嗎?
[7] A Survey of Deep Learning Methods for Relation Extraction
[8] COMET : Commonsense Transformers for Automatic Knowledge Graph Construction
[9] AI2 等提出自動知識圖譜構(gòu)建模型 COMET,接近人類表現(xiàn)
[10] A Speech-to-Knowledge-Graph Construction System