聶冰,郭永香,李文
(大連交通大學 軟件學院,遼寧 大連 116028)*
在工業生產領域中,電機已經成為最重要的動力來源.隨著運行時間的增加,電機發生潛在故障或異常的頻率也在逐漸增多,對設備的安全運行造成了極大的威脅.因此,利用故障診斷理論與技術及時、有效的監測電機故障是保證電機安全運行的重要手段,電機故障診斷方法研究為安全生產提供了有力的保證[1].
通用的故障診斷過程包括以下四個步驟:信息獲取、數據預處理、特征提取以及故障識別,其中故障識別是故障診斷的核心.電機精確模型建立困難,而人工神經網絡不需要精確的數學模型就能夠逼近任意非線性函數,因此在故障識別中已廣泛應用[2-5].電機故障機理多樣,且同類的故障特征也會因為運行條件的改變而改變,這就要求構建的神經網絡規模足夠龐大、能夠有效逼近復雜的非線性特性,而構建的網絡計算復雜度也隨之增加.因此,構建一個網絡結構簡單、訓練效率高、識別準確的神經網絡對電機故障診斷具有重要意義.
本文利用BP網絡進行電機故障識別.針對神經網絡模型復雜、依靠經驗選取隱節點缺乏理論指導的問題,對網絡進行了隱層優化,通過樣本對模型網絡的訓練與測試驗證了優化的故障識別模型的有效性.
BP網絡是誤差反向傳播的多層前饋神經網絡,是目前應用最廣泛的神經網絡之一[6].網絡結構需要確定輸入層、隱層和輸出層的節點數.故障識別模型自身的輸入輸出特征決定了輸入、輸出層的節點數,網絡的輸出節點由需要識別的故障特征確定,輸入節點由采集的電機振動信號、定子電流等系統特征信號確定,隱節點神經元的激勵函數采用Sigmoid轉移函數.故障識別模型如圖1所示.

圖1 電機故障識別模型
隱層的設計取決于隱層層數和節點數兩個方面,是決定網絡性能的關鍵.對于隱層層數,文獻[7]指出三層神經網絡在理論上能夠逼近任意非線性函數;對于隱層節點數,選擇過多,容易出現“過擬合”現象;選擇過少,容易出現網絡逼近能力不足.因此,隱層節點數的選擇是網絡結構確定的重點.本文根據系統模型的實際情況,利用隱層節點輸出的相關系數自動調整節點數量,確定隱層節點的最優值,解決了常規方法中隱層節點數根據經驗確定,缺乏科學性的問題[6].
構造一個隱層節點數足夠多的神經網絡,通過計算各隱節點輸出的方差和相關系數判斷網絡中是否存在冗余節點.隱節點x的輸出方差s2x由matlab函數var(On)確定,On表示n個輸入樣本隱層節點的輸出矩陣;兩個隱節點x、y輸出的相關系數rxy由matlab函數corrcoef(On)確定.
(1)優化合并條件
在網絡訓練過程中,首先設置合并時刻誤差.若對訓練樣本的輸出誤差平方和小于合成誤差,則進入優化合并階段.當兩個隱節點的相關系數|rxy|≥0.8,且兩個節點方差s2> 0.001 時,說明這兩個節點具有極強線性相關性,可以將兩個節點合并之后刪除其中的一個節點.
(2)優化合并方法[8]
設隱節點x和y的輸出序列分別為Ox、Oy.當兩個節點輸出高度相關時,Ox和Oy滿足一元回歸線性方程:Oy=aOx+b.利用最小二乘法確定參數a和b.
將一元回歸線性方程帶入輸出層任一節點i的輸入中,有:


