回归预测 | MATLAB实现BO-LSSVM贝叶斯优化算法优化最小二乘支持向量机数据回归预测(多指标,多图)

news2024/11/26 6:24:40

回归预测 | MATLAB实现BO-LSSVM贝叶斯优化算法优化最小二乘支持向量机数据回归预测(多指标,多图)

目录

    • 回归预测 | MATLAB实现BO-LSSVM贝叶斯优化算法优化最小二乘支持向量机数据回归预测(多指标,多图)
      • 效果一览
      • 基本介绍
      • 程序设计
      • 参考资料

效果一览

1
2
3

基本介绍

1.多特征输入单输出,回归预测。MATLAB实现BO-LSSVM贝叶斯优化算法优化最小二乘支持向量机数据回归预测(多指标,多图)。
2.直接替换Excel数据即可用,注释清晰,适合新手小白
3.附赠示例数据,输入格式如图2所示,直接运行main文件一键出图

程序设计

  • 完整源码和数据获取方式:私信回复回归预测 | MATLAB实现BO-LSSVM贝叶斯优化算法优化最小二乘支持向量机数据回归预测(多指标,多图)
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行

%%  导入数据
res = xlsread('data.xlsx');

%%  划分训练集和测试集
temp = randperm(103);

P_train = res(temp(1: 80), 1: 7)';
T_train = res(temp(1: 80), 8)';
M = size(P_train, 2);

P_test = res(temp(81: end), 1: 7)';
T_test = res(temp(81: end), 8)';
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);



%%  仿真测试
t_sim1 = sim(net, p_train);
t_sim2 = sim(net, 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);



%%  相关指标计算
% 决定系数 R2
R1 = 1 - norm(T_train - T_sim1)^2 / norm(T_train - mean(T_train))^2;
R2 = 1 - norm(T_test -  T_sim2)^2 / norm(T_test -  mean(T_test ))^2;

disp(['训练集数据的R2为:', num2str(R1)])
disp(['测试集数据的R2为:', num2str(R2)])

% 平均绝对误差 MAE
mae1 = sum(abs(T_sim1 - T_train)) ./ M ;
mae2 = sum(abs(T_sim2 - T_test )) ./ N ;

disp(['训练集数据的MAE为:', num2str(mae1)])
disp(['测试集数据的MAE为:', num2str(mae2)])

% 平均相对误差 MBE
mbe1 = sum(T_sim1 - T_train) ./ M ;
mbe2 = sum(T_sim2 - T_test ) ./ N ;

disp(['训练集数据的MBE为:', num2str(mbe1)])
disp(['测试集数据的MBE为:', num2str(mbe2)])

参考资料

[1] https://blog.csdn.net/kjm13182345320/article/details/129215161
[2] https://blog.csdn.net/kjm13182345320/article/details/128105718

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

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

相关文章

Stream流中的常用方法(forEach,filter,map,count,limit,skip,concat)和Stream流的特点

1、forEach方法 该方法接收一个Consumer接口是一个 消费型 的函数式接口,可以传递Lambda表达式,消费数据用来遍历流中的数据,是一个 终结 方法,遍历 之后就不能继续调用Stream流中的其他方法 package com.csdn.stream; import jav…

【数字IC设计】DC自动添加门控时钟

简介 数字电路的动态功耗主要是由于寄存器翻转带来的,为了降低芯片内部功耗,门控时钟的方案应运而生。作为低功耗设计的一种方法,门控时钟是指在数据无效时将寄存器的时钟关闭,以此来降低动态功耗。 在下图中,展示了…

【Matlab】二维绘图函数汇总

目录 1. plot() 2. subplot() 3. fplot() 4. polarplot() 1. plot() plot() 函数是 Matlab 中最常用的绘图函数,用于在平面直角坐标系中绘制直线或曲线。 用法: plot(X,Y) plot(X,Y,LineSpec) plot(X1,Y1, ... ,Xn,Yn) 说明: plot(X,Y) …

【软考-中级】系统集成项目管理工程师-立项管理历年案例

持续更新。。。。。。。。。。。。。。。 目录 2023 上 试题一(18分) 2023 上 试题一(18分) A公司跨国收购了B公司的主营业务,保留了B公司原有的人员组织结构和内部办公系统。 为了解决B公司内部办公系统与A公司原有系统不兼容的问题,财务、人力和行政部…

ES6 -- 模块化(CommonJS、AMD、ES Module)

模块模式 将代码拆分成独立的块,然后再将这些块连接起来可以通过模块模式来实现。这种模式背后的思想很简单:把逻辑分块,各自封装,相互独立,每个块自行决定对外暴露什么,同时自行决定引入执行哪些外部代码…

springboot 制造装备物联及生产管理ERP系统

