LightGBM

XGboost缺点

  • 每轮迭代时,都需要遍历整个训练数据多次。如果把整个训练数据装进内存则会限制训练数据的大小;如果不装进内存,反复地读写训练数据又会消耗非常大的时间
  • 预排序方法需要保存特征值,及特征排序后的索引结果,占用空间
  • level-wise,在训练的时候哪怕新增的分裂点对loss增益没有提升也会先达到预定的层数

LightGBM对Xgboost的优化

  • 将连续的浮点特征离散成k个离散值,具体过程是首先确定对于每一个特征需要多少的桶bin,然后均分,将属于该桶的样本数据更新为bin的值,最后用直方图表示。在进行特征选择时,只需要根据直方图的离散值,遍历寻找最优的分割点
    • 优点:时间开销由O(features)降低到O(bins)
    • 缺点:很多数据精度被丢失,相当于用了正则
  • 利用leaf-wise代替level-wise
    • 每次从当前所有叶子中找到分裂增益最大(一般也是数据量最大)的一个叶子,然后分裂,如此循环
  • 直方图做差加速

LightGBM亮点

  • 单边梯度采样 Gradient-based One-Side Sampling (GOSS):排除大部分小梯度的样本,仅用剩下的样本计算损失增益
  • 互斥稀疏特征绑定Exclusive Feature Bundling (EFB):从减少特征角度,把尽可能互斥的特征进行合并,比如特征A[0,10],特征B[0,20],可以把B+10后与A合并,得到新特征A+B[0,30]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值