■ 熊 奧 高 暢 趙明輝 張玲玲
1.中國科學院大學經濟與管理學院 北京 100190
2.中國科學院大數據挖掘與知識管理重點實驗室 北京 100190
3.中國科學院大學中丹學院 北京 100190
隨著工業制造、生物醫藥、國防軍事、交通運輸等產業的快速發展,設備大型化、結構復雜化、運行自動化和智能化等特點愈發突出,機械設備的健康管理已逐漸成為企業運營乃至跨越發展的重要載體[1-2]。設備規模大、安裝測點多、采樣頻率高、收集歷時長、數據量巨大,客觀上推動設備健康管理進入數據化和智能化管理時代[3–5]。尤其在核電企業,核心設備是企業生存與發展的依托,保持設備安全與穩定的運行是企業最重要的活動之一,同時也決定了企業的經營效益[6]。因此,設備的維護與檢修成為核電企業的主要工作之一,其主要活動包括糾正性維護、適應性維護、完善性維護和預防性維護,相應工作都由專業的維修部門負責。為確保主要設備時刻處于可運行狀態,常常需要較大的人力資源實時監控、實時維護。然而,設備的維護與檢修并不容易,工作人員需要了解設備各維度的信息,如上次檢修時間,故障可能原因,常用的維護措施等,相關信息需要快捷、準確的傳遞給維修和管理人員。
為了解決上述問題,傳統的方法主要依賴維修人員的個人素質和數據庫的運行日志[7],隨著信息技術發展,設備健康數據與智能維修技術的結合為設備健康發展帶來新的發展機遇[8],如核電企業通常將歷史維修數據存儲在數據管理系統中(如Oracle,Mysql),但上述方法并沒有打破“數據孤島(Isolated Data Island,IDI)的狀態,不利于從整體數據中發現有價值的信息,缺乏對故障案例關聯網絡的挖掘和展現,而企業的設備故障通常存在隱性關聯關系,挖掘這些關聯信息將有利于設備健康管理實施。
新興的知識圖譜技術,以圖譜數據為核心,通過對所有數據的有效鏈接,擺脫傳統數據查詢頁面的方式,采用圖譜展示方式實現用戶在信息檢索中的聯想式檢索,使系統中積累的海量數據得到有效的整合和深層的挖掘[9]。近年來,已經有相關研究人員利用知識圖譜技術在設備健康管理領域做出嘗試性的探索,如Tang[10]提出了一種融合多源異構電力設備數據構建電力設備知識圖,并基于所構造的知識圖對所需信息進行詳盡說明的方法,同時以變電站為例,給出了相關的搜索結果,證明了知識圖可以提高電力設備管理效率。Irlán[11]提出一種基于知識圖譜集成不同數據源的通用方法,并能基于知識圖譜的數據輕松實現生產線產品零件的追溯;趙倩[12]針對數控設備故障發生原因復雜、隱蔽、不易排查的特點,提出一種針對數控設備故障領域的知識圖譜構建方法,實現對歷史數控設備故障知識的積累、組織和共享;王莉[13]為降低地鐵工程事故的危害性,通過集成多年的地鐵工程事故數據,提出基于知識圖譜的地鐵工程事故知識建模與事故分析方法,為安全管理提供決策支持;王杰[14]為充分挖掘航空安全領域積累的海量航空安全事件基礎數據,提出一種航空安全事件知識圖譜構建的方法,為提升民航突發事件應急管理提供良好的數據支持;段陽[15]充分利用制造企業的金屬切削數據資源,將金屬切削數據構建成知識圖譜,實現對切削加工數據的有機整合,即提升了數據的價值密度,同時也為金屬切削智能應用開發提供支持。
與之前的研究相比,本文具有如下的創新和提升:首先,知識圖譜在地鐵、航空等多類型設備健康管理中已經初步顯現其獨特且突出的優勢,本文將其在核電設備領域進行多視角的擴展;其次,詳細梳理了核電企業維修部門維修工單數據庫的實體、屬性及關系等概念體系,增加特定領域知識圖譜的多樣性;最后,用構建完成的核電領域知識圖譜在實際設備健康管理工作中進行廣泛的應用探索,并取得良好的實踐效果。本文綜合知識圖譜研究基礎以及核電企業設備維修的業務特點,提出基于知識圖譜的核電設備健康管理方法,并梳理出基于知識圖譜的核電設備維修分析流程,運用專業查詢語言實現維修知識獲取和可視化,可以實現對核電設備維修知識的有效集成和充分利用。
知識圖譜(Knowledge Graph, KG)是由實體和關系組成的語義網絡,網絡中的每個節點是一個實體(Enti‐ty),每條邊代表一種關系(Relation),每個三元組(h,r,t)表示每個頭節點h和尾節點t是由關系r相連接。知識圖譜以結構化的方式描述客觀世界中概念、實體及其關系,將信息表達成接近人類認知世界可以認知的形式,為人們提供了一種更好地組織、管理和理解海量信息的范式[16]。知識圖譜作為一種高效的知識組織方式,它能夠幫助用戶快捷、準確地查詢到所需要的信息以及其關聯信息,與傳統基于關鍵字匹配的搜索引擎原理不同,知識圖譜不但有結構數據展示,還提供關聯查詢,其利用概念、實體的匹配度可以返回與搜索相關的知識體系[17],知識圖譜的工作原理如圖1所示,在數據層面,首先需要從數據源中抽取出實體,實體屬性以及實體之間的關系,實體和關系以三元組的方式表示,然后將三元組存入專業數據庫,這個過程集合知識提取,知識整合及知識存儲;在應用層面,用戶根據需求輸入檢索內容,系統提取搜索內容中的實體和屬性信息,與知識圖譜中的實體信息進行匹配,并將查詢的到的實體信息和關聯實體信息一并返回給用戶。

