专栏首页数据挖掘与AI算法集成学习经典算法之XGBoost

集成学习经典算法之XGBoost

在算法圈,相信大家对XGBoost的大名早有耳闻,在CTR广告点击预估中更是炙手可热的大神器,接下来我就给大家简单介绍下,XGBoost到底是何方神圣?

1. 关于XGBoost 

在正式介绍XGBoost之前,首先说下GBDT,它是一种基于boosting增强策略的加法模型,训练的时候采用前向贪心算法进行学习,每次迭代都学习一棵CART树来拟合之前 t-1 棵树的预测结果与训练样本真实值之间的残差。XGBoost是在GBDT基础上进行了一系列优化,比如损失函数采用了二阶泰勒展式、目标函数加入正则项、支持并行和缺失值自动处理等,但二者在核心思想上没有大的变化。

2. XGBoost与GBDT的区别

相同点:生成树的核心思想及方法相同。

不同点:

基分类器:XGBoost的基分类器不仅支持CART决策树,还支持线性分类器,可以解决分类和回归问题。

损失函数:XGBoost对损失函数采用了二阶泰勒展式,GBDT只用了一阶导数信息,并且XGBoost还支持自定义损失函数,但要求损失函数一阶、二阶可导。

正则化:XGBoost的目标函数加了正则项, 相当于预剪枝,这样学习出来的模型更加不容易过拟合。

随机选特征:与随机森林类似,XGBoost支持特征随机选取,防止过拟合。

缺失值处理:对于每棵树中的每个非叶子结点,XGBoost可以自动学习出它的默认分裂方向。如果某个样本该特征值缺失,则会将其划入默认分支。

并行处理:虽然在生成新树的过程中是串行关系,但在特征维度可以并行处理。即在进行特征分裂时可通过多线程并行处理,极大提升训练速度。

3. XGBoost与随机森林的区别

相同点:都是由多棵树组成,最终的结果都是由多棵树一起决定。

不同点:

集成方法:随机森林属于bagging方法,而XGBoost属于boosting方法;

偏差-方差权衡:随机森林通过不断随机取样本和特征来降低模型的方差,而XGBoost通过不断生成新树来拟合残差降低模型整体的偏差;

训练样本:随机森林每次迭代的样本是从全部训练集中有放回抽样得到的,而XGBoost则每次使用全部样本进行训练;

并行性:随机森林每棵树之间可以并行生成,而XGBoost只能按顺序生成;

最终结果:随机森林最终结果是多棵树进行投票表决(回归问题是取平均),而XGBoost是通过加权融合;

数据敏感性:随机森林对异常值不敏感,而XGBoost对异常值比较敏感;

泛化能力:随机森林不易过拟合,而XGBoost容易过拟合。

好了,以上就是XGBoost的简单介绍,相信大家对XGBoost已经有了一个基本的了解。最后我们还是通过slearn中自带的癌症预测数据集来看看XGBoost的威力到底如何~

可以看到,AUC为0.98!!所以说XGBoost的牛皮不是吹的吧,哈哈?下节课给大家讲解模型训练中常遇到的两个问题——过拟合与欠拟合,敬请期待!

本文分享自微信公众号 - 数据挖掘与AI算法(sjwjyaisf1688),作者:小小挖掘机666

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-11-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 项目实战一:利用Python实现Kaggle经典案例之波士顿房价预测

    欢迎来到王者荣耀(自带音效?)啊不,是小白入门大数据分析之项目实战第一篇?。本文主要介绍如何利用Python实现Kaggle经典比赛项目,波士顿房价预测问题(至...

    用户7569543
  • 随机森林算法简单讲解

    在机器学习中通常分为有监督学习、无监督学习,半监督学习和强化学习四大类。而随机森林是一种典型的有监督学习算法,它是在决策树基础上得到的一种集成学习(baggin...

    用户7569543
  • Kaggle竞赛必杀利器之融合模型

    前面几次课分别给大家介绍了逻辑回归、决策树、随机森林和SVM几种常用的分类模型,不知道大家还有没有印象?本节课将给大家介绍Kaggle竞赛大杀器--融合模型!

    用户7569543
  • 结构化数据上的机器学习大杀器XGBoost

    XGBoost是一个机器学习算法工具,它的原理本身就并不难理解,而且你并不需要彻底搞懂背后的原理就能把它用得呼呼生风。 它的威力有多强? 自从2014年9月份在...

    AI科技大本营
  • XGBoost资料汇总,以及它背后的故事

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

    double
  • 集成模型Xgboost!机器学习最热研究方向入门,附学习路线图

    导读:本文介绍了集成学习中比较具有代表性的方法,如Boosting、Bagging等。而XGBoost是集成学习中的佼佼者,目前,一些主流的互联网公司如腾讯、阿...

    Datawhale
  • 周末漫谈|XGBoost与深度学习到底孰优孰劣?都说XGBoost好用,为什么名气总不如深度学习?

    来源|Quora 整理|AI100 AlphaGo大战柯洁、李世石后,所有人都能谈上几句深度学习。人工智能在围棋上的这场突破,最终还要归功于机器学习三巨头三十年...

    AI科技大本营
  • 推荐收藏 | 10道XGBoost面试题送给你

    XGBoost的威名想必大家都有所耳闻,它不仅是数据科学竞赛神器,在工业界中也被广泛地使用。本文给大家分享珍藏了多年的XGBoost高频面试题,希望能够加深大家...

    Sam Gor
  • 陈天奇做的XGBoost为什么能横扫机器学习竞赛平台?

    在涉及非结构化数据(图像、文本等)的预测问题中,人工神经网络显著优于所有其他算法或框架。但当涉及到中小型结构/表格数据时,基于决策树的算法现在被认为是最佳方法。...

    新智元
  • 30分钟学会LightGBM

    LightGBM可以看成是XGBoost的升级加强版本,2017年经微软推出后,便成为各种数据竞赛中刷分夺冠的神兵利器。

    lyhue1991

扫码关注云+社区

领取腾讯云代金券