springboot 制造装备物联及生产管理ERP系统 liu1113625581

什么是js?(初步了解)

Javascript简称js,js是一种脚本语言,是不需要进行编译的,也是浏览器中的一部分,经常用在web客户端脚本语言,主要是用来给html增加动态功能。 而现在,由于Node.js的出现,JavaScript以及不局限与浏览器,用户也可以在服务端进行代码的编写&#…

gpt4.0和3.5区别在哪里:什么样的人适合使用gpt4.0?

GPT-4和GPT-3.5相比,就像是智能手机的新一代和上一代。升级了,功能多了,但核心都是让你的工作和生活更便捷。 联网能力 GPT-3.5:与世隔绝,不联网。 GPT-4:5月17日后能上网浏览,信息获取能力加…

Zabbix7.0 LTS新功能

一、简介 LTS是长期支持。LTS版本支持5年。如果更喜欢稳定性,未涉及到最新的功能,可以选次新的LTS或者更低解决方案。而Zabbix6.4是最新的主要版本不属于LTS版本。 二、新功能 从以下几个方面介绍部分新功能: 性能提升:内存储存…

二十四、【参考素描三大面和五大调】

文章目录 三种色面(黑白灰)五种色调 这个可以参考素描对物体受光的理解:素描调子的基本规律与素描三大面五大调物体的明暗规律 三种色面(黑白灰) 如下图所示,我们可以看到光源是从亮面所对应的方向射过来的,所以我们去分析图形的时候,首先要…

SpringMVC之WEB-INF下页面跳转@ModelAttributeIDEA tomcat控制台中文乱码问题处理

WEB-INF下页面跳转 ModelAttribute来注解非请求处理方法 用途:预加载数据,会在每个RequestMapping方法执行之前调用。 特点:无需返回视图,返回类型void IDEA tomcat控制台中文乱码问题处理 复制此段代码:-Dfile.e…

Fooocus AI绘画多种风格阿弥陀佛像

ai绘画越来越简单了,fooocus就是最近比较多人议论的一个stable diffusion 变种,由control net 作者针对 标midJourney的一款同类开源绘画工具。作为工具开发来说,肯定是越简单,用户越多。当然,模型用的还是SD官方模型。…

【运算符+逻辑控制】

文章目录 1.类型转换2.类型提升3.如何求字符串长度 4.字符串类型String的神奇用法 4.运算符算术运算符关系运算符逻辑运算符 5.位运算符移位运算符条件运算符6.java的输入7. 判断是否为闰年8.switch 语句9.while循环计算1~100之间的和计算1~100之间的奇数的和计算1~100之间偶数…

如何在小程序的个人中心页面进行装修

个人中心页面是小程序中非常重要的页面之一,它是用户与小程序进行互动和管理的主要入口。为了提升用户体验和个性化定制,商家可以对个人中心页面进行装修,包括设置顶部的背景图片和标题图片、我的服务项目等等。 下图,是小程序个人…

顺序表之(条条有注释助你吃透顺序表以及基于顺序表实现的通讯录)

顺序表 顺序表是线性表的一种,而线性表指的是具有相同特性的一类数据结构的统称,这些相同特性即在逻辑结构(人为想象)上一定是线性的,在物理结构(内存存储中)上不一定是线性的 顺序表的底层结构…

Java应用的防破解方案

前言 自从Java诞生以来,其字节码容易被反编译的问题就为程序员所诟病。由此也诞生了不少Java混淆工具和加壳软件。 Java应用的打包 exe4jlaunch4jJSmooth: 已经过时了jpackage:JDK自带的打包工具Installer工具:Inno Setup、NSIS(https://s…

Redis 最流行的图形化界面下载及使用超详细教程(带安装包)! redis windows客户端下载

另一个完全不同的redis图形化界面教程链接(带安装包): https://blog.csdn.net/dream_ready/article/details/133817466 redis图形化界面的压缩包,直接解压缩即可,双击 Another Redis Desktop Manager.exe 即可打开 1、…

数据结构--》掌握数据结构中的查找算法

当你需要从大量数据中查找某个元素时,查找算法就变得非常重要。 无论你是初学者还是进阶者,本文将为你提供简单易懂、实用可行的知识点,帮助你更好地掌握查找在数据结构和算法中的重要性,进而提升算法解题的能力。接下来让我们开启…

IDEA中SpringBoot的启动类文件变成了一个J文件的解决方案

错误如下: 解决方案: 此时可以发现已经恢复成功了

使用Python进行钻石价格分析

钻石是最昂贵的宝石之一。钻石的质量通常以其重量(克拉)、净度、颜色和切工来评估。重量越大、净度越高、色彩纯净、切工精细的钻石价格也越高。其中,4C标准是衡量钻石质量的国际标准,即克拉(Carat)、净度&…