Skater is a unified framework to enable Model Interpretation for all forms of model to help one build an Interpretable machine learning system often needed for real world use-cases(** we are actively working towards to enabling faithful interpretability for all forms models). It is an open source python library designed to demystify the learned structures of a black box model both globally(inference on the basis of a complete data set) and locally(inference about an individual prediction).
The project was started as a research idea to find ways to enable better interpretability(preferably human interpretability) to predictive "black boxes" both for researchers and practioners. The project is still in beta phase.
Overview | Introduction to the Skater library |
Installing | How to install the Skater library |
Tutorial | Steps to use Skater effectively. |
API Reference | The detailed reference for Skater's API. |
Contributing | Guide to contributing to the Skater project. |
Examples | Interactive notebook examples |
Feature Requests/Bugs | GitHub issue tracker |
Usage questions | Gitter chat |
General discussion | Gitter chat |
For detailed information on the dependencies and intallation instruction check out installing skater.
Option 1: without rule lists and without deepinterpreter
pip install -U skater
Option 2: without rule lists and with deepinterpreter:
1. Ubuntu: pip3 install --upgrade tensorflow (follow instructions at https://www.tensorflow.org/install/ for details and best practices)
2. sudo pip install keras
3. pip install -U skater==1.1.1b1
Option 3: For everything included
1. conda install gxx_linux-64
2. Ubuntu: pip3 install --upgrade tensorflow (follow instructions https://www.tensorflow.org/install/ for
details and best practices)
3. sudo pip install keras
4. sudo pip install -U --no-deps --force-reinstall --install-option="--rl=True" skater==1.1.1b1
To get the latest changes try cloning the repo and use the below mentioned commands to get started, :
1. conda install gxx_linux-64
2. Ubuntu: pip3 install --upgrade tensorflow (follow instructions https://www.tensorflow.org/install/ for
details and best practices)
3. sudo pip install keras
4. git clone the repo
5. sudo python setup.py install --ostype=linux-ubuntu --rl=True
1. If repo is cloned: :: python skater/tests/all_tests.py
2. If pip installed: :: python -c "from skater.tests.all_tests import run_tests; run_tests()"
Since the project is under active development, the best way to understand usage would be to follow the examples mentioned in the Gallery of Interactive Notebook.
+---------+---------+-----+-----------+-----------+--------------+--------------+--------------------+------------------+ | Scope of Interpretation | Algorithms | +=========+=========+=====+===========+===========+==============+==============+=======================================+ | Global Interpretation | Model agnostic Feature Importance | +---------+---------+-----+-----------+-----------+--------------+--------------+--------------------+------------------+ | Global Interpretation | Model agnostic Partial Dependence Plots | +---------+---------+-----+-----------+-----------+--------------+--------------+--------------------+------------------+ | Local Interpretation | Local Interpretable Model Explanation(LIME) | +---------+---------+-----+-----------+-----------------------------------------+--------------------+------------------+ | Local Interpretation | DNNs | - Layer-wise Relevance Propagation | | | | (e-LRP): image | | | | | | | | - Integrated Gradient | | | | image and text | +---------+---------+-----+-----------+-----------------------------------------+--------------------+------------------+ | Global and Local | Scalable Bayesian Rule Lists | | Interpretation | | +---------+---------+-----+-----------+-----------+--------------+--------------+--------------------+------------------+
If you decide to use Skater to resolve interpretability needs, please consider citing the project with the below mentioned DOI, :: @misc{pramit_choudhary_2018_1198885, author = {Pramit Choudhary and Aaron Kramer and datascience.com team, contributors}, title = {{Skater: Model Interpretation Library}}, month = mar, year = 2018, doi = {10.5281/zenodo.1198885}, url = {https://doi.org/10.5281/zenodo.1198885} }
Refer to https://github.com/christophM/iml
- Interpreting predictive models with Skater: Unboxing model opacity
- Molnar Christoph, Interpretable Machine Learning
- Sarkar Dipanjan et al., Practical Machine Learning with Python