bp网络预测模型 python_如何建立神经网络预测模型

  • 最近忙毕设,公众号好久没更新,想来想去不知道写啥,就讲点毕设里面用到的神经网络预测模型吧!
  • 模型平台:MATLAB

1 模型输入输出介绍

1.1 回归神经网络模型输入输出介绍

  • 输入神经元可以理解为自变量,输出神经元可理解为因变量。
  • 如果用矩阵表示输入输出的话,每一行矩阵表示一个神元,每一列表示一组数据,这里由于输入输出数据量较大可以采用第三方数据库导入数据的方式,部分情况下由于导入数据神经元是列向量形式,导入后需要进行转置。
b44c95091062ce22aa4a539b2c9a6604.png
图1-1 三层神经网络图
% 输入数据矩阵,并将导入的结构数组转换成矩阵
u = cell2mat(struct2cell(load('data.mat'))); %导入mat文件数据
p = u(1:5,:); %1-5行表示5个输入神经元
t = u(6:7,:); %6-7行表示2个输出神经元
% 导入数据Excel数据
ta = xlsread('data.xlsx', 'sheet1', A1:E366')';%数据读入
u = ta'; %ta每列表示神经元,输入模型需转置成每行表示
p = u(1:4,:); %1-4行表示4个输入神经元
t = u( 5,:); % 5行表示1个输出神经元

1.2 时序神经网络模型输入输出介绍

  • 输入输出神经元为一系列时序数据,前后数据相关性强,可以用前面的数据预测后面的数据。
  • 数据导入方式同上,下面显示时序模型输入输出的转换形式,具体为用前 30 个数据预测后 30 个数据。
%导入365个数据
data= xlsread('data.xlsx', 'sheet1', 'A1:A365');
lag = 30; %利用前30天数据做为输入,去预测下30天数据
n = length(data); %计算数据长度
u = 365-lag*2+1;
%准备输入和输出数据
p = zeros(lag,u);
for i = 1:u
p(:,i) = data(i:i+lag-1); %数据赋值
end
t = zeros(lag,u);
for i = 1:u
t(:,i) = data(i+lag:i+2*lag-1); %数据赋值
end
  • 举一反三,利用前 5 个数据预测后五个输入输出数据的确定
%利用前5天数据做为输入,去预测下5天数据,其他源码同上
data= xlsread('data.xlsx', 'sheet1', 'A1:A365')';
lag = 5;
  • 2
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值