神经网络例子参考模板_第1页
神经网络例子参考模板_第2页
神经网络例子参考模板_第3页
神经网络例子参考模板_第4页
神经网络例子参考模板_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、神经网络1. 单层感知器数据分类输出为0和1解决线性可分的分类模型例1.从待分类的数据中取出一部分数据及其对应的类别作为样本数据,设计并训练一个能对分类数据进行分类的单层感知器神经网络代码:%给定训练样本数据P=-.4 -.5 .6;.9 0 .1;%给定样本数据所对应的类别,用0和1来表示两种类别T=1 1 0;%创建一个有两个输入、样本数据的取值范围都在-1 1之间,并且网络只有一个神经元的感知器神经网络net=newp(-1 1;-1 1,1);%设置网络的最大训练次数为20次net.trainParam.epochs=20;%使用训练函数对创建的网络进行训练net=train(net,

2、P,T);%对训练后的网络进行仿真Y=sim(net,P)%计算网络的平均绝对误差,表示网络错误分类E1=mae(Y-T)%给定测试数据,检测训练好的神经网络的性能Q=0.6 0.9 -0.1;-0.1 -0.5 0.5;%使用测试数据,对网络进行仿真,仿真输出即为分类的结果Y1=sim(net,Q)%创建一个新的绘图窗口figure;1 / 9%在坐标中绘制测试数据点,并根据数据所对应的类别用约定的符号画出plotpv(Q,Y1);%在坐标中绘制分类线plotpc(net.iw1,net.b1)2. 线性神经网络模型线性神经网络类似感知器,但是线性神经网络的激活函数是线性的,而不是硬线转移函

3、数,因此,线性神经网络的输出可以是任意值,而感知器的输出不是0就是1,线性神经网络网络和感知器一样只能解决线性可分的问题.例2.要求设计一个线性神经网络,寻找给定数据之间的线性关系代码:P=1.1 -1.3;T=0.6 1;%创建一个只有一个输出,输入延迟为0,学习速率为0.01的线性神经网络,minmax(P)表示样本数据的取值范围 net=newlin(minmax(P),1,0,0.01);%对创建的神经网络进行初始化,设置权值和阈值的初始值net=init(net);net.trainParam.epochs=500;%设置网络训练后的目标误差为0.0001net.trainParam

4、.goal=0.0001;net=train(net,P,T);y=sim(net,P)%求解网络的均方误差值E=mse(y-T)3. BP神经网络预测能逼近任意非线性函数例3.表2-4为某药品的销售情况,现构建一个如下的BP神经网络对药品的销售进行预测:输入层为三个结点,隐含层结点数为5,隐含层的激活函数为tansig(双曲正切S型传递函数);输出层结点数为1,输出层的激活函数为logsig(S型的对数函数),并利用此网络对药品的销售量进行预测,预测的方法采用滚动预测方式,即用前三个月的销售量来预测第四个月的销售量,如用1、2、3月的销售量为输入预测第4个月的销售量,用2、3、4月的销售量为

5、输入预测第5个月的销售量。如此反复直至满足预测精度要求为止。月份123456销量205623952600229816341600月份789101112销量187314781900150020461556212 241  263 241  263 236 ;263 236 161  ; 236 161 168 161 168  187 168  187  148  187  148 193;148 193 157 205  156; 代码:%以每三个月的销售量经归一化

6、处理后作为输入P=0.5152 0.8173 1.000;0.8173 1.000 0.7308;1.000 0.7308 0.1390;0.7308 0.1390 0.1087;0.1390 0.1087 0.3520;0.1087 0.3520 0.000;%以第四个月的销售量归一化处理后作为目标向量T=0.7308 0.1390 0.1087 0.3520 0.000 0.3761;%创建一个BP神经网络,每一个输入向量的取值范围为0,1,隐含层为5个神经元,输出层有一个神经元,隐含层的激活函数为tansig,输出层的激活函数为logsig,训练函数为梯度下降函数net=newff(0

7、1; 0 1; 0 1,5 1,tansig,logsig,traingd);net.trainParam.epochs=15000;net.trainParam.goal=0.01;%设置学习速率为0.1LP.lr=0.1;net=train(net,P,T)4. RBF神经网络属于前向神经网络,能够以任意精度逼近任意连续函数,特别适合于解决分类问题例4.建立一个径向基神经网络,对非线性函数y=sqrt(x)进行逼近,并作出网络的逼近误差曲线代码:%输入从0开始变化到5,每次变化幅度为0.1x=0:0.1:5;y=sqrt(x);%建立一个目标误差为0,径向基函数的分布密度为0.5,隐含层神

8、经元个数的最大值为20,每增加5个神经元显示一次结果net=newrb(x,y,0,0.5,20,5);t=sim(net,x);%在以输入x和函数值与网络输出之间的差值y-t坐标上绘出误差曲线,并用“*”来标记函数值与输出值之间的差值plot(x,y-t,*-)5. 自组织竞争神经网络属于前向神经网络,特别适合于解决模式分类和识别方面的问题例5.人口分类是人口统计中的重要指标,现有1999年共10个地区的人口出生比例情况如下:出生男性百分比分别为:0.5512 0.5123 0.5087 0.5001 0.6012 0.5298 0.5000 0.4965 0.5103 0.5003;出生女

