# csinva/imodels

Interpretable ML package 🔍 for concise, transparent, and accurate predictive modeling (sklearn-compatible).

Repository: https://github.com/csinva/imodels
Canonical: https://ross.abutalabs.com/products/imodels
Homepage: https://csinva.io/imodels
Language: Jupyter Notebook
License: MIT
License Family: permissive
Topics: interpretability, machine-learning, data-science, artificial-intelligence, ml, ai, statistics, scikit-learn, python, optimal-classification-tree, rulefit, imodels, rule-learning, supervised-learning, explainable-ml, explainable-ai, rules, bayesian-rule-list
Last push: 2026-08-03T03:34:45+00:00

## Health v2 (maintenance only)
Score: 85/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 95, release rhythm 64, longevity 100
- inputs: {"age_days": 2617, "days_push": 30, "days_rel": 30, "gap_med": 656, "n_releases_24m": 2}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1617, forks 141 (observed 2026-08-28T04:05:11.965545+00:00)

## What it is
A Python package providing scikit-learn-compatible implementations of interpretable machine-learning models such as rule lists, RuleFit, and optimal classification trees. It lets users fit transparent predictive models with the standard fit/predict interface, often replacing black-box models without sacrificing accuracy.

## Use cases
- fit interpretable machine learning models in python
- replace random forest with a transparent rule list
- train sklearn-compatible rule-based classifiers
- build explainable decision trees with hierarchical shrinkage
- get concise predictive models for clinical or tabular data
- learn rulefit or bayesian rule lists in python

## When to choose
- you need models whose predictions humans can inspect and explain
- you want drop-in scikit-learn-compatible interpretable classifiers and regressors
- regulatory or trust requirements demand transparent modeling

## When to avoid
- you need maximum predictive accuracy regardless of interpretability
- you work outside Python or outside the scikit-learn ecosystem
- you need deep learning or large-scale black-box modeling

## Facets
- artifact type: library
- maturity: active
- function: machine-learning, data-science
- domain: machine-learning, data-science, artificial-intelligence
- platform: python
- tags: interpretable-ml, explainable-ai, rule-learning, scikit-learn-compatible, rulefit, bayesian-rule-list, optimal-trees, statistics

## Member repositories
- csinva/imodels (main) score 85

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:11.965545+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:49:53.961143+00:00, confidence not recorded.
  - readme: https://github.com/csinva/imodels (fetched 2026-08-28T04:05:11.965545+00:00, sha 2eca971affbb)
  - homepage: https://csinva.io/imodels (fetched 2026-08-29T11:22:16.339216+00:00, sha 76e256ec873d)
  - registry_pypi: https://pypi.org/pypi/imodels/json (fetched 2026-08-29T11:22:16.405195+00:00, sha 14eae8991676)
- Data as of 2026-08-30T08:39:29.467469+00:00.
