BP神经网络及其改进
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数一般根据实际求解问题的性质和要求确定 ,网络 结构优化的关键在于隐含层的层数与隐节点数目 。 隐节点过少 ,学习过程不可能收敛 ,也不能对所要 解决的问题形成一个好的模型 ; 隐节点过多 ,虽然 容易提高映射精度 ,但会造成网络结构庞大节点冗 余 ,网络性能下降 ,推广能力低 ,因此网络应有一个 最佳隐含层节点数 。
调整网络的连接权值 ,标准 BP学习算法采用最速
梯度下降法调整权值 ,输出层的权值调节公式 :
W jk ( t + 1) = W jk ( t) +ΔW jk
(8)
ΔW jk
=
-
η
5E 5W jk
(9)
式中 : 0 <η < 1, 称为学习率 。从上式可推出
连接权值的修正量公式 :
ΔW jk =ηδk O j
设网络输入模式样本为 xp = { xpi } ,期望输出为
{ tpk } ,
∑ 均方误差函数 Ep 为 : Ep
=
1 2
k
( tpk - Opk ) 2
(6) 对于所有的学习样本 ,系统的均方误差为 :
∑∑ E = 1 2P P
( tpk - Opk ) 2
k
(7)
为了达到学习目的 ,要根据误差函数来相应的
1 B P神经网络算法原理
BP神经网络具有结构简单 ,可操作性强 ,能模 拟任意的非线性输入输出关系等优点而成为目前 应用广泛的神经网络模型 , BP网络由输入层 i、隐含 层 j、输出层 k及各层之间的节点连接权所组成 ,其 拓扑结构如图 2所示 。网络的学习过程由信息正向 传播和误差反向传播构成 :
对学习率改进的方法主要有 : a. 动态改变学习率 :文献 [ 1 ]提出同时动态改 变学习率 η和动量矩 ;文献 [ 2 ]提出多学习率学习 算法 ;文献 [ 3 ]利用误差变化率 ΔE修正学习步长 。
E
b. 自适应学习率算法 :文献 [ 4 ]依据代价函数 的局部信息自适应调整学习率 ;文献 [ 5 ]提出变学 习强度的速率适应因子方法 , 加速学习的收敛过 程 ;文献 [ 6 ]根据误差函数 E和网络各节点权值和 阈值自动改变学习率 ,使网络的学习由网络当时的 误差函数及各节点输出值决定以实现学习率的自 适应 ;文献 [ 7 ]提出迭代系数动态修改算法 ,对迭代 系数进行动态修正 。
2. 2 网络结构优化
神经网络的结构 (隐含层数目 、隐节点数目和 节点连接方式 )直接影响到训练的速度 、收敛性及 网络的适用性 (泛化能力 ) ,结构各方面的具体优化 措施如下 :
(1)神经元节点互联方式 : S函数很难拟合线性 关系 ,文献 [ 23 ]提出将输入神经节点直接与输出神 经节点相连 ,二者之间的权重用线性回归或其他公 式计算 。
(2)隐含层层数选择 :选择隐含层层数要从网 络精度和训练时间上综合考虑 ,对于较简单的映射 关系 ,在网络精度达到要求的情况下 ,可选择较少 的隐含层层数 ; 对于较复杂的映射关系 ,可通过增
第 26卷第 2期 武美先 ,等 : BP神经网络及其改进
123
加隐含层层数 ,保证映射关系的正确实现 。 (3)网络各层节点数 :网络输入与输出层节点
(4)修正权值 :直接修正权值的算法有以下几 种:
a. 借用模拟退火思想调整 E (W ) :文献 [ 13 ]借 用模拟退火的思想 ,允许 E (W )按一定的概率有所 上升 ,提高逃离局部极小的可能 ;文献 [ 14 ]根据误 差函数在迭代点 W ( k) 处的值与其在 W ( k) 处的梯 度向量长度之比以及模型逼近度的概念来计算增
f. 弹性调节权值变化方向和大小 :为消除网络 的平台现象 , M artin R iedm iller和 Heinrich B raun[ 20 ] 提出了有弹性的 B P ( Resilient B ackp ropagation ) 算 法 :根据偏导数符号决定权值更新方向 ,权值变化 的大小由一个独立的“更新值 ”决定 。
层各节点输出值 O i 的加权和 :
∑ ne tj = W ijO i
(1)
i
输出值为 :
O j = fs ( ne tj )
(2)
式中 : fs ( 3 ) 称为激励函数或作用函数 ,一
收稿日期 : 2004212202 作者简介 :武美先 (1972 - ) ,女 ,在读研究生 ,主要研究方向为人工智能 。
武美先 ,张学良 ,温淑花 ,李海楠
(太原科技大学机电学院 ,太原 030024)
摘 要 :针对标准 BP算法存在的缺陷 ,从网络结构 、算法及初始值选取等各个角度 系统总结了 BP神经网络的各种改进措施 ,对各种方法的原理及优缺点作了详尽分析 ,指 出了 BP神经网络今后改进的方向 。 关键词 :神经网络 ; BP算法 ;改进
e. 权值光滑 [ 19 ] :权值光滑 BP算法有较好的推 广性能 ,权空间具有光滑连接权值的解 ,能提取更 可靠的样本特征 。常见的权值光滑 BP 算法有三 种 :一般权值光滑算法 、超松弛权值光滑算法和含 有退火光滑因子的 BP算法 (ASBP) ,其中含有退火 光滑因子的 BP算法较完善 ,其原理为 :在训练前期 使用较强的权值光滑效果在权空间寻找较粗糙但 较光滑的解 ;在训练后期使用较弱的光滑因子 ,细 化解的求解 ,以获得较好的推广性能 。
作用修正传统权值调节量 ,有助于避免收敛到局部 最小点 。
d. 权值平衡调节 :文献 [ 17 ]认为神经网络的输 入层与隐层之间的权值调节量和隐层与输出层之
间的权值调节量对网络训练的贡献大小不同导致 了算法学习收敛慢并产生过调 ,提出使二者同等贡 献地参与神经网络学习训练的学习算法 ———权值 平衡算法 (WBB P) ;文献 [ 18 ]在隐层神经元激励函 数中引入权值平衡因子 替代权值平衡算法中的 因 子。
中图分类号 : TP11 文献标识码 : A
自美国加利福尼亚大学的 PDP ( Parallel D istrib2 uted Processing)小组提出多层前馈神经网络以来 , BP ( B ack2Propagation)神经网络作为一种非线性系 统的辨识工具在分类模式识别 、图像处理和系统控 制等领域得到了广泛应用 ,但其在收敛速度 、泛化 能力等方面尚存在不足 ,国内外学者提出的改进方 法大多以计算的复杂性为代价 。本文系统总结了 BP算法目前在系统误差函数的确立 、权值学习算法 的设计 、网络结构优化 、网络泛化能力以及样本数 问题等几个方面的改进措施 ,指出了 BP神经网络 今后改进的方向 。
k
( 11 )
( 12 ) ( 13 ) ( 14 )
2 网络存在的问题及改进措施
图 2 三层 BP神经网络 F ig. 2 Three2Layer BP neura l network
般采用 sigmoid函数 :
fs ( ne tj )
1
1 =
+ e- ( ne tj-θj) /λ
(3)
式中 : θj 称为阈值 ,λ称为温度系数 。隐含层可为一
过加大陡峭度来加快网络收敛速度 ;文献 [ 9 ]提出
在学习过程中适度 、动态调整 sigmoid函数形状可提
高网络学习速度 。
b. 调整激励函数的位置 :文献 [ 10 ]提出在线自 动调整 S型函数形状的算法 。
c. 寻找新的激活函数以取代传统的 sigmoid函 数 :文献 [ 11 ]通过用线性函数和二次型函数组合形 成一个在 ( - ∞, + ∞)区间内导数均有较大值的组 合函数来替代 sigmoid来增加网络收敛速度 ;变换激 励函 数 的 BP 算 法 ———CB P ( Changeable Exciting Function BP)算法 [ 12 ]通过人为改变输出节点的激活 函数 ,将别的方法的学习曲线截断 , 以加速收敛 。 可减少迭代次数 ,实现高精度输出 ,但抗干扰能力 较差 。
(3)改进激励函数 :神经元的激励函数反映了 神经元输出与其激活状态之间的关系 ,对于神经元 的信息处理特性具有重要意义 。
改进的途径有 : a. 调整激励函数形状 :标准 BP算法的作用函
数通常取为 S型函数 f ( x)
=
1
1 + e- x
,由于作用函
数形状固定不变 ,影响了网络收敛速度 ,文献 [ 8 ]通
图 1 神经元模型
F ig. 1 Nerve cell m odel
(1)正向传播过程 :输入信息从输入层经隐含
层逐层处理 ,传向输出层 。若输出层的实际输出与
Βιβλιοθήκη Baidu
期望的输出不符 ,则转入误差的反向传播 。
①输入层 : 输入值一般为样本各分量输入值 ,
输出值一般等于输入值 。
②隐含层 :对于节点 j, 其输入值 ne tk 为其前一
2. 1 学习算法改进
(1)修正学习率 :学习率对收敛速度有较大影 响 ,直接影响训练时间和训练精度 , 取值过小 ,每次 迭代中权值的有效更新太小 ,收敛的速度相当慢 ; 取值过大 ,迭代过程会振荡以致发散 。为使学习的 训练的收敛速度尽可能加快 ,在保证收敛精度的前 提下尽可能提高 η的数值 ,使收敛速度加快 。
( 10)
在实际应用中 BP算法存在以下问题 : (1)收敛速度慢 ,若加快收敛速度易产生振荡 ; (2)存在局部极小和平台问题 ; (3)泛化能力差 ; (4)隐节点数和初始值的选取缺乏理论指导 ; (5)未考虑样本选择对系统学习的影响 。 近年来国内外学者针对以上问题在学习算法 、
网络结构 、训练方式及样本处理几方面提出了很多 改进措施 :
层或多层 。
③输出层 :输出层的输入 ne tk 和输出 Ok 与隐含 层类似 ,分别为 :
∑ ne tk = W jk O j
(4)
j
Ok = fx ( ne tk )
(5)
( 2)反向传播过程 :运用链导数法则将连接权
关于误差函数的导数沿原来的连接通路返回 ,通过
修改各层的权值使得误差函数减小 。
隐层节点数的确定方法有 : a. 经验公式法如文献 [ 24 ]、文献 [ 25 ]。 b. 实验比较法 [ 21 ] :只改变隐含节点数 ,比较其 训练效果和泛化能力从而择优 。 c. 动态增删法 :通过不断增加过或减少隐含层 节点数最后得到合适的网络结构 。 构造法 : 先设置较少的的隐含层节点数 ,若网 络输出误差不符合设定的要求 , 则逐渐增加节点 数 ,直到网络的误差不再有明显的减少为止 。 Fahl2 man和 Lebiere[ 1 ]提出了级联相关式结构 ,将隐含层 的点一个一个逐次引进 ;文献 [ 23 ]提出隐含节点分 批引进法 。 删除法 :先给网络一个较大的隐含层节点数 , 若网络输出误差不符合设定的要求 ,则逐步删除隐 含层节点 ,直至合适为止 。文献 [ 26 ]提出动态合并 与删减规则 。 同时增删法 :文献 [ 27 ]通过减少网络层节点间 的连接权值进而减少网络节点数来优化网络结构 , 可同时删除多个冗余权值和节点 。文献 [ 28 ]提出 一种基于重置的 L 2M (Levernberg2M arquardt)变结构 BP神经网络 ,在网络训练过程中 ,动态增删各层神 经元节点 。对于输出节点数 ,文献 [ 23 ]通过分析权 重贡献率大小 ,确定每个输入节点对输出节点的影 响程度 ,消除非关键节点 ,提高建模精度 。 (4)网络初始参数 (连接权值和阈值 )的设置 : 初始权值范围应根据实际问题设定 ,较大的初始值 会使网络一开始学习就陷入深度假饱和状态难以 自拔 ,采用较小的初始权值范围较为稳妥 。文献 [ 29 ]通过实验证实 :网络在初始权值的变化范围较 小和学习率值较小时是稳定且收敛的 。
(5)改进误差函数 :经典的 BP算法权值的调节 增量与系统误差成线性关系 ,因未考虑误差函数高 次项 ,易陷入局部极小或产生振荡 。文献 [ 21 ]取误 差函数为 fe = 1 - e- ( tpk- O pk) 2 ,能根据期望输出与实 际输出间的误差动态的调整学习率 , 提高学习速 度 ,避免出现局部极小值和振荡 。 Jo ines[ 22 ] 的改进 方法采用了包含系统误差的高次项的误差函数 。
第 26卷第 2期 武美先 ,等 : BP神经网络及其改进
121
δ k
=
( tk
-
Ok ) Ok (1 -
Ok )
隐层权值调节公式 :
W ij ( t + 1) = W ij ( t) +ΔW ij
ΔW ij
=
-
η
5E 5W ij
=ηδj xi
∑ δ j
=
δkW jk O j ( 1 - O j ) O i
量 △W ( k) 和学习步长 η( k) 。 b. 权值逐个调整 :文献 [ 15 ]提出单参数变调整
法则的离散型 BP神经网络算法 : 网络在反向传播 误差时 ,每次仅调整一个权值 ,大大减少了各误差 函数的计算量 ,加快了收敛速度 。
c. 考虑过去权值调节的影响 :文献 [ 16 ]考虑到 不同时刻调节量对迭代的影响对训练过程贡献的
第 26卷 第 2期
太原科技大学学报
2005年 6月
JOURNAL OF TA IYUAN UN IVERSITY OF SC IENCE AND TECHNOLOGY
Vol. 26 №2 Jun. 2005
文章编号 : 1673 - 2057 (2005) 02 - 0120 - 06
BP神经网络及其改进
(2)添加动量项 :为加快收敛速度改进收敛特 性 ,并使其值变化平滑 ,可加入动态修正量 ,利用附 加的动量项可以平滑梯度方向的剧烈变化 。文献
122
太 原 科 技 大 学 学 报 2005年
[ 5 ]加入了前两个时刻的负梯度方向 ,文献 [ 6 ]则加 入了前两个时刻的权值调节量 。
调整网络的连接权值 ,标准 BP学习算法采用最速
梯度下降法调整权值 ,输出层的权值调节公式 :
W jk ( t + 1) = W jk ( t) +ΔW jk
(8)
ΔW jk
=
-
η
5E 5W jk
(9)
式中 : 0 <η < 1, 称为学习率 。从上式可推出
连接权值的修正量公式 :
ΔW jk =ηδk O j
设网络输入模式样本为 xp = { xpi } ,期望输出为
{ tpk } ,
∑ 均方误差函数 Ep 为 : Ep
=
1 2
k
( tpk - Opk ) 2
(6) 对于所有的学习样本 ,系统的均方误差为 :
∑∑ E = 1 2P P
( tpk - Opk ) 2
k
(7)
为了达到学习目的 ,要根据误差函数来相应的
1 B P神经网络算法原理
BP神经网络具有结构简单 ,可操作性强 ,能模 拟任意的非线性输入输出关系等优点而成为目前 应用广泛的神经网络模型 , BP网络由输入层 i、隐含 层 j、输出层 k及各层之间的节点连接权所组成 ,其 拓扑结构如图 2所示 。网络的学习过程由信息正向 传播和误差反向传播构成 :
对学习率改进的方法主要有 : a. 动态改变学习率 :文献 [ 1 ]提出同时动态改 变学习率 η和动量矩 ;文献 [ 2 ]提出多学习率学习 算法 ;文献 [ 3 ]利用误差变化率 ΔE修正学习步长 。
E
b. 自适应学习率算法 :文献 [ 4 ]依据代价函数 的局部信息自适应调整学习率 ;文献 [ 5 ]提出变学 习强度的速率适应因子方法 , 加速学习的收敛过 程 ;文献 [ 6 ]根据误差函数 E和网络各节点权值和 阈值自动改变学习率 ,使网络的学习由网络当时的 误差函数及各节点输出值决定以实现学习率的自 适应 ;文献 [ 7 ]提出迭代系数动态修改算法 ,对迭代 系数进行动态修正 。
2. 2 网络结构优化
神经网络的结构 (隐含层数目 、隐节点数目和 节点连接方式 )直接影响到训练的速度 、收敛性及 网络的适用性 (泛化能力 ) ,结构各方面的具体优化 措施如下 :
(1)神经元节点互联方式 : S函数很难拟合线性 关系 ,文献 [ 23 ]提出将输入神经节点直接与输出神 经节点相连 ,二者之间的权重用线性回归或其他公 式计算 。
(2)隐含层层数选择 :选择隐含层层数要从网 络精度和训练时间上综合考虑 ,对于较简单的映射 关系 ,在网络精度达到要求的情况下 ,可选择较少 的隐含层层数 ; 对于较复杂的映射关系 ,可通过增
第 26卷第 2期 武美先 ,等 : BP神经网络及其改进
123
加隐含层层数 ,保证映射关系的正确实现 。 (3)网络各层节点数 :网络输入与输出层节点
(4)修正权值 :直接修正权值的算法有以下几 种:
a. 借用模拟退火思想调整 E (W ) :文献 [ 13 ]借 用模拟退火的思想 ,允许 E (W )按一定的概率有所 上升 ,提高逃离局部极小的可能 ;文献 [ 14 ]根据误 差函数在迭代点 W ( k) 处的值与其在 W ( k) 处的梯 度向量长度之比以及模型逼近度的概念来计算增
f. 弹性调节权值变化方向和大小 :为消除网络 的平台现象 , M artin R iedm iller和 Heinrich B raun[ 20 ] 提出了有弹性的 B P ( Resilient B ackp ropagation ) 算 法 :根据偏导数符号决定权值更新方向 ,权值变化 的大小由一个独立的“更新值 ”决定 。
层各节点输出值 O i 的加权和 :
∑ ne tj = W ijO i
(1)
i
输出值为 :
O j = fs ( ne tj )
(2)
式中 : fs ( 3 ) 称为激励函数或作用函数 ,一
收稿日期 : 2004212202 作者简介 :武美先 (1972 - ) ,女 ,在读研究生 ,主要研究方向为人工智能 。
武美先 ,张学良 ,温淑花 ,李海楠
(太原科技大学机电学院 ,太原 030024)
摘 要 :针对标准 BP算法存在的缺陷 ,从网络结构 、算法及初始值选取等各个角度 系统总结了 BP神经网络的各种改进措施 ,对各种方法的原理及优缺点作了详尽分析 ,指 出了 BP神经网络今后改进的方向 。 关键词 :神经网络 ; BP算法 ;改进
e. 权值光滑 [ 19 ] :权值光滑 BP算法有较好的推 广性能 ,权空间具有光滑连接权值的解 ,能提取更 可靠的样本特征 。常见的权值光滑 BP 算法有三 种 :一般权值光滑算法 、超松弛权值光滑算法和含 有退火光滑因子的 BP算法 (ASBP) ,其中含有退火 光滑因子的 BP算法较完善 ,其原理为 :在训练前期 使用较强的权值光滑效果在权空间寻找较粗糙但 较光滑的解 ;在训练后期使用较弱的光滑因子 ,细 化解的求解 ,以获得较好的推广性能 。
作用修正传统权值调节量 ,有助于避免收敛到局部 最小点 。
d. 权值平衡调节 :文献 [ 17 ]认为神经网络的输 入层与隐层之间的权值调节量和隐层与输出层之
间的权值调节量对网络训练的贡献大小不同导致 了算法学习收敛慢并产生过调 ,提出使二者同等贡 献地参与神经网络学习训练的学习算法 ———权值 平衡算法 (WBB P) ;文献 [ 18 ]在隐层神经元激励函 数中引入权值平衡因子 替代权值平衡算法中的 因 子。
中图分类号 : TP11 文献标识码 : A
自美国加利福尼亚大学的 PDP ( Parallel D istrib2 uted Processing)小组提出多层前馈神经网络以来 , BP ( B ack2Propagation)神经网络作为一种非线性系 统的辨识工具在分类模式识别 、图像处理和系统控 制等领域得到了广泛应用 ,但其在收敛速度 、泛化 能力等方面尚存在不足 ,国内外学者提出的改进方 法大多以计算的复杂性为代价 。本文系统总结了 BP算法目前在系统误差函数的确立 、权值学习算法 的设计 、网络结构优化 、网络泛化能力以及样本数 问题等几个方面的改进措施 ,指出了 BP神经网络 今后改进的方向 。
k
( 11 )
( 12 ) ( 13 ) ( 14 )
2 网络存在的问题及改进措施
图 2 三层 BP神经网络 F ig. 2 Three2Layer BP neura l network
般采用 sigmoid函数 :
fs ( ne tj )
1
1 =
+ e- ( ne tj-θj) /λ
(3)
式中 : θj 称为阈值 ,λ称为温度系数 。隐含层可为一
过加大陡峭度来加快网络收敛速度 ;文献 [ 9 ]提出
在学习过程中适度 、动态调整 sigmoid函数形状可提
高网络学习速度 。
b. 调整激励函数的位置 :文献 [ 10 ]提出在线自 动调整 S型函数形状的算法 。
c. 寻找新的激活函数以取代传统的 sigmoid函 数 :文献 [ 11 ]通过用线性函数和二次型函数组合形 成一个在 ( - ∞, + ∞)区间内导数均有较大值的组 合函数来替代 sigmoid来增加网络收敛速度 ;变换激 励函 数 的 BP 算 法 ———CB P ( Changeable Exciting Function BP)算法 [ 12 ]通过人为改变输出节点的激活 函数 ,将别的方法的学习曲线截断 , 以加速收敛 。 可减少迭代次数 ,实现高精度输出 ,但抗干扰能力 较差 。
(3)改进激励函数 :神经元的激励函数反映了 神经元输出与其激活状态之间的关系 ,对于神经元 的信息处理特性具有重要意义 。
改进的途径有 : a. 调整激励函数形状 :标准 BP算法的作用函
数通常取为 S型函数 f ( x)
=
1
1 + e- x
,由于作用函
数形状固定不变 ,影响了网络收敛速度 ,文献 [ 8 ]通
图 1 神经元模型
F ig. 1 Nerve cell m odel
(1)正向传播过程 :输入信息从输入层经隐含
层逐层处理 ,传向输出层 。若输出层的实际输出与
Βιβλιοθήκη Baidu
期望的输出不符 ,则转入误差的反向传播 。
①输入层 : 输入值一般为样本各分量输入值 ,
输出值一般等于输入值 。
②隐含层 :对于节点 j, 其输入值 ne tk 为其前一
2. 1 学习算法改进
(1)修正学习率 :学习率对收敛速度有较大影 响 ,直接影响训练时间和训练精度 , 取值过小 ,每次 迭代中权值的有效更新太小 ,收敛的速度相当慢 ; 取值过大 ,迭代过程会振荡以致发散 。为使学习的 训练的收敛速度尽可能加快 ,在保证收敛精度的前 提下尽可能提高 η的数值 ,使收敛速度加快 。
( 10)
在实际应用中 BP算法存在以下问题 : (1)收敛速度慢 ,若加快收敛速度易产生振荡 ; (2)存在局部极小和平台问题 ; (3)泛化能力差 ; (4)隐节点数和初始值的选取缺乏理论指导 ; (5)未考虑样本选择对系统学习的影响 。 近年来国内外学者针对以上问题在学习算法 、
网络结构 、训练方式及样本处理几方面提出了很多 改进措施 :
层或多层 。
③输出层 :输出层的输入 ne tk 和输出 Ok 与隐含 层类似 ,分别为 :
∑ ne tk = W jk O j
(4)
j
Ok = fx ( ne tk )
(5)
( 2)反向传播过程 :运用链导数法则将连接权
关于误差函数的导数沿原来的连接通路返回 ,通过
修改各层的权值使得误差函数减小 。
隐层节点数的确定方法有 : a. 经验公式法如文献 [ 24 ]、文献 [ 25 ]。 b. 实验比较法 [ 21 ] :只改变隐含节点数 ,比较其 训练效果和泛化能力从而择优 。 c. 动态增删法 :通过不断增加过或减少隐含层 节点数最后得到合适的网络结构 。 构造法 : 先设置较少的的隐含层节点数 ,若网 络输出误差不符合设定的要求 , 则逐渐增加节点 数 ,直到网络的误差不再有明显的减少为止 。 Fahl2 man和 Lebiere[ 1 ]提出了级联相关式结构 ,将隐含层 的点一个一个逐次引进 ;文献 [ 23 ]提出隐含节点分 批引进法 。 删除法 :先给网络一个较大的隐含层节点数 , 若网络输出误差不符合设定的要求 ,则逐步删除隐 含层节点 ,直至合适为止 。文献 [ 26 ]提出动态合并 与删减规则 。 同时增删法 :文献 [ 27 ]通过减少网络层节点间 的连接权值进而减少网络节点数来优化网络结构 , 可同时删除多个冗余权值和节点 。文献 [ 28 ]提出 一种基于重置的 L 2M (Levernberg2M arquardt)变结构 BP神经网络 ,在网络训练过程中 ,动态增删各层神 经元节点 。对于输出节点数 ,文献 [ 23 ]通过分析权 重贡献率大小 ,确定每个输入节点对输出节点的影 响程度 ,消除非关键节点 ,提高建模精度 。 (4)网络初始参数 (连接权值和阈值 )的设置 : 初始权值范围应根据实际问题设定 ,较大的初始值 会使网络一开始学习就陷入深度假饱和状态难以 自拔 ,采用较小的初始权值范围较为稳妥 。文献 [ 29 ]通过实验证实 :网络在初始权值的变化范围较 小和学习率值较小时是稳定且收敛的 。
(5)改进误差函数 :经典的 BP算法权值的调节 增量与系统误差成线性关系 ,因未考虑误差函数高 次项 ,易陷入局部极小或产生振荡 。文献 [ 21 ]取误 差函数为 fe = 1 - e- ( tpk- O pk) 2 ,能根据期望输出与实 际输出间的误差动态的调整学习率 , 提高学习速 度 ,避免出现局部极小值和振荡 。 Jo ines[ 22 ] 的改进 方法采用了包含系统误差的高次项的误差函数 。
第 26卷第 2期 武美先 ,等 : BP神经网络及其改进
121
δ k
=
( tk
-
Ok ) Ok (1 -
Ok )
隐层权值调节公式 :
W ij ( t + 1) = W ij ( t) +ΔW ij
ΔW ij
=
-
η
5E 5W ij
=ηδj xi
∑ δ j
=
δkW jk O j ( 1 - O j ) O i
量 △W ( k) 和学习步长 η( k) 。 b. 权值逐个调整 :文献 [ 15 ]提出单参数变调整
法则的离散型 BP神经网络算法 : 网络在反向传播 误差时 ,每次仅调整一个权值 ,大大减少了各误差 函数的计算量 ,加快了收敛速度 。
c. 考虑过去权值调节的影响 :文献 [ 16 ]考虑到 不同时刻调节量对迭代的影响对训练过程贡献的
第 26卷 第 2期
太原科技大学学报
2005年 6月
JOURNAL OF TA IYUAN UN IVERSITY OF SC IENCE AND TECHNOLOGY
Vol. 26 №2 Jun. 2005
文章编号 : 1673 - 2057 (2005) 02 - 0120 - 06
BP神经网络及其改进
(2)添加动量项 :为加快收敛速度改进收敛特 性 ,并使其值变化平滑 ,可加入动态修正量 ,利用附 加的动量项可以平滑梯度方向的剧烈变化 。文献
122
太 原 科 技 大 学 学 报 2005年
[ 5 ]加入了前两个时刻的负梯度方向 ,文献 [ 6 ]则加 入了前两个时刻的权值调节量 。