9、性百分比分别为:0.4488 0.4877 0.4913 0.4999 0.3988 0.4702 0.5000 0.5035 0.4897 0.4997;建立一个自组织神经网络对上述数据分类,给定某个地区的男女出生比例分别为:0.5,0.5,测试训练以后的自组织神经网络的性能,判断其属于哪个类别.代码:P=0.5512 0.5123 0.5087 0.5001 0.6012 0.5298 0.5000 0.4965 0.5103 0.5003; 0.4488 0.4877 0.4913 0.4999 0.3988 0.4702 0.5000 0.5035 0.4897 0.4997;%创建一

10、个自组织神经网络,0 1;0 1表示输入数据的取值范围在0 1之间,3 4表示竞争层组织结构为3×4,其余参数取默认值net=newsom(0 1;0 1, 3 4);net.trainParam.epochs=500;net=init(net);net=train(net,P);y=sim(net,P);%获取训练后的自组织神经网络的权值w1=net.IW1,1;%绘出训练后自组织神经网络的权值分布图plotsom(w1,net.layers1.distances);%输入测试数据p=0.5;0.5;%对网络进行测试y_test=sim(net,p);%将测试数据所得到的单值向量变

11、换成下标向量y_test=vec2ind(y_test)6. 学习向量量化(LVQ)神经网络属于前向神经网络,在模式识别和优化领域有着广泛应用例6.针对一组输入向量,设计一个LVQ神经网络,经过训练后,能对给定的数据进行模式识别.代码:%输入向量P及其对应的类别向量CP=-6 -4 -2 0 0 0 0 2 4 6;0 2 -2 1 2 -2 1 2 -2 0;C=1 1 1 2 2 2 2 1 1 1;%将类别向量C转换为目标向量TT=ind2vec(C);%绘制输入向量P,用颜色将输入向量分为两类Plotvec(P,C,*r) ;axis(-8 8 -3 3)%创建一个LVQ神经网络,隐含

12、层有5个神经元,0.6 0.4表示在隐含层的权值中,有60%的列的第一行的值是1,40%的列的第一行值为1,也就是说60%的列属于第一类,40%属于第二类,网络的其他参数取默认值net=newlvq(minmax(P),5,0.6 0.4);net.trainParam.epoches=100;net=train(net,P,T);%给定数据,输出网络的分类结果测试网络的性能p=0 1;0.2 0;y=sim(net,p);yc=vec2ind(y)%对给定数据,一个归为第二类,一个归为第一类yc = 2 17. Elman神经网络反馈神经网络,他是一种有非线性元件构成的反馈系统,其稳定状态的

13、分析比属于前向神经网络要复杂得多可解决旅行商问题(TSP)例7.下表为某单位办公室七天上午9点到12点的空调负荷数据,数据已经做了归一化处理,预测方法采用前6天数据作为网络的训练样本,每3天的负荷数据作为输入向量,第4天的负荷作为目标向量,第7天的数据作为网络的测试数据空调负荷数据表时间9时负荷10时负荷11时负荷12时负荷第1天0.4413 0.4707 0.6953 0.8133 第2天0.4379 0.4677 0.6981 0.8002 第3天0.4517 0.4725 0.7006 0.8201 第4天0.4557 0.4790 0.7019 0.8211 第5天0.4601 0.4

14、811 0.7101 0.8298 第6天0.4612 0.4845 0.7188 0.8312 第7天0.4615 0.4891 0.7201 0.8330 代码:%根据预测方法得到输入向量和目标向量P=0.4413 0.4707 0.6953 0.8133 0.4379 0.4677 0.6981 0.8002 0.4517 0.4725 0.7006 0.8201; 0.4379 0.4677 0.6981 0.8002 0.4517 0.4725 0.7006 0.8201 0.4557 0.4790 0.7019 0.8211; 0.4517 0.4725 0.7006 0.8201

15、 0.4557 0.4790 0.7019 0.8211 0.4601 0.4811 0.7101 0.8298 'T=0.4557 0.4790 0.7019 0.8211;0.4601 0.4811 0.7101 0.8298;0.4612 0.4845 0.7188 0.8312'%输入向量的取值范围为0 1,用threshold来标记threshold=0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1; 0 1;%创建一个Elman神经网络,隐含层的神经元的个数为17个,4个输出层神经元,隐含层激活函数为tansig,输出层激活函数为purelinnet=newelm(threshold,17,4,'tansig','purelin');net.trainParam.epoches=3000;net=init(net);net=train(net,P,T);%输入测试数据P_test=0.4557 0.4790 0.7019 0.8211 0.4601 0.4811 0.7101

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论