R/benchmark.R
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, models = TRUE, 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 | ( |
| 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) rmat = convertBMRToRankMatrix(bmr) print(rmat)#> iris-example Sonar-example #> classif.lda 1 1 #> classif.rpart 2 2plotBMRSummary(bmr)#> Warning: no non-missing arguments to max; returning -Inf#> Warning: no non-missing arguments to max; returning -InffriedmanTestBMR(bmr)#> #> 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 #>