【SVM时序预测】基于matlab粒子群算法优化支持向量机PSO-SVM期贷时序数据预测【含Matlab源码 2289期】

news2024/9/21 18:37:19

⛄一、PSO-SVM介绍

1 SVM
SVM是Vapnik提出的一种分类技术,这一技术具有坚实的统计理论基础。SVM可以将原始的数据映射到高维且线性可分的空间,扩展了线性不可分的样本数据,它是使用核函数将线性不可分转换为线性可分。

如果问题为线性不可分割,则需要引入非线性变换。在变换后的坐标空间中,划分超平面的模型方程如下

f(x)=ωTφ(x)+b (5)

式中:ω和b为SVM模型中的参数,φ(x)表示x的映射变换。为了使得找到的超平面到不同类别之间的距离和最大,则有
在这里插入图片描述
根据二次规划技术结合核函数进行求解得到超平面的方程
在这里插入图片描述
式中:κ(·)为核函数,κ(x,xi)表示ϕ(x)·ϕ(xi),ϕ(x)表示关于x的映射变换,αi表示权重系数,yi表示真实值。核函数技术是使用原来的样本数据计算变换后的空间中相似度的一种方法,可以用来帮助处理SVM中的非线性问题。常用的核函数有径向基函数、线性核函数、多项式核函数等。本文采用径向基核函数。

SVM分类模型中存在两个非常重要的参数C和γ。参数C代表惩罚因子,C的取值会影响分类器的分类精度,也可以理解为对误差的容忍限度。如果C太大,则训练阶段的分类准确率很高,而测试阶段的分类准确率很低,对于模型产生的误差具有较低的容忍程度。如果C太小,则分类准确率较差,不能令人满意,对于模型产生的误差具有较高的容忍程度,从而使得训练出来的分类模型变得无用。不恰当的C值会导致模型具有较差的泛化能力。参数γ对结果的影响相较于惩罚因子更大,γ的取值会对特征空间中的划分产生影响。如果γ的值过大会导致拟合过度,而γ的值过小会导致拟合不足,并且γ的大小会影响支持向量的多少,从而影响模型的训练速度。因此C和γ的取值对于SVM的影响很大,不同的取值会导致不同的分类性能,为了选择合适的C和γ的值,通过PSO优化SVM模型。

2 PSO算法
PSO算法是基于种群的搜索算法。在群体中粒子的经验知识会影响相邻粒子的运动趋势。PSO算法中的任意一个粒子均为潜在的优化解,通过不断地调整自身位置找到设置条件下的相对更优解。

粒子群优化算法由改变每个粒子向其pbest和gbest位置移动的速度组成。加速度由随机项加权得到,在这些随机项中,为向pbest和gbest位置的加速度生成单独的随机数。PSO更新每个粒子的位置、速度的方式见式(8)
在这里插入图片描述
式中:w1表示初始的设置值,we表示迭代到最大的进化代时的设置值,Ik表示设置的最大的迭代次数,g表示当前迭代次数。通过LDW方法可以提高PSO的寻优性能。

3 粒子群优化的支持向量机
在本节中,阐述了用于停电预测的PSO-SVM算法模型。利用LDW优化的粒子群算法寻找参数的最佳值,自动求解支持向量机的模型选择问题,从而优化SVM分类器的精度。在PSO算法中,粒子在搜索空间中位置的变化是基于个体追随他人成功的社会心理倾向。群中一个粒子的变化受其邻居的经验或知识的影响。因此,搜索过程使得粒子随机返回到搜索空间中先前成功的区域。

为了实现本文提出的方法,将径向基核函数(Radial basis kernel function, RBF)用于支持向量机分类器。将粒子群中每个粒子的位置视为一个矢量,这个矢量编码SVM分类器的两个参数的值,分别是核参数C和γ。分类精度是设计适应度函数的一个标准。因此,对于分类精度高的粒子产生较高的适应值。同时为了更好地利用粒子群算法寻优,采用线性递减权重动态更新w的值。最终将粒子群优化的SVM模型应用于停电情况的预测。粒子群优化的SVM算法的算法描述如下:
在这里插入图片描述
算法1是通过粒子群优化算法优化支持向量机中的参数,提高支持向量机模型的性能。首先初始化,随机生成初始的粒子,并对生成的粒子进行评估,给局部最优和全局最优的位置赋值(第1~7行)。接着,通过线性递减权重更新粒子的惯性因子值,接着更新粒子的速度和位置值,并对粒子进行评估,将不同粒子的位置对应的参数代入SVM模型中得到分类精度,根据不同参数下的分类精度更新局部最优和全局最优的位置,然后不断迭代直到满足结束条件。最后,返回搜索到的适合停电数据预测的SVM模型下的相对更优参数(第8~24行)。

