Caret 包:训练函数中的分层交叉验证
Caret Package: Stratified Cross Validation in Train Function
在使用训练函数将模型拟合到大型不平衡数据集时,有没有办法进行分层交叉验证?我知道可以直接进行 k 折交叉验证,但我的类别非常不平衡。我看过关于这个话题的讨论,但没有真正明确的答案。
提前致谢。
有一个参数叫'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)
在使用训练函数将模型拟合到大型不平衡数据集时,有没有办法进行分层交叉验证?我知道可以直接进行 k 折交叉验证,但我的类别非常不平衡。我看过关于这个话题的讨论,但没有真正明确的答案。
提前致谢。
有一个参数叫'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)