Sunteți pe pagina 1din 63

Mastre Professionnel : Business Intelligence

Apprentissage automatique

Arbres de dcision
Apprentissage supervis

Hind Elouedi

Semestre 2 - 2017
Objectifs

Dfinir les concepts de base relatifs aux


arbres de dcision.
Comprendre lalgorithme de construction dun
arbre de dcision.
Utiliser les arbre de dcision dans la
Classification.
Comprendre la notion dlagage.
Dfinir les notions de Bagging et Boosting

2
Points abords
Introduction
Composants
Construction dun arbre
Classification
Elagage
Attributs valeurs continues
Attributs valeurs manquantes
Bagging et boosting
Conclusion
3
Introduction
Un peu dhistoire
Statistiques:
Morgan et Sonquist (1963): Arbres de rgression dans un
processus de prdiction et dexplication (AID Automatic
Interaction Detection).
Morgan et Messenger (1973): THAID (Theta AID),
utilisation des arbres pour les classements et les
discriminations.
Kass (1980): CHAID (CHi-squared Automatic Interaction
Detector), prdiction ou dtection dinteractions entre
variables.
Breiman et al. (1984): CART (Classification And
Regression Tree). 4
Introduction (2)
Un peu dhistoire
Apprentissage automatique:
Quinlan (1979): ID3 (Induction of Decision Tree), les
travaux de Quinlan sont rattachs ceux de Hunt
(1962).
Quinlan (1993): Ensemble de travaux couronns par
beaucoup darticles et la mise en place de la
mthode C4.5, la rfrence incontournable sur les
arbres de dcision.

5
Introduction (3)
Arbre de dcision:
Technique de classification en apprentissage
supervis.
Technique utilise en intelligence artificielle.
Avantages:
Traitement des problmes complexes.
Expression simple de la connaissance.
Facilit dans la comprhension et linterprtation des
rsultats.
Participation des experts dans llaboration des rgles.

6
Introduction (4)
Domaines dapplication:
Gestion de crdits.
Diagnostic mdical.
Analyse du march.
Dtection dintrusion.
Contrle de production.
.
.
.

7
Composants
Reprsente tout
lensemble
dapprentissage
Racine
Test sur les attributs
Reprsente des
sous-ensembles
dapprentissage

Nuds de dcision Nuds feuilles


Tests sur les attributs Classes

Branches
Valeurs de lattribut
8
Composants (2)
Ensemble dapprentissage
Attributs
Revenu Proprit Crdit non Classe
rembours
Elev Suprieur Non C1
Valeurs des attributs

Elev Suprieur Oui C2


Elev Suprieur Non C1
Elev Infrieur Oui C2
Moyen Suprieur Non C1
Moyen Suprieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3

C1: Attribuer tout le crdit - C2: Attribuer une partie crdit - C3: Ne pas attribuer le crdit.

9
Composants (3)
Arbre de dcision
Proprit

Suprieur Infrieur

Crdit non
Revenu
rembours

Oui Non Elev Moyen Faible

C2 C1 C2 C2 C3

10
Construction

Problmatique

Procdure de construction

Paramtres

Application

11
Construction (2)
Problmatique
Construire un arbre de dcision partir dun
ensemble dapprentissage.
Gnralisation: tre capable de classer
correctement un nouvel objet.

Algorithme complexe
et horrible !!!

Gnrer tous les Tester la justesse Choisir le meilleur


arbres de dcision de chaque arbre arbre de dcision
possibles gnr
12
Construction (3)
Processus trs coteux

Proposer un meilleur algorithme


Choisir le meilleur attribut.
Partitionner lensemble dapprentissage.
Rpter jusqu ce que chaque lment
de lensemble dapprentissage soit
correctement class.

Mais comment faire?

13
Construction (4)
Algorithmes: Top Down Induction of Decision
Trees (TDIDT)
Diviser pour rgner (Induction descendante)
ID3 (Quinlan, 1979)
CART (Breiman et al., 1984)
ASSISTANT (Bratko, 1984)
C4.5 (Quinlan, 1993)
.
.
.
14
Construction (5)
Procdure de construction
Processus rcursif:
Larbre commence un nud quon appelle racine
et qui reprsente toutes les donnes.
Si les objets sont de la mme classe, alors le nud
devient une feuille libelle par le nom de la classe.
Sinon, slectionner les nuds qui sparent le mieux les
objets en classes homognes.
Le traitement rcursif sarrte quand au moins lun des
critres darrt est vrifi.

