1. 程式人生 > 其它 >中科大腦知識圖譜平臺建設及業務實踐

中科大腦知識圖譜平臺建設及業務實踐

本文首發於 Nebula Graph Community 公眾號

“為了支援城市複雜場景下各類需求,中科大腦知識圖譜團隊設計開發了一套包含本體視覺化設計、資料對映、資料抽取、資料寫入、圖資料探索的一體化平臺,而本文則詳細介紹了他們的業務背景、技術選型、平臺建設等內容。”

01 背景介紹

中科大腦作為一家城市級的數字資產運營商,一方面要對各種型別的資料進行高效儲存,另一方面面臨如何將各類資料充分利用的問題,傳統 NoSQL、SQL 不能完全滿足資料的儲存和利用,以圖資料庫為基礎的知識圖譜一定程度上可以解決這些問題,知識圖譜元件(KBU)是腦庫城市大腦產品的核心部件。

中科大腦內部對知識圖譜的需求,總體來說有以下 3 方面:

  1. 政務知識圖譜,將政策法規、證件材料、事項流程、組織架構等資訊納入知識圖譜。目前建設了面向公安戶政、電子政務領域事項辦理知識圖譜,針對不同的職能部門建設有不同的知識圖譜,提升了服務效率和質量。
  2. 資產裝置管理圖譜,對城市中大量公共設施、不動產、物聯網裝置等建立知識圖譜,形成聯動管理與運維。
  3. 事理知識圖譜,對城市重大事件、突發事件、集中投訴事件等建立事理圖譜,包括事件的時間、地點、主體及熱度等,發現事件間的關聯關係和演化規律,提供決策支援。
    實踐中,不同板塊的知識圖譜間並非完全孤立,而是根據應用需求進行融合,充分發揮圖譜的關係連結特性,將城市本體要素打通,實現聯動,解決資料的關聯儲存和挖掘。

02 圖資料庫選型

在資料高度結構化、一致性強場景下,一般選擇使用傳統的關係型資料庫;在資料具有龐大潛在關聯場景下,圖資料儲存及基於此的知識圖譜技術將會是合理的選擇。
調研中發現,與關係資料庫或其他 NoSQL 資料庫相比,圖資料庫的資料模型也更加簡單,更具表現力。圖資料庫在社交網路、金融風控、個性化推薦、網路安全等領域應用廣泛。
我們在圖資料庫選型方面主要考慮點:
1)功能齊全、效能強大;2)專案開源,支援靈活的二次開發;3)安全可靠,國產優先;

中科大腦早起進行了一些效能和功能對比,也參考美團騰訊相關測評,從測試結果看 Nebula Graph 在資料匯入、實時寫入及多跳查詢方面效能均優於競品。此外,Nebula Graph 社群活躍,對相關 issue 的響應速度快,所以團隊最終選擇了基於 Nebula Graph 作為圖資料庫平臺基礎。

03 知識圖譜構建平臺

知識圖譜構建包括業務規則制定、本體構建、知識抽取、知識融合、資料儲存等流程,往往需要業務專家、工程、演算法、專案管理等人員參與配合。有機整合以上環節和分工,將大大減少知識圖譜落地速度,目前尚未有開源產品滿足此需求。為了支援城市複雜場景下各類需求,我們設計開發了一套包含本體視覺化設計、資料對映、資料抽取(結構化、非結構化)、資料寫入、圖資料探索的一體化平臺,平臺結構如圖。

  • 專案管理

知識圖譜平臺將不同領域知識圖譜作為專案單元,每個專案獨立進行知識全流程構建與管理。專案中包括本體設計、資料對映、資料抽取,按照流程一步步進行(step-by-step),不同的階段做到“術”、“業”專攻。平臺實現了企業內部知識圖譜構建的標準化和部門協作,減少了不同階段人員間的溝通成本、資料安全性問題,大大提高了效率。

  • 本體設計

知識圖譜的建設不完全是技術工作,在本體設計階段,業務工作可能佔據一半以上工作。業務專家往往又不瞭解知識 schema 設計,通常的流程是業務專家以非標準方式標記知識,帶來了較多的返工,不同專家之間和專家與技術之間存在協作問題。針對這些痛點,構建平臺借鑑開源專案實現本體的線上設計,支援多種格式(OWL、RDF、RDFS)的檔案匯入、匯出,相容性較好,經測試OpenKG中90%以上資源可直接接入。視覺化的構建方式真正實現了以圖構圖。

  • 資料抽取

