我正在尝试决定在实践中将以下哪一项用于回归任务:xgboost,lightgbm或catboost(python 3)。
那么,它们背后的总体思路是什么?为什么我应该选择一个而不是另一个?
我对精度得分(如0.781与0.782)的微小差异不感兴趣。结果应该成立,我的工具应该健壮,易于使用。主力军。
答案 0 :(得分:0)
您无法确定先验哪种Tree算法(或任何算法)自动最佳。这是因为https://en.wikipedia.org/wiki/No_free_lunch_theorem
最好全力以赴。您还应该尝试使用随机森林(RF)作为另一种方法。
我会说 http://CatBoost.ai (CB)确实具有其他优势:如果您具有类别变量,CB最有可能击败其他优势因为它可以直接处理分类变量,而无需进行一键编码。
您可以尝试http://H2O.ai的网格搜索,该搜索支持几种带有参数超调的算法(RF,XGBoost,GBM,线性回归),以查看哪种算法最有效。您可以将其运行一整夜。 (C2不包括在H2O的网格搜索中)
答案 1 :(得分:-1)
据我了解,这些方法的实现方式不同,否则它们已经实现了GBM方法。
因此,您应该尝试进行一些超级参数调整。 另外,阅读本文是个好主意: catboost-vs-light-gbm-vs-xgboost