侯靖琳,仇潤鶴+,薛季愛,王 晨,蔣學(xué)芹
(1.東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海 261620;2.上海市特種設(shè)備監(jiān)督檢驗技術(shù)研究院, 上海 200062;3.數(shù)字化紡織服裝技術(shù)教育部工程研究中心,上海 261620)
隨著“智慧城市”和“智慧電梯”的發(fā)展需求,電梯運行系統(tǒng)故障預(yù)測問題已受到廣泛關(guān)注和討論。李娟等從宏觀上設(shè)計電梯故障預(yù)測平臺技術(shù)標(biāo)準(zhǔn)框架[1];朱明等根據(jù)環(huán)境對電梯故障率的影響建立電梯故障預(yù)測模型以及診斷方法[2];徐斌等將預(yù)警平臺分3層構(gòu)建并分別對故障數(shù)據(jù)進行預(yù)處理和挖掘以及結(jié)果預(yù)測[3];張翼等根據(jù)電梯部件的特征值及變化趨勢進行故障的預(yù)測[4];曾夢琦提出將數(shù)據(jù)立方體與Apriori思想結(jié)合的方法來進行故障預(yù)測[5]。但電梯故障數(shù)據(jù)存在的數(shù)據(jù)重復(fù)駁雜、數(shù)據(jù)關(guān)系薄弱等問題還需解決,目前已有學(xué)者提出基于知識圖譜進行故障預(yù)測工作,如方冰等提出基于規(guī)則驅(qū)動的故障預(yù)測方法[6],但該方法是對裝備故障進行的預(yù)測,目前基于知識圖譜預(yù)測電梯故障的方法還未被提出。而王鑫等對知識圖譜的數(shù)據(jù)模型進行分析[7],為知識推理、嵌入和補全提供支持。故本文對電梯故障的知識圖譜進行更深層次的應(yīng)用,針對電梯故障預(yù)測需求,提出使用規(guī)則推理、知識圖譜嵌入[8]和知識圖譜補全[9]實現(xiàn)電梯故障預(yù)測的方法,將電梯故障預(yù)測轉(zhuǎn)化為知識圖譜補全任務(wù)以實現(xiàn)故障預(yù)測,為完善電梯的故障預(yù)測平臺提供保障。
圖1是基于知識圖譜的電梯故障預(yù)測的模型,將原始的電梯故障數(shù)據(jù)進行簡單的整理并收集到普通的數(shù)據(jù)集合,通過直接映射或R2RML規(guī)則映射成為知識圖譜三元組,結(jié)合本體層形成知識圖譜。將電梯故障預(yù)測轉(zhuǎn)化為知識圖譜補全任務(wù),并考慮一種混合的電梯故障預(yù)測方法,即組合傳統(tǒng)規(guī)則推理方法與知識圖譜嵌入方法進行電梯故障預(yù)測,鑒于兩種方法在預(yù)測中的效率和準(zhǔn)確度,選擇以知識圖譜嵌入為主要的預(yù)測方法,傳統(tǒng)的規(guī)則推理為輔助預(yù)測方法,如圖1所示,知識圖譜嵌入技術(shù)在構(gòu)建知識圖譜之后經(jīng)Trans系列翻譯模型實現(xiàn)三元組的向量表示,通過ProjE模型實現(xiàn)知識圖譜補全任務(wù);規(guī)則推理方法則通過構(gòu)建規(guī)則實現(xiàn)推理預(yù)測。

