陳耿新,林若波
(揭陽職業技術學院 信息工程系,廣東 揭陽 522000)
傳感器往往工作在惡劣環境中,較易發生故障,因此要求智能傳感器具備自診斷能力.自聯想神經網絡(auto-associative neural network, AANN)具有內部非正交性及網絡輸入向量等于輸出向量的特點,適用于傳感器故障診斷[1-3].但是,AANN乃至所有神經網絡在參數選擇上至今沒有建立理論指導,也沒有提出真正有效的方法,大多數是試湊選擇、隨機選擇或經驗選擇,導致神經網絡未能充分發揮優勢.
近年來,許多學者開展了神經網絡參數優選的研究[4-9].張輝等[4]提出一種RBF(radial basis function)神經網絡參數優化算法,通過資源分配網絡算法、剪枝策略、改進粒子群算法優化RBF網絡的隱層神經元數目、權值等參數,以獲得RBF網絡的合適結構;薛升翔等[5]利用蛙跳算法優化RBF神經網絡參數,與標準遺傳優化算法、粒子群優化算法相比,該算法均方誤差更小、逼近能力更好;趙晶等[6]針對部分優化方法收斂精度不高的缺點,提出基于文化量子粒子群算法的模糊神經網絡參數優化方法,并應用于混沌時間序列預測,該方法具有一定優越性.上述方法均較復雜,僅能應用于特定神經網絡,不能應用于AANN及推廣至其他神經網絡.正交試驗法是研究和處理多因素試驗的一種科學方法,將正交試驗應用于AANN參數選擇,是一種優化AANN直觀易行、客觀科學的方法.
本文對智能傳感器自診斷模型中AANN進行建模,通過正交試驗法對AANN的隱層神經元數目、μ值減小率和增長率、樣本數目進行試驗,利用訓練時間t和誤差平方和SSE (sum of the squared errors)組成的綜合指標進行參數優化分析,得到最優參數.
圖1為智能傳感器系統自診斷模型,首先通過一個訓練好的AANN檢測是否發生故障,如發生故障,再利用九叉樹故障定位算法及AANN定位1個或多個故障傳感器.

圖1中AANN是拓撲結構對稱的前饋型傳遞網絡,除了具有一般前向神經網絡的特征外,其獨特之處在于具有單位增益,即正常情況下,其輸入向量Xi(i=1, 2, …,s)等于輸出向量Yi(i=1, 2, …,s),其中s為輸入層、輸出層神經元數目[10].
AANN的結構如圖2所示,它包括1個輸入層、若干隱含層和1個輸出層.隱含層的第1層為映射層,用于提取輸入信息的精華部分,其節點傳遞函數是Sigmoid函數f(x)= 1/(1+e-x)或其它類似的非線性函數;隱含層的中間層為瓶頸層,其維數是網絡中最小的,對信息進行壓縮,具有濾波去噪的作用,其節點傳遞函數可以是線性函數或非線性函數;隱含層的最后一層為解映射層,用于還原信息,其節點傳遞函數為非線性函數.可見,瓶頸層之前網絡的功能是對輸入信息進行映射,提取輸入信息中精華部分,而瓶頸層之后網絡的功能是對信息進行解映射,還原信息.

AANN利用誤差反向傳播(back propagation, BP)算法來進行訓練.通過大量的訓練樣本,AANN自動調整隱含層(映射層、瓶頸層和解映射層)各節點傳遞函數的權重,進而得到各輸入信息之間的內在關聯,使輸出信息和輸入信息盡可能相等.當正確數據輸入到AANN中,Yi=Xi;如果1個或多個輸入數據受損,由于AANN內部的非正交性,Yi≠Xi.
假設智能傳感器系統包含10個傳感通道,則AANN輸入層、輸出層神經元數目s=10.AANN采用收斂速度最快的訓練方法:Levenberg-Marquardt算法,訓練精度為0.01.選擇AANN隱層神經元數目(m,n,m)、μ值減小率與增長率(p,q)、樣本數目作為試驗因素,其中,m為映射層和解映射層的神經元數目,n為瓶頸層的神經元數目,p和q分別為Levenberg-Marquardt算法參數μ值減小率與增長率.每個因素選取3個具有代表性的水平.
確定因素及水平后,選用正交表L9(33),其中下標表示需進行9次實驗,33表示3因素3水平.表1是因素和水平表,因素A是隱層神經元數目(m,n,m),對應3個水平分別是(12, 2, 12)、(15, 3, 15)、(18,4, 18);因素B是μ值減小率與增長率(p,q),對應3個水平分別是(0.08, 8)、(0.1, 10)、(0.125, 12.5);因素C是樣本數目,對應3個水平分別是100、120、140個.

