- 1、本文档共47页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 多层前向网络及BP学习算法 3.1多层感知器 3.2 BP学习算法 3.3 径向基网络 3.4 仿真实例 3.1多层感知器 单层感知器只能解决线性可分的分类问题,要增强网络的分类能力唯一的方法是采用多层网络,即在输入与输出层之间加上隐含层,从而构成多层感知器(Multilayer Perceptrons,MLP)。这种由输入层、隐含层(一层或者多层)和输出层构成的神经网络称为多层前向神经网络。 多层感知器 多层前向神经网络输入层中的每个源节点的激励模式(输入向量)单元组成了应用于第二层(如第一隐层)中神经元(计算节点)的输入信号,第二层输出信号成为第三层的输入,其余层类似。网络每一层的神经元只含有作为它们输入前一层的输出信号,网络输出层(终止层)神经元的输出信号组成了对网络中输入层(起始层)源节点产生的激励模式的全部响应。即信号从输入层输入,经隐层传给输出层,由输出层得到输出信号。 多层感知器 多层感知器同单层感知器相比具有四个明显的特点: (1)除了输入输出层,多层感知器含有一层或多层隐单元,隐单元从输入模式中提取更多有用的信息,使网络可以完成更复杂的任务。 (2)多层感知器中每个神经元的激励函数是可微的Sigmoid函数 多层感知器 (3)多层感知器的多个突触使得网络更具连通性,连接域的变化或连接权值的变化都会引起连通性的变化。 (4)多层感知器具有独特的学习算法,该学习算法就是著名的BP算法,所以多层感知器也常常被称之为BP网络。 多层感知器所具有的这些特点,使得它具有强大的计算能力。多层感知器是目前应用最为广泛的一种神经网络。 3.2 BP学习算法 反向传播算法(Back-Propagation algorithm, BP) BP学习过程: (1)工作信号正向传播:输入信号从输入层经隐单元,传向输出层,在输出端产生输出信号,这是工作信号的正向传播。在信号的向前传递过程中网络的权值是固定不变的,每一层神经元的状态只影响下一层神经元的状态。如果在输出层不能得到期望的输出,则转入误差信号反向传播。 BP学习算法 (2)误差信号反向传播:网络的实际输出与期望输出之间差值即为误差信号,误差信号由输出端开始逐层向后传播,这是误差信号的反向传播。在误差信号反向传播的过程中,网络的权值由误差反馈进行调节。通过权值的不断修正使网络的实际输出更接近期望输出。 BP学习算法步骤 第一步:设置变量和参量 第二步:初始化,赋给WMI (0), WIJ (0), WJP (0),各一个较小的随机非零值 第三步:随机输入样本Xk ,n=0。 第四步:对输入样本Xk ,前向计算BP网络每层神经元的输入信号u和输出信号v 第五步:由期望输出dk和上一步求得的实际输出 Yk (n)计算误差E(n),判断其是否满足要求,若满足转至第八步;不满足转至第六步。 BP学习算法步骤(续) 第六步:判断n+1是否大于最大迭代次数,若大于转至第八步,若不大于,对输入样本Xk ,反向计算每层神经元的局部梯度 第七步:计算权值修正量,修正权值;n=n+1,转至第四步 第八步:判断是否学完所有的训练样本,是则结束,否则转至第三步。 BP学习,需要注意几点: ① BP学习时权值的初始值是很重要的。初始值过大,过小都会影响学习速度,因此权值的初始值应选为均匀分布的小数经验值,大概为(–2.4/F,2.4/F)之间(也有人建议在 之间),其中F为所连单元的输入端个数。另外,为避免每一步权值的调整方向是同向的(即权值同时增加或同时减少),应将初始权值设为随机数。 ② 神经元的激励函数是Sigmoid函数,如果Sigmoid函数的渐进值为+α和–α,则期望输出只能趋于+α和–α,而不能达到+α和–α。为避免学习算法不收敛,提高学习速度,应设期望输出为相应的小数,如逻辑函数其渐进值为1和0,此时应设相应的期望输出为0.99和0.01等小数,而不应设为1和0。 ③ 用BP算法训练网络时有两种方式,一种是顺序方式,即每输入一个训练样本修改一次权值;以上给出的BP算法步骤就是按顺序方式训练网络的。另一种是批处理方式,即待组成一个训练周期的全部样本都一次输入网络后,以总的平均误差能量Eav为学习目标函数修正权值的训练方式。 ekp为网络输入第k个训练样本时输出神经元p的误差,N为训练样本的个数。 ④ BP学习中,学习步长η的选择比较重要。η值大权值的变化就大,则BP学习的收敛速度就快,但是η值过大会引起振荡即网络不稳定;η小可以避免网络不稳定,但是收敛速度就慢了。要解决这一矛盾最简单的方法是加入“动量项” 。 ⑤ 要计算多层感知器的局部梯度δ,需要知
文档评论(0)