GBDT 实用向指南,特征工程以及调参 2021-05-02

Gradient Boosting Decision Trees 是把1999年的 Gradient Boosting Machine集成方法应用到回归树上,著名的实现有XGBoost 和 LightGBM,是处理结构化(表格)数据的首选算法之一。

特征工程

  1. 对特征可以自动筛选重要程度的树模型对特征冗余不敏感。
  2. 树模型不能像神经网络那样进行特征提取,需要手工进行特征生成,又因为第一点,可以放心生成所有可能相关的特征。
  3. 树模型不太适合独热编码,可以尝试标签编码,或者频率编码。

调参

筛选重要的参数,根据机器学习调参的基本原则进行调整。

  • 欠拟合:训练,测试误差都很高,需要增加模型复杂度,或者训练更长的时间。
  • 过拟合:训练误差仍在降低,但是测试误差开始上升。需要降低模型复杂度,减少训练时间或者采用正则化方法。
重要参数,红色控制训练时长,蓝色控制正则化,绿色控制模型复杂度。不同的实现,参数的名字可能不一样。

自动调参工具

有skopt, optuna, Hyperopt, 参考文章

实现

两个常用的实现的主要区别有:

  1. 决策树的生成: XGBoost实用贪婪逼近的方法,而LGBM使用了直方图。
  2. 优化目标:XGBoost用的泰勒级数的一阶展开,LGB

LGBM 独有参数

boosting type: gbdt是默认,还可以用基于梯度的单边采样(GOSS)或者采用了Dropout的DART。
enable_bundle: 默认为False, 是指lgb论文中提出的互斥特征捆绑算法Exclusive Feature Bundling。

XGBoost 独有参数

XGBoost可以选用gblinear 线性模型作为基学习器。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容