Skip to main content

A unified approach to explain the output of any machine learning model.

Project description


PyPI Conda License Tests Binder Documentation Status Downloads PyPI pyversions

SHAP (SHapley Additive exPlanations) is a game theoretic approach to explain the output of any machine learning model. It connects optimal credit allocation with local explanations using the classic Shapley values from game theory and their related extensions (see papers for details and citations).

Install

SHAP can be installed from either PyPI or conda-forge:

pip install shap
or
conda install -c conda-forge shap

Tree ensemble example (XGBoost/LightGBM/CatBoost/scikit-learn/pyspark models)

While SHAP can explain the output of any machine learning model, we have developed a high-speed exact algorithm for tree ensemble methods (see our Nature MI paper). Fast C++ implementations are supported for XGBoost, LightGBM, CatBoost, scikit-learn and pyspark tree models:

import xgboost
import shap

# train an XGBoost model
X, y = shap.datasets.california()
model = xgboost.XGBRegressor().fit(X, y)

# explain the model's predictions using SHAP
# (same syntax works for LightGBM, CatBoost, scikit-learn, transformers, Spark, etc.)
explainer = shap.Explainer(model)
shap_values = explainer(X)

# visualize the first prediction's explanation
shap.plots.waterfall(shap_values[0])

The above explanation shows features each contributing to push the model output from the base value (the average model output over the training dataset we passed) to the model output. Features pushing the prediction higher are shown in red, those pushing the prediction lower are in blue. Another way to visualize the same explanation is to use a force plot (these are introduced in our Nature BME paper):

# visualize the first prediction's explanation with a force plot
shap.plots.force(shap_values[0])

If we take many force plot explanations such as the one shown above, rotate them 90 degrees, and then stack them horizontally, we can see explanations for an entire dataset (in the notebook this plot is interactive):

# visualize all the training set predictions
shap.plots.force(shap_values[:500])

To understand how a single feature effects the output of the model we can plot the SHAP value of that feature vs. the value of the feature for all the examples in a dataset. Since SHAP values represent a feature's responsibility for a change in the model output, the plot below represents the change in predicted house price as the latitude changes. Vertical dispersion at a single value of latitude represents interaction effects with other features. To help reveal these interactions we can color by another feature. If we pass the whole explanation tensor to the color argument the scatter plot will pick the best feature to color by. In this case it picks longitude.

# create a dependence scatter plot to show the effect of a single feature across the whole dataset
shap.plots.scatter(shap_values[:, "Latitude"], color=shap_values)

To get an overview of which features are most important for a model we can plot the SHAP values of every feature for every sample. The plot below sorts features by the sum of SHAP value magnitudes over all samples, and uses SHAP values to show the distribution of the impacts each feature has on the model output. The color represents the feature value (red high, blue low). This reveals for example that higher median incomes improves the predicted home price.

# summarize the effects of all the features
shap.plots.beeswarm(shap_values)

We can also just take the mean absolute value of the SHAP values for each feature to get a standard bar plot (produces stacked bars for multi-class outputs):

shap.plots.bar(shap_values)

Natural language example (transformers)

SHAP has specific support for natural language models like those in the Hugging Face transformers library. By adding coalitional rules to traditional Shapley values we can form games that explain large modern NLP model using very few function evaluations. Using this functionality is as simple as passing a supported transformers pipeline to SHAP:

import transformers
import shap

# load a transformers pipeline model
model = transformers.pipeline('sentiment-analysis', return_all_scores=True)

# explain the model on two sample inputs
explainer = shap.Explainer(model)
shap_values = explainer(["What a great movie! ...if you have no taste."])

# visualize the first prediction's explanation for the POSITIVE output class
shap.plots.text(shap_values[0, :, "POSITIVE"])

Deep learning example with DeepExplainer (TensorFlow/Keras models)

Deep SHAP is a high-speed approximation algorithm for SHAP values in deep learning models that builds on a connection with DeepLIFT described in the SHAP NIPS paper. The implementation here differs from the original DeepLIFT by using a distribution of background samples instead of a single reference value, and using Shapley equations to linearize components such as max, softmax, products, divisions, etc. Note that some of these enhancements have also been since integrated into DeepLIFT. TensorFlow models and Keras models using the TensorFlow backend are supported (there is also preliminary support for PyTorch):

# ...include code from https://github.com/keras-team/keras/blob/master/examples/demo_mnist_convnet.py

import shap
import numpy as np

# select a set of background examples to take an expectation over
background = x_train[np.random.choice(x_train.shape[0], 100, replace=False)]