15
Construction (6)
Procdure de construction (2)
Recherche chaque niveau de lattribut le plus
discriminant.
Partition des donnes (T):
Si tous les lments de T sont dans la mme classe alors
retour;
Pour chaque attribut A, valuer la qualit du
partitionnement sur A;
Utiliser le meilleur partitionnement pour diviser T en
T1, T2, Tk;
Pour i = 1 k faire Partition(Ti);

16
Construction (7)
Paramtres

Mesure de slection des attributs.

Stratgie de partitionnement.

Critres darrt.

17
Paramtres (2)

Choix de lattribut: Plusieurs mesures:


Gain dinformation.
Indice de Gini.
Ratio de gain.
Mesure de linformation:
Lentropie de Shannon exprime la quantit
dinformation: Le nombre de bits ncessaires pour
coder linformation.

18
Paramtres (3)

Exemple
6 3
La probabilit de tirer une boule bleue est:
62 4
2 1
La probabilit de tirer une boule rouge est:
62 4
Apport dinformation
Nombre de bits ncessaires pour distinguer chaque
boule parmi N:
P bits permettent de coder 2P informations.
log2(N) bits permettent de coder N informations.

19
Paramtres (4)
Si je tire une boule (parmi N boules) et que je ne
connais que sa couleur (par exemple elle est rouge),
linformation acquise sera:
log2(N) bits - log2(Nr) bits

Cest une Car je connais que


boule cest une boule rouge

Si je tire une boule au hasard et quon me donne sa


couleur, linformation acquise sera:
Prob(Bleue) (log2(N) - log2(Nb)) + Prob(Rouge)(log2(N)- log2(Nr))
3 1
(log2 8 log2 6) + (log2 8 log2 2)
4 4
20
Paramtres (5)

Prob(Bleue) (log2(N) - log2(Nb)) + Prob(Rouge)(log2(N)- log2(Nr))

Nb N Nr N Nb Nb Nr Nr
(log2 )+ (log2 ) - (log 2 ) - (log 2 )
N Nb N Nr N N N N
- Prob(Bleue) log2(Prob(Bleue)) - Prob(Rouge)log2(Prob(Rouge))

3 3 1 1
- (log 2 ) - (log 2 )
4 4 4 4

Cest la quantit dinformation apporte par la couleur.


21
Paramtres (6)
Mesure de linformation
Si on a n classes (C1, C2,.., Cn) de probabilits
respectives p1, p2,.., pn, la quantit dinformation relative
la connaissance de la classe est dfinie par
lentropie dinformation:
I = -pi log2 pi
i = 1..n

I = 0 quand i/ pi = 1 (une seule classe).


I est maximale quand i/ pi = 1/n (classes
quiprobables).

22
Paramtres (7)
Gain dinformation (ID3)
freq(T, Cj): Nombre dobjets de T appartenant la classe Cj.
Linformation relative T est dfinie:
Quantit moyenne n
dinformation ncessaire Info(T) = - freq(T, Cj) log freq(T, Cj)
pour identifier la classe
2
j=1
dun objet de T |T| |T|
Une mesure similaire de T aprs partition selon lattribut A
(contenant n valeurs) est:
InfoA(T) = |Ti| Info(Ti)
iD |T|
A

DA =Domaine de valeurs de lattribut A.


Le gain dinformation mesure le gain obtenu suite au
partitionnement selon lattribut A: Gain(T, A) = Info(T) InfoA(T)
On slectionne lattribut offrant le plus de gain.
23
Paramtres (8)

Attributs multivalus
Le Critre de gain dinformation prsente une limite:
il favorise les attributs ayant plusieurs valeurs.
Lorsquun attribut a plusieurs valeurs possibles, son
gain peut tre trs lev, car il classifie parfaitement
les objets.
Par contre, cela peut gnrer un arbre de dcision
d'une profondeur de 1 (ou faible) qui ne sera pas
trs bon pour les instances futures.

24
Paramtres (9)

Ratio de gain (C4.5)


