-1

我正在尝试决定,我将在实践中将以下哪一项用于回归任务:xgboost、lightgbm 或 catboost(python 3)。

那么,它们背后的总体思路是什么?为什么我应该选择一个,而不是另一个?

我对 0.781 与 0.782 之类的准确度分数的微小差异不感兴趣。结果应该是站得住脚的,我的工具应该是健壮的,使用方便。主力军。

4

2 回答 2

0

您无法先验地确定哪种树算法(或任何算法)将自动成为最佳算法。这是因为https://en.wikipedia.org/wiki/No_free_lunch_theorem

最好都尝试一下。您还应该将随机森林 (RF) 作为另一个尝试。

我会说http://CatBoost.ai (CB) 确实比其他人有一个优势:如果你有Categorical Variables,CB 很可能会击败其他人,因为它可以直接处理分类变量而无需 One-Hot-Encoding。

您可以尝试http://H2O.ai的网格搜索,它支持多种算法(RF、XGBoost、GBM、线性回归),并通过参数超调来查看哪一种效果最好。您可以在一夜之间运行它。(CB 不包含在 H2O 的网格搜索中)

于 2020-08-29T21:19:30.000 回答
0

据我了解,这些方法只是它们的实现方式不同,否则它们已经实现了 GBM 方法。

所以你应该尝试做一些超参数调整。此外,阅读本文是个好主意: catboost-vs-light-gbm-vs-xgboost

于 2019-11-06T14:36:45.067 回答