RF和GBDT的区别

Posted 懵懂的菜鸟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RF和GBDT的区别相关的知识,希望对你有一定的参考价值。

Random Forest

?采用bagging思想,即利用bootstrap抽样,得到若干个数据集,每个数据集都训练一颗树。

构建决策树时,每次分类节点时,并不是考虑全部特征,而是从特征候选集中选取若干个特征用于计算。弱特征共有p个,一般选取m=sqrt(p)个特征。当可选特征数目很大时,选取一个较小的m值,有助于决策树的构建。

?当树的数量足够多时,RF不会产生过拟合,提高树的数量能够使得错误率降低。

GBDT

采用Boosting思想(注意是Boosting,不是Boostrap)?

不采用Boostrap抽样的方法(RF采用了),每次迭代过程都会使用全部数据集(会有一些变化,即采用的是上一轮训练后得到的预测结果与真实结果之间的残差(残差是由损失函数计算得到的))

?GBDT的每棵树是按顺序生成的,每棵树生成时都需要利用之前一棵树留下的信息(RF的树是并行生成的)。

?GBDT中树的数目过多会引起过拟合(RF不会)。

?构架树时,深度为1时通常效果很好(深度为1的决策树称为决策桩decision stumps)。

?下图是两种算法的对比

技术分享

以上是关于RF和GBDT的区别的主要内容,如果未能解决你的问题,请参考以下文章

随机森林RF与GBDT之间的区别

数据挖掘 GBDT面试题:其中基分类器CART回归树,节点的分裂标准是什么?与RF的区别?与XGB的区别?

Adaboost和GBDT的区别以及xgboost和GBDT的区别

GBDT和随机森林的区别

机器学习GBDT 和 决策森林 的区别?(面试回答)

GBDT 和 AdaBoost区别?