前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Out of bag error in Random Forest

Out of bag error in Random Forest

作者头像
GavinZhou
发布2018-01-02 15:54:12
1.4K0
发布2018-01-02 15:54:12
举报

sklearn中的RandomForestClassifier有一个参数:

oob_score : bool (default=False) Whether to use out-of-bag samples to estimate the generalization accuracy.

中文叫‘袋外误差’,可以看出这个参数的意思是:使用oob来衡量test error.

关于oob的解释,stackoverflow上有比较全面的解释:OOB的解释 说下自己的理解:

  • RF需要从原始的特征集中随机sampling,然后去分裂生成单颗树.
  • 每个树的训练样本是从原始的训练集boostraping而来.
  • 由于boostraping的有放回抽样方式,导致每个树的训练集合不同且只是原始训练集的一个部分.
  • 对于第t个树来说,原始训练集中那些不在第t个树的训练集的数据,可以使用第t个树来进行test.
  • 现在生成n(n是原始数据集的大小)个树,每个树的训练样本大小为n-1,对第i个树来说其训练集不包含(xi,yi)这个样本.
  • 使用不包含(xi,yi)这个样本的所有的树(n-1个),vote的结果作为最终(xi,yi)这个样本的test结果.

这样就可以在训练的时候来进行测试了,经验表明:

out-of-bag estimate is as accurate as using a test set of the same size as the training set.

意思就是,oob是test error的一个无偏估计.

一句话总结下: 假设Zi=(xi,yi)

The out-of-bag (OOB) error is the average error for each Zi calculated using predictions from the trees that do not contain Zi in their respective bootstrap sample. This allows the RandomForestClassifier to be fit and validated whilst being trained.

参考

stackoverflow上OOB的解释 sklearn上OOB的解释

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-08-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档