⛄二、部分源代码

%% 清空环境
tic;clc;clear;close all;format compact
%% 加载数据
data=xlsread(‘EUA五分钟.xlsx’,‘G2:G30763’); save data data
load data
% 归一化
[a,inputns]=mapminmax(data’,0,1);%归一化函数要求输入为行向量
data_trans=data_process(5,a);%% 对时间序列预测建立滚动序列,即用1到m个数据预测第m+1个数据,然后用2到m+1个数据预测第m+2个数据
input=data_trans(:,1:end-1);
output=data_trans(:,end);
%% 数据集 前75%训练 后25%预测
m=round(size(data_trans,1)*0.75);
Pn_train=input(1:m,:);
Tn_train=output(1:m,:);
Pn_test=input(m+1:end,:);
Tn_test=output(m+1:end,:);

%% 1.没有优化的SVM
bestc=0.001;bestg=10;%c和g随机赋值 表示没有优化的SVM
t=0;%t=0为线性核函数,1-多项式。2rbf核函数
cmd = [‘-s 3 -t ‘,num2str(t),’ -c ‘, num2str(bestc),’ -g ‘,num2str(bestg),’ -p 0.01 -d 1’];

model = svmtrain(Tn_train,Pn_train,cmd);%训练
[predict,~]= svmpredict(Tn_test,Pn_test,model);%测试
% 反归一化,为后面的结果计算做准备
predict0=mapminmax(‘reverse’,predict’,inputns);%测试实际输出反归一化
T_test=mapminmax(‘reverse’,Tn_test’,inputns);%测试集期望输出反归一化
T_train=mapminmax(‘reverse’,Tn_train’,inputns);%训练集期望输出反归一化

figure
plot(predict0,‘r-’)
hold on;grid on
plot(T_test,‘b-’)
xlabel(‘样本编号’)
ylabel(‘收盘价/元’)
if t0
title(‘线性核SVM预测’)
elseif t
1
title(‘多项式核SVM预测’)
else
title(‘RBF核SVM预测’)
end

⛄三、运行结果

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

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]李淑锋,李加,张玉峰,王大鹏,袁培森.基于粒子群优化的支持向量机停电预测研究[J].南京理工大学学报. 2022,46(04)

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/99266.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机毕业设计springboot+vue+elementUI进销存管理信息系统

项目介绍 本次系统设计是一个纺织企业进销存管理信息系统,主要目的是为了提升绿 岩纺织科技有限公司的进销存管理能力,实现绿岩纺织科技有限公司的采购/加 工管理、仓库管理、销售管理等功能。 1.基本信息模块 ;1;商品管理:主要包含商品信息的展示以及添加商品功能。…

Java+MySQL基于SSM的在线论坛交流系统

信息和交流是一个一直伴随着人类一生的话题,从人类诞生开始就已经拥有了这一概念,无论是远古时候的打猎还是现代化的多样化合作都离不开信息和交流。随着时代的积累,人们要面对的信息量也越来越大,任何一个人体单位的人类都不可能涉及到全部的知识,这就需要大家不断的进行交流才…

springboot之多数据源---1

一、多数据源的典型使用场景 在实际开发中,经常可能遇到在一个应用中可能需要访问多个数据库的情况。以下是两种典型场景: 1 业务复杂(数据量大) 数据分布在不同的数据库中,数据库拆了, 应用没拆。 一个公司…

Git 分布式版本控制工具 05SSH免登陆:如何使用SSH如何免密登录服务器~

6 ssh免登陆 SSH是目前比较可靠的专为远程登录会话和其他网络服务提供安全的协议。不同主机之间在进行通信时,一般都是需要输入密码进行验证, ssh免密码之后,只要通过指定主机地址和端口号就可以实现不同的计算机之间访问时,不需…

基于web的网上图书商城的设计与实现/图书购物系统

摘 要 本毕业设计的内容是设计并且实现一个基于JSP技术的网上图书商城。它是在Windows下,以MYSQL为数据库开发平台,Tomcat网络信息服务作为应用服务器。网上图书商城的功能已基本实现,主要包括个人中心、图书分类管理、用户管理、图书信息管…

Android12指纹框架完全解析(一)

前言:自从Android6.0开始Google官方出了标准的Android指纹框架,结束了各家指纹厂商各自为政的局面,推动了电容指纹在Android的发展;自从2017年新思的屏下指纹方案横空出世,后边汇顶等指纹厂商跟进,Android …

【Linux】shell命令以及运行原理

shell命令1.用户不能直接使用操作系统2.Linux是一个操作系统3.在软件层面操作Linux系统4.shell运行原理1.用户不能直接使用操作系统 首先在讲shell命令之前,我们要知道 “用户是不能直接在操作系统上操作的,只能在操作系统之上,也就是软件层面…

