InterpretML is a machine learning interpretability package that lets you train interpretable models and explain blackbox systems.
The package addresses the challenge of understanding machine learning model behavior and decisions. It provides two complementary approaches: training glassbox models that are inherently interpretable, and applying explanation techniques to existing blackbox models. The core offering is the Explainable Boosting Machine, an interpretable model that combines modern techniques like bagging, gradient boosting, and automatic interaction detection with the traditional Generalized Additive Model framework. This approach achieves accuracy comparable to state-of-the-art blackbox methods like random forests and gradient boosted trees while producing exact, human-readable explanations that domain experts can edit directly.
The tool suits projects where model transparency is critical: debugging model failures, engineering features, detecting fairness issues, enabling human-AI collaboration, meeting regulatory requirements, or deploying in high-risk domains like healthcare and finance. The Explainable Boosting Machine is positioned as an alternative to blackbox gradient boosting and random forest approaches when interpretability cannot be sacrificed for accuracy. The package supports both global model behavior understanding and local prediction explanation, making it applicable across different interpretability needs.
The project maintains active development with regular updates and comprehensive test coverage. Documentation includes interactive notebooks demonstrating interpretable classification workflows. The codebase is written primarily in C++ with Python bindings, supporting Python 3.10 and later across Linux, Mac, and Windows platforms.