首页 > 其他 > 详细

随机森林和adaboost

时间:2020-03-16 02:01:44      阅读:90      评论:0      收藏:0      [点我收藏+]

随机森林

bagging思想

技术分享图片

从样本集中用Bootstrap采样选出n个样本;

从所有属性中随机选择K个属性,选择出最佳分割属性作为节点创建决策树;

重复以上两步m次,即建立m棵决策树;

这m个决策树形成随机森林,通过投票表决结果决定数据属于那一类

 

优点

  • 具有极高的准确率
  • 随机性的引入,使得随机森林不容易过拟合
  • 随机性的引入,使得随机森林有很好的抗噪声能力
  • 能处理很高维度的数据,并且不用做特征选择
  • 既能处理离散型数据,也能处理连续型数据,数据集无需规范化
  • 训练速度快,可以得到变量重要性排序
  • 容易实现并行化

缺点

  • 当随机森林中的决策树个数很多时,训练时需要的空间和时间会较大
  • 随机森林模型还有许多不好解释的地方,有点算个黑盒模型
  • 相比于其他算法,其输出预测可能较慢。

Adaboost

Adaptive Boosting是一种迭代算法。

每轮迭代中会在训练集上产生一个新的学 习器,然后使用该学习器对所有样本进行预测,以评估每个样本的重要性 (Informative)。

换句话来讲就是,算法会为每个样本赋予一个权重,每次用训练 好的学习器标注/预测各个样本,如果某个样本点被预测的越正确,则将其权重 降低;

否则提高样本的权重。权重越高的样本在下一个迭代训练中所占的比重就 越大,也就是说越难区分的样本在训练过程中会变得越重要;

整个迭代过程直到错误率足够小或者达到一定的迭代次数为止。

boosting思想,增加被错分样本的权重

技术分享图片

 

 

 AdaBoost算法优点

1、很好的利用了弱分类器进行级联。

2、可以将不同的分类算法作为弱分类器。

3、AdaBoost具有很高的精度。

4、相对于bagging算法和Random Forest算法,AdaBoost充分考虑的每个分类器的权重。

 

Adaboost算法缺点

1、AdaBoost迭代次数也就是弱分类器数目不太好设定,可以使用交叉验证来进行确定。

2、数据不平衡导致分类精度下降。

3、训练比较耗时,每次重新选择当前分类器最好切分点。

 

相同点:

 

二者都是bootsrap自助法选取样本。
 
二者都是要训练很多棵决策树。
 
不同点:
 
adaboost后面树的训练,其在变量抽样选取的时候,对于上一棵树分错的样本,抽中的概率会加大。
 
随机森林在训练每一棵树的时候,随机挑选了部分变量作为拆分变量,而不是所有的变量都去
 
在预测新数据时,adaboost中所有的树加权投票来决定因变量的预测值.

 

随机森林和adaboost

原文:https://www.cnblogs.com/zxqqq/p/12501192.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!