Accueil / Factory / Algos ML / Contrefactuels — factory / algos ML / explication des prédictions

EXPLICATIONS CONTREFACTUELLES.

Une explication qui répond à la question que tout le monde pose vraiment : que faudrait-il changer pour obtenir une autre décision ? « Votre crédit serait accordé avec 5 000 € d'apport en plus. » « Ce client resterait probablement s'il passait en contrat annuel. » On cherche le plus petit changement réaliste qui fait basculer la prédiction du modèle.

ExplicabilitéAide à la décisionScoringIA responsableNiveau : intermédiaire

FICHE D'IDENTITÉ

notes sur 5 · usage entreprise
PerformanceFonctionne avec n'importe quel modèle, sans l'ouvrir
Interprétabilité« Si… alors… » : la forme d'explication la plus naturelle
VitesseUne recherche par individu, rapide sur quelques leviers
Facilité de réglageLeviers actionnables, coût d'un changement : du métier à fixer
Tolérance aux données brutesDépend de la qualité du modèle hors des données déjà vues
EN 30 SECONDES

Un GPS qui annonce « vous arriverez en retard » est moins utile qu'un GPS qui dit « partez 10 minutes plus tôt et vous serez à l'heure ». Le contrefactuel transforme un verdict en action.

1. On fixe la cible

Le résultat souhaité : un risque de départ sous 25 %, un crédit accordé, un sinistre classé non suspect.

2. On ne touche qu'aux leviers actionnables

On fait varier ce qui peut réellement changer (type de contrat, remise, apport) et on fige le reste (âge, historique, ancienneté).

3. On cherche le plus petit changement

Parmi les scénarios qui atteignent la cible, on retient les plus proches de la situation actuelle, et plusieurs options différentes si possible.

LE CAS MÉTIER

rétention client · télécom / énergie / assurance
EN ENTRÉE

Un client à risque et deux leviers

Un modèle de churn a scoré la base. Le conseiller a devant lui un client en contrat mensuel à plus de 70 € par mois, avec un risque de départ de 45 %. Il peut proposer un autre type de contrat et une remise mensuelle jusqu'à 30 €.

EN SORTIE

Les options qui font basculer le risque

Sur le jeu d'exemple, aucune remise jusqu'à 30 € ne fait passer ce client sous 25 % s'il reste en mensuel : le risque ne descend pas sous 33 %. Un passage en contrat annuel, sans remise, suffit : le risque prédit tombe à 13 %.

CE QU'ON MESURE

Réalisme, proximité, puis test terrain

Un bon contrefactuel est atteignable, proche de la situation actuelle et plausible au vu des données. Le modèle décrit des corrélations, pas des causes : l'effet réel d'une offre se mesure ensuite par un test A/B.

QUAND LE SORTIR, QUAND L'ÉVITER

OUI

  • Expliquer une décision défavorable à la personne concernée : crédit, assurance, candidature
  • Guider une action commerciale : quelle offre proposer à quel client
  • Tester l'équité d'un modèle : la décision change-t-elle si seul le genre ou l'âge change ?
  • Répondre au droit à l'explication en termes compréhensibles, sans exposer le modèle

NON

  • Besoin de savoir quelles variables comptent globalement : l'importance par permutation ou SHAP
  • Conclure qu'une action causera l'effet prédit : il faut un test ou un modèle causal (uplift)
  • Leviers mal définis : un contrefactuel qui propose de rajeunir de 10 ans ne sert à rien
  • Modèle peu fiable hors des données observées : les scénarios extrêmes seront fantaisistes
LES CHOIX QUI COMPTENT

Ici, une recherche simple sur une grille de scénarios. Pour plus de variables, les bibliothèques DiCE (Python) et counterfactuals (R) automatisent la recherche.

Leviers actionnables

La liste des variables qu'on a le droit de modifier, et dans quel sens. C'est une décision métier, et la plus importante.

Cible

