第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 进行训练;