- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想用 party 库中的 cforest 函数来衡量特征的重要性。
我的输出变量在 0 类中有 2000 个样本,在 1 类中有 100 个样本。
我认为避免类不平衡造成偏差的一个好方法是使用子样本训练森林中的每棵树,使得类 1 的元素数量与类 0 中的元素数量相同。
有什么办法吗?我正在考虑像 n_samples = c(20, 20)
编辑:代码示例
> iris.cf <- cforest(Species ~ ., data = iris,
+ control = cforest_unbiased(mtry = 2)) #<--- Here I would like to train the forest using a balanced subsample of the data
> varimp(object = iris.cf)
Sepal.Length Sepal.Width Petal.Length Petal.Width
0.048981818 0.002254545 0.305818182 0.271163636
>
编辑:也许我的问题不够清楚。随机森林是一组决策树。通常,决策树仅使用数据的随机子样本构建。我希望使用的子样本在 1 类和 0 类中具有相同数量的元素。
编辑:我正在寻找的功能肯定在 randomForest 包中可用
sampsize
Size(s) of sample to draw. For classification, if sampsize is a vector of the length the number of strata, then sampling is stratified by strata, and the elements of sampsize indicate the numbers to be drawn from the strata.
我需要同样的派对套餐。有没有办法得到它?
最佳答案
我假设您知道自己想要完成什么,但对 R 的了解还不够。
不确定该函数是否提供数据平衡作为参数,但您可以手动执行。下面是我快速拼凑的代码。可能存在更优雅的解决方案。
# just in case
myData <- iris
# replicate everything *10* times. Replicate is just a "loop 10 times".
replicate(10,
{
# split dataset by class and add separate classes to list
splitList <- split(myData, myData$Species)
# sample *20* random rows from each matrix in a list
sampledList <- lapply(splitList, function(dat) { dat[sample(20),] })
# combine sampled rows to a data.frame
sampledData <- do.call(rbind, sampledList)
# your code below
res.cf <- cforest(Species ~ ., data = sampledData,
control = cforest_unbiased(mtry = 2)
)
varimp(object = res.cf)
}
)
希望你能从这里开始。
关于r - cforest party 不平衡类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26393675/
我正在尝试使用 cforest 函数(R,派对包)。 这就是我为构建森林所做的工作: library("party") set.seed(42) readingSkills.cf 5 5
我有一个非常大的数据框,包含 790,000 行和 140 个预测变量。其中一些彼此密切相关,并且在不同的范围内。与 randomForest包,我可以使用 foreach 仅使用一小部分数据样本在每
我想使用 caret 包运行一个无偏见的 cforest。这可能吗? tc ) : no method for coercing this S4 class to a vector 这是因为无法将 c
我想用 party 库中的 cforest 函数来衡量特征的重要性。 我的输出变量在 0 类中有 2000 个样本,在 1 类中有 100 个样本。 我认为避免类不平衡造成偏差的一个好方法是使用子样本
我正在尝试使用 Party 包运行随机森林模型。我想使用 varimp 函数来确定条件变量的重要性,但它似乎不接受分类变量。这是一个link到我的数据,下面是我正在使用的代码。 > #set up d
我正在尝试在 R 中找到一种方法来计算随机森林或条件随机森林的单棵树的变量重要性。 一个好的起点是 rpart:::importance 命令,它计算 rpart 树的变量重要性的度量: > libr
您好,我在 R 中并行化 cforest 时遇到问题。 我一直在尝试使用 party 包中的 cforest 函数创建分类模型。我希望它在我的计算机上的多个内核中并行运行。我已经使用 randomFo
我使用 cForest 构建了随机森林模型。 现在,我想绘制一条简单的学习曲线,该曲线在 x 轴上显示树木数量,在 y 轴上显示错误分类错误(如下图所示)。然而,经过多次谷歌搜索后,我仍然无法弄清楚如
我是一名优秀的程序员,十分优秀!