| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1430 人关注过本帖
标题:大伙看看我这个用matlab编的BP网络,咋差距就这么大?
只看楼主 加入收藏
museum
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-12-15
收藏
 问题点数:0 回复次数:3 
大伙看看我这个用matlab编的BP网络,咋差距就这么大?

这是我用matlab编写的

clear
fid=fopen('d:\ann\p0.txt','r');
P=fscanf(fid,'%g',[4 20]); %P为训练样本输入矢量
fid=fopen('d:\ann\t0.txt','r');
T=fscanf(fid,'%g',[1 20]); %T为训练样本目标矢量
fid=fopen('d:\ann\p1.txt','r');
PP=fscanf(fid,'%g',[4 4]); %PP为检验样本输入矢量
fid=fopen('d:\ann\t1.txt','r');
TT=fscanf(fid,'%g',[1 4]); %TT为检验样本目标矢量
net=newff(minmax(P),[5,1],{'tansig','purelin'},'trainlm');
net=init(net);
net.trainParam.epochs=50000; %设置网络训练次数为50000次
net.trainParam.show=50; %设置每隔50次显示当前网络训练误差
net.trainParam.goal=0.01; %设置网络训练目标误差为0.01
[net,tr]=train(net,P,T); %利用函数train()对网络进行训练
A=sim(net,P); %利用函数sim()对训练年份和检验年份进行仿真
AA=sim(net,PP);
T1=1:1:20;
plot(T1,T,T1,A);
T2=1:1:4;
plot(T2,TT,T2,AA);

[此贴子已经被作者于2007-7-11 22:25:38编辑过]

搜索更多相关主题的帖子: matlab 网络 ann fid clear 
2007-07-11 22:25
museum
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-12-15
收藏
得分:0 
回复:(museum)大伙看看我这个用matlab编的BP网络,...
这是所有数据,以及那篇文献

那位文献的作者运行的结果,极其理想,而我模拟的极不好
2007-07-11 22:29
cao2138
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-9-27
收藏
得分:0 

参数的设置有时会影响效果的,你可以把参数改变一下试试看。

2007-09-27 09:28
hitzhang
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:21
帖 子:369
专家分:52
注 册:2006-9-24
收藏
得分:0 
你最好多下几篇文献,不知道你的具体问题是什么。BP对数据的输入及输出形式很挑剔(如x,1/x,log(x等),换一种格式很可能就柳暗花明了祝你成功

2007-10-02 11:03
快速回复:大伙看看我这个用matlab编的BP网络,咋差距就这么大?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025147 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved