文怡婷,嚴太山,李文彬
(湖南理工學院信息科學與工程學院,岳陽414006)
模擬電路是用來對模擬信號進行傳輸、變換和處理的電路,它是電子電路的基礎。相對于數字電路來說,模擬電路出現的故障率較高,而且故障信息呈現噪聲高、特征多、非線性的特征,使得模擬電路故障不易診斷,成為電路研究中的熱門領域,已有不少學者投入到模擬電路故障診斷的研究中,提出了諸多有價值的模擬電路故障診斷方法。其中,常規的故障診斷方法如故障字典法、參數識別法、網絡撕裂法等,由于其局限性已不再適用[1-6]。
神經網絡技術的興起,為解決故障診斷問題提供了一條新的途徑。神經網絡系統具有強大的I/O 非線性映射、信息分布存儲和并行處理功能,特別是其高度的自組織和自學習能力,使其為模擬電路診斷提供了全新的理論方法和實現手段[7-12]。在各種神經網絡中,RBF 神經網絡是一種性能良好的三層前饋神經網絡,已經證明它具有較好的全局逼近的性質,能夠逼近任意的非線性函數,并有較快的學習收斂速度,能被廣泛應用于各個領域,尤其適用于故障診斷。因此,研究RBF 神經網絡在模擬電路故障診斷中的應用有著重要的理論及現實意義[13-14]。
使用RBF 神經網絡實現模擬電路故障診斷的一般方法是:①獲取樣本集,針對電路常見的各種故障狀態及正常狀態,利用PSpice 工具收集對應的參數值,通過數據預處理,得到RBF 神經網絡的學習樣本集和檢測樣本集。②神經網絡學習,利用學習樣本集對RBF神經網絡進行訓練,直至網絡收斂,獲取網絡的參數。③神經網絡檢測,將檢測樣本集提供給RBF 神經網絡,網絡輸出即為對應的故障模式。基于RBF 神經網絡的模擬電路故障診斷系統結構如圖1 所示。
徑向基函數(Radial Basis Function)神經網絡,簡稱RBF 神經網絡,它用徑向基函數作為網絡隱含層單元的“基”,隱含層的作用是將低維的模式輸入數據變換到高維空間,使得低維空間的線性不可分問題在高維空間線性可分。RBF 神經網絡結構上分為三層,即輸入層、隱含層和輸出層,使用的傳輸函數(徑向基函數)通常有多種,較為常用的是高斯函數。

圖1 基于RBF神經網絡的模擬電路故障診斷系統流程

其中,wkj(t)為第k 個輸出神經元與第j 個隱含層神經元之間在第t 次迭代計算時的調節權重;cji(t)為第j 個隱含層神經元對于第i 個輸入神經元在第t 次迭代計算時的中心分量;dji(t)為與中心cji(t)對應的寬度;η為學習因子;E 為RBF 神經網絡評價函數,其表達式如下:
RBF 神經網絡隱含層神經元的基函數中心C、中心寬度D 以及隱含層到輸出層的權值W 是極其重要的組成部分,如果它們選擇不當,RBF 神經網絡的處理能力將會受到很大的影響,RBF 神經網絡訓練的目的就是要確定這三個參數。RBF 神經網絡的訓練通常采用梯度下降法,中心、寬度和權重參數均通過學習來調節到最佳值,迭代計算如下:

上式中,Olk為第l 個樣本輸入時第k 個輸出單元的期望輸出值;ylk為第l 個樣本輸入時第k 個輸出單元在的實際輸出值。
RBF 神經網絡學習算法步驟描述如下:
Step 1:初始化中心、寬度、權重及學習率、動量因子、精度要求等參數。
Step 2:計算網絡的隱含層、輸出層各單元的輸出。
Step 3:計算網絡輸出的總體誤差E 的值。
Step 4:判斷結束條件是否滿足?滿足,則訓練結束;否則,轉到Step 5。
Step 5:按照式(1-3),對權重、中心和寬度參數進行調整。
Step 6:更新訓練次數,返回Step 2。
RBF 神經網絡作為一種前饋神經網絡模型,具有較強的泛化推理能力,在諸多領域得到了廣泛的應用。但在實際應用中,人們發現RBF 神經網絡學習算法的性能在一定程度上依賴于學習率和動量因子的選擇。由于基本RBF 神經網絡算法中的學習率和動量因子固定不變,給收斂速度帶來了一定的影響,對于一些復雜的問題,算法需要較長的訓練時間。
為了加快算法的收斂速度,我們對學習率η 和動量因子α 進行自適應調整,提出一種自適應RBF 神經網絡算法。該算法的基本思想是:先設定一個初始學習率和動量因子,在學習過程中,根據每次訓練后得到的總體誤差E(t+1)與上一次訓練后得到的總體誤差E(t)的大小關系,對學習率和動量因子進行動態調整。如果一次迭代之后誤差增大,說明這次調整方向是無效的,應適當減小學習率和動量因子,按原來方向重新計算下一次迭代;如果一次迭代之后誤差減小,說明這次調整方向是有效的,應適當增大學習率和動量因子,繼續進行下一次迭代。學習率和動量因子的具體調整方法如下:

