收藏 分享(赏)

BP 神经网络学习算法的研究.doc

上传人:dreamzhangning 文档编号:2694324 上传时间:2018-09-25 格式:DOC 页数:8 大小:177.50KB
下载 相关 举报
BP 神经网络学习算法的研究.doc_第1页
第1页 / 共8页
BP 神经网络学习算法的研究.doc_第2页
第2页 / 共8页
BP 神经网络学习算法的研究.doc_第3页
第3页 / 共8页
BP 神经网络学习算法的研究.doc_第4页
第4页 / 共8页
BP 神经网络学习算法的研究.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、 BP 神经网络学习算法的研究刘彩红 1(西安工业大学北方信息工程学院,西安)摘 要:(目的)本文针对 BP 算法收敛速度慢的问题,提出一种改进的 BP 算法。 (方法)该算法结合生物神经元学习与记忆形成的特点,针对特定的训练样本,只激发网络中的部分神经元以产生相应的输出,而未被激发的神经元产生的输出则与目标输出相差较大,那么我们只需要对未被激发的神经元权值阈值进行调整。利用距离来度量训练样本与神经元权值之间的关系,可以找到未被激发的神经元。所以本论文提出的算法是对局部神经元权值阈值的调整, (结果)通过实验表明该算法有助于加快网络的学习速度。关键词:BP 神经网络,学习算法,距离,权值阈值调

2、整The Study of Algorithm of BP Neural NetworkLIU Cai-hong(Xian Technological University North Institute of Information Engineering ,Xian China)Abstract:The paper proposed an improved BP algorithm. According to the characteristics of biological neuron in learning and memory formation, only some neuron

3、s were stimulated to produce the output for the specific training samples, while the other part of the neurons werent stimulated. There are large difference between this part of the neurons output and target, and then we need this part neurons weight and threshold value to adjust. Use to measure the

4、 distance from the training sample and the relationship between the weights of each neuron, can find not stimulated neurons.Therefore the algorithm proposed in this paper only adjust the weight and the threshold value of the local neurons, and this can accelerate the learning speed of the network.Ke

5、ywords: BP Neural Network, Learning Algorithm, , Distance, Weight and Threshold Adjustment1 引言传统BP 算法是一种利用实际输出与期望输出之间的误差对网络的各层连接权值和各结点的阈值由后向前逐层进行校正的一种监督式学习方法。它根据最小二乘原理和梯度搜索技术,将学习过程分为输入样本的正向传播和误差的反向传播两个阶段。输入样本从输入层传递给隐藏层各结点,经过各隐藏层用激励函数逐层处理后传递给输出层,若输出层的实际输出与期望输出的误差达不到预定要求,则将误差沿着原连接通路反向传播,同时根据误差来调整各层的连接

6、权值和阈值,使实际输出与期望输出的误差逐渐减小。传统BP(Back Propagation)算法的性能依赖于初始条件,学习速度慢,学习过程易陷入局部极小。近年来,人们根据实际应用的需要对传统BP算法做了许多改进,主要有采用自适应学习率、与遗传算法结合 1-2和可调隐层结构 3-4等,这些方法在一定程度上优化了BP 算法。但以往大多改进算法,在误差的反向传播阶段也就是训练的第二阶段,是对所有神经元的权值阈值都进行修改的。针对不同的输入,神经网络激发不同的神经元,所以可以在训练的第二阶段修改部分神经元的1资助项目:西安工业大学北方信息工程学院院长科研基金项目(B XXJJ-1112)作者简介:刘彩

7、红(1980-),女,陕西人,硕士研究生,研究方向为人工神经网络及其应用。Email: rainbow_ 手机: 1360 925 0662; 权值阈值。但本文对此的研究目前仅限于只有一个隐层的BP神经网络。2 基于局部权值阈值调整算法的改进思想神经网络学习的过程,实际上是根据一定的学习算法调节网络中各连接权值的过程。这是因为,神经网络是通过神经元之间的连接,来存储信息或知识的 6。也就是说,神经网络学习得到的知识是存储在连接权上的。并且依据生物神经元学习与记忆形成的特点 5,针对特定的训练样本,只激发网络中的部分神经元以产生相应的输出,而未被激发的神经元产生的输出则与目标输出相差较大,那么我

8、们就需要对未被激发的神经元的权值阈值进行调整。对于一个神经元是否被激发,可以通过训练样本和该神经元权值之间的关系,来确定该神经元是否被这些特定的训练样本所激发,从而可以得知网络每次学习过程中需要调节哪一部分神经元。所以本文提出的改进BP算法中对隐层神经元权值阈值的调整就只是对未被激发的隐层神经元进行调整,而不是传统的BP算法需要对所有隐层神经元进行调整。3 提出的改进BP算法3.1提出的算法描述本文提出的改进BP算法具体描述如下:(1)所有的输入层神经元无条件为获胜神经元。(2)隐层的神经元之间进行竞争。考察输入向量和隐层神经元与输入层的权值即 之间的关系,ijW关系较远的隐层神经元未被激发。

