BP神经网络介绍
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
t
j 1
jt
j
t
(3)根据给定期望,计算输出层各个神经元的校正误差
dt yt ct f ' lt
(4)计算隐含层各个神经元的校正误差
q e j v jt d t f ' s j t 1
f ' x f x 1 f x
18
9
1 q E yt ct q t 1
ERME
18
10
4.4 BP神经网络学习算法
(1)计算中间隐含层各个神经元的净输入和输出
s j x i wij j
i 1
n
b j f s j
j=1,2,...,p
(2)计算输出层各个神经元的净输入和实际输出 p ct f lt t=1,2,...,q l v b
多层前馈网络的训练经常采用误差反向传播算法,所以人们
也常把多层前馈网络称为BP 网络。 BP算法采用非线性连续变换函数,使隐含层神经元具有 了学习能力。其基本思想直观、易于理解,数学意义明确、 步骤分明,所以BP 网络成为目前应用最广的神经网络。
18
4
4.2 BP神经网络结构基本思想
修改权值阈值 教师 信号
问题?
18
5
4.2 BP神经网络结构基本思想
BP算法的主要思想是把训练过程分为两个阶段: 第一阶段(正向传播过程)给出输入信息通过输入层经隐含 层逐层处理并计算每个单元的实际输出值。 第二阶段(反向传播过程)若在输出层不能得到期望的输出
值,那么逐层递归地计算实际输出与期望输出之差值,以便
根据差值调节权值。
wij e j xi j e j
18
12
4.5 BP网络的分析--梯度下降学习方法
一、BP网络的主要能力
1、非线性映射能力
二、BP算法的局限性
1、存在局部极小问题
2、泛化能力
3、容错能力
2、存在平坦区,收敛速度慢
3、网络结构选择不一
18
13
4.6 BP人工神经网络模型的改进
1、BP 人工神经网络结构的自我调整 在BP人工神经网络拓扑结构中, 输入节点与输出节点 是由问题的本身决定的, 关键在于隐层的层数与隐节点的 数目。 只需一个隐层的神经网络, 它只要隐节点足够多, 就 可以以任意精度逼近一个非线性函数。相对来说, 隐节点 数的选取很困难。隐节点少了, 学习过程不可能收敛;隐 节点多了, 网络性能下降, 节点冗余。为了找到合适的隐 节点数, 最好的办法是在网络的学习过程中, 根据环境要 求, 自组织地学习、调整自己的结构, 最后得到一个大小 合适的神经网络模型。 • 从少到多:初始值: m log2 n , m • 先设置较多隐节点
18
15
4.6 BP人工神经网络模型的改进
3.附加动量法 附加动量法使网络在修正其权值时, 不仅考虑误差在 梯度上的作用, 而且考虑在误差曲面上变化趋势的影响, 其作用如同一个低通滤波器, 它允许网络忽略网络上的
微小变化特性, 在没有附加动量的作用下, 网络可能陷
入浅的局部极小值, 利用附加动量的作用则有可能滑过 这些局部极小值。
E wij n wij n 1 wij
n为训练次数,η为动量因子,一般取0.95左右
18
16
4.6 BP人工神经网络模型的改进
4. 引入放大因子
5. 用蚁群优化算法选择最优初始权值 蚁群优化算法是一种对离散优化问题进行求解的通用 型框架。在某条具体路径当中所经过的蚂蚁数量越多,相 应的信息条件密集性也就越大,从而这一路径被选取的概 率也就越大,其呈现出的是一种正反馈的现状情况。每一 只蚂蚁在仅穿过任一节点一次的情况之时,对被选用的权 值节点进行明确的记录,从而该区域之中的节点也就组成 了一组候选权值,在所有蚂蚁均完成了首次选择后,依据 全局更新策略来对信息素的密度进行更新。直至满足于最 大进化代数,也就得到了最佳的权值组合。
nl
18
14
4.6 BP人工神经网络模型的改进
2、BP 神经网络学习参数的自适应学习 BP神经网络模型实际上是一个多元函数的优化问题,即 以连结权系数为变量, 误差函数最小为目标的优化问题。 当求出对连结权的梯度后, 对连结权进行修正时, 学习速 率α 、β 实际上是一个沿负梯度方向的步长问题, 步长过 大将使误差函数发生振荡, 步长过小, 收敛过慢。并且在 不同的点, 可选步长也不一样。总之, 不存在原BP 算法 中所提到的固定学习速率。 我们可以引入学习参数自适应算法加以确定。其基本思 想是:当权值w,v 远离稳定点(学习要达到的目标点)时, α ,β 取较大值;而当其逼近稳定点(E1→0)时, α ,β 取较 小值。
18
6
x1 x2 xn
4.3 BP神经网络处理的单元模型
w1j w2j wnj j
θj yj
Hale Waihona Puke Baidu
s j x i wij j
i 1
n
1 f x 1 ex
1 y j f (s j ) s 1 e j
阈值θj的作用反应在s型生
长曲线上是使曲线向右平移θj 个单位,在BP网络里它起到 了神经元兴奋水平的作用。
第四章 误差反向传播神经网络
研16电子 陈晨 2017.4.11
4.1 误差反向网络的提出
4.2 BP神经网络结构基本思想
4.3 BP神经网络处理的单元模型
4.4 BP神经网络学习算法
4.5 BP网络的分析--梯度下降学习方法
4.6 BP人工神经网络模型的改进
18
3
4.1 误差反向网络的提出
1986 年,Romelhart 和McCelland 提出了误差反向传播算 法( Error Back Propagation Algorithm ,简称BP 算法) ,由于
18
11
4.4 BP神经网络学习算法
(5)修正隐含层至输出层的连接权值V和输出层神经元
的阈值γ,其中学习速率为α,0<α<1
v jt dt b j
t dt
j=1,2,...,p,t=1,2,...,q
(6)修正输入层至隐含层的连接权值W和隐含层神经元 的阈值θ,其中学习速率为β,0<β<1
18
7
4.3 BP神经网络处理的单元模型
Sigmoid函数的一阶导数:
f ' x
1 e
1
x 2
e x 1
1 e x x 1 e 1 e x
f x 1 f x
18
8
4.4 BP神经网络学习算法
三层前馈网中: 输入模式k向量为X = ( x1 , x2 , ⋯,x n) T ,对应输入模式k的期
望输出向量为Y = ( y1 , y2 , ⋯, yq ) T ; 中间隐含层的净输入向量为S=(s1,s2 , ⋯,sp)T,输出向量为B = (b1 , b2 , ⋯,bp) T ; 输出层净输入向量L=(l1,l2 , ⋯,lq)T,实际输出向量C=(c1,c2 , ⋯,cq)T; θ={θj}(j=1,2 , ⋯,p}为隐层神经元引入阈值,γ={γt}(t=1,2...q) 为输出层神经元引入阈值; 输入层到隐层之间的权值矩阵 V = ( V1 , V2 , ⋯,V m) ,隐层到 输出层之间的权值矩阵 W = ( W1 ,W2 , ⋯, Wr)。
j 1
jt
j
t
(3)根据给定期望,计算输出层各个神经元的校正误差
dt yt ct f ' lt
(4)计算隐含层各个神经元的校正误差
q e j v jt d t f ' s j t 1
f ' x f x 1 f x
18
9
1 q E yt ct q t 1
ERME
18
10
4.4 BP神经网络学习算法
(1)计算中间隐含层各个神经元的净输入和输出
s j x i wij j
i 1
n
b j f s j
j=1,2,...,p
(2)计算输出层各个神经元的净输入和实际输出 p ct f lt t=1,2,...,q l v b
多层前馈网络的训练经常采用误差反向传播算法,所以人们
也常把多层前馈网络称为BP 网络。 BP算法采用非线性连续变换函数,使隐含层神经元具有 了学习能力。其基本思想直观、易于理解,数学意义明确、 步骤分明,所以BP 网络成为目前应用最广的神经网络。
18
4
4.2 BP神经网络结构基本思想
修改权值阈值 教师 信号
问题?
18
5
4.2 BP神经网络结构基本思想
BP算法的主要思想是把训练过程分为两个阶段: 第一阶段(正向传播过程)给出输入信息通过输入层经隐含 层逐层处理并计算每个单元的实际输出值。 第二阶段(反向传播过程)若在输出层不能得到期望的输出
值,那么逐层递归地计算实际输出与期望输出之差值,以便
根据差值调节权值。
wij e j xi j e j
18
12
4.5 BP网络的分析--梯度下降学习方法
一、BP网络的主要能力
1、非线性映射能力
二、BP算法的局限性
1、存在局部极小问题
2、泛化能力
3、容错能力
2、存在平坦区,收敛速度慢
3、网络结构选择不一
18
13
4.6 BP人工神经网络模型的改进
1、BP 人工神经网络结构的自我调整 在BP人工神经网络拓扑结构中, 输入节点与输出节点 是由问题的本身决定的, 关键在于隐层的层数与隐节点的 数目。 只需一个隐层的神经网络, 它只要隐节点足够多, 就 可以以任意精度逼近一个非线性函数。相对来说, 隐节点 数的选取很困难。隐节点少了, 学习过程不可能收敛;隐 节点多了, 网络性能下降, 节点冗余。为了找到合适的隐 节点数, 最好的办法是在网络的学习过程中, 根据环境要 求, 自组织地学习、调整自己的结构, 最后得到一个大小 合适的神经网络模型。 • 从少到多:初始值: m log2 n , m • 先设置较多隐节点
18
15
4.6 BP人工神经网络模型的改进
3.附加动量法 附加动量法使网络在修正其权值时, 不仅考虑误差在 梯度上的作用, 而且考虑在误差曲面上变化趋势的影响, 其作用如同一个低通滤波器, 它允许网络忽略网络上的
微小变化特性, 在没有附加动量的作用下, 网络可能陷
入浅的局部极小值, 利用附加动量的作用则有可能滑过 这些局部极小值。
E wij n wij n 1 wij
n为训练次数,η为动量因子,一般取0.95左右
18
16
4.6 BP人工神经网络模型的改进
4. 引入放大因子
5. 用蚁群优化算法选择最优初始权值 蚁群优化算法是一种对离散优化问题进行求解的通用 型框架。在某条具体路径当中所经过的蚂蚁数量越多,相 应的信息条件密集性也就越大,从而这一路径被选取的概 率也就越大,其呈现出的是一种正反馈的现状情况。每一 只蚂蚁在仅穿过任一节点一次的情况之时,对被选用的权 值节点进行明确的记录,从而该区域之中的节点也就组成 了一组候选权值,在所有蚂蚁均完成了首次选择后,依据 全局更新策略来对信息素的密度进行更新。直至满足于最 大进化代数,也就得到了最佳的权值组合。
nl
18
14
4.6 BP人工神经网络模型的改进
2、BP 神经网络学习参数的自适应学习 BP神经网络模型实际上是一个多元函数的优化问题,即 以连结权系数为变量, 误差函数最小为目标的优化问题。 当求出对连结权的梯度后, 对连结权进行修正时, 学习速 率α 、β 实际上是一个沿负梯度方向的步长问题, 步长过 大将使误差函数发生振荡, 步长过小, 收敛过慢。并且在 不同的点, 可选步长也不一样。总之, 不存在原BP 算法 中所提到的固定学习速率。 我们可以引入学习参数自适应算法加以确定。其基本思 想是:当权值w,v 远离稳定点(学习要达到的目标点)时, α ,β 取较大值;而当其逼近稳定点(E1→0)时, α ,β 取较 小值。
18
6
x1 x2 xn
4.3 BP神经网络处理的单元模型
w1j w2j wnj j
θj yj
Hale Waihona Puke Baidu
s j x i wij j
i 1
n
1 f x 1 ex
1 y j f (s j ) s 1 e j
阈值θj的作用反应在s型生
长曲线上是使曲线向右平移θj 个单位,在BP网络里它起到 了神经元兴奋水平的作用。
第四章 误差反向传播神经网络
研16电子 陈晨 2017.4.11
4.1 误差反向网络的提出
4.2 BP神经网络结构基本思想
4.3 BP神经网络处理的单元模型
4.4 BP神经网络学习算法
4.5 BP网络的分析--梯度下降学习方法
4.6 BP人工神经网络模型的改进
18
3
4.1 误差反向网络的提出
1986 年,Romelhart 和McCelland 提出了误差反向传播算 法( Error Back Propagation Algorithm ,简称BP 算法) ,由于
18
11
4.4 BP神经网络学习算法
(5)修正隐含层至输出层的连接权值V和输出层神经元
的阈值γ,其中学习速率为α,0<α<1
v jt dt b j
t dt
j=1,2,...,p,t=1,2,...,q
(6)修正输入层至隐含层的连接权值W和隐含层神经元 的阈值θ,其中学习速率为β,0<β<1
18
7
4.3 BP神经网络处理的单元模型
Sigmoid函数的一阶导数:
f ' x
1 e
1
x 2
e x 1
1 e x x 1 e 1 e x
f x 1 f x
18
8
4.4 BP神经网络学习算法
三层前馈网中: 输入模式k向量为X = ( x1 , x2 , ⋯,x n) T ,对应输入模式k的期
望输出向量为Y = ( y1 , y2 , ⋯, yq ) T ; 中间隐含层的净输入向量为S=(s1,s2 , ⋯,sp)T,输出向量为B = (b1 , b2 , ⋯,bp) T ; 输出层净输入向量L=(l1,l2 , ⋯,lq)T,实际输出向量C=(c1,c2 , ⋯,cq)T; θ={θj}(j=1,2 , ⋯,p}为隐层神经元引入阈值,γ={γt}(t=1,2...q) 为输出层神经元引入阈值; 输入层到隐层之间的权值矩阵 V = ( V1 , V2 , ⋯,V m) ,隐层到 输出层之间的权值矩阵 W = ( W1 ,W2 , ⋯, Wr)。