教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 求职职场 >

神经网络的一个例子

来源:网络收集 时间:2026-10-02
导读: clear %数据输入 huanghe_p=[370 503 434 575 490 420 560 640 558 343 326 405 446 423 422 697 598 377 435 472 451 667 601 689 541 485 425 389 382 707 422]; huanghe_t=[515 713 586 753 720 567 717 987 810 489 453 589 639 568 595 982 849 519 615

clear

%数据输入

huanghe_p=[370 503 434 575 490 420 560 640 558 343 326 405 446 423 422 697 598 377 435 472 451 667 601 689 541 485 425 389 382 707 422];

huanghe_t=[515 713 586 753 720 567 717 987 810 489 453 589 639 568 595 982 849 519 615 652 599 941 893 999 758 701 630 561 520 1040 535];

%归一化处理

p=(huanghe_p-min(huanghe_p))/(max(huanghe_p)-min(huanghe_p));

t=(huanghe_t-min(huanghe_t))/(max(huanghe_t)-min(huanghe_t));

%数据输入2:网络有关参数

EPOCHS=10000;

GOAL=0.000005;

%建立bp神经网络,并训练,仿真。其中输入为p,输出为t

%-------------------------隐层神经元确定-----------------------------

s=3:15;%s 为常向量,表示神经元的个数

res=zeros(size(s));%res将要存储误差向量,这里先置零

pn=[p(1:5);p(6:10);p(11:15);p(16:20)];

tn=[t(1:5);t(6:10);t(11:15);t(16:20)];

for i=1:length(s)

net=newff(minmax(pn),[s(i),4],{'tansig','purelin'},'trainlm');

net.iw{1,1}=zeros(size(net.iw{1,1}))+0.5;

net.lw{2,1}=zeros(size(net.lw{2,1}))+0.75;

net.b{1,1}=zeros(size(net.b{1,1}))+0.5;

net.b{2,1}=zeros(size(net.b{2,1}));

net.trainParam.epochs=EPOCHS;

net.trainParam.goal =GOAL;

net=train(net,pn,tn);

y=sim(net,pn);

e=tn-y;

error=mse(e,net);

res(i)=norm(error);

end

%选取最优神经元数,number为使得误差最小的隐层神经元个数

number=find(res==min(res));

if(length(number)>1) no=number(1)

else no=number

end

clear error,res

%选定隐层神经元数目后,建立网络,训练仿真。

net=newff(minmax(pn),[no,4],{'tansig','purelin'},'trainlm');

net.iw{1,1}=zeros(size(net.iw{1,1}))+0.5;

net.lw{2,1}=zeros(size(net.lw{2,1}))+0.75;

net.b{1,1}=zeros(size(net.b{1,1}))+0.5;

net.b{2,1}=zeros(size(net.b{2,1}));

net.trainParam.epochs=EPOCHS;

net.trainParam.goal =GOAL;

net=train(net,pn,tn);

y=sim(net,pn);

e=tn-y;

error=mse(e,net)%error为网络的误差向量

r=norm(error);%r为网络的整体误差

save net %保存最好的网络

%预测

input=[p(11:15);p(16:20);p(21:25);p(26:30)];

yuce=sim(net,input);

%结果反归一化

y1=[y(1,:) y(2,:) y(3,:) y(4,:)];

yuce1=[yuce(1,:) yuce(2,:) yuce(3,:) yuce(4,:)];

t1=y1*(max(huanghe_t(1:20))-min(huanghe_t(1:20)))+min(huanghe_t(1:20));

yuce2=yuce1*(max(huanghe_t(1:20))-min(huanghe_t(1:20)))+min(huanghe_t(1:20));

%计算误差

wucha=abs(t1-huanghe_t(1:20))./huanghe_t(1:20)

b=minmax(wucha);

average_wucha=mean(wucha);

%作图

figure(1)

plot(1:20,huanghe_t(1:20),'*-',1:20,t1,'o:')

figure(2)

plot(1:20,huanghe_t(11:30),'*-',1:20,yuce2,'o:')

…… 此处隐藏:195字,全部文档内容请下载后查看。喜欢就下载吧 ……
神经网络的一个例子.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/122654.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150份
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150份
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)