結合經典BP神經網絡學習算法,具體的隱節點優化神經網絡算法實現如下[8]:
(1)網絡初始化 ①輸入層節點N、輸出層節點M和隱層節點L;②輸入層到隱層的權值矩陣wli=rand(.)l×i(1 ≤i≤N,1 ≤l≤L;)③ 隱層到輸出層的權值矩陣wjl=rand(.)j×l(1≤j≤M);④合并誤差ε1與終止誤差ε2;⑤初始步長k=1;
(2)正向傳播:輸入n個訓練樣本,利用Sigmoid轉移函數計算隱層、輸出層的輸出序列;
(3)反向傳播:將誤差信號從輸出層經隱層再反傳到輸入層,調整各層權值使誤差逐步減小;
(4)條件判斷:當前訓練誤差error>ε1,轉到步驟(2);若 ε1≥ error≥ ε2,轉到步驟(5);error<ε2,則訓練停止;
(5)優化參數計算:根據隱節點的輸出矩陣計算隱節點的輸出方差與相關系數;
(6)合并隱節點:若兩個隱節點滿足上述優化合并條件,則根據優化合并方法將兩個隱節點合并后,轉到步驟(2)繼續訓練.

表1 模型的訓練樣本與理想輸出
本文利用優化的電機故障識別模型檢測電機性能良好與斷條故障兩種狀態,故網絡的輸出節點為2個,分別對應兩種狀態.將采集的電機軸的徑向振動加速度進行濾波與特征提取,使用其中4個子頻段的能量比作為神經網絡的輸入,初始隱節點個數隨機設定為8個,則采用的初始故障識別模型為4-8-2結構.使用10組特征提取后的振動加速度作為訓練樣本,12組數據作為測試樣本,如表1、2所示,最大訓練步長為3 000,合并誤差 ε1=0.01,終止誤差 ε2=0.001.由于初值權值隨機選取,每次試驗的結果不盡相同.圖2是某次模型優化前后的訓練曲線,與經典BP網絡相比,優化后的網絡收斂速度更快.這次學習優化過程中,在第470、471、572、712和713步隱節點進行了合并,合并的節點輸出序列表現為高度正相關和負相關兩種形式,部分輸出序列如圖3所示.優化之后的網絡模型為4-3-2結構,經過結構優化訓練停止時的誤差為6.620 5×10-23,網絡收斂符合預定目標.

表2 模型的測試樣本

圖2 模型優化前后的學習曲線

圖3 隱節點輸出序列圖
利用表2中兩種狀態的12組測試樣本對訓練得到的優化模型進行測試.12組測試樣本中的前6組對應的是電機良好狀態,后6組對應電機斷條狀態.實際測試輸出結果如圖4所示,表明訓練后的模型對故障診斷的效果良好,能夠對電機故障準確分類.

圖4 測試樣本在不同輸出節點的輸出
本文提出了優化BP網絡的電機故障識別模型的設計方法,在網絡訓練過程中利用相關系數優化了BP神經網絡,使網絡訓練更加快速,逼近效果更好.該模型測試結果表明,所提出設計方法可行、所建立的故障識別模型有效.
[1]沈艷霞,紀志成,姜建國.電機故障診斷的人工智能方法綜述[J].微特電機,2004(2):39-42.
[2]GHATE V N,DUDUL S V.Design of optimal MLP and RBF neural network classifier for fault diagnosis of three phase induction motor[J].International Journal of Advanced Mechatronic Systems,2010,2(3):204-216.
[3]MONICA ALEXANDRU.Analysis of induction motor fault diagnosis with fuzzy neural network[J].Applied Artificial Intelligence,2003,17(2):105-133.
[4]PARMATMA DUBEY,SUJATHA C.Motor Fault Classification using Wavelet Energy and Artificial Neural Network[J].International Journal of COMADEM,2009,12(3):24-31.
[5]SUBHASIS NANDI,HAMID A,TOLIYAT,et al.Condition Monitoring and Fault Diagnosis of Electrical Motors-A Review[J].IEEE Transaction on Energy Conversion,2005,20(4):719-728.
[6]唐萬梅.BP神經網絡結構優化問題的研究[J].系統工程理論與實踐,2005,10:95-100.
[7]HECHT-NIELSEN,ROBERT.Theory of Backpropagation Neural Network[J].Neural Networks,1989(1):593-605.
[8]魏海坤.神經網絡結構設計的理論與方法[M].北京:國防工業出版社,2005:125-141.