馬嬌玉
(積成電子股份有限公司 山東濟寧 272000)
從知識圖譜的定義角度分析,其在圖書情報領(lǐng)域又被看作是知識領(lǐng)域的映射和可視化地圖,同時,通過知識圖譜,也能夠直觀地呈現(xiàn)出知識結(jié)構(gòu)與發(fā)展狀態(tài)中的圖形,基于可視化技術(shù)對知識資源及載體的描述,能夠清晰地找到并呈現(xiàn)二者之間存在的關(guān)系。本實驗中使用了Neo4j數(shù)據(jù)庫,來實現(xiàn)知識庫結(jié)構(gòu)的形成與利用[1]。通過數(shù)據(jù)庫語句,根據(jù)關(guān)鍵字段來完成知識網(wǎng)絡(luò),提取mysql的半結(jié)構(gòu)化數(shù)據(jù),創(chuàng)建出實體、關(guān)系、屬性等要素。實現(xiàn)知識有效融合,能夠擺脫實體與關(guān)系,從而實現(xiàn)數(shù)據(jù)實時更新,構(gòu)建良好的知識庫結(jié)構(gòu),而知識推理的意義在于對當前知識庫進行深入的知識挖掘,形成新的知識網(wǎng)絡(luò),豐富知識庫內(nèi)容。
知識圖譜的主要作用是將多個獨立的知識進行連接,形成一張知識網(wǎng)絡(luò),從而可以完成信息的結(jié)構(gòu)化、統(tǒng)一化,也要依照現(xiàn)有的電網(wǎng)知識庫實現(xiàn)隱晦知識的進一步挖掘,形成新的知識網(wǎng)絡(luò)。
下文主要探索知識圖譜的概念與構(gòu)建電網(wǎng)知識圖譜的意義,選取福建的電網(wǎng)數(shù)據(jù)進行分析。通過對福建地區(qū)的數(shù)據(jù)進行研究,提煉出電網(wǎng)關(guān)系結(jié)構(gòu)圖,詳見圖1,并將其作為電網(wǎng)知識圖譜創(chuàng)建的重要參考。
圖1 電網(wǎng)關(guān)系結(jié)構(gòu)圖
電網(wǎng)知識圖譜的平臺采用了傳統(tǒng)B/S的模式(見圖2),本文會詳細介紹開發(fā)細節(jié)。
圖2 電網(wǎng)知識圖譜數(shù)據(jù)流結(jié)構(gòu)圖
使用NOSQL圖形數(shù)據(jù)庫Neo4j,將其方法用于電網(wǎng)知識圖譜的數(shù)據(jù)庫工具,來完成電網(wǎng)知識圖譜的持久化。以福建地區(qū)知識圖譜為例,詳見圖3。
圖3 福建電網(wǎng)知識圖譜自動成圖
Neo4j具有高性能特點,利用NOSQL圖形數(shù)據(jù)庫可以將結(jié)構(gòu)化數(shù)據(jù)存儲到網(wǎng)絡(luò)中,其作為一種嵌入式的系統(tǒng),通過磁盤來可以提高事務(wù)處理特性,構(gòu)建Java持久化引擎[2],然而對于機構(gòu)化數(shù)據(jù)在網(wǎng)絡(luò)(從數(shù)學(xué)角度叫做圖)中的存儲,并不是將數(shù)據(jù)存儲于表內(nèi)。Neo4j又被稱為高性能引擎,通過這一引擎,可以滿足成熟數(shù)據(jù)庫應(yīng)用需求,同時,程序員作為面向?qū)ο蠛挽`活的網(wǎng)絡(luò)結(jié)構(gòu),也能夠表現(xiàn)出靜態(tài)與嚴格的特點,然而這些特點都能夠享受事務(wù)特性,也帶來企業(yè)級數(shù)據(jù)庫的優(yōu)勢。
Neo4j數(shù)據(jù)庫中的label同等于關(guān)系型數(shù)據(jù)庫中的表,其中的每一個實體同等于關(guān)系型數(shù)據(jù)庫中的一行數(shù)據(jù)。
數(shù)據(jù)導(dǎo)入階段,將福建電網(wǎng)的相關(guān)數(shù)據(jù)添加到Neo4j數(shù)據(jù)庫,并自動生成關(guān)系,具體數(shù)據(jù)導(dǎo)入語句模板:
USING PERIODIC COMMIT 100 LOAD CSV FROM"文件路徑"AS句柄merge(對象:標簽名{對象.屬性0:句柄[0],對象.屬性1:句[1],......{對象.屬性n:句柄[n]})。
1.2.1 USING PERIODIC COMMIT 100
在LOAD CSV前面加上USING PERIODIC COMMIT 1000,1000表示每1000行的數(shù)據(jù)進行一次Transaction提交,提升性能。
1.2.2 WITH HEADERS
從文件中讀取第一行作為參數(shù)名,只有在使用了該參數(shù)后,才可以使用“對象.屬性”這樣的表示方式,否則需使用line[0]的表示方式。
具體自動創(chuàng)建關(guān)系語句模板:
Match(a:標簽1),(b:標簽2)where a.屬性=b.屬性merge(b)-[r:關(guān)系]->(a)。
通過此方式,來完成電網(wǎng)只是圖譜的實體導(dǎo)入與關(guān)系自動創(chuàng)建,以半自動形成電網(wǎng)知識圖譜。
使用Vue+Element完成基本界面的搭建:(1)在頁面script標簽中引入Vue.js等庫;(2)使用Echarts對知識圖進行圖形可視化展示操作首先引用Echarts的組件,然后引用其Graph進行畫圖操作。
(1)平臺使用.jar文件,使用JDK進行啟動。(2)前端vue文件部署在Tomcat服務(wù)器上,使用同Tomcat進行啟動。
以電網(wǎng)調(diào)控知識源為核心,建立電網(wǎng)調(diào)度運行專業(yè)詞庫,綜合采用命名本體實體識別、句法分析、語義分析等自然語言處理方法,系統(tǒng)支持抽取數(shù)據(jù)源信息中的實體(概念)、屬性以及實體關(guān)系。抽取時,根據(jù)已有電網(wǎng)模型信息構(gòu)造,包含省調(diào)、地調(diào)、縣調(diào)、廠站、設(shè)備、電壓等級、設(shè)備屬性及量測數(shù)據(jù)統(tǒng)計信息的網(wǎng)絡(luò)層次知識[3]。例如,可以按地區(qū)與廠站、廠站與母線等具有關(guān)聯(lián)關(guān)系,廠站本身也有很多相關(guān)的屬性,這些都能夠在詞庫的實體屬性中具體展現(xiàn)。
USING PERIODIC COMMIT 1000 LOAD CSV FROM"文件路徑"AS句柄merge(對象:標簽名{對象.屬性0:句柄[0],對象.屬性1:句[1],......{對象.屬性n:句柄[n]})。
上述語句詳細解釋。
2.1.1 USING PERIODIC COMMIT 1000
在LOAD CSV前面加上USING PERIODIC COMMIT 1000,1000表示每1000行的數(shù)據(jù)進行一次Transaction提交,提升性能。
2.1.2 WITH HEADERS
從文件中讀取第一行作為參數(shù)名,只有在使用了該參數(shù)后,才可以使用line.name這樣的表示方式,否則需使用line[0]的表示方式。
2.1.3 AS line
整個數(shù)據(jù)表是以行的形式進行提交的,每行提交為一個實體。
2.1.4 MERGE
使用MERGE實現(xiàn)創(chuàng)建,會自動取消創(chuàng)建重復(fù)的實體以及關(guān)系。在導(dǎo)入時,MERGE子句在已經(jīng)存在各個標簽、屬性、屬性值與當前MERGE后面描述的節(jié)點完全相同的情況下不會重復(fù)創(chuàng)建多余節(jié)點。所以,要先整理數(shù)據(jù)源,保證csv中的每條數(shù)據(jù)相同的節(jié)點要完全相同。
系統(tǒng)可以消除電網(wǎng)知識圖譜中的重復(fù)概念關(guān)系,及時清理冗余及錯誤的實體關(guān)系,保證知識圖譜結(jié)構(gòu)的準確性,可以使用Echarts完成知識圖譜的數(shù)據(jù)可視化[4]。
知識推理作為關(guān)鍵環(huán)節(jié),可以根據(jù)現(xiàn)有電網(wǎng)業(yè)務(wù)邏輯信息進行推理,系統(tǒng)可以實現(xiàn)知識庫中已有實體關(guān)系的邏輯推理,使用規(guī)則引擎,從現(xiàn)有知識中發(fā)現(xiàn)新知識,可實現(xiàn)業(yè)務(wù)需求分析推理,從而輔助電網(wǎng)業(yè)務(wù)決策。知識推理可以通過遞歸查詢,深度挖掘,可以得到新的知識網(wǎng)絡(luò),以發(fā)掘新的知識。
系統(tǒng)應(yīng)提供知識圖譜中的電網(wǎng)層次語義信息,點擊可查看相應(yīng)的具體知識內(nèi)容;系統(tǒng)可根據(jù)輸入選擇類型,展示對應(yīng)知識內(nèi)容。
電網(wǎng)在建設(shè)初期并沒有統(tǒng)一的知識平臺,每一個部門都建立了各種信息庫,使得電網(wǎng)產(chǎn)生了較多的信息,通過電網(wǎng)的生產(chǎn)、運行及服務(wù)等環(huán)節(jié),使得信息量不斷增加[5]。例如,電流、電壓及頻率發(fā)生變化時會產(chǎn)生相關(guān)數(shù)據(jù),開關(guān)狀態(tài)發(fā)生改變后,也產(chǎn)生一系列的數(shù)據(jù),電表信息是不可忽視的數(shù)據(jù)信息。電網(wǎng)信息化雖然產(chǎn)生了較多的電網(wǎng)數(shù)據(jù),但需要使用的時間不斷縮短。但是,在輸出這些數(shù)據(jù)時,存在一些困難,主要原因是沒有統(tǒng)一的格式,不僅需要將結(jié)構(gòu)化的數(shù)據(jù)輸入其中,還具有各種非結(jié)構(gòu)化的數(shù)據(jù),涵蓋了文本、音頻及視頻等。在構(gòu)建電網(wǎng)KG時,KG中根據(jù)多源數(shù),結(jié)構(gòu)化數(shù)據(jù)一般可以直接進行知識融合;對于半結(jié)構(gòu)化數(shù)據(jù)來說,需要進行有效篩選,利用此種方法消除干擾數(shù)據(jù),也可以進行知識抽取,有助于更好地規(guī)范數(shù)據(jù)。此外,要想建立完整的電網(wǎng)KG,需要將電網(wǎng)中涉及的各種數(shù)據(jù)進行有效整合,在對數(shù)據(jù)進行管理及查找時,會降低時間的浪費,也會將電網(wǎng)逐漸智能化,提高工作效率。要想建立良好的電網(wǎng)KG,第一步要從各個方面獲取有效的電網(wǎng)術(shù)語,有效運用這些電網(wǎng)術(shù)語為形成專業(yè)化電網(wǎng)KG奠定了基礎(chǔ)。與此同時,還可以運用形式化方法抽取術(shù)語信息,并對其可靠性進行相關(guān)分析[6]。但是,電網(wǎng)術(shù)語沒有得到大規(guī)模的使用,其重要性也會得到降低,但會提高術(shù)語的統(tǒng)計難度。對此,工作人員可以設(shè)計專業(yè)化的電網(wǎng)詞典,這有助于其他人更好地理解專業(yè)電網(wǎng)術(shù)語,也可以提高電網(wǎng)知識的學(xué)習(xí)效率,促進電網(wǎng)不斷獲得發(fā)展。
電網(wǎng)知識圖譜作為大數(shù)據(jù)時代背景下的全新技術(shù)領(lǐng)域,對我國現(xiàn)代化電力產(chǎn)業(yè)的發(fā)展起到良好的推進作用,但是,當前的電力行業(yè)發(fā)展中對于知識圖譜的運用仍然處于起步階段,算法還不夠成熟。然而,受到信息化時代的支持,人們對知識圖譜展開了深入研究,積極探索多領(lǐng)域技術(shù)的融合應(yīng)用,為電網(wǎng)企業(yè)的知識傳承提供可靠支持。