BP网络常用传递函数.docxVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
精品文档 精品文档 PAGE PAGE #欢迎下载 BP网络常用传递函数 ? 5.6 BP刚貉常用时传谨函数 BP网络的传递函数有多种。Log-sigmoid型函数的输入值可取任意值,输出值在 0和1之间;tan-sigmod型传递函数tan sig的输入值可取任意值,输出值在-1 到+1之间;线性传递函数purelin的输入与输出值可取任意值。BP网络通常有 一个或多个隐层,该层中的神经元均采用sigmoid型传递函数,输出层的神经元 则采用线性传递函数,整个网络的输出可以取任意值。各种传递函数如图 5.6 所示。 只改变传递函数而其余参数均固定,用本章 5.2节所述的样本集训练BP网络时 发现,传递函数使用tan sig函数时要比logsig函数的误差小。于是在以后的训 练中隐层传递函数改用tan sig函数,输出层传递函数仍选用 purelin函数。 3)每层节点数的确定: 使用神经网络的目的是实现摄像机输出 RGB颜色空间与CIE-XYZ色空间转换,因 此BP网络的输入层和输出层的节点个数分别为 3。下面主要介绍隐层节点数量 的确定 对于多层前馈网络来说,隐层节点数的确定是成败的关键。 若数量太少,则网络 所能获取的用以解决问题的信息太少; 若数量太多,不仅增加训练时间,更重要 的是隐层节点过多还可能出现所谓“过渡吻合” ( Overfitt ing )问题,即测试 误差增大导致泛化能力下降,因此合理选择隐层节点数非常重要。关于隐层数及 其节点数的选择比较复杂,一般原则是:在能正确反映输入输出关系的基础上, 应选用较少的隐层节点数,以使网络结构尽量简单。本论文中采用网络结构增长 型方法,即先设置较少的节点数,对网络进行训练,并测试学习误差,然后逐渐 增加节点数,直到学习误差不再有明显减少为止。 n ewff() 功能建立一个前向BP网络 格式 net = newff(PR ,[S1 S2...SN1] ,{TF1 TF2...TFN1} ,BTF, BLF,PF) 说明 net为创建的新BP神经网络; PR为网络输入取向量取值范围的矩阵; [S1 S2…SNI]表示网络隐含层和输出层神经元的个数; {TFl TF2…TFN1}表示网络隐含层和输出层的传输函数,默认为‘ tan sig ' BTF表示网络的训练函数,默认为’trainlm ' BLF表示网络的权值学习函数,默认为’learngdm '; PF表示性能数,默认为’mse'。 参数TFi可以采用任意的可微传递函数,比如 transig , logsig和purelin 等; 训练函数可以是任意的 BP训练函数,女口 trainm,trainbfg ,trainrp 和traingd 等。 BTF默认采用trainlm 是因为函数的速度很快,但该函数的一个重要缺陷是运行过程会 消耗大量的内存资源。如果计算机内存不够大,不建议用 trai nlm ,而建议采用训练函数 trainbfg 或 trainrp 。 虽然这两个函数的运行速度比较慢, 但它们的共同特点是内存占用量小, 不至于出现训练 过程死机的情况。 参数TFi可以采用任意的可微传递函数,比如 transig ,logsig和purelin 等; 训练函数可以是任意的 BP训练函数,女口 trainm,trainbfg ,trainrp 和traingd 等。BTF 默认采用trainlm 是因为函数的速度很快,但该函数的一个重要缺陷是运行过程会消耗大量 的内存资源。如果计算机内存不够大,不建议用 trai nlm ,而建议采用训练函数 trai nbfg 或trainrp 。虽然这两个函数的运行速度比较慢,但它们的共同特点是内存占用量小,不至 于出现训练过程死机的情况。 训练函数: 包括梯度下降bp算法训练函数traingd ,动量反传递的梯度下降 bp算法训练 函数traingdm,动态自适应学习率的梯度下降 bp算法训练函数traingda,动量反传和动态 自适应学习率的梯度下降 bp算法训练函数traingdx , levenberg_marquardt 的bp算法训练 函数 trainlm 。 BP网络一般都是用三层的,四层及以上的都比较少用; 传输函数的选择,这个怎么说, 假设你想预测的结果是几个固定值,如 1,0等,满足某个条 件输出1,不满足则0的话,首先想到的是 hardlim函数,阈值型的,当然也可以考虑其他 的; 然后,假如网络是用来表达某种线性关系时,用 pureli n 线性传输函数; 若是非线性关系的话, 用别的非线性传递函数, 多层网络时,每层不一定要用相同的传递函 数,可以是三种配合,可以使非线性和线性,阈值的传递函数等; compet竞争型传递函数; hard

您可能关注的文档

文档评论(0)

乐乐 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档