Une mesure de linformation contenue dans lattribut
A (mesure de dispersion) est dfinie:
|Ti|
Split Info(T, A) = - log2 |Ti|
iDA |T| |T|
Le ratio de gain mesure le gain calibr par Split Info.
Gain(T, A)
Gain Ratio(T, A) =
Split Info(T, A)
Quantit dinformation gnre par T et utile pour la classification

On slectionne lattribut offrant le ratio de gain le plus lev.


25
Paramtres (10)

Stratgie de partitionnement
Pour chaque valeur de lattribut, on va
associer une branche dans larbre.
Problme avec les attributs continus.

Dcouper en sous-ensembles ordonns

26
Paramtres (11)

Critres darrt
Si tous les objets appartiennent la mme
classe.
Sil ny a plus dattributs tester.
Sil n'y a pas d'objets avec la valeur d'attribut.
Absence dapport informationnel des attributs.
(tous les ratios de gain 0)

27
Construction (8): Application
Revenu Proprit Crdit non Classe
rembours
Elev Suprieur Non C1
Elev Suprieur Oui C2
Elev Suprieur Non C1
Elev Infrieur Oui C2
Moyen Suprieur Non C1
Moyen Suprieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3
3
Info(T) = - freq(T, Cj) log freq(T, Cj)
j=1
2
|T| |T|
Info(T) = - 3/10 log2 3/10 - 5/10 log2 5/10 - 2/10 log2 2/10 = 1.485
28
Application (2): InfoRevenu(T)
Revenu Proprit Crdit non Classe
rembours |Ti|
Elev Suprieur Non C1
InfoRevenu(T) = Info(Ti)
Elev Suprieur Oui C2
iDRevenu |T|
Elev Suprieur Non C1 DRevenu ={Elev, Moyen, Faible}
Elev Infrieur Oui C2
Revenu
Moyen Suprieur Non C1
Moyen Suprieur Oui C2
Moyen Infrieur Non C2 Elev Moyen Faible
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3 Info (TElev) Info(TMoyen) Info(TFaible)

Info(TElev) = - 2/4 log2 2/4 - 2/4 log2 2/4 = 1


Info(TMoyen) = - 1/4 log2 1/4 - 3/4 log2 3/4 = 0.812
Info(TFaible) = - 2/2 log2 2/2 = 0
InfoRevenu(T)= 4/10 Info (TElev) + 4/10 Info (TMoyen) +2/10 Info (TFaible) = 0.725
29
Application (3): Gain ration (T, Revenu)
Revenu Proprit Crdit non Classe
rembours
Elev Suprieur Non C1
Elev Suprieur Oui C2
Elev Suprieur Non C1
Elev Infrieur Oui C2
Moyen Suprieur Non C1
Moyen Suprieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3

Gain(T, Revenu) = Info(T) InfoRevenu(T) = 0.761


|Ti|
Split Info(T, Revenu) = - log2 |Ti|
iDRevenu |T| |T|
Split Info(T, Revenu) = - 4/10 log2 4/10 - 4/10 log2 4/10 - 2/10 log2 2/10 = 1.522
0.761
Gain Ratio(T, Revenu) = = 0.5
1.522 30
Application (4): InfoProprit(T)

Revenu Proprit Crdit non Classe |Ti|


rembours InfoProprit(T) = Info(Ti)
Elev Suprieur Non C1
|T|
iDProprit

Elev Suprieur Oui C2


DProprit ={Suprieur, Infrieur}
Elev Suprieur Non C1
Elev Infrieur Oui C2
Moyen Suprieur Non C1 Proprit
Moyen Suprieur Oui C2
Moyen Infrieur Non C2 Suprieur Infrieur
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3 Info(TSuprieur) Info (TInfrieur)

Info(TSuprieur) = - 3/5 log2 3/5 - 2/5 log2 2/5 = 0.971


Info(TInfrieur) = - 3/5 log2 3/5 - 2/5 log2 2/5 = 0.971

InfoProrpit(T)= 5/10 Info(TSuprieur) + 5/10 Info(TInfrieur) = 0.971


31
Application (5): Gain ration (T, Proprit)
Revenu Proprit Crdit non Classe
rembours
Elev Suprieur Non C1
Elev Suprieur Oui C2
Elev Suprieur Non C1
Elev Infrieur Oui C2
Moyen Suprieur Non C1
Moyen Suprieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3

