Vous êtes sur la page 1sur 43

Chapitre 2 :

Arbres de décision
PLAN
 Introduction
 Principe d’induction
 Choix du meilleur attribut
 Autres paramètres d’induction
 Les méthodes existantes
 Les problèmes ouverts

2
Introduction

3
Exemple introductif
Un nœud = une variable
Un arc = une valeur
Une feuille = un ensemble d ’individus
Une branche = une règle

Si Température < 37,5 Et Gorge irritée


Alors malade

4
Apprentissage par génération de règles

 Méthodes qui consistent à générer directement


ou indirectement des règles de classification.

 Règles de production de la forme :


Si [prémisse] Alors [conclusion]
 Prémisse : conjonction de descripteurs logiques
du type attribut = valeur
(ou opérateur de comparaison, ensemble de valeurs, …)
 Conclusion : Classe = modalité.

 Méthodes à fort pouvoir explicatif, non paramétriques.


5
Apprentissage par génération de règles

• Exploration sélective du treillis de Galois d’une relation


binaire (CHARADE [Ganascia 87])

• Méthodes d’apprentissage dites «disjonctives»


(Espace des versions [Mitchell 82], Algorithme de
l’Etoile [Michalski 83])

• Approches connexionistes
([D’Alché-Buc 93] [Craven et al. 94] [Nedjari 97])

6
Apprentissage par génération de règles

• Les arbres de décision


(ID3, C4.5 [Quinlan 83, 96],
CART [Breiman et al. 84])

• Les graphes d’induction (SIPINA [Zighed et al. 92],


[Rakotomalala 97])

• Les Systèmes d’Inférence Floue


([Ishibuchi et al. 92], [Nozaki et al. 94] )

7
Les arbres de décision : Pourquoi ?
 Pour certains domaines d'application, il est essentiel de
produire des procédures de classification
compréhensibles par l'utilisateur.

 Les arbres de décision répondent à cette contrainte :


 représentation graphique d’un ensemble de règles
 interprétation aisée

 Algo. d'apprentissage par arbres de décision :


 efficaces,
 disponibles dans la plupart des environnements de
fouille de données. 8
Arbre de décision et règles de
décision météo

soleil nuage pluie

température oui vent

<= 10 >10 > 37.5 > 20 <= 20


et <= 37.5

non non non oui


oui

Règle 1: Règle 3:
SI (météo=“soleil”) ET (température<=10) SI (météo=“nuage”)
ALORS (jouer=“non”) ALORS (jouer=“oui”)
Règle 2: ...
SI (météo=“pluie”) ET (vent>20)
ALORS (jouer=“non”)
9
Les arbres de décision:
apprentissage Algorithmes
d’arbres de
décision
Données
D’apprentissage
Modèle
Day outlook temp humidity wind play
D1 sunny hot high weak No
D2 sunny hot high strong No
D3 overcast hot high weak Yes
D4 rain mild high weak Yes SI (météo=“soleil”) ET (température<=10)
D5 rain cool normal weak Yes
ALORS (jouer=“non”)
D6 rain cool normal strong No
D7 overcast cool normal strong Yes …
D8 sunny mild high weak No
D9 sunny cool normal weak Yes
D10 rain mild normal weak Yes
D11 sunny mild normal strong Yes
D12 overcast mild high strong Yes
D13 overcast hot normal weak Yes 10
D14 rain mild high strong No
Les arbres de décision:
prédiction
Modèle

Données Nouvelles données


de test
(soleil, T >10, hum:élevée, vent :fort)
Day outlook temp humidity wind play
D1 sunny hot high weak No
D2 sunny hot high strong No joue t-il au tennis?
D3 overcast hot high weak Yes
D4
D5
rain
rain
mild
cool
high
normal
weak
weak
Yes
Yes
oui
D6 rain cool normal strong No
D7 overcast cool normal strong Yes
11
D8 sunny mild high weak No
D9 sunny cool normal weak Yes
Les arbres de décision :
Principe d’induction

12
Les arbres de décision : Principe

 Classification basée sur une séquence de


questions portant sur un attribut.
 Chaque nœud est associé à un attribut et
représente un test (une question)
 Chaque arc issu de ce nœud correspond à l’une
des valeurs de cet attribut.
 La feuille désigne la classe correspondant à
l’objet à classer.

13
Apprentissage par partitionnement
Objectif : on veut construire des sous-groupes les
plus « homogènes » du point de vue de la
variable à prédire.
La variable qualitative Y prend ses
valeurs dans { , }

