BP神经网络收敛性问题的改进措施

更新时间:2023-05-12 04:16:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

BP神经网络的改进方法及具体措施

第24卷 第1期Vo124No1重 庆 交 通 学 院 学 报

JOURNALOFCHONGQINGJIAOTONGUNIVERSITY

2005年2月Feb.,2005

BP神经网络收敛性问题的改进措施

贺清碧, 周建丽

(重庆交通学院计算机及信息工程学院,重庆400074)

Ξ

摘要:BP算法现在已成为目前应用最广泛的神经网络学习算法,它在函数逼近、模式识别、分类、数据压缩等领域有着更加广泛的应用,但存在收敛较慢问题.笔者在文中简述了BP算法原理,针对BP算法的收敛性问题,提出了几点改进措施.

关 键 词:BP神经网络;BP算法;收敛性

中图分类号:TP183  文献标识码:A  文章编号:10012716X()203

权值连接而成.存储、,力.,BP算法是神经网络众多算法中应用最为广泛的一种,它在函数逼近、模式识别、分类、数据压缩等领域有着更加广泛的应用.其结构简单,可操作性强,能模拟任意的非线性输入输出关系.据统计有近90%的神经网络应用是基于BP算法的.但它存在学习收敛速度慢、容易陷入局部极小点而无法得到全局最优解、且对初始权值的选取很敏感等缺点.基本的BP算法应用于大多数实际问题时都显示太慢,训练将花去数天甚至数星期的机时.所以收敛性问题成为BP算法的实出问题.针对此问题,目前国内外已有不少人对

[1~5]

BP网络进行了大量的研究.本文在众人研究上,针对BP算法的收敛性问题提出了几点改进措施.

图1 典型的三层前馈网络模型

n-1pl

Σ(tl-ylpl)2Epl=

2l=0

对于p个样本学习,其总误差为:

pn-1pl

ΣΣ(tl-ylpl)2E总=

2pl=1l=0

ΔW′采用梯度法,通过每次调整的增量ΔWij、ik

使总的误差向减小的方向变化,直到满足一定的条

件.通过解算,第n0+1次与第n0次的关系为:

lΣδW′ik(n0+1)=W′jk(n0)+ηjkx′j,

p

ppl

1 BP算法

BP网络的学习算法称为反向传输算法(Back2

Progagation),即BP算法,是一种有教师的学习算法.

l

p=1

l

ll

Wij(n0+1)=

Wij(n0)+ηΣδjkxj,

p

pp

p=1

图1是一典型的三层前馈网络.

12p

若输入学习样本为p个,x,x,…,x已知与

12p

其对应的教师为t,t,…,t,学习算法是用实际的

12p12p

输出y,y,…,y与t,t,…,t的误差来修改其连

ii

接权和阈值,使y与要求的t尽可能地接近.第pl

个样本输入到图1的网络中,得到yl,l=0,1,…,n-1,其误差为各输出单元误差之和:

Ξ

pl

δ=(t-y)y(1-y)

ppplllδ=ΣδjkW′jkx′j(1-x′j)

k=0

p

l

式中,δ,δjk称为等效误差分量;η为学习速率.由上式显示,误差逆向传播,故有BP(Backpropagation)名称.权值的修改过程是一个迭代过

pljkpljk

n-1

pljkpllpllpllpll

程,即

收稿日期:2004203208

作者简介:贺清碧(1970-),女,重庆涪陵人,讲师,主要方向:神经网络,数据挖掘,算法与应用.

BP神经网络的改进方法及具体措施

               重庆交通学院学报             第24卷144

llΣδW′jk(n0+1)=W′jk(n0)+ηjkx′j

p

pp

权和的结果使ΔWij(n0)减小,因而起到了稳定作用.

213变步长法

变步长法的基本思想为:先设一初始步长,若一次迭代后误差函数J增大,则将步长乘以小于1的常数,沿原来方向重新计算下一个迭代点;若一次迭代后误差函数J减少,则将步长乘以小于1的常数.

假设传统的BP算法权值修正公式为

0)

ΔW=Wij(n0+1)=Wij(n0)+η

9Wij(n0)

(1)

p=1

l

ll

Wjk(n0+1)=Wjk(n0)+ηΣδjkxj

p

pp

p=1

l

lBP算法特点就是在反向传播等效误差量δl

p

ppll

时,δl地位相似于正向传播中的输出yl,因此给计

算带来了很大方便.BP算法如下进行:

(1)正向传播,计算输出和总误差E;

pl(2)反向传播误差δWij;l,计算Δ

(3)修改权值Wij,然后回到(1)循环往复,直到

达到E的最小值点,实际计算中,常常给E规定一

个界限,当E达到这一界限时,计算便终止.

2 BP网络存在的收敛性问题及几点

改进措施

BP算法是一种有效的学习算法,很实用,业控制如DC-DC变换器的智能控制、应用,很慢,.通常影响收敛速度的首先是误差函数,因为它是权重多维空间的超曲面,该曲面存在着许多大范围的“平坦区”,又存在着大量的局部极小的“沟谷”,从而影响收敛速度,甚至难于收敛.其次是神经元的传输函数引起的“假饱和现象”.另外收敛速度还与初始权值和传输函数的选择有关.针对这个问题,可以采用以下几点改进措施:

211改变误差函数

ppllδ由于等效误差分量δjk和ij的大小和正负的变化对收敛速度存在影响,因为BP网络是误差逆向传