Gain(T, Proprit) = Info(T) InfoProprit(T) = 0.514


|Ti|
Split Info(T, Proprit) = - log2 |Ti|
iDProprit |T| |T|
Split Info(T, Proprit) = - 5/10 log2 5/10 - 5/10 log2 5/10 = 1

Gain Ratio(T, Proprit) = 0.514 = 0.514


1 32
Application (6): InfoCrdit N rembours(T)
|Ti| Info(T )
Revenu Proprit Crdit non Classe InfoCrdit N rembours(T) = i
rembours iDCrdit N
rembours
|T|
Elev Suprieur Non C1 DCrdit non rembourst ={Oui, Non}
Elev Suprieur Oui C2
Elev Suprieur Non C1
Elev Infrieur Oui C2
Crdit N
Moyen Suprieur Non C1 Rembours
Moyen Suprieur Oui C2
Moyen Infrieur Non C2 Oui Non
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3 Info (TOui) Info (TNon)

Info(TOui) = - 4/5 log2 4/5 - 1/5 log2 1/5 = 0.722


Info(TNon) = - 3/5 log2 3/5 - 1/5 log2 1/5 - 1/5 log2 1/5 = 1.371

InfoCrdit N rembours(T) = 5/10 Info(TOui) + 5/10 Info(TNon) = 1.046


33
Application (6): Gain ration (T, Crdit N rembours)

Revenu Proprit Crdit non Classe


rembours
Elev Suprieur Non C1
Elev Suprieur Oui C2
Elev Suprieur Non C1 Gain(T, Crdit N rembours) =
Elev Infrieur Oui C2 Info(T) InfoCrdit non rembours(T) = 0.439
Moyen Suprieur Non C1
Moyen Suprieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3

|Ti|
Split Info(T, Crdit non rembours) = - log2 |Ti|
iDCrdit N
rembours
|T| |T|
Split Info(T, Crdit non rembours) = - 5/10 log2 5/10 - 5/10 log2 5/10 = 1
0.439
Gain Ratio(T, Crdit non rembours) = = 0.439
1 34
Application (7): Arbre de dcision (Niveau 1)
Revenu Proprit Crdit non Classe
rembours
Gain Ratio(T, Revenu) = 0.5 Elev Suprieur Non C1
Elev Suprieur Oui C2
Gain Ratio(T, Proprit) = 0.514 Elev Suprieur Non C1
Elev Infrieur Oui C2
Gain Ratio(T, Crdit non rembours) = 0.439 Moyen Suprieur Non C1
Moyen Suprieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Racine Proprit Faible Infrieur Non C3
Faible Infrieur Oui C3

Suprieur Infrieur

Revenu Proprit Crdit non Classe Revenu Proprit Crdit non Classe
rembours rembours
Elev Suprieur Non C1 Elev Infrieur Oui C2
Elev Suprieur Oui C2 Moyen Infrieur Non C2
Elev Suprieur Non C1 Moyen Infrieur Oui C2
Moyen Suprieur Non C1 Faible Infrieur Non C3
Moyen Suprieur Oui C2 Faible Infrieur Oui C3

35
Application (8): Proprit = Suprieur (1)

Revenu Proprit Crdit non Classe


rembours
Elev Suprieur Non C1
Elev Suprieur Oui C2
Elev Suprieur Non C1
Moyen Suprieur Non C1
Moyen Suprieur Oui C2

Info(TSuprieur) = Info(S) = - 3/5 log2 3/5 - 2/5 log2 2/5 = 0.971

36
Application (9): Proprit = Suprieur (2)

Revenu Proprit Crdit non Classe


rembours
Elev Suprieur Non C1
Elev Suprieur Oui C2
Elev Suprieur Non C1
Moyen Suprieur Non C1
Moyen Suprieur Oui C2

InfoRevenu(SElev)=- 2/3 log2 2/3 - 1/3 log2 1/3 = 0.918


InfoRevenu(SMoyen) = - 1/2 log2 1/2 - 1/2 log2 1/2 = 1
InfoRevenu(SFaible) = 0
InfoRvenu(S)= ((3/5) * 0.918) + ((2/5) * 1) + (0*0) = 0.951
Gain(S, Revenu) = 0.02
Split Info(S, Revenu) = - 3/5 log2 3/5 - 2/5 log2 2/5 - 0 = 0.971
Gain Ratio(S, Revenu) = 0.02 37
Application (10): Proprit = Suprieur (3)