Le sous-groupe est
complètement pur du point de
vue de Y, il ne possède
que des individus portant la
valeur de Y 14
Algorithme de construction d'un
arbre de décision
 Choisir le « meilleur » attribut Xk, de modalités {vk,1,...,vk,i,...,vk,mk}, au
sens d’un critère donné, pour partitionner la base d’apprentissage. Un
nœud N(Xk) est créé dans l’arbre, portant un test sur la valeur de Xk.
 Partitionner la base d’apprentissage courante (au départ de l’algorithme,
c’est la base complète Ω) avec cet attribut en créant autant de sous-
bases Ωl que l’attribut possède de modalités vk,l :
Ω= ∪ Ωl avec Ωl ={ωi ∈Ω / Xk(ωi)= vk,l}
Chaque valeur de l’attribut libelle un arc issu de ce nœud N(Xk) et
associé à la sous-base Ωl.
 A l’aide d’un critère d’arrêt, vérifier la condition d’arrêt sur chaque sous
base Ωl créée. Une sous-base qui vérifie la condition d’arrêt donne
naissance à une feuille dans l’arbre.
 Recommencer en 1 avec les sous-bases qui ne vérifient pas le critère
d’arrêt.
15
Les arbres de décision : Exemple
Chaque individu est décrit par 3 attributs [Quinlan 83] :
Taille : {petit, grand}
Cheveux : {noir, roux, blond}
Yeux : {bleu, brun}

Attributs Classe
3+
Taille Cheveux Yeux Cheveux 5 -
petit blond bleu +
noir blond
grand blond brun - roux
2+
grand roux bleu + 0+ _ 1+ Yeux
+ 2-
petit noir bleu - 3- 0-
grand noir bleu - bleu brun
grand blond bleu + 2+ 0+ _
grand noir brun - +
0- 2-
petit blond brun -
16
Les arbres de décision : Exemple
Chaque individu est décrit par 3 attributs [Quinlan 83] :
Taille : {petit, grand}
Cheveux : {noir, roux, blond}
Yeux : {bleu, brun}

Attributs Classe 3+
Taille Cheveux Yeux Taille 5-
petit blond bleu + petit grand
grand blond brun - 2+
grand roux bleu + 1+ Cheveux 3 -
Yeux
petit noir bleu - 2-
grand noir bleu - brun bleu noir roux blond
grand blond bleu + 0+
_ 1+ + 0+ _ 1+ _ 1+
+
_ + 1-
grand noir brun - 1- 1- 2- 0-
petit blond brun -
17
Quatre problèmes fondamentaux dans
la construction des arbres de décision
 Choix du meilleur attribut de segmentation
Pourquoi l’attribut Cheveux sur le sommet initial ?

 Critère d’arrêt
Comment décider qu’un nœud devient une feuille ?
 Choix des bornes de discrétisation
Découpage des attributs continus
 Prise de décision dans les sous groupes
Comment assigner une modalité de l’attribut à prédire
à une feuille ?
18
Choix du meilleur attribut
de segmentation

19
Choix du « meilleur » attribut
 Pour choisir le test, on utilise des fonctions qui mesurent le
degré de mélange des différentes partitions (Gini, entropie…)
 Min de la fct : tous les ex. sont dans une même classe.
 Max de la fct :exemples également répartis entre les classes.
 On estime le degré de mélange espéré en pondérant les
degrés de mélange des fils par la proportion des exemples
allant sur ce fils
Choix du test qui fournit le degré
de mélange espéré minimum
.
 Gain = degré de mélange du noeud courant diminué du
degré de mélange espéré par l'introduction du test

Choix du test qui apporte


20
le gain maximal
Choix du « meilleur » attribut
de segmentation
Une mesure de discrimination permet de choisir l’attribut
qui réduit au maximum l’incertitude de prédiction des classes.

 Gain d’information (ou information mutuelle)


issu de la mesure d’entropie de Shannon [Quinlan 83]

 Critère de Gini
mesure l’impureté d’un attribut au regard d’une classe
CART [Breiman et al. 84]

 Quantité du Chi 2
choisir l’attribut le plus corrélé avec la variable à prédire

21
[Rakotomalala 97]
Choix du « meilleur » attribut
de segmentation
L’entropie de Shanon
 Entropie en bits d’un message M :
H(M)= Log2(n)

n : nb de significations différentes
que peut prendre le message.

 Quantité de bits nécessaires pour connaître


