SHAP Values Explained: How to Interpret Any Machine Learning Model
Quick Answer: SHAP values (SHapley Additive exPlanations) measure how much each feature pushes a single prediction above or below the model's average prediction. They come from Shapley values in cooperative game theory. They are the most widely used method for explaining black-box models such as XGBoost, random forests, and neural networks.
Accuracy alone no longer earns trust. Stakeholders, auditors, and regulators want to know why a model rejected a loan or flagged a transaction. SHAP values answer that question with a mathematically grounded breakdown of every prediction. This guide explains how they work, how to read the most common SHAP plots, and where the method can mislead you.
Key Takeaways
- SHAP values attribute a prediction to individual features in a fair, additive way.
- The base value plus all feature contributions always equals the model output.
- TreeSHAP computes exact SHAP values quickly for tree-based models.
- Global feature importance comes from averaging absolute SHAP values.
- SHAP explains the model, not the real world, so it does not prove causation.
What Are SHAP Values?
Scott Lundberg and Su-In Lee introduced SHAP in 2017. It builds on Shapley values, a concept Lloyd Shapley developed in 1953 to divide a payout fairly among players in a cooperative game.
In machine learning, the game maps onto a prediction like this:
- The game is a single prediction.
- The players are the features.
- The payout is the difference between that prediction and the average prediction.
SHAP values distribute that difference among features based on their marginal contribution across every possible combination of features.
The core equation, in words: the model's prediction equals the base value plus the sum of the SHAP values for every feature. The base value is the average model output over the background dataset.
A Simple Example
Suppose a house price model has an average prediction of ₹60 lakh. For one specific house, it predicts ₹75 lakh. SHAP might explain the ₹15 lakh difference like this:
- Location: +₹10 lakh
- Square footage: +₹7 lakh
- Age of property: −₹3 lakh
- Number of bathrooms: +₹1 lakh
Add them up and you get exactly ₹15 lakh. That additivity is what makes SHAP values so intuitive for business audiences.
Why SHAP Beats Traditional Feature Importance
Built-in feature importance from tree models, such as gain or split count, has well-known flaws:
- It can be biased toward high-cardinality features.
- It gives only a global view.
- It does not show direction.
SHAP values fix these problems with three theoretical guarantees:
- Local accuracy: contributions always sum to the actual prediction.
- Missingness: a feature that is absent receives zero attribution.
- Consistency: if a model changes so a feature matters more, that feature's SHAP value never decreases.
The SHAP authors showed that no other additive attribution method satisfies all three properties at once. This is why SHAP became the industry standard for explainable AI.
Types of SHAP Explainers
TreeSHAP
TreeSHAP is designed for XGBoost, LightGBM, CatBoost, and scikit-learn tree ensembles. It computes exact SHAP values in polynomial time, which makes it fast enough for millions of rows.
KernelSHAP
KernelSHAP is a model-agnostic method. It works with any model by sampling feature combinations and fitting a weighted linear model. It is flexible but slow, so use a small background sample.
DeepSHAP and GradientSHAP
These are built for deep learning models in TensorFlow and PyTorch. They approximate SHAP values using gradients and reference inputs.
LinearSHAP
LinearSHAP is for linear and logistic regression. It is exact and nearly instant, and it can account for feature correlations when configured correctly.
How to Read the Most Important SHAP Plots
Summary Plot (Beeswarm)
Each dot is one row:
- The horizontal position shows the SHAP value.
- The color shows the feature value, from low (blue) to high (red).
- Features are sorted by overall importance.
If red dots cluster on the right, high values of that feature increase the prediction.
Bar Plot
The bar plot shows the mean absolute SHAP values for each feature. This is the cleanest way to present global feature importance to non-technical stakeholders.
Waterfall Plot
The waterfall plot explains a single prediction. It starts at the base value and adds each feature's contribution step by step until it reaches the final output. It is ideal for customer-facing explanations and case reviews.
Dependence Plot
The dependence plot shows a feature's value against its SHAP values. It reveals non-linear relationships. Through coloring, it can also show interactions with a second feature.
Force Plot
The force plot is a compact horizontal view of one prediction. Features pushing the output higher are shown in red, and those pushing it lower are shown in blue.
Step-by-Step: Using SHAP Values in a Real Project
- Train and validate your model as usual.
- Choose the matching explainer, such as TreeExplainer for gradient boosting.
- Select a representative background dataset, typically 100 to 1,000 rows.
- Compute SHAP values on your validation or test data.
- Review the bar and beeswarm plots to confirm the model uses sensible features.
- Investigate surprising features, since they often reveal data leakage.
- Use waterfall plots to explain individual decisions to stakeholders.
Limitations You Must Know
SHAP values are powerful, but they are often misread. Keep these limitations in mind:
- Correlated features: when two features carry similar information, credit can be split between them unpredictably. Interventional and observational SHAP can give different answers.
- Not causal: a high SHAP value means the model relies on a feature. It does not mean that changing the feature will change the real-world outcome.
- Background data matters: a different reference dataset shifts the base value and all attributions.
- Computation cost: KernelSHAP on large datasets can take hours.
- Output scale: for classifiers, SHAP values are often in log-odds rather than probability, which confuses readers.
SHAP vs LIME
LIME builds a simple local surrogate model around a single prediction. It is fast and flexible, but its explanations can change noticeably between runs.
SHAP values are more stable and come with theoretical guarantees, though they can be slower for non-tree models. For most tabular projects, SHAP is the preferred choice.
Frequently Asked Questions
Can SHAP values be negative?
Yes. A negative value means the feature pushed the prediction below the base value. A positive value means it pushed the prediction above.
Are SHAP values the same as feature importance?
Not exactly. Feature importance is global, while SHAP values are local. However, averaging their absolute values gives a reliable global importance ranking.
Do SHAP values work for deep learning?
Yes. DeepSHAP and GradientSHAP support neural networks, including image and text models.
Is SHAP required for regulatory compliance?
No law mandates SHAP specifically. However, many banks and insurers use it to support explainability requirements for automated decisions.
Final Thoughts
SHAP values turn black-box models into transparent decision systems. They help you debug features, catch leakage, and explain predictions in plain language.
To use them well:
- Pick the right explainer for your model.
- Choose a thoughtful background dataset.
- Remember that SHAP describes your model's logic, not the laws of the world.
With that mindset, SHAP values become one of the most valuable tools in your data science workflow.


