名字随机抽取器_随机森林 Random Forest

Random Forest

一.定义

RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。具体来说,传统决策树在选择划分属性时是在当前结点的属性集合中选择一个最优属性;而在RF中,对基学习器的每个结点,先从该结点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性用于划分。这里的参数k控制了随机性的引入程度。

随机森林实际上是一种特殊的bagging方法,它将决策树用作bagging中的模型。首先,用bootstrap方法生成m个训练集,然后,对于每个训练集,构造一颗决策树,在节点找特征进行分裂的时候,并不是对所有特征找到能使得指标(如信息增益)最大的,而是在特征中随机抽取一部分特征,在抽到的特征中间找到最优解,应用于节点,进行分裂。随机森林的方法由于有了bagging,也就是集成的思想在,实际上相当于对于样本和特征都进行了采样(如果把训练数据看成矩阵,就像实际中常见的那样,那么就是一个行和列都进行采样的过程),所以可以避免过拟合。

prediction阶段的方法就是bagging的策略,分类投票,回归均值。

二.伪代码

随机森林是一种组合方式,由许多随机决策树组成,树与树之间无关联,是Bagging的一个扩展,随机森林在决策树为基分类器进行集成的基础上,在决策树的训练过程中引入随机属性选择

伪代码

15371d63cc5bb83e7a6f9a7c41f9990d.png

三. 优缺点

优点:

可以处理高维数据,不同进行特征选择(特征子集是随机选择)

模型的泛化能力较强

训练模型时速度快,成并行化方式,即树之间相互独立

模型可以处理不平衡数据,平衡误差

最终训练结果,可以对特种额排序,选择比较重要的特征

随机森林有袋外数据(OOB),因此不需要单独划分交叉验证集

对缺失值、异常值不敏感

模型训练结果准确度高

相对Bagging能够收敛于更小的泛化误差

随机森林的缺点:

当数据噪声比较大时,会产生过拟合现象

对有不同取值的属性的数据,取值划分较多的属性会对随机森林产生更大的影响,所以随机森林在这种数据上产出的属性权值是不可信的。

四. vs GBDT

AdaBoost改变了训练数据的权值,即样本的概率分布,减少上一轮被正确分类的样本权值,提高被错误分类的样本权值,而随机森林在训练每棵树的时候,随机挑选部分训练集进行训练。在对新数据进行预测时,AdaBoost中所有树加权投票进行预测,每棵树的权重和错误率有关,而随机森林对所有树的结果按照少数服从多数的原则进行预测。

GBDT和随机森林的相同点:

1)都是由多棵树组成;

2)最终的结果都是由多棵树一起决定

GBDT和随机森林的不同点:

1)组成随机森林的树可以是分类树,也可以是回归树;而GBDT只由回归树组成

2)组成随机森林的树可以并行生成;而GBDT只能是串行生成;

3)对于最终的输出结果而言,随机森林采用多数投票等;而GBDT则是将所有结果累加起来,或者加权累加起来;

4)随机森林对异常值不敏感,GBDT对异常值非常敏感;

5)随机森林对训练集一视同仁,GBDT是基于权值的弱分类器的集成;

6)随机森林是通过减少模型方差提高性能,GBDT是通过减少模型偏差提高性能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值