Revenu Proprit Crdit non Classe


rembours
Elev Suprieur Non C1
Elev Suprieur Oui C2
Elev Suprieur Non C1
Moyen Suprieur Non C1
Moyen Suprieur Oui C2

InfoCrdit non rembours(SOui)=- 2/2 log2 2/2 = 0

InfoCrdit non rembours(SNon)=- 3/3 log2 3/3 = 0


InfoCrdit non rembours(S)= ((3/5) * 0) + ((2/5) * 0) = 0

Gain(S, Crdit non rembours) = 0.971


Split Info(S, Crdit non rembours) = - 2/5 log2 2/5 - 3/5 log2 3/5 = 0.971
Gain Ratio(S, Crdit non rembours) = 1 38
Application (11): Arbre de dcision (Niveau 2)
Gain Ratio(S, Revenu) = 0.02
Gain Ratio(S, Crdit non rembours) = 1
Revenu Proprit Crdit non Classe
rembours Proprit
Elev Suprieur Non C1
Elev Suprieur Oui C2
Elev Suprieur Non C1
Moyen Suprieur Non C1 Suprieur Infrieur
Moyen Suprieur Oui C2

Crdit non Revenu Proprit Crdit non Classe


rembours rembours
Elev Infrieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Oui Non Faible Infrieur Non C3
Faible Infrieur Oui C3

Revenu Proprit Crdit non Classe Revenu Proprit Crdit non Classe
rembours rembours
Elev Suprieur Oui C2 Elev Suprieur Non C1
Moyen Suprieur Oui C2 Elev Suprieur Non C1
Moyen Suprieur Non C1 39
Application (12): Arbre de dcision (Niveau 2)

Proprit

Suprieur Infrieur

Crdit non Revenu Proprit Crdit non Classe


rembours rembours
Elev Infrieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Oui Non
Faible Infrieur Non C3
Faible Infrieur Oui C3

C2 C1

40
Application (13): Proprit = Infrieur (1)

Revenu Proprit Crdit non Classe


rembours
Elev Infrieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3

Info(TInfrieur) = Info(I) = - 3/5 log2 3/5 - 2/5 log2 2/5 = 0.971

41
Application (14): Proprit = Infrieur (2)

Revenu Proprit Crdit non Classe


rembours
Elev Infrieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3

InfoRevenu(IElev)=- 1/1 log2 1/1 = 0


InfoRevenu(IMoyen) = - 2/2 log2 2/2 = 0
InfoRevenu(IFaible) = - 2/2 log2 2/2 = 0
InfoRevenu(I)= ((1/5) * 0) + ((2/5) * 0) + ((2/5) * 0) = 0
Gain(I, Revenu) = 0.971
Split Info(I, Revenu) = - 1/5 log2 1/5 - 2/5 log2 2/5 - 2/5 log2 2/5 = 1.522
Gain Ratio(I, Revenu) = 0.638
42
Application (15): Proprit = Infrieur (3)
Revenu Proprit Crdit non Classe
rembours
Elev Infrieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Faible Infrieur Non C3
Faible Infrieur Oui C3

InfoCrdit non rembours(IOui)=- 2/3 log2 2/3 - 1/3 log2 1/3 = 0.918
InfoCrdit non rembours(INon)=- 1/2 log2 1/2 - 1/2 log2 1/2= 1
InfoCrdit non rembours(I)= ((3/5) * 0.918) + ((2/5) * 1) = 0.951

Gain(I, Crdit non rembours) = 0.02


Split Info(I, Crdit non rembours) = - 3/5 log2 3/5 - 2/5 log2 2/5 = 0.971
Gain Ratio(I, Crdit non rembours) = 0.02
43
Application (16): Arbre de dcision (Niveau 2)
Gain Ratio(S, Revenu) = 0.638
Gain Ratio(S, Crdit non rembours) = 0.02
Revenu Proprit Crdit non Classe
Proprit rembours
Elev Infrieur Oui C2
Moyen Infrieur Non C2
Moyen Infrieur Oui C2
Suprieur Infrieur Faible Infrieur Non C3
Faible Infrieur Oui C3