# explain predictions of the model on four images
e = shap.DeepExplainer(model, background)
# ...or pass tensors directly
# e = shap.DeepExplainer((model.layers[0].input, model.layers[-1].output), background)
shap_values = e.shap_values(x_test[1:5])

# plot the feature attributions
shap.image_plot(shap_values, -x_test[1:5])

The plot above explains ten outputs (digits 0-9) for four different images. Red pixels increase the model's output while blue pixels decrease the output. The input images are shown on the left, and as nearly transparent grayscale backings behind each of the explanations. The sum of the SHAP values equals the difference between the expected model output (averaged over the background dataset) and the current model output. Note that for the 'zero' image the blank middle is important, while for the 'four' image the lack of a connection on top makes it a four instead of a nine.

Deep learning example with GradientExplainer (TensorFlow/Keras/PyTorch models)

Expected gradients combines ideas from Integrated Gradients, SHAP, and SmoothGrad into a single expected value equation. This allows an entire dataset to be used as the background distribution (as opposed to a single reference value) and allows local smoothing. If we approximate the model with a linear function between each background data sample and the current input to be explained, and we assume the input features are independent then expected gradients will compute approximate SHAP values. In the example below we have explained how the 7th intermediate layer of the VGG16 ImageNet model impacts the output probabilities.

from keras.applications.vgg16 import VGG16
from keras.applications.vgg16 import preprocess_input
import keras.backend as K
import numpy as np
import json
import shap

# load pre-trained model and choose two images to explain
model = VGG16(weights='imagenet', include_top=True)
X,y = shap.datasets.imagenet50()
to_explain = X[[39,41]]

# load the ImageNet class names
url = "https://s3.amazonaws.com/deep-learning-models/image-models/imagenet_class_index.json"
fname = shap.datasets.cache(url)
with open(fname) as f:
    class_names = json.load(f)

# explain how the input to the 7th layer of the model explains the top two classes
def map2layer(x, layer):
    feed_dict = dict(zip([model.layers[0].input], [preprocess_input(x.copy())]))
    return K.get_session().run(model.layers[layer].input, feed_dict)
e = shap.GradientExplainer(
    (model.layers[7].input, model.layers[-1].output),
    map2layer(X, 7),
    local_smoothing=0 # std dev of smoothing noise
)
shap_values,indexes = e.shap_values(map2layer(to_explain, 7), ranked_outputs=2)

# get the names for the classes
index_names = np.vectorize(lambda x: class_names[str(x)][1])(indexes)

# plot the explanations
shap.image_plot(shap_values, to_explain, index_names)

Predictions for two input images are explained in the plot above. Red pixels represent positive SHAP values that increase the probability of the class, while blue pixels represent negative SHAP values the reduce the probability of the class. By using ranked_outputs=2 we explain only the two most likely classes for each input (this spares us from explaining all 1,000 classes).

Model agnostic example with KernelExplainer (explains any function)

Kernel SHAP uses a specially-weighted local linear regression to estimate SHAP values for any model. Below is a simple example for explaining a multi-class SVM on the classic iris dataset.

import sklearn
import shap
from sklearn.model_selection import train_test_split

# print the JS visualization code to the notebook
shap.initjs()

# train a SVM classifier
X_train,X_test,Y_train,Y_test = train_test_split(*shap.datasets.iris(), test_size=0.2, random_state=0)
svm = sklearn.svm.SVC(kernel='rbf', probability=True)
svm.fit(X_train, Y_train)

# use Kernel SHAP to explain test set predictions
explainer = shap.KernelExplainer(svm.predict_proba, X_train, link="logit")
shap_values = explainer.shap_values(X_test, nsamples=100)

# plot the SHAP values for the Setosa output of the first instance
shap.force_plot(explainer.expected_value[0], shap_values[0][0,:], X_test.iloc[0,:], link="logit")

The above explanation shows four features each contributing to push the model output from the base value (the average model output over the training dataset we passed) towards zero. If there were any features pushing the class label higher they would be shown in red.

If we take many explanations such as the one shown above, rotate them 90 degrees, and then stack them horizontally, we can see explanations for an entire dataset. This is exactly what we do below for all the examples in the iris test set:

# plot the SHAP values for the Setosa output of all instances
shap.force_plot(explainer.expected_value[0], shap_values[0], X_test, link="logit")

SHAP Interaction Values

SHAP interaction values are a generalization of SHAP values to higher order interactions. Fast exact computation of pairwise interactions are implemented for tree models with shap.TreeExplainer(model).shap_interaction_values(X). This returns a matrix for every prediction, where the main effects are on the diagonal and the interaction effects are off-diagonal. These values often reveal interesting hidden relationships, such as how the increased risk of death peaks for men at age 60 (see the NHANES notebook for details):

