基于麻雀算法改进的随机森林回归算法 - 附代码_基于麻雀算法的随机森林回归_智能算法研学社(Jack旭)的博客-程序员秘密

技术标签: 算法  随机森林  智能优化算法应用  回归  

基于麻雀算法改进的随机森林回归算法


摘要:为了提高随机森林数据的回归预测准确率,对随机森林中的树木个数和最小叶子点数参数利用麻雀搜索算法进行优化。

1.数据集

数据信息如下:

data.mat 的中包含input数据和output数据

其中input数据维度为:2000*2

其中output数据维度为2000*1

所以RF模型的数据输入维度为2;输出维度为1。

2.RF模型

随机森林请自行参考相关机器学习书籍。

3.基于麻雀算法优化的RF

麻雀搜索算法的具体原理参考博客:https://blog.csdn.net/u011835903/article/details/108830958。

麻雀算法的优化参数为RF中树木个数和最小叶子节点数。适应度函数为RF对训练集和测试集的均方误差(MSE),均方误差MSE越低越好。
f i n t e n e s s = M S E [ p r e d i c t ( t r a i n ) ] + M S E [ p r e d i c t ( t e s t ) ] finteness = MSE[predict(train)] + MSE[predict(test)] finteness=MSE[predict(train)]+MSE[predict(test)]

4.测试结果

数据划分信息如下: 训练集数量为1900组,测试集数量为100组

麻雀参数设置如下:

