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.
| FIGS | Fast interpretable greedy-tree sums: a sum of small trees with few splits in total. post → | Classifier Classifier CV Regressor Regressor CV |
| FastSmallTreeautoresearchnumba | The certifiably optimal small tree for error plus a penalty per leaf. post → | Classifier |
| Hierarchical shrinkage | Post-hoc regularization of any tree or tree ensemble, shrinking each node towards its parent. post → | Classifier Classifier CV Regressor Regressor CV |
| Hierarchical shrinkage + CCP | Hierarchical shrinkage of a cost-complexity-pruned tree, both tuned by cross-validation. | Classifier CV Regressor CV |
| CCP-pruned tree | A CART tree pruned to a target complexity by cost-complexity pruning. | Classifier Regressor |
| Greedy tree (CART) | scikit-learn's CART tree with imodels' rule extraction and printing. | Classifier Regressor |
| C4.5 tree | A C4.5 decision tree, split by information-gain ratio. | Classifier |
| TAO tree | Tree alternating optimization: refines the splits of a grown tree, one node at a time. | Classifier Regressor |
| Iterative random forest | Random forests refit with feature weights, to find stable feature interactions. | Classifier Regressor |
Rule sets
Unordered sets of if-then rules, combined by a vote or a sparse linear model.
| RuleFit | A sparse linear model on rules extracted from a tree ensemble. | Classifier Regressor |
| Skope-rules | Rules from bagged trees, kept by precision and recall and deduplicated. | Classifier |
| Boosted rules | A boosted sum of short rules. | Classifier Regressor |
| SLIPPER | Boosted rules fit with the confidence-rated SLIPPER algorithm. | Classifier |
| Bayesian rule set | A Bayesian or-of-ands rule set. | Classifier |
| FP-Lasso | A lasso over rules mined by frequent-pattern growth. | Classifier Regressor |
| FP-Skope | Skope-rules over rules mined by frequent-pattern growth. | Classifier |
Rule lists
Ordered if-then-else lists, read from the top until a rule applies.
| Bayesian rule list | An if-then-else list chosen by a posterior over lists. | Classifier |
| Greedy rule list | A rule list grown greedily, one split at a time. | Classifier |
| OneR | A rule list on the single most predictive feature. | Classifier |
| Fast-and-frugal tree | One cue per level, each with an exit. | Classifier |
Algebraic models
Linear, additive and integer-point models.
| FastRiskScoreautoresearchnumba | A sparse integer risk score with a calibrated risk for every total. post → | Classifier |
| GPGamautoresearch | An additive Gaussian-process model with pairwise interactions and posterior bands. post → | Regressor |
| Tree GAM | A GAM whose shape functions are boosted small trees. | Classifier Regressor |
| Marginal shrinkage linear model | A linear model shrunk towards each feature's marginal effect. | Regressor |
| SLIM | A sparse linear model with integer coefficients. The classifier is deprecated in favour of FastRiskScore. | Classifier Regressor |
Utilities
Wrappers that select or distill interpretable models.
| AutoInterpretable | Fits and selects among interpretable models automatically. | Classifier Regressor |
| Distillation | Distills a black-box model into an interpretable one. | Regressor |
Misc classes
Discretization
Turn numeric features into bins, as input for the rule-based models.
| Basic discretizer | Equal-width or quantile bins (scikit-learn's KBinsDiscretizer). | BasicDiscretizer |
| MDLP discretizer | Supervised bins by Fayyad and Irani's MDLP criterion. | MDLPDiscretizer |
| BRL discretizer | The MDLP discretization used by the Bayesian rule list. | BRLDiscretizer |
| RF discretizer | Bins from the split points of a random forest. | RFDiscretizer |
Clustering
Clustering helpers.
| Stable clustering | Picks the number of clusters by how stable the clustering is across repeated runs. | StableClustering |
Experimental
Models that are less tested.
| BARTexperimental | Bayesian additive regression trees (slow). | BART |