ppplllδ播,δjk和δij两者比较,jk对收敛速度的影响更大,所以,我们可选取“信息熵”作为误差函数的定[6]义,

l

E总=ΣΣ[tll×logyll+(1-tll)δlog(1-l×

该公式中学习步长η是一个固定值,若在0-1

内取值,算法将导致不收敛,若步长过小,收敛速度太慢,,,导致,在,学习步长是一个η(n0+1)=η(n0)-β(2)

J

式中,η(n0+1),η(n0)分别为学习步长修正后的值

和当前值,-β为步长增量;0<β<1为常量.

J

在学习过程中,逐步自动调节学习常数,每次对学习样本进行一次循环后,计算误差变化率:

J(n)-J(n-1)ΔJ

(3)=

JJ(n0)采用ΔJ/J作为步长修正依据是基于以下考虑:当ΔJ=J(n0)-J(n0-1)>0,说明学习误差正在增大,输出值正大远离期望值,权值调整过大,需要减小ΔW.由公式(1),若减少η,ΔW也必然减少.而学习步长调整公式(2)中η确实是在减小,符合要求,能够加快学习收敛速度.反之,当ΔJ=J(n0)-J(n0-1)<0,说明学习误差在减小,输出值正在靠近期望值,这时若增大ΔW则会加快误差减小,但是当误差J已经很小时则ΔJ变化很小,对ΔW的影响就很小,收敛速度很慢.但是ΔJ/J的变化要比ΔJ变化大得多,则对ΔW的影响就很大.由公式(3)减小了ΔJ/J也就增大了η,从而加快学习收敛速度.

214连接权重的选择

收敛速度还与初始权值的选择有关,为避免学习过程中的振荡,J.Caillon等人曾强调限制连接权重的范围,将权重初值限制在[-015,015]区间内随机选取.一般将连接权重初值限制在[-5,5],也可加速收敛.

215传输函数(激励函数)的选取

传输函数(激励函数)也是BP算法中影响收敛

pn-1

pppp

p=1l=0

l

l

y)],其中,δ=yll-tll.lpll

ppp

212加入动量项

为了使学习速率足够大,又不易产生振荡,根据Rumelhart的建议,在权值调整算式中,加入“动量

n0

k-1n-1

项”,即: Wij(n0)=-ηΣβ+β0

k=29Wij(k-1)ΔW(1)其中β为调节因子,这里0<β<1.该式的

意义在于:当本次9J(n0)/9Wij(n0)与前一次同符号时,其加权求和值增大,使ΔWij(n0)增大,从而在稳定时增加了W的学习速度;当9J(n0)/9Wij(n0)与前次符号相反时,说明有一定的振荡,此时指数加

BP神经网络的改进方法及具体措施

第2期          贺清碧,等:BP神经网络收敛性问题的改进措施            145的重要因素,传输函数的选取影响着BP算法的收敛速度,在BP算法中,传输函数f一般取为f(x)=(1+e-x)-1,这是一个S型函数,它满足:

(1)limf(x)=1;

x +∞x -∞

[7]

时刻的修改方向则为上一时刻修改方向与此刻方向的组合,它能有效加速收敛并防止振荡;初始权值和传输函数的选取等.参考文献:

[1] 张洪,邹乐君,沈晓华.BP神经网络在测井岩性识别中

(2)limf(x)=0;

(3)f(0)=1/2;

(4)f(x)图象以点(0,1Π2)为对称中心.

-kx-1

传输函数f一般选择f(x)=(1+e),k=011,1,6,20,4,它们的特点是:当k1<k2时fk2比fk1

的应用[J].地质与勘探,2002,38(6):63265.

[2] 郑浩,王全凤.BP神经网络在高层结构体系选择中的

应用[J].华侨大学学报,2003,24(1):47255.

[3] 李晓峰,刘光中.人工神经网络BP算法的改进及其应

陡峭.

用[J].四川大学学报(工程科学版),2000,32(2):105~

109.

[4] 张文鸽,吴泽宁,逯洪波.BP神经网络的改进及其应用

[J].河南科学,2003,21(2):2022206.

[5] ,夏志忠[J].

3 结束语

BP算法是目前应用最广泛的神经网络学习算

法,有着广泛的应用,但存在收敛较慢等问题,且此

问题成了BP算法的突出问题.为了加快收敛速度,本文在分析BP算法和收敛性基础上,改进措施:改变误差函数;,变化剧烈的地方,速度;引入动量因子,,目的在于加入一项以记忆上一时刻权的修改方向,而此

,):22225.

[6],.BP学习算法改进的理论依据

[C].北京:科教出版

社,1993:2822286.

[7] 向国全,董道珍.BP模型中的激励函数和改进的网络

训练法[J].计算研究与发展,1997,34(2):1132117.

TheconvergenceandimprovementsofBPneuralnetwork

HEQing2bi, ZHOUJian2li

(SchoolofComputerandInformationEngineering,ChongqingJiaotongUniversity,Chongqing400074,China)

Abstract:TheBP(backpropagation)algorithmisaneuralnetworklearningalgorithm,itisappliedextensivelyinfunctionapproximation,modedistinguishing,classification,datacompressionet,butithasaquestionofconvergence.Inthispaper,basedondescribingtheprincipleoftheBPalgorithm,theconvergenceisdiscusseddeeply,andseveralimprovementstoBPneuralnetworkareproposed.Keywords:BPneuralnetwork;BPalgorithm;convergence

本文来源:https://www.bwwdw.com/article/xk8e.html

Top