对于金刚石锯片的BP神经网络,有一点是非常重要的。即对于任何的一个连续函数在其区间内都可以通过单隐层BP 网络逼近,而如果对于一个不连续的函数,则需两个隐含层用以形成输入信号转换和处理信号,其能力随着层数的增加而增加在有足够多的隐含层节点的情况下,输入模式总能转换为适当的输出模式。
但如果隐含层层数过多就会造成神经网络过于复杂,从而带来误差反向传播的计算程越复杂,从而训练时间增多,并且隐含层的增加还可能会使网络的权重难整到最小误差处。因此,本设计采用一个隐含层。
一般来说 , 确定隐含层神经元的数目需要根据神经网络设计者的经验和很多次试验来确定,因而不存在一个理想的解析式表示。因为隐含层神经元个数与测问题的要求,输入输出单元的数目有直接关系,隐含层神经元数过多会导致习时间过长、误差值不确定最佳,同时导致容错性差、无法识别之前没看到的样本。
一般来说, 可用经验公式n1 =(根号n+m)+a 来选择最佳隐含层神经单元数,其中,m 是输出神经元数, n 是输入单元数, a是[1,10]的常数。本书中 n=3, ,m=3, 取a分别为 1、 2、 3、 4, 因此隐含层神经元个数可以在 3~6 进行尝试。设置不同隐含层神经元个数, 预设误差精度 0.1, 分别经过网络训练。训练结束所得金刚石锯片神经网络法隐含神经元个数与误差的关系如图 8-27和图 8-30 所示。
从图 8-27和图 8-30 中可以看出 , 金刚石锯片神经网络法隐含层神经元个数应适当选择, 隐含层神元数过多会导致学习吋间过长、误差值不确定最佳,同时导致容错性差、无法识别之前没看到的样本。
综合上图,网络结构隐含层神经元个数与误差关系来当隐含层神经元个数为 4 时, 训练次数为 110 次时其误差就相对稳定了, 网络逼近效果最好。 因此金刚石锯片神经网络法隐含层神经元的个数定为5。