LightGBM原理简介
-
传统的boosting算法(如GBDT和XGBoost)已经有相当好的效率,但是在如今的大样本和高维度的环境下,传统的boosting似乎在效率和可扩展性上不能满足现在的需求了,主要的原因就是传统的boosting算法需要对每一个特征都要扫描所有的样本点来选择最好的切分点,这是非常的耗时。为了解决这种在大样本高纬度数据的环境下耗时的问题,Lightgbm使用了如下两种解决办法:一是GOSS(Gradient-based One-Side Sampling, 基于梯度的单边采样),不是使用所用的样本点来计算梯度,而是对样本进行采样来计算梯度;二是EFB(Exclusive Feature Bundling, 互斥特征捆绑) ,这里不是使用所有的特征来进行扫描获得最佳的切分点,而是将某些特征进行捆绑在一起来降低特征的维度,是寻找最佳切分点的消耗减少。
-
lightGBM通过left-wise策略生长树。它将选取最大的delta-loss的叶子节点来生长,当生长相同的leaf,left-wise算法可以比level-wise算法减少更多的损失。当delta较小时,left-wise算法可能会造成过拟合。所以lightGBM可以利用额外的参数max_depth来限制树的深度从而防止过拟合(树的生长仍然通过left-wise策略)
F1分数:
./results/lgb.csv
训练结束,耗时:44.64217589658955min