我正在尝试使用train()
插入符号来拟合分类模型,但我遇到了某种未处理的异常,并且我的 R 会话在 R 控制台中输出任何错误信息之前崩溃。
窗口错误:
R for Windows 终端前端已停止工作
我正在运行 Windows 7、R 3.0.2、插入符号 6.0-21,并尝试在 R Studio 和 R 控制台中的 32/64 版本的 R 上运行它,并且每次都得到相同的结果。
这是我的培训电话:
library("AppliedPredictiveModeling")
library("caret")
data("AlzheimerDisease")
data <- data.frame(predictors, diagnosis)
tuneGrid <- expand.grid(interaction.depth = 1:2, n.trees = 100, shrinkage = 0.1)
trainControl <- trainControl(method = "cv", number = 5, verboseIter = TRUE)
gbmFit <- train(diagnosis ~ ., data = data, method = "gbm", trControl = trainControl, tuneGrid = tuneGrid)
使用此参数网格不再有错误:
tuneGrid <- expand.grid(interaction.depth = 1, n.trees = 100:101, shrinkage = 0.1)
但是,我仍然在列中得到所有nan
s 。ValidDeviance
这是正常的吗?
注意:我的原始问题已解决,这是评论部分的延续。在评论部分格式化代码块是不可读的,所以我把它贴在这里。这不再是关于插入符号的问题,而是 gbm。
但是,我仍然遇到问题,使用指定了 cv.folds 的单个预测器直接调用 gbm。这是代码:
library("AppliedPredictiveModeling")
library("caret")
data("AlzheimerDisease")
diagnosis <- as.numeric(diagnosis)
diagnosis[diagnosis == 1] <- 0
diagnosis[diagnosis == 2] <- 1
data <- data.frame(diagnosis, predictors[, 1])
gbmFit <- gbm(diagnosis ~ ., data = data, cv.folds = 5)
同样,这在不指定 cv.folds 的情况下有效,但使用它会返回错误:
Error in checkForRemoteErrors(val) : 5 nodes produced errors; first error: incorrect number of dimensions