Crdit non
rembours Revenu

Oui Non Elev Faible


Moyen

Revenu Proprit Crdit non Classe Revenu Proprit Crdit non Classe
C2 C1 rembours rembours
Elev Infrieur Oui C2 Faible Infrieur non C3
Faible Infrieur Oui C3

Revenu Proprit Crdit non Classe


rembours
Moyen Infrieur non C2
Moyen Infrieur Oui C2
44
Application (17): Arbre de dcision final

Proprit

Suprieur Infrieur

Crdit non
rembours Revenu

Oui Non Elev Moyen Faible

C2 C1 C2 C2 C3

45
Classification
Classification base sur une squence de questions
portant sur un attribut.
La question est reprsente par un nud.
On prend la branche qui correspond la rponse jusqu
la question suivante.
La feuille dsigne la classe correspondant lobjet
classer.
Organiser les questions/rponses sous la forme dun arbre

Trouver le chemin relatif lobjet


classer menant de la racine
lune des feuilles de larbre

46
Classification (2)
Proprit

Suprieur Infrieur

Crdit non
Revenu
rembours

Oui Non Elev Moyen Faible

C2 C1 C2 C2 C3

classer ? Revenu Proprit Crdit non Classe


rembours
Moyen Suprieur Non ?
Faible Infrieur Oui ?
47
Classification (3)
Convertir larbre en rgles
Reprsenter la connaissance sous la forme
de Si.alors.
Une rgle est cre pour chaque chemin de
la racine jusqu la feuille.
Les feuilles contiennent la classe prdire.
Les rgles sont plus faciles comprendre et
interprter.

48
Classification (4)
Convertir larbre en rgles (2)
Si (Proprit = Suprieur) ET (Crdit non rembours = Oui)
alors C2
Si (Proprit = Suprieur) ET (Crdit non rembours = Non)
alors C1
Si (Proprit = Infrieur) ET (Revenu = Elev)
alors C2
Si (Proprit = Infrieur) ET (Revenu = Moyen)
alors C2
Si (Proprit = Infrieur) ET (Revenu = Faible)
alors C3

49
lagage
Pourquoi laguer?
Problme de sur-apprentissage (Overfitting)
Amliorer un modle en le rendant meilleur sur lensemble
dapprentissage mais il sera de plus en plus compliqu.
Plusieurs branches.
Il faut laguer !!
Arbre illisible.
Faible rsultat de classification.

Rduire la taille de larbre. Rendre larbre plus


comprhensible.
Amliorer la performance.
Mesurer la performance sur un ensemble diffrent de
lensemble dapprentissage.
50
lagage (2)
Objectif: Minimiser la longueur de larbre
Cette mthode coupe des parties de l'arbre en choisissant
un noeud et en enlevant tout son sous-arbre.
Ce noeud devient une feuille et on lui attribue la valeur de
classification qui revient le plus souvent.
Des noeuds sont enlevs seulement si l'arbre rsultant n'est
pas pire que l'arbre initial sur les exemples de validation.
On continue tant que l'arbre rsultant offre de meilleurs
rsultats sur les exemples de validation.
Rduire l'arbre en enlevant des branches qui auraient t
ajoutes par une erreur dans les objets dapprentissage.

51
lagage (3)
Pr-lagage (pre-pruning)
Arrter le dveloppement dun nud.
Ne pas partitionner si le rsultat va saffaiblir.
Crer une feuille si la classe est majoritairement reprsente
(sarrter avant dengendrer un noeud inutile).
Post-lagage (post-pruning)
laguer aprs la construction de larbre en entier, en
remplaant les sous-arbres satisfaisant le critre dlgage par
un noeud (gnrer larbre entier puis laguer).
laguer aprs la construction de larbre en entier, en
remplaant les sous-arbres satisfaisant le critre dlgage par
un noeud:
Une feuille.
Un de ses fils (le plus frquent). 52
lagage (4)

Mthodes dlagage
MCCP: Minimal Cost Complexity Pruning (Breiman, 1984).
MEP: Minimum Error Pruning (Niblett et Bratko, 1986).
CVP: Critical Value Pruning (Mingers, 1987).
PEP: Pessimistic Error Pruning (Quinlan, 1987).
REP: Reduced Error Pruning (Quinlan, 1987, 1993).
EBP: Error Based Pruning (Quinlan, 1993).

