人话说LightGBM

在这里插入图片描述

概述

LightGBM 和 XGBoost 两种模型都是GBDT 这种概念的工程化的实现,
说人话就是你和你的兄弟姐妹有一些不同,但是都是你爸和你妈那套操作出来的。

GBDT 这种概念又是建立在cart 决策树上

Cart决策树

决策树

决策树是啥,你就简单的理解为:
比如用一个决策树判断西瓜是否是好瓜
**
树的非叶子节点:西瓜的特点(特征),比如:纹理,重量
树的树干:西瓜特点的值,比如:纹理清晰,重量大于1斤
树的叶子节点:西瓜的判断结果,比如:好瓜,坏瓜
**
在这里插入图片描述

Cart决策树

假如让你用一堆西瓜,这堆西瓜有以下特征
1.重量
2.纹理
3.周长
4.瓜尾巴
让你来做一个树,用这些已有的西瓜来生成一颗树去预测新的瓜。
首先肯定要考虑这颗树怎么拆(特征选择),所以根据特征的选择方法就有以下的分类
cart决策树就是使用了基尼系数和平方误差定义为cart分类树和cart回归树

在这里插入图片描述

GBDT(梯度提升决策树)

GBDT 简单理解:梯度下降的方式去找提升决策树的最小值,这个树可以表达为一个函数,这个函数的最低点就是我们俗称的模型训练要达到的目的,即损失最小

梯度

简单的理解为,一个函数下降最快的那个方向的矢量
你可能会说,这个方向不就只有一个吗?No,机器学习中很多的函数都不是简单平面函数,所以在三维立体的函数里,你是需要去寻找这个梯度的

梯度下降

简单理解为,每一种机器学习模型都会搞出一个损失函数,这个函数的损失越小了,那模型就越好。那这个函数值的最小点就是我们要找的地方,而如果这个函数是个三维立体的函数,我就希望找它的梯度(下降最快),一步步的找到我们所认为的最小值,
因为在求解过中,我们是看不到函数图的,甚至根本画不出,所以找到这个最小点其实也不是真正的最小点,但已经足够了

提升树

简单理解:
1.你先训练出一颗树A
2.然后你A,然后计算他们与实际值误差
3.然后用训练A的方法,将这些误差视为新的数据再训练一颗树B
4.设最终的提升树为F,那F=A+B,简单理解就用两个树训练
5.重复上的过程后,可能会得到F=A+B+C+D…
6.多少颗树是认为决定的

LightGBM

LightGBM 跟 XGBoost都是将GBDT思想放羊光大,为了不引入过多概念,咱就不说
XGBoost了
LightGBM 也是用上面那种GBDT这种思维去训练树的,从上面GBDT的介绍中,并没有提及这个树怎么建立的问题。所以说他只是一个思想,具体怎么实现还要看具体的模型
LightGBM的实现方式如下:

怎么选取特征分割点

直方图选取分割点

1.将每个特征的所有值,切割为一个个的桶(bin)
比如:重量: b1 [一斤以下] ,b2 [一斤到两斤],b3[ 大于两斤]
纹理: b4[清晰],b5[模糊]

2.每个桶中有个两个值,当前样本梯度和S,样本数N
3.分别以当前bin作为分割点,累加器左边的梯度和样本数,并与父节点的总梯度和总样本数想减,即可得到右边的梯度和样本数,带入公式计算增益,在遍历过程中获取最大的,以此时的特征和bin的特征值作为分裂点

样本梯度和

公式

loss计算的公式入图
在这里插入图片描述

样本梯度

简单理解,将样本带入梯度的偏导函数里得到值

直方图怎么做差获得有节点

在这里插入图片描述

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

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

相关文章

【超图】SuperMap iClient3D for WebGL/WebGPU ——地形影像

作者:taco 号外!号外!开新坑了!开新坑了!对于一个代码小白来讲,设置可能是刚接触开发的人(还没接触准备接触)的人来说。对于读代码或是在对产品的使用上会存在许许多多的疑惑。接下来…