基于两阶段鲁棒优化算法的微网多电源容量配置(Matlab)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

风控模型应聘,80%会被问到的面试题

模型过拟合,对经常建模的小伙伴来说是非常熟悉的,稍不留神,模型就出现过拟合了,这让我们在解决模型过拟合问题上花费了不少功夫。同样这个也是在面试中最高频会被Q到的问题。因此,在平日里建立模型的过程中&#xff0c…

视觉BEV语义分割模型 Simple-BEV: What Really Matters for Multi-Sensor BEV Perception?

A Simple Baseline for BEV Perception Without LiDAR本文介绍一篇简单的BEV语义分割模型,这篇文章出彩的是消融实验部分,分析了哪些因素对BEV语义分割影响比较大,此外还分析了如何更好使用Radar数据提高感知性能。 项目链接为:h…

fastjson 反序列化RCE,远程命令执行漏洞CVE、CNVD(2022年12月最新)

1、前言 Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,也可以将 JSON 字符串转换为 Java 对象。Fastjson 可以操作任何 Java 对象,即使是一些预先存在的没有源码的对象。 2、漏洞原理 漏洞利用fastjson autotype在处理json对…

GCD和LCM算法

目录 一 整除 定义 性质 二 GCD 1)定义 2)性质 3)GCD编程 ①暴力法 ②欧几里得算法 ③更相减损术 ④Stein算法 三 LCM ①暴力法 ②最大公约数法 四 裴蜀定理 例题:裴蜀定理 五 算法实践 [蓝桥杯 2019 省 B] 等差…

【AIOT】语音学习

声音以波的形式传播,即声波(Sound Wave)。当我们以波的视角来理解声音时,却又大繁若简起来:仅凭频率(Frequency)、幅度(Magnitude)、相位(Phase)便…

19 CPP拷贝构造函数

函数以值的方式返回对象时&#xff0c;可能会调用拷贝构造函数&#xff08;VS会调用&#xff0c;Linux不会&#xff0c;g编译器做了优化&#xff09; 代码说明 #include <iostream>using namespace std;//函数以值的方式返回对象时&#xff0c;可能会调用拷贝构造函数&a…

C++对C的语法增强

1、语法检查增强 声明int a; 定义int a 10; c语言的弱语法类型 2、严格的类型转换 枚举类型不能赋值整形 3、struct类型加强 c中定义结构体变量需要加上struct关键字&#xff0c;c不需要 c中结构体只能定义成员变量&#xff0c;不能定义函数。c可以定义成员函数 4、bool类…

聊聊优惠卷秒杀的下单功能

前言 案例来自黑马程序员视频&#xff1a;https://www.bilibili.com/video/BV1cr4y1671t/?spm_id_from333.999.0.0 案例分析 下单时需要判断两点&#xff1a; 秒杀是否开始或者结束&#xff0c;如果尚未开始或者已经结束则无法下单&#xff1b;库存是否充足&#xff0c;不足…

【图像隐写】DWT+SVD数字水印【含GUI Matlab源码 606期】

⛄一、DWTSVD数字水印简介 理论知识参考文献&#xff1a;基于DWT和SVD的彩色图像数字水印算法研究 一种基于DWT-SVD的图像数字水印算法\ ⛄二、部分源代码 function varargout main(varargin) % MAIN M-file for main.fig % MAIN, by itself, creates a new MAIN or raises…

想要提升英语阅读能力的小伙伴,走过路过,千万不要错过!

一、英语四六级阅读提升网站&#xff1a; 据统计&#xff1a;四六级阅读题目的来源主要来自纽约时报、经济学人、大西洋月刊、时代、新闻周刊、卫报等报刊&#xff0c;其分布比重如下图&#xff1a; 原文链接&#xff1a;英语四六级阅读外刊来源&#xff0c;知道事半功倍&#…

IIC信号为什么要加上拉电阻

IIC是一个两线串行通信总线&#xff0c;包含一个SCL信号和SDA信号&#xff0c;SCL是时钟信号&#xff0c;从主设备发出&#xff0c;SDA是数据信号&#xff0c;是一个双向的&#xff0c;设备发送数据和接收数据都是通过SDA信号。 在设计IIC信号电路的时候我们会在SCL和SDA上加一…

计算机毕业设计springboot+vue基本微信小程序的外卖点餐平台

项目介绍 餐饮行业是一个传统的行业。根据当前发展现状,网络信息时代的全面普及,餐饮行业也在发生着变化,单就点餐这一方面,利用手机点单正在逐步进入人们的生活。传统的点餐方式,不仅会耗费大量的人力、时间,有时候还会出错。小程序系统伴随智能手机为我们提供了新的方向。手机…