本體構建完成,對結構化資料,支援對 EXCEL、CSV 等關係型資料與本體建立對映,完成圖資料的寫入。對非結構化資料的圖譜抽取,平臺內建了模型服務進行三元組抽取。內建模型分為兩種,第一種是基於開源資料集,如百度 DuIE 2.0,滿足通用資料抽取,另一種從自身業務出發,設計模型。我們設計了針對市民熱線的事件及關鍵資訊抽取模型,從圖譜角度挖掘市民熱線不同信件間的關聯關係,對事件抽取設計了聯合抽取模型,聯合抽取模型較管線式模型(pipeline)在時效和準確率上有較大提升。

  • 圖探索

結構化資料匯入和非結構資料化抽取結果將被寫入到 Nebula Graph 資料庫,圖探索可以方便地實現對寫入知識的查詢顯示,同時可以通過知識搜尋框直接對點和邊資訊進行搜尋。構建者更加簡單地實現了知識檢索、探索和聚合。產品功能要點:

  1. 知識展現,為了能對圖譜有直觀查閱,在圖譜探索階段,加入了自動展示子圖功能,類似 Neo4j中 MATCH (n) RETURN n LIMIT 25),主要是通過簡單演算法發現圖譜中心點,再由度數來控制從中心點出發的子圖大小,同時防止了展示爆炸。
  2. 知識搜尋,支援點和邊進行模糊匹配,更好地實現知識發現和推薦;
  3. 知識計算,內建輕量級圖演算法,可以對節點出入度、中心度、族群、相似節點類等進行計算。

為了滿足自身產品應用,我們基於 Nebula Graph、Elasticsearch、NetworkX 等底層介面,開發了一系列 API 應用介面,未來我們 API 介面實現也將積極參與到開源中。

04 業務落地

  • 智慧問答

圍繞公安戶政知識建立了領域知識圖譜,設計知識圖譜問答(KBQA)系統 ,支援多實體多跳(Multi-hop)匹配和推理。基於腦庫知識圖譜元件和腦庫時空構建元件將空間和非空間資料結合,實現空間推理,市民可能會諮詢,“可以辦理出國簽證的機構都在哪兒?”通過知識圖譜語義問答和 GIS 的結合,將位置和相應的屬性精準返回,實現知識和地圖的可訪問及互操作,為城市服務提供便捷。

  • 知識指導與決策

城市知識圖譜覆蓋裝置(Device)、承載物(Thing)、管理(Manage)、事件(Event)、領域(Field)和規則(Rule)等概念,基本構成了城市各領域知識底座,用於處理城市服務和城市治理問題。例如當發生佔用消防車道事件,消防通道感測器(Device)的功能(Function)記錄相關資訊,服務(Service)將記錄佔用者資訊並給予報警,將佔用車車牌等資訊反饋給案件管理者,管理者再根據地址區域(Area)、規章(Rule)等資訊對違章停車事件快速干預處理。相關構建和應用研究方法被CCKS2021收錄

  • 知識流程推薦

在城市大腦個性化推薦中,以‘我’為中心整合服務資源並進行個性化定製,通過知識圖譜分析使用者行為習慣和環境資訊,使用圖嵌入、圖路徑分析、社群發現演算法等方法,智慧推送使用者關注度高、關聯性強的資訊,主動提供服務。
對於市民,在案件辦理時,自動收到個性化推薦,如相似案例辦理經驗、可選路徑、辦件足跡及相關資訊等;對於城市治理者,在案件派發和相似案件推薦中,採用常識圖譜和專業領域知識圖譜相結合對歷史資訊和案件行為分析。利用知識融合、子圖空間、知識推理等方法,對於案件的派發和推薦提供更精確的分析和分類,並推理出相應的派發法方案和相似關係,提高了城市大腦的智慧服務水平和效率。

05 合作 & 未來

目前公司腦庫與圖資料庫 Nebula Graph 完成了互操作性測試認證,技術人員積極參與開源社群專案,通過了知識圖譜專家級認證(NGCP)。未來我們持續支援國產資料庫,為社群積極貢獻程式碼。

平臺方面在構建階段,將內建圖嵌入、圖學習、GNN 等圖演算法、優化大規模圖演算法效能,實現構建與應用一體化平臺,為數字資產的深層次挖掘和智慧化應用賦能。

以上為中科大腦知識圖譜開發小組帶來的知識圖譜平臺建設和業務實踐方面的分享。


交流圖資料庫技術?加入 Nebula 交流群請先填寫下你的 Nebula 名片,Nebula 小助手會拉你進群~~