回归预测 | Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测

回归预测 | Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测

目录

    • [回归预测 | Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测](#回归预测 | Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测)

效果一览









基本介绍

1.Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测(完整源码和数据);

2.数据集为excel,多输入单输出数据集,运行主程序main.m即可,其余为函数文件,无需运行;

3.优化的参数为:三个参数,储备池规模,学习率,正则化系数。命令窗口输出RMSE、MAPE、MAE、R2等评价指标;

4.运行环境Matlab2018b及以上;

5.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。

程序设计

  • 完整程序和数据下载私信博主回复回归预测 | Matlab实现BES-ESN秃鹰搜索算法优化回声状态网络多输入单输出回归预测
clike 复制代码
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行
tic
%%  导入数据
P_train = xlsread('data','training set','B2:G191')';
T_train= xlsread('data','training set','H2:H191')';
% 测试集------44个样本
P_test=xlsread('data','test set','B2:G45')';
T_test=xlsread('data','test set','H2:H45')';
%%  划分训练集和测试集
M = size(P_train, 2);
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);

%%  参数设置
fun = @getObjValue;                 % 目标函数
dim = 3;                            % 优化参数个数
lb  = [100, 0.001, 0.001];          % 优化参数目标下限(储备池规模,学习率,正则化系数)
ub  = [800, 2.000, 0.100];          % 优化参数目标上限(储备池规模,学习率,正则化系数)
pop = 10;                           % 数量
Max_iteration = 20;                 % 最大迭代次数
Init = 30;                          % 初始化储备池(样本数)

%%  优化算法
[Best_pos, curve,Best_score] = BES(pop, Max_iteration, lb, ub, dim, fun);

%%  获取最优参数
hidden = round(Best_pos.pos(1));             % 储备池规模
lr     = Best_pos.pos(2);             % 学习率(更新速度)
reg    = Best_pos.pos(3);             % 正则化系数

参考资料

1\] https://blog.csdn.net/kjm13182345320/article/details/128163536?spm=1001.2014.3001.5502 \[2\] https://blog.csdn.net/kjm13182345320/article/details/128151206?spm=1001.2014.3001.5502

相关推荐
2zcode9 小时前
基于MATLAB元胞自动机(CA)的AZ80A镁合金动态再结晶(DRX)过程模拟
开发语言·matlab·动态再结晶
jiushiapwojdap10 小时前
LU分解法求解线性方程组Matlab实现
数据结构·其他·算法·matlab
MATLAB代码顾问12 小时前
改进遗传算法(IGA)求解作业车间调度问题(JSSP)——附MATLAB代码
开发语言·matlab
米饭不加菜12 小时前
机器人矩阵运算MATLAB计算
matlab·矩阵·机器人
机器学习之心13 小时前
多智能体遗传算法(MAGA)优化最优投影方向的投影寻踪聚类评价,MATLAB代码
matlab·聚类·投影寻踪聚类评价
MATLAB代码顾问13 小时前
多种群协同进化算法(MPCE)求解大规模作业车间调度问题——附MATLAB代码
开发语言·算法·matlab
Evand J15 小时前
【MATLAB绘图教程】空间误差场图的概念及其应用,附代码
matlab·平面·绘图·定位
alphageek815 小时前
Matlab linspace函数完全指南:从基础用法到进阶技巧
开发语言·其他·matlab
xrgs_shz15 小时前
MATLAB 纹理特征提取:一文读懂 graycomatrix 与 graycoprops
人工智能·计算机视觉·matlab
2zcode17 小时前
基于MATLAB的深度学习工业表面缺陷多分类检测系统设计与实现(GUI界面+数据集+训练代码)
深度学习·matlab·分类