曾曉勤,何嘉晟
(河海大學計算機與信息工程學院,江蘇南京 210098)
神經(jīng)網(wǎng)絡對于參數(shù)擾動的敏感性是衡量網(wǎng)絡性能的重要尺度,如衡量容錯性能與泛化性能等。目前有關(guān)學者已從不同角度、采用不同方法對不同神經(jīng)網(wǎng)絡模型做了許多研究[1-6],研究結(jié)果被應用于解決神經(jīng)網(wǎng)絡研究領(lǐng)域里的一些熱點問題,如提高網(wǎng)絡容錯性能與泛化性能[7-8]、網(wǎng)絡結(jié)構(gòu)和屬性的篩選[9-10]、改進學習算法[11-12]等。筆者擬在Zeng等[5-6]的研究基礎(chǔ)上,通過函數(shù)逼近來避免求解多重積分,推導2層前饋連續(xù)型單隱層感知機(MLP)神經(jīng)網(wǎng)絡對權(quán)擾動的敏感性計算公式。推導中只要求輸入層輸入的分量相互獨立,不再假設隱層輸入的分量必須相互獨立,使得計算出的敏感性更符合實際情況,也在一定程度上提高了計算精度。
通常情況下,設一個MLP神經(jīng)網(wǎng)絡有L層,第l(1≤l≤L)層有nl(nl≥1)個神經(jīng)元。對第i(1≤i≤nl)個神經(jīng)元,輸入為 Xl=(xl,1,xl,2,…,xl,nl-1)T,輸入擾動為 ΔXl=(Δxl,1,Δxl,2,…,Δxl,nl-1)T,它的權(quán)為 Wl,i=(wl,i1,wl,i2,…,wl,inl-1)T,它的權(quán)擾動為 ΔWl,i=(Δwl,i1,Δwl,i2,…,Δwl,inl-1)T,偏置為bl,i,激活函數(shù)為fl(x),輸出為yl,i=fl(XlT·Wl,i+bl,i)。對于第l層,每一個神經(jīng)元的輸入都是相同的 Xl。層權(quán)為 Wl={Wl,1,Wl,2,…,Wl,nl},輸出為 Yl=(yl,1,yl,2,…,yl,nl)。神經(jīng)網(wǎng)絡的輸入是第 1 層的輸入 X1,輸出是最后一層的輸出YL。
MLP神經(jīng)網(wǎng)絡是由若干個神經(jīng)元組合成層,然后層與層之間前后連接構(gòu)成的網(wǎng)絡。相鄰層的神經(jīng)元全連接,同一層與非相鄰層的神經(jīng)元無連接,除了輸入層與輸出層之外的層都稱為隱層。不計輸入層,其余每一層的輸入都是前一層的輸出。同一層每一個神經(jīng)元都有相同的激活函數(shù)fl(x),常見的激活函數(shù)為S形函數(shù):
在解決某些問題時,根據(jù)網(wǎng)絡輸出范圍的要求,輸出層的激活函數(shù)可能設為線性函數(shù):
筆者只討論單隱層的MLP神經(jīng)網(wǎng)絡,即L=2,因為已經(jīng)證明,只要隱層神經(jīng)元數(shù)目足夠多,單隱層的MLP神經(jīng)網(wǎng)絡可以逼近任意的連續(xù)函數(shù)[13]。本文用E(x),D(x),φ(x)分別代表隨機變量x的數(shù)學期望、方差、密度函數(shù)。
在MLP神經(jīng)網(wǎng)絡的參數(shù)發(fā)生擾動時,網(wǎng)絡輸出會產(chǎn)生相應變化。MLP神經(jīng)網(wǎng)絡參數(shù)敏感性就是反映參數(shù)改變對網(wǎng)絡輸出的影響程度。敏感性的定義通常不唯一?,F(xiàn)實中,網(wǎng)絡輸入或者權(quán)發(fā)生擾動最為常見。筆者主要研究權(quán)擾動產(chǎn)生的輸出擾動:在隱層中Xl也有擾動,這是因為MLP神經(jīng)網(wǎng)絡前一層權(quán)的改變會影響后一層的輸入。對于一個訓練好的MLP 神 經(jīng)網(wǎng)絡,它的 Wl,i,bl,i都是確定的,理論上只要有 Xl和 Δ Wl,i就可以計算得到 Δyl,i。在定義敏感性時,把網(wǎng)絡的輸入看作是隨機變量,其他參數(shù)都視為常數(shù),這樣的敏感性是基于所有輸入的敏感性。又由于輸入擾動產(chǎn)生的影響可正可負,為避免求期望時正負相消,敏感性便定義為輸出變化絕對值對所有輸入的期望。
定義1:對第l(1≤l≤L)層的第i個神經(jīng)元,定義它的敏感性sl,i是 Δ Wl,i的函數(shù):
定義2:第l層的敏感性定義為該層所有神經(jīng)元的敏感性構(gòu)成的向量:
定義3:整個MLP神經(jīng)網(wǎng)絡的敏感性定義為輸出層的敏感性:
對于單隱層MLP神經(jīng)網(wǎng)絡,需要計算的敏感性只有2個,即隱層和輸出層的敏感性。在本文的計算過程中,始終假設輸入層的輸入分量x1,i是相互獨立的。
3.1 隱層神經(jīng)元的敏感性
第1層第i個神經(jīng)元的敏感性為
為簡化推導過程,作如下符號替換:
因為激活函數(shù)(S形函數(shù))是單調(diào)遞增函數(shù):
因此要得到s1,i,只需要計算E(f1(z1,i+ Δz1,i+b1,i))和E(f1(z1,i+b1,i))。
根據(jù)期望的定義,有
式(10)為一個n0重積分,直接計算很難。筆者使用Remez算法 將激活函數(shù)f1(x)逼近為一個多項式之和,同時式中的每一項可以繼續(xù)展開。Remez算法是采用逐次逼近思想的求連續(xù)函數(shù)最佳一致逼近多項式的近似算法。對于一個給定的連續(xù)函數(shù),可以找到在給定區(qū)間上的p次最佳一致逼近多項式P(x):
式中:p——多項式的最高次,且當它取值越大時,f1(x)和P(x)的差距越小;ct——多項式系數(shù),對于給定的p和f1(x),在指定區(qū)間內(nèi),可以通過Remez計算得到。
將式(11)代入式(10),可得E(f1(z1,i+ Δz1,i+b1,i))的逼近多項式為
將式(12)中的(z1,i+ Δz1,i+b1,i)t進行多項式展開,并求期望得
式中:ak——非負整數(shù),0≤ak≤t——取遍所有使得a1+a2+…+an0+an0+1=t成立的ak序列;φ(x1,1),φ(x1,2),…,φ(x1,n0)——每一維輸入的密度函數(shù),多數(shù)情況下它們是不同的。
經(jīng)過類似推導可得
3.2 輸出層神經(jīng)元的敏感性
對于單隱層MLP神經(jīng)網(wǎng)絡的輸出層,第k個神經(jīng)元的敏感性為
為求s2,k,只需要求得E(f2((X2+ Δ X2)T·(W2,k+ Δ W2,k)+b2,k))和E(f2(X2T·W2,k+b2,k))。
由于s1,i已知,令b2,k'=s1,q(w2,kq+ Δw2,kq)+b2,k(常數(shù)替換不影響后面計算),并將E(f2((X2+ΔX2)T·(W2,k+ Δ W2,k)+b2,k))進行多項式逼近,得
由于輸入層的輸入分量x1,s是相互獨立的,于是計算期望時的多重積分可以變?yōu)橐恢胤e分的積,因此式(17)是可計算的。由于已經(jīng)證明單隱層MLP神經(jīng)網(wǎng)絡可以逼近任意連續(xù)函數(shù),因此本文算法解決了MLP神經(jīng)網(wǎng)絡權(quán)擾動敏感性的計算問題。
以UCI數(shù)據(jù)集[15]為基礎(chǔ),通過對比MLP神經(jīng)網(wǎng)絡參數(shù)敏感性的模擬值和算法得到的理論值驗證所提算法的準確性。筆者采用MATLAB 7.11.0(R2010b)版本的神經(jīng)網(wǎng)絡工具箱獲取模擬值,MATLAB獲取理論值。
從UCI數(shù)據(jù)集中取出iris,wine,vehicle共3組數(shù)據(jù)集,針對每組數(shù)據(jù)集訓練幾個不同的MLP神經(jīng)網(wǎng)絡。訓練完畢后,隨機生成1萬個正態(tài)分布的權(quán)擾動值。然后將輸入再次輸入網(wǎng)絡,得到MLP神經(jīng)網(wǎng)絡權(quán)擾動敏感性的模擬值。將權(quán)擾動值、網(wǎng)絡輸入、權(quán)等代入式(16)(17)可得到理論值。
實驗結(jié)果如下:實驗1,iris與wine數(shù)據(jù)集,輸入維數(shù)為4,輸出維數(shù)為1,輸入樣本數(shù)為150,網(wǎng)絡均方誤差均小于0.005,權(quán)擾動期望為0,方差為0.1;實驗2,iris數(shù)據(jù)集,輸入維數(shù)為4,輸出維數(shù)為1,輸入樣本數(shù)為150,網(wǎng)絡均方誤差均小于0.005,隱層節(jié)點數(shù)為5,權(quán)擾動期望為0,方差分別為0.05,0.3,0.5;實驗3,vehicle數(shù)據(jù)集,輸入維數(shù)為18,輸入樣本數(shù)為878,網(wǎng)絡均方誤差均小于0.01,隱藏節(jié)點數(shù)為7,權(quán)擾動期望為0,方差為0.1。
從模擬結(jié)果(表1~3)可以看出,模擬值與理論值有一定的差異,但是就趨勢而言,基本保持一致。也就是使用本算法計算出的理論值可以作為一個相對尺度來應用。
表1 iris和wine數(shù)據(jù)集不同隱層節(jié)點數(shù)的模擬結(jié)果Table 1 Simulated results of sensitivity for nodes of different hidden layers(iris and wine datasets)
表2 iris數(shù)據(jù)集不同權(quán)擾動方差的模擬結(jié)果Table 2 Simulated results of sensitivity for different variances of weight perturbation(iris dataset)
在將MLP神經(jīng)網(wǎng)絡敏感性定義為輸出變化絕對值對所有輸入的期望的基礎(chǔ)上,通過Remez算法推導了敏感性的近似計算公式。實驗數(shù)據(jù)檢驗結(jié)果表明,敏感性的理論值能較好地逼近模擬值,兩者間的誤差由算法中使用函數(shù)逼近所致。在逼近過程中選用的多項式次數(shù)越高,則計算精度越高;無論多項式次數(shù)的多少,理論值和模擬值的變化趨勢基本上保持一致。
表3 vehicles數(shù)據(jù)集激活函數(shù)為S形函數(shù)與線性函數(shù)的模擬結(jié)果Table 3 Simulated results of sensitivity for different activation functions(vehicle dataset)
[1]FU L,CHEN T.Sensitivity analysis for input vector in multilayer feedforward neural networks[C]//Proc of IEEE International Conference on Neural Networks.San Francisco,CA:IEEE Press,1993:215-218.
[2]YEUNG D S,SUN Xuequan.Using function approximation to analyze the sensitivity of the MLP with antisymmetric squashing activation function[J].IEEE Transactions on Neural Networks,2002,13(1):34-44.
[3] ZENG Xiaoqin,YEUNG D S.Sensitivity analysis of multilayer perceptron to input and weight perturbations[J].IEEE Transactions on Neural Networks,2001,12(6):1358-1366.
[4] ZENG Xiaoqin,YEUNG D S.A quantified sensitivity measure for multilayer perceptron to input perturbation[J].Neural Computation,2003,15(1):183-212.
[5]YANG Jing,ZENG Xiaoqin,ZHONG Shuiming.Computation of mulitilayer perceptron sensitivity to input perturbation[J].Neurocomputing,2013,99(1):390-398.
[6]YANG S,HO C,SIU S.Sensitivity analysis of the split-complex valued multilayer perceptron due to the errors of the i.i.d.Inputs and Weights[J].IEEE Trans on Neural Networks,2007,18(5):1280-1293.
[7]BERNIER J L,ORTEGA J,ROJAS I,et al.Improving the tolerance of Multilayer Perceptrons by minimizing the statistical sensitivity to weight deviations[J].Neurocomputing,2000,31(1):87-103.
[8]BERNIER J L,ORTEGA J,ROSE,et al.A quantitative study of fault tolerance,noise immunity and generalization ability of MLPs[J].Neural Computation,2000,12(12):2941-2964.
[9]ENGELBRECHT A P.A new pruning heuristic based on variance analysis of sensitivity information[J].IEEE Transactions on Neural Networks,2001,12(6):1386-1399.
[10]ZENG Xiaoqin,YEUNG D S.Hidden neuron pruning of multilayer perceptrons using a quantified sensitivity measure[J].Neurocomputing,2006,69(7/8/9):825-837.
[11] ZHONG Shuiming,ZENG Xiaoqin,WU Shengli,et al.Sensitivity-based adaptive learning rules for BFNNs[J].IEEE Transactions on Neural Networks and Learning Systems,2012,23(3):480-491.
[12]高玉琴,張利昕,吳煥霞.改進GA-BP神經(jīng)網(wǎng)絡評價算法及其應用[J].水利經(jīng)濟,2012,30(6):7-10.(GAO Yuqin,ZHANG Lixin,WU Huanxia.Evaluation algorithm of improved GA-BP neural networKand its application[J].Journal of Economics of Water Resource,2012,30(6):7-10.(in Chinese))
[13]HORNIKKM,STINCHCOMBEA M,WHITE H.Multilayer feedforward networks are universal approximators[J].Neural Networks,1989,2(5):359-366.
[14]RICARDO P,TREFETHEN L N.Barycentric-Remez algorithms for best Polynomial approximation in the chebfun system[J].BIT Numerical Mathematics,2009,49(4):721-741.
[15]BLAKE C L,MERZ CJ.UCI repository of machine learing databases[DB].[2013-01-20].http://archive.ics.uci.edu/ml/index.html.