24小时热门版块排行榜    

查看: 2431  |  回复: 1

z1991yan

铁虫 (初入文坛)

[求助] 神经网络预测误差大

求大神帮我分析一下为什么测试样本的误差太大
clear all;
p=[5        2        5        1        5        5        5        3        3        4        4        3;
4        1        5        1        5        5        3        3        3        4        4        3;
5        2        1        1        5        5        4        3        3        4        4        3;
4        1        3        4        5        4        5        4        4        4        5        4;
5        2        5        4        5        5        4        4        4        4        5        4;
6        2        5        4        5        5        3        4        4        4        5        4;
4        1        1        5        5        5        1        3        4        4        2        4;
5        2        1        5        5        5        1        3        4        4        2        4;
3        1        3        4        2        3        5        5        5        3        5        4;
4        1        5        4        2        4        4        5        5        3        5        4;
5        2        5        4        5        5        4        5        5        3        5        4;
4        1        3        2        5        4        4        3        3        4        4        4;
5        2        3        2        5        4        4        3        3        4        4        4;
4        1        3        2        5        4        2        3        3        3        3        3;
3        1        3        1        5        3        4        3        3        3        3        3;
5        2        5        3        5        5        1        3        4        4        4        3;
4        1        5        3        5        4        5        3        4        4        4        3;
5        2        3        1        3        5        2        3        4        4        4        3;
5        4        1        4        5        5        4        4        4        5        5        5;
5        1        5        4        5        5        2        4        4        5        5        5;
4        1        3        4        5        4        3        4        4        5        5        5;
4        1        3        3        5        4        4        2        2        4        3        3;
5        1        5        3        5        4        4        2        2        4        3        3;
5        2        1        5        5        5        4        2        3        4        3        4;
5        2        5        5        5        5        4        2        3        4        3        4;
4        1        1        3        5        4        1        4        4        5        3        4;
4        2        3        3        5        3        4        4        4        5        3        4;
5        1        5        3        5        5        2        4        4        5        3        4;
3        1        5        2        5        4        4        2        3        4        3        3;
5        2        5        3        5        5        4        4        3        4        5        4;
4        1        3        3        5        4        1        4        3        4        5        4;
5        2        3        3        5        5        3        5        4        4        5        4;
4        1        5        3        5        4        2        5        4        4        5        4;
5        2        3        3        5        5        1        5        4        4        5        4;
4        1        3        3        5        4        2        4        4        4        5        3;
5        2        5        2        5        5        1        3        5        3        3        3;
4        1        1        4        3        3        4        4        4        4        5        3;
4        2        3        2        5        4        3        4        4        4        5        3;
5        2        5        2        5        5        5        4        4        4        5        3;
2        1        3        3        3        2        2        4        3        4        4        5;
5        1        5        3        5        4        4        4        3        4        4        5;
3        1        3        2        3        2        4        4        5        3        4        2;
5        2        1        2        5        4        2        4        5        3        4        2;
3        1        1        3        3        3        2        5        4        4        3        4;
4        1        5        3        5        4        4        5        4        4        3        4;
5        1        1        2        5        4        2        4        4        3        5        3;
5        2        3        4        5        5        1        2        2        5        2        4;
5        1        5        2        5        4        2        5        5        4        4        3;
5        2        1        2        5        5        2        5        5        4        4        3;
2        1        1        2        4        2        3        5        5        4        4        3;

];
%定义训练样本输入向量
p=p'
t=[8903;8513;8333;11445;12486;
16920;7563;8000;11160;12829;
14674;9511;9346;8889;9715;
8788;10707;7888;12500;15910;
14734;6123;6635;8274;8647;9075;
10113;11172;7527;9455;9317;
14063;12228;12786;9301;7077;
9147;9694;10152;10364;11567
8182;8910;10931;10144;9314
6970;10680;9790;10715];       
%定义训练样本输出向量
t=t'
[pn,minp,maxp]=premnmx(p);%对进行训练的输入样本进行归一化处理
[tn,minP,maxP]=premnmx(t);%对进行训练的输出样本进行归一化处理
s1=25;%隐含层神经元的个数
net=newff(minmax(pn),[25,1],{'logsig','purelin'},'traingdm');
inputWeights=net.IW{1,1};
inputbias=net.b{1};
%当前网络层权值和阂值
layerWeights=net.LW{2,1};
layerbias=net.b{2};
pause
clc
%设置训练参数
net.trainParam.show=50;
net.trainParam.lr=0.05;
net.trainParam.mc=0.9;
net.trainParam.epochs=5000;
net.trainParam.goal=1e-10;
pause
clc
%调用TRA工NBFG算法训练BP网络
[net,tr]=train(net,pn,tn);
pause
clc
A=sim(net,pn)
B=postmnmx(A,minP,maxP);
%计算仿真误差
E=A-tn
%期望误差
MSE=mse(E)
pause
P2=[3        1        5        2        4        2        3        5        5        4        4        3;
4        1        3        3        5        4        2        4        4        4        4        4;

5        2        5        3        5        5        5        4        4        4        4        4;
5        2        5        5        5        5        4        3        2        4        3        4;
4        1        1        5        5        3        2        3        2        4        3        4;
5        2        3        5        5        5        3        2        3        3        3        3;
5        1        5        5        5        4        4        2        3        3        3        3;
4        1        5        2        5        4        2        4        4        5        4        4;
5        2        5        3        5        5        1        4        4        4        4        4;
];
p2=P2';
p2n=tramnmx(p2,minp,maxp);
a2n=sim(net,p2n);
a2=postmnmx(a2n,minP,maxP);
T2=[11195;9783;10385;8371;8064;7356;7806;10225;8911];
t2=T2';
E2=a2-t2;
%期望误差

