UC Berkeley Researchers Introduce ‘imodels: A Python Package For Fitting Interpretable Machine Learning Models

Recent developments in machine learning have resulted in more complicated predictive models, typically at the expense of interpretability. Interpretability is frequently required, especially in high-stakes health, biology, and political science applications. Furthermore, interpretable models aid in various tasks, including detecting errors, exploiting domain knowledge, and accelerating inference.

Despite recent breakthroughs in the formulation and fitting of interpretable models, implementations are frequently challenging to locate, utilize, and compare. imodels solves this void by offering a single interface and implementation for a wide range of state-of-the-art interpretable modeling techniques, especially rule-based methods. imodels is basically a Python tool for predictive modeling that is simple, transparent, and accurate. It gives users a straightforward way to fit and use state-of-the-art interpretable models, all of which are compatible with scikit-learn (Pedregosa et al., 2011). These models can frequently replace black-box models while boosting interpretability and computing efficiency without compromising forecast accuracy.

What is new in the field of interpretability?

Interpretable models have a structure that makes them easy to inspect and comprehend. The figure below depicts four different configurations for an interpretable model in the imodels package.

There are numerous approaches for fitting the model for each of these shapes, prioritizing different things. Greedy techniques, such as CART, emphasize efficiency, whereas global optimization methods can focus on finding the smallest possible model. RuleFit, Bayesian Rule Lists, FIGS, Optimal Rule Lists, and various other approaches are all implemented in the imodels package.

Source: https://bair.berkeley.edu/blog/2022/02/02/imodels/

How can imodels be used?

It’s pretty easy to use imodels. It’s simple to set up (pip install imodels) and can then be used in the same way as other scikit-learn models: Use the fit and predict methods to fit and predict a classifier or regressor.

Source: https://bair.berkeley.edu/blog/2022/02/02/imodels/

An example of interpretable modeling

Modeling that can be interpreted is an example of interpretable modeling. The diabetes categorization dataset is looked upon, which collected eight risk indicators and utilized them to predict the incidence of diabetes in the next five years. While fitting numerous models, it was discovered that the model could attain outstanding test performance with only a few rules.

For example, although being exceedingly simple, the figure below illustrates a model fitted using the FIGS approach that gets a test-AUC of 0.820. Each factor contributes independently of the others in this model, and the final risks from each of the three essential features are added to generate a risk for diabetes onset (higher is a higher risk). Unlike a black-box model, this one is simple to understand, quick to compute, and allows to make predictions.

Source: https://bair.berkeley.edu/blog/2022/02/02/imodels/

Conclusion

Overall, interpretable modeling is a viable alternative to traditional black-box modeling, and in many circumstances, it may provide significant gains in efficiency and transparency without sacrificing performance.

Paper: https://joss.theoj.org/papers/10.21105/joss.03192.pdf

Github: https://github.com/csinva/imodels

Reference: https://bair.berkeley.edu/blog/2022/02/02/imodels/