当前位置: 首页 > article >正文

回归预测 | Matlab基于POA-LSSVM鹈鹕算法算法优化最小二乘支持向量机的数据多输入单输出回归预测

回归预测 | Matlab基于POA-LSSVM鹈鹕算法算法优化最小二乘支持向量机的数据多输入单输出回归预测

目录

    • 回归预测 | Matlab基于POA-LSSVM鹈鹕算法算法优化最小二乘支持向量机的数据多输入单输出回归预测
      • 预测效果
      • 基本介绍
      • 程序设计
      • 参考资料

预测效果

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

基本介绍

Matlab基于POA-LSSVM鹈鹕算法算法优化最小二乘支持向量机的数据多输入单输出回归预测(完整源码和数据)
1.data为数据集,输入6个特征,输出一个变量。
2.main.m为程序主文件,其余为函数文件无需运行。
3.鹈鹕算法算法算法优化最小二乘支持向量机,优化RBF核函数gam和sig。
4.注意程序和数据放在一个文件夹,运行环境为Matlab2018及以上.
5.命令窗口输出R2、MSE、MAE、MAPE和MBE多指标评价;
6.程序语言为matlab,程序可出预测效果图,迭代优化图,相关分析图;
7.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。

程序设计

  • 完整程序和数据下载方式(资源处直接下载): Matlab基于POA-LSSVM鹈鹕算法算法优化最小二乘支持向量机的数据多输入单输出回归预测
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行

%%  划分训练集和测试集
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);

%%  转置以适应模型
p_train = p_train'; p_test = p_test';
t_train = t_train'; t_test = t_test';

%%  参数设置
pop = 5;              % 种群数目
Max_iter = 50;         % 迭代次数
dim = 2;               % 优化参数个数
lb = [10,   10];       % 下限
ub = [1000, 1000];       % 上限

%% 优化函数
fobj = @(x)fitnessfunclssvm(x, p_train, t_train);

%% 优化


%% LSSVM参数设置
type       = 'f';                % 模型类型 回归
kernel     = 'RBF_kernel';       % RBF 核函数
proprecess = 'preprocess';       % 是否归一化

%% 建立模型
gam = Best_score(1);  
sig = Best_score(2);
model = initlssvm(p_train, t_train, type, gam, sig, kernel, proprecess);

%% 训练模型
model = trainlssvm(model);

%% 模型预测
t_sim1 = simlssvm(model, p_train);
t_sim2 = simlssvm(model, p_test);

%%  数据反归一化
T_sim1 = mapminmax('reverse', t_sim1, ps_output);
T_sim2 = mapminmax('reverse', t_sim2, ps_output);

%%  均方根误差
error1 = sqrt(sum((T_sim1' - T_train).^2) ./ M);
error2 = sqrt(sum((T_sim2' - T_test ).^2) ./ N);


参考资料

[1] https://blog.csdn.net/article/details/126072792?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/article/details/126044265?spm=1001.2014.3001.5502
[3] https://blog.csdn.net/article/details/126043107?spm=1001.2014.3001.5502


http://www.kler.cn/a/229320.html

相关文章:

  • day 27 日志文件(枚举,时间函数),目录io,多文件管理
  • RabbitMQ(三)
  • 【Rust练习】28.use and pub
  • qt vs ios开发应用环境搭建和上架商店的记录
  • 【STM32】HAL库USB实现软件升级DFU的功能操作及配置
  • Linux 机器学习
  • 快速掌握Vue.js框架:从入门到实战
  • K8S之标签的介绍和使用
  • CentOS 8 安装配置 Hadoop3.3.6 伪分布式安装方式(适用于开发和调试)
  • 记一次面试题
  • 09_树莓派_树莓派外设板_GPIO_按键的中断与消抖
  • C#,奥西里斯数(Osiris Number)的算法与源代码
  • Vue中路由的使用
  • 如何使用VSCode上运行Jupyter,详细案例过程出可视化图
  • django解决Table ‘xx‘ already exists的方法
  • 【C语言】(15)字符串标准库常用函数
  • Java设计模式大全:23种常见的设计模式详解(二)
  • Deepin系统安装x11vnc远程桌面工具实现无公网ip访问本地桌面
  • 十大排序算法之线性时间比较类排序
  • 安装nodejs2011并配置npm仓库
  • Libvirt 迁移标志详解
  • Git学习笔记-- amend 详解
  • C#,纽曼-尚克斯-威廉士素数(Newman Shanks Williams prime)的算法与源代码
  • 油猴js 获取替换网页链接并重定向
  • 蓝桥杯刷题--python-2
  • Vue安装与配置