Académique Documents
Professionnel Documents
Culture Documents
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]
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
3
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]).
4
Découpages
Les décisions
correspondent à des
découpages des
données en
rectangles
IRIS
5
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
6 I.H. Witten and E. Frank, “Data Mining”, Morgan Kaufmann Pub., 2000.
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.
7
Quel attribut faut-il sélectionner?
Classe
Classe: :YES Classe
NO : YES
8
Arbre de décision final
9
Arbres de décision et règles de
classification
Transformations
11
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
true
false Pret = No
true false
If MS <= 5000 and age > 25 and
autres_comptes = Yes then Pret =
true
false Yes
If MS <= 5000 and age > 25 and
12 autres_comptes = No then Pret = No
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)
13
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.
14
Le ou exclusif (XOR)
15
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
16
Un autre arbre avec duplication
17
Algorithme
Pour quels types de données?
19
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é
20
Algorithme
22
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
m
Donc, il y a 22 arbres de décision possibles.
Comment sélectionner le meilleur?
23
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
24
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
25
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
26 I.H. Witten and E. Frank, “Data Mining”, Morgan Kaufmann Pub., 2000.
météo
Exercice
Calculer:
– P(play = “yes”)
– P(play = “no”)
– P(play = “no” | overcast = “sunny”)
– P(play = “yes” | overcast = “sunny”)
– P(overcast = “sunny” and humidity = “high”)
27
Information = Entropie
1
Entropy (p1 , p 2 ) p1 log p1 p 2 log p 2
log 2
pi est la probabilité de la classe i
pi = # d’occurrences de i / total # d’occurrences
Cette formule est généralisable
28
Entropie pour 3 probabilités
1
Entropy (p1 , p 2 , p 3 ) p1 log p1 p 2 log p 2 p 3 log p 3
log 2
p 2 p3
Entropy (p1 , p 2 , p 3 ) Entropy (p1 , p 2 p 3 ) ((p 2 p 3 )Entropy ( , ))
p 2 p3 p 2 p3
Propriété de l’entropie
29
Première étape: Information Outlook
2 3
Info ([2,3]) Entropy ,
Outlook = 5 5
“Sunny”
Info ([2,3]) Entropy (0.4,0.6)
1
Info ([2,3]) 0.4 log(0.4) 0.6 log(0.6)
log 2
Info ([2,3]) 0.971 bits
Similarly:
Outlook =
“Overcast” Info([4,0]) 0.0 bits
Outlook = Info([3,2]) 0.971 bits
30 “Rainy”
outlook
32 Info([2,3],[4,0],[3,2]) = 0.693
Information sans utiliser l’arbre
Outlook
9 5
Info ([9,5]) Entropy ,
14 14
Info ([9,5]) 0.940 bits
33
Gain d’information pour Outlook
35
Choix du deuxième attribut
36
Arbre de décision final
37
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)
38
Information de branchement
Première étape:
5 4 5
Info ([5,4,5]) Entropy , ,
14 14 14
Info ([5,4,5]) 1.577
39
Calcul des gains de rapport
I.H. Witten and E. Frank, “Data Mining”, Morgan Kaufmann Pub., 2000.
40
É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
41
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?
42
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
43
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 83 85
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 83 85
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)
44
Exercice
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
45
Arbre à un niveau
46
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.
47
Surapprentissage (Overfitting)
48
Simplification de l’arbre de décision
49
Interprétation des arbres de
décision
50
La méthode
Apprentissage supervisé
Le résultat est lisible
– Outils de navigation dans l’arbre
Les valeurs manquantes peuvent être traitées
Tous les types d’attributs peuvent être pris en compte
Elle peut être utilisée comme près traitement
La classification d’un exemple est très efficace
Moins efficace pour un nombre important de classes
Elle n’est pas incrémentale
51
Références
http://www.grappa.univ-lille3.fr/polys/fouille/
I. H. Witten, and E. Frank. Data Mining :
Practical Machine Learning Tools and
Techniques with Java Implementations.
Morgan Kaufmann.
52