隨著AI技術(shù)的發(fā)展和普及,當今社會已經(jīng)進入了智能化時代。與以往不同的是,在這一波浪潮中,企業(yè)不僅是向數(shù)字化轉(zhuǎn)型,更是向知識化轉(zhuǎn)型。那么,如何助力企業(yè)破解智能化知識挖掘和管理難題,實現(xiàn)知識化轉(zhuǎn)型?
3月13日下午14:00起舉行的華為開發(fā)者大會2020(Cloud)第三期華為DevRun Live開發(fā)者沙龍中,華為云自然語言處理技術(shù)專家鄭毅將分享《企業(yè)級知識計算平臺的技術(shù)解讀和案例實踐》,帶你了解華為云知識計算平臺及相關(guān)技術(shù)、知識圖譜構(gòu)建流程及方法,以及知識計算行業(yè)案例。下文主要講述“知識圖譜構(gòu)建流程及方法”,讓我們先睹為快。
一、什么是知識圖譜?
知識圖譜是由實體、關(guān)系和屬性組成的一種數(shù)據(jù)結(jié)構(gòu)。以下圖為例,“劉德華”是一個人物類型的實體,“劉德華”有自己的身高、國籍等信息,這些信息便稱之為實體的屬性。同樣,“無間道”是一個電影類型的實體。我們知道“劉德華”是“無間道”這部電影的主演,所以“劉德華”與“無間道”之間有“主演”關(guān)系。通過實體、關(guān)系、屬性,就能夠把我們?nèi)丝梢岳斫獾闹R有效地組織起來。知識圖譜的構(gòu)建與應(yīng)用涉及數(shù)據(jù)庫、自然語言處理(NLP)和語義網(wǎng)絡(luò)等技術(shù)。
圖1 知識圖譜示例
通用知識圖譜or行業(yè)知識圖譜?
按照知識圖譜的用途,知識圖譜可分為通用知識圖譜和行業(yè)知識圖譜。通用知識圖譜側(cè)重構(gòu)建常識性的知識,并用于搜索引擎和推薦系統(tǒng)等。行業(yè)知識圖譜(也可稱企業(yè)知識圖譜)主要面向企業(yè)業(yè)務(wù),通過構(gòu)建不同行業(yè)、企業(yè)的知識圖譜,對企業(yè)內(nèi)部提供知識化服務(wù)。華為云知識圖譜服務(wù)可用于以上兩類知識圖譜的構(gòu)建、管理和服務(wù),更側(cè)重面向企業(yè)知識圖譜。
二、如何構(gòu)建知識圖譜?
知識圖譜構(gòu)建主要分為自頂向下(top-down)與自底向上(bottom-up)兩種構(gòu)建方式。自頂向下構(gòu)建方式需要先定義好本體(Ontology或稱為Schema),再基于輸入數(shù)據(jù)完成信息抽取到圖譜構(gòu)建的過程。該方法更適用于專業(yè)知識方面圖譜的構(gòu)建,比如企業(yè)知識圖譜,面向領(lǐng)域?qū)I(yè)用戶使用。自底向上構(gòu)建方式則是從開放的Open Linked Data中抽取置信度高的知識,或從非結(jié)構(gòu)化文本中抽取知識,完成知識圖譜的構(gòu)建。該方式更適用于常識性的知識,比如人名、機構(gòu)名等通用知識圖譜的構(gòu)建。本文側(cè)重介紹自頂向下構(gòu)建方式的相關(guān)流程和技術(shù),并用于構(gòu)建企業(yè)知識圖譜。
目前業(yè)界暫無知識圖譜云服務(wù),也沒有統(tǒng)一標準的自頂向下構(gòu)建流程。當前業(yè)界主流的知識圖譜構(gòu)建方式是基于企業(yè)內(nèi)部數(shù)據(jù)、公開數(shù)據(jù),圖譜服務(wù)商以解決方案形式幫助客戶定制構(gòu)建知識圖譜。這樣的方式無疑成本非常高并且效率很低,通常需要很長的周期才能完成。同時,企業(yè)沒有參與感,圖譜構(gòu)建也可能存在很大偏差,難以用于實際業(yè)務(wù)中。
站在用戶角度,華為云通過抽象知識圖譜構(gòu)建流程及相關(guān)技術(shù),推出華為云知識圖譜云服務(wù)(圖2),為不同行業(yè)、不同企業(yè)提供快速構(gòu)建知識圖譜能力的平臺,賦能大中小型企業(yè)構(gòu)建屬于自己的知識圖譜。
圖2 華為云知識圖譜云服務(wù)
華為云知識圖譜云服務(wù)提供流水線式圖譜構(gòu)建能力,將圖譜構(gòu)建抽象為如下基本流程:本體構(gòu)建、數(shù)據(jù)源配置、信息抽取、知識映射以及知識融合。
圖3 知識圖譜構(gòu)建基本流程
進一步通過將每一個流程模塊抽象成插件形式,并通過組合配置生成圖譜構(gòu)建任務(wù)。面向不同的行業(yè)和領(lǐng)域,只需要修改插件配置即可完成企業(yè)知識圖譜的構(gòu)建。同時,基于流水線設(shè)計,知識圖譜云服務(wù)可以在只修改數(shù)據(jù)源的前提下完成知識圖譜的更新操作,非常適用于需要頻繁更新的知識圖譜。
2.1如何構(gòu)建知識圖譜的本體?
知識圖譜構(gòu)建的第一步需要完成圖譜本體(Ontology)的設(shè)計和構(gòu)建。本體是圖譜的模型,是對構(gòu)成圖譜的數(shù)據(jù)的一種模式約束。對于企業(yè)知識圖譜的構(gòu)建,一般是由垂直領(lǐng)域的行業(yè)專家和知識圖譜專家合作完成。
本體的構(gòu)建和設(shè)計對于知識圖譜的構(gòu)建至關(guān)重要??梢酝ㄟ^梳理領(lǐng)域知識、術(shù)語詞典、專家的人工經(jīng)驗等作為本體構(gòu)建的基礎(chǔ),結(jié)合知識圖譜的應(yīng)用場景來完善圖譜的構(gòu)建,最終獲得實體類別、類別之間的關(guān)系、實體包含的屬性定義。華為云知識圖譜云服務(wù)提供圖形化本體設(shè)計工具,可以通過拖拽編輯靈活完成企業(yè)知識圖譜本體的構(gòu)建。
圖4 華為云知識圖譜云服務(wù)-本體設(shè)計界面
2.2如何配置數(shù)據(jù)源?需要做哪些準備
在配置數(shù)據(jù)源之前,需要將不同類型、不同格式的數(shù)據(jù)進行初步的整理。比如:針對本地非電子化文檔,需要先進行掃描電子化,結(jié)合OCR等技術(shù)將掃描件轉(zhuǎn)換成文本文檔。再比如:針對本地電子化文檔,需要將本地文檔按文檔類型、格式進行歸檔解析整理成規(guī)范的格式,或者針對網(wǎng)絡(luò)資源,需要根據(jù)網(wǎng)站特點,開發(fā)相應(yīng)的爬蟲,對數(shù)據(jù)進行爬取,并存儲到本地數(shù)據(jù)庫等等。還有一些第三方資源,需要獲取相應(yīng)的數(shù)據(jù)訪問接口,并通過接口獲取相應(yīng)數(shù)據(jù)。
整理好的數(shù)據(jù)上傳到華為云OBS對象存儲服務(wù)后,知識圖譜云服務(wù)就可以進行數(shù)據(jù)源的配置,包括指定格式的針對結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化文本的配置等。
2.3什么是信息抽取?怎樣抽取?
信息抽取的目的是根據(jù)不同的數(shù)據(jù)源、不同的數(shù)據(jù)格式,完成實體、屬性、關(guān)系這種知識的抽取。這是知識圖譜構(gòu)建流程中非常關(guān)鍵的一環(huán),信息抽取的質(zhì)量決定了知識圖譜的質(zhì)量。實體之間的關(guān)系以及實體的屬性值,都可以用三元組(主語、謂詞、賓語)來表示,所以信息抽取又可以簡單叫做三元組抽取。華為云知識圖譜云服務(wù)支持結(jié)構(gòu)化Key-Value格式和非結(jié)構(gòu)化文本的三元組抽取。針對結(jié)構(gòu)化數(shù)據(jù),可以通過配置預(yù)置函數(shù)的組合,完成字段的處理。與之對應(yīng)的,針對非結(jié)構(gòu)化文本,云服務(wù)提供算法模型抽取能力,支持業(yè)界前沿的基于機器閱讀理解(Machine Reading Comprehension,MRC)的三元組抽取方法,通過使用多輪對話的思想進行三元組抽取,先抽取主語(Subject),然后根據(jù)抽取結(jié)果和候選謂詞對應(yīng)的模板構(gòu)造問句抽取賓語(Object),最終組成(主語,謂詞,賓語)三元組。該框架模型效果可以達到當前業(yè)界最好水平(state-of-the-art)。華為云知識圖譜服務(wù)支持基于該算法的模型訓(xùn)練、預(yù)測以及管理功能,同時以插件形式完成流水線中信息抽取部分。
圖5 基于機器閱讀理解(MRC)的三元組抽取方法
信息抽取中模型訓(xùn)練推理功能是基于華為云一站式AI開發(fā)管理平臺ModelArts完成的,該平臺提供高效的AI計算、模型訓(xùn)練、推理及部署能力,同時為了方便訓(xùn)練三元組抽取模型,額外提供三元組標注工具,用戶可以基于該工具快速獲得訓(xùn)練數(shù)據(jù),完成信息抽取以及知識圖譜構(gòu)建工作。
圖6 三元組標注工具示例
2.4知識融合是如何完成的?
所謂知識融合,就是對多個數(shù)據(jù)源進行知識抽取后的大量三元組數(shù)據(jù)進行對齊合并。舉個例子:百度百科有明星劉德華,互動百科有明星劉德華,我們構(gòu)建的知識圖譜不能有兩個明星劉德華吧?這時候就需要把他們識別出來放在一起,然后合并成一個實體,這就是實體的對齊以及知識的融合。這其中關(guān)鍵的問題是怎樣高效的完成實體對齊,技術(shù)路線基本可以分為兩類:基于實體屬性相似度的框架、基于聯(lián)合表征的深度學(xué)習(xí)框架??紤]到基于聯(lián)合表征的深度學(xué)習(xí)框架依賴大量標注數(shù)據(jù),并且模型與行業(yè)及數(shù)據(jù)強相關(guān),無法提供很好的通用化能力,因此,華為云知識圖譜服務(wù)當前支持基于實體屬性相似度的框架,可以通過定義相似度度量及組合,完成實體對齊以及知識融合。
除此之外,華為云知識圖譜云服務(wù)還提供圖譜可視化服務(wù),可以直觀地觀察分析實體及關(guān)系。
圖7 病毒蛋白知識圖譜可視化示例
三、知識圖譜需要怎樣的存儲方式?
經(jīng)過知識圖譜構(gòu)建,我們現(xiàn)在已經(jīng)有了大量的三元組知識。那么要怎樣來存儲這些三元組知識呢?
最直接的方式是使用表格式的存儲方式,如關(guān)系型數(shù)據(jù)表,三元組以三列數(shù)據(jù)或多列數(shù)據(jù)的形式存儲。這種方法在圖譜規(guī)模比較小的時候是可行的,但是如果圖譜規(guī)模變大了,是否依然可行呢?舉個例子,假使我們有了娛樂明星+電影這樣一個娛樂圖譜,其中包括了大量的明星人物、電影以及他們之間的關(guān)系。如果想查詢“劉德華和梁朝偉共同演過的電影中,年齡最大的導(dǎo)演是誰?“,就需要對關(guān)系型數(shù)據(jù)庫中知識圖譜結(jié)果表做2-3次自連接操作,如果三元組的數(shù)量是千萬、億、十億規(guī)模的話,顯而易見,這樣的查詢效率極低,基本不可行。
華為云知識圖譜服務(wù)采用的是業(yè)界主流的圖數(shù)據(jù)庫方式存儲知識圖譜,直接把數(shù)據(jù)或知識圖譜以圖的形式存儲,可以非常高效地完成多跳關(guān)系、屬性的查詢。具體的,我們使用華為云圖引擎服務(wù),包括圖存儲、圖計算一體的架構(gòu)設(shè)計,不僅可以提供高效的查詢性能,同時也可以提供多種預(yù)置的圖深度學(xué)習(xí)算法,使用起來非常方便,歡迎大家前來試用。
圖8 華為云圖引擎服務(wù)產(chǎn)品優(yōu)勢
四、華為云知識計算案例介紹
中國石油基于華為云知識計算服務(wù)的知識建模、油氣圖譜構(gòu)建、圖譜存儲、自然語言處理、機器學(xué)習(xí)等能力構(gòu)建了業(yè)界首個油氣知識計算平臺。以油氣勘探開發(fā)數(shù)據(jù)為基礎(chǔ),通過知識計算技術(shù)的應(yīng)用,為油氣勘探開發(fā)增儲上產(chǎn)、降本增效提供智能輔助和決策。
圖9 油氣知識計算的價值和意義
華為知識計算解決方案提供豐富的知識應(yīng)用,從解決企業(yè)痛點、提升企業(yè)效率、提供知識化服務(wù)的角度全面賦能企業(yè),體現(xiàn)了知識計算在各行業(yè)中的智能化價值,讓各行業(yè)的企業(yè)可以快速、低成本、高效率地管理,通過應(yīng)用企業(yè)知識、實現(xiàn)知識化轉(zhuǎn)型,釋放知識化帶來的紅利,全面提升企業(yè)在智能化時代的競爭力。
想要get知識圖譜全流程能力?更多精彩干貨請收看3月13日的DevRun Live直播!
DevRun Live是華為開發(fā)者大會2020(Cloud)旗下的線上開發(fā)者沙龍活動,以直播的形式分享前沿科技和應(yīng)用實踐,開發(fā)者可以了解技術(shù)趨勢、學(xué)習(xí)最新實踐應(yīng)用、獲取最新開發(fā)工具。