%_________________________________________________________________________%
% 基于VMD和麻雀算法优化的核极限学习机(VMD-SSA-KELM)和VMD核极限学习机(VMD-KELM)时间序列预测
%_________________________________________________________________________%
clear
close all
clc
%% 导入数据
WTData = xlsread('WTData.xlsx', 'Sheet1', 'B2:B3673');
vmd(WTData,'NumIMFs',3)
[imf,res] = vmd(WTData,'NumIMFs',3);
Data=[imf res];
for k = 1 : size(Data, 2)
disp(['第 ',num2str(k),' 个分量的预测: '])
data(:,k) = Data(:, k);
delay=1; %时滞
data1 = [];
for i=1:length(data(:,k))-delay
data1(i,:)=data(i:i+delay,k)';
end
P = data1(:,1:end-1);
T = data1(:,end);
% 设定训练集与测试集
Len = size(data1, 1);
% testNum = 300;
testNum = round(Len*0.3);
trainNum = Len - testNum;
% 训练集
P_train = P(1:trainNum, :)';
T_train = T(1:trainNum, :)';
% 测试集
P_test = P(trainNum+1:trainNum+testNum,:)';
T_test = T(trainNum+1:trainNum+testNum,:)';
%% 归一化
[Pn_train ,ps]= mapminmax(P_train, 0, 1);
[Tn_train, ts] = mapminmax(T_train, 0, 1);
%测试集的归一化
Pn_test = mapminmax('apply', P_test, ps);
Tn_test = mapminmax('apply', T_test, ts);
%% 麻雀参数设置
pop=20; %种群数量
Max_iteration=30; % 设定最大迭代次数
dim = 2;% 维度为2,即优化两个参数,正则化系数 C 和核函数参数 S
lb = [0.0001,0.0001];%下边界
ub = [50,50];%上边界
fobj = @(x) fun(x,Pn_train,Tn_train,Pn_test,T_test,ts);
[Best_pos,Best_score,SSA_curve]=SSA(pop,Max_iteration,lb,ub,dim,fobj); %开始优化
figure
plot(SSA_curve,'linewidth',1.5);
grid on;
xlabel('迭代次数')
ylabel('适应度值')
title('麻雀收敛曲线')
%% 获取最优正则化系数 C 和核函数参数 S
Regularization_coefficient = Best_pos(1);
Kernel_para = Best_pos(2);
Kernel_type = 'rbf';
%% 训练
[~,OutputWeight] = kelmTrain(Pn_train,Tn_train,Regularization_coefficient,Kernel_type,Kernel_para);
% 测试
InputWeight = OutputWeight;
[TestOutT] = kelmPredict(Pn_train,InputWeight,Kernel_type,Kernel_para,Pn_test);
TestOut(k,:) = mapminmax('reverse',TestOutT,ts);
%% 基础KELM进行预测
Regularization_coefficient1 = 10;
Kernel_para1 = [4]; %核函数参数矩阵
Kernel_type = 'rbf';
%% 训练
[~,OutputWeight1] = kelmTrain(Pn_train,Tn_train,Regularization_coefficient1,Kernel_type,Kernel_para1);
%% 预测
InputWeight1 = OutputWeight1;
[TestOutT1] = kelmPredict(Pn_train,InputWeight1,Kernel_type,Kernel_para1,Pn_test);
TestOut1(k,:) = mapminmax('reverse',TestOutT1,ts);
end
TestOutT = sum(TestOut);
TestOutT1 = sum(TestOut1);
T = sum(data');
T_test = T(end - testNum + 1 : end);
disp('VMD-KELM误差指标计算: ')
[e1,ape1]=caculate_perf(T_test, TestOutT1);
disp(' ')
disp('VMD-SSA-KELM误差指标计算: ')
[e,ape]=caculate_perf(T_test, TestOutT);
figure
plot(T_test, 'b-','LineWidth',1.0)
hold on
plot(TestOutT1, 'k-','LineWidth',1.0)
hold on
plot(TestOutT, 'r-','LineWidth',1.0)
xlabel('测试样本')
ylabel('值')
legend('实际值', 'VMD-KELM', 'VMD-SSA-KELM')
grid on
title('基于VMD的SSA优化KELM模型测试集的预测值和实际值对比图')
figure
plot(e1, 'k-','LineWidth',1.0)
hold on
plot(e, 'r-','LineWidth',1.0)
xlabel('测试样本')
ylabel('误差')
legend('VMD-KELM', 'VMD-SSA-KELM')
grid on
title('基于VMD的SSA优化KELM模型测试集的预测误差对比图')
没有合适的资源?快使用搜索试试~ 我知道了~
MATLAB实现VMD-SSA-KELM和VMD-KELM变分模态分解结合麻雀算法优化核极限学习机时间序列预测(完整源码和数据)

共14个文件
m:8个
png:5个
xlsx:1个

1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉

温馨提示
MATLAB实现VMD-SSA-KELM和VMD-KELM变分模态分解结合麻雀算法优化核极限学习机时间序列预测(完整源码和数据) 1.Matlab实现VMD-SSA-KELM和VMD-KELM变分模态分解结合麻雀算法优化核极限学习机时间序列预测; 2.输入数据为单变量时间序列数据,即一维数据; 3.运行环境Matlab2018b及以上,WTData为数据集,运行主程序MainVMDSSAKELMTS,其余为函数文件无需运行,所有程序和数据放在一个文件夹; 4.麻雀算法优化两个参数,正则化系数 C 和核函数参数 S; 5.命令窗口输出MAE、MAPE、MSE、RMSE和R2; 6.预测效果:https://blog.csdn.net/kjm13182345320/article/details/128688197?spm=1001.2014.3001.5502
资源推荐
资源详情
资源评论






















收起资源包目录
















共 14 条
- 1
资源评论

- weixin_443767502023-04-26发现一个超赞的资源,赶紧学习起来,大家一起进步,支持!
- TOTOBOYY2023-04-02资源使用价值高,内容详实,给了我很多新想法,感谢大佬分享~
- 丿。。。。2023-03-07这个资源总结的也太全面了吧,内容详实,对我帮助很大。
- ctrl+c+v工程师2023-09-02支持这个资源,内容详细,主要是能解决当下的问题,感谢大佬分享~

机器学习之心
- 粉丝: 3w+
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 计算机网络在电子信息工程中的应用(1).docx
- 基于单片机的数字电压表文章教学教案.doc
- 软件项目管理全套文档模板(1).doc
- 计算机网络安全与病毒清除资料教程.ppt
- 小组软件过程课件资料讲解.ppt
- 自动化测试讲解 PPT.ppt
- TourEx-B2C旅游网站管理系统V6.0使用手册培训教材.doc
- 基于期权理论的企业信息化经济评价的开题报告.docx
- SQLServer数据库在实验中的应用.docx
- 杭电计算机组成作业答案.doc
- 2023-2025年光通信行业调研与市场分析报告.pdf
- 软件公司研发项目管理制度.docx
- 东北农业大学2021年9月《电子商务》平台及核心技术作业考核试题及答案参考3.docx
- 2016河北省职称计算机试题及答案.doc
- 网站编辑求职信.docx
- 单片机上下限温度报警器设计--课程设计.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
