首页 > 范文大全 > 正文

前馈型神经网络算法优化分析

开篇:润墨网以专业的文秘视角,为您筛选了一篇前馈型神经网络算法优化分析范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要 文章介绍了人工神经网络的模型,分别以BP神经网络为例介绍了前馈神经网络,并用三种方法对BP神经网络算法进行优化改进。

关键词 神经网络;BP;优化算法

中图分类号:TP183 文献标识码:A 文章编号:1671-7597(2014)13-0066-01

1 人工神经网络模型

人工神经网络简称ANN,它是一种将人类大脑的组织结构和运行机制作为其研究基础来模拟人类大脑内部结构和其智能行为的处理系统。人工神经网络中的神经元细胞将其接收到的所有信号进行处理,如加权求和等操作,进行操作后经轴突输出。

2 人工神经网络的分类

2.1 前馈型神经网络

前馈型神经网络通过对其网络中的神经元之间的连接关系进行复合映射,因此这种网络模型具有非常强的非线性处理的能力。如图1所示,在这里前馈型神经网络模型被分为三层,分别为输入层、输出层和隐含层,一般常用的前馈型神经网络有BP神经网络、RBF神经网络、自组织神经网络等。

图1 前向神经网络模型

2.2 反馈型神经网络

反馈型神经网络其结构,在这个模型中我们假设网络总的神经元个数为N,则每个神经元节点都有N个输入值及一个输出值,每个神经元节点都如此,节点之间相互联系。现在被大量使用的反馈型神经网络一般有离散Hopfield神经网络模型、Elman神经网络模型等等。

3 BP神经网络

3.1 BP神经网络简介

1986年,Rumelhant和McCelland提出了BP神经网络的一般模型,BP神经网络是一种具有多层网络的反向传播学习算法。BP神经网络模型的基本思想是:整个过程主要由信号的正向传播和误差的反向传播两个过程组成。目前,BP神经网络的应用范围为数据压缩、数据分类、预测分析和模式识别等领域。

3.2 BP神经网络的结构

如图2所示,这里是BP神经网络的一种模型结构,在这种模型结构中输入信号量为m,具有隐含层的数量为j,输出信号量为q的模型结构。

BP神经网络一般具有一个或多个隐含层单元,其差别主要体现在激活函数的不同。针对BP神经网络所使用的激活函数一

图2 BP神经网络模型结构

般采用S型对数函数或者采用正切激活函数,而输出层则一般采用线性函数作为激活函数。

3.3 BP神经网络的改进方法

BP神经网络作为当今对研究电力负荷预测应用最多的一种神经网络,但标准的BP神经网络算法存在的一些缺陷,这里就对一些经常使用的典型改进方法进行描述。

1)增加动量项。在一般的BP神经网络算法中,其模型中的各层权值在进行更新的过程中,是按照t时刻误差曲线进行梯度下降方式进行调整的,在这里并没有考虑其之间的梯度下降的方向,如果使用这种方式进行调整则会造成训练的过程不稳定,容易发生振荡,导致收敛过程缓慢的结果。因此有些学者就为了使网络训练的速度提高,收敛过程加快,就在一般网络模型的权值更新环节添加了一个动量项因子即:

(1)

在这个式子中,W表示BP神经网络中每一层的权值矩阵,O则表示神经网络中每一层的输出向量矩阵,α则被称为该神经网络的动量系数因子,其取值范围在0到1之间,在该网络在进行训练的过程中,如果其误差梯度网线出现了局部极小值现象,虽然在这里的第一项会趋搂于零,但是这一项,

这样就会使该训练过程避免了限入局部极小值区域的形势,从而加快了其训练速度,使该神经网络收敛速度加快,因此这种带有动量项因子的BP神经网络算法应用到了很多的BP网络中。

2)学习速度的自适应调节方法。学习速度η在一个标准的BP神经网络中是以一个常数出现的我们也称为之步长,而在实际的运算过程中,很难找到一个数值作为最优学习速度。我们从误差曲面图形中可以看出,当曲面中区域处于一个平坦区域时,我们需要设置一个比较大的η值,使它能够跳出这个平坦的区域;而当曲面中的区域处于变化比较很大的区域时,这时的η的数值我们又需要将其进行减小或者增大操作。自适应调整学习速度η则可以根据网络的总误差来进行自我调整,在网络经过多次调整后,如果E总继续上升,则表明这里的调整是无效的,且η=βη, ;而经常调整这里的E总下降了,则表明这里的调整是有效果的,且η=αη,。

3)引入陡度因子(防止饱和)。在网络训练的过程中,由于其误差曲面具有平坦区,当处于这个区域时,由于S型激活函数有饱和特性,促使权值的调整速度放慢,从而影响了调整的速度。在训练的过程中,如果算法调整进入了这个区域,我们可以减小神经元的输入量,使其输出值迅速脱离激活函数的饱和区域,这里误差函数的数值则会随之发生改变,其权值的调整也就脱离了该平坦区。想要实现以上思路则需要在激活函数中引入一个陡度因子λ。

(2)

当趋近于0时,而数值较大时,调整其进入误差曲面中的平坦区,此时λ的值应选择大于1的数值;而当调整脱离平坦区域后,再设置λ大于1,使激活函数能够恢复到原始数值。

4 总结

综上所述,设计一个人工神经网络应用到实际问题中,可以归结为网络自身权值参数的学习与合理的设计网络拓扑结构这两大类优化问题。由于人工神经网络的训练是一个非常复杂的问题,使用传统的学习算法进行训练则要花费很长的时间,BP算法用到了梯度下降法,才只能在一定范围内找到合适的参数值及其模型结构。因此,为了更好的提高神经网络的泛化能力,及将网络拓扑结构设计的更加合理,大量关于神经网络的优化算法相继产生。

参考文献

[1]谢宏,陈志业,牛东晓.短期电力负荷预测的数据主成分分析[J].电网技术,2000,24(1):43-46.

[2]颜七笙,游泳,杨志辉.BP网络结构设计与算法探讨[J].科技广场,2005(3):36-38.