MATLAB神经网络工具箱1

MATLAB神经网络工具箱1

ID:38567845

大小:234.01 KB

页数:18页

时间:2019-06-15

MATLAB神经网络工具箱1_第1页
MATLAB神经网络工具箱1_第2页
MATLAB神经网络工具箱1_第3页
MATLAB神经网络工具箱1_第4页
MATLAB神经网络工具箱1_第5页
资源描述:

《MATLAB神经网络工具箱1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、BP网络的生成newff函数newff用来生成一个BP网络net=newff(PR,[S1S2...SN],{TF1TF2...TFN},BTF,BLF,PF)PR:一个R×2矩阵,由R维输入向量的每维最小值和最大值组成Si:第i层的神经元个数TFi:第i层的传递函数,默认为tansigBTF:训练函数,默认为trainlmBLF:学习函数,默认为learngdmPF:性能函数,默认为msenet=newff([0,10;-1,2],[5,1],{‘tansig’,’purelin’},’trainlm’);%生成一个两层BP网络,隐层和输出层神经的个数为5和1,传递函数分

2、别为tansig和purelin,训练函数为trainlm,其他默认BP网络的初始化newff函数在建立网络对象的同时,自动调用初始化函数,根据缺省的参数设置网络的连接权值和阈值.使用函数init可以对网络进行自定义的初始化.通过选择初始化函数,可对各层连接权值和阈值分别进行不同的初始化.BP网络的学习规则权值和阈值的调节规则采用误差反向传播算法(backpropagation).反向传播算法分二步进行,即正向传播和反向传播。1.正向传播输入的样本从输入层经过隐单元一层一层进行处理,通过所有的隐层之后,则传向输出层;在逐层处理的过程中,每一层神经元的状态只对下一层神经元的状

3、态产生影响。在输出层把现行输出和期望输出进行比较,如果现行输出不等于期望输出,则进入反向传播过程。2.反向传播反向传播时,把误差信号按原来正向传播的通路反向传回,并对每个隐层的各个神经元的权系数进行修改,以望误差信号趋向最小。BP算法实质是求取误差函数的最小值问题。这种算法采用非线性规划中的最速下降方法,按误差函数的负梯度方向修改权系数。BP网络的快速学习算法与选择学习算法适用问题类型收敛性能占用存储空间其他特点trainlm函数拟合收敛快,误差小大性能随网络规模增大而变差trainrp模式分类收敛最快较小性能随网络训练误差减小而变差trainscg函数拟合模式分类收敛较快

4、性能稳定中等尤其适用于网络规模较大的情况trainbfg函数拟合收敛较快较大计算量岁网络规模的增大呈几何增长traingdx模式分类收敛较慢较小适用于提前停止的方法MATLAB神经网络工具箱对常规BP算法进行改进,提供了一系列快速算法,以满足不同问题的需要BP网络的训练利用已知的”输入—目标”样本向量数据对网络进行训练,采用train函数来完成.训练之前,对训练参数进行设置训练参数参数含义默认值net.trainParam.epochs训练步数100net.trainParam.show显示训练结果的间隔步数25net.trainParam.goal训练目标误差0net.t

5、rainParam.time训练允许时间INfnet.trainParam.lr学习率0.01net=train(net,P,T)BP网络的设计(1)网络层数已经证明,单隐层的BP网络可以实现任意非线性映射.BP网络的隐层数一般不超过两层.输入层的节点数输入层接收外部的输入数据,节点数取决于输入向量的维数输出层的节点数输出层的节点数取决于输出数据类型和该类型所需的数据大小.对于模式分类问题,节点数为BP网络的设计(2)隐层的节点数隐层的节点数与求解问题的要求,输入输出单元数多少有关.对于模式识别/分类的节点数可按下列公式设计传递函数隐层传递函数采用S型函数,输出层采用S型函

6、数或线性函数训练方法及其参数选择针对不同应用,BP网络提供了多种训练学习方法.其中为隐层节点数,为输入节点数,为1~10之间的整数BP网络设计实例采用动量梯度下降算法训练BP网络.训练样本%定义训练样本p=[-1-131;-115-3];t=[-1-111];%创建一个新的BP网络net=newff(minmax(p),[31],{'tansig','purelin'},'traingdm');%设置训练参数net.trainParam.epochs=1000;net.trainParam.goal=0.001;net.trainParam.show=50;net.trai

7、nParam.lr=0.05;net.trainParam.mc=0.9;%动量因子,缺省为0.9net=train(net,p,t);%训练网络A=sim(net,p)%网络仿真目标线训练误差变化曲线训练误差变化曲线(每次不同)例1:BP网络用于曲线拟合要求设计一个简单的BP网络,实现对非线性函数的逼近。通过改变该函数的参数以及BP网络隐层神经元的数目,来观察训练时间以及训练误差的变化情况。Step1:将要逼近的非线性函数设为正弦函数k=1;p=[-1:.05:1];t=sin(k*pi*p);plot(p,t,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。