Complete benchmark experiment to compare different learning algorithms across one or more tasks w.r.t. a given resampling strategy. Experiments are paired, meaning always the same training / test sets are used for the different learners. Furthermore, you can of course pass “enhanced” learners via wrappers, e.g., a learner can be automatically tuned using makeTuneWrapper.
benchmark( learners, tasks, resamplings, measures, keep.pred = TRUE, keep.extract = FALSE, models = FALSE, show.info = getMlrOption("show.info") )
| learners | (list of Learner | character) |
|---|---|
| tasks | list of Task |
| resamplings | (list of ResampleDesc | ResampleInstance) |
| measures | (list of Measure) |
| keep.pred | ( |
| keep.extract | ( |
| models | ( |
| show.info | ( |
Other benchmark:
BenchmarkResult,
batchmark(),
convertBMRToRankMatrix(),
friedmanPostHocTestBMR(),
friedmanTestBMR(),
generateCritDifferencesData(),
getBMRAggrPerformances(),
getBMRFeatSelResults(),
getBMRFilteredFeatures(),
getBMRLearnerIds(),
getBMRLearnerShortNames(),
getBMRLearners(),
getBMRMeasureIds(),
getBMRMeasures(),
getBMRModels(),
getBMRPerformances(),
getBMRPredictions(),
getBMRTaskDescs(),
getBMRTaskIds(),
getBMRTuneResults(),
plotBMRBoxplots(),
plotBMRRanksAsBarChart(),
plotBMRSummary(),
plotCritDifferences(),
reduceBatchmarkResults()
lrns = list(makeLearner("classif.lda"), makeLearner("classif.rpart")) tasks = list(iris.task, sonar.task) rdesc = makeResampleDesc("CV", iters = 2L) meas = list(acc, ber) bmr = benchmark(lrns, tasks, rdesc, measures = meas)#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#>#> Sonar-example iris-example #> classif.lda 1 1 #> classif.rpart 2 2#> Warning: `fun.y` is deprecated. Use `fun` instead.#> Warning: `fun.ymin` is deprecated. Use `fun.min` instead.#> Warning: `fun.ymax` is deprecated. Use `fun.max` instead.#> Warning: no non-missing arguments to max; returning -Inf#> Warning: Computation failed in `stat_ydensity()`: #> replacement has 1 row, data has 0#> Warning: no non-missing arguments to max; returning -Inf#> Warning: Computation failed in `stat_ydensity()`: #> replacement has 1 row, data has 0#> #> Friedman rank sum test #> #> data: acc.test.mean and learner.id and task.id #> Friedman chi-squared = 2, df = 1, p-value = 0.1573 #>#>#> Warning: Cannot reject null hypothesis of overall Friedman test, #> returning overall Friedman test.#> #> Friedman rank sum test #> #> data: acc.test.mean and learner.id and task.id #> Friedman chi-squared = 2, df = 1, p-value = 0.1573 #>