Python实现竞争性自适应重加权采样法(CARS)进行特征变量选择并构建LightGBM回归模型(LGBMRegressor算法)项目实战

这篇具有很好参考价值的文章主要介绍了Python实现竞争性自适应重加权采样法(CARS)进行特征变量选择并构建LightGBM回归模型(LGBMRegressor算法)项目实战。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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


cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型


cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型


1.项目背景

竞争性自适应重加权采样法(competitive adapative reweighted sampling, CARS)是一种结合蒙特卡洛采样与PLS模型回归系数的特征变量选择方法,模仿达尔文理论中的 ”适者生存“ 的原则(Li et al., 2009)。CARS 算法中,每次通过自适应加权采样(adapative reweighted sampling, ARS)保留PLS模型中 回归系数绝对值权重较大的点作为新的子集,去掉权值较小的点,然后基于新的子集建立PLS模型,经过多次计算,选择PLS模型交互验证均方根误差(RMSECV)最小的子集中的波长作为特征波长。

本项目通过竞争性自适应重加权采样法进行特征选择来构建LightGBM回归模型。

2.数据获取

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

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

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

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

3.数据预处理

3.1 用Pandas工具查看数据

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

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

 关键代码:

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

3.2 数据缺失查看

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

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

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

关键代码:

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

3.3 数据描述性统计

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

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

关键代码如下:

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

4.探索性数据分析

4.1 y变量直方图

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

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

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

4.2 相关性分析

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

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

5.特征工程

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

关键代码如下:

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

5.2 CARS进行特征选择

 cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

获取的特征数:

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

特征选择后的数据进行部分展示(数据保存到Excel中的):

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

5.3 数据集拆分

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

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

6.构建LightGBM回归模型

主要使用LightGBM回归算法,用于目标回归。

6.1 构建模型

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

7.模型评估

7.1 评估指标及结果

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

 cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

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

关键代码如下:   

cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

 7.2 真实值与预测值对比图

 cars代码建模怎么看,机器学习,python,python,机器学习,竞争性自适应重加权采样法,CARS,LightGBM回归模型

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

8.结论与展望

综上所述,本文采用了竞争性自适应重加权采样法进行特征变量选择来构建LightGBM回归模型,最终证明了我们提出的模型效果良好。此模型可用于日常产品的预测。

# 本次机器学习项目实战所需的资料,项目资源如下:
 
# 项目说明:

# 链接:https://pan.baidu.com/s/1Xcn-VBBA_F4TB3N5rnO2RQ 
# 提取码:bysh

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

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


项目代码咨询、获取,请见下方公众号。 文章来源地址https://www.toymoban.com/news/detail-786356.html

到了这里,关于Python实现竞争性自适应重加权采样法(CARS)进行特征变量选择并构建LightGBM回归模型(LGBMRegressor算法)项目实战的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • (学习笔记)地理加权回归(GWR)、多尺度地理加权回归(MGWR)原理与软件实现

    1回归 1.1回归 回归分析是最常用的社会科学统计方法。回归用于 评估两个或更多要素属性之间的关系 。通过回归分析,我们可以对空间关系进行建模、检查和探究;回归分析还可以帮助解释所观测到的空间模式背后的诸多因素,例如为什么有些地区会持续发生年轻人早逝或

    2023年04月08日
    浏览(40)
  • Python基于Excel数据加以反距离加权空间插值并掩膜图层

      本文介绍基于 Python 中 ArcPy 模块,实现 Excel数据读取 并 生成矢量图层 ,同时进行 IDW插值 与 批量掩膜 的方法。   首先,我们来明确一下本文所需实现的需求。   现有一个记录有北京市 部分PM2.5浓度监测站点 在2019年05月18日00时至23时(其中不含19时)等 23个逐小时

    2024年04月10日
    浏览(48)
  • nginx加权轮询,upstream,Keepalive,负载均衡实现案例

    1. nginx 加权轮询, weight是权重配置。

    2024年02月08日
    浏览(46)
  • Stanford Cars Datasets

    Overview: Stanford Cars数据集简称CARS196,由斯坦福大学—人工智能实验室于2013年发布,主要用于细粒度分类任务。 数据集包含196中汽车类型的图像,16185张不同型号的汽车图片,其中8144张为训练集,8041张为测试集。每个类别的图像相当,其中分类基于汽车品牌、车型和年份,例

    2024年02月07日
    浏览(31)
  • 【信息融合与状态估计】基于Kalman滤波和现代时间序列分析方法,利用集中式融合估计、分布式融合估计(按矩阵加权、按对角阵加权、按标量加权)、 协方差交叉融合等方法实现对状态的融合估计(Matlab)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 2.1 改进的CI融合估值器 2.2 基于现代时间

    2024年01月15日
    浏览(55)
  • 【语音处理】基于加权压力匹配方法(WPMM)的私人声音系统研究(Matlab代码实现)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🌈3 Matlab代码实现 🎉4 参考文献 在本文中

    2024年02月15日
    浏览(48)
  • 用于弥散加权MRI的关节各向异性维纳滤光片研究(Matlab代码实现)

     💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码实现 该模块

    2024年02月12日
    浏览(40)
  • 通过条件竞争实现内核提权

    条件竞争漏洞(Race Condition Vulnerability)是一种在多线程或多进程并发执行时可能导致不正确行为或数据损坏的安全问题。这种漏洞通常发生在多个线程或进程试图访问和修改共享资源(如内存、文件、网络连接等)时,由于执行顺序不确定或没有适当的同步措施,导致竞争条

    2024年02月08日
    浏览(50)
  • 基于Stanford Cars的ResNet和GoogLeNet图像识别

    这是一个使用斯坦福汽车数据集进行汽车分类的深度学习项目。我将使用迁移学习在ImageNet上预训练的深度网络,并对数据集进行微调,为了减少训练时间我把数据集。 数据来源:https://ai.stanford.edu/~jkrause/cars/car_dataset.html 斯坦福汽车数据集包含 195 类汽车的 16,185 张图像。数

    2024年02月11日
    浏览(34)
  • 深度学习上采样下采样概念以及实现

    #pic_center =400x 系列文章: 【深度学习】上采样,下采样,卷积 torch.nn.functional.interpolate函数 上采样 简单说将图片放大,通过在像素键插入数据 1.插值,一般使用的是双线性插值,因为效果最好,虽然计算上比其他插值方式复杂,但是相对于卷积计算可以说不值一提,其他插

    2024年02月03日
    浏览(76)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包