我正在使用R caret包来比较性能 不同分类器对我的数据。
我希望量化性能的一种方法是 能说点时间 用于对每个分类器的观察进行分类 相对于其他分类器。
我认为通过设置timingSamps选项给出的信息 trainControl将允许我获取我需要的信息。 我不知道如何解释它,文档对于实际测量的内容是相当不透明的。
相关代码位:
control <- trainControl(..., timingSamps=20)
model <- train(..., trControl=control)
model$timings
输出结果为:
> model$times
$everything
user system elapsed
800.774 2.713 804.273
$final
user system elapsed
3.323 0.007 3.335
$prediction
user system elapsed
0.017 0.000 0.016
如何解读预测时间? a)预测单次观察的时间 b)预测一组观测结果的时间 c)完全不同的东西
文档可以这样说:
timingSamps将用于测量预测时间的训练集样本的数量 样本(零表示不应估计预测时间。
但这并没有告诉我如何解释输出。
答案 0 :(得分:1)
检查train
函数的源代码表明,这是预测trainControl
相关源代码(来自:https://github.com/topepo/caret/blob/master/pkg/caret/R/train.default.R)
if(trControl$timingSamps > 0) {
pData <- x[sample(1:nrow(x), trControl$timingSamps, replace = TRUE),,drop = FALSE]
out$times$prediction <- system.time(predict(out, pData))
} else out$times$prediction <- rep(NA, 3)
out