ADC Buffer数据格式和readDCA1000.m

参考文献 mmwave_sensor_raw_data_capture_using_dca1000_v02Mmwave Radar Device ADC Raw Data CaptureAWR18xx,16xx,14xx,68xx Technical Reference ManualADC Buffer中数据格式有两种,分别是: Interleaved data format (supported only in the 14xx) 按照采样的点数存放,…

现控散落知识点梳理【自用/最新】

这里写目录标题 悬而未决之谜✅结合能控分解思考,非奇异线性变换会不会导致某变量的可控可观性发生变化?✅如图所示与时域结合时,传递函数是开环or闭环?✅对于一般状态,给出ABC,怎么判断每个变量的能控能观…

从账户取款和存款的操作

public class Account {private double balance;public Account(double balance){super();this.balancebalance;}public Account(){super();}public void withdraw(double money) throws NotFullBalanceException{//取款if(money<balance){balance - money;}else{throw new …

基于深度学习的图像去雾系统

1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 研究背景与意义&#xff1a; 随着计算机视觉和图像处理技术的不断发展&#xff0c;图像去雾成为了一个备受关注的研究领域。在自然环境中&#xff0c;由于大气中的颗粒物和水汽的…

(9)Linux Git的介绍以及缓冲区

&#x1f4ad; 前言 本章我们先对缓冲区的概念进行一个详细的探究&#xff0c;之后会带着大家一步步去编写一个简陋的 "进度条" 小程序。最后我们来介绍一下 Git&#xff0c;着重讲解一下 Git 三板斧&#xff0c;一般只要掌握三板斧就基本够用了。 缓冲区&#xff…

2024年完整湖北等保测评机构名单看这里!

等保测评机构是指经公安部认证的具有资质的测评机构&#xff0c;主要从事等级测评活动。一般过等保需要找正规具有资质的等保测评机构。那你知道2024年湖北等保测评机构有哪些&#xff1f;名单有吗&#xff1f; 2024年完整湖北等保测评机构名单看这里&#xff01; 1、湖北星…

通过外包团队迅腾文化灵活管理企业资讯内容输出,助力企业方对外信息的及时性与准确性

通过外包团队迅腾文化灵活管理企业资讯内容输出&#xff0c;助力企业方对外信息的及时性与准确性 随着信息时代的快速发展&#xff0c;企业信息的及时性和准确性对于企业的成功至关重要。外包团队迅腾文化以其灵活的管理方式&#xff0c;为企业提供了高效、准确的企业资讯内容…

【神器】wakatime代码时间追踪工具

文章目录 wakatime简介支持的IDE安装步骤API文档插件费用写在最后 wakatime简介 wakatime就是一个IDE插件&#xff0c;一个代码时间追踪工具。可自动获取码编码时长和度量指标&#xff0c;以产生很多的coding图形报表。这些指标图形可以为开发者统计coding信息&#xff0c;比如…

常用的安全渗透测试工具!(含安装、使用教程)

SQLMap 1.SQLMap详解 SQLMap是一个自动化的SQL注入工具&#xff0c;其主要功能是扫描、发现并利用给定URL的SQL注入漏洞&#xff0c;内置了很多绕过插件&#xff0c;支持的数据库是MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Microsoft Access、IBM DB2、SQLite、Fir…

科创金融的向善力量:浙商银行多措并举赋能科创企业,打造科技金融服务生态圈

近日&#xff0c;浙商银行科技金融服务发布会在杭州举行。 发布会以“智汇科创&#xff0c;善行未来”为主题&#xff0c;围绕科技金融服务“向善”新生态&#xff0c;浙商银行重磅推出科创企业全图景服务方案&#xff0c;正式发布科创积分贷&#xff0c;与浙江大学联合发布人…

Linux服务器修改系统时间

一、修改时区 1、查看系统当前时间 date 2、删除当前时间&#xff1a; #删除当前默认时区 rm -rf /etc/localtime 3、 将当前时区修改为上海时区 #修改默认时区为上海 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 二、修改系统时间 1、查看系统当前时间 d…