前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >XGBoost资料汇总,以及它背后的故事

XGBoost资料汇总,以及它背后的故事

作者头像
double
发布2018-07-31 17:50:54
1.2K0
发布2018-07-31 17:50:54
举报
文章被收录于专栏:算法channel算法channel

1 引言

近来,群中有几个小伙伴想要公号推送XGBoost的相关内容,去年我在学习XGBoost时写过几篇笔记(恕我当时理解的浅显):

1 XGBoost思想

2 XGBoost模型构造

3 XGBoost 安装及实战应用

2 XGBoost被应用广泛的原因

XGBoost能如此流行与Kaggle比赛密不可分,获奖的选手大都喜欢用它来预测分类,并且取得非常不错的效果,这直接推动了XGBoost的迅速传播。

其实,更重要的背后原因是XGBoost是一个可以并行算法,这点好处巨大,这意味着它能并行处理大规模数据集上,高效省时地获取到模型结果,所以它在工业界也被广泛部署在各大公司的大数据平台上。

3 XGBoost背后的故事

XGBoost在机器学习领域如此流行和强大,大家都或许都已经了解了,它是华盛顿大学的博士陈天奇发明的。我一直很好奇,陈天奇是怎么想到的然后创造了这么好的一个分类器呢?

有一篇对陈天奇的采访,他自己说当时在用各种现有的分类器,包括梯度提升树框架效率太低了,因为SVDFeature里的模型都是单线程,于是他决定自己写一个基于决策树的提升算法。

在这之前,他在快从交大毕业时做的一个项目里接触到了 OpenMP,里面使用多线程写的,于是他就想能不能利用OpenMP写一个多线程的 GBDT(Gradient Boosting Decision Trees)帮助我做研究,并把这个工具起名 extreme gradient boosting.

陈天奇比较喜欢把一件事情推到极限,在当初开发 SVDFeature 时他利用 2G 内存训练一个机器学习模型一样。在14年他刚到华盛顿大学,就开始利用业余实践他的想法,并在寒假做XGBoost的第一版。做了一些对比后,发现效率挺高的,然后就发布了出来了。

注:陈天奇虽然在读博士,可能偏重学术,但同时他又特别注重算法的工业应用价值,编程能力通过他做的项目能看出应该非常强,可谓算法和编码能力俱佳。近来,他又发布了TVM栈,它是一个端到端的深度学习编译栈。

https://tvm.ai/

4 XGBoost资料

XGBoost因为适合在大规模数据集上高效地获取到训练模型,因此,依然被工业界广泛应用。为了更原生地学习XGBoost,无疑最好的资料出自作者,下面给出一些系统学习XGBoost的资料:

1) 陈天奇的官方网站:

https://homes.cs.washington.edu/~tqchen

2) XGBoost的Github地址, 至今仍有人在维护更新:

https://github.com/dmlc/xgboost

3) XGBoost详细使用的Github地址:

https://github.com/dmlc/xgboost/blob/master/demo/README.md

里面涵盖了精彩的XGBoost介绍,Demo, Kaggle实战案列

4) XGBoost的详细安装过程,算法参数介绍:http://xgboost.readthedocs.io/en/latest/

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-07-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员郭震zhenguo 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档