式中,t=0,1,2,…,T-1,T 為設定的最大學習次數。
自適應RBF 神經網絡學習算法的工作流程如圖2所示。

圖2 自適應RBF神經網絡學習算法流程
我們將自適應RBF 神經網絡應用于模擬電路故障診斷,本文選擇的實驗電路是AD 公司提供的電壓單端差分轉換器,該電路比較簡單并具有一定代表性和實用性。
電壓單端差分轉換器電路如圖3 所示。

圖3 電壓單端差分轉換器電路
電壓單端差分轉換器電路中,雙通道AD648 是一款低功耗、單片運算放大器,Vcc=10V,Vee=-10V,并對整個電路提供正負電源;V3 為1V 的頻率為1kHz 的正弦信號源,R1、R3、R4、R5、R6 分別假設為故障點,在仿真時設置為開路。
我們從PSpice 獲取的電路仿真數據集里選取165組數據作為RBF 神經網絡的訓練樣本數據,另選12組數據作為檢驗樣本數據,樣本數據覆蓋各種故障類型,如表1 和表2 所示。本例設置的故障類型包括無故障(正常)、R1 開路、R3 開路、R4 開路、R5 開路和R6開路,其編碼分別為000、001、011、100、101 和110。

表1 RBF 神經網絡訓練樣本數據

表2 RBF 神經網絡檢驗樣本數據
我們首先利用表1 中的數據對自適應RBF 神經網絡進行訓練,網絡結構設置方法如下:6 個測試點對應6 個輸入,故障類型采用3 為二進制編碼,故輸出節點數為3,隱含層節點數按估算公式(7)計算。

其中,nh、ni、no分別為隱含層、輸入層、輸出層的節點數,np為學習樣本個數。根據上述公式求得隱含層節點數為15 個,于是得到網絡結構為6-15-3。在給定的訓練精度相同的條件下,我們將自適應RBF 神
從表3 和圖4 可以看出,自適應RBF 神經網絡的平均訓練時間比基本RBF 神經網絡短,其收斂速度和性能得到了提高。經網絡的訓練結果與基本RBF 神經網絡進行對比,二者的訓練時間如表3 所示,收斂曲線分別如圖4(a)和圖4(b)所示。

表3 RBF 神經網絡的訓練時間(ms)
當自適應RBF 神經網絡訓練結束之后,我們再利用表2 中的檢驗樣本數據對網絡的泛化性能進行檢驗,讓網絡對新的電路故障數據進行診斷,診斷結果如表4 所示。
表4 的診斷結果告訴我們,自適應RBF 神經網絡的實際輸出與期望輸出是完全一致的,也就是說其診斷結果與實際故障類型是完全吻合的??梢姡米赃m應RBF 神經網絡能夠實現對模擬電路故障的準確、可靠的診斷。
針對傳統的電路故障診斷方法計算復雜,難以適用于現代模擬電路的問題,本文運用神經網絡技術,通過建立RBF 神經網絡故障診斷模型,實現模擬電路故障診斷。為提高神經網絡的訓練速度,設計并實現了一種高效的自適應RBF 神經網絡算法,將該算法應用于模擬電路故障診斷之中,以電壓單端差分轉換器電路為例進行了仿真實驗。仿真結果表明,該方法具有故障識別速度快、準確性高等優點。今后的工作是將其應用于多故障點的識別,進一步增強算法的適應性,提高算法的性能。

表4 自適應RBF 神經網絡的檢驗結果

圖4 RBF神經網絡的收斂曲線