la classe d’une observation :
C
S(Y) = −∑ pk . log2 (pk )
k =1 avec pk=Pr(Y=yk)
22
et y1, ..., yC les C classes.
Choix du « meilleur » attribut
de segmentation
Entropie conditionnelle
 Nb de bits nécessaires pour connaître Y
sachant la valeur xl de l’attribut X
C
S(Y/xl) = −∑pkl. log2 (pkl)
avec pkl=Pr(Y=yk /X=xl)
k =1

En moyenne, pour connaître la valeur de Y sachant X :


L C
S(Y/X)= −∑pl∑pkl.log2 (pkl) avec pl=Pr(X=xl)
l=1 k=1

Gain d’information : DS(Y) = S(Y) - S(Y/X)


Mesure l’information gagnée par le choix d’une variable.

23
Gain d’information : un exemple
Incertitude associée à l’échantillon :
C
S(Y) = −∑ pk . log2 (pk ) = -(3/8)*log (3/8)-(5/8)*log (5/8) =
2 2
k =1
Entropie conditionnelle pour chaque attribut :
L C
Attributs Classe S(Y/taille) = −∑ pl∑ pkl . log2 (pkl)
Taille Cheveux Yeux l =1 k =1

petit blond bleu +


grand blond brun - = -(3/8)*(1/3*log2(1/3) + 2/3*log2(2/3))
grand roux bleu + -(5/8)*(2/5*log2(2/5) + 3/5*log2(3/5))
petit noir bleu - =
grand noir bleu -
grand blond bleu +
grand noir brun -
petit blond brun -
24
Attributs multivalués
 Il y a un petit problème avec la fonction de gain
d'information.
 Lorsque les attributs ont beaucoup de valeurs
possibles, comme par exemple un attribut date, leur
gain est très élevé, car il classifie parfaitement les
exemples.
 Par contre, ils vont générer un arbre de décision d'une
profondeur de 1 qui ne sera pas très bon pour les
instances futures.
 Solution : on peut utiliser une fonction qui se
nomme GainRatio qui pénalise les attributs qui
ont trop de valeurs possibles.
25
Les arbres de décision: incertitude
 L'incertitude sur une partition engendrée par une
variable mesure l’information nécessaire pour
compléter la classification (utilisant cette variable).
Entopie du
I= Σi=1.K fi hs (si) nœud fils i

K = nombre de nœuds fils fi = Fréquence


du nœud fils i

fi = effectif du nœud fils i / effectif du sommet père

Exemple: I(Racine, age)= f1*h(s2) + f2*h(s3) + f3*h(s4) = 0.69

26
Les arbres de décision: gain
informationnel
 Mesure l’information gagnée par le choix d’une
variable.
 Gain (J) = entropie (h) – incertitude (I)
age?
S
0.94 5 c1 <=30 30..40 >40
9 c2
S1 S2 S3 J(Sk) = h (Sk) - I(Sk)
3 c1 0 c1 2 c1
2 c2 4 c2 3 c2 0.69

J(S)=0.94-0.69=0.25

27
Les arbres de décision: gain ratio
Rapport entre gain informationnel et distribution des
individus
age?
S
0.25
5 c1 <=30 30..40 >40
9 c2
S1 S2 S3
5 4 5 SplitInfo(Xj) = -Σi=1..K fi log2 fi

SplitInfo(age) = f1 log2 f1 + f2 log2 f2 + f3 log2 f3


SplitInfo(age) =4.29

G(S) = 0.25 / 4.29=0. 05


28
Arbres de décision:
Autres paramètres
d’induction

29
Critère d’arrêt
 Quand décider qu’un nœud devient une feuille ?
 Plusieurs critères possibles :
 Homogénéité des sous bases
Critère de confiance

Taille de la sous-base.
Critère de support

…
30
Discrétisation des attributs continus
 Ex : la variable Température est continue et on a les
6 exemples suivants.
Points de coupures candidats
10 37.5

Température 1 5 15 23 30 45

JouerTennis Non Non Oui Oui Oui Non

 Comment choisir le point de coupure ?


Différentes méthodes de discrétisation
 Non supervisées (régulière, fréquences égales, …)
 Supervisées (Chimerge [Kerber 92], MDLPC [Fayyad et
31
al. 93], …)
Prise de décision dans les sous
groupes

 Affectation à un sous groupe d’une modalité de


la variable à prédire

 Sous l’hypothèse d’un tirage aléatoire de


l’échantillon dans la base initiale, on assignera
la modalité la plus fréquente aux groupes.

