数学建模社区-数学中国

标题: 神经网络MATLAB实现 [打印本页]

作者: ppbear321    时间: 2009-8-12 13:20
标题: 神经网络MATLAB实现
%获得网络的输入样本P和目标样本T
P=[1 0.6 0.1 0 0 0 0   1 0.5 0 0 0 0 0;
1 0.6 0.1 0 0 0 0   0 0.5 1 0.4 0 0 0;
1 0.6 0.1 0 0 0 0   0 0 0 0.4 1 0.6 0;
1 0.6 0.1 0 0 0 0   0 0 0 0 0 0 0.8;
0 0.6 0.6 0 0 0 0   1 0.5 0 0 0 0 0;
0 0.6 0.6 0 0 0 0   0 0.5 1 0.4 0 0 0;
0 0.6 0.6 0 0 0 0   0 0 0 0.4 1 0.6 0;
0 0.6 0.6 0 0 0 0   0 0 0 0 0 0 0.8;
0 0 0.6 1 0 0 0    1 0.5 0 0 0 0 0;
0 0 0.6 1 0 0 0    0 0.5 1 0.4 0 0 0;
0 0 0.6 1 0 0 0    0 0 0 0.4 1 0.6 0;
0 0 0.6 1 0 0 0    0 0 0 0 0 0 0.8;
0 0 0 0 1 0.6 0    1 0.5 0 0 0 0 0;
0 0 0 0 1 0.6 0    0 0.5 1 0.4 0 0 0;
0 0 0 0 1 0.6 0    0 0 0 0.4 1 0.6 0;
0 0 0 0 1 0.6 0    0 0 0 0 0 0 0.8]';
T=[1 0.5 0 0 0 0 0 0;
0 0 0 0.2 0.6 1 0.6 0.2;
0 0 0 0.2 0.6 1 0.6 0.2;
0 0 0 0.2 0.6 1 0.6 0.2;
0.4 0.8 1 0.8 0.4 0.2 0 0;
0 0 0 0.2 0.6 1 0.6 0.2;
0 0 0 0 0 0.2 0.5 0.8;
0 0 0 0.2 0.6 1 0.6 0.2;
0 0 0 0.2 0.6 1 0.6 0.2;
0 0 0 0.2 0.6 1 0.6 0.2;
0 0 0 0 0 0.2 0.5 0.8;
0 0 0 0 0 0.2 0.5 0.8;
0 0 0 0.2 0.6 1 0.6 0.2;
0 0 0 0.2 0.6 1 0.6 0.2;
0 0 0 0 0 0.2 0.5 0.8;
0 0 0 0 0 0.2 0.5 0.8]';
%根据Kolmogorov定理,输入层有14个节点,所以中间层有29个节点
%中间层神经元的传递函数为'tansig'
%输出层有8个节点,其神经元传递函数为logsig
%训练函数采用traingdx
net=newff(minmax(P),[29,8],{'tansig','logsig'},'traingdx');
%训练步数为1000次
%训练目标误差为0.001
net.trainParam.epochs=1000;
net.trainParam.goal=0.001;
net=train(net,P,T);
Y=sim(net,P);
%求训练值在每一个点上的误差
for i=1:16
    x(i)=norm(Y(:,i));
end
plot(1:16,x);
作者: baofuguang    时间: 2009-8-15 09:44
好东西共享(MATLAB--神经网络)http://www.madio.cn/mcm/viewthread.php?tid=30494&extra=
作者: zengtao880724    时间: 2009-8-26 16:07
好东西哦,谢谢,继续~
作者: civilstar    时间: 2010-3-25 10:09
好东东,谢谢楼主,嘿嘿。。。。
作者: xuchangshou0604    时间: 2010-4-11 10:15
好东东,谢谢楼主,嘿嘿。。。。
作者: 347196468    时间: 2010-8-14 21:12
谢谢啊,挺好的




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5