




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、遥感影像识别遥感影像识别第六章第六章:神经网络在模式识神经网络在模式识别中的应用别中的应用 Part 1. 主要内容主要内容v概概 论论v神经元与网络结构神经元与网络结构v感知器模型感知器模型v反向传播网络模型反向传播网络模型v遥感图像处理试验遥感图像处理试验l反向传播网络(Back-Propagation Network,简称BP网络)是一种多层前向反馈神经网络,其神经元的变换函数是S型(Sigmoid)函数,因此输出量为0到1之间的连续量,它可以实现从输入到输出的任意的非线性映射。l 由于其权值的调整采用反向传播的学习算法,因此被称为BP网络。 lBP网络主要用于:l1) 函数逼近:用输入
2、矢量和相应的输出矢量训练一个网络逼近个函数;l2) 模式识别:用一个特定的输出矢量将它与输入矢量联系起来;l3) 分类:把输入矢量以所定义的合适方式进行分类;l4)数据压缩:减少输出矢量维数以便于传输或存储。 4.1 BP网络模型与结构网络模型与结构 一个具有一个具有r个输入和一个隐含层的神经网络模型结构个输入和一个隐含层的神经网络模型结构 l BP网络具有一层或多层隐含层,除了在多层网络上与前面已介绍过的模型有不同外,其主要差别也表现在激活函数上。l BP网络的激活函数必须是处处可微的,所以它就不能采用二值型的阀值函数0,1或符号函数-1,1,BP网络经常使用的是S型的对数或正切激活函数和线
3、性函数。 图图4-1 BP网络网络S型激活函数型激活函数 l 因为因为S型函数具有非线性放大系数功能,它可以把输入从型函数具有非线性放大系数功能,它可以把输入从负无穷大到正无穷大的信号,变换成负无穷大到正无穷大的信号,变换成-1到到l之间输出,对较之间输出,对较大的输入信号,放大系数较小;而对较小的输入信号,放大的输入信号,放大系数较小;而对较小的输入信号,放大系数则较大,所以采用大系数则较大,所以采用S型激活函数可以去处理和逼近非型激活函数可以去处理和逼近非线性的输入线性的输入/输出关系。输出关系。 l只有当希望对网络的输出进行限制,如限制在0和1之间,那么在输出层应当包含S型激活函数,在一
4、般情况下,均是在隐含层采用S型激活函数,而输出层采用线性激活函数。lBP网络的特点: 1)输入和输出是并行的模拟量; 2)网络的输入输出关系是各层连接的权因子决定,没有固定的算法; 3)权因子是通过学习信号调节的,这样学习越多,网络越聪明; 4)隐含层越多,网络输出精度越高,且个别权因子的损坏不会对网络输出产生大的影响。4.2 BP学习规则学习规则 lBP算法属于算法,是一种监督式的学习算法。 l其主要思想为:对于q个输入学习样本:P1,P2,Pq,已知与其对应的输出样本为:T1,T2,Tq。l学习的目的是用网络的实际输出A1,A2,Aq,与目标矢量T1,T2,Tq,之间的误差来修改其权值,使
5、Al,(ll,2,q)与期望的Tl尽可能地接近;即:使网络输出层的误差平方和达到最小。 l BP算法是由两部分组成:信息的正向正向传递与误差的反向反向传播。l 在正向传播过程中,输入信息从输入经隐含层逐层计算传向输出层,每一层神经元的状态只影响下一层神经元的状态。l 如果在输出层没有得到期望的输出,则计算输出层的误差变化值,然后转向反向传播,通过网络将误差信号沿原来的连接通路反传回来修改各层神经元的权值直至达到期望目标。 图图4-2 具有一个隐含层的简化网络图具有一个隐含层的简化网络图 l 设输入为设输入为P,输入神经元有输入神经元有r个,隐含层内有个,隐含层内有s1个神经元,个神经元,激活函
6、数为激活函数为F1,输出层内有输出层内有s2个神经元,对应的激活函数个神经元,对应的激活函数为为F2,输出为输出为A,目标矢量为目标矢量为T。 l4.2.1信息的正向传递 1) 隐含层中第i个神经元的输出为: 2)输出层第输出层第k个神经元的输出为:个神经元的输出为: 3)定义误差函数为:定义误差函数为: (4.1)(4.2) (4.3) l 4.2.2 利用梯度下降法求权值变化及误差的反向传播利用梯度下降法求权值变化及误差的反向传播 1) 隐含层的权值变化隐含层的权值变化对从第对从第i个输入到第个输入到第k个输出的权值有:个输出的权值有:其中:其中: 同理可得:同理可得: (4.4) (4.
7、5)()(4.6) (4.7) 2) 输出层权值变化输出层权值变化 对从第对从第j个输入到第个输入到第i个输出的权值,有:个输出的权值,有: 其中:其中: 同理可得:同理可得: (4.8) (4.9) (4.10) l 4.2.3 误差反向传播的流程误差反向传播的流程l 误差反向传播过程实际上是通过计算输出层的误差误差反向传播过程实际上是通过计算输出层的误差ek,然后将其与输出层激活函数的一阶导数然后将其与输出层激活函数的一阶导数f2相乘来求得相乘来求得ki。l 由于隐含层中没有直接给出目标矢量,所以利用输出层由于隐含层中没有直接给出目标矢量,所以利用输出层的的ki反向传递来求出隐含层权值的变
8、化量反向传递来求出隐含层权值的变化量w2ki。然后计然后计算。算。l 并同样通过将并同样通过将ei与该层激活函数的一阶导数与该层激活函数的一阶导数f1相乘,而相乘,而求得求得ij,以此求出前层权值的变化量以此求出前层权值的变化量w1ij。如果前面还如果前面还有隐含层,沿用上述同样方法依此类推,一直将输出误差有隐含层,沿用上述同样方法依此类推,一直将输出误差ek一层一层的反推算到第一层为止。一层一层的反推算到第一层为止。4.3 BP网络的训练过程网络的训练过程 l为了训练一个BP网络,需要计算网络加权输入矢量以及网络输出和误差矢量,然后求得误差平方和。l当所训练矢量的误差平方和小于误差目标,训练
9、则停止,否则在输出层计算误差变化,且采用反向传播学习规则来调整权值,并重复此过程。l当网络完成训练后,对网络输入一个不是训练集合中的矢量,网络将以泛化方式给出输出结果。4.4 BP网络的设计网络的设计 4.4.1网络的层数网络的层数l理论上已经证明:具有偏差和至少一个S型隐含层加上一个线性输出层的网络,能够逼近任何有理函数。 l增加层数主要可以更进一步的降低误差,提高精度,但同时也使网络复杂化,从而增加了网络权值的训练时间。 l一般情况下,应优先考虑增加隐含层中的神经元数。 l能不能仅用具有非线性激活函数的单层网络来解决问题呢?结论是:没有必要或效果不好。 4.4.2 隐含层的神经元数l网络训
10、练精度的提高,可以通过采用一个隐含层,而增加其神经元数的方法来获得。这在结构实现上,要比增加更多的隐含层要简单得多。 l在具体设计时,比较实际的做法是通过对不同神经元数进行训练对比,然后适当地加上一点余量。 4.4.3 初始权值的选取l一般取初始权值在(-1,1)之间的随机数。l威得罗等人在分析了两层网络是如何对一个函数进行训练后,提出一种选定初始权值的策略。l在MATLAB工具箱中可采用函数nwlog.m或nwtan.m来初始化隐含层权值W1和B1。l其方法仅需要使用在第一隐含层的初始值的选取上,后面层的初始值仍然采用随机取数。 4.4.4 学习速率l 学习速率决定每一次循环训练中所产生的权
11、值变化量。l 大的学习速率可能导致系统的不稳定。l小的学习速率导致较长的训练时间,可能收敛很慢,不过能保证网络的误差值不跳出误差表面的低谷而最终趋于最小误差值。l所以在一般情况下,倾向于选取较小的学习速率以保证系统的稳定性。学习速率的选取范围在00108之间。 4.4.5 期望误差的选取l 在设计网络的训练过程中,期望误差值也应当通过对比训练后确定一个合适的值。l 这个所谓的“合适”,是相对于所需要的隐含层的节点数来确定,因为较小的期望误差值是要靠增加隐含层的节点,以及训练时间来获得的。l 一般情况下,作为对比,可以同时对两个不同期望误差值的网络进行训练,最后通过综合因素的考虑来确定采用其中一
12、个网络。 4.5 限制与不足限制与不足 1)需要较长的训练时间2)完全不能训练 通常为了避免这种现象的发生,一是选取较小的初始权值,二是采用较小的学习速率,但这又增加了训练时间。 3)局部极小值 BP算法可以使网络权值收敛到一个解,但它并不能保证所求为误差超平面的全局最小解,很可能是一个局部极小解。 4.6 反向传播法的改进方法反向传播法的改进方法 主要目标是为了加快训练速度,避免陷入局部极小值。4.6.1 附加动量法附加动量法 l附加动量法使网络在修正其权值时,不仅考虑误差在梯度上的作用,而且考虑在误差曲面上变化趋势的影响,其作用如同一个低通滤波器,它允许网络忽略网络上的微小变化特性。 l利
13、用附加动量的作用则有可能滑过局部极小值。 l 该方法是在反向传播法的基础上在每一个权值的变化上该方法是在反向传播法的基础上在每一个权值的变化上加上一项正比于前次权值变化量的值,并根据反向传播法加上一项正比于前次权值变化量的值,并根据反向传播法来产生新的权值变化。来产生新的权值变化。l 带有附加动量因子的权值调节公式为:带有附加动量因子的权值调节公式为: l 其中其中k为训练次数,为训练次数,mc为动量因子,一般取为动量因子,一般取095左右。左右。 l 附加动量法的实质是将最后一次权值变化的影响,通过附加动量法的实质是将最后一次权值变化的影响,通过一个动量因子来传递。当动量因子取值为零时,权值
14、的变一个动量因子来传递。当动量因子取值为零时,权值的变化仅是根据梯度下降法产生;当动量因子取值为化仅是根据梯度下降法产生;当动量因子取值为1时,新的时,新的权值变化则是设置为最后一次权值的变化,而依梯度法产权值变化则是设置为最后一次权值的变化,而依梯度法产生的变化部分则被忽略掉了。生的变化部分则被忽略掉了。 l 在在MATLAB工具箱中,带有动量因子的权值修正法是用工具箱中,带有动量因子的权值修正法是用函数函数learnbpm.m来实现的。来实现的。 4.6.2 误差函数的改进误差函数的改进 包穆包穆(Baum)等人于等人于1988年提出一种误差函数为:年提出一种误差函数为: 不会产生不能完全
15、训练的麻痹现象。不会产生不能完全训练的麻痹现象。 4.6.3 自适应学习速率自适应学习速率 l 通常调节学习速率的准则是:检查权值的修正值是否通常调节学习速率的准则是:检查权值的修正值是否真正降低了误差函数,如果确实如此,则说明所选取的学真正降低了误差函数,如果确实如此,则说明所选取的学习速率值小了,可以对其增加一个量;若不是这样,而产习速率值小了,可以对其增加一个量;若不是这样,而产生了过调,那么就应该减小学习速率的值。下式给出了一生了过调,那么就应该减小学习速率的值。下式给出了一种自适应学习速率的调整公式:种自适应学习速率的调整公式:4.7 小结小结 1) 反向传播法可以用来训练具有可微激活函数的多层前向网络以进行函数逼近,模式分类等工作;2) 反向传播网络的结构不完全受所要解决的问题所限制。网络的输入神经元数目及输出层神经元的数目是由问题的要求所决定的,而输入和输出层之间的隐含层数以及每层的神经元数是由设计者来决定的;3) 已证明,两层S型线性网络,如果S型层有足够的神经元,则能够训练出任意输入和输出之间的有理函数关系;4) 反向传播法沿着误差表面的梯度下降,使网络误差最小
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 出国抚养孩子协议书范本
- 2025年重组载体疫苗项目发展计划
- 2025年高性能钼片合作协议书
- 心理健康辅导获奖课件
- 排练协议书范本格式
- 心理健康调适课件下载
- 修建大桥劳务协议书范本
- 房屋终止租赁协议书范本
- 借款调解协议书格式范本
- 2025年药用粉碎机械项目发展计划
- 2025四川绵阳科技城控股集团有限公司招聘28人(第一批)笔试历年参考题库附带答案详解
- 残疾人专职委员考试题目含答案
- 西藏堆龙民泰村镇银行招聘考试真题2024
- 医院法律法规培训内容
- 玉米杂交种子质量控制与高效制种技术的应用探索
- 建筑工程质量安全监督考试题库
- 在线学习课堂《项目管理概论》单元考核测试答案
- 执业药师资格考试《中药学综合知识与技能》真题及答案(2025年新版)
- 单位工作群管理制度
- 亚低温治疗的试题及答案
- 《光伏电站项目全过程管理手册》(第三分册:施工、验收、运维)
评论
0/150
提交评论