張振海,張湘婷
(蘭州交通大學(xué)自動(dòng)化與電氣工程學(xué)院,蘭州 730070)
鐵路信號(hào)設(shè)備在保障列車運(yùn)行安全、提高鐵路運(yùn)輸效率等方面有著關(guān)鍵性作用。隨著我國(guó)鐵路快速發(fā)展,列車運(yùn)行速度的提升,鐵路信號(hào)設(shè)備的重要性日益凸顯,使電務(wù)段對(duì)信號(hào)設(shè)備的維修管理變得更加嚴(yán)格。傳統(tǒng)的鐵路信號(hào)設(shè)備故障診斷主要靠人工經(jīng)驗(yàn),且設(shè)備故障原因有明顯的隨機(jī)性和模糊性,因此,對(duì)人員專業(yè)水平要求高[1]。與此同時(shí),鐵路信號(hào)領(lǐng)域的歷史故障維修成功案例大多以文本形式儲(chǔ)存,使得許多知識(shí)和經(jīng)驗(yàn)難以被充分利用。針對(duì)這一現(xiàn)狀,如何合理的運(yùn)用這些文本故障信息輔助故障診斷,是一個(gè)亟待解決的問(wèn)題。
故障診斷是利用現(xiàn)代檢測(cè)系統(tǒng)確定是否有故障發(fā)生,并確定故障發(fā)生的位置和類型等,故障診斷方式大致分為基于定性分析的故障診斷方法,基于信號(hào)處理的故障診斷方法,基于人工智能的故障診斷方法[2]。王蘭勇[3]根據(jù)鐵路信號(hào)設(shè)備發(fā)生故障現(xiàn)象、原因和處理方案設(shè)計(jì)專家系統(tǒng);LEE等[4]運(yùn)用聲學(xué)分析法對(duì)道岔系統(tǒng)進(jìn)行故障探測(cè)分析;張娟[5]采用神經(jīng)網(wǎng)絡(luò)BP算法解決鐵路信號(hào)設(shè)備多故障處理順序問(wèn)題。隨著人工智能技術(shù)的成熟,通過(guò)人工智能方法將故障文本數(shù)據(jù)作為數(shù)據(jù)源的故障診斷方式,是當(dāng)前研究的熱點(diǎn)之一。上官偉等[2]針對(duì)車載設(shè)備的故障日志,引入改進(jìn)主題模型(Labeled-LDA),通過(guò)支持向量機(jī)算法進(jìn)行故障診斷;盛春東[6]根據(jù)案例推理建立鐵路信號(hào)設(shè)備維修決策模型;ZHAO等[7]結(jié)合PLSA模型和貝葉斯網(wǎng)絡(luò)的方法對(duì)高速鐵路車載設(shè)備進(jìn)行故障診斷。以上這些學(xué)者并未深入挖掘出故障信息內(nèi)的隱藏規(guī)律,同時(shí)缺少考慮鐵路領(lǐng)域先驗(yàn)知識(shí)的影響。關(guān)聯(lián)規(guī)則是數(shù)據(jù)挖掘的重要領(lǐng)域,通過(guò)算法在海量數(shù)據(jù)中挖掘出潛在未知的規(guī)律,建立兩種或兩種以上事務(wù)數(shù)據(jù)之間的聯(lián)系。朱興動(dòng)等[8]將關(guān)聯(lián)規(guī)則運(yùn)用在飛機(jī)維修記錄上,查找出飛機(jī)故障與其他因素的聯(lián)系;張宏[9]提出基于Apriori算法的汽車運(yùn)行數(shù)據(jù)采集設(shè)備故障診斷方法。
為此采用基于關(guān)聯(lián)規(guī)則的故障診斷方法,首先采用TF-IDF算法[10-11],對(duì)以往的鐵路信號(hào)設(shè)備故障案例進(jìn)行故障特征提取。由于故障特征詞可能出現(xiàn)的文本不同,相互之間隱藏某些關(guān)聯(lián)規(guī)律。需建立基于關(guān)聯(lián)規(guī)則的故障診斷模型,進(jìn)而用改進(jìn)FP-Growth算法[12-13]進(jìn)行數(shù)據(jù)挖掘,計(jì)算項(xiàng)的權(quán)重使之表示支持度,依據(jù)頻繁1-項(xiàng)集劃分?jǐn)?shù)據(jù)庫(kù)進(jìn)行挖掘,在減少運(yùn)行時(shí)間的同時(shí)可挖掘出更具有實(shí)際意義的關(guān)聯(lián)規(guī)則,從而提供維修輔助決策,簡(jiǎn)化故障處理流程,保障列車運(yùn)行安全。
鐵路信號(hào)設(shè)備故障案例庫(kù)按照信號(hào)設(shè)備分成不同子庫(kù),為道岔故障、軌道電路故障、信號(hào)機(jī)故障、電源屏故障、控制設(shè)備故障、移頻發(fā)送設(shè)備故障和移頻接收設(shè)備故障等[6]。為更好地描述故障設(shè)備信息潛在的關(guān)聯(lián)規(guī)則,以道岔故障為例,部分故障維修記錄如表1所示。
表1 故障維修記錄
由表1可知,鐵路信號(hào)設(shè)備故障維修案例總結(jié)主要是以文本形式記錄,存在故障數(shù)據(jù)不規(guī)范性,如“2013年3月21日18時(shí)45分,29/30號(hào)道岔瞬間斷表示”,其中,與道岔故障有關(guān)的信息只有“道岔瞬間斷表示”,無(wú)關(guān)信息的冗余會(huì)造成有實(shí)際意義的規(guī)律信息無(wú)法挖掘出來(lái),故將鐵路信號(hào)設(shè)備故障診斷主要分為兩步:故障特征提取和故障診斷。鐵路信號(hào)設(shè)備故障診斷首先采用TF-IDF算法處理所采集的故障數(shù)據(jù),提取關(guān)鍵故障特征詞,使其具有區(qū)分文本的能力。再用改進(jìn)的FP-Growth算法,挖掘鐵路信號(hào)設(shè)備故障特征數(shù)據(jù)庫(kù),得到關(guān)聯(lián)規(guī)則,結(jié)合專家相關(guān)經(jīng)驗(yàn)對(duì)其故障診斷,整體流程如圖1所示。
圖1 故障診斷整體流程
鐵路信號(hào)設(shè)備維修成功案例是以故障文本數(shù)據(jù)為基礎(chǔ),且故障文本數(shù)據(jù)是非結(jié)構(gòu)化數(shù)據(jù),需轉(zhuǎn)換成計(jì)算機(jī)可識(shí)別和處理的結(jié)構(gòu)化數(shù)據(jù),而且有效的文本特征提取可降低數(shù)據(jù)冗余度和維度,在故障診斷中占有重要的位置。故障特征項(xiàng)須具有以下特點(diǎn):①可以真實(shí)反映文本內(nèi)容;②具有良好的區(qū)分其他文本的能力;③特征項(xiàng)數(shù)量不能過(guò)多,否則會(huì)導(dǎo)致算法復(fù)雜度太高;④特征值之間需要有區(qū)分度[14]。主要步驟如下。
(1)使用NLPIR-ICTCLAS系統(tǒng)將收集的歷史故障文本信息進(jìn)行分詞,并且刪除無(wú)關(guān)詞,轉(zhuǎn)化成以詞語(yǔ)組成的文本數(shù)據(jù)。
(2)將文本數(shù)據(jù)用VSM模型表示,采用TF-IDF算法計(jì)算每個(gè)詞語(yǔ)在文本的權(quán)重,刪除權(quán)重小的詞語(yǔ)。
(3)最終建立故障診斷模型。
NLPIR-ICTCLAS是由中科院張華平團(tuán)隊(duì)開(kāi)發(fā)的一款漢語(yǔ)分詞系統(tǒng),結(jié)合鐵路信號(hào)專業(yè)詞庫(kù)和停用詞,對(duì)故障文本數(shù)據(jù)進(jìn)行預(yù)處理,去除如“故障發(fā)生地址”和“時(shí)間”等無(wú)關(guān)詞語(yǔ),保留關(guān)鍵詞。
分詞后的結(jié)果,依舊是非結(jié)構(gòu)化的數(shù)據(jù),需將文本轉(zhuǎn)化為結(jié)構(gòu)化數(shù)據(jù),目前常用的文本表示方法有:布爾模型(Boolean Model)、概率模型(Probabilistic Model)、向量空間模型(Vector Space Model)[15-16]。目前使用最廣泛的是向量空間模型VSM。
向量空間模型VSM旨在把文本內(nèi)容轉(zhuǎn)換特征詞-特征權(quán)重的向量并保存。把特征項(xiàng)t1,t2,…,tn看作是一個(gè)n維坐標(biāo)系,權(quán)值w1,w2…,wn表示其對(duì)應(yīng)的坐標(biāo)值,文本di映射為該向量坐標(biāo)空間中的一個(gè)特征向量V(di)=(t1,wm1;t2,wm2;…;tn,wmn),文本總體的VSM表示見(jiàn)表2。
表2 文本的向量空間模型
TF-IDF算法是一種經(jīng)典的基于向量空間模型計(jì)算特征項(xiàng)重要程度的方法,通過(guò)考慮詞語(yǔ)在文本中出現(xiàn)的頻率和在文本集中的分布,計(jì)算詞語(yǔ)權(quán)重[10],其中,TF為詞頻,IDF為逆向文檔頻率。核心思想:假設(shè)某個(gè)詞在某條文本中出現(xiàn)頻率較高(TF較高),但在剩余文本中頻率低(IDF較高),則該詞有很好地類別區(qū)分能力。TF-IDF方法計(jì)算公式如下
Wt,d=tft,d×idft,d
(1)
式中,Wt,d為特征值t在文本d中的權(quán)重;tft,d為詞頻;idft,d為逆文檔頻率。
tft,d詞頻為特征值t在文本d出現(xiàn)的次數(shù)與文本d中所有特征值之比,計(jì)算公式如下
(2)
式中,nt,d為特征值t在文本d中出現(xiàn)次數(shù);∑knt,d為文本d中所有特征值的個(gè)數(shù)。
逆文檔頻率idft,d是文本數(shù)量與特征值t在文本集中出現(xiàn)的次數(shù)比值,計(jì)算公式如下
(3)
式中,N為文本數(shù)據(jù)庫(kù)中文本總數(shù);Nt,d為文本含有特征值t的文本數(shù)量。如果某詞不在樣本中,會(huì)導(dǎo)致分母為0,因此,分母加1是為避免該情況。
將NLPIR系統(tǒng)處理后文件加入TF-IDF算法,計(jì)算權(quán)重Wt,d。
由于鐵路信號(hào)設(shè)備種類繁多,遇到的故障多種多樣。通過(guò)對(duì)鐵路信號(hào)故障數(shù)據(jù)總結(jié),結(jié)合鐵路信號(hào)專家的經(jīng)驗(yàn)知識(shí),建立基于關(guān)聯(lián)規(guī)則故障診斷模型,如圖2所示。故障診斷模型分為3層:故障特征層、故障類型層(一級(jí)故障層)和故障原因?qū)?二級(jí)故障層)[17]。故障特征層是故障文本進(jìn)行預(yù)處理后得到的故障特征,故障類型層是根據(jù)第1節(jié)鐵路信號(hào)設(shè)備分類結(jié)構(gòu)細(xì)分得到的設(shè)備名稱如“轉(zhuǎn)轍機(jī)相關(guān)故障”“整流匣相關(guān)故障”,故障原因?qū)邮窍鄬?duì)于類型層更加具體的故障部位如“繼電器”“補(bǔ)償電容”等。本次研究認(rèn)為導(dǎo)致故障現(xiàn)象發(fā)生的原因是單一的,因此,根據(jù)故障傳播原理,對(duì)故障診斷模型層進(jìn)行以下說(shuō)明。
圖2 故障診斷模型
(1)二級(jí)故障是一級(jí)故障出現(xiàn)的原因。
(2)一級(jí)故障和二級(jí)故障均是故障特征出現(xiàn)的原因。
(3)一級(jí)故障之間相互獨(dú)立,每次只能推導(dǎo)出1個(gè)一級(jí)故障。
(4)二級(jí)故障之間相互獨(dú)立,每次只能推導(dǎo)出1個(gè)二級(jí)故障。
根據(jù)故障診斷模型,對(duì)各屬性進(jìn)行編號(hào),表1的處理結(jié)果如表3~表5所示,如表1中的維修記錄5,根據(jù)故障診斷模型可得出F7(表示時(shí)有時(shí)無(wú))→T5(整流匣相關(guān)故障)→R4(整流匣電阻內(nèi)部開(kāi)路),從中可看出,故障特征層、故障原因?qū)优c故障類型層3層之中具有因果關(guān)系。
表3 故障類型
表4 故障特征
表5 故障原因
關(guān)聯(lián)分析是發(fā)現(xiàn)隱含于大數(shù)據(jù)中具有實(shí)際意義的規(guī)律信息,描述為關(guān)聯(lián)規(guī)則或頻繁項(xiàng)集[18]。采用改進(jìn)FP-Growth算法挖掘出隱含在故障特征的關(guān)聯(lián)規(guī)律,得到故障特征、類型和原因之間關(guān)聯(lián)關(guān)系,作為鐵路信號(hào)設(shè)備故障診斷的重要依據(jù)。
FP-Growth算法優(yōu)勢(shì)是只需遍歷2次事務(wù)數(shù)據(jù)庫(kù),運(yùn)行效率高。首次遍歷數(shù)據(jù)庫(kù)D,目的是刪掉小于最小支持度的項(xiàng),建立頻繁項(xiàng)集,第二次遍歷用于建立FP-Tree,具體步驟如下。
(1) 遍歷事務(wù)數(shù)據(jù)庫(kù),計(jì)算每項(xiàng)支持度并除去多余項(xiàng),獲得頻繁1項(xiàng)集L,按照支持度降序排列得到有序頻繁1項(xiàng)集P,然后對(duì)事務(wù)數(shù)據(jù)庫(kù)D重新調(diào)整。
(2) 創(chuàng)建根節(jié)點(diǎn)root和頻繁項(xiàng)目頭表,再次遍歷事務(wù)數(shù)據(jù)庫(kù)D,根據(jù)頻繁1-項(xiàng)集P調(diào)整每條事務(wù),掃描每條事務(wù)建立分支創(chuàng)建FP-Tree。
(3) 根據(jù)FP-Tree找到單項(xiàng)的條件模式基,遞歸挖掘條件FP-Tree,最終依據(jù)頻繁項(xiàng)集從中得出關(guān)聯(lián)規(guī)則。
3.2.1 支持度計(jì)算
傳統(tǒng)FP-Growth算法中每個(gè)項(xiàng)的支持度等于項(xiàng)在事務(wù)數(shù)據(jù)庫(kù)中出現(xiàn)的頻率,但忽視每個(gè)項(xiàng)在事務(wù)數(shù)據(jù)庫(kù)D的重要程度,以至于挖掘出大量無(wú)用的關(guān)聯(lián)規(guī)則[19-20],因此,提出基于權(quán)重的支持度計(jì)算方法。為體現(xiàn)項(xiàng)對(duì)事務(wù)的重要性,同時(shí)保留發(fā)生頻次低但一旦發(fā)生會(huì)產(chǎn)生重大事故的故障特征。人為對(duì)每個(gè)故障特征進(jìn)行危險(xiǎn)性評(píng)估,分為輕度危險(xiǎn)、中度危險(xiǎn)、重度危險(xiǎn)和極重度危險(xiǎn),將評(píng)定為重度危險(xiǎn)和極重度危險(xiǎn)項(xiàng),自動(dòng)保留且支持度設(shè)為0.3,其余項(xiàng)按照所提出的基于權(quán)重的支持度計(jì)算,計(jì)算方法如下。
設(shè)I={I1,I2,…In}為事務(wù)數(shù)據(jù)庫(kù)D的項(xiàng)集,n為表示項(xiàng)的個(gè)數(shù),設(shè)置項(xiàng)Im在事務(wù)數(shù)據(jù)庫(kù)中的權(quán)重為w(Im),表示項(xiàng)Im在數(shù)據(jù)庫(kù)出現(xiàn)的次數(shù)與數(shù)據(jù)庫(kù)中總體事務(wù)數(shù)量之比,計(jì)算公式為
w(Im)=l/k
(4)
式中,l為項(xiàng)Im在數(shù)據(jù)庫(kù)中出現(xiàn)頻率;k為數(shù)據(jù)庫(kù)中事務(wù)總數(shù)。
事務(wù)Ti為事務(wù)數(shù)據(jù)庫(kù)中第i條數(shù)據(jù),該事務(wù)的權(quán)重是事務(wù)本身含有全部項(xiàng)的權(quán)重的平均值,記為wt(Ti),即對(duì)第i條事務(wù)的所有項(xiàng)的項(xiàng)權(quán)重w(Im)求取平均值,其中,m=1,2,…,n。計(jì)算公式為
(5)
項(xiàng)Im的支持度是含有該項(xiàng)的全部事務(wù)權(quán)重和數(shù)據(jù)庫(kù)中全部事務(wù)權(quán)重之比,即sup(Im),計(jì)算公式為
(6)
式中,f為包含項(xiàng)Im的事務(wù)個(gè)數(shù);wt(Tx)是包含項(xiàng)Im的事務(wù)權(quán)重;k為事務(wù)數(shù)據(jù)庫(kù)中所有事務(wù)數(shù)量;wt(Ty)為事物數(shù)據(jù)庫(kù)中每條事務(wù)的權(quán)重。
3.2.2 關(guān)聯(lián)規(guī)則挖掘
傳統(tǒng)FP-Growth算法遍歷數(shù)據(jù)庫(kù)時(shí),需建立FP-Tree實(shí)現(xiàn)頻繁項(xiàng)集挖掘,當(dāng)事務(wù)數(shù)據(jù)庫(kù)過(guò)于龐大時(shí),建立的FP-Tree占用內(nèi)存大,導(dǎo)致運(yùn)行速率低,降低挖掘效率[21-22]。另一個(gè)改進(jìn)地方是根據(jù)頻繁1-項(xiàng)集劃分?jǐn)?shù)據(jù)庫(kù)的思想挖掘數(shù)據(jù),構(gòu)建各項(xiàng)的數(shù)據(jù)庫(kù)子庫(kù)并直接構(gòu)造每項(xiàng)的條件FP-Tree,在減小內(nèi)存占用,同時(shí)提升挖掘效率。具體算法描述如下。
(1)遍歷事物數(shù)據(jù)庫(kù)D,按照3.2.1節(jié)的支持度計(jì)算得到每項(xiàng)支持度確保項(xiàng)的重要性,去除小于最小支持度的項(xiàng),降序排序得到頻繁1項(xiàng)集L,設(shè)L={T1,T2,…,Tn},調(diào)整事務(wù)數(shù)據(jù)庫(kù)按照頻繁1-項(xiàng)集排序得到有序的事務(wù)數(shù)據(jù)庫(kù)D′。
(2)再次遍歷事務(wù)數(shù)據(jù)庫(kù)D′,找到包含項(xiàng)Tm所有的事務(wù),刪除小于項(xiàng)Tm支持度的其他項(xiàng),得到包含項(xiàng)Tm的數(shù)據(jù)子庫(kù)DT。
(3)采用FP-Growth算法對(duì)項(xiàng)Tm的數(shù)據(jù)子庫(kù)進(jìn)行關(guān)聯(lián)規(guī)則挖掘,具體步驟如下。
①根據(jù)包含項(xiàng)Tm的數(shù)據(jù)子庫(kù)DT建立FP-Tree,創(chuàng)建項(xiàng)頭表N。其中,項(xiàng)Tm排在最后,當(dāng)已有分枝存在,判斷新來(lái)節(jié)點(diǎn)是否屬于該分枝節(jié)點(diǎn),屬于重合計(jì)數(shù)加1,否則重新建立分枝,最終得到數(shù)據(jù)子庫(kù)DT的FP-Tree。
②只挖掘項(xiàng)表頭N最后一項(xiàng)的信息,即只挖掘包含項(xiàng)Tm的頻繁項(xiàng)集,找到項(xiàng)Tm的條件模式基,建立條件FP-Tree,遞歸調(diào)用樹(shù)結(jié)構(gòu),得到包含項(xiàng)Tm的數(shù)據(jù)子庫(kù)DT頻繁項(xiàng)集UT。
③重復(fù)步驟①②,把頻繁1-項(xiàng)集L內(nèi)所有項(xiàng)的頻繁項(xiàng)集UT全部挖掘出來(lái),取并集得到頻繁項(xiàng)集U,為事務(wù)數(shù)據(jù)庫(kù)D的所有頻繁項(xiàng)集。
通過(guò)對(duì)鐵路信號(hào)設(shè)備故障特征進(jìn)行挖掘得到關(guān)聯(lián)規(guī)則,保存到歷史故障文本數(shù)據(jù)的知識(shí)庫(kù)KB,從知識(shí)庫(kù)中提取規(guī)則進(jìn)行故障診斷,步驟如下。
(1)將信號(hào)設(shè)備故障現(xiàn)象進(jìn)行故障特征提取,再與知識(shí)庫(kù)KB中的已有規(guī)則進(jìn)行匹配,如果匹配成功,直接輸出診斷結(jié)果。
(2)若只有部分匹配,將其放入知識(shí)集KS中,選擇包含此故障特征置信度大的規(guī)則,得出最優(yōu)解。
(3)若KS為空,則詢問(wèn)用戶是否加入新規(guī)則,若不加入,系統(tǒng)失敗進(jìn)入人工診斷,若加入,即此時(shí)用戶添加了新的知識(shí),則根據(jù)新的知識(shí)庫(kù),重新進(jìn)行診斷,流程如圖3所示。
圖3 基于關(guān)聯(lián)規(guī)則的故障診斷流程
實(shí)驗(yàn)使用的硬件為Intel(R)酷睿I5-42210U,2.70 GHz處理器,8 GB內(nèi)存,操作系統(tǒng)是Windows 7旗艦版64位;軟件為eclipse3.4-jee-ganymede開(kāi)發(fā)運(yùn)行平臺(tái),JDK7.0版本。
本實(shí)驗(yàn)以2013年~2018年的某鐵路局電務(wù)段的鐵路信號(hào)設(shè)備故障案例庫(kù)為數(shù)據(jù)源,包括道岔、信號(hào)機(jī)、軌道電路等。
圖4(a)表示在數(shù)據(jù)庫(kù)中,隨機(jī)選擇1 000~6 000條事務(wù)對(duì)其挖掘,分別計(jì)算每個(gè)故障案例子庫(kù)中項(xiàng)的支持度,根據(jù)現(xiàn)場(chǎng)經(jīng)驗(yàn),設(shè)置最小支持度為0.02。由圖4(a)可知,事務(wù)數(shù)據(jù)庫(kù)越龐大優(yōu)化算法的優(yōu)勢(shì)越明顯,因?yàn)閭鹘y(tǒng)算法是針對(duì)數(shù)據(jù)庫(kù)構(gòu)造整體FP-Tree,數(shù)據(jù)越多FP-Tree所占內(nèi)存越大挖掘效率也越低。
圖4 實(shí)驗(yàn)結(jié)果比較
圖4(b)表示隨機(jī)從數(shù)據(jù)庫(kù)中選取5 000條數(shù)據(jù)進(jìn)行實(shí)驗(yàn),設(shè)置不同最小支持度min_sup,比較兩種算法的運(yùn)行時(shí)間。由圖4(b)可知,在相同規(guī)模下的數(shù)據(jù)庫(kù)和不同最小支持度的條件下,改進(jìn)算法要比傳統(tǒng)算法的運(yùn)行時(shí)間要短,并且最小支持度設(shè)置越小改進(jìn)算法的優(yōu)勢(shì)越明顯。
從鐵路信號(hào)設(shè)備故障案例庫(kù)中,隨機(jī)選取其中10 000條數(shù)據(jù)進(jìn)行實(shí)驗(yàn),其中,75%作為訓(xùn)練集,25%作為測(cè)試集,分別計(jì)算每個(gè)故障案例子庫(kù)中項(xiàng)的支持度,設(shè)置最小支持度為0.02,置信度為0.6,得到的關(guān)聯(lián)規(guī)則有3578條,其中符合最小置信度和故障診斷模型的關(guān)聯(lián)規(guī)則有2281條。因篇幅有限,僅列出道岔故障相關(guān)的10條具有代表意義的關(guān)聯(lián)規(guī)則,如表6所示。
表6 關(guān)聯(lián)規(guī)則
根據(jù)對(duì)鐵路信號(hào)設(shè)備故障挖掘關(guān)聯(lián)規(guī)則再結(jié)合專家經(jīng)驗(yàn),根據(jù)診斷結(jié)果選擇維修方案。例如,根據(jù)規(guī)則9中故障特征詞道岔無(wú)表示與道岔扳不到位可推出是轉(zhuǎn)轍機(jī)相關(guān)故障,即從故障特征層推到故障類型層,如果推理正確,再根據(jù)規(guī)則8中轉(zhuǎn)轍機(jī)相關(guān)故障推出轉(zhuǎn)轍機(jī)減速器抱死,即從故障類型層推到故障原因?qū)?,如果原因正確,推出解決方案更換減速器。如果推理不正確換一條規(guī)則重新推理,直到推出最終結(jié)果。
為驗(yàn)證本文算法的有效性與實(shí)用性,同時(shí)避免重要故障原因的遺漏,將P@N(N=5)作為評(píng)價(jià)指標(biāo)[23],將最可能出現(xiàn)的5條原因作為輸出結(jié)構(gòu),具體公式如下
(7)
式中,i為第i類故障;Ci為第i類故障的個(gè)數(shù);I(j)為以第i類的故障數(shù)為基礎(chǔ),輸入測(cè)試集的故障現(xiàn)象通過(guò)故障診斷算法輸出的5個(gè)故障原因是否包括實(shí)際的故障原因,如果包括I(j)取1,反之取0,若實(shí)際故障原因單一,且推理出的原因包括實(shí)際原因,則P@N=1。
選擇本文算法、文獻(xiàn)[6]基于案例推理的故障診斷(CBR算法)、文獻(xiàn)[7]基于PLSA模型和貝葉斯網(wǎng)絡(luò)的故障診斷(BNPLSA算法),根據(jù)第1節(jié)的對(duì)鐵路信號(hào)設(shè)備分類,進(jìn)行P@N(N=5)的比較,所得結(jié)果如圖5所示。
圖5 各類故障的P@N比較
由圖5可知,本文算法的P@N均高于其他兩種算法,且平均診斷準(zhǔn)確率86.77%,比其他兩種算法分別提高10.35%和11.44%?;诎咐评淼墓收显\斷采用的VSM模型的余弦相似度和BTM模型的相似度,該方法僅考慮當(dāng)前故障現(xiàn)象與歷史案例的相似度,并未綜合考慮到故障維修文本數(shù)據(jù)的潛在規(guī)律?;赑LSA模型和貝葉斯網(wǎng)絡(luò)的故障診斷,采用PLSA模型進(jìn)行主題分類,但PLSA模型為無(wú)監(jiān)督學(xué)習(xí),缺少考慮鐵路領(lǐng)域的先驗(yàn)知識(shí),導(dǎo)致取得的故障特征較少。因此,本文算法提取故障特征詞,通過(guò)改進(jìn)FP-Growth算法,挖掘出故障文本數(shù)據(jù)的潛在規(guī)律,最終通過(guò)故障診斷流程,能夠更加精確的推出故障原因,輔助現(xiàn)場(chǎng)維修人員快速處理故障設(shè)備。
(1)通過(guò)分析當(dāng)前鐵路信號(hào)設(shè)備維修所存在的問(wèn)題,利用大量歷史維修文本記錄,提出鐵路信號(hào)設(shè)備故障診斷流程;采取TF-IDF算法提取歷史維修記錄的故障特征詞,按照故障診斷模型進(jìn)行分類;最終通過(guò)改進(jìn)的FP-Growth算法,發(fā)現(xiàn)具有維修指導(dǎo)意義的關(guān)聯(lián)規(guī)則。
(2)實(shí)驗(yàn)證明,計(jì)算每項(xiàng)權(quán)重來(lái)確定支持度,依據(jù)頻繁1-項(xiàng)集對(duì)其進(jìn)行分塊挖掘的改進(jìn)FP-Growth算法比傳統(tǒng)FP-Growth更具有優(yōu)勢(shì)。該方法可以挖掘出鐵路信號(hào)設(shè)備中的故障特征、類型和原因之間的關(guān)聯(lián)關(guān)系,為鐵路信號(hào)設(shè)備維修提供幫助。通過(guò)對(duì)比實(shí)驗(yàn)分析,本文方法可提高故障診斷的效率,為鐵路安全運(yùn)行提供保障。
(3)由于文中最小支持度是根據(jù)現(xiàn)場(chǎng)經(jīng)驗(yàn)人為設(shè)定的,會(huì)影響頻繁項(xiàng)的數(shù)量,當(dāng)數(shù)據(jù)庫(kù)不斷擴(kuò)大時(shí),頻繁項(xiàng)數(shù)量的增多導(dǎo)致會(huì)挖掘出大量冗余的關(guān)聯(lián)規(guī)則。如何根據(jù)事務(wù)數(shù)據(jù)庫(kù)中的事務(wù)數(shù)量動(dòng)態(tài)設(shè)定最小支持度,是下一步研究的重點(diǎn)。