圖1 基于知識圖譜的電梯故障預(yù)測模型
電梯故障知識圖譜的構(gòu)建過程主要包含知識的提取、融合以及加工等步驟,從半結(jié)構(gòu)化的數(shù)據(jù)如表格數(shù)據(jù)中提取三元組結(jié)構(gòu)化信息,通過融合將三元組的實體間的歧義消除,以得到一系列基本的表達(dá),之后通過知識加工初步構(gòu)建出電梯故障的知識圖譜。
知識圖譜的基本元素用描述兩個實體之間關(guān)系的三重事實表示,即(頭實體h,關(guān)系r,尾實體t),并將其存儲到資源描述框架據(jù)庫中。電梯故障知識圖譜如圖2所示,該圖展現(xiàn)對于電梯故障知識圖譜模式層和數(shù)據(jù)層的構(gòu)建。知識圖譜分為模式層和數(shù)據(jù)層,其中模式層主要表現(xiàn)電梯故障信息中概念本體與本體之間的上下位關(guān)系以及本體與屬性的類型定義,數(shù)據(jù)層則是模式層中本體和關(guān)系的實例化,即實體和關(guān)系,如,數(shù)據(jù)層的電梯A是模式層中本體電梯ID的一個實例化的實體,數(shù)據(jù)層中實體電梯A的屬性類型由模式層電梯ID及其屬性來定義。模式層定義數(shù)據(jù)層中大部分概念,將相應(yīng)已經(jīng)提取、融合、加工的數(shù)據(jù)進行規(guī)約映射入數(shù)據(jù)層即可得到相應(yīng)的三元組。之后對于電梯故障預(yù)測的具體操作則針對數(shù)據(jù)層進行,如圖2中虛線所示的故障預(yù)測,通過本文提出的方法可實現(xiàn)對相應(yīng)電梯進行故障發(fā)生的預(yù)測。

圖2 電梯故障知識圖譜
本文提出一種傳統(tǒng)規(guī)則推理的電梯故障輔助預(yù)測方法——針對關(guān)系的規(guī)則。該方法中的規(guī)則庫是根據(jù)電梯運行經(jīng)驗和應(yīng)用中典型的輸入輸出制定,而庫中的規(guī)則對知識圖譜的推理進行擾動和影響。規(guī)則可采用事件-條件-動作模型進行相應(yīng)的表述,輸入變量為 [C1,C2,C3,C4,C5,…], 輸出變量為E,即,電梯日常運行中運行速度C1、溫度C2、濕度C3、載重量C4、曳引機振動值C5等輸入的變量值對于電梯故障即輸出變量E的影響強度較大,且在 [C1,C2,C3,C4,C5,…] 處于某范圍時較易出現(xiàn)某故障即輸出變量E,則輸出變量E的值計算如下
(1)
其中,C=ω1·C1+ω2·C2+ω3·C3+…,ωi為相應(yīng)權(quán)重,輸出變量E為故障現(xiàn)象或描述,規(guī)則中將輸入變量根據(jù)日常統(tǒng)計進行加權(quán)平均得到相應(yīng)的輸出變量,之后將數(shù)據(jù)集中相應(yīng)的環(huán)境實體和故障實體進行輸入和輸出的匹配,具體規(guī)則根據(jù)日常統(tǒng)計進行編寫,之后規(guī)則引擎通過匹配和推理完成預(yù)設(shè)條件下的動作執(zhí)行,其基本結(jié)構(gòu)形式為:
Rule<規(guī)則名>[<參數(shù)…]
When(Event)
If<[C1,C2,C3,C4,C5,…]>then
End-rule[<規(guī)則名>]
通過以上規(guī)則庫中的規(guī)則,并設(shè)置相應(yīng)的區(qū)間,可通過規(guī)則引擎的推理進行相應(yīng)的故障匹配,從而進一步發(fā)現(xiàn)實體間隱含關(guān)系,如,同一廠商、同一年份中列裝的電梯,根據(jù)其中一個電梯曾出現(xiàn)故障現(xiàn)象時檢測到的運行速度C1、溫度C2、濕度C3、載重量C4、曳引機振動值C5以及層站C6等這類電梯的狀態(tài)值和相應(yīng)的電梯故障,可進行知識推理,當(dāng)某電梯A出現(xiàn)類似狀態(tài)值的情況時,推理出可能出現(xiàn)故障的電梯系統(tǒng)或者原因,其規(guī)則可表示如下:
Rule
When(Event(elevator_a))
If<[C1,C2,C3,C4,C5,…](elevator_a)≈[C1,C2,C3,C4,C5,…](elevator_a)>then
End-rule [
其中,Event(elevator_a)表示電梯A的故障現(xiàn)象, [C1,C2,C3,C4,C5,…](elevator_a) 表示電梯A的輸入變量數(shù)組,E(elevator_a)表示電梯A的輸出變量;電梯B同理。
根據(jù)上述規(guī)則,經(jīng)過推理可在此知識圖譜上加入一個新的事實三元組(電梯A,發(fā)生,故障現(xiàn)象)。添加規(guī)則后進行的故障推理預(yù)測如圖3所示。

圖3 添加規(guī)則后進行推理預(yù)測
由于傳統(tǒng)規(guī)則推理不僅要求日常數(shù)據(jù)的統(tǒng)計,更要求投入較大人力資源進行規(guī)則庫的編寫,且規(guī)則庫維護成本高,故本文在基于知識圖譜進行的電梯故障預(yù)測的實現(xiàn)方面,將傳統(tǒng)規(guī)則推理作為輔助預(yù)測的方法進行設(shè)計,可降低維護頻率和故障預(yù)測對于人力資源的依賴。為提高準(zhǔn)確率,同時減少對人力資源的消耗和依賴,將知識圖譜嵌入方向作為主要切入點,以傳統(tǒng)規(guī)則推理為輔助,通過主輔兩種方法進行電梯故障預(yù)測。
知識圖譜可以有效地表示結(jié)構(gòu)化數(shù)據(jù)[10],而知識圖譜三元組對于故障預(yù)測的兼容可通過知識圖譜嵌入技術(shù)實現(xiàn)。由此,知識圖譜嵌入的電梯故障鏈接預(yù)測是將知識圖譜三元組進行向量化,將實體和關(guān)系轉(zhuǎn)化為連續(xù)的向量空間,從而簡化操作,同時保留知識圖譜的原有的結(jié)構(gòu)。主要方法上,本文從知識圖譜嵌入和補全方向?qū)﹄娞莨收项A(yù)測進行實現(xiàn),將故障預(yù)測問題轉(zhuǎn)化為知識圖譜補全中鏈接預(yù)測任務(wù)中的實體預(yù)測問題,即對于未知是否故障或未知故障原因的電梯實體,預(yù)測該電梯實體的尾部實體是某個故障或故障原因?qū)嶓w。該方法要求將知識圖譜所構(gòu)成的三元組進行向量化表示,之后進行知識圖譜補全任務(wù)的實現(xiàn)。
2.2.1 TransE模型進行向量化表示
對于每個事實三元組 (h,r,t), TransE模型[11]將實體和關(guān)系表示為同一空間中,把關(guān)系向量r看作為頭實體向量h和尾實體向量t之間的平移即h+r≈t,即通過平移不變性可得到其它頭、尾實體與之相同的關(guān)系的向量表示[12]。TransE模型有較多變體,但由于本文對于電梯故障知識圖譜進行鏈接預(yù)測的實體多為一對一,且TransE本體模型的參數(shù)較少,計算的復(fù)雜度低,故本文選擇TransE本體翻譯模型進行知識圖譜嵌入,實現(xiàn)三元組的低維稠密向量表示,即,對于給定的事實,用本文中的知識圖譜進行演示, (h,r,t) 分別代表三元組(電梯A,發(fā)生,門系統(tǒng)故障)中的頭實體、關(guān)系和尾實體,經(jīng)過TransE訓(xùn)練可以得到 (h,r,t) 的低維向量h,r,t,且h+r≈t,其模型如圖4所示,正確的三元組向量滿足這種關(guān)系,而不滿足這種關(guān)系的則視為錯誤的三元組向量h′,r,t′。

