1 / 52

FDD et Arbres de D é cision

FDD et Arbres de D é cision. Christelle Scharff IFI Juin 2004. G é n é ralit é s. Arbres de décision. Une structure de données utilisée comme modèle pour la classification [Quinlan]

eilis
Download Presentation

FDD et Arbres de D é cision

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FDD et Arbres de Décision Christelle Scharff IFI Juin 2004

  2. Généralités

  3. Arbres de décision • Une structure de données utilisée comme modèle pour la classification [Quinlan] • Méthode récursive basée sur diviser-pour-régner pour créer des sous-groupes (plus) purs (un sous-groupe est pur lorsque tous les éléments du sous-groupe appartiennent à la même classe) • Construction du plus petit arbre de décision possible • Nœud = Test sur un attribut • Une branche pour chaque valeur d’un attribut • Les feuilles désignent la classe de l’objet à classer • Taux d’erreur: La proportion des instances qui n’appartiennent pas à la classe majoritaire de la branche • Problèmes: Choix de l’attribut, terminaison

  4. Algorithmes • Les deux algorithmes les plus connus et les plus utilisés (l'un ou l'autre ou les deux sont présents dans les environnements de fouille de données) sont CART (Classification And Regression Trees [BFOS84]) et C5 (version la plus récente après ID3 et C4.5 [Qui93]). • [BFOS84] L. Breiman, J. H. Friedman, R. A. Olshen, and C. J. Stone. Classification and regression trees. Technical report, Wadsworth International, Monterey, CA, 1984. • [Qui93] J. R. Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufmann, San Mateo, CA, 1993.

  5. Découpages Les décisions correspondent à des découpages des données en rectangles IRIS

  6. Météo et match de foot Attribut but 2 classes: yes et no Prédire si un match de foot va avoir lieu ou non Température est un nominal I.H. Witten and E. Frank, “Data Mining”, Morgan Kaufmann Pub., 2000.

  7. Météo et match de foot 2 classes: yes et no Température est un numérique I.H. Witten and E. Frank, “Data Mining”, Morgan Kaufmann Pub., 2000.

  8. Quel attribut faut-il sélectionner? Classe:YES Classe: YES Classe: NO

  9. Arbre de décision final

  10. Arbres de décision et règles de classification

  11. Transformations • Arbre de décision  Règles (Évident) • Les arbres de décision représentent une collection d’implications • Règles  Arbre de décision (Non évident) • Optimisations toujours possibles

  12. Arbre de décision  Règles • Attribution d’un prêt suivant la moyenne des soldes courants (MS), l’age et la possession d’autres comptes If MS > 5000 then Pret = Yes If MS <= 5000 and age <= 25 then Pret = No If MS <= 5000 and age > 25 and autres_comptes = Yes then Pret = Yes If MS <= 5000 and age > 25 and autres_comptes = No then Pret = No true false true false true false

  13. Représentation d’une expression par un arbre de décision • Certaines fonctions ne sont pas facilement représentées par des arbres de décision • Exemple: • La fonction paire définie par: le résultat est vrai si le nombre d’attributs est pair • Toute formule de la logique propositionnelle peut être représentée par un arbre de décision • La logique propositionnelle est construite à partir de: • Variables propositionnelles • D’opérateurs logiques: and, or, not,  (implication),  (équivalence)

  14. Règles Arbre de décision • Exemple: if X and Y then A if X and W and V then B if Y and V then A Peuvent être représentées par un arbre de décision. De plus, Les règles peuvent être combinées en: if Y and (X or V) then A if X and W and V then B Et on obtient un autre arbre de décision de ces 2 règles.

  15. Le ou exclusif (XOR)

  16. Un arbre de décision pour deux règles simples If a and b then x If c and d then x Il y a une duplication d’un sous-arbre dans l’arbre

  17. Un autre arbre avec duplication

  18. Algorithme

  19. Pour quels types de données? • On se restreint d’abord aux données nominales seulement • Extension aux numériques: • Il est possible de traiter les numériques en les transformant en nominaux (ou ordinaux) par discrétisation

  20. Algorithme • On considère un nœud • On sélectionne un attribut pour ce nœud • On crée une branche pour chaque valeur de cet attribut • Pour chaque branche, on regarde la pureté de la classe obtenue • On décide si on termine la branche ou non • Si on ne termine pas le processus est répété

  21. Algorithme algorithmLearnDecisionTree(examples, attributes, default) returns a décision tree inputs: examples, a set of examples attributes, a set of attributes default, default value for goal attribute ifexamples is empty then return leaf labeled by default else if all examples have same value for goal attribute // pure class thenreturn leaf labeled by value else bestatt = ChooseAttribute(attributes, examples) // to be defined tree = a new décision tree with root test bestatt for each value vi of bestattdo examplesi = {éléments of examples with best = vi} subtree = LearnDecisionTree(examplesi, attributes – bestatt, MajorityValue(examples)) add a branch to tree with label vi and subtree subtree returntree MajorityValue: classe majoritaire

  22. Analyse de l’algorithme • m : le nombre d’attributs • n : le nombre d’exemples/instances • Hypothèse: La hauteur de l’arbre est O(log n) • A chaque niveau de l’arbre, n instances sont considérées (best = vi) (pire des cas) • O(n log n) pour un attribut dans l’arbre complet • Coût total: O(m n log n) car tous les attributs sont considérés (pire des cas)

  23. Combien d’arbres de décision? • Considérons m attributs booléens (ne contenant pas le but) • Nous pouvons construire un arbre de décision pour chaque fonction booléenne avec m attributs • Il y a 2m façons de donner des valeurs aux attributs • Le nombre de fonctions est le nombre de sous-ensembles dans un ensemble àm éléments • Donc, il y a 22m arbres de décision possibles. • Comment sélectionner le meilleur?

  24. Théorie de l’information • Besoin d’une méthode pour bien choisir l’attribut [Shannon & Weaver, 1949] • Mesure de l’information en bits (pas dans le sens ordinaire de bit – 0 ou 1) • L’information peut être un décimal • A chaque étape,àchaque point de choix dans l’arbre, on va calculer le gain d’information • L’attribut avec le plus grand gain d’information est sélectionné • Méthode ID3 pour la construction de l’arbre de décision

  25. Terminaison • Tous les attributs ont été considérés • Il n’est plus possible d’obtenir de gain d’information • Les feuilles contiennent un nombre prédéfini d’éléments majoritaires • Le maximum de pureté a été atteint • Toutes les instances sont dans la même classe • L’arbre a atteint une hauteur maximum

  26. Exemple: Météo et match de foot Attribut but 2 classes: yes et no Température est un nominal On veut pouvoir décider/prédire si un match de foot va avoir lieu ou pas suivant la météo I.H. Witten and E. Frank, “Data Mining”, Morgan Kaufmann Pub., 2000.

  27. Exercice • Calculer: • P(play = “yes”) • P(play = “no”) • P(play = “no” | overcast = “sunny”) • P(play = “yes” | overcast = “sunny”) • P(overcast = “sunny” and humidity = “high”)

  28. Information = Entropie pi est la probabilité de la classe i pi = # d’occurrences de i / total # d’occurrences Cette formule est généralisable

  29. Entropie pour 3 probabilités Propriété de l’entropie

  30. Première étape: Information Outlook Outlook = “Sunny” Similarly: Outlook = “Overcast” Outlook = “Rainy”

  31. info([2,3]) info([4,0]) info([3,2]) 0.971 0.0 0.971

  32. Information pour l’arbre La valeur de l’information pour l’arbre après branchement est la somme pondérée des informations de l’attribut de branchement. Le poids est la fraction des instances dans chaque branche. Information pour l’arbre complet après le choix de Outlook: Info([2,3],[4,0],[3,2]) = 0.693

  33. Information sans utiliser l’arbre Outlook

  34. Gain d’information pour Outlook De même: Outlookest choisi

  35. Étape suivante • Sélection d’un deuxième attribut • On peut examiner: • Température, Humidity ou Windy pour Outlook = “sunny” • Gain(“Température”) = 0.571 bits • Gain(“Humidity”) = 0.971 bits • Gain(“Windy”) = 0.020 bits • Et on continue… Humidity est choisi

  36. Choix du deuxième attribut

  37. Arbre de décision final

  38. Problèmes lies au calcul du gain • Les attributs qui ont de nombreuses valeurs possibles sont privilégiés • Exemple: Les attributs clés • Pour corriger ce problème, on utilise une autre mesure le rapport de gain (gain ratio) • Calcul de l’information de branchement dans l’arbre en utilisant: Original Gain / Information de branchement • Choisir l’attribut avec le plus grand rapport de gain

  39. Information de branchement Première étape:

  40. Calcul des gains de rapport Outlook est choisi I.H. Witten and E. Frank, “Data Mining”, Morgan Kaufmann Pub., 2000.

  41. Évaluer les arbres de décision • 2 types d’évaluation • Les performances d’un modèle • Les performances de la technique de FDD • Quelle mesure utiliser? • Taille du modèle • Nombre d’erreurs

  42. Extensions de l’algorithme • Comment traiter: • Les attributs numériques • Les valeurs manquantes • Comment simplifier le modèle pour éviter les bruits? • Comment tolérer les bruits? • Comment interpréter les arbres de décision?

  43. Comment traiter les attributs numériques? • Les attributs numériques sont transformés en ordinaux / nominaux. Ce processus est appelé discrétisation • Les valeurs des attributs sont divisées en intervalles • Les valeurs des attributs sont triées • Des séparations sont placées pour créer des intervalles / classes pur/e/s • On détermine les valeurs des attributs qui impliquent un changement de classes • Ce processus est très sensible au bruit • Le nombre de classes doit être contrôlé • Solution: On spécifie un nombre minimum d’éléments par intervalle • On combine les intervalles qui définissent la même classe

  44. Exemple: Les températures • Étape 1: Tri et création des intervalles 64 | 65 | 68 69 70 | 71 72 |72 75 75 | 80 | 81 83 | 85 Y | N | Y Y Y | N N|Y Y Y | N | Y Y | N • Étape 2: Les anomalies sont traitées 64 | 65 | 68 69 70 | 71 72 72| 75 75 | 80 | 81 83 | 85 Y | N | Y Y Y | N N Y| Y Y | N | Y Y | N 8 intervalles • Étape 3: Un minimum de 3 éléments (de la même classe) par intervalle 64 65 68 69 70 | 71 72 72 75 75 | 80 81 8385 Y N Y Y Y | N N Y Y Y | N Y Y N 3 intervalles • Étape 4: Combiner les intervalles 64 65 68 69 70 71 72 72 75 75 | 80 81 8385 Y N Y Y Y N N Y Y Y | N Y Y N 2 intervalles • Étape 5: Changement de classe pour une température de 77.5 ((75 + 80) / 2)

  45. Exercice • Faire de même pour les humidités suivantes: 65 70 70 70 75 80 80 85 86 90 90 91 95 96 Y N Y Y Y Y Y N Y N Y N N Y

  46. Arbre à un niveau

  47. Les valeurs manquantes • Ignorer les instances avec des valeurs manquantes • Solution trop générale, et les valeurs manquantes peuvent ne pas être importantes • Ignorer les attributs avec des valeurs manquantes • Peut-être pas faisable • Traiter les valeurs manquantes comme des valeurs spéciales • Les valeurs manquantes ont un sens particulier • Estimer les valeurs manquantes • Donner la valeur de l’attribut la plus répandue à l’attribut considéré • Imputation de données en utilisant diverses méthodes • Exemple : régression.

  48. Surapprentissage (Overfitting) • Adaptation et généralisation du modèle • Résultats sur l’ensemble d’entraînement et sur l’ensemble test

  49. Simplification de l’arbre de décision • Pour lutter contre l’overtiffing on peut simplifier l’arbre • Simplification avant • Simplifier étape par étape pendant la construction de l’arbre de décision • Simplification arrière • Simplification d’un arbre de décision existant

  50. Interprétation des arbres de décision • Une description adaptée et lisible par tout le monde En général, les personnes astigmates doivent avoir une prescription de lentilles de contacte dures.

More Related