Accueil / Factory / Algos ML / CHAID — factory / algos ML / apprentissage supervisé

ARBRE CHAID.

Un arbre de décision qui choisit ses découpages par des tests du khi-deux et peut ouvrir plusieurs branches d'un coup : moins de 35 ans, 35-49 ans, 50 ans et plus. Né en 1980, il reste l'outil de segmentation des études marketing, parce que chaque segment est statistiquement justifié et se lit comme un tableau croisé.

ClassificationArbre de décisionSegmentation marketingTest du khi-deuxNiveau : intermédiaire

FICHE D'IDENTITÉ

notes sur 5 · usage entreprise
PerformanceFait pour décrire des segments, pas pour maximiser la prédiction
InterprétabilitéDes segments lisibles comme un tableau croisé
VitesseRapide sur des variables découpées en quelques classes
Facilité de réglageDeux seuils de test et une taille minimale de segment
Tolérance aux données brutesNumériques à découper en classes avant l'analyse
EN 30 SECONDES

Un chargé d'études qui croise la variable à expliquer avec chaque critère, garde le tableau croisé le plus significatif, puis recommence dans chaque case.

1. On fusionne les classes semblables

Pour chaque variable, les classes dont le taux d'achat ne diffère pas significativement (test du khi-deux) sont regroupées. Pour une variable ordonnée comme l'âge, seules des classes voisines peuvent l'être.

2. On garde la variable la plus significative

La variable dont le test du khi-deux donne la plus petite p-valeur, corrigée du nombre de regroupements testés (correction de Bonferroni), crée le découpage. Une branche par groupe de classes restant.

3. On recommence dans chaque branche

L'arbre s'arrête quand plus aucun découpage n'est significatif ou que les segments deviennent trop petits. Il n'y a pas d'élagage a posteriori.

LE CAS MÉTIER

marketing · distribution / banque / e-commerce
EN ENTRÉE

Les clients ciblés par une campagne

Âge, ancienneté, panier moyen, nombre de visites sur 30 jours, tous découpés en 4 classes. Et la réponse : le client a-t-il acheté après la campagne ?

EN SORTIE

Des segments de réponse

Chaque feuille est un segment avec son taux d'achat. Sur le jeu d'exemple, l'âge est la variable la plus liée à l'achat : environ 17 % d'acheteurs chez les moins de 35 ans, contre 11 à 12 % au-delà.

CE QU'ON MESURE

Taille et écart des segments

On juge un arbre CHAID à l'utilité de ses segments : assez gros pour être ciblés, assez différents pour justifier des messages différents. La performance prédictive globale passe au second plan.

QUAND LE SORTIR, QUAND L'ÉVITER

OUI

  • Segmenter une clientèle pour une étude ou une campagne
  • Variables déjà en classes : tranches d'âge, CSP, région, type de contrat
  • Restituer des résultats à un public habitué aux tableaux croisés
  • Repérer les interactions entre critères avant de construire un score

NON

  • Recherche de la meilleure prédiction : une Random Forest ou XGBoost font mieux
  • Petits échantillons : les tests du khi-deux manquent de puissance et l'arbre reste plat
  • Variables numériques fines : le découpage en classes perd de l'information, préférer CART
  • Mesurer l'effet d'une campagne : comparer ciblés et témoins relève de l'uplift modeling
LES 4 RÉGLAGES QUI COMPTENT

Noms donnés pour R (package CHAID). En Python, le package CHAID reprend les mêmes idées avec d'autres noms.

alpha2 / alpha_merge

Seuil du test qui décide si deux classes se fusionnent. Plus il est bas, plus les classes sont regroupées et moins l'arbre a de branches.

alpha4

Seuil de significativité pour accepter un découpage. À 0,05 par défaut ; le baisser donne un arbre plus prudent.

minbucket / min_child_node_size

Taille minimale d'un segment. Fixez-la selon ce qui est actionnable : un segment de 30 clients ne justifie pas une campagne.

Découpage des variables numériques

CHAID ne travaille que sur des classes. Le choix des tranches (quartiles, seuils métier) conditionne le résultat autant que les paramètres.

LE CODE MINIMAL

jeu d'exemple : campagne_marketing.csv ↓
# Profils acheteurs d'une campagne : CHAID en R
# CHAID n'est pas sur le CRAN : install.packages("CHAID", repos = "http://R-Forge.R-project.org")
library(CHAID)

campagne <- read.csv("campagne_marketing.csv")
cibles <- campagne[campagne$groupe == "cible", ]

# CHAID ne prend que des facteurs : on découpe les variables numériques en classes
# (facteurs ordonnés : seules des classes voisines peuvent être fusionnées)
d <- data.frame(
  achat = factor(cibles$achat, levels = c(0, 1), labels = c("non", "oui")),
  age = cut(cibles$age, c(0, 35, 50, 65, 120), right = FALSE, ordered_result = TRUE),
  anciennete = cut(cibles$anciennete_mois, c(0, 12, 36, 72, 200), right = FALSE, ordered_result = TRUE),
  panier = cut(cibles$panier_moyen, quantile(cibles$panier_moyen, 0:4 / 4), include.lowest = TRUE, ordered_result = TRUE),
  visites = cut(cibles$visites_30j, c(-1, 1, 3, 5, 20), ordered_result = TRUE)
)

# Seuils des tests du khi-deux et taille minimale des segments
modele <- chaid(achat ~ age + anciennete + panier + visites, data = d,
                control = chaid_control(alpha2 = 0.05, alpha4 = 0.05, minbucket = 100, maxheight = 2))
print(modele)

# Contrôle : taux d'achat par tranche d'âge
print(round(prop.table(table(d$age, d$achat), 1), 3))

QUESTIONS FRÉQUENTES

Quelle différence entre CHAID et CART ?

CHAID choisit ses découpages par des tests du khi-deux, ouvre plusieurs branches à la fois et s'arrête dès qu'aucun découpage n'est significatif. CART découpe toujours en deux, optimise un critère de pureté et élague par validation croisée. CHAID décrit des segments, CART prédit mieux.

Que veut dire CHAID ?

Chi-squared Automatic Interaction Detection : détection automatique d'interactions par le khi-deux. La méthode a été publiée par Gordon Kass en 1980. Elle est diffusée depuis longtemps dans SPSS, d'où sa popularité dans les instituts d'études.

CHAID accepte-t-il les variables continues ?

Pas directement : il faut les découper en classes, par quantiles ou seuils métier. Certains logiciels le font automatiquement. Pour la variable à expliquer, une version de CHAID accepte une cible continue avec un test F à la place du khi-deux.

LES ALGOS VOISINS

à comparer avant de choisir
l'arbre prédictif

Arbre de décision (CART)

Découpages binaires sur des seuils fins, élagage par validation croisée. Meilleur pour prédire.

Voir la fiche →
l'autre arbre multi-branches

C4.5 / C5.0

Choisit ses découpages au gain d'information et livre des règles si / alors.

Voir la fiche →
pour mesurer l'effet

Uplift modeling

Compare ciblés et témoins pour trouver les clients que la campagne fait vraiment changer d'avis.

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 →