Sample notebooks

The notebooks below demonstrate different use cases for SHAP. Look inside the notebooks directory of the repository if you want to try playing with the original notebooks yourself.

TreeExplainer

An implementation of Tree SHAP, a fast and exact algorithm to compute SHAP values for trees and ensembles of trees.

DeepExplainer

An implementation of Deep SHAP, a faster (but only approximate) algorithm to compute SHAP values for deep learning models that is based on connections between SHAP and the DeepLIFT algorithm.

GradientExplainer

An implementation of expected gradients to approximate SHAP values for deep learning models. It is based on connections between SHAP and the Integrated Gradients algorithm. GradientExplainer is slower than DeepExplainer and makes different approximation assumptions.

LinearExplainer

For a linear model with independent features we can analytically compute the exact SHAP values. We can also account for feature correlation if we are willing to estimate the feature covariance matrix. LinearExplainer supports both of these options.

KernelExplainer

An implementation of Kernel SHAP, a model agnostic method to estimate SHAP values for any model. Because it makes no assumptions about the model type, KernelExplainer is slower than the other model type specific algorithms.

  • Census income classification with scikit-learn - Using the standard adult census income dataset, this notebook trains a k-nearest neighbors classifier using scikit-learn and then explains predictions using shap.

  • ImageNet VGG16 Model with Keras - Explain the classic VGG16 convolutional neural network's predictions for an image. This works by applying the model agnostic Kernel SHAP method to a super-pixel segmented image.

  • Iris classification - A basic demonstration using the popular iris species dataset. It explains predictions from six different models in scikit-learn using shap.

Documentation notebooks

These notebooks comprehensively demonstrate how to use specific functions and objects.

Methods Unified by SHAP

  1. LIME: Ribeiro, Marco Tulio, Sameer Singh, and Carlos Guestrin. "Why should i trust you?: Explaining the predictions of any classifier." Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 2016.

  2. Shapley sampling values: Strumbelj, Erik, and Igor Kononenko. "Explaining prediction models and individual predictions with feature contributions." Knowledge and information systems 41.3 (2014): 647-665.

  3. DeepLIFT: Shrikumar, Avanti, Peyton Greenside, and Anshul Kundaje. "Learning important features through propagating activation differences." arXiv preprint arXiv:1704.02685 (2017).

  4. QII: Datta, Anupam, Shayak Sen, and Yair Zick. "Algorithmic transparency via quantitative input influence: Theory and experiments with learning systems." Security and Privacy (SP), 2016 IEEE Symposium on. IEEE, 2016.

  5. Layer-wise relevance propagation: Bach, Sebastian, et al. "On pixel-wise explanations for non-linear classifier decisions by layer-wise relevance propagation." PloS one 10.7 (2015): e0130140.

  6. Shapley regression values: Lipovetsky, Stan, and Michael Conklin. "Analysis of regression in game theory approach." Applied Stochastic Models in Business and Industry 17.4 (2001): 319-330.

  7. Tree interpreter: Saabas, Ando. Interpreting random forests. http://blog.datadive.net/interpreting-random-forests/

Citations

The algorithms and visualizations used in this package came primarily out of research in Su-In Lee's lab at the University of Washington, and Microsoft Research. If you use SHAP in your research we would appreciate a citation to the appropriate paper(s):

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

shap-0.47.1.tar.gz (2.5 MB view details)

Uploaded Source

Built Distributions

shap-0.47.1-cp312-cp312-win_amd64.whl (490.6 kB view details)

Uploaded CPython 3.12 Windows x86-64

shap-0.47.1-cp312-cp312-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.2+ x86-64

