rpart中的Minbucket和权重
Posted
技术标签:
【中文标题】rpart中的Minbucket和权重【英文标题】:Minbucket and weights in rpart 【发布时间】:2015-05-31 02:32:07 【问题描述】:向 rpart 和党的专家提出几个问题。
1) 我想了解rpart 和party 中控制参数“minbucket”的区别。 rpart 中的 minbucket 未加权是否正确(即使提供了适合树的权重)?
2) 谁能简要描述一下 rpart 算法中如何使用权重?我试图下载并查看源代码,但我无法理解它是一个新手。 rpart 调用了一个 C 函数(C_rpart),这似乎是 rpart 的主要部分,但我找不到更多关于它的信息。
非常感谢。
【问题讨论】:
【参考方案1】:rpart(以及大多数其他机器学习算法)中的权重参数可以被认为完全等同于多次复制这些训练项目。权重为 5 与该行重复 5 次相同。只要您的数据集足够小,您就可以使用一些简单的代码显式创建它:
data[rep(1:nrow(data),times=data$weights),]
【讨论】:
我和原始发帖人有同样的问题,但我认为这个答案没有得到证实。我的数据的最小权重为 500。当我将 minbucket 设置为 500 时,我根本没有得到任何树,因此它不能按权重工作。当我将其设置回 8(接近默认值)时,我得到了一棵合理的树。以上是关于rpart中的Minbucket和权重的主要内容,如果未能解决你的问题,请参考以下文章
如何处理“rpart”中的连续和离散变量 - 使用 R 的决策树?