圖1 知識圖譜工作原理
自Google提出知識圖譜概念以來,國內外針對知識圖譜的研究與應用發展十分迅速,并涌現出一大批成果,根據知識圖譜的應用范圍,學術界將知識圖譜分為通用知識圖譜和垂直知識圖譜[18]。在通用領域,知識圖譜具有數據量大、通用性強、知識范圍廣等特點,如國外的YAGO[19],NELL[20],DBpedia[21],Freebase[22],Knowl‐edge Vault[23],國 內 的Zhishi.me[24],Xlore[25],CN-DBpe‐dia[26]等。在垂直領域,知識圖譜具有數據量小、密度大、知識集中以及專業性強等特點,被常常用來輔助各種復雜的分析或支持決策,截至2020年,相關技術已經廣泛應用于社會各行各業。在金融反欺詐領域,知識圖譜可以組織相關知識碎片,深入語義分析與推理,并通過對客戶信息內容的一致性進行充分驗證來識別或提前發現欺詐行為[27–29];在企業商業風險領域,基于全國企業知識圖譜可以從異常關聯挖掘、企業風險評估、關聯探索等多維度構建數據模型,進行全方位的企業風險評估,這種方法能有效規避潛在的經營風險與資金風險,為行業客戶提供智能風險管理[30];在創投領域,知識圖譜可以通過圖譜可視化對創投圖譜中的初創公司發展情況,投資機構投資偏好等進行解讀,通過節點探索、路徑發現、關聯探尋等可視化分析技術展示公司的全方位信息,通過知識地圖、時序圖譜等形態對地理分布、發展趨勢等進行解讀,為投融資決策提供支持[31];除此之外,隨著知識圖譜發展,知識圖譜融合一些新的技術方法還可以實現政治意識形態檢測[32]、城市人口流動分析[33],特別是知識圖譜賦能工業制造,在物體檢測[34],設備維修[35]等都有巨大的研究價值。
知識圖譜在設備維修知識整合和管理上據有明顯的優勢,具體包括以下4個方面:
(1)在設備健康管理中,其數據形式是多源的,既有結構化的維修工單,也有非結構化的文本描述信息以及設備部件的圖片信息,上述數據在設備健康管理中可能都是在描述同一設備,知識圖譜能夠有效地整合和存儲設備維修相關知識,為設備健康管理提供較全面的數據支撐;
(2)與傳統結構化顯示數據的方式不同,知識圖譜采用語義網絡進行知識表示,打通數據之間的阻隔并形成有效關聯,擺脫原來“數據孤島”的狀態,并通過屬性值的自動補全等功能極大地擴展設備原有的信息,進一步強化設備之間的聯系,此外也可以從各種數據源提取知識并快速集成到已有知識圖譜中,靈活性和拓展性較強,也更加有利于相關知識的持續積累和用戶管理;
(3)設備維修故障描述中存在大量非結構化數據,如故障描述、維修報告等,其語言隨意無章,不利于相關知識復用,通過對其按照一定的邏輯規則進行處理后,其關鍵信息抽取后存入知識圖譜,可以實現設備健康管理所需關鍵知識要素的選擇性提取和循環利用;
(4)知識圖譜能夠進一步為核電設備健康管理的知識挖掘、應用開發、可視化分析等提供堅實基礎,知識圖譜是經過清洗和濃縮處理后的知識,基于知識圖譜的語義搜索能夠實現關聯知識獲取,并能夠實現可視化展示,基于知識圖譜的智能知識推薦能夠實現精準的對接需求,縮短故障處理的周期。
在知識圖譜的構建流程方面,李濤等將構建過程總結為本體和實體的抽取,圖譜的構建、更新、維護,以及面向知識圖譜的內部結構挖掘和外部擴展應用[17];劉嶠等將構建過程分為知識抽取、知識融合、知識加工和知識更新4個步驟[18]。領域知識圖譜是面向特定領域的知識庫,其構建始終遵循“始于需求,終于應用”的原則,根據該業務原則,本文將核電維修知識圖譜的流程定義為如圖2所示,其中業務需求是指搭建圖譜的業務目的,知識建模旨在根據業務需求搭建知識圖譜模型框架,讓相關知識要素以一定邏輯形式展示,知識提取旨在從各類數據源中提取所需要的知識要素;知識融合旨在對冗余、重復數據進行清洗,知識儲存是將獲取的知識要素儲存在特定的數據庫之中[36]。由于企業的業務需求是一個復雜動態的過程,難以泛化,所以本文更加關注圖2知識建模到知識推理和應用部分,其中知識應用部分會根據實際情況變化不斷提出新的需求,進而推動知識圖譜的完善和迭代。

