欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第06讲反向传播网络优秀课件.ppt

    • 资源ID:91097487       资源大小:9.15MB        全文页数:37页
    • 资源格式: PPT        下载积分:18金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要18金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第06讲反向传播网络优秀课件.ppt

    第06讲反向传播网络第1 页,本讲稿共37 页反向传播网络(BackPropagation Network,简称BP网络)是将WH 学习规则一般化,对非线性可微分函数进行权值训练的多层网络。BP 网络是一种多层前向反馈神经网络,其神经元的变换函数是S 型函数,因此输出量为0到1之间的连续量,它可以实现从输入到输出的任意的非线性映射。由于其权值的调整采用反向传播(Backpropagation)的学习算法,因此被称为BP 网络。第2 页,本讲稿共37 页BP 网络主要用于:1)函 数 逼 近:用 输 入 矢 量 和 相 应 的 输 出 矢 量 训 练 一 个 网络逼近个函数;2)模 式 识 别:用 一 个 特 定 的 输 出 矢 量 将 它 与 输 入 矢量联系起来;3)分类:把输入矢量以所定义的合适方式进行分类;4)数据压缩:减少输出矢量维数以便于传输或存储。第3 页,本讲稿共37 页61 BP 网络模型与结构 一个具有r 个输入和一个隐含层的神经网络模型结构 第4 页,本讲稿共37 页感知器和自适应线性元件的主要差别在激活函数上:前者是二值型的,后者是线性的。BP 网络具有一层或多层隐含层,除了在多层网络上与前面已介绍过的模型有不同外,其主要差别也表现在激活函数上。BP 网络的激活函数必须是处处可微的,所以它就不能采用二值型的阀值函数0,1 或符号函数1,1,BP 网络经常使用的是S 型的对数或正切激活函数和线性函数。第5 页,本讲稿共37 页图6.2 BP 网络S 型激活函数 因为S 型函数具有非线性放大系数功能,它可以把输入从负无穷大到正无穷大的信号,变换成-1 到l 之间输出,对较大的输入信号,放大系数较小;而对较小的输入信号,放大系数则较大,所以采用S 型激活函数可以去处理和逼近非线性的输入/输出关系。第6 页,本讲稿共37 页只有当希望对网络的输出进行限制,如限制在0和1之间,那么在输出层应当包含S 型激活函数,在一般情况下,均是在隐含层采用S 型激活函数,而输出层采用线性激活函数。BP 网络的特点:1、输入和输出是并行的模拟量;2、网 络 的 输 入 输 出 关 系 是 各 层 连 接 的 权 因 子 决 定,没 有固定的算法;3、权 因 子 是 通 过 学 习 信 号 调 节 的,这 样 学 习 越 多,网络越聪明;4、隐 含 层 越 多,网 络 输 出 精 度 越 高,且 个 别 权 因 子 的 损坏不会对网络输出产生大的影响第7 页,本讲稿共37 页62 BP 学习规则 BP 算法属于 算法,是一种监督式的学习算法。其主要思想为:对于q个输入学习样本:P1,P2,Pq,已知与其对应的输出样本为:T1,T2,Tq。学习的目的是用网络的实际输出A1,A2,Aq,与目标矢量T1,T2,Tq,之间的误差来修改其权值,使Al,(l l,2,q)与期望的Tl尽可能地接近;即:使网络输出层的误差平方和达到最小。第8 页,本讲稿共37 页BP 算法是由两部分组成:信息的正向传递与误差的反向传播。在正向传播过程中,输入信息从输入经隐含层逐层计算传向输出层,每一层神经元的状态只影响下一层神经元的状态。如果在输出层没有得到期望的输出,则计算输出层的误差变化值,然后转向反向传播,通过网络将误差信号沿原来的连接通路反传回来修改各层神经元的权值直至达到期望目标。第9 页,本讲稿共37 页图6 3 具有一个隐含层的简化网络图 设输入为P,输入神经元有r 个,隐含层内有s1 个神经元,激活函数为F1,输出层内有s2 个神经元,对应的激活函数为F2,输出为A,目标矢量为T。第10 页,本讲稿共37 页621信息的正向传递1)隐含层中第i 个神经元的输出为:2)输出层第k个神经元的输出为:3)定义误差函数为:(6.1)(6.2)(6.3)第11 页,本讲稿共37 页6 2 2 利用梯度下降法求权值变化及误差的反向传播(1)输出层的权值变化对从第i 个输入到第k个输出的权值有:其中:同理可得:(6.4)(6.5)(6.6)(6.7)第12 页,本讲稿共37 页(2)隐含层权值变化 对从第j 个输入到第i 个输出的权值,有:其中:同理可得:(6.8)(6.9)(6.10)第13 页,本讲稿共37 页通过MATLAB 的实现过程:1)对 于(6 1)式 所 表 示 的 隐 含 层 输 出,若 采 用 对 数S 型 激 活 函数,则 用 函 数logsig.m;若 采 用 双 曲 正 切S 型 激 活 函 数,则 用函数tansig.m;2)对 于(6 2)式 所 表 示 的 输 出 层 输 出,若 采 用 线 性 激 活 函 数 有purelin.m 与之对应;3)对于(6 3)式所表示的误差函数,可用函数sumsqr.m 求之;4)有learnbp.m 函 数 专 门 求(6 4)、(6 7)、(6 8)和(6 10)式 所 表示的输出层以及隐含层中权值与偏差的变化量;5)由(6.5)和(6.9)式所表示的误差的变化有函数deltalin.m、deltatan.m、deltalog.m来解决。它们分别用于线性层、双曲正切层和对数层。第14 页,本讲稿共37 页6 2 3 误差反向传播的流程图与图形解释 误差反向传播过程实际上是通过计算输出层的误差ek,然后将其与输出层激活函数的一阶导数f2 相乘来求得ki。由于隐含层中没有直接给出目标矢量,所以利用输出层的ki反向传递来求出隐含层权值的变化量w2ki。然后计算并同样通过将ei与该层激活函数的一阶导数f1 相乘,而求得ij,以此求出前层权值的变化量w1ij。如果前面还有隐含层,沿用上述同样方法依此类推,一直将输出误差ek一层一层的反推算到第一层为止。第15 页,本讲稿共37 页图6 4 误差反向传播法的图形解释 第16 页,本讲稿共37 页6.3 BP 网络的训练过程 为了训练一个BP 网络,需要计算网络加权输入矢量以及网络输出和误差矢量,然后求得误差平方和。当所训练矢量的误差平方和小于误差目标,训练则停止,否则在输出层计算误差变化,且采用反向传播学习规则来调整权值,并重复此过程。当网络完成训练后,对网络输入一个不是训练集合中的矢量,网络将以泛化方式给出输出结果。第17 页,本讲稿共37 页为了能够较好地掌握BP 网络的训练过程,我们用两层网络为例来叙述BP 网络的训练步骤。1)用 小 的 随 机 数 对 每 一 层 的 权 值W 和 偏 差B 初 始 化,以 保证 网 络 不 被 大 的 加 权 输 入 饱 和;并 进 行 以 下 参 数 的 设定或初始化:a)期望误差最小值error_goal;b)最大循环次数max_epoch;c)修 正 权 值 的 学 习 速 率1r,一 般 情 况 下k 00l0 7;d)从1开 始 的 循 环 训 练:for epoch 1:max_epoch;第18 页,本讲稿共37 页2)计算网络各层输出矢量A1 和A2 以及网络误差E:A1 tansig(W1*P,B1);A2 purelin(W2*A1,B2);E T-A;3)计 算 各 层 反 传 的 误 差 变 化D2 和D1 并 计 算 各 层 权 值 的 修正值以及新权值:D2 deltalin(A2,E);D1 deltatan(A1,D2,W2);dlWl,dBl learnbp(P,D1,lr);dW2,dB21earnbp(A1,D2,1r);W1 W1 十dW1;B1 B1 十dBl;W2 W2 十dW2;B2 B2 十dB2;第19 页,本讲稿共37 页4)再次计算权值修正后误差平方和:SSE sumsqr(T-purelin(W2*tansig(W1*P,B1),B2);5)检 查SSE 是 否 小 于err_goal,若 是,训 练 结 束;否 则继续。以上所有的学习规则与训练的全过程,仍然可以用函数trainbp.m 来完成。它的使用同样只需要定义有关参数:显示间隔次数,最大循环次数,目标误差,以及学习速率,而调用后返回训练后权值,循环总数和最终误差:TP disp_freq max_epoch err_goal 1r;W,B,epochs,errors trainbp(W,B,F,P,T,TP);第20 页,本讲稿共37 页 例61 用于函数逼近的BP 网络的设计。P=-1:0.1:1;T=-0.96 0.577-0.0729 0.377 0.641 0.66 0.461 0.1336-0.201-0.434-0.5-0.393-0.1647 0.0988 0.3072 0.396 0.3449 0.1816-0.0312-0.2183-0.3201;比较trainbpx 和trainbp 的速度差别。exc4.m第21 页,本讲稿共37 页泛化性能:使网络平滑地学习函数,使网络能够合理地响应被训练以外的输入。要注意的是,泛化性能只对被训练的输入输出对最大值范围内的数据有效,即网络具有内插值特性,不具有外插值性。超出最大训练值的输入必将产生大的输出误差。第22 页,本讲稿共37 页64 BP 网络的设计 641网络的层数理论上已经证明:具有偏差和至少一个S 型隐含层加上一个线性输出层的网络,能够逼近任何有理函数。增加层数主要可以更进一步的降低误差,提高精度,但同时也使网络复杂化,从而增加了网络权值的训练时间。一般情况下,应优先考虑增加隐含层中的神经元数。能不能仅用具有非线性激活函数的单层网络来解决问题呢?结论是:没有必要或效果不好。第23 页,本讲稿共37 页642 隐含层的神经元数网络训练精度的提高,可以通过采用一个隐含层,而增加其神经元数的方法来获得。这在结构实现上,要比增加更多的隐含层要简单得多。在具体设计时,比较实际的做法是通过对不同神经元数进行训练对比,然后适当地加上一点余量。第24 页,本讲稿共37 页643初始权值的选取一般取初始权值在(1,1)之间的随机数。威得罗等人在分析了两层网络是如何对一个函数进行训练后,提出一种选定初始权值的策略。在MATLAB 工具箱中可采用函数nwlog.m 或nwtan.m 来初始化隐含层权值W1 和B1。其方法仅需要使用在第一隐含层的初始值的选取上,后面层的初始值仍然采用随机取数。第25 页,本讲稿共37 页644 学习速率学习速率决定每一次循环训练中所产生的权值变化量。大的学习速率可能导致系统的不稳定。小的学习速率导致较长的训练时间,可能收敛很慢,不过能保证网络的误差值不跳出误差表面的低谷而最终趋于最小误差值。所以在一般情况下,倾向于选取较小的学习速率以保证系统的稳定性。学习速率的选取范围在00108之间。第26 页,本讲稿共37 页645 期望误差的选取在设计网络的训练过程中,期望误差值也应当通过对比训练后确定一个合适的值。这个所谓的“合适”,是相对于所需要的隐含层的节点数来确定,因为较小的期望误差值是要靠增加隐含层的节点,以及训练时间来获得的。一般情况下,作为对比,可以同时对两个不同期望误差值的网络进行训练,最后通过综合因素的考虑来确定采用其中一个网络。第27 页,本讲稿共37 页65 限制与不足(1)需要较长的训练时间(2)完全不能训练 通常为了避免这种现象的发生,一是选取较小的初始权值,二是采用较小的学习速率,但这又增加了训练时间。(3)局部极小值 BP 算法可以使网络权值收敛到一个解,但它并不能保证所求为误差超平面的全局最小解,很可能是一个局部极小解。第28 页,本讲稿共37 页66 反向传播法的改进方法 主要目标是为了加快训练速度,避免陷入局部极小值。661 附加动量法 附加动量法使网络在修正其权值时,不仅考虑误差在梯度上的作用,而且考虑在误差曲面上变化趋势的影响,其作用如同一个低通滤波器,它允许网络忽略网络上的微小变化特性。利用附加动量的作用则有可能滑过局部极小值。第29 页,本讲稿共37 页该方法是在反向传播法的基础上在每一个权值的变化上加上一项正比于前次权值变化量的值,并根据反向传播法来产生新的权值变化。带有附加动量因子的权值调节公式为:其中k为训练次数,mc 为动量因子,一般取0 95 左右。附加动量法的实质是将最后一次权值变化的影响,通过一个动量因子来传递。当动量因子取值为零时,权值的变化仅是根据梯度下降法产生;当动量因子取值为1 时,新的权值变化则是设置为最后一次权值的变化,而依梯度法产生的变化部分则被忽略掉了。在MATLAB 工具箱中,带有动量因子的权值修正法是用函数learnbpm.m 来实现的。第30 页,本讲稿共37 页trainbpm.m 可以训练一层直至三层的带有附加动量因子的反向传播网络。下面是对单层网络使用函数trainbpm.m 的情形:W,B,epochs,errors trainbpm(W,B,F,P,T,TP);第31 页,本讲稿共37 页6 6 2 误差函数的改进 包穆(Baum)等人于1988 年提出一种误差函数为:不会产生不能完全训练的麻痹现象。第32 页,本讲稿共37 页6 6 3 自适应学习速率 通常调节学习速率的准则是:检查权值的修正值是否真正降低了误差函数,如果确实如此,则说明所选取的学习速率值小了,可以对其增加一个量;若不是这样,而产生了过调,那么就应该减小学习速率的值。下式给出了一种自适应学习速率的调整公式:MATLAB 工具箱中带有自适应学习速率进行反向传播训练的函数为:trainbpa.m。它可以训练直至三层网络。使用方法为:W,B,epochs,TE trainbpa(W,B,F,P,T,TP)第33 页,本讲稿共37 页可以将动量法和自适应学习速率结合起来以利用两方面的优点。这个技术已编入了函数trainbpx.m 之中。这个函数的调用和其他函数一样,只是需要更多的初始参数而已:TP disp_freq max_epoch error_goal lr 1r_inc 1r_dec mom_const err_ratio;W,B,epochs,error;lr trainbpx(W,B,F,P,T,TP)第34 页,本讲稿共37 页47 本章小结 1)反 向 传 播 法 可 以 用 来 训 练 具 有 可 微 激 活 函 数 的 多 层 前 向 网 络 以进行函数逼近,模式分类等工作;2)反 向 传 播 网 络 的 结 构 不 完 全 受 所 要 解 决 的 问 题 所 限 制。网 络 的 输入 神 经 元 数 目 及 输 出 层 神 经 元 的 数 目 是 由 问 题 的 要 求 所 决 定 的,而 输 入 和 输 出 层 之 间 的 隐 含 层 数 以 及 每 层 的 神 经 元 数 是 由 设 计 者来决定的;3)已 证 明,两 层S 型 线 性 网 络,如 果S 型 层 有 足 够 的 神 经 元,则能够训练出任意输入和输出之间的有理函数关系;第35 页,本讲稿共37 页4)反 向 传 播 法 沿 着 误 差 表 面 的 梯 度 下 降,使 网 络 误 差 最 小,网 络有可能陷入局部极小值;5)附 加 动 量 法 使 反 向 传 播 减 少 了 网 络 在 误 差 表 面 陷 入 低 谷 的 可 能性并有助于减少训练时间;6)太 大 的 学 习 速 率 导 致 学 习 的 不 稳 定,太 小 值 又 导 致 极 长 的 训练 时 间。自 适 应 学 习 速 率 通 过 在 保 证 稳 定 训 练 的 前 提 下,达到了合理的高速率,可以减少训练时间;7)80 90 的 实 际 应 用 都 是 采 用 反 向 传 播 网 络 的。改 进 技 术可 以 用 来 使 反 向 传 播 法 更 加 容 易 实 现 并 需 要 更 少 的 训 练 时间。第36 页,本讲稿共37 页48作业 用BP 神 经 网 络 对 一 个 简 单 的 非 线 性 神 经 元进行训练。输入矢量 p=-3 2目标矢量 t=0.4 0.8第37 页,本讲稿共37 页

    注意事项

    本文(第06讲反向传播网络优秀课件.ppt)为本站会员(石***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开