Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Arbre Fou | Arbre de Décision
Classification Avec Python
course content

Contenu du cours

Classification Avec Python

Classification Avec Python

1. Classificateur K-NN
2. Régression Logistique
3. Arbre de Décision
4. Forêt Aléatoire
5. Comparer les Modèles

book
Arbre Fou

Avant de finalement passer à l'implémentation d'un arbre de décision en Python, une chose de plus doit être discutée. Il s'agit du surapprentissage – le principal défi associé aux arbres de décision.

Voici un exemple de la façon dont l'Arbre de Décision s'adapte au jeu de données.

Vous pouvez remarquer que le modèle s'adapte parfaitement à l'ensemble d'entraînement sans mal classer aucune instance.

Le seul problème est que les frontières de décision sont trop complexes, et la précision du test (ou de la validation croisée) sera significativement inférieure à celle de l'ensemble d'entraînement. Le modèle surapprend.
L'Arbre de Décision fera autant de divisions que nécessaire pour ajuster parfaitement les données d'entraînement.

Heureusement, l'Arbre de Décision est assez configurable. Voyons comment nous pouvons contraindre l'Arbre pour réduire le surapprentissage :

max_depth

Profondeur d'un nœud est la distance (verticalement) du nœud au nœud racine.

Nous pouvons limiter la profondeur maximale d'un arbre de décision, rendant l'arbre plus petit et moins susceptible de surajuster. Pour ce faire, nous transformons les nœuds de décision à une profondeur maximale en nœuds feuilles.

Voici également un gif montrant comment la frontière de décision change avec différentes profondeurs maximales.

min_samples_leaf

Une autre façon de contraindre l'arbre est de définir le nombre minimum d'échantillons sur les nœuds feuilles. Cela rendra le modèle plus simple et plus robuste aux valeurs aberrantes.

Voici un GIF montrant comment min_samples_leaf affecte la frontière de décision.

Ces deux paramètres sont inclus dans Scikit-Learn en tant qu'hyperparamètres de l'arbre de décision. Par défaut, l'arbre est sans contrainte, donc max_depth est défini sur None, ce qui signifie aucune restriction de profondeur, et min_samples_leaf est défini sur 1.

Choisissez l'énoncé INCORRECT.

Choisissez l'énoncé INCORRECT.

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 3
We're sorry to hear that something went wrong. What happened?
some-alt