今日面试题分享:请问(决策树、Random Forest、Booting、Adaboot)GBDT和XGBoost的区别是什么?

2019 年 3 月 12 日 七月在线实验室


今日面试题分享
请问(决策树、Random Forest、Booting、Adaboot)GBDT和XGBoost的区别是什么?


参考答案:


解析:

集成学习的集成对象是学习器. Bagging和Boosting属于集成学习的两类方法. Bagging方法有放回地采样同数量样本训练每个学习器, 然后再一起集成(简单投票); Boosting方法使用全部样本(可调权重)依次训练每个学习器, 迭代集成(平滑加权).


决策树属于最常用的学习器, 其学习过程是从根建立树, 也就是如何决策叶子节点分裂. ID3/C4.5决策树用信息熵计算最优分裂, CART决策树用基尼指数计算最优分裂, xgboost决策树使用二阶泰勒展开系数计算最优分裂.


下面所提到的学习器都是决策树: 

Bagging方法:    

学习器间不存在强依赖关系, 学习器可并行训练生成, 集成方式一般为投票;    

Random Forest属于Bagging的代表, 放回抽样, 每个学习器随机选择部分特征去优化; 

Boosting方法:   

学习器之间存在强依赖关系、必须串行生成, 集成方式为加权和;    Adaboost属于Boosting, 采用指数损失函数替代原本分类任务的0/1损失函数;    

GBDT属于Boosting的优秀代表, 对函数残差近似值进行梯度下降, 用CART回归树做学习器, 集成为回归模型;    

xgboost属于Boosting的集大成者, 对函数残差近似值进行梯度下降, 迭代时利用了二阶梯度信息, 集成模型可分类也可回归. 由于它可在特征粒度上并行计算, 结构风险和工程实现都做了很多优化, 泛化, 性能和扩展性都比GBDT要好。


关于决策树,这里有篇《决策树算法》(链接:http://blog.csdn.net/v_july_v/article/details/7577684)。

而随机森林Random Forest是一个包含多个决策树的分类器。至于AdaBoost,则是英文"Adaptive Boosting"(自适应增强)的缩写,关于AdaBoost可以看下这篇文章《Adaboost 算法的原理与推导》。GBDT(Gradient Boosting Decision Tree),即梯度上升决策树算法,相当于融合决策树和梯度上升boosting算法。 

引用自:@AntZ


xgboost类似于gbdt的优化版,不论是精度还是效率上都有了提升。与gbdt相比,具体的优点有: 

1.损失函数是用泰勒展式二项逼近,而不是像gbdt里的就是一阶导数 2.对树的结构进行了正则化约束,防止模型过度复杂,降低了过拟合的可能性 

3.节点分裂的方式不同,gbdt是用的gini系数,xgboost是经过优化推导后的 

引用自:@Xijun LI


题目来源:七月在线官网(www.julyedu.com)——面试题库——面试大题——机器学习




今日学习推荐

Spark大数据实战班

开课时间:3月16日(本周六)

五位大厂架构师

只教工程实战和实际应用


咨询/报名/组团可添加微信客服

julyedukefu_02


扫描下方二维码

查看更多课程详情

长按识别二维码



助力“金三银四”

分享一套全体系人工智能学习资料

600G资料 限时限额0元领

小伙伴们可以屯起来,慢慢学习喔~


扫描下方海报二维码

 立即领取

往期推荐






【实战分享】电影推荐系统项目实战应用

万字长文概述NLP中的深度学习技术

34个最优秀好用的Python开源框架

神经网络P图新神器:摘墨镜戴美瞳都能搞定,加首饰换发型真假难分 | 代码开源

一文详解机器学习中最好用的提升方法:Boosting 与 AdaBoost


咨询,查看课程,请点击“阅读原文

给我【好看

你也越好看!

登录查看更多
11

相关内容

决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。 决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。 分类树(决策树)是一种十分常用的分类方法。他是一种监管学习,所谓监管学习就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类。这样的机器学习就被称之为监督学习。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
【清华大学】图随机神经网络,Graph Random Neural Networks
专知会员服务
154+阅读 · 2020年5月26日
专知会员服务
139+阅读 · 2020年5月19日
备战AI求职季 | 100道机器学习面试题(上)
七月在线实验室
9+阅读 · 2019年3月16日
今日面试题分享:为什么xgboost要用泰勒展开,优势在哪里?
深度学习面试100题(第41-45题)
七月在线实验室
15+阅读 · 2018年7月18日
RF、GBDT、XGBoost面试级整理
数据挖掘入门与实战
17+阅读 · 2018年3月21日
RF(随机森林)、GBDT、XGBoost面试级整理
数据挖掘入门与实战
7+阅读 · 2018年2月6日
算法|随机森林(Random Forest)
全球人工智能
3+阅读 · 2018年1月8日
机器学习(23)之GBDT详解
机器学习算法与Python学习
12+阅读 · 2017年10月25日
xgboost特征选择
数据挖掘入门与实战
39+阅读 · 2017年10月5日
机器学习(17)之集成学习原理总结
机器学习算法与Python学习
19+阅读 · 2017年9月16日
Few-shot Adaptive Faster R-CNN
Arxiv
3+阅读 · 2019年3月22日
Arxiv
26+阅读 · 2019年3月5日
Area Attention
Arxiv
5+阅读 · 2019年2月5日
Adaptive Neural Trees
Arxiv
4+阅读 · 2018年12月10日
W-net: Bridged U-net for 2D Medical Image Segmentation
Arxiv
19+阅读 · 2018年7月12日
Arxiv
8+阅读 · 2018年5月15日
VIP会员
相关资讯
备战AI求职季 | 100道机器学习面试题(上)
七月在线实验室
9+阅读 · 2019年3月16日
今日面试题分享:为什么xgboost要用泰勒展开,优势在哪里?
深度学习面试100题(第41-45题)
七月在线实验室
15+阅读 · 2018年7月18日
RF、GBDT、XGBoost面试级整理
数据挖掘入门与实战
17+阅读 · 2018年3月21日
RF(随机森林)、GBDT、XGBoost面试级整理
数据挖掘入门与实战
7+阅读 · 2018年2月6日
算法|随机森林(Random Forest)
全球人工智能
3+阅读 · 2018年1月8日
机器学习(23)之GBDT详解
机器学习算法与Python学习
12+阅读 · 2017年10月25日
xgboost特征选择
数据挖掘入门与实战
39+阅读 · 2017年10月5日
机器学习(17)之集成学习原理总结
机器学习算法与Python学习
19+阅读 · 2017年9月16日
相关论文
Few-shot Adaptive Faster R-CNN
Arxiv
3+阅读 · 2019年3月22日
Arxiv
26+阅读 · 2019年3月5日
Area Attention
Arxiv
5+阅读 · 2019年2月5日
Adaptive Neural Trees
Arxiv
4+阅读 · 2018年12月10日
W-net: Bridged U-net for 2D Medical Image Segmentation
Arxiv
19+阅读 · 2018年7月12日
Arxiv
8+阅读 · 2018年5月15日
Top
微信扫码咨询专知VIP会员