Feature Attribution
La feature attribution est un ensemble de méthodes d’explicabilité post-hoc qui attribuent à chaque variable d’entrée (feature) un score quantifiant sa contribution à la prédiction d’un modèle de machine learning pour une observation donnée.
Votre modèle prédit qu’un email est du spam. La feature attribution répond à la question : « Quels mots, quelles caractéristiques ont poussé le modèle vers cette décision, et dans quelle mesure ? » C’est le pilier technique de l’IA explicable (XAI), et la famille de méthodes la plus utilisée en production pour rendre les modèles boîte noire compréhensibles.
Contrairement à la feature importance globale (qui classe les variables par importance moyenne sur tout le dataset), la feature attribution est locale : elle explique une prédiction spécifique pour une observation spécifique. C’est cette granularité qui la rend indispensable pour la conformité réglementaire, le débogage de modèles et la communication avec les parties prenantes.
- Domaine
- Explicabilité / XAI
- Type
- Méthodes post-hoc, principalement locales
- Méthodes clés
- SHAP, LIME, Integrated Gradients, DeepLIFT, Grad-CAM, LRP, SmoothGrad
- Données supportées
- Tabulaires, texte, images, séries temporelles
- Outils Python
shap,lime,captum(PyTorch),tf-explain(TensorFlow),inseq(NLP)- Contexte réglementaire
- Exigence clé de l’AI Act (articles 13 et 86)
- Distinction clé
- Feature attribution ≠ feature selection (pré-entraînement) ≠ feature importance (globale)
Feature attribution, feature importance, feature selection : ne pas confondre
Ces trois concepts sont souvent mélangés. La distinction est pourtant fondamentale :
Feature selection intervient avant ou pendant l’entraînement. L’objectif est de choisir quelles variables inclure dans le modèle. C’est une étape de préparation des données et d’ingénierie des features.
Feature importance (globale) mesure l’importance moyenne d’une variable sur l’ensemble du dataset. Un random forest calcule par exemple l’importance de Gini : combien chaque variable contribue en moyenne à réduire l’impureté. C’est une vue agrégée du modèle, pas une explication d’une prédiction individuelle.
Feature attribution (locale) mesure la contribution de chaque variable à une prédiction spécifique. Pour l’observation n°42, la variable « revenu » contribue pour +120 points au score de crédit, tandis que « nombre de retards de paiement » contribue pour -45 points. C’est l’explication la plus granulaire et la plus actionnable.
Taxonomie des méthodes de feature attribution
Les méthodes de feature attribution se classent selon trois axes principaux : leur dépendance au modèle, leur mécanisme de calcul, et leur scope.
Méthodes model-agnostic (indépendantes du modèle)
Ces méthodes traitent le modèle comme une boîte noire. Elles n’ont besoin que de la fonction de prédiction, pas de l’architecture interne. Elles fonctionnent avec tout type de modèle.
| Méthode | Principe | Propriétés | Limites |
|---|---|---|---|
| SHAP (KernelSHAP) | Valeurs de Shapley calculées via régression pondérée sur des coalitions de features | Fondement théorique solide (théorie des jeux), somme des attributions = prédiction, explications locales et globales cohérentes | Lent pour les grands nombres de features (~1-5 s par observation) |
| LIME | Approximation locale par un modèle linéaire interprétable sur des perturbations de l’entrée | Intuitif, rapide (~100-500 ms), explications humainement lisibles | Pas de garantie théorique, résultats variables entre exécutions, pas de propriété d’exhaustivité |
| Permutation | Mesure de la dégradation de performance quand une feature est permutée aléatoirement | Simple à comprendre et implémenter | Importance globale seulement, sensible aux corrélations entre features |
| Occlusion | Mesure du changement de prédiction quand on masque des portions de l’entrée | Applicable aux images (masquage de régions), intuitif | Coûteux (une inférence par region masquée), choix de la stratégie de masquage arbitraire |
Méthodes model-specific (liées au modèle)
Ces méthodes exploitent la structure interne du modèle pour calculer les attributions plus rapidement ou plus fidèlement.
| Méthode | Modèles ciblés | Principe | Propriétés |
|---|---|---|---|
| Integrated Gradients | Réseaux de neurones (tout framework) | Intégrale du gradient le long d’un chemin linéaire depuis une baseline jusqu’à l’entrée | Satisfait Sensitivity et Implementation Invariance, propriété de complétude (somme = sortie – baseline) |
| DeepLIFT | Réseaux de neurones | Propagation des différences d’activation entre l’entrée et une référence, couche par couche | Rapide (un seul passage en arrière), mais approximations dans certains cas |
| Grad-CAM | CNN (vision) | Pondération des feature maps de la dernière couche convolutionnelle par les gradients de la classe cible | Carte de saliency spatiale, résolution limitée par la couche choisie |
| LRP (Layer-wise Relevance Propagation) | Réseaux de neurones | Propagation en arrière d’un score de pertinence depuis la sortie vers l’entrée, conservant la pertinence totale à chaque couche | Propriété de conservation, mais choix de la règle de propagation délicat |
| SmoothGrad | Réseaux de neurones | Moyenne des gradients sur des versions bruitées de l’entrée pour réduire le bruit visuel | Cartes de saliency plus nettes, mais ajoute un hyperparamètre (niveau de bruit) |
| TreeSHAP | Modèles arborescents (XGBoost, LightGBM, Random Forest) | Calcul exact des valeurs de Shapley en exploitant la structure de l’arbre | Exact et très rapide (~10-50 ms), meilleure méthode pour les modèles arborescents |
| Attention weights | Transformers | Poids d’attention comme proxy de l’importance des tokens | Corrélationnel, pas causal (cf. débat « Attention is not Explanation ») |
Les méthodes principales en détail
SHAP : le standard de facto
SHAP (SHapley Additive exPlanations) est la méthode de feature attribution la plus utilisée en production. Son avantage décisif : c’est la seule méthode qui satisfait simultanément les propriétés d’efficience (les attributions somment à la prédiction moins la valeur de base), de symétrie, de nullité et d’additivité. Ces propriétés garantissent une répartition « juste » du crédit explicatif entre les features, au sens mathématique du terme.
SHAP se décline en plusieurs algorithmes selon le type de modèle : TreeSHAP pour les arbres (exact et rapide), KernelSHAP/PermutationSHAP pour les cas model-agnostic (approximatif), DeepSHAP pour les réseaux de neurones, LinearSHAP pour les modèles linéaires. La bibliothèque Python shap (v0.51.0, mars 2026) unifie ces algorithmes derrière une API commune.
Pour un guide complet, consultez notre page dédiée à SHAP.
Integrated Gradients : l’approche axiomatique
Proposée par Sundararajan, Taly et Yan (ICML 2017, Google), Integrated Gradients est la méthode de référence pour l’attribution dans les réseaux de neurones profonds. Son principe : plutôt que de calculer le gradient en un seul point (ce qui est bruité et non satisfaisant), intégrer le gradient le long d’un chemin linéaire allant d’une « baseline » (entrée neutre, comme une image noire ou un vecteur de zéros) jusqu’à l’entrée réelle.
Formellement, pour une feature i :
Attribution_i = (x_i - x'_i) × ∫₀¹ (∂F/∂x_i)(x' + α(x - x')) dα
où x est l’entrée, x’ la baseline, et F le modèle. En pratique, l’intégrale est approximée par une somme de Riemann avec 50 à 300 pas.
Integrated Gradients satisfait deux axiomes fondamentaux que les auteurs jugent indispensables pour toute méthode d’attribution :
Sensitivity. Si l’entrée et la baseline diffèrent sur une seule feature, et que cette différence change la prédiction, alors cette feature doit recevoir une attribution non nulle. En d’autres termes, aucune feature pertinente n’est ignorée.
Implementation Invariance. Deux réseaux fonctionnellement identiques (mêmes entrées, mêmes sorties pour toutes les entrées) doivent produire les mêmes attributions, même si leurs architectures internes diffèrent. Cette propriété empêche les artefacts liés à l’implémentation.
L’article original a démontré que la plupart des méthodes d’attribution existantes (dont le gradient simple, LRP et la version originale de DeepLIFT) ne satisfont pas ces deux axiomes simultanément. C’est ce qui rend Integrated Gradients théoriquement supérieur pour les réseaux de neurones.
import torch
from captum.attr import IntegratedGradients
# Modèle PyTorch quelconque
model = ... # votre modèle entraîné
model.eval()
# Créer l'attributeur
ig = IntegratedGradients(model)
# Calculer les attributions
# input_tensor : entrée de forme (batch, features)
# baseline : entrée neutre de même forme
attributions = ig.attribute(
input_tensor,
baselines=baseline,
n_steps=200, # nombre de pas pour l'intégrale
target=target_class # classe cible pour la classification
)
# attributions a la même forme que input_tensor
LIME : l’approche intuitive
LIME (Local Interpretable Model-agnostic Explanations), proposé par Ribeiro, Singh et Guestrin (KDD 2016), adopte une approche radicalement différente. Au lieu de calculer les attributions via les gradients ou la théorie des jeux, LIME crée des perturbations de l’entrée, observe comment les prédictions changent, puis ajuste un modèle linéaire simple sur ces observations. Les coefficients de ce modèle local servent d’attributions.
L’avantage de LIME est son intuitivité : l’explication est littéralement « le modèle linéaire qui approxime le mieux le comportement du modèle autour de cette observation ». C’est facile à communiquer à des non-techniciens.
Ses limites sont toutefois significatives : pas de garantie théorique forte (contrairement à SHAP), résultats non reproductibles (la perturbation est stochastique), et les attributions ne somment pas nécessairement à la prédiction. Pour ces raisons, LIME est progressivement remplacé par SHAP dans les pipelines de production, même s’il reste utile pour le prototypage rapide.
Grad-CAM : la saliency visuelle
Grad-CAM (Gradient-weighted Class Activation Mapping) est la méthode d’attribution de référence pour les modèles de vision basés sur des CNN. Elle calcule le gradient de la sortie (classe prédite) par rapport aux feature maps de la dernière couche convolutionnelle, puis pondère ces feature maps par les gradients moyens. Le résultat est une carte de chaleur (heatmap) indiquant quelles régions de l’image ont le plus influencé la prédiction.
Grad-CAM est rapide (un seul passage en arrière) et produit des visualisations spatialement interprétables. Pour les Vision Transformers, des adaptations existent (Attention Guided CAM), mais les résultats sont généralement moins nets que pour les CNN classiques.
DeepLIFT : la propagation des différences
DeepLIFT (Deep Learning Important FeaTures, Shrikumar et al., 2017) propage les différences d’activation entre l’entrée et une référence, couche par couche depuis la sortie vers l’entrée. Contrairement au gradient standard, DeepLIFT peut attribuer du crédit même dans les régions « saturées » (gradients proches de zéro).
DeepSHAP, la variante SHAP pour le deep learning, est d’ailleurs construite sur DeepLIFT, en utilisant plusieurs échantillons de référence et les équations de Shapley pour améliorer la fidélité des attributions.
LRP (Layer-wise Relevance Propagation)
LRP, proposée par Bach et al. (2015), propage un score de « pertinence » depuis la sortie vers l’entrée en appliquant des règles de redistribution à chaque couche. La propriété clé est la conservation : la somme des pertinences est conservée à chaque couche, garantissant que rien ne se « perd » dans la propagation.
LRP a été très utilisée en vision par ordinateur, mais ses résultats dépendent fortement du choix de la règle de propagation (epsilon-rule, alpha-beta rule, etc.), ce qui la rend moins robuste que les méthodes axiomatiques comme Integrated Gradients.
Comparaison pratique des méthodes
| Critère | SHAP | Integrated Gradients | LIME | Grad-CAM | LRP |
|---|---|---|---|---|---|
| Model-agnostic | Oui (KernelSHAP) + spécialisé (TreeSHAP, DeepSHAP) | Non (nécessite les gradients) | Oui | Non (CNN/ViT) | Non (réseaux de neurones) |
| Données | Tabulaires, texte, images | Tout (si différentiable) | Tabulaires, texte, images | Images | Tout (si réseau de neurones) |
| Garantie théorique | Valeurs de Shapley (4 propriétés) | Sensitivity + Implementation Invariance + Completeness | Aucune garantie formelle | Aucune garantie formelle | Conservation de la pertinence |
| Exhaustivité | Oui (somme = prédiction – base) | Oui (somme = sortie – sortie baseline) | Non | Non | Oui (conservation) |
| Vitesse (arbres) | ~10-50 ms (TreeSHAP, exact) | N/A | ~100-500 ms | N/A | N/A |
| Vitesse (deep learning) | ~1-5 s (DeepSHAP/Kernel) | ~100 ms – 1 s (selon n_steps) | ~100-500 ms | ~50-100 ms | ~100-500 ms |
| Reproductibilité | Élevée (déterministe pour TreeSHAP) | Élevée (déterministe) | Faible (perturbations aléatoires) | Élevée | Élevée |
| Outil Python | shap |
captum (PyTorch), tf-explain (TF) |
lime |
captum, tf-explain |
captum, innvestigate |
Verdict : Pour les données tabulaires avec des modèles arborescents, TreeSHAP est le choix sans compromis (exact, rapide, théoriquement solide). Pour les réseaux de neurones, Integrated Gradients offre le meilleur ratio rigueur théorique / vitesse. LIME reste pertinent pour le prototypage rapide avec des non-techniciens. Grad-CAM est incontournable pour la vision CNN. L’utilisation des poids d’attention comme feature attribution est déconseillée sauf comme première exploration.
Évaluer la qualité d’une attribution
Toutes les méthodes d’attribution ne se valent pas, et la qualité d’une explication dépend de plusieurs critères mesurables.
Fidélité (Faithfulness)
La fidélité mesure si les attributions reflètent réellement le comportement du modèle. Le test standard : retirer les features les plus importantes selon les attributions et vérifier que la prédiction se dégrade significativement. Si elle ne se dégrade pas, les attributions ne sont pas fidèles. C’est le test le plus critique en pratique.
Complétude (Completeness)
La somme des attributions doit-elle correspondre à une quantité interprétable ? SHAP et Integrated Gradients satisfont cette propriété (les attributions somment à la différence entre la prédiction et une valeur de base). LIME ne la garantit pas, ce qui rend ses attributions plus difficiles à interpréter quantitativement.
Stabilité (Consistency)
Des entrées similaires devraient produire des attributions similaires. LIME est notoirement instable (des exécutions successives sur la même entrée donnent des résultats différents). SHAP et Integrated Gradients sont déterministes et donc reproductibles.
Parcimonie (Sparsity)
Les utilisateurs humains préfèrent des explications concises. Une attribution qui met en évidence 3 features clés est plus utile qu’une qui attribue un score non-nul à 500 features. Les valeurs de Shapley ne sont pas naturellement parcimonieuses (toutes les features reçoivent une attribution), mais des techniques de régularisation ou de seuillage permettent de simplifier la présentation.
Feature attribution en production
Intégration dans un pipeline ML
En production, la feature attribution n’est pas un outil ponctuel de débogage : c’est un composant du pipeline d’inférence. Voici l’architecture typique :
Étape 1 : Inférence. Le modèle produit une prédiction.
Étape 2 : Attribution. En parallèle ou en post-traitement, les attributions sont calculées pour la prédiction. Pour les modèles arborescents avec TreeSHAP, le surcoût est négligeable (~10-50 ms). Pour les réseaux de neurones, un budget de latence doit être prévu.
Étape 3 : Stockage. Les attributions sont stockées avec la prédiction dans un log structuré. Ce log sert à l’audit, au monitoring et à la conformité réglementaire.
Étape 4 : Monitoring. La distribution des attributions est monitorée au fil du temps. Un changement soudain dans l’importance des features (par exemple, une feature autrefois marginale qui devient dominante) peut signaler un data drift ou un concept drift, parfois avant même que les métriques de performance ne se dégradent.
Étape 5 : Présentation. Les attributions sont traduites en langage naturel ou en visualisations pour les utilisateurs finaux. Un waterfall plot SHAP pour l’analyste risque, un résumé textuel pour le client final (« Votre demande a été acceptée grâce à votre historique de remboursement et votre stabilité d’emploi »).
Cas d’usage par secteur
Finance. Le scoring crédit est le cas emblématique. Les réglementations bancaires (Bâle III, ECOA aux États-Unis, AI Act en Europe) exigent de justifier chaque décision de crédit. SHAP est devenu le standard pour générer des « raison codes » automatiques : les 3-5 features qui ont le plus pesé dans la décision, accompagnées de leur direction d’impact.
Santé. Pour les modèles de diagnostic assisté, la feature attribution permet au médecin de valider ou invalider la recommandation du modèle. Si le modèle diagnostique un diabète et que les attributions pointent vers la glycémie à jeun et l’HbA1c (plutôt que vers l’âge ou le code postal), le médecin a confiance dans la prédiction.
Assurance. La tarification par modèle ML doit être explicable. La feature attribution montre au client et au régulateur quels facteurs ont influencé son tarif : kilométrage, zone géographique, historique de sinistres.
NLP et modération de contenu. Pour les classifieurs de texte (spam, toxicité, sentiment), les attributions au niveau du token identifient quels mots ont déclenché la classification. C’est essentiel pour détecter les faux positifs (un email légitime marqué spam à cause d’un mot-clé innocent).
Vision industrielle. En contrôle qualité automatisé, Grad-CAM ou les integrated gradients montrent quelle zone de l’image a provoqué le rejet d’une pièce. L’opérateur peut vérifier si le défaut identifié est réel ou si le modèle réagit à un artefact.
Limites et pièges
Attribution ≠ causalité
C’est la limite la plus fondamentale de toute méthode de feature attribution. Une attribution élevée signifie que la feature a statistiquement contribué à la prédiction, pas qu’elle cause le phénomène prédit. Si votre modèle de scoring crédit attribue un fort poids au code postal, cela ne signifie pas que le code postal cause le défaut de paiement. Le code postal peut être un proxy de variables socio-économiques non observées. Pour l’analyse causale, vous devez recourir à des méthodes d’inférence causale.
Features corrélées
Quand deux features sont fortement corrélées, les méthodes d’attribution peuvent répartir le crédit de manière instable entre elles. D’une observation à l’autre, la « responsabilité » peut basculer d’une feature à l’autre. SHAP atténue ce problème via les coalitions de features, mais ne le résout pas complètement. L’approche la plus robuste consiste à regrouper les features corrélées et attribuer le crédit au groupe.
Manipulabilité
Des travaux ont montré que certaines méthodes d’attribution peuvent être « trompées ». Un modèle malveillant peut être conçu pour produire des attributions rassurantes (pointant vers des features légitimes) tout en se basant en réalité sur des features discriminatoires. C’est un risque pour le fairwashing (donner l’apparence de l’équité sans la pratiquer). L’audit de biais et de fairness doit donc compléter la feature attribution, pas en dépendre exclusivement.
Surcharge cognitive
Donner 50 attributions à un utilisateur final ne l’aide pas. Les études en interaction humain-machine montrent que les utilisateurs absorbent efficacement 3 à 7 facteurs explicatifs maximum. Les pipelines de production doivent filtrer et prioriser les attributions les plus pertinentes, pas les déverser en vrac.
Feature attribution et AI Act
L’AI Act européen, pleinement applicable au 2 août 2026, impose aux systèmes d’IA à haut risque de fournir des explications compréhensibles pour leurs décisions (articles 13 et 86). La feature attribution est le mécanisme technique le plus directement utilisable pour satisfaire cette exigence.
Les frameworks de conformité recommandent typiquement : des attributions locales (SHAP ou Integrated Gradients) pour chaque décision individuelle, un monitoring des distributions d’attributions pour détecter les dérives, et une documentation structurée (model cards) décrivant la méthode d’attribution choisie, ses limitations et les hypothèses sous-jacentes.
La feature attribution seule ne suffit pas pour la conformité. L’accountability exige aussi une supervision humaine, un mécanisme de recours, et un suivi de la transparence globale du système. Mais la feature attribution en est une brique indispensable.
Tendances et évolutions
Attributions hybrides. La tendance est à combiner plusieurs méthodes d’attribution et à croiser leurs résultats. Si SHAP, Integrated Gradients et LIME convergent vers les mêmes features, la confiance augmente. Des frameworks comme Captum (Meta/PyTorch) facilitent cette approche multi-méthodes.
Attributions pour les LLM. L’attribution dans les grands modèles de langage reste un défi ouvert. Les méthodes classiques (gradient-based, perturbation-based) ne scalent pas facilement à des modèles de milliards de paramètres avec des contextes de 100K+ tokens. Les travaux récents en interprétabilité mécanistique (circuit tracing, sparse autoencoders, attribution graphs) proposent des approches complémentaires qui vont au-delà de l’attribution feature-par-feature.
Évaluation centrée humain. La recherche s’oriente vers des métriques d’évaluation qui mesurent l’utilité des attributions pour l’humain (compréhension, confiance calibrée, prise de décision améliorée), plutôt que des métriques purement techniques (fidélité, complétude).
Attributions temporelles. Pour les séries temporelles et les données séquentielles, de nouvelles méthodes adaptent les principes d’attribution pour identifier non seulement quelles features comptent, mais aussi à quel moment temporel elles comptent.
Questions fréquentes sur la feature attribution
Quelle méthode de feature attribution choisir pour mon projet ?
Le choix dépend de votre type de modèle et de vos contraintes. Pour les modèles arborescents (XGBoost, LightGBM, Random Forest) : TreeSHAP, sans hésiter. C’est exact, rapide et théoriquement solide. Pour les réseaux de neurones : Integrated Gradients (via Captum pour PyTorch) offre le meilleur équilibre rigueur/vitesse. Pour les CNN en vision : Grad-CAM en première intention, complété par Integrated Gradients. Pour un modèle exotique dont vous n’avez accès qu’à la fonction de prédiction : KernelSHAP ou PermutationSHAP. LIME reste pertinent pour le prototypage rapide.
Feature attribution et feature importance, est-ce la même chose ?
Non. La feature importance est une mesure globale qui classe les variables par importance moyenne sur tout le dataset (ex. : importance de Gini dans un random forest). La feature attribution est locale : elle mesure la contribution de chaque variable à une prédiction spécifique. Vous pouvez dériver une importance globale à partir d’attributions locales (en faisant la moyenne des valeurs absolues des SHAP values, par exemple), mais l’inverse n’est pas possible. La feature attribution est plus granulaire et plus informative.
La feature attribution peut-elle détecter les biais d’un modèle ?
Partiellement. En analysant les attributions par sous-groupes démographiques, vous pouvez identifier si certaines features (code postal, prénom) ont un impact disproportionné sur les prédictions d’un groupe par rapport à un autre. Cependant, la feature attribution mesure des corrélations statistiques, pas des discriminations au sens juridique. Un audit complet de fairness nécessite des métriques dédiées (disparate impact, equal opportunity, etc.) et une expertise juridique. La feature attribution est un outil de détection, pas de certification.
Peut-on utiliser la feature attribution avec des LLM comme GPT ou Claude ?
De manière limitée. Les LLM propriétaires (via API) ne donnent pas accès aux gradients internes, ce qui exclut les méthodes gradient-based. Vous pouvez utiliser des méthodes de perturbation (occlusion de tokens, KernelSHAP) mais le coût est élevé (chaque perturbation nécessite un appel API). Pour les modèles open-weight déployés localement, Integrated Gradients et SHAP sont applicables. Les approches récentes d’interprétabilité mécanistique (attribution graphs, probing) offrent des perspectives plus adaptées à l’échelle des LLM.
Combien de temps faut-il pour calculer des attributions en production ?
Cela varie énormément selon la méthode. TreeSHAP : 10 à 50 millisecondes par observation (compatible temps réel). Grad-CAM : 50 à 100 ms. Integrated Gradients : 100 ms à 1 seconde selon le nombre de pas et la taille du modèle. LIME : 100 à 500 ms. KernelSHAP : 1 à 5 secondes. Pour les systèmes haute performance, pré-calculez les attributions en batch ou utilisez TreeSHAP. Pour les réseaux de neurones en temps réel, Integrated Gradients avec 50 pas est un bon compromis vitesse/précision.