基于MATLAB神经网络

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1.BP网络实验过程1.Matlab程序如下:clear;p=[1739.94,373.3,1756.77,864.45,222.85,877.88,1803.58,2352.12,401.3,363.34,1571.17,104.8,499.85,2297.28,2092.62,1418.79,1845.59,2205.36,2949.16,1692.62,1680.67,2802.88,172.78,2063.54,1449.58,1651.52,341.59,291.02,237.63;1675.15,3087.05,1652,1647.31,3059.54,2031.66,1583.12,2557.04,3259.94,3477.95,1731.04,3389.83,3305.75,3340.14,3177.21,1775.89,1918.81,3243.74,3244.44,1867.5,1575.78,3017.11,3084.49,3199.76,1641.58,1713.28,3076.62,3095.68,3077.78;2395.96,2429.47,1514.98,2665.9,2002.33,3071.18,2163.05,1411.53,2150.98,2462.86,1735.33,2421.83,2196.22,535.62,584.32,2772.9,2226.49,1202.69,662.42,2108.97,1725.1,1984.98,2328.65,1257.21,3405.12,1570.38,2438.63,2088.95,2251.96];t=[01001000110110000000001000111;10100010001000001001100001000;00000001000001100110010100000;00010100000000010000000010000];net=newff(minmax(p),[12,4],{'tansig','logsig'},'trainlm');net.trainParam.epochs=400;net.trainParam.goal=0.01;net=train(net,p,t);p_test=[1702.81877.93867.811831.49460.692374.982271.891783.64198.831494.631597.031598.931243.132336.313542144.47426.311507.13343.072201.942232.431580.11962.41495.181125.1724.221269.071802.071817.361860.45;1639.791860.962334.681713.113274.773346.983482.971597.993250.452072.591921.521921.081814.072640.263300.122501.623105.291556.893271.723196.223077.871752.071594.971957.441594.393447.311910.721725.811927.41782.88;2068.741975.32535.11604.682172.99975.31946.72261.312445.082550.512126.761623.333441.071599.632373.61591.512057.81954.512036.94935.531298.872463.041835.953498.022937.732145.012701.971966.352328.791875.83];y=sim(net,p_test);运行上述程序代码后,可以得到网络的训练结果:TRAINLM,Epoch0/400,MSE0.598115/0.01,Gradient12110.8/1e-010TRAINLM,Epoch25/400,MSE0.0888109/0.01,Gradient3.47072/1e-010TRAINLM,Epoch50/400,MSE0.0876698/0.01,Gradient42.9197/1e-010TRAINLM,Epoch75/400,MSE0.0705102/0.01,Gradient4.53362/1e-010TRAINLM,Epoch100/400,MSE0.0704501/0.01,Gradient1.61972/1e-010TRAINLM,Epoch125/400,MSE0.0702792/0.01,Gradient4.97853/1e-010TRAINLM,Epoch150/400,MSE0.037723/0.01,Gradient1.97426/1e-010TRAINLM,Epoch171/400,MSE0.00841663/0.01,Gradient0.24836/1e-010TRAINLM,Performancegoalmet.2.运行程序如下:2.反馈神经网络一.实验目的:熟悉Hopfield神经网络,运用其进行数据分类。二.实验过程1.Matlab程序如下:clear;clc;p=importdata('data_sample.dat');[pn,minp,maxp]=premnmx(p);P=zeros(59,4);fori=1:59ifpn(i,1)==-1P(i,1)=1;P(i,2)=-1;P(i,3)=-1;P(i,4)=-1;elseif(1-pn(i,1))1P(i,1)=-1;P(i,2)=1;P(i,3)=-1;P(i,4)=-1;elseifpn(i,1)==1P(i,1)=-1;P(i,2)=-1;P(i,3)=-1;P(i,4)=1;elseP(i,1)=-1;P(i,2)=-1;P(i,3)=1;P(i,4)=-1;endendendendP1=P;P=zeros(59,4);fori=1:59ifpn(i,2)==-1P(i,1)=1;P(i,2)=-1;P(i,3)=-1;P(i,4)=-1;elseif(1-pn(i,2))1P(i,1)=-1;P(i,2)=1;P(i,3)=-1;P(i,4)=-1;elseifpn(i,2)==1P(i,1)=-1;P(i,2)=-1;P(i,3)=-1;P(i,4)=1;elseP(i,1)=-1;P(i,2)=-1;P(i,3)=1;P(i,4)=-1;endendendendP2=P;P=zeros(59,4);fori=1:59ifpn(i,3)==-1P(i,1)=1;P(i,2)=-1;P(i,3)=-1;P(i,4)=-1;elseif(1-pn(i,3))1P(i,1)=-1;P(i,2)=1;P(i,3)=-1;P(i,4)=-1;elseifpn(i,3)==1P(i,1)=-1;P(i,2)=-1;P(i,3)=-1;P(i,4)=1;elseP(i,1)=-1;P(i,2)=-1;P(i,3)=1;P(i,4)=-1;endendendendP3=P;P=[P1,P2,P3]one=[1-1-1-1-111-1-1-1-11];two=[-111-1-1-1-111-1-1-1];three=[111111111-1-11];four=[1-1-1-1-1-1-11-1-11-1];T=[one;two;three;four]';net=newhop(T);w=net.lw{1,1},b=net.b{1};L=zeros(59,1);fori=1:59a={[P(i,1),P(i,2),P(i,3),P(i,4),P(i,5),P(i,6),P(i,7),P(i,8),P(i,9),P(i,10),P(i,11),P(i,12)]'};[y,Pf,Af]=sim(net,{160},[],a);ify{50}'==oneL(i,1)=1;elseify{50}'==twoL(i,1)=2;elseify{50}'==fourL(i,1)=4;elseL(i,1)=3;endendendendLholdofff=L';index1=find(f==1);index2=find(f==2);index3=find(f==3);index4=find(f==4);plot3(p(:,1),p(:,2),p(:,3),'o');line(p(index1,1),p(index1,2),p(index1,3),'linestyle','none','marker','*','color','g');line(p(index2,1),p(index2,2),p(index2,3),'linestyle','none','marker','*','color','r');line(p(index3,1),p(index3,2),p(index3,3),'linestyle','none','marker','+','color','b');line(p(index4,1),p(index4,2),p(index4,3),'linestyle','none','marker','+','color','y');box;gridon;holdon;xlabel('A');ylabel('B');zlabel('C');title('HopfieldNetworkStateSpace');2.运行程序:3.基于Matlab的RBF模式识别方法一.实验目的:熟悉RBF网络,并用RBF网络用于模式分类,调用数据调试程序,对试验结果进行分析。二.实验过程1.Matlab程序如下:clear;clc;%网络训练目标pConvert=importdata('rbf_train_simple_data.dat');p=pConvert';T=importdata('rbf_train_target_data.dat')plot3(p(1,:),p(2,:),p(3,:),'r.');grid;box;fori=1:29,text(p(1,i),p(2,i),p(3,i),sprintf('%g',T(i))),endaxis([035000350003500]);title('训练用样本及其类别');xlabel('A');xlabel('B');xlabel('C');pause%RBF网络的创建和训练过程net=newrb(p,T,0,410,28,2);A=sim(net,p)pauseplot3(p(1,:),p(2,:),p(3,:),'r.'),grid,boxfori=1:29,text(p(1,i),p(2,i),p(3,i),sprintf('%g',A(i))),endtitle('网络训练结果')xlabel('A')xlabel('B')xlabel('C')pause%测试样本pConvert=importdata('rbf_simulate_data.dat');p=pConvert';a=sim(net,p)2.运行程序:显示训练样本的分类划分如下图:显示训练曲线图如下图所示:显示待分类数据结果图如下:4.CPN神经网络的模式分类一.实验目的:熟悉CPN神经网络,对MATLAB的使用进一步熟悉,对CPN神经网络的模式分类进行试验。二.实验过程:1.Matlab源程序如下;clearall;clc;%初始化正向权值w和反向权值vw=rands(18,3)/2+0.5;v=rands(1,18)/2+0.5;%输入向量p和目标向量tp=importdata('SelfOrganizationCompetitiontrain.dat');tConvert=importdata('SelfOrganizationCompetitiontarget.dat')t=tConver

1 / 13
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功