Apprentissage Artificiel et fouille de données Arbres de décision Jamal Atif, Université Paris Dauphine D’après Céline Hudelot (ECP), d’après Tan, Steinbach, Kumar M2R ISI Université Paris-Dauphine 2015-2016 Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 1 /Paris 73 Introduction Plan 1 Introduction 2 Arbres de décision Choix de l’attribut discriminant Algorithme CART Algorithme C4.5 Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 2 /Paris 73 Introduction Classification Examiner les caractéristiques d’un objet et lui attribuer une classe (un champ particulier à valeurs discrètes). Etant donnée une collection d’enregistrements (ensemble d’apprentissage). Chaque enregistrement contient un ensemble d’attributs et un de ces attributs est sa classe. Trouver un modèle pour l’attribut classe comme une fonction de la valeurs des autres attributs But : permettre d’assigner une classe à des enregistrements inconnus de manière aussi précise que possible. Un ensemble de test est utilisé pour déterminer la précision du modèle. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 3 /Paris 73 Introduction Classification : exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 4 /Paris 73 Arbres de décision Plan 1 Introduction 2 Arbres de décision Choix de l’attribut discriminant Algorithme CART Algorithme C4.5 Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 5 /Paris 73 Arbres de décision Arbres de décision Définition Ensemble de règles de classification basant leur décision sur des tests associés aux attributs, organisés de manière arborescente. Motivation Produire des classifications compréhensibles par l’utilisateur (versus les autres méthodes) Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 6 /Paris 73 Arbres de décision Arbres de décision Principe Prédire la valeur d’un attribut(variable cible ou variable exogène) à partir d’un ensemble de valeurs d’attributs (variables prédictives ou variables endogènes). Une méthode simple, supervisée, et très connue de classification et de prédiction. Un arbre est équivalent à un ensemble de règles de décision : un modèle facile à comprendre. Un arbre est composé : de noeuds : classes d’individus de plus en plus fines depuis la racine. d’arcs : prédicats de partitionnement de la classe source. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 7 /Paris 73 Arbres de décision Arbres de décision Un arbre de décision est un arbre au sens informatique. Les noeuds sont repérés par des positions ∈ {1, ...p}∗ , où p est l’arité maximale des noeuds. Les noeuds internes sont les noeuds de décision. Un noeud de décision est étiqueté par un test qui peut être appliqué à chaque description d’un individu d’une population. Chaque test examine la valeur d’un unique attribut. Dans les arbres de décision binaires, on omet les labels des arcs. Les feuilles sont étiquetées par une classe. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 8 /Paris 73 Arbres de décision Arbres de décision : exemple Décider si un patient est malade ou bien portant selon sa température et s’il a la gorge irritée. Arbre de décision : 2 classes : malade ; bien portant 2 variables : température, gorge irritée. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 9 /Paris 73 Arbres de décision Arbres de décision Vocabulaire Noeud interne, intermédiaire ou test (noeud de décision) : chaque noeud intermédiaire est défini par un test construit à partir d’une variable. Le test est applicable à toute description d’une instance et généralement un test sur un seul attribut. Noeud terminal ou feuille : étiquetés par une classe. Arcs issus d’un noeud interne : réponses possibles au test du noeud. Chaque noeud interne ou feuille est repéré par sa position (i.e. liste des numéros des arcs qui permettent d’y accéder en partant de la racine). Arbre de décision et apprentissage : Tout arbre de décision définit un classifieur. Le classifier se traduit immédiatement en terme de règle de décision. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 10 /Paris 73 Arbres de décision Arbres de décision : exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 11 /Paris 73 Arbres de décision Arbres de décision : exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 12 /Paris 73 Arbres de décision Arbres de décision : exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 13 /Paris 73 Arbres de décision Arbres de décision : exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 14 /Paris 73 Arbres de décision Arbres de décision : exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 15 /Paris 73 Arbres de décision Arbres de décision : exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 16 /Paris 73 Arbres de décision Arbres de décision : exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 17 /Paris 73 Arbres de décision Arbres de décision : induction Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 18 /Paris 73 Arbres de décision Arbres de décision : induction Plusieurs algorithmes Algorithme de Hunt (méthode de base) CART ID3, C4.5 SLIQ, SPRINT ... Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 19 /Paris 73 Arbres de décision Arbres de décision : induction Principe général de construction de l’arbre de décision Construction de l’arbre en découpant successivement les données en fonction des variables prédictives. Soit Dt l’ensemble d’enregistrements (données d’apprentissage) qui amène au noeud t. Algorithme générique : Segmenter(Dt ) Si tous les enregistrements de Dt appartiennent à la même classe de variable à prédire yt alors t est une feuille labelisée comme yt Si Dt contient des enregistrements appartenant à plusieurs classes : Pour chaque attribut prédictif A, évaluer la qualité de découpage selon A. Utiliser l’attribut donnant la meilleure découpe pour découper l’ensemble de données en sous ensembles. Appliquer la procédure de manière récursive sur les sous ensembles obtenus. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 20 /Paris 73 Arbres de décision Arbres de décision : induction Problèmes fondamentaux pour construire l’arbre 1 Choix de l’attribut discriminant. 2 Affectation d’un label à une feuille. 3 Arrêt de la procédure de segmentation (i.e. profondeur de l’arbre). Si un arbre est trop profond, il est trop complexe et trop adapté à l’ensemble d’apprentissage, i.e. pas assez généraliste. 4 Choix des bornes de discrétisation (i.e. comment découper les valeurs d’un attribut continu). Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 21 /Paris 73 Arbres de décision Arbres de décision : construction Notations n(p) = nombre d’individus associés à la position p, i.e. au noeud p. n(k|p) = nombre d’individus appartenant à la classe k en sachant qu’ils sont associés à la position p. p(k|p) = n(k|p) n(p) = proportion des individus appartenant à la classe k. Pureté d’un noeud Un noeud est pur si tous les individus associés appartiennent à la même classe. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 22 /Paris 73 Arbres de décision Arbres de décision : construction Exemple But : construire un arbre de décision qui classe et détermine les caractéristiques des clients qui consultent leurs comptes sur internet. Variables : M : moyenne des montants sur le compte A : âge du client R : lieu de résidence du client E : le client fait des études supérieures ? I : le client consulte ses comptes sur Internet ? Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 23 /Paris 73 Arbres de décision Arbres de décision : construction Exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 24 /Paris 73 Arbres de décision Arbres de décision : construction Construction descendante. Au début, tous les individus sont regroupés. Est-ce que le noeud initial (3, 5) est un noeud terminal ou est-ce qu’on peut construire un test sur une variable qui permettra de mieux discriminer les individus ? Quatre constructions possibles suivant les variables Montant (M ), Age (A), Résidence (R), et Etudes (E). Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 25 /Paris 73 Arbres de décision Arbres de décision : construction Construction selon la variable Montant (M ) Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 26 /Paris 73 Arbres de décision Arbres de décision : construction Construction selon la variable Age (A) Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 27 /Paris 73 Arbres de décision Arbres de décision : construction Construction selon la variable Résidence (R) Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 28 /Paris 73 Arbres de décision Arbres de décision : construction Construction selon la variable Etudes (E) Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 29 /Paris 73 Arbres de décision Arbres de décision : construction Quel test choisir ? Un test est intéressant s’il permet une bonne discrimination. Sur R, aucune discrimination sur aucune branche : on ne gagne rien avec ce test ! Sur A, deux noeuds sur trois sont purs. Comment écrire cela de manière algorithmique et mathématique ? Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 30 /Paris 73 Arbres de décision Arbres de décision : construction Degré de désordre (mélange) On a besoin de comparer les différents choix possibles. On introduit des fonctions qui permettent de mesurer le degré de désordre dans les différentes classes (pureté d’un noeud) Propriétés des fonctions (degré de mélange ou désordre) : Le minimum est atteint lorsque tous les noeuds sont purs : tous les exemples ou individus sont dans une même classe. Le maximum est atteint lorsque les individus sont équirépartis entre les classes. Exemples de fonctions : Indice de Gini Entropie ... Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 31 /Paris 73 Arbres de décision Choix de l’attribut Plan 1 Introduction 2 Arbres de décision Choix de l’attribut discriminant Algorithme CART Algorithme C4.5 Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 32 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Comment spécifier la condition de test ? Dépend du type d’attribut Nominal Ordinal Continu Dépend du nombre de façon de diviser Division en 2 Division en n. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 33 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Attribut nominal Division multiple : autant de partitions que de valeurs distinctes. Division binaire : Division des valeurs en deux sous-ensembles ⇒ Trouver le partitionnement optimal. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 34 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Attribut ordinal Division multiple : autant de partitions que de valeurs distinctes. Division binaire : Division des valeurs en deux sous-ensembles ⇒ Trouver le partitionnement optimal. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 35 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Attribut continu Différentes manières de discrétiser : Discrétisation pour former un attribut ordinal. Décision binaire Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 36 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Critère de choix de l’attribut et de la division Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 37 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant On privilégie les noeuds avec des distributions homogènes Mesure du désordre d’un noeud Indice de Gini Entropie Taux de classification Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 38 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 39 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant t = le test (i.e. la variable) n = le nombre de modalités de t. i = la fonction pour mesurer le degré de désordre. Fonction de gain Gain(p, t) = i(p) − n X Pj i(pj ) j=1 avec Pj la proportion des individus à la position p qui vont en position pj On cherche le test qui maximise le gain. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 40 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Mesure du désordre : GINI Pour un noeud t donné : GIN I(t) = 1 − X p(j|t)2 j avec p(j|t) la fréquence relative de la classe j au noeud t. Maximum : 1 − n1c quand tous les enregistrements sont distribués de manière égale parmi toutes les classes. Minimum : 0.0 quand tous les enregistrements appartiennent à une classe. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 41 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Mesure du désordre : GINI GIN I(t) = 1 − X p(j|t)2 j Exemples Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 42 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Division basée sur l’indice GINI Utilisé dans les algorithmes CART, SPLIQ et SPRINT Quand un noeud p est divisé en k partitions, la qualité de la division est calculée par k X ni GIN Isplit = GIN I(i) n i=1 avec ni nombre d’enregistrements au noeud i. n nombre d’enregistrements au noeud p. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 43 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Attributs binaires : indice de Gini Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 44 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Attributs catégoriques : indice de Gini Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 45 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Attributs continus : indice de Gini Pour chaque attribut Trier les attributs par valeurs Scanner linéairement les valeurs , en calculant l’indice de Gini Choisir la position qui a le plus petit indice de Gini Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 46 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Entropie Entropie à un noeud t : Entropy(t) = − X p(j|t) log p(j|t) j Mesure de l’homogénéité d’un noeud : Maximum : log nc quand les enregistrements sont distribués de manière égal parmi les classes. Minimum : 0.0 quand tous les enregistrements appartiennent à une classe Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 47 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Entropie Entropy(t) = − X p(j|t) log p(j|t) j Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 48 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Retour sur l’exemple Tester sur la variable Montant (M ) : on considère le noeud 0, (3, 5) avec comme fonction l’entropie. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 49 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Retour sur l’exemple 3 3 2 Gain(0, M ) = i(0) − ( i(1) + i(2) + i(3)) 8 8 8 1 2 2 1 Entropie(1) = − log − log = 0.64 3 3 3 3 2 2 1 1 Entropie(2) = − log − log = 0.64 3 3 3 3 2 2 Entropie(3) = − log = 0 2 2 Gain(0, M ) = Entropie(0) − 0.48 Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 50 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Retour sur l’exemple on considère le noeud 0, (3, 5) avec comme fonction l’entropie. Choix de l’attribut âge (A) Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 51 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Construction de l’arbre. Noeud terminal Lorsque (presque) tous les exemples en ce noeud sont dans la même classe. Lorsqu’il n’y a plus d’attributs à tester à ce niveau. Quelle classe à un noeud terminal ? Classe majoritaire. Classe la plus représentée si égalité. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 52 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Retour sur l’exemple Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 53 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Retour sur l’exemple Suite de la construction Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 54 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Retour sur l’exemple Suite de la construction Quel test choisir ? Calcul du gain pour chaque test. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 55 /Paris 73 Arbres de décision Choix de l’attribut Choix de l’attribut discrimimant Retour sur l’exemple Suite de la construction Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 56 /Paris 73 Arbres de décision Choix de l’attribut Apprentissage des arbres de décision Idée : rappel Diviser récursivement et le plus efficacement possible les individus de l’ensemble d’apprentissage par des tests définis à l’aide des variables jusqu’à obtenir des sous ensembles d’individus ne contenant presque que des exemples appartenant à une même classe. Trois opérations : rappel 1 Décider si un noeud est terminal, i.e. tous les individus sont dans la même classe ou il y a moins d’un certain nombre d’erreurs. 2 Sélectionner un test associé à un noeud. 3 Affecter une classe à une feuille. Les différents algorithmes diffèrent par ces trois opérations. Objectif : construire un arbre avec la plus petite erreur de classification possible Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 57 /Paris 73 Arbres de décision Choix de l’attribut Apprentissage des arbres de décision : généralités Arbre de décision parfait, i.e. tous les exemples sont bien classifiés : n’existe pas toujours. Le meilleur arbre est l’arbre le plus petit parfait. L’objectif est d’obtenir l’arbre le plus petit possible (facilitant la recherche) tout en établissant un compromis entre les taux d’erreur sur l’ensemble d’apprentissage et sur l’ensemble de test afin de pouvoir généraliser. En pratique : on construit l’arbre en sélectionnant les attributs qui minimisent la taille de l’arbre en classant correctement les exemples d’apprentissage et ensuite on élague certaines branches pour garder un pouvoir de généralisation (quitte à faire augmenter l’erreur sur l’ensemble d’apprentissage).. Deux approches : Eviter une trop grande croissance de l’arbre en arrêtant sa construction au bon moment. Procéder en deux phases : construire l’arbre complètement puis couper les branches qui dépassent. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 58 /Paris 73 Arbres de décision Algorithme CART Plan 1 Introduction 2 Arbres de décision Choix de l’attribut discriminant Algorithme CART Algorithme C4.5 Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 59 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Génère un arbre de décision binaire. On suppose prédéfini un ensemble de tests binaires. 1 Variables qualitatives à n modalités. autant de tests binaires que de partitions en deux classes. 2n−1 − 1 tests possibles. 2 Variables quantitatives Une infinité de découpage selon des seuils. Le meilleur seuil est choisi par un expert ou de manière automatique. On dispose d’un échantillon S découpé en un ensemble d’apprentissage A et un ensemble de test T . Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 60 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Phase d’expansion Entrée : ensemble d’apprentissage A On utilise la fonction Gini. Décider si un noeud est terminal : Un noeud à la position p est terminal si Gini(p) ≤ s0 ou n(p) ≤ n0 où s0 et n0 sont des paramètres à fixer. Selectionner un test à associer à un noeud : On choisit le test qui maximise ∆(p, t), avec p une position, t un test et Pg , Pd la proportion d’éléments qui vont sur la position p1 , respectivement p2 ∆(p, t) = Gini(p) − (Pg × Gini(p1 ) + Pd × Gini(p2 )) Affecter une classe à une feuille : on choisit la classe majoritaire Sortie : un arbre de décision. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 61 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Phase d’elaguage Entrée : l’arbre de décision obtenu dans la phase d’expansion. Construction d’une suite d’arbres t0 t1 ...tk . On calcule pour chaque tj l’erreur apparente sur l’ensemble T La suite est donnée par : 1 2 3 t0 est l’arbre obtenu dans la phase d’expansion. tk est une feuille. A l’étape ti : pour toute position p de ti , on calcule g(p) et on choisit la position p qui minimise g(p). L’arbre ti+1 est un élagué de ti en position p. Sortie : l’arbre de la suite dont l’erreur apparente est minimale. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 62 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Fonction g Calcul de g(p) : soit up le sous-arbre de ti à la position p et g(p) = , où ∆app (p) = ∆app (p) |up | − 1 M C(p)−M C(up ) , N (p) nombre d’erreurs supplémentaires que commet l’arbre sur l’échantillon lorsqu’on élague à la position p. |up | − 1 mesure le nombre de feuilles supprimées. |up | taille de l’arbre up N (p) est le nombre d’exemples de A associés à p. M C(p) est le nombre d’exemples de A mal classés à p si on élague ti en position p. M C(up ) est le nombre d’exemples de A associés à p de ti mal classés par up On choisit la position p pour laquelle g(p) est minimale. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 63 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Processus iératif ti+1 est obtenu à partir de ti , auquel on coupe la branche qui permet un g minimal. Soit t0 , ...tk la suite obtenue, tk est réduit à une feuille. Sélection de l’arbre ti dont le nombre d’erreurs calculées sur l’ensemble de validation est minimal. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 64 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Exemple d’élagage Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 65 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Exemple d’élagage Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 66 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Exemple d’élagage Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 67 /Paris 73 Arbres de décision Algorithme CART Algorithme CART Exemple d’élagage Calculs d’erreurs : t0 : 0 en apprentissage, t1 : t2 : t3 : 1 4 1 2 1 2 en apprentissage, en apprentissage, en apprentissage, 1 2 1 2 1 4 1 4 en test. en test. en test. en test. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 68 /Paris 73 Arbres de décision Algorithme C4.5 Plan 1 Introduction 2 Arbres de décision Choix de l’attribut discriminant Algorithme CART Algorithme C4.5 Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 69 /Paris 73 Arbres de décision Algorithme C4.5 Algorithme C4.5 Alternative à l’algorithme CART quand la taille de l’échantillon S ne permet pas le découpage en A et T . Phase d’expansion (1/2) Entrée : ensemble d’apprentissage A et ensemble de tests n-aires. On utilise la fonction Entropie Décider si un noeud est terminal : Un noeud à la position p est terminal si tous les éléments associés à ce noeud sont dans une même classe où si on ne peut sélectionner aucun test. Selectionner un test à associer à un noeud : On envisage seulement les tests qui ont au moins deux branches contenant au moins deux éléments (paramètres pouvant être modifiés). On choisit le test qui maximise le gain en utilisant la fonction entropie. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 70 /Paris 73 Arbres de décision Algorithme C4.5 Algorithme C4.5 Phase d’expansion (2/2) La fonction Gain privilégie les attributs ayant un grand nombre de valeurs. On modifie la fonction en conséquence : Gainratio(p, T ) = avec Splitinf o(p, T ) = − n X Gain(p, T ) Splitinf o(p, T ) 0 0 P (j|p) × log(P (j|p)) j=1 n est l’arité du test T . 0 P (j|p) est la proportion d’exemples présentes à p prenant la jième valeur (classe) du test T . Affecter une classe à une feuille : On attribute la classe majoritaire. Si il n’y a pas d’exemples, on attribue la classe majoritaire du père. Sortie : un arbre de décision. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 71 /Paris 73 Arbres de décision Algorithme C4.5 Algorithme C4.5 Phase d’elagage La phase d’élagage est basée sur une heuristique. Améliorations : Attributs discrets. Attributs continus. Valeurs manquantes. Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 72 /Paris 73 Arbres de décision Algorithme C4.5 Conclusion Conclusion sur les arbres de décision Algorithme de classification supervisée. Méthode statistique non paramétrique Permet de classer un ensemble d’individus décrits par des variables qualitatives ou quantitatives Produit les classes les plus homogènes possibles Jamal Atif, Université Paris Dauphine D’après Céline Hudelot ISI-3 (ECP), d’après Tan, Steinbach, Kumar 2015-2016 (Université 73 /Paris 73