【问题标题】:is it necessary to center and scale data before predicting?在预测之前是否有必要对数据进行中心化和缩放?
【发布时间】:2016-04-11 19:51:26
【问题描述】:

在 caret 包的 train 函数中,可以执行预测变量的居中和缩放,如下例所示:

knnFit <- train(Direction ~ ., data = training, method = "knn",
                preProcess = c("center","scale"))

在训练中设置此转换应该可以更好地评估算法在重采样期间的性能。

在这种情况下,当我使用模型来预测新数据的响应时,我应该关心居中和缩放,还是将这个操作包含在最终模型中?

下面的操作就够了吗?

pred <- predict(knnFit, newdata = test)

谢谢!

【问题讨论】:

标签: r r-caret


【解决方案1】:

在 train 对象中指定的 preProces 将应用于新数据,而无需先对新数据进行预处理。所以你的操作就足够了。

还可以查看下面插入符号网站的摘录。还有一整节纯粹是关于预处理的。绝对值得您花时间阅读。

您可以在此处找到caret website

这些处理步骤将在任何预测期间应用 使用 predict.train、extractPrediction 或 extractProbs 生成(参见 本文档后面的详细信息)。预处理不会 应用于直接使用 object$finalModel 对象的预测。

【讨论】:

    猜你喜欢
    • 2014-01-15
    • 2020-07-06
    • 2017-04-05
    • 1970-01-01
    • 2017-03-24
    • 1970-01-01
    • 1970-01-01
    • 2016-09-24
    • 2019-03-16
    相关资源
    最近更新 更多