圖4 TransE模型
TransE損失函數(shù)為
(2)
其中,γ是常數(shù),表示正負(fù)樣本之間的間距, d(h+r,t) 表示L1或L2范數(shù), [x]+表示x的正部分,S和S′表示h,r,t和h′,r,t′的集合。
2.2.2 ProjE模型進行知識圖譜補全的鏈接預(yù)測任務(wù)
根據(jù)電梯故障預(yù)測中電梯實體與某故障實體間關(guān)系未知的本質(zhì),將電梯故障預(yù)測任務(wù)視作在兩個實體之間進行知識圖譜補全的鏈接預(yù)測任務(wù),通過ProjE模型實現(xiàn)知識圖譜補全的鏈接預(yù)測[13],預(yù)測出知識圖譜中缺失的故障部分,使電梯故障知識圖譜趨于完整。同時,使用ProjE模型將知識圖譜補全問題轉(zhuǎn)化為一項排名任務(wù)[14],并優(yōu)化候選故障實體列表的總體分?jǐn)?shù),為得到候選實體總體分?jǐn)?shù),提出一個組合運算符,該運算符從輸入數(shù)據(jù)中創(chuàng)建目標(biāo)向量,使用候選向量嵌入投影函數(shù)將候選實體分別投影到相同的目標(biāo)向量上,將候選向量嵌入投影函數(shù)視作排名分?jǐn)?shù)函數(shù),該排名分?jǐn)?shù)函數(shù)顯示相似度得分標(biāo)量即候選故障實體列表的總體分?jǐn)?shù),之后對候選實體總體分?jǐn)?shù)進行排名并接納排名靠前的實體。
為簡化描述,此處僅給定兩個輸入嵌入,同時將預(yù)測任務(wù)視為排名問題,其中排名最高的候選者是正確的實體。為了生成這種排名列表,將每個候選項投影到由兩個輸入嵌入的通過組合運算符定義的目標(biāo)向量上,得到排名分?jǐn)?shù)。
其組合運算符定義為
e⊕r=De·e+Dr·r+bc
(3)
其中,De和Dr分別是全局實體和關(guān)系的k×k對角矩陣,bc是組合偏差,e表示實體向量,r表示關(guān)系向量。
使用該組合算子,可將候選向量嵌入投影函數(shù)即排名分?jǐn)?shù)函數(shù)定義為
R(e,r)=g(Wc·f(e⊕r)+bp)
(4)
其中,f(·)和g(·)表示稍后定義的激活函數(shù),Wc表示候選實體矩陣,bp表示投影偏差, R(e,r) 代表因變量為向量e和r的排名分?jǐn)?shù)函數(shù),其值表示W(wǎng)c中某些候選實體與組合輸入e⊕r之間的相似性。
可將ProjE視為具有組合層和投影(即輸出)層的神經(jīng)網(wǎng)絡(luò),如圖5所示,圖中給定示例“電梯A”的頭部實體和“發(fā)生”關(guān)系,即(電梯A,發(fā)生,?)和兩個候選項,此處任務(wù)為計算每個尾部實體的排名分?jǐn)?shù)。TransE模型進行嵌入,形成實體和關(guān)系向量矩陣,“●”節(jié)點表示來自實體嵌入矩陣WE的行向量,“■”節(jié)點表示來自關(guān)系嵌入矩陣WR的行向量;“▲”節(jié)點表示作為對角矩陣的組合運算符。
ProjE模型選擇ProjE_pointwise排名方法,通過對函數(shù)R(e,r) 中的g(·)和f(·)使用激活函數(shù)實現(xiàn)排名分?jǐn)?shù)的計算,該方法分別將sigmoid和tanh作為g(·)和f(·)的激活函數(shù)。g(·)和f(·)的激活函數(shù)部署后,第i個候選實體的排名分?jǐn)?shù)函數(shù)為
(5)

