萬字詳解:騰訊如何自研大規(guī)模知識圖譜 Topbase

導讀

Topbase 是由 TEG-AI 平臺部構建并維護的一個專注于通用領域知識圖譜,其涉及 226 種概念類型,共計 1 億多實體,三元組數(shù)量達 22 億。在技術上,Topbase 支持圖譜的自動構建和數(shù)據(jù)的及時更新入庫。此外,Topbase 還連續(xù)兩次獲得過知識圖譜領域頂級賽事 KBP 的大獎。

目前,Topbase 主要應用在微信搜一搜,信息流推薦以及智能問答產(chǎn)品。本文主要梳理 Topbase 構建過程中的技術經(jīng)驗,從0到1地介紹了構建過程中的重難點問題以及相應的解決方案,希望對圖譜建設者有一定的借鑒意義。

一、簡介

知識圖譜( Knowledge Graph)以結構化的形式描述客觀世界中概念、實體及其關系,便于計算機更好的管理、計算和理解互聯(lián)網(wǎng)海量信息。通常結構化的知識是以圖形式進行表示,圖的節(jié)點表示語義符號(實體,概念),圖的邊表示符號之間的語義關系(如圖 1 所示),此外每個實體還有一些非實體級別的邊(通常稱之為屬性),如:人物的出生日期,主要成就等。

圖1 知識圖譜的示列

TEG-AI 平臺部的 Topbase 是專注于通用領域知識。數(shù)據(jù)層面,TopBase 覆蓋 51 個領域的知識,涉及 226 種概念類型,共計 1 億多個實體,三元組數(shù)量達 22 億多。技術層面,Topbase 已完成圖譜自動構建和更新的整套流程,支持重點網(wǎng)站的監(jiān)控,數(shù)據(jù)的及時更新入庫,同時具備非結構化數(shù)據(jù)的抽取能力。此外,Topbase 還連續(xù)兩次獲得過知識圖譜領域頂級賽事 KBP 的大獎,分別是 2017 年 KBP 實體鏈接的雙項冠軍,以及 2019 年 KBP 大賽第二名。在應用層面,Topbase 主要服務于微信搜一搜,信息流推薦以及智能問答產(chǎn)品。本文主要梳理 Topbase 構建過程中的重要技術點,介紹如何從 0 到 1 構建一個知識圖譜,內容較長,建議先收藏。

二、知識圖譜技術架構

TopBase 的技術框架如圖 2 所示,主要包括知識圖譜體系構建,數(shù)據(jù)生產(chǎn)流程,運維監(jiān)控系統(tǒng)以及存儲查詢系統(tǒng)。其中知識圖譜體系是知識圖譜的骨架,決定了我們采用什么樣的方式來組織和表達知識,數(shù)據(jù)生產(chǎn)流程是知識圖譜構建的核心內容,主要包括下載平臺,抽取平臺,知識規(guī)整模塊,知識融合模塊,知識推理模塊,實體重要度計算模塊等。Topbase 應用層涉及知識問答(基于 topbase 的 KB-QA 準確率超 90%),實體鏈接(2017 圖譜頂級賽事 KBP 雙料冠軍),相關實體推薦等。

圖2 知識圖譜Topbase的技術框架

1. 下載平臺-知識更新:下載平臺是知識圖譜獲取源數(shù)據(jù)平臺,其主要任務包括新實體的發(fā)現(xiàn)和新實體信息的下載。

2. 抽取平臺-知識抽?。合螺d平臺只負責爬取到網(wǎng)頁的源代碼內容,抽取平臺需要從這些源碼內容中生成結構化的知識,供后續(xù)流程進一步處理。

3. 知識規(guī)整:通過抽取平臺以及合作伙伴提供的數(shù)據(jù)我們可以得到大量的多源異構數(shù)據(jù)。為了方便對多源數(shù)據(jù)進行融合,知識規(guī)整環(huán)節(jié)需要對數(shù)據(jù)進行規(guī)整處理,將各路數(shù)據(jù)映射到我們的知識體系中。

