Python实现猎人猎物优化算法(HPO)优化卷积神经网络回归模型(CNN回归算法)项目实战

说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取。




1.项目背景

猎人猎物优化搜索算法(Hunter–prey optimizer, HPO)是由Naruei& Keynia于2022年提出的一种最新的优化搜索算法。受到捕食动物(如狮子、豹子和狼)和猎物(如雄鹿和瞪羚)的行为的启发,他们根据猎人和猎物的位置移动方法设计了一种新型的搜索方式及自适应度更新的方法。

本项目通过HPO猎人猎物优化算法寻找最优的参数值来优化CNN回归模型。

2.数据获取

本次建模数据来源于网络(本项目撰写人整理而成),数据项统计如下:

数据详情如下(部分展示):

3.数据预处理

3.1 用Pandas工具查看数据

使用Pandas工具的head()方法查看前五行数据:

关键代码:

3.2数据缺失查看

使用Pandas工具的info()方法查看数据信息:

 

从上图可以看到,总共有11个变量,数据中无缺失值,共2000条数据。

关键代码:  

 

3.3数据描述性统计

通过Pandas工具的describe()方法来查看数据的平均值、标准差、最小值、分位数、最大值。

关键代码如下:    

4.探索性数据分析

4.1 y变量直方图

用Matplotlib工具的hist()方法绘制直方图:

从上图可以看到,y变量主要集中在-400~400之间。

4.2 相关性分析

 

从上图中可以看到,数值越大相关性越强,正值是正相关、负值是负相关。

5.特征工程

5.1 建立特征数据和标签数据

关键代码如下:

5.2 数据集拆分

通过train_test_split()方法按照80%训练集、20%测试集进行划分,关键代码如下:

5.3 数据样本增维

数据样本增加维度后的数据形状:

 

6.构建HPO猎人猎物优化算法优化CNN回归模型

主要使用HPO猎人猎物优化算法优化CNN回归算法,用于目标回归。

6.1 HPO猎人猎物优化算法寻找的最优参数

关键代码:

  

最优参数:

  

6.2 最优参数值构建模型

6.3 最优参数模型摘要信息

 

6.4 最优参数模型网络结构

 

6.5 最优参数模型训练集测试集损失曲线图

 

7.模型评估

7.1 评估指标及结果

评估指标主要包括可解释方差值、平均绝对误差、均方误差、R方值等等。

从上表可以看出,R方0.8526,为模型效果较好。

关键代码如下:

 

7.2 真实值与预测值对比图

 

从上图可以看出真实值和预测值波动基本一致,模型拟合效果良好。  

8.结论与展望

综上所述,本文采用了HPO猎人猎物优化算法寻找CNN回归算法的最优参数值来构建回归模型,最终证明了我们提出的模型效果良好。此模型可用于日常产品的预测。

def __init__(self, m, T, lb, ub, R, C, X_train, y_train, X_test, y_test):self.M = m  # 种群个数self.T = T  # 迭代次数self.lb = lb  # 下限self.ub = ub  # 上限self.R = R  # 行self.C = C  # 列self.b = 0.1  # 调节参数self.X_train = X_train  # 训练集特征self.X_test = X_test  # 测试集特征self.y_train = y_train  # 训练集标签self.y_test = y_test  # 测试集标签# ******************************************************************************# 本次机器学习项目实战所需的资料,项目资源如下:# 项目说明:# 链接:https://pan.baidu.com/s/1-P7LMzRZysEV1WgmQCpp7A # 提取码:5fv7# ******************************************************************************# 提取特征变量和标签变量
y = df['y']
X = df.drop('y', axis=1)# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

更多项目实战,详见机器学习项目实战合集列表:

机器学习项目实战合集列表_机器学习实战项目_胖哥真不错的博客-CSDN博客


 

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

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

相关文章

OpenCV(二十八):连通域分割

目录 1.介绍连通域分割 2.像素领域介绍 3.两遍法分割连通域 4.连通域分割函数 1.介绍连通域分割 连通域分割是一种图像处理技术,用于将图像中的相邻像素组成的区域划分为不同的连通域。这些像素具有相似的特性,如相近的灰度值或颜色。连通域分割可以…

ue5 物理场的应用

cable mat wpo particle 流体粒子 choas 破损 刚体 布料 cloud abp blueprint riggedbody 体积雾 毛发 全局的 局部的 非均匀的 连续变化的 也可以多个叠加 从全局 到 范围 除了vector还有scalar的值也就是0--1的黑白灰的值 但是最终输出的值的类型还是取决于这个 一…

链动2+1天天秒商城商业模式

链动21天天秒商城商业模式 在当今市场,一种名为链动21天天的秒杀商城商业模式正在引发广泛关注。这种创新的商业模式具有快速拓展市场的强大能力,让许多用户和商家都感到非常惊讶。那么,这种模式究竟是什么,它又为何具有如此大的…

【前端打怪升级日志之CSS篇】position定位

学习链接:阮一峰CSS定位详解 学习总结: 学习应用:待补充。。。

STM32-DMA

1 DMA简介 DMA(Direct Memory Access),中文名为直接内存访问,它是一些计算机总线架构提供的功能,能使数据从附加设备(如磁盘驱动器)直接发送到计算机主板的内存上。对应嵌入式处理器来说,DMA可…