32
Arbres de décision :
les méthodes existantes

33
Les arbres de décision : les méthodes
 Trois systèmes ont plus particulièrement marqué
les travaux sur les arbres de décision :
 ID3 et C4.5 [Quinlan 83] [Quinlan 93]
 IA
 CART [Breiman et al. 84]
 Statistique
 Arbres de décision flous : traiter des connaissances
imprécises
[Ramdani 94] [Marsala 98]

34
Les arbres de décision: les
méthodes
 Ces méthodes permettent d’obtenir divers graphes :
 des arbres n-aires (ID3, C4.5, ChAid)
 des arbres binaires (CART)
 des latticiels (SIPINA)

 Grandes qualités :

 Traduction immédiate en règles


 Technique visuelle (plus parlante, plus compréhensible)

35
Les arbres de décision: les limites
 La manière de procéder dans la construction du graphe :
 La segmentation pure (ID3, C4.5),
 Le regroupement des modalités d’une variable (ChAid,
CART),
 La fusion des sommets n’ayant pas le même
ascendant (SIPINA),
 Le choix des critères pour trouver la meilleure variable ou
pour mesurer le taux d’erreur lors de l’élagage.
 Le grand handicap : traiter le cas où la variable endogène
est continue.
36
Arbres de décision :
les problèmes ouverts

37
Frontière de décision
 Partition rectangulaire de l’espace des caractéristiques :
les arbres tracent des frontières perpendiculaires aux
axes
 Pour un arbre suffisamment grand, on peut approximer
n’importe quelle frontière de décision.

R3
R2

R1

38
Corriger le sur-apprentissage
 Arrêt aussi tôt que possible:
 cesser d'étendre lorsque le partitionnement n'est
plus signicatives,
 test si la partition produite améliore la précision.

 Élagage à posteriori:
 construirel'arbre entier
 supprimer les noeuds inutiles (test approprié).

39
Élaguer l’arbre
 Objectif : minimiser la longueur de la description des
données par un arbre
 Cette méthode coupe des parties de l'arbre en
choisissant un noeud et en enlevant tout son sous-arbre.
 Ceci fait donc du noeud une feuille et on lui attribue la
valeur de classification qui revient le plus souvent.
 Des noeuds sont enlevés seulement si l'arbre
résultant n'est pas pire que l'arbre initial sur les
exemples de validation.
 On continue tant que l'arbre résultant offre de
meilleurs résultats sur les exemples de validation.

40
Valider l’arbre
 Validation statistique
 variables qualitatives : mesurer une matrice de
confusion
 Taux d’erreur : proportion d’individus mal classés
 variables quantitatives : utilisation de la variance
 Validation opérationnelle :
 analyser le profil descriptif (règles) de certains
groupes par simple bon sens
 éviter de découvrir des évidences (règles inutiles)

41
Les arbres de décision:
comparaison 25

24

 Les méthodes IPR, 23


21,51

SIPINA, ID3, C4.5 et 22

21
CART 19,62
20
 La base de données 19
18,35
17,72
18,36

des solutions d’eau de 18

vie 17

16
 Leave-one-out
15

SIPINA
IPR

ID3

CART
C4.5
42
Valeurs d'attributs manquantes
 S’il y a des valeurs pour certains attributs qui ne sont pas disponibles, alors
on peut :
 Donner la valeur moyenne pour cet attribut.
 On regarde les autres exemples et on calcule la moyenne des valeurs présentes.
 On utilise cette moyenne pour estimer la valeur manquante dans le calcul du gain
d'information.
 Attribuer une probabilité pour la valeur manquante.
 On regarde les autres exemples et on calcule la probabilité de chaque valeur possible
pour l'attribut.
 On utilise par la suite ses probabilités pour calculer le gain d'information.
 Pour la première stratégie, les calculs ne changent pas. On ne fait qu'utiliser
la valeur moyenne pour remplacer la valeur manquante.
 Pour la deuxième stratégie, les calculs sont un petit peu modifiés pour
utiliser les probabilités.
 On commence par calculer la probabilité de chacune des valeurs possibles pour
l'attribut manquant.
 Par exemple, supposons qu'il nous manquerait une valeur pour l'attribut Vent.
 La probabilité que le vent soit faible, selon nos exemples d'entraînement est de 8/14 * 100
= 57%.
 La probabilité que le vent soit fort est de 6/14 * 100 = 43%.
 Ceci va nous donner des fractions d'exemples dans nos calculs
43

Vous aimerez peut-être aussi