采用本文提出的基于知識圖譜嵌入和補全技術(shù)的故障預(yù)測方法進行實測電梯數(shù)據(jù)故障預(yù)測的實驗訓(xùn)練及測試。根據(jù)提出的故障預(yù)測方法,將本次實驗分為三元組向量化表示和故障預(yù)測兩個階段進行。
實驗數(shù)據(jù)主要來源于上海市特種設(shè)備監(jiān)督檢驗技術(shù)研究院,數(shù)據(jù)包含故障實體及其屬性、故障現(xiàn)象和原因等。本實驗以電梯故障及故障原因等實體為側(cè)重點,訓(xùn)練數(shù)據(jù)包含故障電梯實體69 560條,故障部件實體46條,故障描述實體1363條。在TransE模型的三元組向量化表示階段,將故障實體和關(guān)系根據(jù)其特有的屬性在TransE模型中進行向量化表示,實體向量和關(guān)系向量的維度設(shè)置為100。隨后將生成的實體矩陣和關(guān)系矩陣各3/4分為訓(xùn)練組、1/4分為測試組。
故障預(yù)測階段使用ProjE模型對已向量表示的三元組進行訓(xùn)練,即進行實體預(yù)測的任務(wù),使用Adam作為具有默認(rèn)超參數(shù)設(shè)置的隨機優(yōu)化器[15]:β1=0.9,β2=0.999。在訓(xùn)練時,對ProjE中的所有參數(shù)應(yīng)用一個L1正則化器,并在組合運算符的頂部應(yīng)用一個dropout層,以防止過度擬合。ProjE中的超參數(shù)是學(xué)習(xí)率lr,嵌入大小k,最小批量大小b,正則化器權(quán)重α,丟失概率pd和否定候選采樣py的成功概率。對于實體預(yù)測任務(wù),設(shè)置實驗參數(shù)見表1。在ProjE模型中使用sigmoid和tanh作為g(·)和f(·)的激活函數(shù),得出的排名分?jǐn)?shù)函數(shù)即為式(5)。

