随机森林 | GBDT | XGBOOST | LightGBM 比较

目录

各种模型+正则的名称

随机森林 vs GBDT

XGBOOST vs GBDT

LightGBM vs GBDT

LightGBM vs XGBoost

RF、GBDT、XGBoost

LightGBM 

关于直方图算法的解释

特性

类别特征支持

速度和内存使用的优化

稀疏优化

准确率的优化

Leaf-wise (Best-first) 的决策树生长策略


 

很好的GBDT+XGBoost+LightGBM参考资料:http://free.tianle.me/image/20180109/wepon_gbdt.pdf


各种模型+正则的名称

https://homes.cs.washington.edu/~tqchen/pdf/BoostedTree.pdf

随机森林 vs GBDT

Q:随机森林和GBDT有什么异同?

A: 两者的相同点包括

  • 两者都是基于决策树
  • 两者都能够处理缺失值
  • 两者都能给出特征重要性
  • 两者都是bootstrap的思想

两者的不同点包括

  • 随机森林采用bagging的思想,有放回地均匀抽取训练样本;GBDT采用boosting的思想,根据错误率来采样
  • GBDT的精度优于随机森林
  • 随机森林可以由分类树或者回归树组成;GBDT由回归树组成
  • 随机森林可以使用并行计算;GBDT使用串行计算
  • 随机森林对所有结果取多数投票或平均;GBDT将每棵树的输出相加
  • 随机森林对异常值不敏感;GBDT对异常值非常敏感
  • 随机森林方差小;GBDT偏差小
  • 随机森林不需要限制树的深度;GBDT需要限制树的深度

XGBOOST vs GBDT

Q: xgboost是什么?xgboost和传统GBDT有什么不同?

A: xgboost专门用来训练梯度提升树的模型。xgboost在传统GBDT的基础上进行了一系列改进。xgboost和传统GBDT的区别包括一下:

  • 传统的GBDT以CART回归树作为基学习器(base learner),xgboost还支持线性分类器
  • 传统的GBDT在优化时只用到了一阶梯度,xgboost用到了二阶梯度
  • xgboost在损失函数中加入了正则项,即加入叶子个数和叶子输出作为惩罚项
  • xgboost加入了缩减(shrinkage),即每次更新fm之前,把叶子结点的输出乘以一个系数η
  • xgboost支持列抽样:类似随机森林,每次分裂一个树结点时只考虑一部分特征
  • xgboost在每棵树的每个结点需要选择最优特征时,使用多线程并行地计算各个特征的损失,从而减少了运算时间(为什么能并行计算:因为事先对每个特征进行了预排序)

预排序:

LightGBM vs GBDT

https://zhuanlan.zhihu.com/p/25308051

https://blog.csdn.net/maqunfi/article/details/82219999

1.LightGBM是微软2017年新提出的,比Xgboost更强大、速度更快的模型,性能上有很大的提升,与传统算法相比具有的优点:        *更快的训练效率        

       *低内存使用        

       *更高的准确率        

       *支持并行化学习        

       *可处理大规模数据          

       *原生支持类别特征,不需要对类别特征再进行0-1编码这类的

2.LightGBM一大的特点是在传统的GBDT基础上引入了两个 新技术和一个改进

(1)Gradient-based One-Side Sampling(GOSS)技术是去掉了很大一部分梯度很小的数据,只使用剩下的去估计信息增益,避免低梯度长尾部分的影响。由于梯度大的数据在计算信息增益的时候更重要,所以GOSS在小很多的数据上仍然可以取得相当

  • 5
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值