Documente Academic
Documente Profesional
Documente Cultură
Apprentissage automatique
Arbres de dcision
Apprentissage supervis
Hind Elouedi
Semestre 2 - 2017
Objectifs
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
Branches
Valeurs de lattribut
8
Composants (2)
Ensemble dapprentissage
Attributs
Revenu Proprit Crdit non Classe
rembours
Elev Suprieur Non C1
Valeurs des attributs
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
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 !!!
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
Stratgie de partitionnement.
Critres darrt.
17
Paramtres (2)
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
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
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
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)
Stratgie de partitionnement
Pour chaque valeur de lattribut, on va
associer une branche dans larbre.
Problme avec les attributs continus.
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)
|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)
36
Application (9): Proprit = Suprieur (2)
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
C2 C1
40
Application (13): Proprit = Infrieur (1)
41
Application (14): Proprit = Infrieur (2)
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
Crdit non
rembours Revenu
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
Proprit
Suprieur Infrieur
Crdit non
rembours Revenu
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
46
Classification (2)
Proprit
Suprieur Infrieur
Crdit non
Revenu
rembours
C2 C1 C2 C2 C3
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.
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)
Exemple:
Objet Temprature Jouer
O1 15 Oui
O2 20 Oui
O3 5 Non
O4 30 Non
O5 9 Non
O6 35 Non
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
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.
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
63