什么是随机森林中的出库错误?它是在随机森林中找到正确数量的树木的最佳参数吗?
我将尝试解释:
假设我们的训练数据集由T表示,并且假设数据集具有M个特征(或属性或变量)。
T = {(X1,y1), (X2,y2), ... (Xn, yn)}
和
Xi is input vector {xi1, xi2, ... xiM}
yi is the label (or output or class).
射频摘要:
随机森林算法是主要基于两种方法的分类器-
假设我们决定S
在我们的森林中有几棵树,然后我们首先创建一个S
数据集,该数据集"same size as original"
由T中的数据随机重采样替换生成(每个数据集n次)。这将产生{T1, T2, ... TS}
数据集。这些中的每一个都称为引导数据集。由于“替换”,每个数据集Ti
都可能有重复的数据记录,Ti可能会丢失原始数据集中的多个数据记录。这称为Bootstrapping
。(en.wikipedia.org/wiki/Bootstrapping_(statistics))
套袋是获取引导程序,然后汇总在每个引导程序中学习的模型的过程。
现在,RF创建S
树并使用可能特征中的m (=sqrt(M) or =floor(lnM+1))
随机子M
功能来创建任何树。这称为随机子空间方法。
因此,为每个Ti
引导数据集创建一棵树Ki
。如果要对某些输入数据进行分类,D = {x1, x2, ..., xM}
可以让它通过每棵树并产生S
输出(每棵树一个),可以用表示Y = {y1, y2, ..., ys}
。最终预测是对此集的多数票。
袋外错误:
创建分类器(S
树)后,对于(Xi,yi)
原始训练集中的每个分类器,即T
,选择所有Tk
不包含的分类器(Xi,yi)
。请注意,此子集是一组boostrap数据集,其中不包含原始数据集中的特定记录。此集合称为“袋外示例”。有n
这样的子集(原始数据集T中的每个数据记录一个)。OOB分类器是仅Tk
包含不包含的投票汇总(xi,yi)
。
泛化误差的袋外估计值是训练集上袋外分类器的错误率(与已知值进行比较yi
)。
它为什么如此重要?
Breiman [1996b]中对袋装分类器的误差估计的研究提供了经验证据,表明袋外估计与使用与训练集大小相同的测试集一样准确。因此,使用袋外误差估计就不需要保留测试集。1个
(感谢@Rudolf的更正。他在下面的评论。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句