神经网络算法PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数学建模与数学实验
神经网络
1
目的
学习神经网络的基本原理与方法。
内容
1、人工神经元数学模型 2、BP神经网络 3、BP神经网络Matlab工具箱函数 4、BP神经网络应用
2
神经网络(Neural Networks)是从微观结构与 功能上对人脑神经系统进行模拟而建立起来的数 学模型,它具有模拟人脑思维的能力,其特点主 要是具有非线性特性、学习能力和自适应性等, 是模拟人类智能的一种重要方法。神经网络是由 神经元互联而成的,能接收并处理信息,而这种 信息处理主要是由神经元之间的相互作用,即通 过神经元之间的连接权值来处理并实现的。神经 网络在人工智能、自动控制、计算机科学、信息 处理和模式识别等领域得到了非常成功地应用。
e x e x
6
1、阶跃函数:f
(x)
10,,xx00,或符号函数f
(
x)
1, x 1,
x
0
0
2、双曲正切函数:f
(x)
tanh(x)
ex ex
ex ex
3、sigmoid函数(S型):f
(
x)
1
x2 x2
,
x
0
0, x 0
n
y j f ( wij xi a j ) i1
其中,y j 表示神经元 j 的输出;xi 表示神经元i 的输入; wij 表示神经元 i 与神经元 j 之间的连接权值;a j 表示神 经元 j 的阈值;f () 是输入到输出传递函数(也称激活 函数).
5
下表给出了一些常用的传递函数。除线性传递 函数外,其它的均是非线性的,因此,神经网络特 别适合于解决非线性问题。
m
m
Ok f ( wjk x j bk ) f ( wjk x j )
j 1
j0
k 1, 2, ,l
步骤 4:误差计算。根据网络实际输出 与期望输出 ,计 算网络总体误差.
11
步骤 5:权值更新。根据网络总体误差 E ,按照以下公式更
新网络连接权值 vij , wjk .
j 1
j0
i 1, 2, , m
式中,m 为隐含层节点数;vi0 1, x0 a j ; f () 为隐含层传递函数。
这里我们采用传递函数为
f
(x)
1
1 e
x
.
10
步骤 3:输出层输出计算。根据隐含层输出Y ,连接权值wjk
和阈值 b ,计算 BP 神经网络的实际输出O .
4、高斯函数:f
(
x)
exp
1 2
2 i
n
(xj
i1
x
ji
)2
7
1.BP神经网络结构:
BP神经网络的拓扑结构如图所示。
8
其中, xi (i 1, , n) 是神经网络的(实际)输入, yj ( j 1 , , m) 是 隐含层的输出,即为输出层的输入,Ok (k 1 , , l) 网络的(实 际)输出,a,b 分别为隐含层和输出层神经元(节点)的阈 值, vij , wjk 分别为输入层到隐含层和隐含层到输出层的权 值。也就是说,图中所表示的 BP 神经网络,它的输入层神
神经网络传递函数
名称
传递函数表达式
二值函数 线性函数
f
(
x)
1 0
x0 x0
f (x) ax
分段线性函数
0 f (x) cx
1
x0 0 x xc
x xc
非对称 Sigmoid 函数 非对称 Sigmoid 函数
f
(x)
1 1 ex
f
(x)
1 1
14
net=newff(PR, [S1,S2,…,SN],{ TF1,TF2,…,TFN}, BTF, BLF, PF)
BTF:训练函数,用于网络权值和阈值的调整,默认基于 Levenberg_Marquardt 共轭梯度法的训练函数 trainlm。其它参 数见后面表格。
12
BP神经网络的流程图:
13
三、BP神经网络Matlab工具箱函数
主要介绍 BP 神经网络用到 newff、train 和 sim 等 3 个主要函 数,各函数解释如下:
(1)newff——BP 神经网络参数设置函数 函数功能:构建一个 BP 神经网络. 函数形式: NET=newff(PR,[S1,S2,…,SN],{TF1,TF2,…,TFN},BTF,BLF,PF) PR:为样本数据组成的矩阵,由其中最大值和最小值组成的 R×2 维的矩阵; Si:第 i 层的节点数,共计 N 层; TFi:第 i 层节点的传递函数,包括线性传递函数 purelin;正 切 S 型传递函数 tansig;对数 S 型传递函数 logsig。默认为“tansig”;
经元(节点)个数为 n ,隐含层神经元(节点)个数为 m ,
输出层神经元(节点)个数为 l ,这种结构称为nml 结构的 三层 BP 神经网络。
9
2.BP神经网络学习算法及流程
以三层BP神经网络为例,它的训练过程包括以下几个步骤:
步骤 1:网络初始化。根据输入 X (x1 , x2, , xn) 和期望输出 D (d1 ,d2, , dl ) 来确定网络输入层、隐含层和输出层神经元(节点)个数,初始
vij vij vij
wjk wjk wjk
l
vij (
o k
w
jk
)
yj
(1
yj
) xi
wjk
o k
y
Hale Waihona Puke Baidu
j
k 1
其中
o k
(dk
ok
)ok
(1
ok
)
,
式中 为学习速率。
步骤6:判断算法迭代是否结束(可用网络总误差是否达到 精度要求等方式来判断),若没有结束,返回步骤2.
化各层神经元之间的连接权值 vij , wjk ,初始化隐含层阈值 a ,输出
层阈值 b ,给定学习速率和神经元传递函数.
步骤 2:隐含层输出计算。根据输入向量 X ,输入层和隐含层间连
接权值vij 以及隐含层阈值 a ,计算隐含层输出.
n
n
yi f ( vij xi a j ) f ( vij xi )
3
一、人工神经元数学模型
生物神经元,也称神经细胞,它是由细胞体、 树突、轴突和突触等生物组织构成的,并通过细胞 膜电位来实现生物神经元的兴奋与抑制、学习与联 想等基本功能,因此,它是构成人脑神经系统的基 本功能单元。其结构如下图所示。
4
根据生物神经元的结构与基本功能,可以将其 简化为下图的形式,并建立神经网络模型的基础—— 人工神经元数学模型:
神经网络
1
目的
学习神经网络的基本原理与方法。
内容
1、人工神经元数学模型 2、BP神经网络 3、BP神经网络Matlab工具箱函数 4、BP神经网络应用
2
神经网络(Neural Networks)是从微观结构与 功能上对人脑神经系统进行模拟而建立起来的数 学模型,它具有模拟人脑思维的能力,其特点主 要是具有非线性特性、学习能力和自适应性等, 是模拟人类智能的一种重要方法。神经网络是由 神经元互联而成的,能接收并处理信息,而这种 信息处理主要是由神经元之间的相互作用,即通 过神经元之间的连接权值来处理并实现的。神经 网络在人工智能、自动控制、计算机科学、信息 处理和模式识别等领域得到了非常成功地应用。
e x e x
6
1、阶跃函数:f
(x)
10,,xx00,或符号函数f
(
x)
1, x 1,
x
0
0
2、双曲正切函数:f
(x)
tanh(x)
ex ex
ex ex
3、sigmoid函数(S型):f
(
x)
1
x2 x2
,
x
0
0, x 0
n
y j f ( wij xi a j ) i1
其中,y j 表示神经元 j 的输出;xi 表示神经元i 的输入; wij 表示神经元 i 与神经元 j 之间的连接权值;a j 表示神 经元 j 的阈值;f () 是输入到输出传递函数(也称激活 函数).
5
下表给出了一些常用的传递函数。除线性传递 函数外,其它的均是非线性的,因此,神经网络特 别适合于解决非线性问题。
m
m
Ok f ( wjk x j bk ) f ( wjk x j )
j 1
j0
k 1, 2, ,l
步骤 4:误差计算。根据网络实际输出 与期望输出 ,计 算网络总体误差.
11
步骤 5:权值更新。根据网络总体误差 E ,按照以下公式更
新网络连接权值 vij , wjk .
j 1
j0
i 1, 2, , m
式中,m 为隐含层节点数;vi0 1, x0 a j ; f () 为隐含层传递函数。
这里我们采用传递函数为
f
(x)
1
1 e
x
.
10
步骤 3:输出层输出计算。根据隐含层输出Y ,连接权值wjk
和阈值 b ,计算 BP 神经网络的实际输出O .
4、高斯函数:f
(
x)
exp
1 2
2 i
n
(xj
i1
x
ji
)2
7
1.BP神经网络结构:
BP神经网络的拓扑结构如图所示。
8
其中, xi (i 1, , n) 是神经网络的(实际)输入, yj ( j 1 , , m) 是 隐含层的输出,即为输出层的输入,Ok (k 1 , , l) 网络的(实 际)输出,a,b 分别为隐含层和输出层神经元(节点)的阈 值, vij , wjk 分别为输入层到隐含层和隐含层到输出层的权 值。也就是说,图中所表示的 BP 神经网络,它的输入层神
神经网络传递函数
名称
传递函数表达式
二值函数 线性函数
f
(
x)
1 0
x0 x0
f (x) ax
分段线性函数
0 f (x) cx
1
x0 0 x xc
x xc
非对称 Sigmoid 函数 非对称 Sigmoid 函数
f
(x)
1 1 ex
f
(x)
1 1
14
net=newff(PR, [S1,S2,…,SN],{ TF1,TF2,…,TFN}, BTF, BLF, PF)
BTF:训练函数,用于网络权值和阈值的调整,默认基于 Levenberg_Marquardt 共轭梯度法的训练函数 trainlm。其它参 数见后面表格。
12
BP神经网络的流程图:
13
三、BP神经网络Matlab工具箱函数
主要介绍 BP 神经网络用到 newff、train 和 sim 等 3 个主要函 数,各函数解释如下:
(1)newff——BP 神经网络参数设置函数 函数功能:构建一个 BP 神经网络. 函数形式: NET=newff(PR,[S1,S2,…,SN],{TF1,TF2,…,TFN},BTF,BLF,PF) PR:为样本数据组成的矩阵,由其中最大值和最小值组成的 R×2 维的矩阵; Si:第 i 层的节点数,共计 N 层; TFi:第 i 层节点的传递函数,包括线性传递函数 purelin;正 切 S 型传递函数 tansig;对数 S 型传递函数 logsig。默认为“tansig”;
经元(节点)个数为 n ,隐含层神经元(节点)个数为 m ,
输出层神经元(节点)个数为 l ,这种结构称为nml 结构的 三层 BP 神经网络。
9
2.BP神经网络学习算法及流程
以三层BP神经网络为例,它的训练过程包括以下几个步骤:
步骤 1:网络初始化。根据输入 X (x1 , x2, , xn) 和期望输出 D (d1 ,d2, , dl ) 来确定网络输入层、隐含层和输出层神经元(节点)个数,初始
vij vij vij
wjk wjk wjk
l
vij (
o k
w
jk
)
yj
(1
yj
) xi
wjk
o k
y
Hale Waihona Puke Baidu
j
k 1
其中
o k
(dk
ok
)ok
(1
ok
)
,
式中 为学习速率。
步骤6:判断算法迭代是否结束(可用网络总误差是否达到 精度要求等方式来判断),若没有结束,返回步骤2.
化各层神经元之间的连接权值 vij , wjk ,初始化隐含层阈值 a ,输出
层阈值 b ,给定学习速率和神经元传递函数.
步骤 2:隐含层输出计算。根据输入向量 X ,输入层和隐含层间连
接权值vij 以及隐含层阈值 a ,计算隐含层输出.
n
n
yi f ( vij xi a j ) f ( vij xi )
3
一、人工神经元数学模型
生物神经元,也称神经细胞,它是由细胞体、 树突、轴突和突触等生物组织构成的,并通过细胞 膜电位来实现生物神经元的兴奋与抑制、学习与联 想等基本功能,因此,它是构成人脑神经系统的基 本功能单元。其结构如下图所示。
4
根据生物神经元的结构与基本功能,可以将其 简化为下图的形式,并建立神经网络模型的基础—— 人工神经元数学模型: