模擬電路故障診斷的BP神經(jīng)網(wǎng)絡(luò)方法研究
對于BP網(wǎng)絡(luò),在閉區(qū)間內(nèi)的任意一個連續(xù)函數(shù)都可以用單隱層的BP網(wǎng)絡(luò)逼近,即一個3層的BP網(wǎng)絡(luò)可以完成任意m維到n維的映射。由于有5個測試點,所以BP網(wǎng)絡(luò)的輸入層為5個神經(jīng)元,以歸一化之后的數(shù)據(jù)作為BP網(wǎng)絡(luò)的輸入樣本,輸出層為4個神經(jīng)元。隱層神經(jīng)元數(shù)目的選擇是一個十分復(fù)雜的問題,往往需要根據(jù)經(jīng)驗或者多次的實驗來判定,因而不存在一個確切的表達式來確定。它的數(shù)目與問題的要求、輸入/輸出單元的數(shù)目都有著直接關(guān)系。隱層單元數(shù)目太多會導(dǎo)致學(xué)習(xí)時間過長、誤差不一定最佳,也會導(dǎo)致容錯性差、不能識別以前沒有看到的樣本,因此一定存在一個最佳的隱單元數(shù)。此處參照美國科學(xué)家Hebb提出的以下經(jīng)驗公式選取:。其中:n為輸入單元數(shù);m為輸出單元數(shù);a為[1,10]之間的常數(shù)。按照上式,,即h的取值為4~13。通過Matlab創(chuàng)建一個BP神經(jīng)網(wǎng)絡(luò),設(shè)定訓(xùn)練次數(shù)為5 000,訓(xùn)練目標(biāo)net.trainParam.goal=0.01,改變隱層單元的數(shù)目,當(dāng)隱層單元數(shù)不同時,達到目標(biāo)所用的訓(xùn)練次數(shù),如表3所示。本文引用地址:http://m.butianyuan.cn/article/187386.htm
根據(jù)表3,當(dāng)隱層單元數(shù)為11時,訓(xùn)練次數(shù)最少,這樣神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)就確定了,輸入層5個節(jié)點,隱層11個節(jié)點,輸出層4個節(jié)點,訓(xùn)練最大次數(shù)設(shè)定為5 000,訓(xùn)練誤差為0.01,先采用傳統(tǒng)算法訓(xùn)練網(wǎng)絡(luò),再采用彈性算法與BP網(wǎng)絡(luò)結(jié)合的改進算法,網(wǎng)絡(luò)訓(xùn)練誤差曲線如圖3、圖4所示。
彈性算法不僅加快了收斂速度,防止了震蕩,還避免了陷入局部極小值,從圖3和圖4可以看出,通過彈性算法與BP網(wǎng)絡(luò)相結(jié)合以后,訓(xùn)練次數(shù)由原來的769次減少到11次,大大提高了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練效率。用樣本自身數(shù)據(jù)輸入訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)中,識別結(jié)果見表4。與故障模式對比分析可知,自身檢測結(jié)果已經(jīng)達到要求,即該網(wǎng)絡(luò)已經(jīng)訓(xùn)練好。下面檢測網(wǎng)絡(luò)的泛化能力,任取2組測試數(shù)據(jù)并進行歸一化處理,結(jié)果如表5所示。
將歸一化的數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)的輸入,得到測試數(shù)據(jù)的識別結(jié)果,如表6所示。
與故障模式對比可知,第一組對應(yīng)的故障是R2短路,第二組對應(yīng)的故障是R1開路。由此可以看出,訓(xùn)練好的網(wǎng)絡(luò)不僅可以識別樣本自身故障,而且還具有一定的泛化能力,經(jīng)過彈性算法與BP網(wǎng)絡(luò)的結(jié)合,取得了良好的效果,達到了預(yù)期的目標(biāo)。
5 結(jié)語
本文針對傳統(tǒng)BP算法誤差下降緩慢,調(diào)整時間長,甚至陷入局部極小點而不能自拔等局限性,運用彈性算法與BP網(wǎng)絡(luò)相結(jié)合的方法,結(jié)合某型雷達設(shè)備中的射頻放大電路進行建模、仿真,用Matlab設(shè)計并用改進后的算法訓(xùn)練BP神經(jīng)網(wǎng)絡(luò),仿真結(jié)果證明該方法對克服傳統(tǒng)BP算法的局限性有顯著效果,縮短了網(wǎng)絡(luò)的訓(xùn)練次數(shù),提高了訓(xùn)練效率,且診斷結(jié)果良好,為新型雷達裝備的故障診斷提供了一種有效的方法,在對裝備故障診斷維修上具有一定的實用意義。
評論