shap-0.47.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (967.3 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

shap-0.47.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (957.4 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

shap-0.47.1-cp312-cp312-macosx_11_0_arm64.whl (492.3 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

shap-0.47.1-cp312-cp312-macosx_10_9_x86_64.whl (500.3 kB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

shap-0.47.1-cp311-cp311-win_amd64.whl (489.8 kB view details)

Uploaded CPython 3.11 Windows x86-64

shap-0.47.1-cp311-cp311-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.2+ x86-64

shap-0.47.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (972.6 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

shap-0.47.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (965.1 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

shap-0.47.1-cp311-cp311-macosx_11_0_arm64.whl (491.8 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

shap-0.47.1-cp311-cp311-macosx_10_9_x86_64.whl (498.9 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

shap-0.47.1-cp310-cp310-win_amd64.whl (489.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

shap-0.47.1-cp310-cp310-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.2+ x86-64

shap-0.47.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (937.7 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

shap-0.47.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (930.8 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

shap-0.47.1-cp310-cp310-macosx_11_0_arm64.whl (491.9 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

shap-0.47.1-cp310-cp310-macosx_10_9_x86_64.whl (499.0 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

shap-0.47.1-cp39-cp39-win_amd64.whl (490.2 kB view details)

Uploaded CPython 3.9 Windows x86-64

shap-0.47.1-cp39-cp39-musllinux_1_2_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.2+ x86-64

shap-0.47.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (939.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

shap-0.47.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (933.5 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

shap-0.47.1-cp39-cp39-macosx_11_0_arm64.whl (492.5 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

shap-0.47.1-cp39-cp39-macosx_10_9_x86_64.whl (499.6 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

File details

Details for the file shap-0.47.1.tar.gz.

File metadata

  • Download URL: shap-0.47.1.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shap-0.47.1.tar.gz
Algorithm Hash digest
SHA256 292dc548c53fb0438fddacea793eb3482936621ad50a65529630684155625dce
MD5 fea3eaf411a111c33effb97b1f5ab267
BLAKE2b-256 337dffcdb3f245dba816e3c1de87549f1fc3067346c95219e4fcd91fc4bc7962

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1.tar.gz:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: shap-0.47.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 490.6 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shap-0.47.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4dd5a497dba744e1190fbc1631603f5d8441eabde0bf882b9e6aefb9f083812d
MD5 c03b7f1c4957e053ab09d321669b4c91
BLAKE2b-256 1cd883094be435583d2ed8d50fe2280497883b767fe19350bfc0165f4a43a053

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp312-cp312-win_amd64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 55709c08d163b74e9de4b201e8fe37362270914cef43e89c75d58728f1c5f0b6
MD5 684eb62d3d4d0b450552c96ca74d46be
BLAKE2b-256 43febe106ba63beea861faee8a2ae7a6c18704a44784e0f6466a9ef18d7cf0b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c0a36cdc8c681901491714d9cea9f98af4c2da6328394382195386f99d520b5e
MD5 f82c907699703098e1c4679677017c5c
BLAKE2b-256 4133ca5f9dd2e2b6ddf88892f787cfb8fb3ab539488901428a189c14d1ef03b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3f67da47d287dcd861dd664d92d595c8a0d5c89cba895e37c21b76ca905edc72
MD5 473a41cf06f268745cfeb22d510500c6
BLAKE2b-256 01d8eec1414b04a21cec3b27834c505de8be861a49eb583550f653d5a4848f26

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f876a4eb06666555f5b83edca3c900ca7c3a8d5ebf2deef330b41a62f7dda7f
MD5 8293a8696da0c3167967a65320a809e1
BLAKE2b-256 8a4f071cc7b54566765269d4c73a2de8b64b43a1b05f978b66d9a04a8b73ace0

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 961fd025aa5d53b6df947ab0e2d6b1f98d206bac36ed65c4c51f74921b7dadbc
MD5 4059b50d647dd7311615ff425775d9b9
BLAKE2b-256 a7382122dc1ea73b8e152d5547f547a9574f76dc298351c06360d1e0da97f5f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp312-cp312-macosx_10_9_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: shap-0.47.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 489.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shap-0.47.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 673904d6219b1ef65f1d2fb311357de4e56d0fdeb062a6853ba11d57f4305ef2
MD5 94a23104bfb6bb2dc70dff1fe7614955
BLAKE2b-256 7228d4dcf1b06761c916f642e0fe1293ed8081ce32991b32eada2212f639433c

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp311-cp311-win_amd64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4789ef942e7f57aa9810497c1fdd0fba0011a9fce91010802ff39cfac4bd8921
MD5 8c2450a98117eb2c21403736e7f8e874
BLAKE2b-256 d7a373036cf72cce268ad4d338d648e3ec1e0f035fe047a48bb634f114f0167a

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a8acf428a8af28576d58770bdd81bf33bb82aaa00495f821e5dbf4b0d1028d74
MD5 9e5a2d21a59b905f5f2bedadc59fb651
BLAKE2b-256 2ac2aa91dbb9cc8eee20f5bd245fd8fe27fc45fba786c3e04d35ed510f111b17

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e5b9b39ef79a2e683ff11c54191aeb75ef4553e29ff4f3d4219a2bd8ddaf071b
MD5 c0a8f9787e81d88a1342fefb75534c65
BLAKE2b-256 97b1073fe5ea0d3aa78eeb0fde56bb4f0ccf403d41c1f8661ef37607c0270299

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3275d45fafced93978ffeee5aeb035637e54646df5d86624b7d3c8317c77e5f7
MD5 c5f5e8111ff39e9de5e6091ead223678
BLAKE2b-256 58885a6649b5b5336489d3d87246ac95420aff2bb30a9f90c8875c84a82740c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6afca56a634190133710f65c6618c942083d3533e6d2463bcd65317e12587c4d
MD5 50f7cc276a2818af64b611d8efa08b90
BLAKE2b-256 c365ccad788e04eff97de1afb0e3c46fedbb0690bfc1366aa0291bc6454b3550

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: shap-0.47.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 489.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shap-0.47.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 61d4fd953805961d212f6c5fd79c713c24cd24769e0cbc1926868b26c0183196
MD5 965468d96011e35ed1ef4ac9db08999a
BLAKE2b-256 28249aad1bc4487e812482786d6ae4eb7bf0015b26bb8fd08306e17762696940

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp310-cp310-win_amd64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ed48a54fd3f9faa722ecf912453f5d833cb4289fe2360d5d6c5a3498bcb275b1
MD5 7cca5a736cea521f87a016e98de0982d
BLAKE2b-256 a65f5a014ad44b90d45c2c6f2826df0bf5260b88a501ba89af8f3e94727a4139

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 224453a8fd089c1866aba90856ed14ac125a08a1c5ae8a4f40c4c1192a48843c
MD5 da83f7714bc091dade82e88df320031f
BLAKE2b-256 965d858bd4ee7fc655658e207b31e4e601bb4b609e344615696879f715c7485d

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 05d8082ffed7de29bd1c8aec9fd35432145f8f817b3aa90fa0a43c7de1b3078c
MD5 1f2d4853cfe9a8fc5e0599c586f6debd
BLAKE2b-256 9da0e75cc918430896febc3d4548af7511afc375a51288fd0cb22f64fa4a26f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7995d7311457032c990149002bb32224b0c0fb674ade264f348b415b4509fd39
MD5 94d777324f1c01c13408cd878f102ec8
BLAKE2b-256 14a26fe9564710a5c7c7749c2e1a71e65ddac934fde9ed2e540ea57179a10b21

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 65d68e714b1781808db1018b81dbec2745eba70d6ea3575c1e21583a941a5cf9
MD5 8c1bdf65c768cc70cf95ba170f4ba9e7
BLAKE2b-256 d83d9431cfdc2fbe8a742f1bb4f26e7641f6423eb608f291962ef11c237a2a11

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: shap-0.47.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 490.2 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shap-0.47.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8c4d4ad520ba65e8e44a3c77a731b99415ead11355cffadb59ec6758deaead4c
MD5 fdd5565417d6c3599f41799293cce4b0
BLAKE2b-256 5cceda19981f50c8be685a43375a2c6ea114887f950ae33295a9826298f92739

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp39-cp39-win_amd64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 763586db22aef62b01c8fb25fd9ee75e26a6d49279d10312e85f50b7d776ce6a
MD5 cf3fcc14e82e6a30bb772c3fc6f3cfe0
BLAKE2b-256 2550113436ff08eb5228cb83a84a440b70bd799dbdb3a164dbb2136bd3391923

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 05a9cafd2c9ffb709086b5012fbc8e2b7bc2bca1eb477a5608db66bfb832f9b0
MD5 1d2da6874be608bdbcd82479058b2b8b
BLAKE2b-256 8220da198def27b7d828e6d49ce1b16edc4df310530f848b2cb2d7cfbaf13a93

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b3db5eeb983df9ab7e9e67a79c2658739fdfcfa191e6227dee11eebb34e7e18e
MD5 0e8b7e6f72a9e9a1aefdacf9b754d2a5
BLAKE2b-256 b8aedc5940427555ddfd55ad2adb5b0ebc9bc32cc0c0bd72b492c402bf8bb213

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6f713b6cbd601b94e5b450aa3895be09ad077a44ca7ad405da8cef59b5d570e0
MD5 77eccaf551ef92e14aee65ace79236de
BLAKE2b-256 413bca94cb0d911c943702e2427269ef4d9907901213defd8c43b4f02904e6c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shap-0.47.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for shap-0.47.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d891d055a92fb5c14f91b296b407b41a51efd99689faff165a9e862f2053173c
MD5 f61d3e74e63cd6be4bd2223f9fc4e48a
BLAKE2b-256 12340449d151f7854f6dd1f817688cd01c421e1a06ae15c64a47d272f7a58fcc

See more details on using hashes here.

Provenance

The following attestation bundles were made for shap-0.47.1-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: build_wheels.yml on shap/shap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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