9、因为关系较远,说明神经元记忆的内容 与输入向量之间的差距较ij大,则它的输出值就会和目标值有所偏离,所以需要调整与它相连的权值阈值,那么该神经元就是竞争获胜的隐层神经元。(3)所有的输出层神经元无条件为获胜神经元。对BP神经网络的学习算法进行如下修改:针对训练样本,神经元权值阈值的调整只发生在获胜神经元相连的路径上。传统BP神经网络中,针对每个训练样本需要对网络中所有神经元的权值阈值进行调整。3.2 距离和相似系数训练样本和神经元权值这两个变量之间的关系,可以通过距离和相似系数进行度量,那么在隐含层神经元的竞争中就需要用到距离和相似系数,这里加以简单介绍,具体可以参见 7。要研究变量之间的关系

10、,目前用得最多的方法有两个:一种方法是用相似系数,性质越接近的变量,它们的相似系数的绝对值越接近1,而彼此无关的变量,它们的相似系数的绝对值接近于零。另一种方法是将一个向量看作P维空间的一个点,并在空间定义距离,距离越近的点归为一类,距离较远的点归为不同的类。但相似系数和距离有各种各样的定义,而这些定义与变量的类型关系极大。由于实际问题中,遇到的指标有的是定量的(如长度、重量等),有的是定性的(如性别、职业等),因此将变量(指标)的类型按间隔尺度、有序尺度和名义尺度这三种尺度来划分。不同类型的变量,在定义距离和相似系数时,其方法有很大的差异,使用时必须注意。对于间隔尺度的距离,可以通过明氏(M

11、inkowski)距离公式来度量。对相似系数这里不再作介绍。明氏(Minkowski)距离1/1()qpij iajdqx当 时即绝对距离1()pij iajdx当 时2q即欧氏距离21/1()pij iajdx当 时q即切比雪夫距离1()maxij ijapd当变量的测量值相差悬殊时,采用明氏距离并不合理,常需要先对数据标准化,然后用标准化后的数据计算距离。明氏距离特别是欧式距离,是人们较为熟悉的也是使用最多的距离。但明氏距离存在不足之处,主要表现在两个方面:一,它与各指标的量纲有关;第二,它没有考虑指标之间的相关性。另外还有马氏(Mahalanobis)距离、兰氏(Canberra)距离,

12、和明氏距离一样,它们的定义都是适用于间隔尺度变量的,如果变量是有序尺度或名义尺度时,也有一些定义距离的方法。具体应用时,要注意根据变量的类型选择合适的度量公式。本文的实验中用到的数据没有量纲的差距,并且也都只有一两个指标,所以选用欧氏距离作为度量公式。3.3 提出算法的训练过程基于局部权值阈值调整的BP算法,是在传统BP算法的第二阶段加入了隐层神经元的竞争,权值阈值的调整就只发生在与获胜神经元相连弧线的路径上。改进算法的具体步骤如下:1对权系数 置初值。ijW对各层的权系数 置一个较小的非零随机数,但其中 。,1inW2输入一个样本 ,以及对应期望输出 。12(,)nX 12(,)nY3计算各

13、层的输出对于第k层第i个神经元的输出 ,有:ikX, , 11nkiijjUW1kn,1inW()kkiiXf4计算学习误差(1)计算输入向量和隐层神经元与输入层的权值即 之间的距离,距离较大的隐层神经元就为ij竞争获胜的神经元。(2)求各层的学习误差 。kid对于输出层有km,有 (1)()miiiiidXY对于隐层,仅计算获胜神经元的学习误差,i为获胜神经元。1()kkkkiiililWd5修正局部权系数 和阀值ij只调整与获胜神经元相连弧线的权值和阀值1(1)()()kijijijijWttdXt其中: kij ijijWt6当求出了各层各个权系数之后,可按给定品质指标判别是否满足要求。

14、如果满足要求,则算法结束;如果未满足要求,则返回(3)执行。这个学习过程,对于任一给定的样本和期望输出 都要执行,直到满足所有输入输出要求12(,1)pppnXX 12(,)ppnYY为止。3.4 讨论提出算法的局部调节性可用图1简单说明,图1中,灰色隐层神经元是获胜神经元,每一次学习过程对学习误差、权值的调节量以及权值的调节就只是对图中实线相连的部分,虚线的部分就不做调节。原BP算法在每一次输入输出之后更新网络的所有权值,每次都需调整从输入层到隐层的(n+1)图 1 隐层神经元竞争示意图N个连接权和隐层到输出层的(N1)m个连接权。设p为选择的隐节点数(1pN)。用改进的训练算法对网络进行学

