李曈昊,干 寧,李建鋒,肖 波
(1.國能長源漢川發電有限公司,湖北 孝感;2.國能長源武漢青山熱電有限公司,湖北 武漢)
隨著能源和智能電網體系的不斷發展和完善,電力設備狀態是保障電力系統安全穩定運行的重要支柱[1]。電力設備故障類型、現象和屬性大幅增加[2],當設備存在缺陷時,此時現有的電力設備管理系統可能出現缺陷判斷結果的解釋性不充足[3]。
通過自然語言處理技術和深度學習的結合[4],可以處理電力通信設備故障的結構化和非結構化數據[5]。構造知識圖譜,建立電力設備缺陷模型[6]。利用該模型,電網檢修的工作人員可以快速定位電力設備的缺陷,并在輔助決策中發揮有效作用[7]。
知識圖譜的構建由兩部分內容構成,一方面是對知識圖譜的構架進行建立;另一方面是對知識獲取的方法進行研究。
電力設備缺陷知識圖譜構架區別于傳統信息化系統。在電力設備缺陷判斷方向,積累了海量的設備缺陷數據的案例,需要從案例中將缺陷診斷的知識挖掘出來。日常維護過程記錄電力設備的缺陷。與缺陷記錄的其他內容不同,缺陷描述以短文本的形式記錄,沒有固定的格式和結構。
由于電力系統的專業化,電力設備缺陷的描述涉及電氣設備的專業領域,對電力行業的專業知識有一定要求,目前和知識圖譜結合的相關研究還較少。本課題依據電力設備缺陷的數據特點,構建了知識圖譜。
電力設備缺陷文本由大量的實體和關系組成。知識抽取模型的基礎是電力設備缺陷的實體識別,文本內容通過本體類型的標準進行識別和標注,實體識別的的效果好壞決定了知識圖譜構建質量的高低。由于目前沒有公開的訓練完畢的語料庫,需要人為標注和構建數據集。對于結構化的電力設備缺陷實體,可以直接轉化為三元組的形式。而對于非結構化的數據,為了解決部分電力系統行業詞匯一詞多義的問題,本文基于一種雙向循環神經網絡(BiLSTM)與條件隨機場(CRF)的神經網絡模型的方法,與此同時,將BERT預訓練模型作為詞向輸入加進來,一起實現了實體識別的任務,電力設備缺陷實體識別模型見圖1。

圖1 電力設備缺陷實體識別模型
BiLSTM模型在實體識別任務中,實體元素的上下文信息對于當前實體的識別和分類非常有效。因此,為了獲得每個實體的上下文特征信息,使用BiLSTM層來提取語義特征。
由于基于流水線的知識抽取模型存在級聯錯誤,并且無法充分利用觸發詞和實體元素之間的關系來實現準確的實體識別。BERT 通過使用深度雙向Transformer 和大量文本語料庫來訓練通用語言模型。與現有的語言表示模型相比,BERT 訓練的語義向量特征包含上下文信息,可以用于對多義詞的建模,但它不考慮局部特征。對于實體識別,局部特征非常重要。因此,我們聯合提取實體觸發器和實體。
在訓練模型前需要選取一定量的數據進行標注,再對模型進行相應的訓練。本課題選取了3 256 條電力設備缺陷數據進行人工標注,構建了電力設備缺陷數據集,見表1。采用的是BIOES 序列標注法,其中BIOES 中的B、I、E 分別表示為實體的開始部分、中間部分和結束部分,而S 代表著實體的單個字詞,O 代表著此部分不是實體。電力設備缺陷語料庫中的一條實體標注結果見圖2。

表1 實驗數據集大小及劃分

圖2 實體標注示例
標注的實體數據集中,實體類型分為5 種,分別是缺陷名稱、缺陷描述、發生部位,所屬機組、消缺部門。例如缺陷名稱是指具體產生缺陷的電力設備的名字,如“#3 爐#3 渣漿泵出口管道破”。以上5 類實體標注的情況見表2。

