← all repositories
mlr-org/mlr

R's original ML glue is now a museum piece

mlr unified R's fragmented machine-learning ecosystem before retiring itself to make way for mlr3.

1.7k stars R ML Frameworks
mlr
Velocity · 7d
+0.4
★ / day
Trend
steady
star history

What it does

mlr wraps R’s scattered machine-learning packages behind a single S3 interface. It handles the tedious plumbing—resampling, hyperparameter tuning, feature selection, benchmarking, and parallelization—so you don’t write yet another ad-hoc wrapper for a random forest package that returns output in a different shape than your SVM package.

The interesting bit

The project essentially built a domain-specific operating system for ML experiments in a language that lacked one. It even integrated with OpenML for reproducible research at a time when that was genuinely unusual. Then it did something rare: it declared itself retired and pointed everyone to its successor, mlr3, rather than dragging out obsolescence.

Key highlights

  • Unified interface for classification, regression, survival analysis, and clustering
  • Built-in resampling (CV, bootstrapping, subsampling) and nested resampling for tuning
  • Hyperparameter optimization including SMBO and iterated F-racing via irace
  • Variable selection with filters and wrappers; cost-sensitive learning and imbalance correction
  • OpenML connector and built-in parallelization support
  • Detailed tutorial and JMLR paper for citation

Caveats

  • Retired: no new features, only severe bug fixes; team explicitly directs users to mlr3
  • Not all mlr features exist in mlr3 yet, so migration may require patience or issue-filing

Verdict

Worth studying if you maintain legacy R ML pipelines or want to understand how a mature ecosystem gracefully sunsets itself. Skip it for new projects—use mlr3 instead, as the maintainers themselves insist.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.