Mise en oeuvre du mécanisme de post-élagage (post-pruning) de l'algorithme CART (Breiman et al., 1984) avec la classe de calcul DecisionTreeClassifier de Scikit-learn pour Python. Utilisation d'un échantillon dédié (pruning set, également connu sous l'appellation validation set dans d'autres logiciels ; des références qui s'appuient sur la validation croisée sont indiquées). Obtention des valeurs de l'hyperparamètre 'ccp_alpha' à utiliser via le "chemin de coût complexité". Courbes d'évolution de l'erreur en fonction du nombre de feuilles des arbres. Identification de l'arbre optimal. Conséquences sur l'erreur en généralisation mesuré sur un échantillon test à part. Quelques commentaires sur la procédure analogue proposée par la librairie "rpart" de R.
Page de cours : https://cours-machine-learning.blogsp...
00:00 Détermination de la taille "optimale" de l'arbre (pre-pruning vs. post-pruning)
07:38 Post-élagage sous Tanagra et R (package "rpart")
08:40 Schéma global de travail - Post-élagage avec scikit-learn
19:08 Base de données "waveform" de Breiman et al. (1984)
20:28 Démarrage du notebook - Importation et préparation des données
23:58 Création de l'arbre maximal (ccp_alpha = 0)
25:21 Taux d'erreur en resubstitution et en test
27:23 Chemin de coût complexité (séquence de valeurs de ccp_alpha)
29:50 Evolution des erreurs (growing, pruning) en fonction du nombre de feuilles
34:05 Identification de l'arbre "optimal" qui minimise l'erreur sur 'pruning set'
34:37 Accès à l'arbre "optimal", mesure du taux d'erreur sur l'échantillon test