mlr3中的留一交叉验证

3

我喜欢在mlr3中使用留一交叉验证(作为流水线的一部分)。

我可以通过以下方式指定折数(实例数):

resampling = rsmp("cv", folds=task$nrow)

但这明确指的是“任务”,可能在管道中无法正常工作。

我该怎么处理?

1个回答

6

有一个特定的“留一法”Resampling对象,名为"loo"。它可以像任何Resampling对象一样使用,例如:

rs <- rsmp("loo")
rr <- resample(tsk("iris"), lrn("classif.rpart"), resampling = rs)
rr$aggregate()
#> classif.ce
#> 0.06666667

它直接从使用的Task确定迭代次数,没有配置参数(即$param_set为空)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接