Skip to content

Releases: mlr-org/mlr3

mlr3 0.10.0

21 Jan 13:51

Choose a tag to compare

  • Result containers ResampleResult and BenchmarkResult now optionally remove
    the DataBackend of the Tasks in order to reduce file size and memory
    footprint after serialization. To remove the backends from the containers,
    set store_backends to FALSE in resample() or benchmark(),
    respectively. Note that this behaviour will eventually will be the default for
    future releases.
  • Prediction objects generated by Learner$predict_newdata() now have row ids
    starting from 1 instead auto incrementing row ids of the training task.
  • as.data.table.DictionaryTasks now returns an additional column properties.
  • Added flag conditions to ResampleResult$score() and
    BenchmarkResult$score() to allow to work with failing learners more
    conveniently.

mlr3 0.9.0

06 Dec 19:48

Choose a tag to compare

  • New methods for Task: $set_col_roles and $set_row_roles as a replacement
    for the deprecated and less flexible $set_col_role and $set_row_role.
  • Learners can now have a timeout (#556).
  • Removed S3 method friedman.test.BenchmarkResult() in favor of the new
    mlr3benchmark package.

mlr3 0.8.0

21 Oct 09:07

Choose a tag to compare

  • MeasureOOBError now has set property minimize to TRUE.
  • New learner property "featureless" to tag learners which can operate on
    featureless tasks.
  • Fixed [ResampleResult] ignoring argument predict_sets for returned
    [Prediction] objects.
  • Compability with new version of lgr.

mlr3 0.7.0

07 Oct 12:39

Choose a tag to compare

  • Updated properties of featureless learners to apply it on all feature types
    (did not work on POSIXct columns).
  • Fixed measures being calculated as NaN for BenchmarkResult for resamplings
    with a single iteration (#551).
  • Fixed a bug where a broken heuristic disabled nested parallelization via
    package future (mlr3tuning#270).
  • ResampleResult and BenchmarkResult now share a common interface to store
    the experiment results. Manual construction is still possible with helper
    function as_result_data()
  • Fixed deep cloning of ResamplingCV and ResamplingRepeatedCV.
  • New measure classif.prauc (area under precision-recall curve).
  • Removed dependency on orphaned package bibtex.

mlr3 0.6.0

13 Sep 15:01

Choose a tag to compare

  • Compact in-memory representation of R6 objects to save space when
    saving objects via saveRDS() or serialize().
  • Objects in containers like ResampleResult or BenchmarkResult are now
    de-duplicated for an optimized serialization.
  • Fixed data set breast_cancer: all factor features are now
    correctly stored as ordered factors.
  • Added a new utility function convert_task().

mlr3 0.5.0

07 Aug 08:44
26c80f6

Choose a tag to compare

  • Added classification task breast_cancer
  • Added ResamplingLOO for leave-one-out resampling.
  • Regression now supports predict type "distr" using the distr6 package.
  • Fixed ResamplingBootstrap in combination with grouping (#514).
  • Fixed plot method of TaskGeneratorMoons.
  • Added hyperparameter keep_model to learners "classif.rpart" and
    "regr.rpart".

mlr3 0.4.0

22 Jul 11:55

Choose a tag to compare

  • Added new task generators ("cassini", "circle", "simplex", "spirals",
    and "moons").
  • Columns in tasks generated by task generators have been renamed to be more
    consistent.
  • Added a plot() method for most task generators.
  • Corrected data in task german_credit (#514).

mlr3 0.3.0

02 Jun 20:04

Choose a tag to compare

  • Package future.apply is now imported (instead of suggested).
    This is necessary to ensure reproducibility: This way exactly the same result
    is calculated, independent of the parallel backend.
  • Fixed a bug where prediction on new data for a task with blocking information
    raised an exception (#496).
  • New binding: Task$order.

mlr3 0.1.8

09 Mar 23:11

Choose a tag to compare

  • Added S3 methods to combine ResampleResults and BenchmarkResults with
    c().
  • Fixed a bug where automatic generation of row ids could lead to duplicated ids
    via Task$predict_newdata()/Task$rbind() (#423).

mlr3 0.1.7

24 Feb 08:24

Choose a tag to compare

  • Switched to new roxygen2 documentation format for R6 classes.

  • resample() and benchmark() now support progress bars via the package
    progressr.

  • Row ids now must be numeric. It was previously allowed to have character row
    ids, but this lead to confusion and unnecessary code bloat. Row identifiers
    (e.g., to be used in plots) can still be part of the task, with row role
    "name".

  • Row names can now be queried with Task$row_names.

  • DataBackendMatrix now supports to store an optional (numeric) dense part.

  • Added new method $filter() to filter ResampleResults to a subset of
    iterations.

  • Removed deprecated character() -> object converters.

  • Empty test sets are now handled separately by learners (#421). An empty
    prediction object is returned for all learners.

  • The internal train and predict function of Learner now should be implemented
    as private method: instead of public methods train_internal and
    predict_internal, private methods .train and .predict are now
    encouraged.

  • It is now encouraged to move some internal methods from public to private:

    • Learner$train_internal should now be private method $.train.
    • Learner$predict_internal should now be private method $.predict.
    • Measure$score_internal should now be private method $.score.
      The public methods will be deprecated in a future release.
  • Removed arguments from the constructor of measures classif.debug and
    classif.costs. These can be set directly by msr().