圖2 領域知識圖譜構建流程
知識建模需要對業務有較深的理解,也需要對未來業務可能的變化有一定預估,從而設計出最貼近現狀并且性能高效的系統,其中主要面臨的問題包括:首先根據所設計的知識模型確定實體、關系和屬性,其次確定可以組成概念的實體和關系,最后確定不需要放在知識圖譜中的信息。在圖譜中,概念是一定領域中某一類實體的抽象表達,不同的概念擁有不同的實體,且不同類別的實體擁有不同的屬性。概念設計需要根據業務需求,確定該概念所包含的實體及其屬性,關系將不同概念的實體按照一定的規則進行關聯,從而讓孤立的數據呈現出網狀結構。本文借助傳統數據庫設計使用的ER (Entity Relationship Graph)圖即實體-關系圖,表示現實世界中的概念實體及其之間存在的關系,通過分析已有設備維修數據,提取出關鍵知識要素作為領域的概念、關系和屬性,具體知識模型如圖3所示。

圖3 核電維修知識圖譜主要概念和關系模式
知識要素提取主要是指將上述概念和關系模式設計中包含的實體對象、屬性信息從數據源中提取出來,并根據關系模式確定實體之間的關系,由于實體對象通常以其名稱指代對應的實體,因此實體識別也稱為命名實體識別[37]。核電維修知識圖譜的關鍵知識要素提取需要從維修工單的描述中提取出上述概念和關系模式設計的知識要素,主要包括維修事件、設備、電廠、機組、責任科室、責任班組、任務描述,故障位置等。最新的自然語言處理技術能夠實現非結構化數據自動提取,有利于維修知識持續提取和知識積累,主要方法包括:基于規則的方法、基于統計學習的方法、基于深度學習的方法,以及多種方法的組合使用[38–41]。
本文以秦山核電企業4個機組的維修工單任務為源數據,收集時間范圍在2019年4月1日到5月30日的維修記錄共524 項工單數據,每項工單任務包含83 個字段,該數據在數據庫中主要以表格的形式儲存,樣本數據如圖4所示。本文根據概念和關系模式抽取任務名稱、設備名稱、所屬電廠、所屬機組、責任科室、責任班組等關鍵知識要素。提取知識要素是一個復雜的過程,實際的維修工單中包含許多無效字段以及重復數據,如果不進行融合和實體消歧會導致圖譜中形成大量數據噪音,知識圖譜的準確性和可用性會因此受影響。因此,本文在數據處理的編碼過程中設計出一個知識融合單元,對重復的信息進行清洗和融合,最終提取出各類實體、關系數據如表1所示。

