Prediction classes

All 50 classes in imodels, grouped by the kind of model they fit. Every model follows the scikit-learn API (fit, predict, predict_proba); the variant links open its API page.

Trees

Single trees and sums of trees, grown greedily, searched for optimality, or regularized after fitting.

FIGSFast interpretable greedy-tree sums: a sum of small trees with few splits in total. post →
FastSmallTreeautoresearchnumbaThe certifiably optimal small tree for error plus a penalty per leaf. post →
Hierarchical shrinkagePost-hoc regularization of any tree or tree ensemble, shrinking each node towards its parent. post →
Hierarchical shrinkage + CCPHierarchical shrinkage of a cost-complexity-pruned tree, both tuned by cross-validation.
CCP-pruned treeA CART tree pruned to a target complexity by cost-complexity pruning.
Greedy tree (CART)scikit-learn's CART tree with imodels' rule extraction and printing.
C4.5 treeA C4.5 decision tree, split by information-gain ratio.
TAO treeTree alternating optimization: refines the splits of a grown tree, one node at a time.
Iterative random forestRandom forests refit with feature weights, to find stable feature interactions.

Rule sets

Unordered sets of if-then rules, combined by a vote or a sparse linear model.

RuleFitA sparse linear model on rules extracted from a tree ensemble.
Skope-rulesRules from bagged trees, kept by precision and recall and deduplicated.
Boosted rulesA boosted sum of short rules.
SLIPPERBoosted rules fit with the confidence-rated SLIPPER algorithm.
Bayesian rule setA Bayesian or-of-ands rule set.
FP-LassoA lasso over rules mined by frequent-pattern growth.
FP-SkopeSkope-rules over rules mined by frequent-pattern growth.

Rule lists

Ordered if-then-else lists, read from the top until a rule applies.

Bayesian rule listAn if-then-else list chosen by a posterior over lists.
Greedy rule listA rule list grown greedily, one split at a time.
OneRA rule list on the single most predictive feature.
Fast-and-frugal treeOne cue per level, each with an exit.

Algebraic models

Linear, additive and integer-point models.

FastRiskScoreautoresearchnumbaA sparse integer risk score with a calibrated risk for every total. post →
GPGamautoresearchAn additive Gaussian-process model with pairwise interactions and posterior bands. post →
Tree GAMA GAM whose shape functions are boosted small trees.
Marginal shrinkage linear modelA linear model shrunk towards each feature's marginal effect.
SLIMA sparse linear model with integer coefficients. The classifier is deprecated in favour of FastRiskScore.

Utilities

Wrappers that select or distill interpretable models.

AutoInterpretableFits and selects among interpretable models automatically.
DistillationDistills a black-box model into an interpretable one.

Misc classes

Discretization

Turn numeric features into bins, as input for the rule-based models.

Basic discretizerEqual-width or quantile bins (scikit-learn's KBinsDiscretizer).
MDLP discretizerSupervised bins by Fayyad and Irani's MDLP criterion.
BRL discretizerThe MDLP discretization used by the Bayesian rule list.
RF discretizerBins from the split points of a random forest.

Clustering

Clustering helpers.

Stable clusteringPicks the number of clusters by how stable the clustering is across repeated runs.

Experimental

Models that are less tested.

BARTexperimentalBayesian additive regression trees (slow).