Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
A

alibi

> 编程语言
Open source

Algorithms for explaining machine learning models

2.6K stars0 likes1 views
WebsiteGitHub

About

Algorithms for explaining machine learning models


Alibi is a source-available Python library aimed at machine learning model inspection and interpretation. The focus of the library is to provide high-quality implementations of black-box, white-box, local and global explanation methods for classification and regression models.

  • Documentation

If you're interested in outlier detection, concept drift or adversarial instance detection, check out our sister project alibi-detect.


Anchor explanations for images

    </a>
</td>
<td width="50%">
    <a href="https://docs.seldon.io/projects/alibi/en/stable/examples/integrated_gradients_imdb.html">
        <br>
        <b>Integrated Gradients for text</b>
        <br>
        <br>
        
    </a>
</td>

Counterfactual examples

    </a>
</td>
<td width="50%">
    <a href="https://docs.seldon.io/projects/alibi/en/stable/methods/ALE.html">
        <br>
        <b>Accumulated Local Effects</b>
        <br>
        <br>
        
    </a>
</td>

Table of Contents

  • Installation and Usage
  • Supported Methods
    • Model Explanations
    • Model Confidence
    • Prototypes
    • References and Examples
  • Citations

Installation and Usage

Alibi can be installed from:

  • PyPI or GitHub source (with pip)
  • Anaconda (with conda/mamba)

With pip

  • Alibi can be installed from PyPI:

    bash
    pip install alibi
  • Alternatively, the development version can be installed:

    bash
    pip install git+https://github.com/SeldonIO/alibi.git 
  • To take advantage of distributed computation of explanations, install alibi with ray:

    bash
    pip install alibi[ray]
  • For SHAP support, install alibi as follows:

    bash
    pip install alibi[shap]

With conda

To install from conda-forge it is recommended to use mamba, which can be installed to the base conda enviroment with:

bash
conda install mamba -n base -c conda-forge
  • For the standard Alibi install:

    bash
    mamba install -c conda-forge alibi
  • For distributed computing support:

    bash
    mamba install -c conda-forge alibi ray
  • For SHAP support:

    bash
    mamba install -c conda-forge alibi shap

Usage

The alibi explanation API takes inspiration from scikit-learn, consisting of distinct initialize, fit and explain steps. We will use the AnchorTabular explainer to illustrate the API:

python
from alibi.explainers import AnchorTabular

# initialize and fit explainer by passing a prediction function and any other required arguments
explainer = AnchorTabular(predict_fn, feature_names=feature_names, category_map=category_map)
explainer.fit(X_train)

# explain an instance
explanation = explainer.explain(x)

The explanation returned is an Explanation object with attributes meta and data. meta is a dictionary containing the explainer metadata and any hyperparameters and data is a dictionary containing everything related to the computed explanation. For example, for the Anchor algorithm the explanation can be accessed via explanation.data['anchor'] (or explanation.anchor). The exact details of available fields varies from method to method so we encourage the reader to become familiar with the types of methods supported.

Supported Methods

The following tables summarize the possible use cases for each method.

Model Explanations

Method Models Explanations Classification Regression Tabular Text Images Categorical features Train set required Distributed
ALE BB global ✔ ✔ ✔
Partial Dependence BB WB global ✔ ✔ ✔ ✔
PD Variance BB WB global ✔ ✔ ✔ ✔
Permutation Importance BB global ✔ ✔ ✔ ✔
Anchors BB local ✔ ✔ ✔ ✔ ✔ For Tabular
CEM BB* TF/Keras local ✔ ✔ ✔ Optional
Counterfactuals BB* TF/Keras local ✔ ✔ ✔ No
Prototype Counterfactuals BB* TF/Keras local ✔ ✔ ✔ ✔ Optional
Counterfactuals with RL BB local ✔ ✔ ✔ ✔ ✔
Integrated Gradients TF/Keras local ✔ ✔ ✔ ✔ ✔ ✔ Optional
Kernel SHAP BB local

global
✔ ✔ ✔ ✔ ✔ ✔
Tree SHAP WB local

global
✔ ✔ ✔ ✔ Optional
Similarity explanations WB local ✔ ✔ ✔ ✔ ✔ ✔ ✔

Model Confidence

These algorithms provide instance-specific scores measuring the model confidence for making a particular prediction.

Method Models Classification Regression Tabular Text Images Categorical Features Train set required
Trust Scores BB ✔ ✔ ✔(1) ✔(2) Yes
Linearity Measure BB ✔ ✔ ✔ ✔ Optional

Key:

  • BB - black-box (only require a prediction function)
  • BB* - black-box but assume model is differentiable
  • WB - requires white-box model access. There may be limitations on models supported
  • TF/Keras - TensorFlow models via the Keras API
  • Local - instance specific explanation, why was this prediction made?
  • Global - explains the model with respect to a set of instances
  • (1) - depending on model
  • (2) - may require dimensionality reduction

Prototypes

These algorithms provide a distilled view of the dataset and help construct a 1-KNN interpretable classifier.

Method Classification Regression Tabular Text Images Categorical Features Train set labels
ProtoSelect ✔ ✔ ✔ ✔ ✔ Optional

References and Examples

  • Accumulated Local Effects (ALE, Apley and Zhu, 2016)

    • Documentation
    • Examples: California housing dataset, Iris dataset
  • Partial Dependence (J.H. Friedman, 2001)

    • Documentation
    • Examples: Bike rental
  • Partial Dependence Variance(Greenwell et al., 2018)

    • Documentation
    • Examples: Friedman’s regression problem
  • Permutation Importance(Breiman, 2001; Fisher et al., 2018)

    • Documentation
    • Examples: [Who'

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Pythoncounterfactualexplanationsinterpretabilitymachine-learning

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言