第5章_人工神经网络_matlab工具箱.ppt
文本预览下载声明
模式识别讲义第5章 人工神经网络 黄可坤 嘉应学院 主要内容 0 引例:神经网络函数拟合(预测) 1 matlab神经网络工具箱 2 人工神经网络(ANN)简介 3 前馈神经网络(BP网络) 4 实例:多元神经网络预测 5 实验:神经网络分类 matlab代码 网络结构 1 matlab神经网络工具箱 1.1 网络数据对象的建立 net=newff([xm,xM],[h1,…,hk],{f1,…,fk}); xm,xM分别为列向量(行数为变量个数),分别存储每个变量的最小值和最大值。 [h1,…,hk]表示网络各层的节点数, 一共有k层. {f1,…,fk}表示各层使用的传输函数,默认为’tansig’,即Sigmoid函数。还可使用函数’purelin’,即f(x)=x。 其它可看matlab帮助: help newff 1.2 网络数据对象net的属性 net.IW:来自输入层的加权矩阵。BP网络只用net.IW{1},表示各个输入变量对第1层各节点的加权矩阵。 net.LW:来自中间层的加权向量。 BP网络用net.IW{2,1}表示第1隐层个节点向下一层个节点的加权矩阵; net.IW{3,2}表示第2隐层向下一层的加权矩阵… net.b:各层的偏移。Net.b{1}表示第1隐层个节点的偏移… net.trainParam.epochs:最大训练步数。不过当误差准则满足时,即使没达到此步数也停止训练。缺省为100。 net.trainParam.goad:网络误差准则,当误差小于此准则时停止训练,缺省为0。 net.trainFcn:训练算法。缺省为 ’trainlm’,即Levenberg-Marquardt算法。还可使用‘traingdx’,即带动量的梯度下降算法;’traincgf’,即共轭梯度法。 其它可看matlab帮助:help-contents- Neural Network Toobox- Network Object Reference; help(net.trainFcn) help newff Caution: 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 trainlm 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); net是函数newff建立的数据对象。 X为n*m的矩阵, n为输入变量个数, m为样本数(即把每个样本是一个列向量)。 Y为k*m的矩阵, k为数出变量个数。 tr返回训练的跟踪信息, tr.epochs为训练步数, tr.perf为各步目标函数的值。 Y1和E返回网络最终的输出和误差。 训练结束后可以用plotperf(tr)来绘制目标值随着训练步数变化的曲线。 1.4 网络的泛化(预测) Y=sim(net,X); net是函数newff建立的数据对象。 X为n*m的矩阵, n为输入变量个数, m为样本数(即把每个样本是一个行向量)。 Y为k*m的矩阵, k为数出变量个数。 2 人工神经网络(ANN)简介 2.1 人工神经网络(ANN)的研究内容 (1)理论研究:ANN模型及其学习算法,试图从数学上描述ANN的动力学过程,建立相应的ANN模型,在该模型的基础上,对于给定的学习样本,找出一种能以较快的速度和较高的精度调整神经元间互连权值,使系统达到稳定状态,满足学习要求的算法。 (2)实现技术的研究:探讨利用电子、光学、生物等技术实现神经计算机的途径。 (3)应用的研究:探讨如何应用ANN解决实际问题,如模式识别、故障检测、智能机器人等。 2.2 ANN研究的目的和意义 (1)通过揭示物理平面与认知平面之间的映射,了解它们相互联系和相互作用的机理,从而揭示思维的本质,探索智能的本源。 (2)争取构造出尽可能与人脑具有相似
显示全部