Skip to main content

This extension aims to expand InterpretML by integrating probabilistic models while leveraging the existing explanation mechanisms provided by the library. By doing so, we enable users to analyze uncertainty, quantify probabilistic predictions, and gain deeper insights into model behavior beyond point estimates.

Project description

Extending InterpretML

As it Github page says:

"InterpretML is an open-source package that incorporates state-of-the-art machine learning interpretability techniques under one roof. With this package, you can train interpretable glassbox models and explain blackbox systems. InterpretML helps you understand your model's global behavior, or understand the reasons behind individual predictions."

Installation

The easiest way to install this extension of InterpretML is by following these steps:

  1. Create a new conda environment:
conda create --name {env_name} python=3.9
  1. Activate the environment:
conda activate {env_name}
  1. Navigate to the root directory and install:
pip install ./interpret/python/interpret-core

While you can choose not to use conda, it is recommended to avoid potential conflicts with dependencies.

Objective of this Extension

Currently, InterpretML implements several interpretable models, such as Explainable Boosting Machines (EBMs), decision trees, and linear models, along with various explanation techniques for blackbox models.

This extension aims to expand InterpretML by integrating probabilistic models while leveraging the existing explanation mechanisms provided by the library. By doing so, we enable users to analyze uncertainty, quantify probabilistic predictions, and gain deeper insights into model behavior beyond point estimates.

How InterpretML visualize glassbox models?

InterpretML uses two main ways to explain these type of models:

  • Global Explanations: These explanations provide insights into how a model makes predictions across the entire dataset.

Image


  • Local Explanations: These explanations focus on individual predictions, showing why the model made a specific decision for a given instance.

Image


The main goal will be to use both global and local visualizations for different models that InterpretML does not currently implement.

Adding new models

The new models incorporated in this extension are:

  • Naive Bayes (Gaussian and Categorical): A simple yet powerful probabilistic model based on Bayes' theorem. It assumes feature independence, making it highly efficient for classification tasks.

  • Linear Discriminant Model: A classification model that finds the linear combination of features that best separates two or more classes. It is particularly useful for dimensionality reduction while preserving class separability.

  • TAN (Tree Augmented Naive Bayes): An extension of Naive Bayes that allows for dependencies between features using a tree structure, improving its expressiveness while maintaining efficiency.

  • Bayesian Network: A probabilistic graphical model that represents variables and their conditional dependencies via a directed acyclic graph (DAG). It is useful for modeling complex probabilistic relationships.

  • NAM (Neural Additive Model): A neural network-based approach that extends Generalized Additive Models (GAMs) by learning feature contributions in a flexible and interpretable manner.

These models will be integrated with InterpretML's existing explanation mechanisms, ensuring users can interpret their predictions using global and local explanations.

Project details


Download files

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

Source Distribution

interpret_extension-0.1.6.tar.gz (240.8 kB view details)

Uploaded Source

Built Distribution

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

interpret_extension-0.1.6-py3-none-any.whl (305.2 kB view details)

Uploaded Python 3

File details

Details for the file interpret_extension-0.1.6.tar.gz.

File metadata

  • Download URL: interpret_extension-0.1.6.tar.gz
  • Upload date:
  • Size: 240.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for interpret_extension-0.1.6.tar.gz
Algorithm Hash digest
SHA256 43ae970ad110d6d5da22f71adb554c2b37a6ffd190cefba32409c6be4e40b485
MD5 00cbd60308f40c0fe38b95d8cbd86b21
BLAKE2b-256 c02a8cfe576abbb92ee729660aee962f4d0c9cf0724e5144708a4caafb68f01d

See more details on using hashes here.

File details

Details for the file interpret_extension-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for interpret_extension-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 3b6012b32448d36bb686cd5805fc9311a575749748ad6ab77c2592e1a3488f41
MD5 50d323fedd08d435c8dfe8ac7e7aea5e
BLAKE2b-256 3ebb2cad183d87212a3f0932014d6f7661014a0ee44dd7f32b6b031db46e8a21

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