怎么理解随机森林的oob error?

  统计/机器学习 监督式学习 模型验证    浏览次数:5162        分享
1

怎么理解随机森林的oob error?有了oob error是不是就不用做交叉验证了?

 

图不二   2018-08-13 21:32



   2个回答 
12

严格来说,OOB error不能完全取代交叉验证(看完下文就知道了)。

OOB(Out-of-bag) error也叫做包外误差,是随机森林中的一种度量预测误差的方式。

我们知道随机森林是由很多数组成的,而每棵树当中只用了部分样本来训练。

假设训练集中一共有$N$个样本$x_1,x_2,\cdots,x_N$,随机森林中有$M$棵树,$T_1,T_2,\cdots,T_M$。

对于一个样本$x_i$,我们用那些没有使用$x_i$训练的树组成的小随机森林来预测$x_i$,其预测误差就是$x_i$在这个随机森林上的OOB error,$\text{Err}_i$。

整个随机森林的OOB误差就是所有训练样本的平均OOB误差,

$$\text{OOB Error}=\sum^{N}_{i=1}\frac{\text{Err}_i}{N}$$

通常来说,OOB误差会比交叉验证的误差更大,因为估计OOB时,我们只用了随机森林中的部分树,没有使用完整的模型,限制了模型的发挥。但OOB省去了交叉验证中多次训练的步骤,所以比较方便,节约了时间。


SofaSofa数据科学社区DS面试题库 DS面经

zl_pku   2018-09-14 07:34

2

是的,不需要交叉验证了。

SofaSofa数据科学社区DS面试题库 DS面经

nobodyoo1   2018-08-16 00:33



  相关主题

为什么随机森林比决策树更robust?   1回答

随机森林是如何计算测试样本的概率的?   0回答

随机森林如何调参?   3回答

随机森林中增加树的数量对于偏差和方差的影响   2回答

python里实现一个简单的决策树   1回答

Extra Tree算法   1回答

随机森林警告:A column-vector y was passed when a 1d array was expected   1回答

决策树算法ID3,C4.5和CART的特点、异同?   3回答

随机森林的模型一般都很大么?   1回答

怎么理解RandomForest中的max_features?   1回答

决策树剪枝有什么策略或者注意事项?   2回答

请教lightGBM中的level wise具体计算步骤是怎样的?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!