第5章人工神经网络matlab工具箱.ppt
《第5章人工神经网络matlab工具箱.ppt》由会员分享,可在线阅读,更多相关《第5章人工神经网络matlab工具箱.ppt(39页珍藏版)》请在优知文库上搜索。
1、模式识别讲义模式识别讲义第第5章章 人工神经网络人工神经网络 matlab神经网络工具箱神经网络工具箱主要内容主要内容l0 引例引例:神经网络函数拟合神经网络函数拟合(预测预测)l1 matlab神经网络工具箱神经网络工具箱l2 人工神经网络人工神经网络(ANN)简介简介l3 前馈神经网络前馈神经网络(BP网络网络)l4 实例:多元神经网络预测实例:多元神经网络预测l5 实验:神经网络分类实验:神经网络分类0 引例引例:神经网络函数拟合神经网络函数拟合(预测预测)试构造合适的神经网络模型拟合如下数据点试构造合适的神经网络模型拟合如下数据点,并预测并预测x=10的值的值:x00.511.522.
2、533.544.5y00.430.690.740.610.360.08-0.17-0.34-0.4x55.566.577.588.599.5y-0.35-0.23-0.080.060.160.210.20.150.07-0.01matlab代码代码lx=0:0.5:9.5;ly=0,0.43,0.69,0.74,0.61,0.36,0.08,-0.17,-0.34,-0.4,-0.35,-0.23,-0.08,0.06,0.16,0.21,0.2,0.15,0.07;lnet=newff(0,9.5,5,1);lnet.trainParam.epochs=100;lnet.trainParam
3、.goad=0.000001;lnet=train(net,x,y);lx1=0:0.1:10;ly1=sim(net,x1);lfigure;plot(x,y,.);hold on;plot(x1,y1,r);ffffffxyw11w12w13w14w15w21w22w23w24w25b1b2b3b4b5b网络结构网络结构221()1xxef xey=f(w21*f(w11*x+b1)+w25*f(w15*x+b5)+b)w1=net.IW1;w2=net.LW2;b1=net.b1;b2=net.b2;a=tansig(w1*x0+b1);y=tansig(w2*a+b2)Sigmoid函
4、数函数1 matlab神经网络工具箱神经网络工具箱1.1 网络数据对象的建立网络数据对象的建立net=newff(xm,xM,h1,hk,f1,fk);lxm,xM分别为列向量分别为列向量(行数为变量个数行数为变量个数),分别,分别存储每个变量的最小值和最大值。存储每个变量的最小值和最大值。lh1,hk表示网络各层的节点数表示网络各层的节点数,一共有一共有k层层.lf1,fk表示各层使用的传输函数,默认表示各层使用的传输函数,默认为为tansig,即,即Sigmoid函数。还可使用函函数。还可使用函数数purelin,即,即f(x)=x。l其它可看其它可看matlab帮助帮助:help new
5、ff1.2 网络数据对象网络数据对象net的属性的属性lnet.IW:来自输入层的加权矩阵。:来自输入层的加权矩阵。BP网络网络只用只用net.IW1,表示各个输入变量对第表示各个输入变量对第1层各层各节点的加权矩阵。节点的加权矩阵。lnet.LW:来自中间层的加权向量。:来自中间层的加权向量。BP网络网络用用net.IW2,1表示第表示第1隐层个节点向下一层隐层个节点向下一层个节点的加权矩阵;个节点的加权矩阵;net.IW3,2表示第表示第2隐隐层向下一层的加权矩阵层向下一层的加权矩阵lnet.b:各层的偏移。:各层的偏移。Net.b1表示第表示第1隐层隐层个节点的偏移个节点的偏移lnet.
6、trainParam.epochs:最大训练步数。不过:最大训练步数。不过当误差准则满足时,即使没达到此步数也停当误差准则满足时,即使没达到此步数也停止训练。缺省为止训练。缺省为100。lnet.trainParam.goad:网络误差准则,当误差:网络误差准则,当误差小于此准则时停止训练,缺省为小于此准则时停止训练,缺省为0。lnet.trainFcn:训练算法。缺省为:训练算法。缺省为 trainlm,即即Levenberg-Marquardt算法。还可使用算法。还可使用traingdx,即带动量的梯度下降算,即带动量的梯度下降算法;法;traincgf,即共轭梯度法。,即共轭梯度法。l其
7、它可看其它可看matlab帮助帮助:help-contents-Neural Network Toobox-Network Object Reference;lhelp(net.trainFcn)lhelp newfflCaution:trainlm is the default training function because it is very fast,but it requires a lot of memory to run.If you get an out-of-memory error when training try doing one of these:Slow tr
8、ainlm training,but reduce memory requirements by setting net.trainParam.mem_reduc to 2 or more.(See help trainlm.)Use trainbfg,which is slower but more memory-efficient than trainlm.Use trainrp,which is slower but more memory-efficient than trainbfg.1.3 网络的训练网络的训练net,tr,Y1,E=train(net,X,Y);lnet是函数是函
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 人工 神经网络 matlab 工具箱