XGBoost
XGBoost[2]是一个开源软件库,为C++、Java、Python[3]、R、[4]和Julia[5]提供了一个梯度提升框架,适用于Linux、Windows[6]、以及macOS[7]。根据项目的描述,它的目的在于提供一个"可扩展、可移植和分布式梯度提升(GBM、GBRT、GBDT)库"。XGBoost除了可以在单机上运行,也支持运行在分布式框架如Apache Hadoop、Apache Spark和Apache Flink上。近几年,由于该算法受到许多在机器学习竞赛中获奖团队的青睐,因而受到了广泛的欢迎和关注[8]。
![]() | |
開發者 | The XGBoost Contributors |
---|---|
首次发布 | 2014年3月27日 |
当前版本 |
|
源代码库 | |
编程语言 | C++ |
操作系统 | Linux, macOS, Windows |
类型 | 机器学习 |
许可协议 | Apache License 2.0 |
网站 | xgboost |
历史
XGBoost最初是一个研究项目,由当时在Distributed (Deep) Machine Learning Community (DMLC) 组里的陈天奇负责[9]。它最初作为一个可以由libsvm配置文件进行配置的终端应用程序。在Higgs机器学习挑战中取得胜利后,它开始在机器学习竞赛圈子中被广为人知。不久之后,相应的Python和R的软件包被开发了出来。XGBoost现在也已经为Julia、Scala、Java和其他语言提供了软件包实现。这使得更多的开发者了解了XGBoost,并且让其在Kaggle社区备受欢迎,被广泛用于大量的竞赛[8]。
很快地,XGBoost就与其他多个软件包一起使用,使其更易于在各自的社区中使用。它现在已经与Python用户的scikit-learn以及与R的Caret软件包集成在一起。它还可以使用抽象的Rabit[10]及XGBoost4J集成到诸如Apache Spark、Apache Hadoop和Apache Flink等数据流框架中[11]。XGBoost也可用于FPGAs的OpenCL[12]。陈天奇和Carlos Guestrin发表了一种高效、可扩展的XGBoost实现[13]。
参考文献
- . 2023年12月19日 [2023年12月19日].
- . [2019-01-09]. (原始内容存档于2021-04-01).
- . [2016-08-01]. (原始内容存档于2017-08-23).
- . [2016-08-01]. (原始内容存档于2018-10-26).
- . [2016-08-01]. (原始内容存档于2016-08-18).
- . [2016-08-01]. (原始内容存档于2018-05-08).
- . [2016-08-01]. (原始内容存档于2018-05-08).
- . [2016-08-01].
- . [2016-08-01]. (原始内容存档于2016-08-07).
- . [2016-08-01]. (原始内容存档于2018-06-11).
- . [2016-08-01]. (原始内容存档于2018-05-08).
- . [2019-08-01]. (原始内容存档于2020-09-13).
- Chen, Tianqi; Guestrin, Carlos. Krishnapuram, Balaji; Shah, Mohak; Smola, Alexander J.; Aggarwal, Charu C.; Shen, Dou; Rastogi, Rajeev , 编. . ACM: 785–794. 2016. arXiv:1603.02754
. doi:10.1145/2939672.2939785.
|contribution=
被忽略 (帮助) - . [2016-08-01]. (原始内容存档于2017-07-31).
- . [2016-08-01]. (原始内容存档于2018-05-08).