《BP算法介绍》PPT课件.ppt

上传人:san****019 文档编号:7341855 上传时间:2020-03-20 格式:PPT 页数:73 大小:5.10MB
返回 下载 相关 举报
《BP算法介绍》PPT课件.ppt_第1页
第1页 / 共73页
《BP算法介绍》PPT课件.ppt_第2页
第2页 / 共73页
《BP算法介绍》PPT课件.ppt_第3页
第3页 / 共73页
点击查看更多>>
资源描述
BP神经网络基本原理Back propagationArtificialNeuralNetworks 2020 3 20 1 人工神经元模拟生物神经元的一阶特性 输入 X x1 x2 xn 联接权 W w1 w2 wn T网络输入 net xiwi向量形式 net XW 2020 3 20 2 人工神经元的基本构成 激活函数执行对该神经元所获得的网络输入的变换 也可以称为激励函数 活化函数 o f net 1 线性函数 LinerFunction f net k net c 2020 3 20 3 激活函数 ActivationFunction ifnet f net k netif net 0为一常数 被称为饱和值 为该神经元的最大输出 2020 3 20 4 2 非线性斜面函数 RampFunction 2020 3 20 5 2 非线性斜面函数 RampFunction ifnet f net ifnet 均为非负实数 为阈值二值形式 1ifnet f net 0ifnet 双极形式 1ifnet f net 1ifnet 2020 3 20 6 3 阈值函数 ThresholdFunction 阶跃函数 2020 3 20 7 3 阈值函数 ThresholdFunction 阶跃函数 o net 0 压缩函数 SquashingFunction 和逻辑斯特函数 LogisticFunction f net a b 1 exp d net a b d为常数 它的饱和值为a和a b 最简单形式为 f net 1 1 exp d net 函数的饱和值为0和1 S形函数有较好的增益控制 2020 3 20 8 4 S形函数 2020 3 20 9 4 S形函数 生物神经网六个基本特征神经元及其联接 信号传递 训练 刺激与抑制 累积效果 阈值 人工神经元的基本构成 2020 3 20 10 课内容回顾 激活函数与M P模型线性函数 非线性斜面函数 阈值函数S形函数M P模型 2020 3 20 11 上次课内容回顾 2020 3 20 12 简单单级网 W wij 输出层的第j个神经元的网络输入记为netj netj x1w1j x2w2j xnwnj其中 1 j m 取NET net1 net2 netm NET XWO F NET 2020 3 20 13 简单单级网 2020 3 20 14 单级横向反馈网 V vij NET XW OVO F NET 时间参数神经元的状态在主时钟的控制下同步变化考虑X总加在网上的情况NET t 1 X t W O t VO t 1 F NET t 1 O 0 0考虑仅在t 0时加X的情况 稳定性判定 2020 3 20 15 单级横向反馈网 2020 3 20 16 多级网 层次划分信号只被允许从较低层流向较高层 层号确定层的高低 层号较小者 层次较低 层号较大者 层次较高 输入层 被记作第0层 该层负责接收来自网络外部的信息 2020 3 20 17 第j层 第j 1层的直接后继层 j 0 它直接接受第j 1层的输出 输出层 它是网络的最后一层 具有该网络的最大层号 负责输出网络的计算结果 隐藏层 除输入层和输出层以外的其它各层叫隐藏层 隐藏层不直接接受外界的信号 也不直接向外界发送信号 2020 3 20 18 约定 输出层的层号为该网络的层数 n层网络 或n级网络 第j 1层到第j层的联接矩阵为第j层联接矩阵 输出层对应的矩阵叫输出层联接矩阵 今后 在需要的时候 一般我们用W j 表示第j层矩阵 2020 3 20 19 2020 3 20 20 多级网层网络 非线性激活函数F X kX CF3 F2 F1 XW 1 W 2 W 3 2020 3 20 21 多级网 2020 3 20 22 循环网 如果将输出信号反馈到输入端 就可构成一个多层的循环网络 输入的原始信号被逐步地加强 被修复 大脑的短期记忆特征 看到的东西不是一下子就从脑海里消失的 稳定 反馈信号会引起网络输出的不断变化 我们希望这种变化逐渐减小 并且最后能消失 当变化最后消失时 网络达到了平衡状态 如果这种变化不能消失 则称该网络是不稳定的 2020 3 20 23 循环网 人工神经网络最具有吸引力的特点是它的学习能力 1962年 Rosenblatt给出了人工神经网络著名的学习定理 人工神经网络可以学会它可以表达的任何东西 人工神经网络的表达能力大大地限制了它的学习能力 人工神经网络的学习过程就是对它的训练过程 2020 3 20 24 人工神经网络的训练 无导师学习 UnsupervisedLearning 与无导师训练 UnsupervisedTraining 相对应抽取样本集合中蕴含的统计特性 并以神经元之间的联接权的形式存于网络中 2020 3 20 25 无导师学习 有导师学习 SupervisedLearning 与有导师训练 SupervisedTraining 相对应 输入向量与其对应的输出向量构成一训练 有导师学习的训练算法的主要步骤包括 1 从样本集合中取一个样本 Ai Bi 2 计算出网络的实际输出O 3 求D Bi O 4 根据D调整权矩阵W 5 对每个样本重复上述过程 直到对整个样本集来说 误差不超过规定范围 2020 3 20 26 有导师学习 Widrow和Hoff的写法 Wij t 1 Wij t yj aj t oi t 也可以写成 Wij t 1 Wij t Wij t Wij t joi t j yj aj t Grossberg的写法为 Wij t ai t oj t Wij t 更一般的Delta规则为 Wij t g ai t yj oj t Wij t 2020 3 20 27 Delta规则 1概述2基本BP算法3算法的改进4算法的实现5算法的理论基础6几个问题的讨论 2020 3 20 28 BP网络 1 BP算法的出现非循环多级网络的训练算法UCSDPDP小组的Rumelhart Hinton和Williams1986年独立地给出了BP算法清楚而简单的描述1982年 Paker就完成了相似的工作1974年 Werbos已提出了该方法2 弱点 训练速度非常慢 局部极小点的逃离问题 算法不一定收敛 3 优点 广泛的适应性和有效性 2020 3 20 29 一概述 4 BP网络主要用于1 函数逼近 用输入向量和相应的输出向量训练一个网络逼近一个函数 2 模式识别 用一个特定的输出向量将它与输入向量联系起来 3 分类 把输入向量以所定义的合适方式进行分类 4 数据压缩 减少输出向量维数以便于传输或存储 2020 3 20 30 概述 1网络的构成神经元的网络输入 neti x1w1i x2w2i xnwni神经元的输出 2020 3 20 31 二基本BP算法 应该将net的值尽量控制在收敛比较快的范围内可以用其它的函数作为激活函数 只要该函数是处处可导的 2020 3 20 32 输出函数分析 2020 3 20 33 网络的拓扑结构 BP网的结构输入向量 输出向量的维数 网络隐藏层的层数和各个隐藏层神经元的个数的决定实验 增加隐藏层的层数和隐藏层神经元个数不一定总能够提高网络精度和表达能力 BP网一般都选用二级网络 2020 3 20 34 网络的拓扑结构 2020 3 20 35 网络的拓扑结构 样本 输入向量 理想输出向量 权初始化 小随机数与饱和状态 不同保证网络可以学 1 向前传播阶段 1 从样本集中取一个样本 Xp Yp 将Xp输入网络 2 计算相应的实际输出Op Op Fl F2 F1 XpW 1 W 2 W L 2020 3 20 36 2训练过程概述 2 向后传播阶段误差传播阶段 1 计算实际输出Op与相应的理想输出Yp的差 2 按极小化误差的方式调整权矩阵 3 网络关于第p个样本的误差测度 2020 3 20 37 2训练过程概述 4 网络关于整个样本集的误差测度 2020 3 20 38 3误差传播分析 1 输出层权的调整 wpq wpq wpq wpq qop fn netq yq oq op oq 1 oq yq oq op 2020 3 20 39 2 隐藏层权的调整 2020 3 20 40 2 隐藏层权的调整 pk 1的值和 1k 2k mk有关不妨认为 pk 1通过权wp1对 1k做出贡献 通过权wp2对 2k做出贡献 通过权wpm对 mk做出贡献 pk 1 fk 1 netp wp1 1k wp2 2k wpm mk vhp vhp vhpvhp pk 1ohk 2 fk 1 netp wp1 1k wp2 2k wpm mk ohk 2 opk 1 1 opk 1 wp1 1k wp2 2k wpm mk ohk 2 2020 3 20 41 2 隐藏层权的调整 基本BP算法neti x1w1i x2w2i xnwni 2020 3 20 42 内容回顾 2020 3 20 43 内容回顾 样本权初始化向前传播阶段Op Fn F2 F1 XpW 1 W 2 W n 误差测度 2020 3 20 44 内容回顾 向后传播阶段误差传播阶段输出层权的调整wpq qop fn netq yq oq op oq 1 oq yq oq op隐藏层权的调整 2020 3 20 45 内容回顾 vhp opk 1 1 opk 1 wp1 1k wp2 2k wpm mk ohk 2 样本集 S X1 Y1 X2 Y2 Xs Ys 基本思想 逐一地根据样本集中的样本 Xk Yk 计算出实际输出Ok和误差测度E1 对W 1 W 2 W L 各做一次调整 重复这个循环 直到 Ep 用输出层的误差调整输出层权矩阵 并用此误差估计输出层的直接前导层的误差 再用输出层前导层误差估计更前一层的误差 如此获得所有其它各层的误差估计 并用这些估计实现对权矩阵的修改 形成将输出端表现出的误差沿着与输入信号相反的方向逐级向输入端传递的过程 2020 3 20 46 4基本的BP算法 1fork 1toLdo1 1初始化W k 2初始化精度控制参数 3E 1 4whileE do4 1E 0 2020 3 20 47 基本BP算法 4 2对S中的每一个样本 Xp Yp 4 2 1计算出Xp对应的实际输出Op 4 2 2计算出Ep 4 2 3E E Ep 4 2 4根据相应式子调整W L 4 2 5k L 1 4 2 6whilek 0do4 2 6 1根据相应式子调整W k 4 2 6 2k k 14 3E E 2 0 2020 3 20 48 基本BP算法 1 BP网络接受样本的顺序对训练结果有较大影响 它更偏爱较后出现的样本2 给集中的样本安排一个适当的顺序 是非常困难的 3 样本顺序影响结果的原因 分别依次4 用 X1 Y1 X2 Y2 Xs Ys 的总效果修改W 1 W 2 W L w k ij pw k ij 2020 3 20 49 算法的改进 1fork 1toLdo1 1初始化W k 2初始化精度控制参数 3E 1 4whileE do4 1E 0 4 2对所有的i j k w k ij 0 2020 3 20 50 消除样本顺序影响的BP算法 4 3对S中的每一个样本 Xp Yp 4 3 1计算出Xp对应的实际输出Op 4 3 2计算出Ep 4 3 3E E Ep 4 3 4对所有i j根据相应式子计算 pw L ij 4 3 5对所有i j w L ij w L ij pw L ij 4 3 6k L 1 4 3 7whilek 0do4 3 7 1对所有i j根据相应式子计算 pw k ij 4 3 7 2对所有i j w k ij w k ij pw k ij 4 3 7 3k k 14 4对所有i j k w k ij w k ij w k ij 4 5E E 2 0 2020 3 20 51 较好地解决了因样本的顺序引起的精度问题和训练的抖动问题收敛速度 比较慢偏移量 给每一个神经元增加一个偏移量来加快收敛速度冲量 联接权的本次修改要考虑上次修改的影响 以减少抖动问题 2020 3 20 52 算法分析 主要数据结构W H m 输出层的权矩阵 V n H 输入 隐藏 层的权矩阵 m 输出层各联接权的修改量组成的向量 H 隐藏层各联接权的修改量组成的向量 O1隐藏层的输出向量 O2输出层的输出向量 X Y 一个样本 2020 3 20 53 算法的实现 用不同的小伪随机数初始化W V 初始化精度控制参数 学习率 循环控制参数E 1 循环最大次数M 循环次数控制参数N 0 whileE N Mdo4 1N N 1 E 0 4 2对每一个样本 X Y 执行如下操作 2020 3 20 54 算法的主要实现步骤 1计算 O1 F1 XV O2 F2 O1W 2计算输出层的权修改量fori 1tom i O2 i 1 O2 i Y i O2 i 计算输出误差 fori 1tomE E Y i O2 i 2 2020 3 20 55 对每一个样本 X Y 执行的操作 隐藏层的神经元的个数H作为一个输入参数同时将 循环最大次数M等 作为算法的输入参数在调试阶段 最外层循环内 加一层控制 以探测网络是否陷入了局部极小点 2020 3 20 56 建议 基本假设网络含有L层联接矩阵 W 1 W 2 W L 第k层的神经元 Hk个自变量数 n H1 H1 H2 H2 H3 HL m样本集 S X1 Y1 X2 Y2 Xs Ys 误差测度 2020 3 20 57 算法的理论基础 用E代表EP 用 X Y 代表 XP YP X x1 x2 xn Y y1 y2 ym 该样本对应的实际输出为O o1 o2 om 2020 3 20 58 误差测度 用理想输出与实际输出的方差作为相应的误差测度 2020 3 20 59 误差测度 2020 3 20 60 最速下降法 要求E的极小点 取 2020 3 20 61 最速下降法 要求E的极小点 而其中的 所以 2020 3 20 62 最速下降法 要求E的极小点 令 所以 wij joi 为学习率 oj f netj 容易得到 2020 3 20 63 ANj为输出层神经元 从而 2020 3 20 64 ANj为输出层神经元 2020 3 20 65 ANj为输出层神经元 所以 故 当ANj为输出层的神经元时 它对应的联接权wij应该按照下列公式进行调整 2020 3 20 66 ANj为隐藏层神经元 2020 3 20 67 ANj为隐藏层神经元 netk 2020 3 20 68 ANj为隐藏层神经元 2020 3 20 69 ANj为隐藏层神经元 2020 3 20 70 ANj为隐藏层神经元 收敛速度问题局部极小点问题逃离 避开局部极小点 修改W V的初值并不是总有效 逃离统计方法 Wasserman 1986 将Cauchy训练与BP算法结合起来 可以在保证训练速度不被降低的情况下 找到全局极小点 2020 3 20 71 几个问题的讨论 网络瘫痪问题在训练中 权可能变得很大 这会使神经元的网络输入变得很大 从而又使得其激活函数的导函数在此点上的取值很小 根据相应式子 此时的训练步长会变得非常小 进而将导致训练速度降得非常低 最终导致网络停止收敛稳定性问题用修改量的综合实施权的修改连续变化的环境 它将变成无效的 2020 3 20 72 几个问题的讨论 步长问题BP网络的收敛是基于无穷小的权修改量步长太小 收敛就非常慢步长太大 可能会导致网络的瘫痪和不稳定自适应步长 使得权修改量能随着网络的训练而不断变化 1988年 Wasserman 2020 3 20 73 几个问题的讨论
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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