圖4 維修工單數據樣本

表1 不同類型的實體關系及屬性數量
根據知識模型提取出來的知識要素要以特定的物理結構進行存儲,知識圖譜主要以“圖”數據結構進行存儲,這種數據結構能夠快速處理各類復雜關系,是一種理想的領域知識管理工具。但具體圖數據庫的選擇需要根據業務量以及效率的要求,截至2020年,相關數據庫的使用情況,無論是工業應用還是學術研究,使用最廣泛的是Neo4j數據庫,其儲存方式主要以節點(node)和關系(relation)為對象的網絡結構形式[42]。Neo4j 一般可以滿足10億節點以下規模的數據量儲存,但如果數據量特別龐大,可選擇支持分布式的系統比如OrientDB,Ja‐nusGraph 等,或者通過效率、冗余原則把信息存放在傳統數據庫中,從而減少知識圖譜所承載的信息量。
本文借助Neo4j中的標簽實現核電設備相關實體和關系類型的標識,Neo4j 圖數據庫本身提供Cypher 工具對三元組數據進行操作,其本身支持RDF、CSV、JSON等文件格式,可以利用load csv 完成對csv 文件數據的批量導入,本文出于便捷操作的考慮,使用基于Neo4j 的python 開發包py2neo 導入實體關系數據,初步建立核電維修知識圖譜如圖5所示,其中同類實體或關系顯示為同一種顏色,如其中cEvents 的節點顯示顏色為黃色,當然相關可視化狀態都是可變的,可以根據實際需求對節點顏色以及大小進行動態調整。從圖譜中可以發現,本文構建的核電設備維修知識圖譜由2906 個節點標簽和5331條邊組成,節點標簽由定義的9類實體組成,邊標簽由定義的11 類關系組成,同時還包含大量的屬性鍵值,不同于現存大多的同構知識圖譜(即只有一類邊),本文所構建的異構知識圖譜擁有豐富的實體和關系種類。
2.5.1 設備維修分析流程
在已構建的核電設備維修知識圖譜基礎上,借助Neo4j提供的CQL工具能夠快速獲取設備維修的相關知識,如故障描述、責任科室、負責班組等,實現多維度、多層次的維修統計分析、關聯分析等。CQL 是代表Cypher的查詢語言,是一種聲明性模式匹配語言,遵循SQL 語法,具有語法簡單、人性化以及可讀性強等特點?;谥R圖譜的設備維修分析流程如圖6所示,首先確定分析的對象,以限制條件縮小搜索范圍,以MATCH 配合WHERE 語法使用,基本思想同關系型數據庫類似;其次選取分析對象,確定分析目標,在圖數據庫之中可以以實體節點為分析對象,如實體的統計特征,也可以以關系為分析對象,如關聯路徑分析,同時還可以結合實體和關系進行綜合分析;最后返回可視化結果,Neo4j既支持數據的圖譜可視化,同時也支持普通數據庫類似的表格表達方式,輸出結果可以用于實現安全管理、故障分析、決策支持等目標。

