Skip to main content

explainerdashboard allows you quickly build an interactive dashboard to explain the inner workings of your machine learning model.

Project description

This package makes it convenient to quickly explain the workings of a (scikit-learn compatible) fitted machine learning model using either interactive plots in e.g. Jupyter Notebook or deploying an interactive dashboard (based on Flask/Dash) that allows you to quickly explore the impact of different features on model predictions.

In a lot of organizations, especially governmental, but with the GDPR also increasingly in private sector, it becomes more and more important to be able to explain the inner workings of your machine learning algorithms. Customers have to some extent a right to an explanation why they were selected, and more and more internal and external regulators require it. With recent innovations in explainable AI (e.g. SHAP values) the old black box trope is no longer valid, but it can still take quite a bit of data wrangling and plot manipulation to get the explanations out of a model. This library aims to make this easy.

The goal is manyfold:

  • Make it easy for data scientists to quickly inspect the workings and

    performance of their model in a few lines of code

  • Make it possible for non data scientist stakeholders such as managers,

    directors, internal and external watchdogs to interactively inspect the inner workings of the model without having to depend on a data scientist to generate every plot and table

  • Make it easy to build an application that explains individual predictions

    of your model for customers that ask for an explanation

  • Explain the inner workings of the model to the people working with so

    that they gain understanding what the model does and doesn’t do. This is important so that they can gain an intuition for when the model is likely missing information and may have to be overruled.

The library includes:

  • Shap values (i.e. what is the contributions of each feature to each

    individual prediction?)

  • Permutation importances (how much does the model metric deteriorate

    when you shuffle a feature?)

  • Partial dependence plots (how does the model prediction change when

    you vary a single feature?

  • Shap interaction values (decompose the shap value into a direct effect

    an interaction effects)

  • For Random Forests: what is the prediction of each individual decision

    tree, and what is the path through each tree? (using dtreeviz)

  • Plus for classifiers: precision plots, confusion matrix, ROC AUC plot,

    PR AUC plot, etc

  • For regression models: goodness-of-fit plots, residual plots, etc.

The library is designed to be modular so that it should be easy to design your own interactive dashboards with plotly dash, with most of the work of calculating and formatting data, and rendering plots and tables handled by explainerdashboard, so that you can focus on the layout, logic of the interactions, and project specific textual explanations of the dashboard. (i.e. design it so that it will be interpretable for business users in your organization, not just data scientists)

Alternatively, there is a built-in standard dashboard with pre-built tabs that you can select individually.

A deployed example can be found at http://titanicexplainer.herokuapp.com

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

explainerdashboard-0.2.3.2.tar.gz (312.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

explainerdashboard-0.2.3.2-py3-none-any.whl (328.7 kB view details)

Uploaded Python 3

File details

Details for the file explainerdashboard-0.2.3.2.tar.gz.

File metadata

  • Download URL: explainerdashboard-0.2.3.2.tar.gz
  • Upload date:
  • Size: 312.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5

File hashes

Hashes for explainerdashboard-0.2.3.2.tar.gz
Algorithm Hash digest
SHA256 25975f98bf14e5548dd41c68caa6327c2951a8425a2a09be4e9d51e4ea098c2a
MD5 ef24c3932740e8c06525cadbbba5035c
BLAKE2b-256 c6fa3b8d3973492de4a1dcc712828c6d4e99a1e8e0474a9f2dc836db318feb77

See more details on using hashes here.

File details

Details for the file explainerdashboard-0.2.3.2-py3-none-any.whl.

File metadata

  • Download URL: explainerdashboard-0.2.3.2-py3-none-any.whl
  • Upload date:
  • Size: 328.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5

File hashes

Hashes for explainerdashboard-0.2.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a2c2e844a2dd0069b2c0809680712e86042d926d2b347ee207c033a343414d2e
MD5 498e01679617a2ea7b02c2c1fba949a6
BLAKE2b-256 a9a1a63d280cd9dcbd9a969f7fee0b0260ac201a6ecc47c746ee00c0246b8ede

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page