%% 定义麻雀优化参数
pop=20; %种群数量
Max_iteration=30; %  设定最大迭代次数
dim = 2;%维![请添加图片描述](https://img-blog.csdnimg.cn/5da4bbb8d64e4253a59ef51c4c56271b.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pm66IO9566X5rOV56CU5a2m56S-77yISmFja-aXre-8iQ==,size_20,color_FFFFFF,t_70,g_se,x_16)
度,即树个数和最小叶子点树
lb = [1,1];%下边界
ub = [50,20];%上边界
fobj = @(x) fun(x,Pn_train,Tn_train,Pn_test,Tn_test);

请添加图片描述
请添加图片描述
请添加图片描述

RF训练集MSE:0.24928
RF测试集MSE:1.2406
SSA-RF训练集MSE:0.15995
SSA-RF测试集MSE:0.81196

从MSE结果来看,经过改进后的SSA-RF明显优于未改进前的结果。

5.Matlab代码

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u011835903/article/details/121860633

智能推荐

SpringBoot核心注解@SpringBootApplication和其他几个SpringBoot编写中常见注解_樱花树下的猫老师的博客-程序员秘密

三个注解的组合!@SpringBootApplication是启动类上的最重要的一个注解,我们点进去可以看到,她其实是三个注解的组合,也就是说使用者一个注解的作用相当于三个注解。这三个注解分别是:@[email protected]@EnableAutoConfiguration一、@SpringBootConfiguration:@Spri...

jmeter异步请求测试_使用JMeter对异步HTTP / REST服务进行压力/负载测试_dnc8371的博客-程序员秘密

jmeter异步请求测试 尽管我一直在使用JMeter进行Web应用程序的压力测试和负载测试好几次,但我们还是花了一些时间才弄清楚如何使用该工具测试基于异步HTTP / REST的服务。 对我们来说,我是一个程序员的同伴– Holger Staudacher ,我很荣幸能与一个项目一起工作–以及我谦卑的自我。 当Holger根据对上述项目进行功能和集成测试的经验开发出Restfuse时 ,...

游戏中自动攻击最近目标、二次连击和群体攻击的大体代码思路_游戏中多段攻击代码_平民小老百姓的博客-程序员秘密

通常我们玩GTA系列,暗黑血统系列,虐杀原形等电脑打斗游戏时,都是主角跟着鼠标转向来攻击的。这意味着要我们自己去寻找目标。但是移动设备不像laptop或者座机那样操作方便,所以最近目标攻击在移动设备是很常用的。下面给出攻击最近目标的主要代码和部分解释: public float attackRange = 30; public float attac

百度api实现实时摄像头人脸识别_百度api人脸识别算法_我不是_码神的博客-程序员秘密

大家好,我是爱码士_秃头兔子。一名刚毕业从事计算机视觉的新人。如果文章对你有所帮助,希望能点个赞支持一下,谢谢~百度api实现实时摄像头人脸识别创建百度智能云账号并登录调用api实现完整代码本文是利用百度api接口和openCV库实现的摄像头实时人脸识别搜索创建百度智能云账号并登录上一篇静态人脸识别已经写过详细教学了,可以点击链接: https://blog.csdn.net/cjava_python/article/details/118888390.查看教程,前面东西都是一样的创建智能云账号,进

maskrcnn数据集对图片进行大小重置_maskcnn 训练图像尺寸过大_404NT_FOUND的博客-程序员秘密

maskrcnn数据集对图片进行大小重置固定宽度1080重置图片、json内容(标注点、图像高度、宽度、图像信息等)import cv2import osimport globimport jsonimport collectionsimport numpy as npfrom labelme import utils # pip install labelmedef reziseIMG(): latitude = 2 # 超出边缘的像素宽容度,这里是2像素 sr

Matlab 图像处理 形态学 腐蚀 膨胀 开闭运算 连通分量_zyb_初学者的博客-程序员秘密

Matlab 图像处理 形态学 腐蚀 膨胀 开闭运算 连通分量注:原文:http://www.cnblogs.com/tornadomeet/archive/2012/03/20/2408086.html       形态学是提取图像特征的有力工具,针对二值图像和灰度图像的腐蚀、膨胀和重构的基本操作可以组合使用,以执行非常宽泛的任务。其练习代码和结果如下:  1

随便推点

Go、Nginx、Php、Nodejs谁能胜出紫禁之巅_孙飞 Sunface的博客-程序员秘密

声明:这里的测试框架都是很常用的框架,不去跟一些奇葩但是所谓性能极高的框架进行对比 由于我们在项目中大量使用Iris和nginx这两个Web框架(纯Go语言实现,零内存拷贝),同时也听过很多人问Go的Http性能对比nginx、对比nodejs到底如何,有鉴于此,今天我们就来做一个Web框架性能真实比拼。 测试环境图: 下面从多个维度对4个框架进行对比:Nginx   VS   Nginx-php

实时语音识别_实时语音识别特价_实时语音识别促销 - 云+社区 - 腾讯云_编程大乐趣的博客-程序员秘密

广告关闭2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品。未来,我们一起乘风破浪,创造无限可能。接口是 http restful 形式,在使用该接口前,需要在语音识别控制台开通服务,并进入 api 密钥管理页面 新建密钥,生成 appid、secretid 和 secretkey,用于 api 调用时生成签名,签名将用来进行接口鉴权。 接口要求集成实时语音识别 api ...

apache报错You don't have permission to access /test/index.php on this server._qdujunjie的博客-程序员秘密

竟然遇到这问题:You don't have permission to access /test/index.php on this server.可我本地localhost已绑定12

eval()函数的用法_eval函数用法_扣子不会飞的博客-程序员秘密

描述eval() 函数用来执行一个字符串表达式,并返回表达式的值。语法以下是 eval() 方法的语法:eval(expression[, globals[, locals]])参数expression -- 表达式。 globals -- 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。 locals -- 变量作用域,局部命名空间,如果被提供,可以是任...

毕业后还可以参加计算机考试,计算机二级毕业了还能考吗 考试内容是什么_好运爆棚的博客-程序员秘密

计算机二级考试是全国计算机等级考试(简称NCRE)四个等级中的一个等级,考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。计算机二级考试采用全国统一命题、统一考试的形式。计算机二级毕业了还能考吗计算机等级考试考生不受年龄、职业、学历等背景的限制,任何人均可根据自己学习和使用计算机的实际情况,选考不同等级考试。考生一次只能报考一个等级的考试。考生一次考试只能在一个考点报名。考...

BZOJ1017_Le_ballon_rouge的博客-程序员秘密

传送门:BZOJ1017比较复杂的树形Dp。 复杂的是这道题Dp方程的定义:fi,j,kf_{i,j,k}表示以节点i为根的子树,向i的父节点提供j个物品,在子树上总花费k元能得到的最大力量值。转移时我们先不考虑以i为根的子树合成了n个i却未完全上交的情况。i为树叶时,Dp是显然的,如果i不为树叶,则转换是显然的。但在这转移中,假设我们给子节点j′j'分配了k′k'元,则我们要考虑其它所有的情况。

推荐文章

热门文章

相关标签