圖6 基于知識圖譜的核電設備維修分析流程
2.5.2 維修作業統計分析
Neo4j 的統計分析常用COUNT,SUM,AVG 等統計指標,并可以結合WHERE,LIMIT 等限制性函數對數據節點進行篩選,統計分析主要以表格的形式進行展示。如不同電廠產生的工單數量以及對應的維修日期和相應的作業類型并按照工單數量排序,可以輸入:“MATCH p=(c:cEvents)-[]->(a:cFacility)RETURN a.name AS 電廠名稱,COUNT(*)AS 工單數量,c.pWO_TSK_STATUS_DATE AS 檢修日期,c.pWORK_ORDER_TYPEAS 作業類型ORDER BY 工單數量DESC”,運行結果如圖7所示,產生工單數量最多的日期為2019.05.10,所在電廠為QS2,單日維修工單數量達到29 件,作業類型為PM(總的作業類型包含13 類)。且從總體說來,QS2 的工單數量明顯高于其它電廠,作業類型都集中在PM 項,同時也有MO 項作業,其它電廠的工單作業類型也集中在PM 項,如要繼續挖掘深層次的具體原因則要結合到企業的運營安排和其它數據的拓展和聚合。

圖7 統計分析
2.5.3 維修作業關聯分析
以數據庫之中所有與“柴油機”相關的歷史維修事件為例,輸入“MATCH(n:cEvents)-[]-(p:cEquipment)WHERE n.name=~'.*柴油機.*'RETURN n.name as 柴油機故障,p.name as 相關設備”,則會返回“柴油機”故障和相關設備的列表如圖8所示,輸入“MATCH p=(n:cEv‐ents)-->()where n.name=~'.*柴油機.*'RETURN p”則會返回與柴油機故障相關聯的所有實體節點如圖9所示。從圖9中可以發現,共查詢到5 件案例,其中4 件是由運行三處負責,3 件是由M316 班組負責維修,有3 件的負責人都是200770xx,所有故障維修事件來源都是QS2 廠房??梢哉J為,QS2 廠房的柴油機故障發生比較頻繁,與柴油機相關的維修事件運行三處是對口科室,而M316 組在類似的維修事件上經驗豐富,同時200770xx負責人對柴油機相關故障維修最清楚,通過知識圖譜的展現形式,可以清楚的看到對象之間的關系并進行針對性的維修操作。

圖8 故障和關聯設備模糊查詢

圖9 故障和關聯實體可視化
本文結合核電設備健康管理的現實需求以及知識圖譜在相關領域的特異性優勢,提出了一種新的基于知識圖譜的核電設備健康管理方法,并設計了基于核電企業實際維修工單數據的實體關系模型,構建了核電維修知識圖譜,做了基于知識圖譜的核電設備健康管理的統計與關聯分析。研究結果表明,知識圖譜能夠為設備健康管理提供較為全面的數據支持,在設備維修知識的集成上打破傳統的數據孤島問題;同時,知識圖譜實現設備故障分析可視化,不僅可以為維修人員和管理人員提供決策和知識支持,而且有助于用戶理解實際業務;此外,知識圖譜還有極強的可擴展性,可以將不同數據源集成在同一圖譜中,本文構建的知識圖譜僅針對維修工單數據源,而在核電企業中與設備維修有關聯的數據源還包括BOM 表、設備主數據、供應商、PM 項目以及工單物資申請表等,通過相關邏輯規則擴展現有的圖譜信息,能最大限度地發揮知識圖譜在設備健康管理中的價值,為未來設備的智慧管理奠定基礎,這是本文進一步研究的方向。
值得注意的是,雖然知識圖譜在工業應用中有諸多優勢,但搭建領域類圖譜,特別是工業知識圖譜存在許多值得注意的地方,具體說來,有以下3個方面:
(1)數據建模方面,知識建模決定了圖譜中實體之間的關聯形式,不同于本文中單種類的數據建模,實際的工業數據是多種類的,數據建模需要考慮復雜的實體以及實體之間的關系,特別需要考慮數據之間的邏輯關聯,這需要知識建模人員和業務人員深度交流和溝通。
(2)數據融合方面,工業數據常常面臨著噪音多,數據雜的特點,在數據預處理過程中,需要考慮設計一個數據融合單元,對噪音數據和重復數據進行清洗。
(3)應用開發方面,知識圖譜是設備健康管理應用開發的一個基礎和底層,可視化只是應用一部分,知識圖譜對設備健康管理最有用的部分是智能問答、智能推薦等智能應用開發,因為知識圖譜是經過清洗和整理過的知識,其規則的三元組形式對接智能問答和推薦的應用開發十分便利。