唐啟東 劉清平 劉文娟
摘要:針對航空修理工廠存在海量不規(guī)整的維修信息,導(dǎo)致飛機故障檢測和修理工作量巨大、耗時耗力的問題,采用字符串正向最大逐字匹配的分詞算法、局部敏感哈希函數(shù)以及深度置信網(wǎng)絡(luò)等技術(shù)手段,研究飛機智能故障診斷系統(tǒng),以故障知識庫為輸入,訓(xùn)練模型,根據(jù)故障現(xiàn)象找出故障類型和位置,為裝備的維修性、可靠性改進提供科學(xué)依據(jù),提高企業(yè)修理效能。
關(guān)鍵詞:深度學(xué)習(xí);智能故障診斷;關(guān)鍵技術(shù)
在航空裝備修理中,對具有明顯征兆或潛在故障的預(yù)測和診斷是永恒的主題之一[1-2]。裝備廠家、部隊、修理企業(yè)在長期的航空裝備維修過程中都總結(jié)了大量的故障描述、故障原因及處理方案等,如何很好地管理這些信息,并以豐富多元的知識表達形式對修理企業(yè)積累的故障診斷經(jīng)驗、技能進行提煉和刻畫,并形成故障診斷預(yù)測知識庫系統(tǒng),從而為修理業(yè)務(wù)提供智能的決策支持,為裝備的教學(xué)提供形象而系統(tǒng)的故障分析素材,為修理專家的維修知識提供可視化的經(jīng)驗提煉和預(yù)防性維修知識,甚至于為裝備的維修性、可靠性改進提供科學(xué)的依據(jù),將是一個具有較大意義的研究課題。
1 問題描述
某工廠現(xiàn)有的信息管理數(shù)據(jù)庫系統(tǒng)包含海量故障信息,其中飛機故障信息模塊數(shù)據(jù)已經(jīng)超過3萬條。但現(xiàn)有數(shù)據(jù)庫的故障管理板塊只有簡單的“增、刪、改、查”功能,并且信息存儲形式零散、數(shù)據(jù)描述不規(guī)范,不便于管理與利用,導(dǎo)致飛機故障檢測和修理工作量巨大、耗時耗力,已不能滿足大數(shù)據(jù)時代維修人員的需求。由于前期數(shù)據(jù)庫的故障信息是手工輸入,存在語言詞匯多樣化、輸入格式不規(guī)范的問題,對于同一種故障部位、故障類型在數(shù)據(jù)庫中存在多種描述,并且故障描述的字段無統(tǒng)一格式,故障類型隱含在故障描述中,并未作為屬性單獨劃分。部分故障信息的例子(匿去了發(fā)現(xiàn)時間、處理方案等字段信息)見表1。如故障Ⅲ***1、***3、***5所示,“裂”“裂紋”“裂開”實際上都屬于同一種故障現(xiàn)象的不同描述;如故障ID***2、***4所示,“第1墻”“一墻”“第一墻”也都指機翼上的同一構(gòu)件。
智能故障診斷系統(tǒng),即從非結(jié)構(gòu)化的故障描述中提取故障類型、識別同一類或物件的不同描述,清理出一個純凈的故障知識庫。再基于深度學(xué)習(xí)的方法,設(shè)計一個故障診斷系統(tǒng),以故障知識庫為輸入,訓(xùn)練一個模型,對一定的故障現(xiàn)象找出故障類型和位置,提醒維修人員做好技術(shù)和相關(guān)備件、工具、耗材等器械準備。
2 關(guān)鍵技術(shù)
2.1 故障信息的預(yù)處理
目前封裝好的分詞器[3-4]大部分是簡單地使用單字法和二分法對漢語分詞,導(dǎo)致切分出來的詞失去了原有的意義或者切分出很多無用詞條,產(chǎn)生冗余,降低效率。在實際的匹配過程中,只需保證故障描述中所有的故障類型、故障部位名都能被準確提取出來,而其他具體的數(shù)值等是與類名無關(guān)的詞(停用詞)[5]。無論分詞結(jié)果如何都不影響最終的匹配,只需要一種針對飛機維修的輕量級分詞技術(shù)。因此,本系統(tǒng)使用基于字符串正向最大逐字匹配的分詞算法。
該分詞算法的主要思想是基于分詞詞典,從左往右掃描材料文本字符串,將文本中的字符串逐一與詞典中的詞條進行匹配。開始時選取文本字符串中第一個字作為匹配字段,與分詞詞典中的詞條匹配,如果該詞存在于詞典中,則將其進行標記;如果該詞不存在于詞典中,則將該字作為前綴,與其下一個字組成新的字段與詞典中的詞條進行匹配,依次逐字增加直至匹配結(jié)束,每輪匹配結(jié)束后,從匹配結(jié)果中取最大的匹配成功的匹配字段,從詞典中將匹配到的最長匹配字符串切分出來,然后繼續(xù)掃描,重復(fù)上述操作,如表2所示。
這種分詞算法的主要優(yōu)點是可以根據(jù)需求對字典進行修改,加入更多與飛機有關(guān)的生僻術(shù)語,以達到更好的分詞效果。分詞完成后,刪除與匹配無關(guān)的停用詞元,以提高匹配效率?,F(xiàn)存停用詞表很多,但都不是面向飛機維修,因此系統(tǒng)對基于改良的停用詞表進行刪除操作,達到了更好地精度。
2.2 故障類型與故障部位的匹配
由于飛機的故障部件、故障類型的種類數(shù)目巨大,每種類別又有多個同義詞,如果線性地匹配詞元和詞庫的近義詞,即對每一個詞元都遍歷一次詞庫來查找同義詞,則所需的時間代價非常大,計算機難以承受這樣的負荷。并且,故障描述是手工輸入,描述詞匯種類繁多,一個大類不一定完全包含其所有在故障描述中出現(xiàn)的同義詞。如圖1所示,對于故障部位[第1墻]:(第1墻)(1墻)(第一墻),如果故障描述中出現(xiàn)了一個新詞“一墻”也指同一部位,那么使用精確匹配將無法得到匹配結(jié)果,這條數(shù)據(jù)的屬性值就會異常缺失甚至整條數(shù)據(jù)丟失,大量的數(shù)據(jù)丟失會導(dǎo)致系統(tǒng)性能降低;但使用模糊匹配則能將“一墻”與(第一墻)匹配上,最終都能通過指針指向大類[第1墻],成功提取出正確的故障類型。因此,系統(tǒng)設(shè)計了一個檢索數(shù)據(jù)結(jié)構(gòu)和快速近似匹配的算法——局部敏感哈希(LSH,LocalitySensitive Hashing)函數(shù)。
局部敏感哈希[6]主要運用于高維海量數(shù)據(jù)的快速近似查找,即比較數(shù)據(jù)點之間的距離或者是相似度。其主要思想是,如果高維空間的兩點距離很近,那么設(shè)計一種哈希函數(shù)對這兩點進行哈希值計算,使得它們的哈希值有很大的概率是一樣的;如果兩點之間的距離較遠,那么它們哈希值相同的概率會很小。當同義詞詞庫中不存在某條故障描述的故障類型或故障部位名時,也能通過哈希函數(shù)的計算,將它們以高概率映射到與它們意思相近的詞所在的哈希桶中。不同于樹形結(jié)構(gòu)的搜索方法可以得到精確的結(jié)果,LSH算法所得到的是一個近似的結(jié)果,在同義詞匹配中,并不需要非常高的精確度,即使得到近似解,其近似程度幾乎和精準解一致[7]。同時,哈希表是各種存取、查找結(jié)構(gòu)中速度最快的一種,LSH利用了哈希表內(nèi)的沖突加快了匹配速度,并且可以通過對桶內(nèi)的屬性建立索引進一步加快匹配速度,即使在數(shù)據(jù)量很大的情況下,LSH也能保持理想的匹配時間。因此,LSH匹配技術(shù)是目前最適合該項目的技術(shù)。
LSH是向量空間模型[8]下的算法,系統(tǒng)使用信息摘要算法[9](MD5,Message-digest Algorithm 5),先將需要匹配的詞元和類名、同義詞進行編碼,轉(zhuǎn)換為可以處理的向量,將每個詞語編碼成相同長度的獨一無二的指紋(fingerprint),這樣除了可以得到唯一的編碼,還同時對數(shù)據(jù)進行了加密處理,提高了保密性要求。
編碼之后,將同義詞庫中的每個詞通過哈希函數(shù)計算到不同的哈希桶中,每個桶都附加一個指針指向該詞對應(yīng)的大類,如圖2所示,完成哈希表的初始化。再將一條故障描述的所有指紋使用同樣的哈希函數(shù)映射到該哈希表中,最后指紋指向的大類就是這條故障描述的故障類型和故障部位,結(jié)合原始故障記錄的部分屬性,按照對應(yīng)屬性存入新的故障信息表中,這樣便完成了歷史數(shù)據(jù)的導(dǎo)入。
2.3 基于深度學(xué)習(xí)的智能故障診斷系統(tǒng)
當一架飛機進入維修廠進行檢修時,需要經(jīng)過一系列復(fù)雜的過程(如除漆、無損檢測、整體排查等)以及專業(yè)的判斷,才能診斷出故障及故障區(qū)域,這十分消耗時間與人力,成為維修工廠無法提高生產(chǎn)效率的一大障礙。基于深度學(xué)習(xí)[10-12]的智能故障診斷與定位系統(tǒng),能大大提高工廠的效率與故障排查的準確性。
利用深度置信網(wǎng)絡(luò)進行粗粒度的故障部位預(yù)測的模型訓(xùn)練過程如圖3所示,該過程大體可以分為兩個部分。
1)逐層對RBM進行無監(jiān)督的訓(xùn)練。首先將飛機自身的屬性如飛機編號、飛機類型、作戰(zhàn)區(qū)域、飛行里程和飛行高度等作為輸入?yún)?shù)輸入到可視層,訓(xùn)練第一個RBM的參數(shù)矩陣WO。
2)運用反向傳播算法微調(diào)網(wǎng)絡(luò),使網(wǎng)絡(luò)結(jié)構(gòu)達到最優(yōu),優(yōu)化深度置信網(wǎng)絡(luò)的故障識別能力。在最高層,DBN可以利用帶標簽數(shù)據(jù)通過BP算法對判別性能做調(diào)整。DBN的BP算法只需要對權(quán)值參數(shù)空間進行一個局部的搜索,這比前向神經(jīng)網(wǎng)絡(luò)訓(xùn)練更快,而且收斂的時間也更少,詳細的訓(xùn)練過程如圖4所示。
在訓(xùn)練過程中,首先將可視向量值映射至隱層單元;然后由隱層單元重建可視單元;這些新可視單元再次映射至隱層單元,因此獲取了新的隱層單元。以上后退和前進的步驟就是Gibbs采樣[13],而隱層激活單元和可視層輸入之間的相關(guān)性差別就作為權(quán)值更新的主要依據(jù)。具體步驟如下。
步驟1:將數(shù)據(jù)向量x和第一層隱藏層hl作為一個RBM,訓(xùn)練出這個RBM的參數(shù)(連接x和hl的權(quán)重,x和hl各個節(jié)點的偏置等),使其達到穩(wěn)定狀態(tài)。
步驟2:固定第1個RBM的參數(shù),將hl視作可見向量,將h2視作隱藏向量,訓(xùn)練第二個RBM,得到其參數(shù),直至穩(wěn)定狀態(tài)。
步驟3:重復(fù)執(zhí)行步驟2,直至最后一個RBM。
步驟4:在DBN的最后一層設(shè)置BP網(wǎng)絡(luò),接收RBM的輸出特征向量作為它的輸入特征向量,有監(jiān)督地訓(xùn)練實體關(guān)系分類器。
當該故障部位的預(yù)測模型訓(xùn)練成功后,可利用飛機的一系列自身屬性預(yù)測故障部位。在輸入飛機屬性參數(shù)后,模型可以預(yù)測該飛機可能發(fā)生故障的部位,并將結(jié)果及時報告給機務(wù)人員,機務(wù)人員可以重點排查這些預(yù)測的部位,提高排故檢故的效率。
對于細粒度故障類型的診斷,其方式與粗粒度故障部位的預(yù)測基本相同,不同的是輸入的參數(shù)不再是飛機自身的屬性而是故障的表象,如裂紋、老化、磨損等,通過相同的方式重新訓(xùn)練深度置信網(wǎng)絡(luò),得到故障類型診斷的模型,從而實現(xiàn)智能的故障診斷與定位。
3 總結(jié)
基于深度學(xué)習(xí)的智能故障診斷系統(tǒng)仍有提高的空間,如BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練需要一個有標簽的樣本集、合適的隱藏層數(shù)避免學(xué)習(xí)過程較慢、適當?shù)膮?shù)不致于學(xué)習(xí)收斂于局部最優(yōu)解等,但其在一定程度上解決了航空裝備修理中故障診斷分析困難、診斷經(jīng)驗無法管理、診斷知識共享不易的問題,在航空修理廠的故障識別、定位、診斷,人員的培訓(xùn)、航空修理業(yè)務(wù)流程重組和優(yōu)化中都具有較大的推廣價值。
參考文獻
[l]唐民鋒.美國軍用航空裝備維修保障體制[J].航空維修與工程,2016,298(4):20-23.
[2]馬乃蒼,賈向軍,祝華遠.航空裝備維修思想的發(fā)展探討[J].航空科學(xué)技術(shù),2003(6):27-29.
[3]劉巖.基于MMSEG算法的中文分詞器的設(shè)計與實現(xiàn)[D].湖南大學(xué),2016.
[4]章登義,胡思,徐愛萍.一種基于雙向LSTM的聯(lián)合學(xué)習(xí)的中文分詞方法[J/OL].計算機應(yīng)用研究,2019(10):1-7[201808-03].
[5]官琴,鄧三鴻,王昊.中文文本聚類常用停用詞表對比研究[J].數(shù)據(jù)分析與知識發(fā)現(xiàn),2017(3):72-80.
[6]吳瑾,彭延國,崔江濤.基于局部敏感哈希的安全相似性查詢方案[J].密碼學(xué)報,2018(2):197-205.
[7] HAR-PELED S,INDYKP,MOTWANI R.Approximate nearestneighbor: Towards removing the curse ofdimensionality[J].Theory of Computmg,2012, 8:321-350.[DOI: 10.4086/toc.2012.v008a014]。
[8]唐果.基于語義領(lǐng)域向量空間模型的文本相似度計算[D].云南大學(xué),2013.
[9]林平.密碼學(xué)中信息摘要算法MD5的改進[J].福建工程學(xué)院學(xué)報,2011(6):602-603.
[10]段艷杰,呂宜生,張杰,趙學(xué)亮,王飛躍.深度學(xué)習(xí)在控制領(lǐng)域的研究現(xiàn)狀與展望[J].自動化學(xué)報,2016(5):643-654.
[11]王俊,鄭彤,雷鵬,魏少明.深度學(xué)習(xí)在雷達中的研究綜述[J/OL].雷達學(xué)報,2018 (4):395-411.
[12]宋征宇.運載火箭遠程故障診斷技術(shù)綜述[J].宇航學(xué)報,2016,37(2):135-144.
[13] Denis Marcotte,Denis Allard.Gibbs sampling on large lattice withGMRF[J].Computers and Geosclences,2018.