鹈鹕算法(POA)优化长短期记忆神经网络的数据回归预测,POA-LSTM回归预测,多输入单输出模型评价指标包括:R2、MAE、MSE、RMSE和MAPE等,代码质量极高,方便学习和替换数据。

该代码示例展示了如何运用种群优化算法(POA)来优化长短期记忆网络(LSTM)的参数,包括种群数量、最大迭代次数和参数范围。数据从Excel文件中读取,经过预处理和归一化,然后用于训练和测试LSTM模型。最终,优化后的参数被赋值并应用于模型以提高预测准确性。
摘要由CSDN通过智能技术生成

 

clear all;
close all;
clc;

%%  导入数据
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')';
%% 优化参数设置
SearchAgents = 10; % 种群数量  50
Function_name='LSTM_MIN'; 
Max_iterations = 6; % 迭代次数   10
lowerbound = [10 0.001 10 ];%三个参数的下限
upperbound = [200 0.02 200 ];%三个参数的上限
dimension = 3;%数量,即要优化的LSTM参数个数
fitness = @(x)LSTM_MIN(x,P_train,P_test,T_train,T_test);
%% 优化LSTM
[Best_score,Best_pos,Convergence_curve]=POA(SearchAgents,Max_iterations,lowerbound,upperbound,dimension,fitness)

save file2
%% 寻优得到的参数进行赋值
clear all;clc;close all;warning off;
load file2
Tuna1(1,1)=floor(Best_pos(1,1));
Tuna1(1,3)=floor(Best_pos(1,3));
numHiddenUnits=round(Tuna1(1,1));
MaxEpochs=abs(Tuna1(1,3));
InitialLearnRate=abs(Best_pos(1,2));
%%  导入数据
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')';
train_x=P_train;
train_y=T_train;
test_x=P_test;
test_y=T_test;
method=@mapminmax;
%% 数据归一化
[train_x,train_ps]=method(train_x);
test_x=method('apply',test_x,train_ps);
[train_y,output_ps]=method(train_y);
test_y=method('apply',test_y,output_ps);
%% 数据转换为双精度格式
XTrain = double(train_x) ;
XTest  = double(test_x) ;
YTrain = double(train_y);
YTest  = double(test_y);
%% 确定训练集和预测集维度
numFeatures = size(XTrain,1);  %输入特征维数
numResponses =  size(YTrain,1);%输出特征维数

智能算法及其模型预测

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智能算法及其模型预测

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值