- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
神经网络;2、2 BP网络
Rumelhart,McClelland于1985年提出了BP网络的误差反向后传BP(Back Propagation)学习算法
;
BP算法基本原理
利用输出后的误差来估计输出层的直截了当前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。
结构:多层前向网络。;;激发函数
必须处处可导,一般都使用S型函数
使用S型激活函数时BP网络输入与输出关系
输入
输出
输出的导数;2、前向网络及其主要算法;学习算法
学习的类型:有导师学习
核心思想:
将输出误差以某种形式通过隐层向输入层逐层反传
算法组成:正向传播 + 反向传播
(输入信息)(误差信号);
;算法步骤
网络结构:输入层有M个神经元,隐含层有q个神经元, 输出层有L个神经元。
学习样本:设有N个学习样本,每个学习样本包括M个输入和L个输出。通过学习使BP网络符合这些样本。以学习第p个样本为例(输入量为Xp,期望输出为Dp):
;前馈计算
隐含层第j个节点的输入可写为
第j个节点的输出为
其中 为激发函数,可取sigmoid函数形式,则
;输出层第k个节点的输入可写为
则输出层第k个节点的输出为
当实际输出与期望输出不一致时,进入反向传播时期将误差信号反向传播,修改权值。
反向传播
对第p个样本,定义二次型误差函数
; 学习的过程即是调节权值使得E最小的过程,在BP算法中采纳一阶梯度法(最速下降法)。
输出层权系数的调整:
为学习速率
定义反向误差传播信号
;
故
又有
故;隐层权系数的调整:
定义反向误差传播信号
其中
; 又有
故
有
则可得
加入样本标号,可写为
;BP算法的几个问题:
权值初值应设为较小的随机数
采纳s型激发函数时,期望输出不能设为1或0, 应设为0、9或0、1
学习速率在开始时可取大值,后期取小值。;;BP算法直观解释
情况二直观表达
当误差对权值的偏导数
小于零时,权值调整量
为正,实际输出少于期
??输出,权值向增大方
向调整,使得实际输出
与期望输出的差减少。
;例 1、
关于下图所示双输入双输出神经网络,给定样本X=[1,3]T D= =[0、95,0、05]T 求一步学习的结果。
(激励函数 , 学习效率 );BP网络的优点:
非线性映射能力。能学习和存贮大量输入-输出模式映射关系,而无需事先了解描述这种映射关系的数学方程。只要能提供足够多的样本模式对供网络进行学习训练,它便能完成由n维输入空间到m维输出空间的非线性映射。
泛化能力。当向网络输入训练时未曾见过的非样本数据时,网络也能完成由输入空间向输出空间的正确映射。这种能力称为泛化能力。
容错能力。输入样本中带有较大的误差甚至个别错误对网络的输入输出规律影响特别小。
;BP网络的缺点:
BP算法的学习速度特别慢
网络训练失败的估计性较大
难以解决应用问题的实例规模和网络规模间的矛盾
网络结构的选择尚无一种统一而完整的理论指导,一般只能由经验选定
新加入的样本要影响已学习成功的网络,而且刻画每个输入样本的特征的数目也必须相同
网络的预测能力(也称泛化能力、推广能力)与训练能力(也称逼近能力、学习能力)的矛盾
;BP网络的改进:
增加“惯性项
采纳动态步长
与其他全局搜索算法相结合
模拟退火算法
目前在神经网络的学习中,基于梯度的算法都不能从理论上保证收敛结果是全局最优的
;BP网络训练步骤:
1、获取训练样本集
获取训练样本集合是训练神经网络的第一步,也是十分重要和关键的一步。它包括训练数据的收集、分析、选择和预处理等
2、选择网络类型与结构
神经网络的类型特别多,需要依照任务的性质和要求来选择合适的网络类型。
3、训练与测试
最后一步是利用获取的训练样本对网络进行反复训练,直至得到合适的映射结果。
;BP网络MATLAB实现; 例3、下表为某药品的销售情况,现构建一个如下的三层BP神经网络对药品的销售进行预测:输入层有三个结点,隐含层结点数为5、 利用此网络对药品的销售量进行
文档评论(0)