24小时热门版块排行榜    

查看: 372  |  回复: 1

xiuzi0731

银虫 (小有名气)

[交流] 关于神经网络的问题 已有1人参与

x=[linspace(0,1,1000);linspace(0.2,0.8,1000)]
y=[cos(2*x).*cos(8*x)+x; sin(3*x).*cos(2*x+pi/3)]
noise=[sqrt(0.05)*randn(1,1000);sqrt(0.05)*randn(1,1000)]              
y1=y+[noise;noise];   
net=newff(minmax(x),[30,2],{'tansig' 'purelin'},'trainlm'); %建立相应的BP网络
y2=sim(net,x); %对没有训练的网络进行仿真
%训练网络,设定训练时间为3000个单位时间,训练目标的误差小于0.0001
net.trainParam.epochs=3000;
net.trainParam.goal=0.0001;
%对训练后的网络进行仿真(前500个点进行训练,后500个点没有进行训练)
net=train(net,x(:,1:500),y(1,1:500));y3(1,:)=sim(net,x);
net=train(net,x(:,1:500),y1(2,1:500));y3(2,:)=sim(net,x);
net=train(net,x(:,1:500),y1(3,1:500));y3(3,:)=sim(net,x);
%绘出原函数与训练前后的仿真结果
figure(1);
subplot(221),plot(x(1,:),y(1,:),'-',x(2,:),y(2,:),'*',x(3,:),y(3,:),'o'),title('y原始图'),
xlabel('x'),ylabel('y'),hold on,
subplot(222),plot(x(1,:),y1(1,:),'-',x(2,:),y1(2,:),'*',x(3,:),y1(3,:),'o'),title('y加完噪声后的图'),
xlabel('x'),ylabel('y');
subplot(223),plot(x(1,:),y2,'-',x(2,:),y2,'*',x(3,:),y2,'o'),title('y没有训练时的图'),
xlabel('x'),ylabel('y');
subplot(224),plot(x(1,:),y3(1,:),'-',x(2,:),y3(2,:),'*',x(3,:),y3(3,:),'o'),title('y训练后的图'),
xlabel('x'),ylabel('y'),hold on,
Error using trainlm (line 109)
Output data size does not match net.outputs{2}.size.

Error in network/train (line 106)
[net,tr] = feval(net.trainFcn,net,X,T,Xi,Ai,EW,net.trainParam
);
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ajitai

铁杆木虫 (职业作家)


小木虫: 金币+0.5, 给个红包,谢谢回帖
站内信联系我。。。可以解决
2楼2013-06-01 22:34:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xiuzi0731 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见