python集成学习算法_python: 一句话说机器学习算法和调参-集成学习篇

随机森林

## 通过对数据的行(样本随机放回抽样)和列抽样(属性放回抽样)来训练多个决策树(无剪枝)组成的多分类器(森林)来对新样本投票决策识别

(1)每一棵决策树就是一个精通于某一个窄领域的专家(因为我们从M个

feature中选择m让每一棵决策树进行学习),这样在随机森林中就有了很多个精通不同领域的专家,

(2)对一个新的问题(新的输入数据),可以用不同的角度去看待它,最终由各个专家,投票得到结果

(3) 关键参数: n_estimators 决策树个数, max_features 随机选择的特征数

优势:

>在数据集上表现良好

> 在当前的很多数据集上,相对其他算法有着很大的优势

> 它能够处理很高维度(feature很多)的数据,并且不用做特征选择

> 在训练完后,它能够给出哪些feature比较重要

> 在创建随机森林的时候,对generlization error使用的是无偏估计

> 训练速度快

> 在训练过程中,能够检测到feature间的互相影响

> 容易做成并行化方法

> 实现比较简单

X = iris.data

y = iris.target

from sklearn.ensemble import RandomForestClassifier

model = RandomForestClassifier(max_depth=5, n_estimators=10, max_features=1)

model.fit(X,y)

model.score(X, y)

print(model.predict([X[1,],X[2,]]))

重要输出指标: oob_score_: [out of  bagger score]

oob样本为每棵树的训练样本外的其他的剩余的样本

1)对每个样本,计算它作为oob样本的树对它的分类情况(约1/3的树);

2)然后以简单多数投票作为该样本的分类结果;

3)最后用误分个数占样本总数的比率作为随机森林的oob误分率即oob_score_。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值