杨 静,徐 彦,姜 赢
(1.北京师范大学珠海分校,广东珠海519087;2.南京农业大学,南京210095)
多层感知机权值扰动敏感性计算算法研究
杨 静1,徐 彦2,姜 赢1
(1.北京师范大学珠海分校,广东珠海519087;2.南京农业大学,南京210095)
多层感知机(M LP)对权值扰动的敏感性反映当网络权值发生变化时网络输出的变化规律,是研究MLP学习机制的一种重要衡量工具。系统讨论MLP对权值扰动的敏感性计算方法,提出一种层层递进的敏感性近似算法。利用数值积分从第一层神经元开始计算,后一层神经元的计算利用前一层的结果,最终给出所有层神经元以及整个网络的敏感性计算表达式。该敏感性计算算法只要求网络的各维输入相互独立,而对其具体的分布无任何限制,同时还具有计算复杂度低、通用性强等优点,模拟实验验证了该算法的准确性和有效性。
敏感性;多层感知机;权值;扰动;期望
神经网络是在一定的网络结构下,通过样本学习来确定合适的权值,从而建立一种输入、输出的映射关系。当网络的输入发生扰动时,网络输出会发生相应变化,而敏感性正是反映了这一输入扰动与输出变化之间某种内在的函数依赖关系。对于神经网络而言,输入扰动可以理解为一种广义下的参数扰动,也就是不仅是网络输入,也可能是网络权值或是网络激活函数等参数发生扰动。通过对其中各参数的不同设置(如常量、变量、统计变量等),加上各种可能的组合,可以得到不同形式的敏感性定义来适应不同应用环境的需求。而不同定义形式的敏感性可以从不同角度揭示网络的内在工作机理。人们试图通过计算分析这些敏感性,找到神经网络在面对噪音时会有怎样的容错能力,对非训练样本又可能有怎样的泛化能力,权值调整对网络输出会产生怎样的影响等各种问题的答案。
有关神经网络的敏感性已有不少研究成果,研究人员针对不同的网络模型,从不同角度,对不同形式的敏感性进行研究,并利用研究结果来解决一些应用问题,例如:文献[1]在假设输入扰动和权值扰动极小的情况下利用一种均方敏感性来衡量网络的容错性、抗干扰性及泛化性能;文献[2]提出了一种敏感性的变体:局部泛化误差,并用将其用于网络结构的选择[2];类似的,文献[3-7]通过对比网络中各个神经元对于相同输入扰动的不同反应程度来衡量神经元在网络中的贡献程度,以达到网络结构裁剪的目的;文献[8]利用局部泛化误差模型来改进RBF网络的学习算法;文献[9]给出了一种基于样本点的输入扰动敏感性,并以此来衡量个体网络的差异度以改进网络集成的泛化能力;文献[10]利用局部泛化误差来进行RBF网络的属性筛选择。而所有这些敏感性应用的前提就是需要找到一种通用而准确的敏感性量化算法。对于离散型前向神经网络(Madaline)而言,文献[11]总结了Madaline的研究现状并提出了一种利用离散随机技术的敏感性计算算法。该算法取消了过强的限制条件,使得从理论上进行误差分析成为可能;文献[12]将敏感性定义为输出误差比率的数学期望并利用一种改进的超球体模型来研究Neocognitron的敏感性;文献[13]将径向基函数网络(RBFNN)的敏感性定义为RBF网络中心变化引起的网络输出扰动平方的数学期望,并给出了敏感性的计算公式并将其应用于网络结构设计,但没有对计算公式的正确性进行验证;文献[14]对spiking神经元的敏感性进行了初步的探索,给出了一种基于概率的敏感性计算方法。本文的研究对象:M LP是前向网络中最常用也是最重要的一类网络,关于MLP的敏感性也有不少研究成果。文献[15]引入超立方体模型作为工具并给出了具体的敏感性量化计算推导式,该敏感性定义为输入和权值扰动,算法主要利用了激活函数的泰勒展式来近似计算敏感性。但这种方法要求M LP输入必须为相互独立且服从[0,1]间的均匀分布,这大大限制了算法的实用性。文献[16]研究了复数空间中的MLP敏感性,文中敏感性由实数部分和复数部分敏感性共同组成,同样的,该算法要求网络的输入和权值均为独立同分布,且具有固定分布形式。他们还提出了一种基于中心极限定理的M LP敏感性计算算法,该算法基于输入和权值扰动,但要求输入和权值均为独立同分布[17]。文献[18]放松了对于网络输入的限制,提出了一种基于输入扰动的敏感性计算算法,将激活函数展开为指数多项式来求解敏感性,且仅仅要求网络输入相互独立,无其他具体分布限制,该算法具有精度高、适用性强等优点。
综上所述,发现对于M LP输入扰动敏感性的计
算已有一些较为成熟的算法,而现有的M LP权值扰动敏感性计算算法大多具有较强的限制,还未能有较为有效而通用的算法。本文针对该问题,对MLP权值扰动敏感性进行研究,并给出完整的计算算法。
一般而言,MLP结构为L(L>1)层前向网络,第l(1≤l≤L)层有nl(nl≥1)个神经元。对于l层的第i(1≤i≤nl)个神经元而言:输入向量为权值为;权值扰动为偏置为bli;激活函数为fl(χ);输出为。一个M LP的网络结构可以用n0-n1-,…,-nL来表示,其中,n0表示网络的输入维数;nl(1≤l≤L)表示对应l层的神经元个数。同层神经元的激活函数相同,通常为S型函数,例如:
在解决一些回归问题时,输出层激活函数通常为线性函数:
对于偏置,为了简化运算过程,采用以下处理方法:在输入向量中增加一维:1)T;同时将偏置值增加到权值向量中:,这样就能将有偏置网络转换为无偏置网络,因此后文都以无偏置网络作为讨论对象。
MLP的权值扰动敏感性是指当网络权值发生扰动时,网络输出所产生的相应变化。第l层上的第i个神经元的输出扰动为:
然而,研究特定输入下MLP的敏感性是缺乏实际意义的,需要的是找到在所有可能输入条件下,M LP对于特定权值扰动而引起的输出变化规律。因此,M LP的权值扰动敏感性应定义为在所有可能的输入情况下,当网络权值发生扰动时,网络输出变化的期望值。同时为了避免求期望过程中的正负相消,将敏感性定义为网络输出扰动绝对值的期望值。第l层上的第i个神经元的敏感性定义如下:
l层的敏感性则为l层中所有神经元敏感性的向量,定义如下:
整个M LP的敏感性定义为:
下文的E(χ),D(χ),φ(χ)分别代表随机变量的数学期望、方差和密度函数。为表述更为简洁,后文中均采用以下缩写:
同理mli的期望和方差可以分别用下式求出:
对于l层神经元而言,前一层神经元的敏感性会向下传递导致下一层神经元的输入也发生扰动,其敏感性是由输入扰动和权值扰动共同作用产生的。因此,不同于第一层神经元,l层上的第K个神经元的敏感性定义为:
根据MLP结构可知,前一层的神经元输出即为后一层的输入,即因此,式(18)与式(19)中的和可以利用前一层敏感性计算过程中所求得的计算得出。同理,的期望和方差可以利用下式求出:
总结前面的推导过程可知,M LP权值扰动敏感性计算从第一层开始,利用数值积分逐个求出每个神经元的敏感性,后一层神经元利用前一层神经元的计算结果,层层递进,直到求出所有层神经元的敏感性。具体算法如下所示:
输入 M LP的结构n0-n1-…-nL,权值,权值扰动,输入的期望与方差
(1)对第一层中的所有神经元i(1≤i≤n0),逐个循环计算:
(2)对MLP的所有层l(2≤l≤L),逐层循环计算:
对l层中的所有神经元K(1≤K≤nl-1),逐个循环计算:
从上述算法描述中可知:算法的时间复杂度为2个步骤的复杂度之和。假定算法中的二重数值积分的复杂度为常数c,那么整个算法的复杂度为:c))。绝大多数情况下,网络的输入维数都会比网络中各隐层神经元的个数大很多,因此,算法的复杂度可以简化为:O((n0)2)。显然平方阶的复杂度是完全可以接受的。本文提出的权值扰动敏感性算法将输入加权和视为一个随机变量进行计算,只要网络的各维输入相互独立,就能利用此算法来计算敏感性。同时,算法递推计算每一层神经元的敏感性,可以用于计算多隐层的网络敏感性;且隐层的激活函数可以为任意形式。因此,利用该算法几乎可以解决所有形式的M LP权值扰动敏感性计算问题,具有相当的通用性。
为了验证本文所提出的MLP权值扰动敏感性算法,设计了如下5组实验分别从不同角度对算法进行验证。其中理论敏感性是利用本文提出的算法计算得出的,而模拟敏感性是通过计算100 000个输入样本的平均敏感性得到的,相对误差为模拟敏感性和理论敏感性之差的绝对值与理论敏感性的比值。
在实验1中采用了5-3-1结构的M LP,网络的输入分布各不相同,分别为正态分布,参数为(0);正态分布,参数为(-1,0.5);均匀分布,参数为(-1,1);瑞利分布,参数为(1);瑞利分布,参数为(1.5)。权值扰动由0.01递增到0.1,间隔为0.01,激活函数为对数S型函数,表1~表4为实验1的结果,从表中可以看出,理论值和模拟值之间的相对误差保均保持一个非常小的值,这说明了算法的精度较高。
表1 不同扰动下隐层神经元1的敏感性
表2 不同扰动下隐层神经元2的敏感性
表3 不同扰动下隐层神经元3的敏感性
表4 不同扰动下输出层神经元的敏感性
实验2是验证算法在处理不同输入维数网络时的稳定性。实验设置如下:网络结构为n-3-1,n由3递增到12。权值扰动为固定值0.05,各维输入均服从均匀分布(0,1)。结果如表5~表8所示。
表5 不同输入维数下隐层神经元1的敏感性
表6 不同输入维数下隐层神经元2的敏感性
表7 不同输入维数下隐层神经元3的敏感性
表8 不同输入维数下输出神经元的敏感性
从表5~表8中可以看出:随着输入维数的增加,相对误差并未出现明显的增大,这说明算法对于输入维数的变化保持稳定,并未出现波动,理论值和模拟值基本保持趋势一致。
实验3是验证算法在处理具有不同隐层神经元个数的网络敏感性时的稳定性。实验设置如下:网络结构为5-n-1,n由1递增到10,权值扰动为固定值0.01,网络输入同实验1,实验结果如表9所示。实验4是验证算法是否能准确计算具有不同激活函数的M LP的敏感性。实验中的M LP的隐层激活函数为双曲正切S型函数,输出层的激活函数为线性函数,其余设置同实验1,实验结果如表10所示。从这2个实验的结果可以看出,算法均保持较高的精度。
表9 不同隐层神经元个数下输出层神经元敏感性
表10 不同激活函数下输出层神经元的敏感性
实验5是验证算法是否能处理多隐层网络的敏感性计算。实验设置如下:网络结构为5-3-3-1,网络输入为-1~1之间的均匀分布;权值扰动由0.01递增到0.1,间隔为0.01,实验结果如表11~表17所示。从结果可以看出,算法在计算第二隐层及输出层敏感性时,仍保持了较高的精度,说明算法可以处理多隐层的网络敏感性。
表11 双隐层网络不同扰动下第1层神经元1的敏感性
表12 双隐层网络不同扰动下第1层神经元2的敏感性
表13 双隐层网络不同扰动下第1层神经元3的敏感性
表14 双隐层网络不同扰动下第2层神经元1的敏感性
表15 双隐层网络不同扰动下第2层神经元2的敏感性
表16 双隐层网络不同扰动下第2层神经元3的敏感性
表17 双隐层网络不同扰动下输出层神经元的敏感性
本文提出一种基于MLP权值扰动敏感性的计算算法,该算法将敏感性定义为权值扰动后网络输出与扰动前网络输出之差绝对值的期望值。算法仅要求网络的输入为相互独立,大大提高了算法的实用性。在敏感性的计算过程中,利用了中心极限定理,将神经元的加权输入和扰动后的加权输入分别近似看作2个正态分布的随机变量,从而将多重积分转换为二重积分进行数值计算。算法从第一层的神经元开始,前一层的结果作为后一层的计算输入,层层递进,最终得出所有神经元的敏感性。实验结果表明了算法的精度较高,并且较为稳定。本文提出的M LP权值扰动敏感性算法的主要优势在于:(1)该算法仅仅要求M LP的输入相互独立,可以有不同的分布,这大大提高了算法的实用性;(2)算法可以计算多隐层M LP的敏感性,并且实验证明,算法的精度并没有随着隐层的增加而明显下降;(3)该算法可以处理具有不同的激活函数的M LP,激活函数可以是对数S型函数、双曲正切S型函数或者线性函数;(4)该算法具有较高的精度和稳定性。本文的后续工作将从理论上进一步完善M LP权值扰动敏感性的研究,同时利用本文所提出的敏感性量化算法进行学习算法的改进,解决一些实际应用问题。
[1] Bernier J L,Ortega J,Rojas I,et al.A Quantitive Study of Fault Tolerance,Noise Imm unity and Generalization Ability of M LPs[J].Neural Computation,2000,12(1):2941-2964.
[2] Yeung D S,Ng W W Y,W ang D,et al.Localized Generalization Error Model and Its Application to Architecture Selection for Radial Basis Function Neural Network[J].IEEE Transactions on Neural Networks,2007,18(5):1294-1305.
[3] Engelbrecht A P.A New Pruning Heuristric Based on Variance Analysis of Sensitivity Information[J].IEEE Transactions on Neural Networks,2001,12(6):1386-1399.
[4] Zeng X,Yeung D S.Hidden Neuron Pruning of Multilayer Perceptrons Using a Quantified Sensitivity Measure[J].NeuroComputing,2006,69(7-9):825-837.
[5] Zeng X,Shao J,Wang Y.A Sensitivity-based Approach for Pruning Architecture of Madalines[J].Neural Computing&Applications,2009,18(1):957-965.
[6] Chan P P K,Zeng X,Tsang E E C,et al.Neural Network Ensemble Pruning Using Sensitivity Measure in Web Applications[C]//Proceedings of International Conference on System,Man and Cybernetics.Washington D.C.,USA:IEEE Press,2007:125-134.
[7] Shi D,Yeung D S,Gao J.Sensitivity Analysis Applied to the Construction of Radial Basis Function Networks[J]. IEEE Transactions on Neural Networks,2005,18(7):951-957.
[8] Yeung D S,Chan P P K,Ng W W Y.Radial Basis Function Network Learning Using Localized Generalization Error Model[J].Information Science,2009,32(1):3199-3217.
[9] Yang Jing,Zeng Xiaoqin,Zhong Shuiming,et al. Effective Neural Network Ensemble Approach for Im proving Generalization Performace[J].IEEE Transactions on Neural Networks and Learning System s,2013,24(6):878-887.
[10] Ng W W Y,Yeung D S,Firth F,et al.Feature Selection Using Localized Generalization Error for Supervised Classification Problem for RBFNN[J].Pattern Recognition,2008,23(1):3706-3719.
[11] 钟水明,曾晓勤, 刘惠义,等.基于离散随机技术的Madaline敏感性近似计算研究[J].中国科学F辑,2011,41(2):157-172.
[12] Cheng A Y,Yeung D S.Sensitivity Analysis of Neocognitron[J].IEEE Transactions on System,M an and Cybernetics-Part C:Applications and Review s,1999,29(2):238-249.
[13] Shi D,Yeung D S,Gao J.Sensitivity Analysis Applied to the Contruction of Radial Basis Function Networks[J].Neural Networks,2005,18(7):951-957.
[14] Yang Jing,Liu Yanjun.Sensitivity Analysis of Spiking Neuron Synapse[C]//Proceedings of EMEIT'11. Harbin,China:[s.n.],2011:4310-4313.
[15] Zeng X,Yeung D S.A Quantified Sensitvity Measure for Multilayer Perceptron to Input Perturbation[J]. Neural Computation,2003,15(1):183-212.
[16] Yang S,Ho C,Siu S.Sensitivity Analysis of the Splitcomplex Valued Multilayer Perceptron Due to the Errors of the i.i.d.Inputs and W eights[J].IEEE Transactions on Neural Networks,2007,18(5):1280-1293.
[17] Yang S,Ho C,Siu S.Computation and Anlyziing the Sensitivity of M LP Due to the Errors of the i.i.d.Inputs and W eights Based on CLT[J].IEEE Transactions Neural Networks,2010,21(12):1882-1891.
[18] Yang Jing,Zeng Xiaoqin,Zhong Shuiming.Computation of Multilayer Perceptron Sensitivity to Input Perturbation[J]. Neuroncomputing,2013,99(1):390-398.
[19] 李贤平.概率论基础[M].北京:高等教育出版社,1997.
编辑索书志
Research on ComPutation Algotithm of Multilayer PercePtron Sensitivity to Weights Perturbation
YANG Jing1,XU Yan2,JIANG Ying1
(1.Zhuhai Cam pus,Beijing Norm al University,Zhuhai 519087,China;2.Nanjing Agricultural University,Nanjing 210095,China)
Multilayer Perceptron(MLP)sensitivity to weights perturbation reflects the change rule of the network output when network weights get disturbed.It is an important measure for research on learning mechanism.This paper systematically discusses the computation of the sensitivity to weights perturbation and proposes an approximation algorithm which computes the sensitivities layer by layer.The sensitivity is defined as the mathematical expectation of absolute output deviations due to weights perturbation.Firstly the algorithm com putes the sensitivities of the first layer and then the next layer which w ill use the former layer's results and finally gives the computation expressions of all the neurons and the whole network.This algorithm requests a weak assumption on the input,that is,input elements need only to be independent of each other.It also has low computation complexity and is more applicable to real applications. Experimental results demonstrate the proposed algorithm is highly accurate.
sensitivity;Multilayer Perceptron(M LP);weight;perturbation;expectation
杨 静,徐 彦,姜 赢.多层感知机权值扰动敏感性计算算法研究[J].计算机工程,2015,41(9):225-232.
英文引用格式:Yang Jing,Xu Yan,Jiang Ying.Research on Computation Algotithm of Multilayer Perceptron Sensitivity to Weights Perturbation[J].Computer Engineering,2015,41(9):225-232.
1000-3428(2015)09-0225-08
A
TP18
10.3969/j.issn.1000-3428.2015.09.042
国家自然科学基金青年基金资助项目(61403205)。
杨 静(1980-),女,讲师、博士研究生,主研方向:神经网络,模式识别;徐 彦,讲师、博士研究生;姜 赢,副教授。
2015-04-20
2015-05-19 E-m ail:yangjing@bnuz.edu.cn