r - 在 R 中的随机森林中提取树的每个最终节点的类分布

标签 r tree random-forest

我在 R 中使用 randomForest 包。据我所知,这个包只给我分配给每棵树最后节点的每个实例的类,但我需要知道每个节点的类分布。

假设在一棵树的最后一个节点上,我们有 10 个类别 0 的实例,当整个森林都被训练时,我们有 20 个类别 1 的实例。现在不是说这个节点的分配类是 1(因为大多数实例来自类 1),我想知道类计数(10 和 20)。有什么办法吗?提前感谢您的帮助。

最佳答案

您可以使用功能 predict.randomForest(.., type = "prob")得到预测的概率。然而,它们是通过聚合单个决策树的预测(但不是预测概率!)来计算的。如果你有 10 棵树预测 class=1和 30 棵树预测 class=0 ,那么这个函数调用将产生第一类的预测概率为 0.25。

如果您需要“真实”的树级概率,那么您必须切换到不同的 RF 算法。例如,Scikit-Learn 的类 RandomForestClassifier这样工作。

关于r - 在 R 中的随机森林中提取树的每个最终节点的类分布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35163879/

相关文章:

r - R函数每n个字开始换行吗?

c++ - 如何创建尾后迭代器?

javascript - 如何使用单个数据存储呈现多个 ExtJS 树

java - 广度优先向树中插入节点

r - 如何更改 R 中随机森林的分割标准?

Scala随机森林特征重要性提取与名称(标签)

python - sklearn 管道中的 set_params() 不适用于 TransformedTargetRegressor

r - 在 ggplot2 上绘制世界地图

r - 使用逗号格式化所有数字列以分隔 v

r - 具有固定(文字)字符的矢量化 stringr