15、习,每次仅需调整输入层到隐层的(n+1)p个连接权和隐层到输出层的(p1)m个连接权。提出训练算法在每次输入输出之后,仅需更新选择的隐单元参数。4 仿真实验在本节,我们进行仿真实验,用本章提出的算法和传统的BP算法进行对比。给出两个例子:第一个是函数逼近的例子,第二个是三分类的例子。4.1 函数逼近的例子本实例用函数逼近问题来评价提出的算法的性能。考虑如下Hermit多项式的逼近问题: 22()1.()exp()Fxx训练样本产生方式如下:样本数为N=100,其中样本输入 服从区间 内的均匀分布,样本ix4,输出为 , 为添加的噪声,服从均值为0,标准差为0.1的正态分布。产生的目标函数和一(

16、)iiei组训练样本(即图中的“+”)如图2所示。本实验中的训练样本只有一个指标,所以选用度量训练样本和神经元权值之间关系的距离公式为: 2djiji x构建的网络结构为:1个输入节点,10个隐节点和1个输出节点。学习率为0.003,用一组较小的随机数初始化提出算法的网络和传统BPNN的权值。用期望输出和实际输出的差的平方和,作为训练误差和泛化误差。两种算法的学习误差曲线,如图3所示。-4 -3 -2 -1 0 1 2 3 4-0.500.511.522.53input xoutput y图 2 网络训练结果图表 1 提出的算法性能(函数逼近的例子)Table 1 Performance of

17、 the prposed algorithm(approximation problem)学习算法 Learning method收敛时间 Total time of convergence(s)训练次数Number of itreations泛化误差Generaralization eror传统 BP 算法 BP algorithm27.016 14114 0.1461提出算法improved algorithm17.68 6133 0.0667从图2、图3和表1可以看出,提出算法的收敛速度比传统BP算法要快。训练时,设定的固定训练次数为:20000,最小误差为:0.85,传统BP算法收敛的

18、次数是14114,提出算法的收敛次数是6133,是传统BP算法收敛速度的2.3倍。并且提出算法的泛化误差也要小一些。4.2 三分类的例子这是一个两概念(一个三角形和一个矩形)学习的例子,是Cohn三角形概念学习例子的推广,是一个典型的多分类例子。在 范围内随机产生200个均匀分布的样本,如图44所示。(2,),规定三角形内的样本属于 类(“+”),矩形内的样本属于 类(“”),其余样本属于 类c3c1c(“”)。用一个2输入3输出的3层BP网对3类样本进行学习,网络的隐节点数选为10。令 类样本的目标1输出为 , 类样本的目标输出为 , 类样本的目标输出为 。1 0T2c0 1T3c0 T本实

19、验中的训练样本只有两个指标,选用度量训练样本和神经元权值之间关系的距离公式为: 2121a)(djaiji x图 3 学习误差变化曲线图传统 BP 算法提出的算法学习参数设置如下:神经网络隐层和输出层采用标准Sigmoidal激活函数,学习率为0.1,目标误差为0.05,初始权值和偏移值取-0.1,0.1内随机值。表2 提出的算法性能(三分类的例子)Table 2 Performance of the prposed algorithm(Three classification)学习算法Learning method收敛时间 Total time of convergence(s)训练次数Nu

20、mber of itreations泛化误差Generaralization eror传统 BP 算法BP algorithm21.759 7239 0.0738提出算法improved algorithm14.381 2956 0.0544青绿色线:传统 BP 算法黑色线: 提出的算法图 5 学习误差变化曲线图-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-2-1.5-1-0.500.511.52Input xInput y图 4 应用提出算法的网络训练结果图从图5和表2可以看出,提出算法的收敛速度比传统BP算法要快。训练时,设定的固定训练次数为:10000,最小误差为:0.05

21、。传统BP算法收敛的次数是7239,提出算法的收敛次数是2956,是传统BP算法收敛速度的2.4倍。并且提出算法的泛化误差也要小一些。5 结论本文提出了一种改进的BP神经网络学习算法,即基于局部权值和阈值调整的BP算法,并且通过函数逼近和三分类的实验与传统的BP算法来进行对比。由实验结果我们可以得出以下结论:基于局部权值和阈值调整的BP算法可以提高三层BP网络的收敛速度,但对大型网络有待进一步的实验和研究。参考文献:1 Ang JH, Tan KC, Al-Mamun A. Training neural networks for classification using growth pro

22、bability-based evolution J.Neurocomputing (S0925-2312), 2008, 71(16-18): 3493-3508.2 Ling SH, Lam HK, Leung FHF, Lee YS. An Improved Genetic-Algorithm-Based Neural-Tuned Neural Network J. International Journal of Computational Intelligence and Applications (S1469-0268),2008, 7(4): 469-492.3 Luchetta

23、 A . Automatic generation of the optimum threshold for parameter weighted pruning in multiple heterogeneous output neural networks J. Neurocomputing (S0925-2312), 2008, 71(16-18): 3553-3560.4 Ni J, Song Q. Dynamic pruning algorithm for multilayer perceptron based neural control systems J. Neurocomputing (S0925-2312),2006, 69(16-18): 2097-2111.5 Leon G. Reijmers, Brian L. Perkins. Science JLocalization of a Stable Neural Correlate of Associative Memory,2007,317(598): 1230-12336 廖晓峰,李传东神经网络研究的发展趋势J 国际学术动态, 2006(5): 43-447 于秀林,任雪松多元统计分析M 中国统计出版社 .1999. 61-66

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报