4. 知識融合:知識融合是對不同來源,不同結構的數(shù)據(jù)進行融合,其主要包括實體對齊和屬性融合。

5. 知識推理:由于處理數(shù)據(jù)的不完備性,上述流程構建的知識圖譜會存在知識缺失現(xiàn)象(實體缺失,屬性缺失)。知識推理目的是利用已有的知識圖譜數(shù)據(jù)去推理缺失的知識,從而將這些知識補全。此外,由于已獲取的數(shù)據(jù)中可能存在噪聲,所以知識推理還可以用于已有知識的噪聲檢測,凈化圖譜數(shù)據(jù)。

6. 實體知名度計算:最后,我們需要對每一個實體計算一個重要性分數(shù),這樣有助于更好的使用圖譜數(shù)據(jù)。比如:名字叫李娜的人物有網(wǎng)球運動員,歌手,作家等,如果用戶想通過圖譜查詢“李娜是誰”那么圖譜應該返回最知名的李娜(網(wǎng)球運動員)。

三、知識體系構建

知識體系的構建是指采用什么樣的方式來組織和表達知識,核心是構建一個本體(或 schema)對目標知識進行描述。在這個本體中需要定義:1)知識的類別體系(如:圖 1 中的人物類,娛樂人物,歌手等);2)各類別體系下實體間所具有的關系和實體自身所具有的屬性;3)不同關系或者屬性的定義域,值域等約束信息(如:出生日期的屬性值是 Date 類型,身高屬性值應該是 Float 類型,簡介應該是 String 類型等)。我們構建 Topbase 知識體系主要是以人工構建和自動挖掘的方式相結合,同時我們還大量借鑒現(xiàn)有的第三方知識體系或與之相關的資源,如:Schema.org、Dbpedia、大詞林、百科(搜狗)等。知識體系構建的具體做法:

1. 首先是定義概念類別體系:

概念類別體系如圖 1 的概念層所示,我們將知識圖譜要表達的知識按照層級結構的概念進行組織。在構建概念類別體系時,必須保證上層類別所表示的概念完全包含下層類別表示的概念,如娛樂人物是人物類的下層類別,那么所有的娛樂人物都是人物。在設計概念類別體系時,我們主要是參考 schema.org、DBpedia 等已有知識資源人工確定頂層的概念體系。同時,我們要保證概念類別體系的魯棒性,便于維護和擴展,適應新的需求。除了人工精心維護設計的頂層概念類別體系,我們還設計了一套上下位關系挖掘系統(tǒng),用于自動化構建大量的細粒度概念(或稱之為上位詞),如:《不能說的秘密》還具有細粒度的概念:“青春校園愛情電影”,“穿越電影”。

2. 其次是定義關系和屬性:

定義了概念類別體系之后我們還需要為每一個類別定義關系和屬性。關系用于描述不同實體間的聯(lián)系,如:夫妻關系(連接兩個人物實體),作品關系(連接人物和作品實體)等;屬性用于描述實體的內在特征,如人物類實體的出生日期,職業(yè)等。關系和屬性的定義需要受概念類別體系的約束,下層需要繼承上層的關系屬性,例如所有歌手類實體應該都具有人物類的關系和屬性。我們采用半自動的方式生成每個概念類別體系下的關系屬性。我們通過獲取百科 Infobox 信息,然后將實體分類到概念類別體系下,再針對各類別下的實體關系屬性進行統(tǒng)計分析并人工審核之后確定該概念類別的關系屬性。關系屬性的定義也是一個不斷完善積累的過程。

3. 定義約束:

定義關系屬性的約束信息可以保證數(shù)據(jù)的一致性,避免出現(xiàn)異常值,比如:年齡必須是 Int 類型且唯一(單值),演員作品的值是 String 類型且是多值。

四、下載平臺-知識更新

知識更新主要包括兩方面內容,一個是新出現(xiàn)的熱門實體,需要被及時發(fā)現(xiàn)和下載其信息,另一個是關系屬性變化的情況需要對其值進行替換或者補充,如明星的婚姻戀愛關系等。

知識更新的具體流程如下圖所示:

圖3 Topbase知識更新流程圖

1. 針對熱門實體信息的更新策略主要有:

從各大站點主頁更新,定時遍歷重點網(wǎng)站種子頁,采用廣搜的方式層層下載實體頁面信息;

從新聞語料中更新,基于新聞正文文本中挖掘新實體,然后拼接實體名稱生成百科 URL 下載;

從搜索 query log 中更新,通過挖掘 querylog 中的實體,然后拼接實體生成百科 URL 下載?;?querylog 的實體挖掘算法主要是基于實體模板庫和我們的 QQSEG-NER 工具;

從知識圖譜已有數(shù)據(jù)中更新,知識圖譜已有的重要度高的實體定期重新下載;

從人工運營中更新,將人工(業(yè)務)獲得的 URL 送入下載平臺獲取實體信息;

從相關實體中更新,如果某個熱門實體信息變更,則其相關實體信息也有可能變更,所以需要獲得熱門實體的相關實體,進行相應更新。

表 1 最近 7 日下載數(shù)據(jù)統(tǒng)計情況

2. 針對其他關系屬性易變的情況,我們針對某些重要關系屬性進行專項更新。如明星等知名人物的婚姻感情關系我們主要通過事件挖掘的方式及時更新,如:離婚事件會觸發(fā)已有關系“妻子”“丈夫”變化為“前妻”“前夫”,戀愛事件會觸發(fā)“男友”“女友”關系等。此外,基于非結構化抽取平臺獲得的三元組信息也有助于更新實體的關系屬性。

五、抽取平臺 - 知識抽取

Topbase 的抽取平臺主要包括結構化抽取,非結構化抽取和專項抽取。其中結構化抽取主要負責抽取網(wǎng)頁編輯者整理好的規(guī)則化知識,其準確率高,可以直接入庫。由于結構化知識的局限性,大量的知識信息蘊含在純文本內容中,因此非結構化抽取主要是從純文本數(shù)據(jù)中挖掘知識彌補結構化抽取信息的不足。此外,某些重要的知識信息需要額外的設計專項策略進行抽取,比如:事件信息,上位詞信息(概念),描述信息,別名信息等。這些重要的知識抽取我們統(tǒng)稱專項抽取,針對不同專項的特點設計不同的抽取模塊。

1. 結構化抽取平臺

許多網(wǎng)站提供了大量的結構化數(shù)據(jù),如(圖 4 左)所示的百科 Infobox 信息。這種結構化知識很容易轉化為三元組,如:“<姚明,妻子,葉莉>”。針對結構化數(shù)據(jù)的抽取,我們設計了基于 Xpath 解析的抽取平臺,如(圖 4 右)所示,我們只需要定義好抽取網(wǎng)頁的種子頁面如:baike.com,然后從網(wǎng)頁源碼中拷貝 Infobox 中屬性的 xpath 路徑即可實現(xiàn)結構化知識的自動抽取,入庫。通過結構化抽取平臺生成的數(shù)據(jù)準確率高,因此無需人工參與審核即可直接入庫,它是知識圖譜的重要數(shù)據(jù)來源。

圖4 Topbase結構化抽取平臺的xpath配置界面

2. 非結構化抽取平臺

由于大量的知識是蘊含在純文本中,為了彌補結構化抽取信息的不足,我們設計了非結構化抽取平臺。非結構化抽取流程如圖 5 所示:

圖5 Topbase非結構化抽取平臺的技術框架

1234下一頁>

(免責聲明:本網(wǎng)站內容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網(wǎng)站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內容可能涉嫌侵犯其知識產(chǎn)權或存在不實內容時,應及時向本網(wǎng)站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關文章源頭核實,溝通刪除相關內容或斷開相關鏈接。 )

贊助商
2020-06-09
萬字詳解:騰訊如何自研大規(guī)模知識圖譜 Topbase
導讀Topbase 是由 TEG-AI 平臺部構建并維護的一個專注于通用領域知識圖譜,其涉及 226 種概念類型,共計 1 億多實體,三元組數(shù)量達 22 億。

長按掃碼 閱讀全文