当前位置: 首页 > news >正文

时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测

时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测

目录

    • 时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测
      • 预测效果
      • 基本介绍
      • 程序设计
      • 参考资料

预测效果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

基本介绍

1.Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测(完整源码和数据);
2.数据集为excel,单列时间序列数据集,运行主程序main.m即可,其余为函数文件,无需运行;
3.优化参数为神经网络的权值和偏置,命令窗口输出RMSE、MAPE、MAE、R2等评价指标;
4.运行环境Matlab2018b及以上;
5.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。

程序设计

  • 完整源码和数据获取方式资源出下载Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测 。
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行%%  导入数据(时间序列的单列数据)
result = xlsread('data.xlsx');%%  数据分析
num_samples = length(result);  % 样本个数 
kim = 4;                      % 延时步长(kim个历史数据作为自变量)
zim =  1;                      % 跨zim个时间点进行预测%%  划分数据集
for i = 1: num_samples - kim - zim + 1res(i, :) = [reshape(result(i: i + kim - 1), 1, kim), result(i + kim + zim - 1)];
end%% 数据集分析
outdim = 1;                                  % 最后一列为输出
num_size = 0.7;                              % 训练集占数据集比例
num_train_s = round(num_size * num_samples); % 训练集样本个数
f_ = size(res, 2) - outdim;                  % 输入特征维度%%  划分训练集和测试集
P_train = res(1: num_train_s, 1: f_)';
T_train = res(1: num_train_s, f_ + 1: end)';
M = size(P_train, 2);P_test = res(num_train_s + 1: end, 1: f_)';
T_test = res(num_train_s + 1: end, f_ + 1: end)';
N = size(P_test, 2);%%  数据归一化
[p_train, ps_input] = mapminmax(P_train,0,1);
p_test = mapminmax('apply',P_test,ps_input);[t_train, ps_output] = mapminmax(T_train,0,1);
t_test = mapminmax('apply',T_test,ps_output);%% 节点个数
inputnum  = size(p_train, 1); % 输入层节点数
hiddennum = 15;                % 隐藏层节点数
outputnum = size(t_train, 1); % 输出层节点数
% CSDN 机器学习之心

参考资料

[1] https://blog.csdn.net/kjm13182345320/article/details/128577926?spm=1001.2014.3001.5501
[2] https://blog.csdn.net/kjm13182345320/article/details/128573597?spm=1001.2014.3001.5501

http://www.lryc.cn/news/328631.html

相关文章:

  • node.js学习(2)
  • 【pytest】测试数据存储在 Excel 或 TXT 文件中,如何参数化
  • ubuntu22.04@Jetson Orin Nano安装配置VNC服务端
  • 面向对象特征二:继承
  • 宝塔面板CentOS Stream 8 x86 下如何安装openlitespeed
  • LeetCode 2952.需要添加的硬币的最小数量:贪心(排序)
  • 基于SpringBoot + Vue实现的在线装修管理系统设计与实现+毕业论文
  • 阿里云安全产品简介,Web应用防火墙与云防火墙产品各自作用介绍
  • 作业 二维数组-定位问题
  • 通过Jmeter准备压测数据-mysql示例
  • 如何系统的自学python?
  • 记录一个写自定义Flume拦截器遇到的错误
  • Codeforces Round 934 (Div. 2) D. Non-Palindromic Substring
  • 如何避免公网IP安全风险
  • 探究 HTTPS 的工作过程
  • 算法学习——LeetCode力扣图论篇1
  • Stable Diffusion 模型下载:epiCPhotoGasm(真实、照片)
  • WPF 路由事件 数据驱动 、Window 事件驱动
  • 【UI框架】——保姆式使用教程
  • 第10讲:操作符详解
  • 数据可视化Grafana Windows 安装使用教程(中文版)
  • 【No.21】蓝桥杯组合数学|数位排序|加法计数原理|乘法计数原理|排列数|组合数|抽屉原理|小蓝吃糖果|二项式定理|杨辉三角|归并排序(C++)
  • 主流公链 - Monero
  • C#中让字典、列表、数组作为只读的方法参考
  • 深入理解 React 中的 children props 和 render props
  • 前端日期组件layui使用,月模式
  • Rust编程(四)PackageCrateModule
  • 命名空间【C++】(超详细)
  • OceanBase OBCA 数据库认证专员考证视频
  • 卷积神经网络(CNN)——基础知识整理