随机森林变量重要性 Z 分数

数据挖掘 随机森林
2022-03-03 17:45:23

我真的很担心 RandomForest 算法在内部是如何工作的,

  1. 出袋错误
  2. 变量重要性
  3. Z 分数

让我知道这三个?如何计算它?它控制什么?

1个回答

请允许我引用算法创建者的网站RandomForest

出袋错误

在随机森林中,不需要交叉验证或单独的测试集来获得测试集误差的无偏估计。在运行期间,内部估计如下:

每棵树都是使用来自原始数据的不同引导样本构建的。大约三分之一的案例被排除在 bootstrap 样本之外,并且没有用于第 k 树的构建。

把构建第k棵树的每个case都放在第k棵树下,得到一个分类。以这种方式,在大约三分之一的树中为每个案例获得一个测试集分类。在运行结束时,将 j 设为每次 case n 为 oob 时获得最多选票的类。j 不等于 n 的真实类别的次数在所有情况下的平均比例是oob 误差估计这在许多测试中被证明是公正的。

变量重要性和 Z 分数

在森林中生长的每一棵树上,放下 oob 案例并计算为正确类别投出的票数。现在随机排列 oob 案例中变量 m 的值,并将这些案例放在树下。从未触及的 oob 数据中正确类的票数中减去变量 m 排列的 oob 数据中正确类的票数。森林中所有树的这个数字的平均值是变量 m 的原始重要性得分

如果从树到树的这个分数的值是独立的,那么标准误差可以通过标准计算来计算。已经针对许多数据集计算了这些树之间的分数的相关性,并且被证明是相当低的,因此我们以经典方式计算标准误差,将原始分数除以其标准误差得到 z 分数,然后分配假设正态性的z 分数的显着性水平。