韓少恒 楊家榮
上海電氣集團股份有限公司 中央研究院 上海 200070
近年來,知識圖譜的開發與研究引起了人們的關注[1]。知識圖譜最早于2012年由美國谷歌等多家公司研制發布,其初始目的主要是進一步完善、優化、提高企業用戶的知識搜索效率,增強企業用戶對知識搜索的使用體驗[2]。目前,知識圖譜沒有統一的定義,可接受的定義為:一個知識圖譜是一種能夠用來準確描繪各個知識實體之間相互關系的一種語義信息網絡[3],是知識處理技術和信息工程學研究中的一種主要理論特征和基本表現形式。知識圖譜的一種更為寬泛的定義是:知識圖譜使用圖作為媒介來組織與利用大規模不同類型的數據,并表達明確的通用或領域知識,同時又不同于二十世紀五六十年代產生的語義網絡。知識圖譜之所以成為新興技術,關鍵是知識規模的大小。
知識圖譜最常見的表示形式是三元組,即“實體×關系×另一實體”或“實體×屬性×屬性值”。知識圖譜三元組示例如圖1所示,圓圈代表實體或者概念,圓圈間的連線代表實體或概念之間的各種語義關系[4]。人類知識圖譜中富含知識實體、知識概念、知識屬性,以及三者之間的相互關系等多種信息,在此基礎上,知識圖譜對整個現實知識世界的詮釋變得可能。
圖1 知識圖譜三元組示例
在傳統制造型企業中,經驗和知識的傳承方式主要以師傅帶徒弟為主。隨著我國人口紅利逐漸消失,加之人們對工作選擇的多樣性,制造型企業或多或少面臨用工荒。企業中老師傅逐漸退休,豐富的知識和經驗也將逐漸流失。為了使積累的知識財富得到傳承,有效解決知識在線、知識互聯、知識沉淀,提升獲取行業專家工作和知識的效率,建立一套知識圖譜,成為了很好的解決方法。筆者從知識建模、知識抽取、知識推理、知識存儲、知識應用五個方面介紹知識圖譜的構建過程。
知識建模的核心是明確實體概念中的屬性、約束條件,以及概念之間的層次關系。建模方法是從實際角度出發,構建多層級的知識體系,對抽象的知識、屬性、關聯關系等信息進行定義、組織、管理,將它們轉化為現實數據,最終形成數據庫。如在某工程機械故障診斷項目中,定義零部件、故障現象、故障原因等實體,以及這些實體之間的關聯關系。
知識抽取的主要工作之一是獲取面向社會開放的大量知識數據,通過應用各種自動化分析方法和計算技術,從中自動抽取可用的各種知識單元。知識單元主要由信息實體、數據關系、知識屬性三個基本知識結構要素組成,并以這些基本知識結構要素為主要基礎,形成一系列具有高標準質量的知識事實關系表述,為上層知識模型和下層知識構造的設計奠定理論基礎。
從不同數據來源、不同數據結構的數據中抽取所需要的信息實體和數據關系,實現的方法主要包括三種,分別為基于規則與詞典的實體抽取方法、基于機器學習的實體抽取方法、基于面向數據開放域的實體抽取方法[5]。
根據編寫好的文本語義劃分規則和實體詞典,提取實體和屬性,主要用于文本領域的實體提取,如通過特殊符號識別對文本進行拆分,通過詞典匹配提取出文本中的實體名稱、地址、描述等信息。這一方法需要大量專業人員提前編寫文本規則和實體詞典,應用的范圍有限,不適用于多元場景的數據轉換。
以使用自然語言處理模型為基礎,通過對一定規模已標注好實體和實體之間關系的語料數據進行訓練?;谟柧毢玫哪P?完成相應實體和實體關系的提取。這一方法發展比較成熟,大多是對經典算法的改進,并且提升空間有限,面對開放領域的適應性較弱。
這是目前常用的實體抽取方法,根據實體類別是否有提前定義分為限定域實體抽取和開放域實體抽取。在限定域實體抽取中,系統所抽取的實體類別是提前定義好的,如名稱、職業、所在公司等幾種實體類別,抽取的實體類別較為局限。開放域實體抽取由于沒有提前定義,抽取實體更自由,主要使用無監督的方法抽取實體,如模式匹配和文本分析等,通常以文本中的某個詞語來代表實體類型[6]。這種方法抽取更加自由,可以發現更多新的實體。但是,由于自然語言的復雜性和實體的多樣性,使用模式匹配和文本分析的方法準確率較低。針對這一問題,采用有監督學習的算法進行實體抽取,能夠更有效地提高開放域實體抽取的準確率。
知識推理的重點為在已有的知識庫基礎上,進一步發現和挖掘其中所隱含的知識,從而豐富、拓寬、完善知識庫[7]。在推理的整個過程中,往往需要相應的關聯規則來支撐。由于實體、實體的屬性和相互關系的多元化,很難窮舉任何一個推理規律,一些比較復雜的推理規律往往都是手動總結出來的。推理法則的研究和發展,仍然取決于實體和關系之間的資源豐富程度。
知識推理的研究對象大致可以分為實體、實體屬性、實體之間的關系、本體庫中各個概念的層次結構等[8]。知識推理可以劃分為基于業務推理準則的知識推理和基于機器學習的知識推理。前者根據用戶所描述的問題表現形式推斷出背后的原因,后者主要適用于規則無法解決的推理問題。知識推理主要通過歸納推理、概率圖、神經網絡等技術手段來實現。
知識存儲的主要目的是完成各種知識的存儲,便于支持對大規模數據進行有效管理和統計。存儲的對象主要是基本屬性知識、相互關聯知識、事件知識、時間順序知識、資源型知識。存儲模式的好壞直接影響知識圖譜中知識查詢、知識計算、知識更新的準確性。
根據存儲結構,知識存儲分為基于表結構的存儲和基于圖結構的存儲,如圖2所示。
基于表結構的存儲指利用二維數據表對知識圖譜中的數據進行存儲。根據不同的設計原則,可以具有不同的表結構,如三元組表、類型表、關系表?;诒斫Y構的存儲結構簡單,存在一定的數據冗余,查詢效率比較低。
圖2 知識存儲分類
基于圖結構的存儲指利用圖的方式對知識圖譜中的數據進行存儲,主要形式有三種,分別為資源描述框架、屬性圖和三元組超圖?;趫D結構的存儲以圖的方式來保存數據,優點在于查詢和搜索的速度比較快,并且實體節點可以保留屬性,進而能夠保留更多的信息。
在工業領域,基于知識圖譜的故障維修應用系統在語義檢索、問題歸類、預測等多個方面已經有應用?;诠收暇S修的知識圖譜歸納、總結了案例中存在的問題、維修經驗,可以實現故障模式的挖掘與識別,為已經開發和構建的知識圖譜提供圖譜檢索、知識計算、圖譜可視化等分析與應用能力[9],并且為已經構建的各類知識圖譜計算提供接口,包含知識圖譜基礎應用類、圖結構分析類、圖譜語義應用類、自然語言處理類、圖數據獲取類、數據集統計類等。
工業知識圖譜總體目標是將知識從散亂的紙質文檔和電子文檔中抽取出來,用圖形化方式存儲下來,并提供可視化應用來調取和使用。工業生產過程和工業運維環節的數據量、知識量都很龐大,需要知識圖譜去梳理,并且這兩個環節可以產生價值,因此,生產過程和工業運維場景是知識圖譜值得應用的場合。比較常見的知識圖譜應用場景包括設備和儀器儀表的故障診斷及處理、生產工藝問題診斷及處理。
在場景選擇方面,可以選擇工業知識圖譜比較常見的場景,如焊接質量診斷處理問答系統、設備智能檢修小助手,應用時可以通過網頁或手機應用的方式訪問。在技術準備時,需要能夠構建工業領域知識圖譜的技術人才,并且需要有行業經驗知識的專家。構建行業知識圖譜時,最重要的是積累行業語料知識,也就是數據。要實現知識圖譜并達到令人滿意的準確率,需要一定數量的帶標簽數據作為訓練數據,例如設備運維工件單、設備狀態維護記錄等。
綜合而言,工業領域知識圖譜的作用是建立知識管理、儲備、應用的平臺,使企業積累的知識實現系統化管理和保存,將復雜知識的應用變得簡單,使新上手的專業人員快速獲得需要掌握的知識。