2015讲义_4.2BP网络设计及实例分析.ppt

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2015讲义_4.2BP网络设计及实例分析

BP网络相关函数详解 函数名称 功能 logsig Log-Sigmoid函数 tansig Tan-Sigmoid函数 newff 创建一个BP网络 feedforwardnet 创建一个BP网络(推荐使用) newcf 创建级联的前向神经网络 cascadeforwardnet 创建级联的前向神经网络(推荐使用) newfftd 创建前馈输入延迟的BP网络 5.BP网络相关函数详解 logsig——Log-Sigmoid传输函数 Log-Sigmoid函数的特点是 范围的数据被映射到区间 可以使用下面的代码将神经网络节点的传输函数定义为Log-Sigmoid函数: net.layers{i}.transferFcn=’logsig’; 5.BP网络相关函数详解 tansig——Tan-Sigmoid传输函数 tansig 是双曲正切Sigmoid函数,调用形式与logsig函数相同。取值范围: x=-4:.1:4; y=tansig(x); % Tag-Sigmoid函数 plot(x,y,^-r) title(Tan-sig 函数) xlabel(x) ylabel(y) grid on 5.BP网络相关函数详解 dlogsig/dtansig——Sigmoid函数的导数 x=-4:.1:4; y=logsig(x); % logsig函数 dy=dlogsig(x,y); % logsig函数的导数 subplot(211) plot(x,y); title(logsig) subplot(212); plot(x,dy); title(dlogsig) 5.BP网络相关函数详解 newff——创建一个BP网络: 新版语法net=newff(P,T,S) P:R*Q1矩阵,表示创建的神经网络中,输入层有R个神经元。每行对应一个神经元输入数据的典型值,实际应用中常取其最大最小值。 T:SN*Q2矩阵,表示创建的网络有SN个输出层节点,每行是输出值的典型值 S:标量或向量,用于指定隐含层神经元个数,若隐含层多于一层,则写成行向量的形式。 旧版语法格式net=newff(P,N,TF,BTF) : P表示输入向量的典型值, N为各层神经元的个数, TF为表示传输函数的细胞数组, BTF为训练函数 5.BP网络相关函数详解 旧版newff默认训练函数为traingdx(学习率自适应并附加动量因子的最速下降法),新版默认训练函数为trainlm。新版速度更快,但更占用内存 新版newff将输入的60%用于训练,20%用于检验,20%用于验证,采用了提前终止的策略,防止过拟合的情况发生。对于同一个问题,往往会出现新版最终训练误差大于旧版newff的情况。 用newff逼近二次函数,新版的函数误差比旧版函数大 example6_3.m 5.BP网络相关函数详解 feedforwardnet——创建一个BP网络 feedforwardnet是新版神经网络工具箱中替代newff的函数 feedforwardnet(hiddenSizes,trainFcn) hiddenSizes为隐含层的神经元节点个数,如果有多个隐含层,则hiddenSizes是一个行向量,缺省值为10。 trainFcn为训练函数,缺省值为’trainlm’。 [x,t] = simplefit_dataset; % MATLAB自带数据,x、t均为1*94向量 net = feedforwardnet; view(net) net = train(net,x,t); view(net) y = net(x); perf = perform(net,y,t) 5.BP网络相关函数详解 newcf——级联的前向神经网络 在新版中使用cascadeforwardnet函数代替 5.BP网络相关函数详解 net = newcf(P,T,[S1 S2...S(N-1)]) P:R*Q1矩阵,每行对应一个神经元输入数据的典型值。 T:SN*Q2矩阵,表示创建的网络有SN个输出层节点,每行是输出值的典型值。 Si:表示隐含层神经元个数,若隐含层多于一层,则写成行向量的形式。 与newff比较类似 5.BP网络相关函数详解 用newff和newcf对一段数据进行拟合,数据输入为向量 输出为 ,是一段折线。新版替代函数: cascadeforwardnet f2=cascadeforwardnet([3,5]); view(f2) rng(2)

文档评论(0)

441113422 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档