lol 发表于 2008-4-23 11:08

关于神经网络误差分析的问题

我用神经网络预测,计算预测值和真实值之间误差时遇到一些问题,相关语句如下,
计算结果:MAE_train 平均绝对误差为Inf;maxRE_train 最大相对误差为Inf;MRE_平均相对误差为NaN .
问题出在哪里呢?
Y=sim(net,d_test);
%预测值和真实值的误差
error=Y'-t;
figure
plot(1:365,error);
% 预测数据反归一化处理
y=(maxd-mind)*Y+mind;
%真实值的反归一化处理
tt=(maxd-mind)*t+mind;
error=(tt-y');
figure
plot(1:365,error);
% 绝对误差分析
MAE_train=0;
for i=1:length(error)
    MAE_train=MAE_train+abs(error(i));
end
MAE_train=MAE_train/length(error) % 平均绝对误差
maxAE_train=max(error) % 最大绝对误差
% 相对误差分析
for i=1:length(error)
    MRE_train(i)=abs(error(i))/tt(i);
end
maxRE_train=max(MRE_train)% 最大相对误差
MRE_train=sum(MRE_train)/length(error) % 平均相对误差
%归一化处理的预测值Y',真实值t;反归一化后预测值y,真实值tt。

[ 本帖最后由 eight 于 2008-4-23 11:14 编辑 ]

sigma665 发表于 2008-4-23 12:41

error有没有值

lol 发表于 2008-4-23 12:52

原帖由 sigma665 于 2008-4-23 12:41 发表 http://www.chinavib.com/forum/images/common/back.gif
error有没有值
error=(tt-y');
是绝对误差,值应该不为0

eight 发表于 2008-4-23 12:53

原帖由 lol 于 2008-4-23 11:08 发表 http://www.chinavib.com/forum/images/common/back.gif
我用神经网络预测,计算预测值和真实值之间误差时遇到一些问题,相关语句如下,
计算结果:MAE_train 平均绝对误差为Inf;maxRE_train 最大相对误差为Inf;MRE_平均相对误差为NaN .
问题出在哪里呢?
Y=sim ... 你贴的代码函数输入输出,外人根本不能运行帮你检测。建议先好好看各个置顶帖
页: [1]
查看完整版本: 关于神经网络误差分析的问题