SHAP (SHapley Additive exPlanations)
SHAP (SHapley Additive exPlanations) est une méthode d’explicabilité basée sur la théorie des jeux qui attribue à chaque feature (variable d’entrée) une valeur de contribution à la prédiction d’un modèle de machine learning, en s’appuyant sur les valeurs de Shapley issues de la théorie des jeux coopératifs.
Concrètement, SHAP répond à la question : « Pourquoi mon modèle a-t-il prédit cette valeur pour cette observation ? » en décomposant la prédiction en contributions individuelles pour chaque variable. C’est la méthode d’explicabilité post-hoc la plus utilisée en production, et elle constitue un pilier des exigences de transparence imposées par l’AI Act européen.
- Nom complet
- SHapley Additive exPlanations
- Créateur
- Scott Lundberg & Su-In Lee (University of Washington / Microsoft Research)
- Publication
- NeurIPS 2017 (présentation orale)
- Type
- Méthode d’explicabilité post-hoc, model-agnostic
- Bibliothèque
shap(Python) Open Source Gratuit- Version actuelle
- 0.51.0 (4 mars 2026)
- Python requis
- ≥ 3.11 (depuis la v0.50.0)
- Licence
- MIT
- Installation
pip install shapouconda install -c conda-forge shap- Dépôt GitHub
- github.com/shap/shap
- Documentation
- shap.readthedocs.io
Origine : des valeurs de Shapley à SHAP
Pour comprendre SHAP, il faut remonter à 1953 et au mathématicien Lloyd Shapley. Dans le cadre de la théorie des jeux coopératifs, Shapley a proposé une méthode pour répartir équitablement le « gain » d’une coalition entre ses joueurs. L’idée : mesurer la contribution marginale de chaque joueur dans toutes les combinaisons possibles de joueurs, puis en faire la moyenne pondérée.
En 2017, Scott Lundberg et Su-In Lee ont transposé ce concept au machine learning dans leur article « A Unified Approach to Interpreting Model Predictions », présenté à NeurIPS. Leur intuition : considérer chaque feature d’un modèle comme un « joueur » et la prédiction comme le « gain » à répartir. SHAP était né.
L’apport majeur de Lundberg et Lee ne se limite pas à l’application des valeurs de Shapley au ML. Ils ont démontré que plusieurs méthodes d’explicabilité existantes (LIME, DeepLIFT, Layer-wise Relevance Propagation) appartiennent en réalité à une même classe de « méthodes d’attribution additive de features ». SHAP unifie ces approches sous un cadre théorique solide, avec des propriétés mathématiques garanties que les autres méthodes ne possèdent pas toutes.
Comment fonctionne SHAP
Le principe fondamental
SHAP décompose chaque prédiction individuelle en contributions par feature. Pour une observation donnée, la somme de toutes les valeurs SHAP est égale à la différence entre la prédiction du modèle pour cette observation et la prédiction moyenne sur l’ensemble du dataset (la « valeur de base »). C’est la propriété d’efficience (efficiency), héritée directement des valeurs de Shapley.
Prenons un exemple concret. Votre modèle de scoring crédit prédit un score de 750 pour un client. La moyenne des prédictions sur tout le dataset est de 650. SHAP vous explique que :
- Le revenu élevé du client contribue pour +60 points
- Son historique de remboursement contribue pour +45 points
- Son taux d’endettement contribue pour -15 points
- Son ancienneté contribue pour +10 points
Total des contributions : +100, soit exactement 750 – 650. Chaque feature reçoit une « part » juste et exhaustive de l’explication.
Propriétés mathématiques
Les valeurs SHAP héritent de quatre propriétés fondamentales des valeurs de Shapley qui les distinguent de toute autre méthode d’explicabilité :
Efficience (Efficiency). La somme des valeurs SHAP de toutes les features est exactement égale à la différence entre la prédiction et la valeur de base. Rien ne se perd, rien ne se crée. C’est une répartition complète du « budget » explicatif.
Symétrie (Symmetry). Si deux features contribuent de manière identique dans toutes les coalitions possibles, elles reçoivent la même valeur SHAP. Pas de favoritisme arbitraire.
Nullité (Dummy / Null Player). Une feature qui n’a aucun impact sur la prédiction, quelle que soit la coalition, reçoit une valeur SHAP de zéro. Les features inutiles ne « volent » pas de crédit aux features pertinentes.
Additivité (Additivity). Si un modèle combine deux sous-modèles (par exemple dans un random forest), les valeurs SHAP du modèle combiné sont la somme des valeurs SHAP de chaque sous-modèle. Cette propriété permet de décomposer des ensembles complexes.
Le calcul en pratique
Le calcul exact des valeurs de Shapley est NP-hard en théorie : il nécessite d’évaluer le modèle sur toutes les combinaisons possibles de features, soit 2^M coalitions pour M features. Pour un modèle à 20 features, cela représente plus d’un million de coalitions. C’est impraticable pour la plupart des cas réels.
C’est pourquoi SHAP propose plusieurs algorithmes d’approximation, chacun optimisé pour un type de modèle spécifique.
Les variantes de SHAP
La bibliothèque shap implémente plusieurs algorithmes adaptés à différentes architectures de modèles. Le choix de l’algorithme a un impact direct sur la vitesse de calcul et la précision des résultats.
| Algorithme | Modèles cibles | Vitesse | Précision | Cas d’usage |
|---|---|---|---|---|
| TreeSHAP | Arbres de décision, Random Forest, XGBoost, LightGBM, CatBoost | Très rapide (~10-50 ms) | Exacte | Données tabulaires en production |
| KernelSHAP | Tout modèle (model-agnostic) | Lent (~1-5 s) | Approximation | Modèles exotiques ou mixtes |
| DeepSHAP | Réseaux de neurones (PyTorch, TensorFlow) | Rapide | Approximation (DeepLIFT) | Deep learning, CNN |
| LinearSHAP | Modèles linéaires | Quasi-instantané | Exacte | Régression linéaire, logistique |
| PermutationSHAP | Tout modèle | Modéré | Approximation | Alternative plus récente à KernelSHAP |
| PartitionSHAP | Tout modèle (features hiérarchiques) | Modéré | Approximation | Texte, images (groupes de features) |
TreeSHAP : la star de la production
TreeSHAP mérite un focus particulier car c’est l’algorithme le plus utilisé en entreprise. Publié séparément dans Nature Machine Intelligence en 2020, il exploite la structure arborescente des modèles d’ensemble pour calculer les valeurs SHAP exactes en temps polynomial. Sa complexité est O(TLD²) contre O(TL·2^M) pour le calcul exact générique, où T est le nombre d’arbres, L le nombre maximum de feuilles et D la profondeur maximale.
En pratique, TreeSHAP calcule les valeurs SHAP pour une observation en quelques millisecondes, même sur un modèle XGBoost de plusieurs centaines d’arbres. C’est ce qui rend SHAP viable en production pour des systèmes temps réel.
shap propose deux versions de TreeSHAP. La version « interventional » (par défaut depuis les versions récentes) marginalise les features absentes en utilisant le dataset de référence, ce qui donne des résultats plus fiables quand les features sont corrélées. L’ancienne version « tree-path dependent » suivait les chemins de l’arbre, ce qui pouvait créer des artefacts en présence de corrélations fortes. Gardez le mode par défaut sauf raison précise.
KernelSHAP : le couteau suisse
KernelSHAP est l’implémentation model-agnostic de SHAP. Son principe : utiliser une régression linéaire pondérée sur des échantillons de coalitions de features pour estimer les valeurs de Shapley. Le kernel (noyau de pondération) utilisé est spécifiquement conçu pour que la régression converge vers les valeurs de Shapley exactes.
C’est mathématiquement élégant, mais lent. Pour un modèle à 50 features, KernelSHAP peut prendre plusieurs secondes par observation. En production, vous ne l’utilisez que si vous n’avez pas d’algorithme spécialisé pour votre type de modèle. Notez que dans les versions récentes de la bibliothèque, le PermutationExplainer est souvent préféré à KernelSHAP pour les cas model-agnostic, car il offre une meilleure convergence.
DeepSHAP : pour le deep learning
DeepSHAP adapte l’algorithme DeepLIFT pour calculer des valeurs SHAP approximatives dans les réseaux de neurones profonds. Il utilise une distribution de données de référence (background dataset) plutôt qu’une seule valeur de référence, et linéarise les opérations non-linéaires (max, softmax, produits) via les équations de Shapley.
DeepSHAP est compatible avec PyTorch et TensorFlow. Son principal avantage : il est beaucoup plus rapide que KernelSHAP sur des architectures profondes. Son principal défaut : l’approximation peut être moins précise que sur les modèles arborescents.
Utilisation pratique en Python
Installation et premier calcul
L’installation se fait via pip ou conda. Depuis la version 0.50.0 (novembre 2025), Python 3.11 minimum est requis. La version 0.51.0, sortie le 4 mars 2026, ajoute le support de Python 3.14 et des splits catégoriels dans la bibliothèque C++.
pip install shap
Voici un exemple complet avec XGBoost :
import xgboost
import shap
# Charger un dataset et entraîner un modèle
X, y = shap.datasets.california()
model = xgboost.XGBRegressor().fit(X, y)
# Créer l'explainer (détecte automatiquement TreeSHAP)
explainer = shap.Explainer(model)
# Calculer les valeurs SHAP
shap_values = explainer(X)
# Visualiser l'explication de la première observation
shap.plots.waterfall(shap_values[0])
L’API unifiée shap.Explainer() détecte automatiquement le type de modèle et sélectionne l’algorithme optimal. Vous pouvez forcer un algorithme spécifique via le paramètre algorithm (valeurs possibles : "auto", "tree", "linear", "deep", "permutation", "partition", "exact", "additive").
SHAP pour le NLP
SHAP supporte nativement les modèles de la bibliothèque Hugging Face Transformers. L’explainer utilise des règles coalitionnelles adaptées au texte pour calculer les attributions avec un nombre réduit d’évaluations du modèle :
import transformers
import shap
# Pipeline de sentiment analysis
model = transformers.pipeline(
'sentiment-analysis',
return_all_scores=True
)
explainer = shap.Explainer(model)
shap_values = explainer(["Ce produit est excellent !"])
# Visualiser les attributions par token
shap.plots.text(shap_values[0, :, "POSITIVE"])
Le résultat met en évidence quels tokens poussent le modèle vers une classification positive (en rouge) ou négative (en bleu). C’est particulièrement utile pour auditer les modèles de NLP et détecter des biais dans le traitement du langage.
Les visualisations SHAP
L’un des atouts majeurs de SHAP est sa panoplie de graphiques, qui permettent de passer d’explications locales (une observation) à des vues globales (le modèle entier). Voici les principaux types de visualisations et quand les utiliser.
Waterfall plot (explication locale)
Le waterfall plot décompose la prédiction d’une observation en contributions successives. Chaque barre représente l’impact d’une feature : les barres rouges poussent la prédiction vers le haut, les bleues vers le bas. La valeur de base (prédiction moyenne) est à gauche, la prédiction finale à droite.
C’est le graphique à utiliser quand vous devez expliquer une décision individuelle à un utilisateur final, un régulateur ou un métier. Par exemple : « Pourquoi ce client a-t-il été refusé ? »
shap.plots.waterfall(shap_values[0])
Force plot (explication locale interactive)
Le force plot présente les contributions de features sous forme de forces qui poussent la prédiction depuis la valeur de base vers la prédiction finale. Les features en rouge augmentent la prédiction, celles en bleu la diminuent.
shap.plots.force(shap_values[0])
Beeswarm plot (importance globale + distribution)
Le beeswarm (anciennement « summary plot ») est le graphique global le plus informatif. Pour chaque feature, il affiche la distribution des valeurs SHAP sur l’ensemble du dataset. Chaque point représente une observation, sa position horizontale correspond à la valeur SHAP, et sa couleur indique la valeur de la feature (rouge = élevée, bleu = faible).
Ce graphique permet d’identifier en un coup d’œil les features les plus influentes et leur relation avec la prédiction. Une feature avec beaucoup de points rouges à droite (valeur élevée = impact positif) a un effet positif monotone sur le modèle.
shap.plots.beeswarm(shap_values)
Bar plot (importance globale simplifiée)
Le bar plot affiche l’importance globale moyenne de chaque feature (la moyenne des valeurs absolues des SHAP values). C’est la version simplifiée du beeswarm, utile pour les présentations rapides.
shap.plots.bar(shap_values)
Dependence plot (effet d’une feature)
Le dependence plot montre la relation entre la valeur d’une feature et son impact SHAP. Il permet de détecter les non-linéarités et les interactions entre features. SHAP sélectionne automatiquement une feature d’interaction pour la coloration des points.
shap.plots.scatter(shap_values[:, "age"])
Heatmap plot (vue d’ensemble par observation)
La heatmap affiche les valeurs SHAP sous forme de carte de chaleur pour un ensemble d’observations. Chaque ligne est une feature, chaque colonne une observation. C’est utile pour repérer des clusters d’observations qui se comportent différemment.
shap.plots.heatmap(shap_values[:100])
SHAP vs LIME : comparaison tranchée
LIME (Local Interpretable Model-agnostic Explanations) est l’autre grande méthode d’explicabilité. Les deux sont souvent citées ensemble, mais elles ne jouent pas dans la même catégorie. Voici une comparaison directe.
| Critère | SHAP | LIME |
|---|---|---|
| Base théorique | Théorie des jeux (valeurs de Shapley) avec garanties mathématiques | Approximation locale par modèle linéaire, sans garantie formelle |
| Scope | Local ET global (agrégation des valeurs locales) | Local uniquement |
| Consistance | Garantie par les propriétés de Shapley (résultats stables) | Non garantie (résultats variables entre exécutions) |
| Exhaustivité | Toutes les features reçoivent une attribution, somme = prédiction | Pas de garantie que la somme des attributions soit complète |
| Vitesse (modèles arbres) | TreeSHAP : ~10-50 ms (exact) | ~100-500 ms (approximation) |
| Vitesse (model-agnostic) | KernelSHAP : ~1-5 s | ~100-500 ms |
| Complexité d’interprétation | Concept de théorie des jeux à maîtriser | Concept de modèle local linéaire, plus intuitif initialement |
| Visualisations | Riche (waterfall, beeswarm, dependence, heatmap, force) | Plus limitée (poids du modèle local) |
| Gestion des interactions | Captées via les coalitions de features | Non captées (modèle local linéaire) |
| Adoption en production | Standard de facto | Moins courant en production, plus utilisé en exploration |
Verdict : SHAP est supérieur à LIME dans la grande majorité des cas. Sa base théorique solide, sa capacité à fournir des explications globales et locales cohérentes, et la vitesse de TreeSHAP pour les modèles arborescents en font le choix par défaut. LIME reste pertinent pour un prototypage rapide ou quand vous avez besoin d’une explication rapide sur un modèle exotique sans investir dans la compréhension des valeurs de Shapley. Mais pour tout projet sérieux, en particulier dans un contexte réglementaire, SHAP est la norme.
Cas d’usage en entreprise
Finance et crédit scoring
Le scoring crédit est le cas d’usage historique de SHAP. Les réglementations bancaires exigent de pouvoir expliquer chaque décision de refus ou d’acceptation de crédit. SHAP permet de générer automatiquement un « rapport d’explication » pour chaque demande, détaillant les facteurs positifs et négatifs. Les banques utilisent les waterfall plots pour les rapports destinés aux régulateurs et les bar plots pour les tableaux de bord des analystes.
Santé et diagnostic médical
L’article fondateur de TreeSHAP dans Nature Machine Intelligence (2020) était justement axé sur un cas médical : la prédiction du risque d’hypoxémie pendant la chirurgie. SHAP a permis aux anesthésistes de comprendre quels facteurs (saturation en oxygène, fréquence cardiaque, paramètres ventilatoires) contribuaient le plus au risque prédit, améliorant la prise de décision clinique en temps réel.
Marketing et churn prediction
Pour les modèles de prédiction du churn (attrition client), SHAP identifie les facteurs de risque pour chaque client. Au lieu d’une alerte binaire « client à risque », vous obtenez un diagnostic complet : fréquence d’utilisation en baisse (-0.15), tickets support récents (-0.08), ancienneté élevée (+0.12). Ces insights actionnables permettent de personnaliser les actions de rétention.
Industrie et maintenance prédictive
En maintenance prédictive, SHAP explique pourquoi un capteur déclenche une alerte. Les opérateurs terrain reçoivent une explication concrète (« température du roulement contribue pour 40% du score d’anomalie, vibration axiale pour 25% ») au lieu d’un simple score opaque.
SHAP et l’AI Act européen
L’AI Act impose des exigences d’explicabilité pour les systèmes d’IA à haut risque. L’article 13 exige que les systèmes soient conçus de manière à permettre aux déployeurs de comprendre la logique derrière les décisions individuelles. L’article 86 accorde aux individus un droit à l’explication des décisions IA qui les affectent négativement.
SHAP est l’outil technique le plus directement applicable pour répondre à ces exigences. Il permet de documenter, pour chaque prédiction, quels facteurs ont contribué à la décision et dans quelle mesure. La plupart des frameworks de conformité AI Act recommandent SHAP (ou LIME) comme méthode d’explicabilité post-hoc pour les modèles complexes.
Pour les aspects réglementaires plus larges, consultez aussi nos pages sur la RGPD et l’IA et l’accountability.
Limites et pièges de SHAP
SHAP n’est pas parfait. Voici les limites que vous devez connaître avant de l’adopter.
Corrélation entre features
C’est la limite la plus sérieuse. Quand les features sont corrélées, le calcul des valeurs de Shapley nécessite de simuler des combinaisons de features qui n’existent pas dans la réalité. Par exemple, une personne avec un revenu de 200 000 € et un niveau d’éducation « sans diplôme » est statistiquement très improbable. SHAP évalue tout de même cette combinaison, ce qui peut produire des attributions trompeuses.
Des variantes comme les valeurs de Shapley conditionnelles ou interventionnelles tentent de résoudre ce problème, mais aucune solution n’est universellement satisfaisante. En pratique, vérifiez toujours les corrélations entre vos features et interprétez les SHAP values avec prudence quand la multicolinéarité est forte.
Coût de calcul
TreeSHAP est rapide, mais KernelSHAP et PermutationSHAP restent coûteux pour les modèles à grand nombre de features. Pour un réseau de neurones avec des milliers de features d’entrée, le calcul SHAP peut prendre plusieurs minutes par observation. Des stratégies de caching et d’échantillonnage du background dataset (typiquement 100 à 1 000 samples) permettent de gérer ce coût.
Interprétabilité humaine
Les valeurs SHAP sont mathématiquement rigoureuses, mais leur interprétation par un non-technicien n’est pas toujours intuitive. Expliquer que « la feature X a une valeur SHAP de -0.23 » ne signifie pas grand-chose pour un décideur métier. La traduction en langage naturel (« le revenu du client pénalise la prédiction de 23 centièmes de point ») nécessite un travail d’interface supplémentaire.
Pas d’inférence causale
SHAP mesure des contributions statistiques, pas des relations causales. Une valeur SHAP élevée pour une feature signifie qu’elle est statistiquement importante pour la prédiction, pas qu’elle cause le phénomène prédit. Pour l’inférence causale, vous avez besoin d’outils complémentaires. Ne confondez pas corrélation (ce que SHAP mesure) et causalité (ce que SHAP ne mesure pas).
Sensibilité au background dataset
Les valeurs SHAP expriment la déviation par rapport à une « valeur de base » calculée sur un dataset de référence (background). Le choix de ce dataset influence les résultats. Un background dataset non représentatif de votre population de production donnera des explications biaisées. Utilisez toujours un échantillon représentatif de vos données de production.
Bonnes pratiques
Voici les recommandations issues de l’expérience de mise en production de SHAP dans des environnements critiques :
Choisissez le bon algorithme. TreeSHAP pour les modèles arborescents, DeepSHAP pour le deep learning, PermutationSHAP en dernier recours pour les cas model-agnostic. Ne jamais utiliser KernelSHAP sur un modèle arborescent, c’est 100x plus lent pour un résultat moins précis.
Limitez le background dataset. 100 à 1 000 samples suffisent dans la majorité des cas. Au-delà, les rendements sont décroissants. Assurez-vous que l’échantillon est représentatif de votre distribution de production.
Validez avec check_additivity. La bibliothèque propose une vérification d’additivité (check_additivity=True par défaut). Si la somme des SHAP values ne correspond pas à la différence entre la prédiction et la valeur de base, quelque chose ne va pas. Ne désactivez pas ce check.
Cachez les résultats. En production, pré-calculez les SHAP values pour les cas courants. Stockez les objets Explainer entre les requêtes. Les SHAP values d’un modèle fixe sur des données identiques ne changent pas, il est inutile de les recalculer.
Surveillez les drifts d’explication. Monitorez la distribution des SHAP values au fil du temps. Un changement soudain dans l’importance des features peut signaler un data drift ou un concept drift avant même que la performance du modèle ne se dégrade.
Documentez votre méthodologie. Pour la conformité réglementaire, documentez le type d’algorithme SHAP utilisé, la taille et la composition du background dataset, et les éventuelles limitations identifiées. Cette documentation est un livrable exigé par l’AI Act.
Intégrations et écosystème
SHAP s’intègre nativement avec la majorité des bibliothèques ML de l’écosystème Python :
| Bibliothèque / Plateforme | Intégration SHAP | Type |
|---|---|---|
| scikit-learn | TreeSHAP, LinearSHAP, KernelSHAP | Native |
| XGBoost | TreeSHAP optimisé | Native |
| LightGBM | TreeSHAP optimisé | Native |
| CatBoost | TreeSHAP | Native |
| PyTorch | DeepSHAP | Native |
| TensorFlow / Keras | DeepSHAP | Native |
| Hugging Face Transformers | PartitionSHAP (texte) | Native |
| Spark / PySpark | Via wrapper | Communauté |
| Databricks | SHAP intégré dans MLflow | Plateforme |
| Weights & Biases | Logging des SHAP values | Plateforme |
| MLflow | Logging et visualisation | Plateforme |
SHAP dans l’écosystème de l’explicabilité
SHAP s’inscrit dans le champ plus large de l’explicabilité et de l’XAI (eXplainable AI). Voici comment il se positionne par rapport aux autres approches :
Les méthodes de feature attribution comme SHAP et LIME répondent à la question « quelles features contribuent à cette prédiction ? ». Les techniques d’attention visualization examinent les mécanismes internes des transformers. Les explications contrefactuelles répondent à « qu’est-ce qui aurait dû changer pour obtenir un résultat différent ? ». Et l’interprétabilité intrinsèque utilise des modèles nativement compréhensibles (arbres de décision, régressions linéaires).
Ces approches sont complémentaires, pas concurrentes. Un pipeline d’explicabilité robuste combine souvent SHAP pour l’attribution quantitative, des contrefactuels pour l’actionabilité, et une documentation de type model card pour la transparence globale.
Questions fréquentes sur SHAP
Quelle est la différence entre les valeurs de Shapley et les valeurs SHAP ?
Les valeurs de Shapley sont un concept mathématique de la théorie des jeux coopératifs, formulé par Lloyd Shapley en 1953. SHAP (SHapley Additive exPlanations) est l’application de ce concept au machine learning par Scott Lundberg en 2017, accompagnée d’algorithmes d’approximation efficaces (TreeSHAP, KernelSHAP, DeepSHAP) et d’une bibliothèque Python. En pratique, quand on parle de « valeurs SHAP » dans un contexte ML, on parle de valeurs de Shapley calculées via la bibliothèque et les algorithmes SHAP.
SHAP fonctionne-t-il avec les LLM et les modèles génératifs ?
SHAP fonctionne avec les modèles de classification et de régression basés sur des transformers (via les pipelines Hugging Face). Pour les LLM génératifs (GPT, Claude, Gemini), SHAP n’est pas directement applicable car ces modèles ne produisent pas une sortie numérique unique mais des séquences de tokens. Des méthodes d’attribution comme les integrated gradients ou l’analyse d’attention sont plus adaptées à ces architectures. SHAP reste la référence pour les modèles tabulaires et les classifieurs texte.
Combien de temps prend le calcul des valeurs SHAP ?
Cela dépend entièrement de l’algorithme. TreeSHAP calcule les valeurs exactes en 10 à 50 millisecondes par observation pour les modèles arborescents. KernelSHAP prend typiquement 1 à 5 secondes par observation. DeepSHAP est rapide mais variable selon la taille du réseau. En production, TreeSHAP est suffisamment rapide pour du temps réel. Pour les autres algorithmes, le pré-calcul et le caching sont recommandés.
SHAP est-il suffisant pour être conforme à l’AI Act ?
SHAP est un outil technique d’explicabilité, pas une solution de conformité complète. L’AI Act exige de la transparence, de l’accountability, une documentation technique et une supervision humaine. SHAP répond au volet « explicabilité des décisions individuelles » (articles 13 et 86), mais vous devez aussi mettre en place un système de monitoring, des model cards, des audits de biais et de fairness, et une gouvernance humaine. SHAP est une brique indispensable, pas le mur entier.
Peut-on utiliser SHAP pour détecter les biais d’un modèle ?
Oui, et c’est un cas d’usage de plus en plus courant. En calculant les valeurs SHAP sur un dataset segmenté par groupes démographiques, vous pouvez identifier si certaines features (comme le code postal, qui peut être un proxy de l’ethnie) ont un impact disproportionné sur les prédictions d’un groupe par rapport à un autre. Les beeswarm plots segmentés permettent de visualiser ces différences. Cela dit, SHAP détecte les corrélations statistiques, pas les discriminations au sens juridique. L’analyse de biais et de fairness nécessite des outils complémentaires et une expertise juridique.