第6卷第2期 智能系统学报 Vol.6 No.2 2011年4月 CAAI Transactions on Intelligent Systems Apr.2011 doi:10.3969/i.i8sn.1673-4785.2011.02.002 前馈神经网络结构动态增长-修剪方法 张米娜,韩红桂,乔俊飞 (北京工业大学电子信息与控制工程学院,北京100124) 摘要:针对前馈神经网络隐含层神经元不能在线调整的问题,提出了一种自适应增长修剪算法(AGP),利用增长 和修剪相结合对神经网络隐含层神经元进行调整,实现神经网络结构的自组织,从而提高神经网络的性能.同时,将 该算法应用于污水处理生化需氧量(BOD)软测量,仿其实验结果表明,与其他自组织神经网络相比,AG具有较好 的泛化能力及较高的拟合精度,能够实现出水BOD的预测. 关键词:自适应增长修剪算法;BOD软测量;神经网络;自组织 中图分类号:TP183文献标识码:A文章编号:16734785(2011)020101-06 Research on dynamic feed-forward neural network structure based on growing and pruning methods ZHANG Mi'na,HAN Honggui,QIAO Junfei (College of Electronic and Control Engineering,Beijing University of Technology,Beijing 100124,China) Abstract:Due to the unchangable on-line problem of hidden neurons in feed-forward neural networks,an adaptive growing and pruning algorithm(AGP)was presented in this paper.This algorithm can insert and prune hidden neurons during the training process to adjust the structure of the network and achieve self organization of neural net- work structure,which can improve the performance of the neural network.Additionally,this algorithm has been applied to the biochemical oxygen demand(BOD)soft measurement of the wastewater treatment process.Experi- mental results show that the proposed algorithm can forecast the effluent BOD with better generalization ability and higher accuracy than other self-organizing neural networks. Keywords:adaptive growing and pruning(AGP);BOD soft-measurement;neural network;self organization 多层前馈神经网络是目前应用最广泛的神经网 剪算法在初始时构造一个有冗余节点的网络,逐渐 络之一,然而在解决实际问题时神经网络的结构需 删除对网络输出贡献较小的节点,以达到要求的误 要事先确定,且在训练过程中网络结构保持不变,这 差精度,是一种有效地去除冗余节点的方法.比较著 在很大程度上限制了网络的功能发挥.因此,神 名的修剪算法有最优脑外科算法(OBS)4.然而由 经网络结构自适应设计已成为当前神经计算科学中 于OBS只能修剪神经元间的连接,因此,对于初始 人们共同关注的问题2].一般来说,如果神经网络 规模较大的神经网络需要较长的调整时间.Philippe 的规模太小,网络对样本不能完全学习.如果网络的 等人[5]将扩展傅里叶振幅灵敏度算法(EFAST)运 规模过大,则会产生过拟合现象,降低网络的泛化能 用于神经网络结构简化中,通过计算每个隐含层神 力).因此,在设计神经网络的规模时需要根据实 经元输出值的灵敏度来确定每个隐含层神经元对输 际问题确定网络的结构, 出的贡献大小,直接剔除冗余神经元来对神经网络 近些年来,学者们提出了一些神经网络结构自 结构进行修剪,提高了修剪效率.但是修剪算法的不 组织算法,主要分为2类:修剪算法和增长算法.修 可避免的问题是需要确定网络初始规模的大小[6] 与修剪算法相反,增长法在初始时构造一个小规模 收稿日期:2010-04-22 基金项目:国家“863”计划资助项目(2007AA04Z160):国家自然科 的网络,根据实际问题的复杂程度逐渐增加隐含层 学基金资助项目(60873043);北京市自然科学基金资助项 的节点,直到满足误差要求.其中较著名的是按需求 目(4092010);高等学校博士点专项科研基金资助项目 (200800050004). 增长算法(grows when required,GWR)7,GWR每 通信作者:张米娜.E-mail:zhang.mi.na@163.com 次新增一个含有多个节点的网络模块(或子网络)
·102 智能系统学报 第6卷 根据网络性能要求逐渐增加复杂度.但是增长法容 含层神经元j的输入层权值:f为sigmoid函数.神经 易出现过度适应和不能有效提高网络性能等问题. 网络使用典型的梯度下降算法山对神经网络连接 由于单纯的增长、修剪算法在实际应用中会出 权值进行训练。 现上述问题,一些学者提出了增长修剪混合算法,利 传统3层前馈神经网络在初始结构确定后,训 用修剪机制避免网络的过度拟合,提高泛化能力,又 练过程中无法对其结构进行修改,这就限制了网络 可以通过增长机制提高网络的鲁棒性.自适应合并 的性能发挥。 增长算法(AMGA)就是一种增长修剪混合算法], 1.2自适应增长修剪算法 该算法在网络训练时根据隐含层节点的学习能力及 为了解决前馈神经网络结构自组织问题,提出 训练过程自适应地合并及增加神经元,以满足性能 了一种自适应增长修剪算法.该算法基于3层前馈 要求.该算法使用的是一种自适应的非贪心策略,能 神经网络,网络的输人及输出神经元数根据实际需 够避免网络陷入局部极小.AMGA在进行节点删减 要给定,隐含层神经元能够在线调整.该算法通过计 时,找到对网络输出贡献最小的节点,并将该节点和 算隐含层各个神经元对整个网络输出的贡献值来判 其对应的关联性最大的节点进行合并以产生一个新 断该神经元对神经网络的重要性大小,并将其相关 的节点.但是AMGA在网络训练过程中,每次增加 性较大的2个神经元合并,以达到精简网络的目的. 或删除节点后,均需要对网络进行完整地训练,运行 当隐含层神经元合并后,经过一定步数的训练依然 时间较长.AMGA对于分类问题能够较好地解决,但 不能满足需要的误差精度时,对网络再进行节点增 不适用于解决非线性函数的拟合问题, 长的操作,实现神经网络隐含层结构的自动调整,以 因此,前馈神经网络结构优化设计方法仍是一 获得规模合适、泛化能力较好的神经网络.神经网络 个开放的问题90.文中提出一种自适应增长修剪 的性能评价函数为 算法(AGP),通过判断隐含层神经元输出对误差的 E= 影响进行增长或修剪,实现神经网络结构的自组织, 2-月 最后,通过对非线性函数逼近和污水处理生化需氧 式中:y和2,分别为第v组样本的神经网络输出和 量(BOD)软测量证明了AGP的有效性 期望输出,V为总体样本数. 当神经网络的误差过大时,认为神经网络现有 1自适应增长修剪算法(AGP) 结构不能满足需要,在调整网络连接权值的同时调 1.1神经网络结构 整神经网络隐含层的结构,网络调整的依据是21: 自适应增长修剪算法以3层前馈神经网络为基 7-4/P (1) 础,神经网络结构图如图1所示 输入层 隐含层 输出层 式中:;为第j个隐含层神经元的显著性即第j个神 经元对整个网络输出的影响程度;4为第j个隐含 层神经元的强度;σ为强度的方差;V为总体样 本数.强度4为 T2 4=∑M 71 式中:M为神经网络每次循环后隐含神经元的输出 对整个神经网络的输出贡献值;T为前次调整时训 练步骤数;T,为当前调整时训练步骤数, 图1。前馈神经网络结构 由式(1)可以看出,当隐含层神经元对整个网 Fig.1 The structure of feed-forward neural network 神经网络有M个输入神经元,W个隐含层神经 络的显著性阈值为η仙时,将该节点与其对应的相关 元,一个输出神经元组成.该神经网络的输出可由下 性大且显著性高的节点进行合并,通过分别计算需 式表示: 要合并的2个节点所占显著性的比率,并将该比率 与权值相乘,得到新增节点的权值.如果神经元α和 y=∑of∑0gx) b需要合并,经过合并后,生成新的神经元m的权值 式中j=1,2,…,N;i=1,2,…,11,2,…,为神 由式(2)、(3)所示. 经网络的输人;y为神经网络的输出;0:和0为隐 0m=P.0a+P6+0h, (2)
第2期 张米娜,等:前馈神经网络结构动态增长-修剪方法 ·103· 0m=10a+106 (3) 2)判断网络误差是否满足终止条件,若满足则 式中:0n是新神经元m与第i个输入神经元间的连接 转8),否则转向3); 权值;wm是新神经元m与输出神经元间的连接权值; 3)计算隐含层神经元的显著性,将显著性小于 权值0与0是输入层第i个神经元与隐含层第a个 阚值η仙的神经元放人集合S中,否则转向7); 及第b个神经元之间的连接权值;0。与w,是输出层与 4)计算S集合中的神经元与非S集合神经元 第a个及第b个神经元之间的连接权值, 之间的相关性; 当经过节点“合并”后,神经网络依然不能满足 5)合并相关性较大的2个神经元,以产生1个 所要求的误差精度,该算法则假定隐含层的神经元 新的神经元,新神经元的初始连接权值根据式(2) 不足以完全对样本进行学习,此时需要对网络增加 和(3)设定; 节点.该算法在进行节点增长时采用了“细胞分裂” 6)重新训练网络,若网络误差能达到第1次训 的思想,该种增长机制可以看作是删除了一个节点, 练的水平,转2),否则转向7); 同时增加了2个新的节点.AGP在现有的隐含层神 7)若经过神经元合并后网络依然不能满足性 经元中挑选出显著性最高的神经元,以此作为“父 能要求,则增加1个新的隐节点,新增神经元的连接 节点”,将其分裂成若干个“子节点”,如隐含层神经 权值根据式(4)和(5)设定,转向2); 元a分裂成Q个新神经元,分裂后神经元的权值为 8)神经网络训练结束, Winer Win (4) 研究表明,AGP能够较好地调整神经网络的结 Wnes dpevWa (5) 构,通过对神经网络结构和参数的调整,最终获得的 三a=1,ew=12,,0 神经网络结构比较紧凑。 2仿真实验 式中:wa,是新神经元new与第i个输人神经元间 的连接权值;wm是新神经元new与输出神经元间 为了验证AGP的有效性和高效性,将AGP用 的连接权值;权值wn是输入层第i个神经元与隐含 于非线性函数逼近及污水处理过程BOD的预测中, 层第a个之间的连接权值;w。是输出层与第a个神 并与GWR7]和AMGA[8]算法相比较,证明了该算法 经元之间的连接权值.AGP通过“细胞分裂”的方式 具有较高的函数拟合精度及较好的泛化能力 增加新的节点,能够保留“父节点”及“子节点”之间 2.1神经网络结构优化算法的非线性函数逼近 的关联性,减小结构调整引起的误差 利用AGP对非线性函数进行逼近,所采用的非 在设计神经网络的结构时,AGP不同于普通的 线性函数为 神经网络结构调整算法的关键一点在于,隐含层神 f)=2.5xnico8. 经元的修剪不是简单的“删诚”,而是通过合并隐含 层的节点以减少冗余神经元.该合并机制相当于删 式中:x∈[1,2π].实验采用64组数据作为训练样 除了2个节点,同时又增加了1个新的节点,同时, 本,36组为测试样本,初始隐含层神经元个数为12 神经网络结构的增长也不是每一次调整只增加1个 个,经过神经网络优化算法进行网络训练,剩余隐节 神经元,而是根据神经元的显著性大小给定新增神 点个数为8个.图2显示神经网络对非线性函数的 经元的多少 逼近效果图,图3显示神经网络对非线性函数逼近 1.3神经网络结构优化算法流程 的误差曲线,训练过程中误差变化曲线如图4所示, 本文提出的神经网络结构优化算法在结构设计 与GWR算法及AMGA算法的详细比较结果如表1 上采用的是一种根据隐含层神经元的显著性调整神 所示. 经网络达到目标误差的策略,合并及增加神经元,可 表13种优化算法性能比较 Table 1 Performance of the three algorithms 以避免初始神经网络设计过大或者过小的问题.该 训练 算法初始时构造一个3层前馈神经网络,隐含层神 优化后测试训练 优化算法 神经元误差步长时间/s 经元数为较小自然数,采用BP学习算法及对网络 AGP算法 8 0.03 3729 11.8 进行训练 AMGA算法 10 0.09 6508 16.3 AGP的具体步骤如下: 1)创建一个初始的前馈神经网络,用BP算法 GWR算法 10 0.165328 13.4 进行训练;
·104 智能系统学报 第6卷 由图2和图3可以看出,AGP能够较好地对非线2.2神经网络结构优化算法的B0D软测量应用 性函数进行拟合,具有较好的拟合精度,通过与其他结 由于污水处理过程机理复杂,且具有非线性、大 构调整算法的比较不难发现,达到相同设定误差时, 时滞等特性.为了使污水处理系统运行良好,获得更 AGP具有更快的训练速度和简单的网络结构. 好的出水水质,并及时取得污水处理过程中一些重 15 要的过程参数和水质参数,以此对污水处理系统进 一啊数输出 10 --…AGP输出 行实时控制.其中,生化需氧量BOD是一种用微生 物代谢作用所消耗的溶解氧的量来间接表示水体被 有机物污染程度的一个重要指标.目前,B0D的测 量很难由仪器直接完成.传统的方式为五日生化需 -5 氧量法,但获得测量结果严重滞后.因此,可采用软 -10 测量的方式实现.通过一些容易测得的数据对不可 -15 4 6 7 测变量进行预测,并利用神经网络建立软测量模型. 在仿真实验中,利用AGP及其他结构调整算法 图2AGP算法对函数逼近效果 对污水处理过程中的生化需氧量BOD进行预测,并 Fig.2 The fitting chart of nonlinear function based on 将实际数据与神经网络的预测数据进行对比, AGP algorithm 本实验数据来源于2005年昆明市某小型污水 处理厂数据日报表,得到的实际数据经过误差处理 0.20 及主元分析后,神经网络的输入参量为:进水量Q、 pH值、进水COD、悬浮物SS及总氨TN,神经网络的 0.16 输出为出水B0D.实验中神经网络结构为524-1,模 0.12 型结构图如图5所示。 输入层 隐含层 输出层 0.08 0.04 3 45 6 COD BOD 图3AGP算法对非线性函数逼近的绝对误差曲线 Fig.3 Absolute error of the nonlinear function based on AGP algorithm 24 100 图5前馈神经网络结构图 Fig.5 The structure of feed-forward neural network 60 实验中训练样本为56组,测试样本为24组. AGP算法与AMGA算法都选择相同的初始隐含层 40 神经元个数18个,GWR算法的初始隐含层神经元 20 个数为3个,网络训练的目标误差均为0.01.图6 显示神经网络对出水B0D的预测效果图,图7显示 510152025303540×10 神经网络对出水BOD的预测结果与实际出水BOD 训练步数 之间的误差,训练过程中误差变化曲线如图8所示, 图4AGP算法对网络的训练误差曲线 图9所示为AGP算法训练过程中隐含层神经元调 Fig.4 Error value during the training process of AGP 整过程.3种算法的实验结果相关数据的详细比较 algorithm 如表2所示
第2期 张米娜,等:前馈神经网络结构动态增长一修剪方法 ·105- 表23种优化算法性能比较 90 Table 2 Performance of the three algorithms 80 70 优化后 测试 训练 训练 0 优化算法 神经元 误差 步长 时间/s 50 40 AGP算法 12 0.046 6358 23.8 AMGA算法 13 0.125 7815 26.6 0 10 GWR算法 140.1927627 28.7 0 34 5 62*10 仿真实验表明,当训练结束时,AGP的剩余神 训练步数 经元个数比AMGA算法和GWR算法略少,且需要 图8AGP算法对网络的训练误差曲线 的训练步长少.利用训练后的神经网络对样本进行 Fig.8 Error value during the training process of AGP 测试时,检测误差也比AMGA算法和GWR算法的 algorithm 检测误差小.图6和图7表明AGP能够很好地预测 出水BOD的值(实线表示实际出水BOD,虚线表示 20 网络预测输出BOD),证明了基于AGP算法的模型 的有效性.表2中所示3种优化算法性能比较,AGP 算法与AMGA算法及GWR算法相比,测试误差的 精度有所提高.在训练时间上虽没有较明显的优势, 但由于污水处理过程时间较长,对出水参数预测时 6358 神经网络的训练时间较长对其影响不大. 234 5 2×10 训练步数 一出水实测BCD …AGP输出BCD 图9AGP算法隐含层神经元调整过程图 Fig.9 The adjusting process of hidden layer neurons 3结论 提出了一种神经网络结构自适应增长修剪算法 (AGP),该算法能够在线调整神经网络结构,从而 1015 20 25 提高神经网络的性能.将AGP应用于非线性函数进 测试样本组号 行逼近和污水处理过程BOD软测量中,取得较好的 图6AGP算法预测BOD出水值结果 效果,通过与AMGA算法和GWR算法进行比较, Fig.6 The predictive effluent BOD based on AGP al- AGP具有如下的优点: gorithm 1)能够根据实际问题的复杂程度,对网络结构 0.40 自动调整,解决了一般前馈神经网络结构不能在线 0.35 调整的问题. 2)AMGA算法和GWR算法相比,AGP具有更 少的训练步长、较短的训练时间以及更简单的网络 0.15 结构 0.10 3)具有较好的泛化能力及更高的拟合精度,能 0.05 够对生化需氧量BOD实现有效的预测,在解决污水 1015 20 25 处理过程参数的预测问题上更具有一定的实用性, 测试样本组号 参考文献: 图7AGP算法的BOD预测值与实际值绝对误差曲线 Fig.7 Absolute error of the real effluent BOD and pre- [1]乔俊飞,张颗。一种多层前馈神经网络的快速修剪算法 dictive value based on AGP algorithm [J].智能系统学报,2008,3(2):173-176. QIAO Junfei,ZHANG Ying.Fast unit pruning algorithm for
·106. 智能系统学报 第6卷 multilayer feedforward network design[J].CAAI Transac- [11]RUMELHART D E,HINTON G E,WILLIAMS R J. tions on Intelligent Systems,2008,3(2):173-176. Learning internal representations by error propagation [2]杨慧中,王伟娜。神经网络的两种结构优化算法研究 [M].Parallel Distributed Processing.Cambridge,USA: [J].信息与控制,2006,35(6):700-704, MIT Pre8,1986:318362. YANG Huizhong,WANG Weina.Two structure optimiza- [12]韩红桂,甑博然,乔俊飞.动态结构优化神经网络及其 tion algorithms for neural networks[J].Information and 在溶解氧控制中的应用[J].信息与控制,2010,39 Control,2006,35(6):700-704. (3):354-360. [3]BORTRMAN M,ALADIEM M.A growing and pruning HAN Honggui,ZHEN Boran,QIAO Junfei.Dynamic method for radial basis function networks[J].IEEE Trans- structure optimization neural network and its applications to action on Neural Networks,2009,20(6):1039-1045. dissolved oxygenic (DO)control [J].Information and [4]HASSIBI B,STORK D G.Second order derivatives for net- Control,2010,39(3):345360. work pruning:optimal brain surgeon [C]//Advances in [13]PENG Jianxun,LI Kang,HUANG Deshuang.A hybrid Neural Information Processing Systems.San Mateo,USA: forward algorithm for RBF neural network construction Morgan Kauffman,1993:164-171. [J].IEEE Transactions on Neural Networks,2006,17 [5]LAURET P,FOCK E,MARA T A.A node pruning algo- (6):1439-1451. rithm based on a Fourier amplitude sensitivity test method 作者简介: [J].IEEE Transactions on Neural Networks,2006,17 张米娜,女,1986年生,硕士研究 (2):273-293. 生,主要研究方向为神经网络结构优化 [6]XU Jinhua,DANIEL W.A new training and pruning algo- 设计、智能控制理论与应用. rithm based on node dependence and Jacobian rank defi- ciency[J].Neurocomputing,2006,70(1):544-558. [7]MARSLAND S,SHAPIRO J.A self-organizing network that grows when required[J].Neural Networks,2002,15(8): 1041-1058 韩红桂,男,1983年生,博士研究 [8]ISLAM M,SATTAR A,AMIN F,YAO Xin.A new adap- 生,主要研究方向为智能信息处理、智 tive merging and growing algorithm for designing artificial 能控制理论与应用。 neural networks[J].IEEE Trans Systems,Man,Cybemet- ics-Part B:Cybemetics,2009,39(3):705-722. [9]QIAO Junfei,HAN Honggui.A repair algorithm for RBF neural network and its application to chemical oxygen de- mand modeling[J].International Joural of Neural Sys- 乔俊飞,男,1968年生,教授,博士, tem3,2010,20(1):63-74. 主要研究方向为神经网络结构分析与 [10]JOHNSON C,VENAYAGAMOORTHY G K,MITRA P. 设计、计算智能与智能优化控制. Comparison of a spiking neural network and an MLP for ro- bust identification of generator dynamics in a multimachine power system J].Neural Networks,2009,22 (5/6): 833841