【SVR预测】EMD优化SVR预测【含Matlab源码 1403期】

⛄一、运行结果

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

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信。
🍎个人主页:海神之光
🏆代码获取方式:
海神之光Matlab王者学习之路—代码获取方式
⛳️座右铭:行百里者,半于九十。

更多Matlab仿真内容点击👇
Matlab图像处理(进阶版)
路径规划(Matlab)
神经网络预测与分类(Matlab)
优化求解(Matlab)
语音处理(Matlab)
信号处理(Matlab)
车间调度(Matlab)

⛄二、EMD及SVM简介

1 引言
时间序列预测是将预测目标的历史数据按照时间的顺序排列成为时间序列,然后分析它随时间的变化趋势,外推预测值。时间序列预测,尤其是非平稳、非线性时间序列的预测在
经济、金融、工业、生物医学等领域中有着重要的应用。目前常用于时间序列预测的有回归模型和神经网络等方法,但是这些传统的单一预测方法难以在信息贫乏和不确定性条件下做出准确有效的预测?,这就使得必须根据时间序列波动趋势变化的规律和特点,找到一个鲁棒性强、预测精度高且实用的预测方法。
经验模式分解(Empirical Mode Decomposition, EMD) 可以根据信号自身的内在特性,将信息自适应地分解到不同的基本模式分量(Intrinsic Mode Function, IMF) 中, 是一种有效的非平稳、非线性信号分析方法。本文基于EMD和支持向量回归(Support Vector Regression, SVR) 方法, 提出一种新的混合智能预测模型,为非平稳、非线性时间序列的预测问题提供了很好的解决方法。纺织材料价格的预测实例充分表明该模型的准确性和有效性。

2 理论基础
2.1 经验模式分解

EMD可将任意信号分解为若干个IMF和一个余项的和34。所谓IMF就是满足如下两个条件的函数或信号:(1) 在整个数据序列中,极值点的数量(包括极大值点和极小值点)与过零
点的数量必须相等,或最多相差不多于一个;(2)任何一点,信号局部极大值确定的上包络线和局部极小值确定的下包络线的均值为零。EMD分解的具体步骤如下:
(1)假设信号为x(t),取其上下包络局部均值组成的序列为m(t),则:
h(t)=x(t)-m(t)(1)
对非线性、非平稳数据而言,一般一次处理不足以形成IMF, 一些非对称波仍然存在。把h(t) 看作待处理数据重复上述操作k次,得到:
在这里插入图片描述
(2)当hg(t) 满足IMF的条件时, 就获得了第一个IMF, 记做斤(t)=hg(t)。
(2) 将第一个IMF从信号中分离出来, 得到剩余信号r, () 为:
r(t)=x(t)-f(t) (3)
在这里插入图片描述
2.2 支持向量回归
SVR是由Vapnik等人于1995年提出的闯。该算法具有小样本学习、全局最优和推广能力强等突出优点,已成功应用于交通流量及风速预测等许多领域,并表现出比多层感知器等传统人工神经网络优越的预测性能。
在这里插入图片描述
在这里插入图片描述
3 混合智能预测模型
在采用单一SVR进行预测时,相同的时间序列采用不同的核函数会得到差别较大的预测结果。因此本文提出一种基于 EMD 和 SVR 的混合智能预测模型,很好地改善了预测效果。混合智能预测模型的基本计算流程如下:
在这里插入图片描述

⛄三、部分源代码

%% 清空环境变量
tic;
close all;
clear;
clc;
format compact;
%% 数据的提取和预处理
tsx=xlsread(‘001.xlsx’,‘A1:H406’);
ts=xlsread(‘001.xlsx’,‘J1:J406’);
ts = ts’;
tsx = tsx’;
[TS,TSps] = mapminmax(ts,1,2);

[TSX,TSXps] = mapminmax(tsx,1,2);
% 对数据进行转置,以符合格式要求
rand(‘seed’,0)
[m n]=sort(rand(1,length(TS)));
m=350;
TSX1 = TSX(:,n(1:m))‘;
TS1 = TS(:,n(1:m))’;
TSX2 = TSX(:,n(m+1:end))‘;
TS2 = TS(:,n(m+1:end))’;

%% 选择回归预测分析最佳的SVM参数c&g
kerneltype=1;%kerneltype=0(线性核) 1(多项式核) 2(rbf核函数) 3(sigmoid核函数)
[bestmse,bestc,bestg] = SVMcgForRegress(TS1,TSX1,-4,4,-4,4,3,0.5,0.5,0.05,kerneltype);
disp(‘打印选择结果’);
str = sprintf( ‘Best Cross Validation MSE = %g Best c = %g Best g = %g’,bestmse,bestc,bestg);
disp(str);

%% 利用回归预测分析最佳的参数进行SVM网络训练
cmd = ['-c ', num2str(bestc), ’ -g ‘, num2str(bestg) , ’ -s 3 -p 0.01 -d 1’];
model = svmtrain(TS1,TSX1,cmd);
function [mse,bestc,bestg] = SVMcgForRegress(train_label,train,cmin,cmax,gmin,gmax,v,cstep,gstep,msestep,kerneltype) %v,cstep这些不写的话就是默认值
%
% 利用网格搜索与交叉验证进行核参数与惩罚参数选择
% cmin cmax c的取值范围
% gmin gmax g的取值范围
% v 就是交叉验证参数 一般是5折交叉验证
% cstep gstep 网格取值的步长
% msestep 误差的步长 只是为了最后画等高线图用一用,这样比较好看
% kerneltype=0(线性核) 1(多项式核) 2(rbf核函数) 3(sigmoid核函数)

[X,Y] = meshgrid(cmin:cstep:cmax,gmin:gstep:gmax);
[m,n] = size(X);
cg = zeros(m,n);

eps = 10^(-4);

bestc = 0;
bestg = 0;
mse = Inf;
basenum = 2;
for i = 1:m %每更改一组c g值,跑5折交叉验证 最终选择精度最高的那一组c g
for j = 1:n
cmd = [‘-v ‘,num2str(v),’ -c ‘,num2str( basenum^X(i,j) ),’ -g ‘,num2str( basenum^Y(i,j) ),’ -s 3 -t ‘,num2str(kerneltype),’ -p 0.1 -d 1’];
cg(i,j) = svmtrain(train_label, train, cmd);

    if cg(i,j) < mse
        mse = cg(i,j);
        bestc = basenum^X(i,j);
        bestg = basenum^Y(i,j);
    end
    
    if abs( cg(i,j)-mse )<=eps && bestc > basenum^X(i,j)
        mse = cg(i,j);
        bestc = basenum^X(i,j);
        bestg = basenum^Y(i,j);
    end

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]王巍,赵宏,梁朝晖,马涛.基于EMD和SVR的混合智能预测模型及实证研究[J].计算机工程与应用. 2012,48(04)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值