机器学习系列-Bagging与随机森林

Bagging

集成学习算法有两个大类:一个是Boosting,代表算法是AdaBoost;另一个是Bagging,本文介绍的随机森林是它的一个变种。

Bagging也叫自举汇聚法(bootstrap aggregating),它在原始数据集上通过有放回抽样重新选出 T 个包含m条数据的新数据集来训练分类器。也就是说这些新数据集是允许重复的。使用训练出来的分类器集合来对新样本进行分类,然后用多数投票或者对输出求均值的方法统计所有分类器的分类结果,结果最高的类别即为最终标签。

随机森林

随机森林是Bagging的一个变体,它在以决策树为基学习器构建Bagging集成的基础上,在决策树的训练中引入随机属性选择。

传统的决策树在选择划分属性时在当前结点的属性集合上选择一个最优划分属性(假设有 d 个属性),而在随机森林中,对决策树的每个节点,首先从该结点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性进行划分。这里的参数 k 控制着随机性程度:如果k=d,那么,基决策树的构建与传统决策树相同;如果 k=1 ,则是随机选择一个属性用于划分;一般情况下推荐 k=log2d

随机森林的优缺点

随机森林的优点

  1. 在当前的很多数据集上,相对其他算法有着很大的优势,表现良好。
  2. 它能够处理很高维度的数据,并且不用做特征选择。
  3. 在训练完后,它能够给出哪些feature比较重要。
  4. 在创建随机森林的时候,对generlization error使用的是无偏估计,模型泛化能力强。
  5. 训练速度快,容易做成并行化方法。
  6. 在训练过程中,能够检测到feature间的互相影响。
  7. 实现比较简单。
  8. 对于不平衡的数据集来说,它可以平衡误差。
  9. 如果有很大一部分的特征遗失,仍可以维持准确度。

随机森林的缺点

  1. 随机森林已经被证明在某些噪音较大的分类或回归问题上会过拟合。
  2. 对于有不同取值的属性的数据,取值划分较多的属性会对随机森林产生更大的影响,所以随机森林在这种数据上产出的属性权值是不可信的。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值