做比赛用了lightgbm,有很多需要注意的地方。在此把重点记下当做笔记(纯写算法介绍太耗时了)
直接上重点:
【lightgbm学习(持续更新)】1.lightgbm对类别特征的处理是对类别特征进行分成两个区,这样k个特征值就有2^k-1种分区,而不是进行的Onehot,之前看一篇博客好像说Cateboost是进行onehot,但是对值少的类别划为一个类别,就相当于模型帮人做了特征工程,具体没仔细去看。
2.lightgbm用到goss是效果很好的,即使用leaf_wise建树。只要你能控制住过拟合,一般用树深度,叶子个数等,但有一点要注意的是sklearn 的goss不能支持行采样,但是支持列采样。
3.XGBoost和Lightgbm
a.一个是level_wise,一个是leaf_wise
b.分裂的时候可以采用父节点减一个子节点的不纯度(应该是xgb里的G^2/H+λ,需待考证)
c.并行方面有很大不同。
推荐阅读
- paddle|动手从头实现LSTM
- 人工智能|干货!人体姿态估计与运动预测
- 推荐系统论文进阶|CTR预估 论文精读(十一)--Deep Interest Evolution Network(DIEN)
- Python专栏|数据分析的常规流程
- 读书笔记|《白话大数据和机器学习》学习笔记1
- Pytorch学习|sklearn-SVM 模型保存、交叉验证与网格搜索
- Python机器学习基础与进阶|Python机器学习--集成学习算法--XGBoost算法
- 深度学习|深度学习笔记总结
- 机器学习|机器学习Sklearn学习总结
- 机器学习|线性回归原理与python实现