圖5 用于實體預(yù)測的ProjE模型

表1 實體預(yù)測任務(wù)參數(shù)設(shè)置
在通過TransE模型進行向量化表示階段,將電梯故障知識圖譜中的實體和關(guān)系三元組導(dǎo)出三元組文件以train命名,文件中以(頭實體,尾實體,關(guān)系)形式排列,并為三元組中實體和關(guān)系進行id編號,輸出為entity2id.txt以及relation2id.txt文件,文件中記述實體與關(guān)系相對應(yīng)的id值。將上述3個文件輸入TransE模型進行訓(xùn)練,如圖6所示,打開cpp代碼文件,編譯并運行TransE模型。

圖6 TransE訓(xùn)練代碼局部
編譯完成后如圖7所示,生成一個2.3 M的exe可執(zhí)行文件,自動運行可執(zhí)行文件進行三元組的向量化表示,并迭代設(shè)定好的循環(huán)次數(shù)以避免誤差。

圖7 編譯并運行TransE
如圖8(a)、圖8(b)所示,三元組經(jīng)TransE模型運算導(dǎo)出實體矩陣WE文件和關(guān)系矩陣WR文件,矩陣文件中向量維度與實驗設(shè)置一致。

圖8 實體矩陣和關(guān)系矩陣文件
向量化表示階段完成之后,將兩個實體矩陣文件放在指定Elevator文件夾中并進行ProjE訓(xùn)練實驗,在Bash中輸入運行指令進行訓(xùn)練,其參數(shù)與實驗設(shè)置相對應(yīng),并進行若干次迭代,最終使用測試組對訓(xùn)練所得模型進行檢驗。
對于電梯故障預(yù)測,通過對知識圖譜中的所有實體進行排名來預(yù)測給定三元組 (h,r,t) 的缺失h(或t),實驗采用均值秩(Mean Rank)和HITS@k兩個指標(biāo)來評價該預(yù)測方法的性能。均值秩衡量正確實體的平均等級,而HITS@k衡量在前k個元素中是否出現(xiàn)正確的實體(類比為召回率)。濾波后的均值等級和濾波后的HITS@k會忽略結(jié)果中的所有其它真實實體,而僅查看目標(biāo)實體,即排除真實實體對預(yù)測排名的干擾。
本次實驗使用實體預(yù)測任務(wù)評估該模型,并使用實驗程序ProjE_sigmoid.py、數(shù)據(jù)集和在之前相關(guān)工作中建立的指標(biāo)確定其性能。其訓(xùn)練結(jié)果見表2,實驗結(jié)果顯示使用ProjE進行電梯故障實體預(yù)測訓(xùn)練在過濾后的均值秩為76,HITS@10為86.6%。實驗結(jié)果表明,對于目標(biāo)實體的平均預(yù)測次數(shù)為76,同時HITS@10表示在預(yù)測排名完成后排名前10位的預(yù)測實體中出現(xiàn)目標(biāo)實體的平均概率為86.6%,可對電梯故障預(yù)測和維保提供參考。

表2 實驗預(yù)測結(jié)果
本文提出基于規(guī)則推理和基于知識圖譜嵌入的預(yù)測方法,將電梯故障預(yù)測視作知識圖譜補全任務(wù),旨在通過改進的組合模型實現(xiàn)電梯故障預(yù)測,利用TransE進行向量轉(zhuǎn)化,通過ProjE模型對電梯故障進行預(yù)測訓(xùn)練及測試。實驗結(jié)果表明,將知識圖譜應(yīng)用到電梯故障預(yù)測任務(wù)中是可行的。
應(yīng)用知識圖譜嵌入并輔以傳統(tǒng)規(guī)則推理的方法進行電梯故障預(yù)測平臺的搭建,可實現(xiàn)搭建電梯的安全預(yù)警平臺,建立電梯安全預(yù)警及維修保障機制,以減少維保資源的浪費、提高電梯設(shè)備的維保質(zhì)量和效率。