用于梯度提升树的库

16 投票
5 回答
10011 浏览
提问于 2025-04-17 11:13

你知道有没有好的库可以用来做梯度提升树的机器学习吗?

最好是:

  • 有一些不错的算法,比如AdaBoost、TreeBoost、AnyBoost、LogitBoost等等
  • 可以配置弱分类器
  • 能够同时进行分类和预测(回归)
  • 支持各种信号类型:数字、类别或者自由文本
  • 支持C/C++或Python
  • 是开源的

到目前为止,我找到的 http://www.multiboost.org/home 看起来不错。但我想知道还有没有其他的库呢?

5 个回答

2

我推荐使用xgboost(在提问时还没有这个东西),它是一个开源的R/Python包。

现在,它是最快的梯度提升树方法之一,可以用来做回归和分类,还支持稀疏矩阵……

3

这些不一定完全符合你的所有需求,但还有以下几个选择:

  • Treenet,这是对Jerome Friedman最初实现的商业化和扩展。虽然不是开源的,但我们发现它的效果还不错。
  • R gbm包,专门用于梯度提升树。
14

如果你在找Python版本的东西,最新的scikit-learn发布了一个新功能,里面有用于分类和回归的梯度提升回归树(文档)。

这个功能和R语言的gbm包很相似——gbm在进行最小二乘回归时速度更快,而scikit-learn的实现则在测试时更快,尤其是当你的特征数量超过1000个时。

撰写回答