搜索
人大经济论坛 附件下载

附件下载

所在主题:
文件名:  renkou.xls
资料下载链接地址: https://bbs.pinggu.org/a-1113198.html
附件大小:
最近在写毕业论文,用的matlab7.0软件,模型是bp神经网络预测辽宁十二五期间能源消费量,3个输入,1个隐含层含5个神经元,1个输出,我想先用1978-2007年的数据做训练集,2008-2010年的数据做检验。以下是我的程序代码:

clc;clear all;

p =xlsread('D:\matlab\work\renkou', 'sheet2', 'J2:L31'); %这是1978-2007年的输入数据
t = xlsread('D:\matlab\work\renkou', 'sheet2', 'B2:B31');%这是1978-2007年的输出数据

p = p'; t = t';
%利用premnmx函数对数据进行归一化
[pn,minp,maxp,tn,mint,maxt]=premnmx(p,t); % 对于输入矩阵p和输出矩阵t进行归一化处理
dx=[-1,1]; %归一化处理后最小值为-1,最大值为1
%BP
网络训练

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

nParam.show=50; %50次显示一次结果
net.trainParam.Lr=0.05; %学习速度为0.05
net.trainParam.epochs=1000; %
最大训练1000

net.trainParam.goal=0.0001; %均方误差
[net,tr]=train(net,pn,tn); %开始训练,其中pn,tn分别为输入输出样本
%利用原始数据对BP网络仿真
an=sim(net,pn); %用训练好的模型进行仿真
a=postmnmx(an,mint,maxt); % 把仿真得到的数据还原为原始的数量级;

p_test= xlsread('D:\matlab\work\renkou', 'sheet2', 'J32:L34'); %这是2008-2010年的数据,检验数据

p_test = p_test'
pn_test=tramnmx(p_test,minp,maxp);

%% Simulation

tn_test=sim(net,pn_test);

%% Normalization-Inverse

t_test=postmnmx(tn_test,mint,maxt)

可是预测出来2008-2010年的数据不对,这是不是因为mint和maxt的关系啊?预测出来的数据不能超过maxt?请各位大侠帮帮忙,最近初学神经网络,不知道该怎么处理这个问题。感激不尽




    熟悉论坛请点击新手指南
下载说明
1、论坛支持迅雷和网际快车等p2p多线程软件下载,请在上面选择下载通道单击右健下载即可。
2、论坛会定期自动批量更新下载地址,所以请不要浪费时间盗链论坛资源,盗链地址会很快失效。
3、本站为非盈利性质的学术交流网站,鼓励和保护原创作品,拒绝未经版权人许可的上传行为。本站如接到版权人发出的合格侵权通知,将积极的采取必要措施;同时,本站也将在技术手段和能力范围内,履行版权保护的注意义务。
(如有侵权,欢迎举报)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

GMT+8, 2026-1-16 20:37