表1 因素和水平表
神經網絡的2個重要指標是收斂速度及擬合程度.收斂速度可用訓練時間t或訓練次數表示,訓練時間t更能反映實際收斂速度,故本試驗選取訓練時間t作為收斂速度指標;擬合程度可用誤差平方和SSE或均方誤差MSE(mean squared error)表示,誤差平方和SSE更能反映各因素導致的誤差變化趨勢,故本試驗選用誤差平方和SSE作為擬合程度指標,SSE計算如式(1)所示,式中i=1,2,…,10.因為這2個指標重要程度均等,故在本試驗中,訓練時間t和誤差平方和SSE權值均取50%.
(1)
AANN訓練時間t和誤差平方和SSE越小,AANN性能越優,所以采用式(2)所示綜合指標.

(2)
式中,tk、SSEk分別為第k次試驗結果的t值、SSE值(k=1, 2, ……, 9),tmax、SSEmax分別為tk、SSEk中的最大值,Zk為第k次試驗結果的綜合指標值,Zk越大,AANN越優.
采用Matlab的神經網絡工具箱對智能傳感器自診斷中AANN參數正交試驗優選法進行仿真.首先,建立AANN絡,利用newff()函數建立5層AANN,輸入層及3個隱含層傳遞函數為tansig,輸出層傳遞函數為purelin,學習算法采用Levenberg-Marquardt算法;其次,訓練AANN,訓練時間設為 1 000 ms,精度設為0.01,設置μ值減小率和增長率相應水平值;最后,測試網絡,驗證網絡建立及訓練結果.
AANN訓練完成后,根據正交表L9(33)輸入A、B、C因素的不同水平組合,進行9次試驗,得到相應的tk、SSEk,再根據式(2)計算綜合指標值Zk.表2是AANN正交試驗結果.

表2 AANN正交試驗結果
從表2可以看出,6號試驗結果Z6最大,表明該因素水平組合是9個試驗中最佳的,但不一定是所有水平組合中最優的,需進一步進行數據處理與參數優選.
首先,通過式(3)計算9次試驗結果的均值.
(3)
然后,計算表2中j因素(j為A、B、C)第i水平(i=1, 2, 3)試驗結果之和Kij.如B因素第2水平試驗結果之和K2B=Z2+Z5+Z8.再由式(4)計算ωij.
(4)
式中,ωij表示j因素第i水平的效應,r為j因素上第i水平出現的次數,本試驗中r=3.利用式(5)計算j因素的極差Rj.
Rj=max{ωij}-min{ωij}.
(5)
Rj越大,則j因素對試驗結果影響越大.表3是試驗直觀分析計算表.

表3 試驗直觀分析計算表
從表3可以看出:①RC>RB>RA,所以各因素對AANN性能影響程度由主到次依次為C、B、A,C為主要影響因素;②ω2A>ω1A>ω3A,ω1B>ω3B>ω2B,ω1C>ω2C>ω3C,可斷定A2、B1、C1分別為A、B、C因素的優水平(其中ji表示j因素的i水平).所以,A2B1C1為本試驗的最優水平組合,即隱層神經元數目為(15, 3, 15),μ值減小率和增長率為(0.08, 8),樣本數目為100時,AANN的收斂速度和擬合程度在本試驗中最優.
上述正交試驗是簡便、快速得到試驗中最優水平組合的方法,能快速趨近于最優方案,但仍有可能漏掉最優方案.下面結合正交試驗與因素-效應關系圖,進行AANN參數優選,找出真正最優因素水平組合.
根據表2和表3作出圖3所示的因素-效應圖(趨勢圖).從因素-效應圖可以看出,A3、B1、C1分別為A、B、C因素的優水平,組合A3B1C1總效應最大,即A3B1C1為趨勢最優水平組合.但是,此趨勢最優水平組合與上述試驗最優水平組合A2B1C1不同.

