【问题标题】:trainControl in caret package插入符号包中的 trainControl
【发布时间】:2015-04-11 15:33:45
【问题描述】:

在 caret 包中,有一个叫做 trainControl 的东西,它允许我们执行各种交叉验证。要执行 10 倍交叉验证,可以使用

fitControl <- trainControl(method= "repeatedcv", number = 10, repeats = 10)
fitJ48_10_fold <- train(x = x, y =y, method = "J48", trControl= fitControl)

而对于训练集,则是

fitControl <- trainControl(method= "none")
fitJ48train <- train(x = x, y =y, method = "J48", trControl= fitControl)

但是,这些模型的混淆矩阵在 10 倍和训练中显示相同。

Activity <- predict(fitJ48_10_fold, newdata = Train)
confusionMatrix(Activity, Train$Activity)

Activity <- predict(fitJ48train, newdata = Train)
confusionMatrix(Activity, Train$Activity)

我使用了 weka 分类器 GUI,实际上 J48 的 10 倍交叉验证的性能低于训练集的性能。我怀疑插入符号的 trainControl 不起作用或者我以错误的方式传递它是错误的吗?

【问题讨论】:

标签: r cross-validation r-caret training-data


【解决方案1】:

我怀疑插入符号的 trainControl 不起作用或者我以错误的方式传递它是错误的吗?

一点。对于J48,有一个调整参数,但默认网格只适合单个值C = 0.25。无论您在trainControl 中使用什么method 值,最终模型都是相同的,因此混淆矩阵将始终相同。

最大

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-27
    • 1970-01-01
    • 2015-06-23
    相关资源
    最近更新 更多