ML:LightGBM算法的原理讲解之六大技巧(速度和内存使用的优化、稀疏优化、精度优化、通信优化、分布式学习优化、GPU加速)、三大策略(节点分裂策略思路/构建直方图的思路/处理类别型特征的思路)

ML之LightGBM:LightGBM算法的原理讲解之六大技巧(速度和内存使用的优化、稀疏优化、精度优化、通信优化、分布式学习优化、GPU加速)、三大策略(节点分裂策略思路/构建直方图的思路/处理类别型特征的思路)

目录

相关文章

Py之lightgbm:lightgbm的简介、安装、使用方法之详细攻略

一、LightGBM算法的原理讲解

二、LightGBM算法的原理讲解之六大技巧—速度和内存使用的优化、稀疏优化、精度优化、通信优化、分布式学习优化、GPU加速

1、速度和内存使用的优化:采用直方图替代预排序——四大优点(减少分割增益的计算量/直方图加速(相减)/减少并行学习的通信代价)

2、稀疏优化:稀疏特征仅需O(2 * #non_zero_data)建立直方图

3、精度优化:leaf-wise代替level-wise、类别特征值的最优分割(根据训练目标相关性重排)

(1)、Leaf-wise (Best-first) 的决策树生长策略:叶子结点优先(leaf-wise,更低损失+非对称树)生长、代替逐层生长(level-wise,对称树)

(2)、类别特征值的最优分割:OH编码不适合高基数、根据训练目标相关性重排进而寻找最优分割点

4、通信优化:集体通信替代点对点通信

5、分布式学习优化→减少通讯开销:FP特征并行、DP数据并行、VP投票并行

5.1、FP特征并行:抛弃垂直划分数据+各线程持有全部→无需为切分结果通信

5.2、DP数据并行:采用Reduce Scatter(减少散射)整合+局部的最佳划分同步到全局中、单叶子的直方图通信+减法获取邻节点的直方图

5.3、VP投票并行:两阶段投票→降至DP通信成本至常数

6、GPU加速处理大规模数据

三、LightGBM算法策略技巧的解答疑惑

1、LightGBM算法中节点分裂策略思路讲解

1.1、节点分裂策略的概述

1.2、举例理解节点分裂策略

(1)、首先,LightGBM 将训练集按照 X1 进行排序,并将其划分为多个直方图

(2)、对于每一个直方图,LightGBM 计算基于梯度的直方图梯度

1.3、举例理解节点分裂策略

第一步,初始化=计算样本梯度、加入到根节点

第二步,迭代训练=计算负梯度

a. 根据当前模型的预测值和实际值计算样本的负梯度

b. 根据当前样本的特征和梯度构建一棵决策树,使用节点分裂策略选择最优的分裂特征和分裂点

c. 计算每个子节点的负梯度和直方图,并使用直方图的信息计算分裂增益

d. 使用所有叶子节点的输出值作为模型的预测结果,对训练数据进行预测。

1.4、LightGBM算法构建直方图的思路

2、Lightgbm算法处理类别型特征的思路讲解


相关文章

Py之lightgbm:lightgbm的简介、安装、使用方法之详细攻略

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个处女座的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值