一般來說,AANN隱層神經元數目越多,神經網絡的擬合程度越高(神經元數目過多也會導致過擬合),但此時訓練時間會相對較長,兩者存在矛盾.所以,需對趨勢最優水平組合A3B1C1和試驗最優水平組合A2B1C1進一步試驗、評估,找出AANN最優參數.
對趨勢最優水平組合A3B1C1和試驗最優水平組合A2B1C1重新試驗的結果如表4所示.可以看出,A2B1C1在訓練時間t和誤差平方和SSE兩項指標上均明顯優于A3B1C1,所以A2B1C1為AANN最優參數,即隱層神經元數目為(15, 3, 15),μ值減小率和增長率為(0.08, 8),樣本數目為100時,AANN性能最優,使智能傳感器自診斷性能最優越.

表4 A3B1C1和A2B1C1試驗結果
正交試驗是AANN等神經網絡參數優選的簡便、快速、有效方法,試驗參數優選過程需結合趨勢最優水平組合和試驗最優水平組合,選擇最優參數.
AANN可應用于智能傳感器系統故障診斷,利用正交試驗法對AANN參數進行優選,對于10個傳感通道的傳感器系統,其AANN的最優參數是隱層神經元數目為(15, 3, 15),Levenberg-Marquardt訓練算法μ值減小率和增長率為(0.08, 8),樣本數目為100;
AANN各因素對其性能影響程度由主到次依次為樣本數目、μ值減小率和增長率、隱層神經元數目,樣本數目為主要影響因素.
參考文獻:
[1] HUANG Guo-jian, LIU Gui-xiong, CHEN Geng-xin, et al. Self-recovery method based on auto-associative neural network for intelligent sensors[C]//Intelligent Control and Automation (WCICA).IEEE,2010:6918-6922.
[2] SHAH B, SARVAJITH M, SANKAR B, et al. Multi-auto associative neural network based sensor validation and estimation for aero-engine[C]//AUTOTESTCON 2013. 2013:1-7.
[3] 李歡歡, 司風琪, 徐治皋. 一種基于魯棒自聯想神經網絡的傳感器故障診斷方法[J]. 中國電機工程學報, 2012, 32(14):116-120.
[4] 張輝, 柴毅. 一種改進的RBF神經網絡參數優化方法[J]. 計算機工程與應用, 2012, 48(20):146-149.
[5] 薛升翔, 賈振紅, 楊杰, 等. 用蛙跳算法優化RBF神經網絡參數的研究[J]. 計算機工程與應用, 2011, 47(28):59-61.
[6] 趙晶, 孫俊, 須文波. 基于文化量子粒子群的模糊神經網絡參數優化[J]. 計算機工程與應用, 2011, 47(10):17-19.
[7] 吳貴芳, 林青松, 孫秀明, 等. 基于小樣本的神經網絡參數優化選擇方法[J]. 計算機應用, 2008, 28(7):1662-1664.
[8] 馮再勇. 一種值得推廣的神經網絡參數初始化方法[J]. 陜西科技大學學報, 2008, 26(6):124-127.
[9] 陳廷, 李立輕, 陳霞. 一種基于模糊邏輯的神經網絡輸入參數篩選方法:中國, 200610147213 [P]. 2006-12-14.
[10] KRAMER M A. Autoassociative neural networks[J]. Computers and Chemical Engineering, 1992, 16(4):313-328.