53
lagage (5)
Mesure de qualit de larbre
PCC: Pourcentage de Classifcation Correcte.
Complexit:
Taille de larbre.
Nombre de feuilles.
Temps.
Trouver un arbre de dcision minimal
consistant avec lensemble dapprentissage
est un problme NP-complet.
54
Attributs valeurs continues

Problme:
Seuils au lieu dune infinit de valeurs.
Certains attributs sont continus.
Dcouper en sous-ensembles ordonns
Division en segments [a0,a1[, [a1,a2[, ., [an-1,an].
Utiliser moyenne, mdiane,
Tester plusieurs cas et retenir le meilleur.

55
Attributs valeurs continues (2)

On utilise un point de coupe pour obtenir une


discrtisation des variables continues.
Ex.: la variable Temprature est continue et on a les 6
exemples suivants.
Temprature 0 8 18 26 30 38
JouerTennis Non Non Oui Oui Oui Non
On met les valeurs en ordre croissant et on regarde les
endroits o la classe change de valeur. ces endroits,
on choisit la mdiane comme valeur de coupe.
On compare toutes les valeurs de coupe et on choisit
celle qui apporte le plus grand gain d'information.
56
Attributs valeurs continues (3)

Exemple:
Objet Temprature Jouer
O1 15 Oui
O2 20 Oui
O3 5 Non
O4 30 Non
O5 9 Non
O6 35 Non

Appliquer la procdure de traitement des attributs


continus sur cet exemple

57
Attributs valeurs continues (4)
Solution : Il faut dabord ordonner selon la valeur de
lattribut temprature (ordre croissant):
Objet Temprature Jouer
O3 5 Non
O5 9 Non
O1 15 Oui
O2 20 Oui
O4 30 Non
O6 35 Non

Il y a deux coupures binaires possibles avec changement de


classe, il faut voir laquelle apporte le meilleur gain?
Puisque la valeur de info est toujours la mme, on se contente
de trouver quelle coupure prsente une valeur dinfoTemprature
minimale.
Les coupures sont 12 et 25 (o il y a changement de classe).
58
Attributs valeurs continues (5)
Info(T, 12) = 2/6 Info(T, <12) + 4/6 Info(T, >12)
Info(T, <12) = 0
Info(T, >12)= -2/4log 2/4 -2/4log 2/4 =1
Info(T, 12) = 0.666

Info(T, 25) = 4/6 Info(T, <25) + 2/6 Info(T, >25)


Info(T, <25) = -2/4 log 2/4 -2/4 log 2/4 =1
Info(T, >25) = 0
Info(T, 25) = 0.666

On peut aussi utiliser le ratio de gain donc calculer le split


info.
Donc ici on peut choisir lune des coupures 12 ou 25
59
Attributs valeurs continues

Attribuer la valeur la plus frquente parmi


les exemples du nud.
Attribuer la valeur la plus frquente dans
lensemble dapprentissage.
Attribuer une probabilit pour chaque
valeur de lattribut.

60
Bagging et Boosting
Bagging: Bootstrap aggregation
Echantillon Bootstrap = Un sous-ensemble dapprentissage
Gnration de k chantillons partir de lensemble
dapprentissage.
Pour chaque chantillon, construire larbre de dcision
correspondant.
La dcision finale pour la classe dun nouvel objet est
obtenue par vote majoritaire.

Le bagging amliore la prcision dun classifieur instable

61
Bagging et Boosting (2)
Boosting:
Cest une approche collaboratrice contrairement au
bagging (comptitive).
Les sous classifieurs sont introduits un la fois et
travaillent sur des sous-ensembles diffrents.
Chaque nouveau sous-classifieur soccupe des objets mal
classs.
Lintrt dappliquer le boosting est quand les
classifieurs prsentent de mauvais rsultats.
Les classifieurs peuvent tre de types diffrents.

62
Conclusion

Applicables des variables quantitatives et


qualitatives.
Intelligibilit de la procdure de dcision
(traduction sous forme de rgles).
Rapidit de dcision.
Trs utiliss en data mining (recherche
dinformations dans de grandes bases de
donnes htrognes).

63

S-ar putea să vă placă și