表2 實體標注情況
根據上述步驟,從非結構化的電力設備缺陷中抽取到的實體可能存在大量的重復不清晰的數據。通過知識融合將實體名稱不同但含義相同的進行高效有機統一融合,并對各類型實體進行相應的分析。“發生部位”類實體需要補全相應屬性,例如通過知識融合補全屬性統一為“凝結水輸水泵”。本課題采用編輯距離和Jaro-Winkler 相關系數算法相結合的方式,對各個實體進行相似度的計算,并設定相應的閾值來判斷待對齊的實體是否匹配能否進行知識融合。
(1)編輯距離:在兩個詞語之間可以進行替換一個字符、刪除一個字符或者添加一個字符這三種操作,由一個詞語轉化成另外一個詞語所用到的最少的操作次數,就是編輯距離。
(2)Jaro-Winkler 相 關 系 數 算 法(JWS):Jaro-Winkler 相關系數算法是在Jaro 相關系數算法的基礎上做的進一步修改,Jaro-Winkler 更重視實體前綴的重要性,例如在兩個實體中前幾個字都相同的情況下,經過Jaro-Winkler 相關系數算法得到的相似性更高。此算法的公式如公式(1)、(2)所示。
式中,m 為兩個電力設備缺陷實體匹配的長度,t 為換位數目的一半。
因此可以結合電力設備缺陷數據庫提供的數據,設定相應的相似度閾值,通過編輯距離和Jaro-Winkler 相關系數來整體判斷該融合是否是相同的一個電力設備缺陷實體。
選擇高效合理的知識圖譜存儲方式是知識存儲的重要關注點。本文中由于電廠設備缺陷數據種類繁多、冗長復雜,所以傾向于選擇基于圖結構的Neo4j 圖數據庫,處理電力設備缺陷數據更為高效。與Neo4j 圖數據庫中的節點、關系、屬性依次對應匹配,得到相應結構化的三元組,并建立電力設備的缺陷模型,以實現對電力設備缺陷形式和處理方法的全面描述。使用Neo4j 圖數據庫來存儲實體和關系,使用Neo4j 構建圖表數據庫的流程見圖3。

圖3 電力設備缺陷知識圖構建流程
Neo4j 圖數據庫支持對知識數據庫中所有的數據進行查詢、修改和刪除,可實現對不同類型知識的精細化管理。對于圖譜的人工管理,將其劃分為實體管理及關系管理。知識圖譜的存儲核心是三元組,實體是構建關系的前提條件,不同的實體由于屬性及所屬范圍不同,每種實體都需要進行單獨的邏輯處理。對于實體信息,可以對不同字段進行模糊搜索。
將近幾年漢川電廠海量缺陷數據導入系統中,并從中抽取出48 552 個實體和989 854 條關系,一起存儲到Neo4j 圖數據庫中。在本文實際應用中,查詢缺陷名稱“真空開關有裂紋”相關的缺陷內容過程大致為:由Cypher 語句查詢后,得到了電力設備缺陷中所有關于真空開關有裂紋的缺陷,此時獲得了與其缺陷名稱的相關實體信息和這些缺陷實體的所有屬性特征,部分示例見圖4。

圖4 知識圖譜數據庫示例
構建電力設備缺陷的知識實體,并通過與Neo4j的結合,突破了缺陷信息在存儲描述以及推理上的各種局限性,得到實體模型。針對缺陷實體,從缺陷描述、發生部位等多種維度進行深入探討分析。本文采用Cypher 語言有針對性并且高效快捷的檢索、推理和挖掘各類數據。
本課題結合電力設備現有的缺陷數據文本、維修日志等信息,設計了基于知識圖譜的電力設備缺陷模型。該模型引入BERT 預訓練模型對數據進行預處理。基于BiLSTM-CRF 模型的命名實體和實體關系的提取。通過編輯距離和Jaro-Winkler 相關系數算法計算相似度判斷能否實現知識融合。使用Neo4j 圖數據庫進行存儲。該模型可以幫助現場維修的工作人員高效智能的查找設備缺陷并改進相關的維修操作。