ENSIIE - WIA1 Intelligence Artificielle 3ème cours - Arbres de décision Benjamin Piwowarski 13 octobre 2014 Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 1 / 41
Episode précédent Au lieu de programmer un ordinateur manuellement, donner à l ordinateur les moyens de se programmer lui-même supervisé On se limite à la problématique de classification binaire Fournir au système un ensemble d exemples étiquetés d apprentissage Se programmer lui-même = trouver les paramètres optimaux Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 2 / 41
Plan 1 Arbres de décision Principes Description Attributs continus Sur-apprentissage Conclusion Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 3 / 41
Principes Arbres de décision : principes Définition Un arbre de décision est un classifieur représenté sous forme d arbre tel que : Les noeuds de l arbre testent les attributs Il y a une branche pour chaque valeur possible de l attribut testé Les feuilles spécifient les catégories (deux ou plus) Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 4 / 41
Principes Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 5 / 41
Principes Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 6 / 41
Principes Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 7 / 41
Principes Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 8 / 41
Principes Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 9 / 41
Arbres de décision Principes Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 9 / 41
Description Intérêt Intérêts Les arbres de décision sont des classifieurs interprétables - contrairement aux perceptrons où KNN par exemple Ils fonctionnent facilement sur données qualitatives Ils fonctionnent bien (tant que le nombre de caractéristiques n est pas trop grand) Inconvénients Ils ne sont pas si interprétables que cela... Ils sont lents et instables pendant l apprentissage Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 10 / 41
Description Interprétabilité Avantage Les Arbres de décisions permettent d obtenir des fonctions de décision utilisables par un humain d où utilisation de ces arbres pour la découvertes de propriétés. Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 11 / 41
Description Interprétabilité... Toute fonction booléenne peut se représenter comme un arbre de décision Rappel : avec n attributs booléens, on peut définir 2 2n fonctions booléennes... Pour n = 6, on a 10 19 possibilités! Selon les fonctions à représenter les arbres sont plus ou moins grands La taille de l arbre peut grandir exponentiellement! Un arbre peut se représenter par une disjonction de règles Limité à la logique des propositions (on ne représente pas de relations) Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 13 / 41
Description Interprétabilité... Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 14 / 41
des arbres de décision A partir d un jeu de données d apprentissage, comment construire automatiquement un arbre de décision efficace? Il y a le plus souvent de nombreux arbres de décision possibles corrects. Enumération exhaustive impossible (NP-complet) 4 attributs et 3 valeurs = 55 296 arbres possibles Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 15 / 41
Soit la basse de donnée suivante : Quel arbre est la plus approrié? Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 16 / 41
Construction de l arbre des DTs A partir d un jeu de données d apprentissage, comment construire automatiquement un arbre de décision efficace? Enumeration NP-complet Solution : Construction itérative de l arbre (méthode gloutonne) Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 17 / 41
Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 18 / 41
Idée Construction de la racine vers les feuilles l attribut le plus informatif est sélectionné pour construire un nœud de l arbre Utilisation d une mesure de discrimination cas classique : entropie de Shannon, index de Gini,... Critères d une bonne mesure de discrimination : obtenir des nœuds cohérents minimiser la taille de l arbre fournir de bons résultats en classification Rôle de la mesure de discrimination : mesure de la prédictabilité de la valeur c k de C à partir d une valeur v i de A mesure du pouvoir de discrimination de l attribut A envers la classe C Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 19 / 41
Principes Trois concepts fondamentaux : 1 Quel attribut? 2 Quand arrêter? 3 Comment bien généraliser? Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 20 / 41
Gain d information Gain d information = différence entre 1 Entropie (théorie de l information - Shannon, 1948) H(C) = P(c) log P(c) 2 Espérance de l entropie connaissant la valeur de l attribut H(C A) = P(a) P(c a) log P(c a) a A c }{{} H(C A=a) IG(C, A) = H(C) H(C A) Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 21 / 41
Mesure de discrimination classique : 2 Classes Entropie de Shannon - Si 2 classes : H S (C) = P + log P + P log P Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 22 / 41
Attributs avec beaucoup de valeurs Problème (en général) Attributs avec beaucoup de valeurs => Gain d information haut Une solution GainRatio (C, A) = où H(A) est l entropie de l attribut A IG (C, A) H(A) Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 23 / 41
Régression Ces critères ne sont pas valables pour de la régression Dans CART, critère des moindres carrés LS(C, A) = min {x a} (x a y) 2 y Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 24 / 41
Autres critères Rapport de gain Indice de Gini Rapport de vraissemblance Chi-Carré DKM... Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 25 / 41
Construction de l arbre : cas général Algorithme d apprentissage (Algorithme C4.5) 1 Calculer Φ (A j ) pour tous les attributs A j 1 Choisir l attribut A j qui minimise Φ (A j ) créer un nœud dans l arbre de décision 2 A l aide de A j, partitionner la base d apprentissage Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 26 / 41
Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 27 / 41
Exemple H(C DF ) = 5 8 H (C DF = vrai) + 3 8H(C DF = faux)... H (C DF = vrai) = 3 5 log 3 5 2 5 log 2 5 0.67 H (C DF = faux) = 1 3 log 1 3 2 3 log 2 3 0.63 H(C DF ) 0.65, H(C BH) 0.65, H(C TB) = 0.56 et H(C GP) = log 2 0.69 Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 28 / 41
Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 29 / 41
Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 30 / 41
Attributs continus Discrétisation Problématique Que faire dans le cas d entrées à valeurs continues i.e vecteurs? Solution : On discrétise : transformation d une variable continue en une ou plusieurs variables discrète Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 31 / 41
Attributs continus Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 32 / 41
Attributs continus Exemple Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 33 / 41
Attributs continus Comment faire? Les essayer tous Essayer à intervalles réguliers («grid search»)? Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 34 / 41
Sur-apprentissage Sur-apprentissage Grande complexité = RISQUE DE SUR-APPRENTISSAGE Deux moyens de le limiter 1 Arrêter la construction de l arbre 2 Élaguer Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 35 / 41
Sur-apprentissage Critère d arrêt Erreur d apprentissage Profondeur maximum Taille de l échantillon Critère numérique (ex. IG en-dessous d un seuil) Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 36 / 41
Sur-apprentissage Élagage Elagage à posteriori Idée : Elaguer après la construction de l arbre entier, en remplaçant les sous-arbres optimisant un critère d élagage par un noeud. Nombreuses méthodes. Encore beaucoup de recherches. Minimal Cost-Complexity Pruning (MCCP) (Breiman et al.,84) Reduced Error Pruning (REP) (Quinlan,87,93) Minimum Error Pruning (MEP) (Niblett & Bratko,86) Critical Value Pruning (CVP) (Mingers,87) Pessimistic Error Pruning (PEP) (Quinlan,87) Error-Based Pruning (EBP) (Quinlan,93) (utilisé dans C4.5)... Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 37 / 41
Sur-apprentissage Reduced Error Pruning (REP) Récursion depuis le bas de l arbre Avec un jeu de validation À chaque nœud, on regarde taux d erreur si on remplace par la classe majoritaire si < au taux d erreur global => on remplace Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 38 / 41
Sur-apprentissage Error-Based Pruning (EBP) Récursion depuis le haut de l arbre Sans jeu de validation Basé sur une borne supérieure sur l erreur de classification E max (T, S) = ɛ(t, S) + Z α ɛ (T, S) (1 ɛ (T, S)) S ɛ est le taux de mauvaise classification Z α est l inverse de la distribution cumulative normale α seuil pour que le test soit significatif Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 39 / 41
Conclusion Conclusion Approprié pour : Classification de formes décrites en attributs-valeurs Attributs à valeurs discrètes Résistants au bruit Stratégie : Recherche par construction incrémentale d une hypothèse Critère local (gradient) fondé sur critère statistique Engendre Arbre de décision interprétable (e.g. règles de production) Nécessite contrôle de la taille de l arbre Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 40 / 41
Conclusion Applications Principalement, exploration de données... un arbre... et des forêts! Plus d interprétation possible mais modèles très robustes Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 41 / 41