mljar/mljar-supervised

Python package for AutoML on Tabular Data with Feature Engineering, Hyper-Parameters Tuning, Explanations and Automatic Documentation

What it solves

mljar-supervised is an Automated Machine Learning (AutoML) package for tabular data that reduces the time and effort required for data scientists to preprocess data, select algorithms, and tune hyperparameters. It aims to move away from "black box" AutoML by providing detailed Markdown reports for every model trained, ensuring the process is transparent and explainable.

How it works

The tool abstracts the common ML pipeline—from data preprocessing (imputation, categorical conversion) and advanced feature engineering (Golden Features, text/time transformations) to model selection and hyperparameter tuning. It supports a wide range of algorithms including Linear models, Random Forest, LightGBM, Xgboost, CatBoost, and Neural Networks.

It operates in four distinct modes:

  • Explain: Focuses on data understanding using simple models and extensive SHAP and permutation importance plots.
  • Perform: Optimized for production-ready pipelines using 5-fold cross-validation.
  • Compete: Designed for ML competitions, utilizing ensembling and stacking for maximum performance.
  • Optuna: Uses the Optuna framework for intensive hyperparameter tuning when computation time is not a limited factor.

Who it’s for

It is designed for data scientists and ML engineers who want to automate the repetitive parts of the supervised learning pipeline for tabular data while maintaining full visibility into why a model is making specific predictions.

Highlights

  • Transparent Reporting: Automatically generates detailed Markdown reports with metrics, charts, and model-specific details (e.g., decision tree visualizations).
  • Explainability: Integrates SHAP explanations, permutation importance, and linear coefficients to make models interpretable.
  • Web App Generation: Can automatically create interactive prediction web apps via Mercury for non-technical domain experts.
  • Fairness Aware Training: Includes bias mitigation techniques like sample weighting and smart grid search to optimize for fairness metrics.
  • Automatic Persistence: Automatically saves and loads models to allow training to be resumed after interruptions.

Related

  • Project
  • Project
  • Project
  • Project
  • Project