Module 5 — Arbres de décision : lecture et limites
L'arbre de décision est le premier modèle non linéaire et pleinement lisible du parcours. Il imite le raisonnement humain — une suite de questions oui/non — et se dessine littéralement. Compris seul, il est fragile ; mais il est la brique élémentaire des méthodes d'ensemble (modules 6 et 7) qui dominent l'apprentissage tabulaire. D'où l'importance de bien le saisir ici.
Le principe : découper par questions successives
Un arbre pose des questions sur les variables — « surface > 80 ? », « quartier = centre ? » — et divise à chaque fois les données en deux groupes plus homogènes. On répète sur chaque groupe, formant une arborescence. Les feuilles finales donnent la prédiction : la classe majoritaire (classification) ou la valeur moyenne (régression) des observations qui y aboutissent.
À chaque nœud, l'algorithme choisit la question qui rend les groupes les plus purs — mesuré par l'impureté de Gini ou l'entropie en classification, par la réduction de variance en régression. Aucune formule à retenir : l'idée est « la coupe qui sépare le mieux les classes ».
from sklearn.tree import DecisionTreeClassifier
model = DecisionTreeClassifier(max_depth=4).fit(X_train, y_train)
Ce qui fait la force des arbres
- Lisibilité totale : on peut suivre le chemin d'une décision et l'expliquer, atout majeur face à des interlocuteurs métier ou réglementaires.
- Aucune mise à l'échelle requise : l'arbre compare des seuils, l'amplitude des variables n'a aucune importance — contraste net avec kNN et SVM.
- Non-linéarité et interactions : il capte naturellement des effets de seuil et des combinaisons de variables qu'un modèle linéaire manquerait.
- Mixte numérique / catégoriel : il gère les deux sans transformation lourde.
- Importance des variables :
model.feature_importances_indique quelles variables pèsent le plus dans les décisions.
La faiblesse fatale : un arbre seul surapprend
Laissé libre de pousser, un arbre continue de découper jusqu'à isoler chaque observation dans sa propre feuille : il finit par mémoriser les données d'entraînement, bruit compris. C'est le sur-apprentissage à l'état pur — variance maximale du cours de mathématiques. Symptôme classique : une précision parfaite à l'entraînement, médiocre au test.
L'autre fragilité est l'instabilité : changez quelques observations et l'arbre peut se réorganiser entièrement. Cette variance élevée est précisément ce que les méthodes d'ensemble vont exploiter — en la moyennant.
Limiter la casse : l'élagage
On bride le sur-apprentissage en limitant la croissance de l'arbre :
max_depth: profondeur maximale — le levier le plus efficace.min_samples_leaf: nombre minimal d'observations par feuille.min_samples_split: nombre minimal pour autoriser une coupe.
Ces réglages, à fixer par validation croisée (module 8), échangent un peu de biais contre beaucoup moins de variance.
En production, on utilise rarement un arbre isolé : sa variance le rend peu fiable. Sa vraie valeur est double : pédagogique (visualiser une décision) et structurelle (être la brique des forêts et du boosting). Gardez-le comme modèle de référence lisible et comme fondation à comprendre avant d'aborder les ensembles — pas comme solution finale.
En résumé
- Un arbre découpe l'espace par questions successives choisies pour maximiser la pureté des groupes ; les feuilles donnent la prédiction.
- Ses forces : lisibilité, aucune mise à l'échelle, non-linéarité et interactions, importance des variables.
- Seul, il surapprend presque toujours (variance maximale) et reste instable face à de petits changements de données.
- On le bride par élagage (
max_depth,min_samples_leaf), mais sa vraie valeur est d'être la brique des méthodes d'ensemble.
Module suivant : les forêts aléatoires — comment moyenner beaucoup d'arbres instables produit l'un des modèles les plus robustes qui soient.