Le seuil de probabilité à atteindre ou la classe voulue. Un seuil trop ambitieux ne donne aucune solution ; un seuil trop proche du score actuel donne des solutions fragiles.

Coût d'un changement

Comment comparer 10 € de remise et un changement de contrat ? On fixe une mesure de distance ou un coût en euros pour classer les options.

Diversité

Plutôt qu'une seule réponse, proposer 2 ou 3 options différentes laisse le choix au client ou au conseiller.

LE CODE MINIMAL

jeu d'exemple : clients_churn.csv ↓
# Que proposer pour qu'un client reste : contrefactuels en R
library(randomForest)

clients <- read.csv("clients_churn.csv")
clients$churn <- as.factor(clients$churn)
clients$contrat <- factor(clients$contrat)
set.seed(42)
modele <- randomForest(churn ~ anciennete + appels_support + montant + contrat + incidents_3m,
                       data = clients, ntree = 300, nodesize = 20)

# Le client étudié : contrat mensuel à plus de 70 €, risque de départ proche de 45 %
proba <- predict(modele, clients, type = "prob")[, "1"]
cible <- which(clients$contrat == "mensuel" & clients$montant > 70)
i <- cible[which.min(abs(proba[cible] - 0.45))]
print(clients[i, ])
cat("Risque actuel :", round(proba[i], 2), "\n")

# Scénarios sur les seuls leviers actionnables : type de contrat x remise mensuelle (0 à 30 €)
leviers <- expand.grid(contrat = levels(clients$contrat), remise = 0:30)
essais <- cbind(clients[rep(i, nrow(leviers)), c("anciennete", "appels_support", "montant", "incidents_3m")], leviers)
essais$montant <- essais$montant - essais$remise
essais$risque <- predict(modele, essais, type = "prob")[, "1"]

# Contrefactuels : pour chaque contrat, la plus petite remise qui fait passer le risque sous 25 %
# (un contrat absent du résultat : aucune remise jusqu'à 30 € ne suffit)
print(aggregate(remise ~ contrat, data = essais[essais$risque < 0.25, ], FUN = min))

QUESTIONS FRÉQUENTES

Qu'est-ce qu'une explication contrefactuelle ?

C'est une explication de la forme « si telle variable avait eu telle valeur, la décision aurait été différente ». Elle indique le plus petit changement des données d'entrée qui fait basculer la prédiction du modèle. Le concept a été popularisé en 2017 par Wachter, Mittelstadt et Russell, dans le contexte du RGPD.

Quelle différence entre contrefactuel et SHAP ?

SHAP répartit une prédiction entre les variables : il dit ce qui pèse et dans quel sens. Le contrefactuel dit ce qu'il faudrait changer pour obtenir une autre décision. Les deux se complètent : SHAP pour comprendre, le contrefactuel pour agir.

Une explication contrefactuelle prouve-t-elle qu'une action marchera ?

Non. Elle décrit ce que le modèle prédirait, et le modèle a appris des corrélations. Les clients en contrat annuel partent moins, mais transférer un client mensuel vers l'annuel ne produira pas forcément le même effet. Seul un test contrôlé ou un modèle causal permet de mesurer l'effet réel.

LES ALGOS VOISINS

à comparer avant de choisir
le pourquoi

SHAP

Dit ce qui pousse le score vers le haut. Le contrefactuel dit ce qu'il faudrait changer pour le faire baisser.

Voir la fiche →
l'autre explication locale

LIME

Approche le modèle par une petite formule autour d'un individu. Descriptif, pas prescriptif.

Voir la fiche →
l'effet causal

Uplift modeling

Mesure l'effet réel d'une action sur chaque client à partir d'un test. Le complément indispensable avant de généraliser une offre.

Voir la fiche →
— formation

Passer de la fiche à la pratique

Dataistudio forme les équipes au machine learning et à l'IA, sur des cas concrets.

Voir les formations →