林 立
(中冶北方(大連)工程技術有限公司,遼寧 大連 116622)
故障診斷技術按處理方法主要分三種,即依靠數學分析的方法、依據信號分析的方法、利用人工智能(知識)的處理方法。而人工智能方法,如人工神經網絡、SVM、專家系統等,能夠處理傳統故障診斷方法所無法解決的問題。相對于傳統方法,人工智能具有很大的優勢,在近些年在電機故障診斷方面,人工智能的應用被廣泛傳播和發展,成為大家公認的最有前途的發展方向。
每種方法都有自己的缺點。依靠數學分析的方法首先要確定精準的數學,但很多情況下,情況比較復雜,精確的數學模型很難建立。基于信號處理的方法雖然不需要對象的數學模型,但有些情況下信號分析特征并不能代表故障特征,另外此種方法自身的特點不方便研究工作的開展。基于專家知識模式的智能診斷系統不能實現自學習,對于知識庫的更新需要人工進行。知識之間也會存在沖突,對于結果的是否正確影響很大。基于人工神經網絡的智能系統也具有一些缺點,如無法詮釋推理結果是怎么得到的,但人工神經網絡網絡的權值閾值來對應繁多的知識,通過變換算法及對樣本的學習來回歸實際情況,并能通過新的輸入來調整參數實現自學習,最后使知識體系更加完善。
BP 神經算法具有模式識別(分類)能力和很好的函數回歸及映射能力。解決了很多單層感知器解決不了的問題。從結構上看,BP 網絡主要有輸入、隱藏和輸出三層架構。從本質上講,BP 網絡算法的學習過程其實就是通過輸入數據信息后計算的結果與希望得到的結果的偏差來改變網絡的權值或閾值,直至模型的輸出結果與希望得到的結果之差在設定的可接受的范圍內,這樣BP 神經網絡就完成了一次學習。
BP 神經算法中S(sigmoid)型函數是單元中經常采用的傳遞函數,所以經復合后BP 網絡可以讓輸入信息與輸出信息之間達到任意非線性對應關系。這一功能使得BP 神經算法在函數回歸、分類等方面有著用武之地,BP 神經算法主要有以下優點:
(1)非線性映射能力:BP 神經算法可以完成輸入與輸出之間的對應關系。從理論上講,三層架構的神經網絡就可以實現以非常高的精度趨近任何非線性曲線。所以從這可以看出BP 神經算法具有非常強的非線性映射能力。
(2)自學習能力:BP 神經算法能夠通過一定機制自動挖掘輸入與輸出結果之間的對應關系,并自適應的將這樣的關系以權值系數和閾值的形式進行存儲。
(3)具有一定的泛化能力:BP網絡不但可以實現對待分類事物進行有效分類,并且通過一定的學習和訓練后,還能對干擾數據或陌生數據進行正確劃分。這是BP算法泛化能力的具體體現。
(4)具有容錯性:是指當BP 結構的一部分被改掉或破壞掉時,其輸出結果不會有很大的改變,具備的分類、識別、回歸功能等功能也不會被影響到。所以看出BP 算法的容錯能力很強大。
BP 神經網絡同時也有以下缺點:
(1)學習速度很慢:BP 網絡受其算法影響,當擬合比較復雜的函數時,會顯得效率較低。
(2)陷入局部極值:BP 算法受其搜索方法影響,網絡的權值系數是向著局部優化的方向漸漸地進行改變的,所以其很容易出現局部極值。但是,我們需要的是全局極值而不是局部極值。
(3)樣本依懶性強:網絡訓練的成功與樣本的選擇直接相關,但在現實中,很難從問題中選擇合適的典型樣本來形成訓練集。
系統的設計基于MATLAB 進行訓練和測試。首先設計BP 網絡模型,然后通過主抽電機故障樣本數據進行訓練,再經過主抽故障測試數據進行測試,根據測試結果對BP 神經網絡進行調整,直至測試結果通過。
理論上講三層人工神經網絡可以完成任意函數的映射,所以暫且將網絡設置為三層。每個人工神經網絡的輸入數量可能不同,所以人工神經網絡輸入的個數根據具體的判斷條件進行設置。
對于隱含層神經元個數的選擇,我們主要依據以下經驗公式:

式中k 代表隱含層中神經元的數量;Ni為輸入層神經元的個數;N0為輸出層神經元的個數;R 為1~10 的任意數。
神經網絡的輸出為相對應故障類型的可能性大小。
從表1 可以看出BP 網絡選擇trainlm 訓練函數性能最佳。trainlm 對于中小規模的網絡來說,其速度比其他算法都要快,但其最大的缺點是內存空間利用較大。對于大型網絡,需要考慮其他的訓練算法或進行算法優化。

圖1 歸一化前訓練函數為trainrp 的訓練誤差曲線

表1 測試數據

表2 神經網絡測試輸出結果
BP 神經網絡已經建模完成,但即使網絡的擬合程度較高,也不代表測試樣本的準確率高,一個好的網絡應該具有很好的泛化能力。用表1 的測試數據樣本進行測試。測試前也需要用函數mapminmax 按照學習樣本數據歸一化的參數對測試樣本進行歸一化處理。結果經過反歸一化后如表2,可以看出測試輸出結果與測試數據故障基本相符。通過同樣的方法建立其余故障診斷的神經網絡。這樣就可以利用訓練成功的BP 網絡對設備進行診斷。