figure(1)
plot(B,'g')
hold on
plot(t,'-*');
legend('预测输出','期望输出')
title('BP网络预测输出','fontsize',12)
ylabel('函数输出','fontsize',12)
xlabel('样本','fontsize',12)
%预测误差


error=A-tn;
figure(2)
plot(error,'-.*k');
title('BP网络预测误差','fontsize',12);
ylabel('误差','fontsize',12);
xlabel('样本','fontsize',12);

figure(3)
plot((A-tn)./tn,'-.*k');
title('神经网络预测误差百分比');

figure(4)
plot(a2,'-ok');
hold on
plot(t2,'-.*k');
legend('预测输出','实际输出');
title('BP网络预测输出','fontsize',12);
ylabel('函数输出','fontsize',12);
xlabel('样本','fontsize',12);

figure(5)
plot(E2,'-.*k');
title('BP网络预测误差','fontsize',12);
ylabel('误差','fontsize',12);
xlabel('样本','fontsize',12);

figure(6)
plot((a2-t2)./t2,'-.*k');
title('神经网络预测误差百分比')
;
clc
echo off

神经网络预测误差大
3.png


神经网络预测误差大-1
untitled.png
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
2楼2017-07-05 16:37:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 z1991yan 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +4 Tide man 2026-08-11 4/200 2026-08-12 00:39 by liuqidi
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +17 Lanmanbaby 2026-08-09 29/1450 2026-08-12 00:24 by zhanghaozhu
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +8 Tide man 2026-08-10 9/450 2026-08-11 20:39 by beefly
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +3 majunge000 2026-08-11 4/200 2026-08-11 20:13 by lch2012
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 分享一下我之前已中青C的计划书的filecode +3 布布和一二 2026-08-11 4/200 2026-08-11 15:20 by aasahr
[基金申请] 听说今天filecode变了 +26 布布和一二 2026-08-06 49/2450 2026-08-11 13:18 by WH3796
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +8 家与远方 2026-08-10 13/650 2026-08-11 09:49 by 家与远方
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
信息提示
请填处理意见