宋旭東,楊杰,陳藝琳
(大連交通大學 計算機與通信工程學院,遼寧 大連 116028)
隨著新型傳感技術和智能制造的發展,現代機械設備可以實時采集到大量的反應機械運行狀態的數據,利用這些實時采集的狀態數據和基于數據驅動的機器學習方法等人工智能方法可以有效對機械設備運行狀態及其故障進行診斷.由于可能存在的設備故障呈現出多源異構性、海量性、多樣性等特點,對于故障診斷的魯棒性、實時性、泛化能力等方面提出了更高要求.大量實驗表明,與傳統機器學習方法相比,深度學習(Deep Learning,DL)具有更強大的特征提取、數據壓縮、故障分類等能力,而且不需要過多的專業知識和人工干預,最大程度地減小了故障診斷的難度.近些年來的研究成果表明,以深度學習為代表的故障識別技術,極大豐富了故障診斷的技術,進而保證機械設備的正常運行[1-2].
深度信念網絡(Deep Belief Network,DBN)是深度學習中最為代表的一類深度學習神經網絡,它是在受限玻爾茲曼機(Restricted Boltzmann Machines,RBM)的基礎上設計出的一種無監督逐層訓練算法,能夠實現數據特征的有效表達,有效實現模式識別[3-4].DBN具有兩個很大的優點,它們很有吸引力并且適用于故障診斷.首先,DBN可以近似任何連續函數,可用于建模和控制多變量非線性系統[5-8].其次,DBN是非參數數據驅動的模型,它不需要對生成數據的基礎過程進行限制性假設.因此,DBN可以準確有效地識別振動信號,判斷滾動軸承早期的故障特征[9-10].
雖然現有的各種深度信念網絡學習模型可以通過大量的訓練得到有效的故障診斷結果,但是許多計算模型在進行訓練時具有計算復雜度高、訓練時間長等問題.現有的解決該問題的方法一般是特征提取或者數據降維等數據預處理方法,但這種方法本質上是通過減縮數據量來達到效率提升的目的,這種方法在數據減縮的同時也同樣會存在部分數據特征的丟失,進而影響故障診斷的準確率.本文提出一種通過修改模型本身的損失函數來減少計算量、加快訓練、提升效率的方法,同時提出的方法不會降低故障診斷的準確率.
深度信念網絡模型結構如圖1所示,它是一種概率生成模型,由多個受限玻爾茲曼機RBM堆疊而成.網絡模型結構的最下層是輸入層,最上層是輸出層.從輸入層到輸出層,可包括多個相鄰層的RBM層和一個BP層.

圖1 深度信念網絡模型結構
深度信念網絡模型訓練過程包含兩部分:一是使用貪心無監督方法逐層構建網絡,由低層到高層的前向RBM逐層學習;二是基于反向傳播的BP層監督學習,在BP層完成后向微調學習.
為加速深度信念網絡模型訓練,本文構造的指數損失函數如下:
(1)
這里,選用均方誤差損失函數作為基本損失函數,式中Y是標簽,DN是輸出層的節點個數,hN是模型的輸出.
用于深度信念網絡模型訓練的代價函數的梯度計算可表示如下:
(2)

由此,本文構造的新代價函數可以獲得更大的梯度來達到加速模型訓練速度的效果.
提出的新的深度信念網絡故障診斷加速模型訓練的流程如下:
輸入:數據集X,標簽集Y
隱藏層h,層數N,每一層的單元個數D1,D2,…,DN,迭代次數Q1,Q2
參數空間W={w1,w2,…,wN},偏置a、b,沖量θ,學習率η
標注數據的個數L,未標注數據的個數U
輸出:包含訓練后參數空間的DBN網絡
處理:
(1)使用貪心無監督方法逐層構建網絡
fork=1;k fori=1;i forj=1;j 計算非線性正向和反向狀態 CD算法更新權重和偏置 (2)基于反向傳播的監督學習 計算代價函數并反向微調網絡參數以尋找模型最優解 fori=1;i 損失函數: 目標函數: θ*=arg minθL(f(X;θ)) NAG算法更新權重: 為驗證本文提出的故障診斷加速方法,選用美國凱斯西儲大學提供的軸承故障數據集[11].該數據集是世界公認的軸承故障診斷標準數據集.提供的數據集包括了正常、滾動體、內圈和外圈等4種不同軸承部位狀態;對于不同部位又分別提供了0.018、0.036和0.053 mm三種直徑尺寸故障;同時包括四種工 作 負 載1、2和3hp, 轉速為C=1 797、1 772、1 750、1 730 r/min. 為了便于提高訓練速度和分類精度,對每段信號均做標準歸一化處理,標準歸一化處理如式(3)所示: NewX=(X-mean)/std (3) 式中,X為信號數據集,mean為其均值,std為其標準差.NewX是得到的標準歸一化數據,其均值為0,標準差為1,符合標準正態分布. 本文實驗是基于Python語言,采用以WTensorFlow為底層代碼實現,計算機硬件基本配置為i7-8750H處理器,8GB內存,Windows系統. 設定輸入端節點數為800,為了便于學習和減少計算量,本文使用的兩層隱藏層節點數為500、500,輸出端為10.小批量mini-batch的大小設置為50,學習因子設置為0.01,每個RBM的預訓練次數為2.使用動量(Momentum)的隨機梯度下降法加速訓練過程,動量因子設置為0.9.對于數據集A、B和C,訓練次數上限15 000次.由于神經網絡的初值是隨機的,為了驗證每次訓練結果的可靠性,對于每個數據集,多次測試,取其最接近平均值的單次訓練作對比,如圖2所示. 圖2 加速前后故障診斷模型訓練過程對比圖 從圖中可以看出,改進后的模型具有明顯的加速效果,使用更少的訓練次數就可以到達很高的分類準確率.并且因為計算復雜度與迭代次數成正比,實際模型獲得穩定的故障診斷結果所需的訓練時間不到改進前模型所需時間的一半.并且加速后的模型在整個訓練過程中訓練集和測試集的最大差值不超過0.035,具有良好的泛化能力. 圖3 改進前故障診斷模型訓練過程可視化圖 圖4 改進后故障診斷模型訓練過程可視化圖 為了更好地理解訓練數據的效果,本文利用T-sne可視化技術展示部分實驗結果.圖3、圖4顯示了由迭代次數下的訓練樣本訓練的DBN模型中測試樣本的最后一個隱藏層表示. 從圖3、圖4可以看出,大約在迭代1 800次左右,改進后的模型就可以達到穩定的高分類正確率,而原始模型需要大約迭代4 000次才能得到穩定的高分類正確率.在不同的迭代次數下,改進后的模型可以更快地獲得明顯的區分、更好的故障診斷準確率,這使得模型可以更快地得到很好的診斷故障類別. 本文提出了一種面向深度信念網絡故障診斷加速方法,通過模型實驗表明提出的DBN故障診斷加速方法的實驗結果十分穩定,均能在迭代2 000次以內獲得最大的分類準確率.比原有效果提升了一半以上的效率.并且分類結果清晰,不同的故障診斷類型間具有較大的分類間隔,不容易出現誤判.實驗說明了本文提出的模型訓練加速方法具有更快、更強的尋優能力,具有一定實際意義和應用價值.3 實驗驗證
3.1 加速前后故障診斷對比實驗



3.2 加速前后故障診斷的可視化分析
4 結論