【问题标题】:Caret Package: Stratified Cross Validation in Train FunctionCaret 包:训练函数中的分层交叉验证
【发布时间】:2016-06-24 18:22:21
【问题描述】:

在使用训练函数将模型拟合到大型不平衡数据集时,是否可以执行分层交叉验证?我知道直接的 k 折交叉验证是可能的,但我的类别非常不平衡。我看过关于这个话题的讨论,但没有真正确定的答案。

提前致谢。

【问题讨论】:

  • 我也在寻找答案... 默认情况下,函数 createFolds() 创建分层折叠。但是在trainControl中使用method =“cv”时我不确定train函数。

标签: r-caret cross-validation


【解决方案1】:

有一个叫'index'的参数可以让用户指定索引做交叉验证。

folds <- 4
cvIndex <- createFolds(factor(training$Y), folds, returnTrain = T)
tc <- trainControl(index = cvIndex,
               method = 'cv', 
               number = folds)

rfFit <- train(Y ~ ., data = training, 
            method = "rf", 
            trControl = tc,
            maximize = TRUE,
            verbose = FALSE, ntree = 1000)

【讨论】:

  • 这是由一个因素分层的。似乎没有多因素的选择。
猜你喜欢
  • 1970-01-01
  • 2018-04-03
  • 2021-12-10
  • 2018-04-03
  • 1970-01-01
  • 2018-05-03
  • 1970-01-01
  • 1970-01-01
  • 2021-11-13
相关资源
最近更新 更多