LINE自动回复:快速回复提升客服效率

2023年,LINE在其4个主要市场:对话、日本、台湾和泰国拥有约1.78亿月活跃用户。 LINE不仅是一个通讯软件,更提供广泛的服务,包括语音和视讯通话、群组、发布社交帖子及商务功能。近年来,越来越多的企业在客户服务中使用…

雷士明轩好用吗?测评师对比横评书客、雷士、米家哪款好

如今,大多数人的日常工作和学习都离不开电子设备,长时间盯着屏幕容易造成眼睛疲劳和视力下降。全国近视率占多数的还是青少年,护眼台灯作为一种照明设备,具有调节光线亮度和色温的功能,可以有效减少眼睛的疲劳&#xf…

Day_81-87 CNN卷积神经网络

目录 一. CNN卷积神经网络与传统神经网络的不同 1. 模型图 2. 参数分布情况 3. 卷积神经网络和传统神经网络的层次结构 4. 传统神经网络的缺点: 二. CNN的基本操作 1. 卷积 2. 池化 三. CNN实现过程 1. 算法流程图 2. 输入层 3. 卷积层 4. 激活层 5. 池化层 6. 全连…

IDEA版SSM入门到实战(Maven+MyBatis+Spring+SpringMVC) -Maven目录结构和idea的整合

Maven工程目录结构约束(约束>配置>代码) 项目名 src【书写源代码】 main【书写主程序代码】 java【书写java源代码】resources【书写配置文件代码】 test【书写测试代码】 java【书写测试代码】 pom.xml【书写Maven配置】 测试步骤(进入项目名根目录【在根…

MySQL 数据库常用操作语句的总结

1、创建数据库: CREATE DATABASE database_name;2、删除数据库: DROP DATABASE database_name;3、选择数据库: USE database_name;4、创建表: CREATE TABLE table_name (column1 datatype [condition],column2 datatype [cond…

[LINUX使用] iptables tcpdump wireshark tshark

iptables: 收到来自 10.10.10.10 的数据后都丢弃 iptables -I INPUT -s 10.10.10.10 -j DROP 直接 reject 来自 10.10.10.* 网段的数据 iptables -I INPUT -s 10.10.10.0/24 -j REJECT tcpdump: dump eth0的数据到本地 tcpdump -i eth0 -w dump.pcap 只抓 目的地址是 10…

【Docker】docker入门之dockerfile编写

文章目录 前言一、docker是什么?docker介绍docker指令 二、docker有什么用?三、docker怎么用?FROMMAINTAINERRUNENVWORKDIRCOPY、ADDUSEREXPOSE实例 四、docker注意事项docker容器中使用某些宿主机设备时需要额外的权限docker容器中文件内容中…

发布自定义node包,实现自定义脚本命令

比方说yarn,cnpm,vite等命令,无需执行node xxxx,可以自定义执行并完成一些操作 创建一个文件夹如下 在index.js中输入 #!/usr/bin/env node console.log(hello world);在package.json中添加 {...,"bin": {"pack…

利用微调的deberta-v3-large来预测情感分类

前言: 昨天我们讲述了怎么利用emotion数据集进行deberta-v3-large大模型的微调,那今天我们就来输入一些数据来测试一下,看看模型的准确率,为了方便起见,我直接用测试集的前十条数据 代码: from transfor…

JS原理-笔记(1/3)

JS原理-笔记(1/3) 知识点自测 今天课程中涉及到的已学习知识点 函数的call方法-文档链接 // 以指定的this调用函数,并通过 从第二个参数开始依次传递参数 function func(food,drink){console.log(this)console.log(food)console.log(drink)…

【C语言】数据结构的基本概念与评价算法的指标

1. 数据结构的基本概念 1.1 基本概念和术语 1.1.1 数据 数据是信息的载体,是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。数据是计算机程序加工的原料 1.1.2 数据元素 数据元素是数据的基本单位,通常作为一个整体进行考虑和…

vue知识点————插槽 slot

slot 插槽 在父组件中引用的子组件 在父组件中写入百度 可在子组件slot插槽中展示出 父组件 <template><div id"app"><child url"https://www.baidu.com">百度</child></div> </template><script> import chil…

如何评估以及优化谷歌ads

在广告投放一段时间后&#xff0c;应该对广告的效果有所了解。如果您的目标是增加销量和网站流量&#xff0c;米贸搜谷歌推广建议请考虑以下问题&#xff1a; 1.哪些关键字为广告带来的点击最多&#xff1f; 2.客户进行搜索时使用的是何种设备&#xff1f;他们来自何处&#xf…

C语言是否快被时代所淘汰?

今日话题&#xff0c;C语言是否快被时代所淘汰&#xff1f;在移动互联网的冲击下&#xff0c;windows做的人越来越少&#xff0c;WP阵营没人做&#xff0c;后台简单的php&#xff0c;复杂的大数据处理的java&#xff0c;要求性能的c。主流一二线公司基本上没多少用C#的了。其实…

ChatGLM学习

GLM paper&#xff1a;https://arxiv.org/pdf/2103.10360.pdfchatglm 130B&#xff1a;https://arxiv.org/pdf/2210.02414.pdf 前置知识补充 双流自注意力 Two-stream self-attention mechanism&#xff08;双流自注意机制&#xff09;是一种用于自然语言处理任务的注意力机制…