Aller au contenu principal

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.

Un arbre seul : surtout pour comprendre

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.