王春梅
(國網冀北電力有限公司技能培訓中心,河北 保定 071051)
風電機組是風電場內將風能轉化為電能的重要設備,風電機組正常運行是提高風能利用率的關鍵。風電機主軸承是風電機組支撐槳葉、輪轂及及其附屬部件的關鍵部件[1]。大多數(shù)風電機組工作環(huán)境惡劣,若發(fā)生故障,會直接影響風電機組的運行。因此,快速、有效地診斷風電機組主軸承故障對提高風電機組利用率至關重要。針對上述問題,黃元維[2]采用支持向量機的故障診斷方法,根據(jù)風力發(fā)電機輸出功率預測值與實際值之間的殘差變化判斷風電機組主軸承健康狀況;盧錦玲[3]提出采用極限學習機的故障診斷方法,利用極限學習機建立故障診斷模型,通過粒子群優(yōu)化(particle swarm optimization,PSO)和交叉驗證來優(yōu)化模型參數(shù),以實現(xiàn)風電機組主軸承健康狀況的診斷;安學利[4]提出基于決策融合的風電機組故障診斷方法,先利用灰色關聯(lián)分析法進行初步診斷,隨后根據(jù)證據(jù)融合理論對不同證據(jù)進行決策信息融合,從而得出故障診斷的結果。
上述學者各自采用不同的方法,實現(xiàn)了風電機組主軸承故障診斷。支持向量機(support vector machine,SVM)無法排除其他類型的故障對風電機組主軸故障診斷所造成的干擾,極限學習機和決策融合方法均需采集大量的歷史數(shù)據(jù)來訓練模型。針對上述不足,本文提出一種基于深度置信網絡的風電機組主軸承的故障診斷方法。該方法利用深度置信網絡強大的特征分層提取能力和泛化能力,依據(jù)基于Python語言的TensorFlow深度學習框架,實現(xiàn)風電機組主軸承的故障診斷。
深度置信網絡(deep belief network,DBN)是由多個限制玻爾茲曼機(restricted boltzmann machine,RBM)逐層疊加形成深層網絡結構[5-6]。通過對數(shù)據(jù)進行深度挖掘,提取重要信息和關鍵特征。RBM包括隱含層和可見層兩層。隱含層和可見層為雙向連接。RBM結構如圖1所示。
圖1 RBM結構圖Fig.1 RBM structure diagram
假設RBM結構有i個可視節(jié)點和j個隱藏節(jié)點,若V為所有可見層神經元,H為所有隱含層神經元,hi為第j個隱含層神經元狀態(tài),vi為可視層第i個神經元狀態(tài),可視節(jié)點的偏移量v=(v1,v2,…,vi),隱藏節(jié)點的偏移量h=(h1,h2,…,hj),則給定的RBM網絡結構能量式為:
(1)
θ={wij,aj,bj}
(2)
式中:wij為可見層vi和隱含層hi之間的權重;aj和bi分別為可見層和隱含層的偏置項。
DBN是由多層RBM和單層反向傳播(back propagation,BP)神經網絡組成的深層神經網絡。層與層神經元之間存在連接,但層內神經元之間無連接。DBN采用逐層貪婪學習算法優(yōu)化神經網絡連接權重[7-8],其訓練模型步驟分為預訓練和參數(shù)優(yōu)化。
①預訓練。
深度置信網絡預訓練過程的本質是RBM網絡的訓練過程,通過貪婪學習算法逐層對RBM各層進行訓練。當上一層RBM訓練完畢,將該隱含層的輸出作為下一層RBM可見層的輸入,依次可得到每層RBM的初始參數(shù)。為加速RBM網絡的訓練速度、降低訓練過程中的震蕩,本文采用權值動量和對比散度(contrastive divergence,CD)算法相結合的參數(shù)更新公式[9]:
(3)
式中:l為RBM的數(shù)量;m(l)為第l個RBM中的附加動量;η為RBM訓練時的學習率。
②參數(shù)優(yōu)化。
BP網絡作為DBN模型的最后一層,其以RBM網絡輸出的特征向量為輸入向量。每層RBM的網絡權值雖然相對該層特征向量達到最優(yōu),但是無法保證整個DBN網絡的網絡權值達到最優(yōu),因此需要進行參數(shù)優(yōu)化。通過將反向誤差自頂向下傳播至每層RBM,微調整個DBN網絡權值,從而達到整體網絡性能最優(yōu)。反向參數(shù)優(yōu)化各層權值更新公式如下:
(4)
式中:w(t)為DBN層間的權重;m(t)為DBN層間的附加動量;η(t)為DBN層間的學習率。
本文試驗數(shù)據(jù)來自某風電場提供的歷史數(shù)據(jù)??紤]搜集數(shù)據(jù)(軸轉動頻率、外圈故障頻率、內圈故障頻率、滾動體頻率、保持架頻率)存在特征數(shù)據(jù)丟失、無標簽、特征及標簽均不全等情況[10-12],因此,需對原始數(shù)據(jù)進行“擇優(yōu)錄取”,以獲得對模型更加有效的樣本數(shù)據(jù)。主軸故障特征頻率如表1所示。
表1 主軸故障特征頻率Tab.1 Simplified table of characteristic frequency of main bearing fault Hz
DBN結構由3個RBM堆疊而成,最后一層為單層BP網絡。該DBN網絡模型的輸入即是5種特征頻率。在RBM的輸出端連接Softmax函數(shù)對故障進行多分類,根據(jù)4個神經單元概率最大值判定對應樣本的診斷結果。在網絡模型進行故障診斷前,需對模型進行預訓練和參數(shù)優(yōu)化,從而使網絡整體參數(shù)最優(yōu),否則將導致故障診斷結果不準確。DBN結構如圖2所示。
圖2 DBN結構圖Fig.2 Structure of DBN
風電機組主軸故障診斷流程如圖3所示。
圖3 主軸故障診斷流程圖Fig.3 Flowchart of main bearing fault diagnosis
根據(jù)深度置信網絡的預訓練和參數(shù)優(yōu)化過程,風電機組主軸的故障診斷網絡模型訓練步驟如下。
①采集風電機主軸的不同故障頻率信號,并對數(shù)據(jù)進行預處理[11],劃分測試集和訓練集,設置標簽并進行歸一化處理。
②確定網絡參數(shù)(包括學習率、迭代次數(shù)、隱含層數(shù)和各層節(jié)點數(shù)等)。
③將當前隱含層輸出作為下層隱含層的輸入,得到每層的權重和偏置最優(yōu)時的參數(shù)值,通過逐層訓練,從而達到局部性能最優(yōu)。
④采用BP算法反向微調參數(shù),通過反向微調,使最初的權重和偏置參數(shù)達到全局性能最優(yōu)。
⑤判斷準確率是否滿足要求,若滿足,則網絡訓練結束,否則重復步驟③和步驟④。
DBN網絡性能高低與參數(shù)選取有關。為獲得最優(yōu)參數(shù)配置,本文采用網格化搜索技術[11]來確定最優(yōu)學習率η及慣量參數(shù)m。其中,m共取10個值;學習率α=[1×10-2,5×10-3,1×10-3,5×10-4,1×10-4,5×10-5,1×10-5]。不同參數(shù)配置下的平均準確率如圖4所示。
圖4 平均準確率示意圖Fig.4 Average accuracy diagram
由圖4可知,不同的參數(shù)配置對算法性能有較大的影響。根據(jù)仿真結果可知,當學習率η=1×10-5、慣量參數(shù)m=0.3時,平均測試準確率為86.18%,DBN網絡性能達到最優(yōu)。因此,選擇η=1×10-5、m=0.3。
由于Tensorflow學習框架自帶的Tensorboard工具能夠對訓練過程、參數(shù)和結果等可視化,有助于理解神經網絡模型中數(shù)據(jù)流動機理及優(yōu)化策略,故采用基于Python語言的Tensorflow框架來實現(xiàn)風電機組主軸的故障診斷。
DBN算法預測結果與實際結果對比如圖5所示。由圖5可知,在不同的訓練集下,訓練樣本大小對故障診斷結果影響不大,幾乎所有預測值與實際值重合。因此,將DBN算法用于風電機組主軸故障診斷具有良好的診斷效果。
圖5 預測值與實際值對比圖Fig.5 Comparison between the predicted value and the actual value
為與傳統(tǒng)故障診斷方法進行對比,在訓練樣本和測試樣本相同的情況下,采用人工神經網絡(artificial neural network,ANN)和SVM分別進行對比試驗。ANN采取5-9-4的網絡結構,即隱藏層包含9個神經元,學習率為0.08,迭代次數(shù)為2 000次。SVM選取徑向基核函數(shù),懲罰系數(shù)為2 048,核函數(shù)參數(shù)為0.03。在測試集和訓練集分別占樣本總數(shù)不同比例時,3種算法平均準確率對比結果如表2所示。
表2 準確率對比結果Tab.2 Comparison of the accuracy
由表2可知:DBN網絡的平均準確率明顯高于ANN和SVM;隨著訓練樣本數(shù)增加,平均測試準確率隨之升高。
本文提出了一種基于深度置信網絡的風電機組主軸承的故障診斷方法。其利用深度置信網絡強大的信息提取特征表達能力和整體網絡微調機制,實現(xiàn)高精度的風電機組主軸承的故障診斷。通過對比試驗分析發(fā)現(xiàn),深度置信網絡相較傳統(tǒng)故障診斷方法具有以下優(yōu)點。
①擺脫了對大量故障信號處理技術與診斷經驗的依賴,能夠實現(xiàn)自適應提取故障特征和智能診斷設備健康狀態(tài)。
②對時域信號無周期性要求,通用性和適用性強。
③具有高維、非線性數(shù)據(jù)的能力,可有效避免維數(shù)災害和診斷能力等問題。
參考文獻:
[1] 唐貴基,龐彬.ITT變換在風電機組滾動軸承故障診斷中的應用[J].電力自動化設備,2017(9):1-6.
[2] 黃元維.基于支持向量機的風電機組主軸軸承故障診斷[J].儀器儀表用戶,2016,23(11):88-92.
[3] 盧錦玲,繩菲菲,趙洪山.基于極限學習機的風電機組主軸承故障診斷方法[J].可再生能源,2016,34(11):1588-1594.
[4] 安學利,蔣東翔,李少華.基于決策融合的直驅風力發(fā)電機組軸承故障診斷[J].電網技術,2011,35(7):36-41.
[5] 袁建虎,韓濤,唐建,等.基小波時頻圖和CNN的滾動軸承智能故障診斷方法[J].機械設計與研究,2017,33(2):93-97.
[6] 任浩,屈劍鋒,柴毅,等.深度學習在故障診斷領域中的研究現(xiàn)狀與挑戰(zhàn)[J].控制與決策,2016,9(1):161-171.
[7] ZHANGQ C,YANG T,CHEN Z K.Deep computation model for unsupervised feature learning on big data[J].IEEE Transaction on Services Computing,2016,9(1):161-171.
[8] 劉秀麗,徐小力.基于深度信念網絡的風電機組齒輪箱故障診斷方法[J].可再生能源,2017(12):1862-1868.
[9] 李飛,高曉光,萬開方.基于權值動量的RBM加速學習算法研究[J].自動化學報,2017,43(7):1142-1159.
[10]趙光權,葛強強,劉小勇,等.基于DBN的故障特征提取及診斷方法研究[J].儀器儀表學報,2016,37(9):1946-1953.
[11]徐建軍,杜薔楠,徐建勇,等.WPT-MSE結合PNN的電機軸承故障診斷方法[J].自動化儀表,2017,38(4):85-89.
[12]王美丁,馬見青,樊金生.基于Surfer軟件的數(shù)據(jù)網格化方法探析[J].工程地球物理學報,2017,14(6):694-700.