Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Arbres de decision
Cecile [email protected]
Universite Aix-Marseille
M1 Informatique
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Plan
Introduction
Classification supervisee par arbre de decision
Algorithme d’apprentissage d’arbres de decision
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Les arbres de decision
NotationsSoient A1, . . . ,Am : attributs binaires, n-aires, ou reels. L’espace dedescription est X =
∏mj=1 Xj ou Xj est le domaine de Aj .
Definition d’un arbre de decisionEnsemble de regles de classification basant leur decision sur des testsassocies aux attributs, organises de maniere arborescente.
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Les arbres de decision (cont’d)
Structure• Noeuds internes (noeuds de decision) : etiquetes par des tests
applicables a toute description d’une instance. Generalement, un noeudinterne = test sur un unique attribut.
• Arcs issus d’un noeud interne : reponses possibles au test du noeud.• Feuilles de l’arbre : etiquetees par une classe.• Chaque noeud interne ou feuille, est repere par sa position (liste des
numeros des arcs qui permettent d’y acceder en partant de la racine).
Arbre de decision et apprentissage
• Tout arbre de decision definit un classifieur• Classifieur qui se traduit immediatement en terme de regles de decision
Gros avantages des arbres de decision
1. Decisions aisement interpretables,
2. classification tres rapide.
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Plan
Introduction
Classification supervisee par arbre de decision
Algorithme d’apprentissage d’arbres de decision
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Construire un arbre de decision a partir de S
Match dom. Balance pos. Mauvais climat Match prec. gagne VictoireV V F F VF F V V VV V V F VV V F V VF V V V FF F V F FV F F V FV F V F F
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Construction aveugle
MD
BP BP
MC MCMC MC
PG PG PG PGPG PGPG PG
V V V F F F V F
vrai faux
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Construction aveugle
MD
BP BP
MC MCMC MC
PG PG PG PGPG PGPG PG
V V V F F F V F
vrai faux
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Construction aveugle
MD
BP BP
MC MCMC MC
PG PG PG PGPG PGPG PG
V V V F F F V F
vrai faux
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Construction aveugle
MD
BP BP
MC MCMC MC
PG PG PG PGPG PGPG V
V F F F V F
vrai faux
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Construire un arbre de decision a partir de S
Match dom. Balance pos. Mauvais climat Match prec. gagne VictoireV V F F VF F V V VV V V F VV V F V VF V V V FF F V F FV F F V FV F V F FV V V F F
Cas de non-determinisme – Pas d’arbre parfait
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Probleme non-deterministe
MD
BP BP
MC MCMC MC
PG PG PG PGPG PGPG V
V F F F V F
vrai faux
F
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Arbre de decision de risque empirique minimal ?
• Construire un arbre de decision de risque empirique minimal = possiblepour tout S
• Mais tres faible capacite predictive (generalisation). pourquoi ?• Est-ce que le plus petit arbre de decision compatible avec S aura de
meilleures capacites de generalisation ?• cf. theorie de l’apprentissage statistique (Vapnik)
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Petit arbre de decision compatible
InteretConforme aux principes invoques en apprentissage
• Principe du rasoir d’Occam : trouver l’hypothese la plus courte possiblecompatible avec les donnees
• Principe MDL (minimum description length) : soit des donnees S,trouver l’hypothese H telle que |H|+ |S/H| soit la plus petite possible(longueur d’un codage des donnees via H)
Mais...Trouver le plus petit arbre de decision compatible avec S est un problemeNP-complet.
Besoin d’algorithmes specifiquesPlus petit arbre possible (mais pas forcement le plus petit), compatible aumieux avec les donnees, pour satisfaire le principe ERM.
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Plan
Introduction
Classification supervisee par arbre de decision
Algorithme d’apprentissage d’arbres de decision
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Structure generique de l’algorithme
Algorithmes de reference
• CART• C4.5
Principe generalConstruction top-down, gloutonne et recursive, d’un petit arbre consistantavec la plupart des donnees
Trois operateurs majeurs
1. Decider si un noeud est terminal,
2. Si un noeud n’est pas terminal, lui associer un test
3. Si un noeud est terminal, lui associer une classe
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Structure generique de l’algorithme (cont’d)
Require: echantillon S1: Initialiser l’arbre courant a vide : racine = noeud courant2: repeat3: Decider si le noeud courant est terminal4: if noeud terminal then5: Lui affecter une classe6: else7: Selectionner un test et creer autant de nouveaux noeuds qu’il y a de
reponses possibles au tests8: end if9: Passer au noeud suivant non-explore (s’il existe)
10: until Plus de noeud sans classe11: return Arbre de decision A
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Structure generique de l’algorithme (cont’d)
Noeud terminal ?• Lorsque (presque) tous les exemples de S en ce noeud sont dans la
meme classe,• Lorsqu’il n’y a plus d’attributs a tester a ce niveau
Quelle classe a un noeud terminal ?
• Classe majoritaire• Classe la plus representee, si egalite
Selection d’un test ?Choix de l’attribut qui fait le mieux progresser la discrimination des donneesde S : gain en information.
• Indice de Gini (CART)• Critere d’entropie (C4.5)
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Indice de Gini et entropie
Mesure du desordre (ou d’inegalite de repartition), pour choix d’un test a uneposition de l’arbre
Donnees• S un echantillon, a l’attribut cible• S1, . . . ,Sk partition de S selon les classes de a
Indice de Gini
Gini(S) =k∑
i=1
|Si ||S| (1−
|Si ||S| ) =
∑i 6=j
|Si | × |Sj ||S|2
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Coefficient de Gini
(Inegalite des revenus – source: wikipedia)
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Indice de Gini et entropie (cont’d)
Mesure du desordre (ou d’inegalite de repartition)
Donnees• S un echantillon, a l’attribut cible• S1, . . . ,Sk partition de S selon les classes de a
Indice de Gini
Gini(S) =k∑
i=1
|Si ||S| (1−
|Si ||S| ) =
∑i 6=j
|Si | × |Sj ||S|2
Entropie
Ent(S) = −k∑
i=1
|Si ||S| log(
|Si ||S| )
(variation d’un terme multiplicatif constant selon la base du log)
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Indice de Gini et entropie (cont’d)
ExempleSupposons k = 2, soit x = |S1|
|S|
Gini(S) = 2x(1− x)
Ent(S) = −x logx − (1− x)log(1− x)
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Comment choisir un test parmi les attributs disponibles ?
Cas des attributs binaires• p : position courante (ε a la racine) de l’arbre en construction• T : un test (sur un attribut : T a deux reponses possibles !)• f =Ent ou f =Gini, Sp echantillon associe a p• Spi : ensemble des exemples de Sp qui satisfont la i-eme branche de T• Pi : proportion des elements de Sp qui satisfont la i-eme branche de T
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Comment choisir un test parmi les attributs disponibles ?
Cas des attributs binaires• p : position courante (ε a la racine) de l’arbre en construction• T : un test (sur un attribut : T a deux reponses possibles !)• f =Ent ou f =Gini, Sp echantillon associe a p• Spi : ensemble des exemples de Sp qui satisfont la i-eme branche de T• Pi : proportion des elements de Sp qui satisfont la i-eme branche de T
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Comment choisir un test parmi les attributs disponibles ?
Cas des attributs binaires• p : position courante (ε a la racine) de l’arbre en construction• T : un test (sur un attribut : T a deux reponses possibles !)• f =Ent ou f =Gini, Sp echantillon associe a p• Spi : ensemble des exemples de Sp qui satisfont la i-eme branche de T• Pi : proportion des elements de Sp qui satisfont la i-eme branche de T
Gainf (p,T ) = f (Sp)−2∑
j=1
Pj × f (Spj )
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Le gain d’un attribut a une position
Gainf (p,T ) = f (Sp)−2∑
j=1
Pj × f (Spj )
Proprietes (cas attributs binaires)
• Terme f (Sp) ne depend pas de T !• Consequence : Maximiser le gain revient a minimiser
∑2j=1 Pj × f (Spj ) !
• Gain maximal lorsque le test sur un attribut permet de classercorrectement toutes les donnees
• (Gain minimal si aucune information apportee par ce test au regard de laclassification)
• Selction de l’attribut qui maximise le gain : stratgegie gloutonne
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Sur l’exemple des matchs
Choix du premier attribut (position racine)Critere de Gini (DOM, BAL, MCC, MPG)
• Gain(ε,DOM) = Gini(S)− ( 58 Gini(S1) + 3
8 Gini(S2)) =
Gini(S)− 2× 5×2×38×5×5 − 2× 3×1×2
8×3×3 = Gini(S)− 715
• Gain(ε,BAL = Gini(S)− 38
• Gain(ε,MCC = Gini(S)− 715
• Gain(ε,MPG = Gini(S)− 12
Gain Maximum pour BAL (idem pour Entropie) : c’est l’attribut choisi a laracine pour une premiere phase de classification.
Choix du second test en position S1 (BAL=V)Calcul des gains pour chaque attribut restant : the winner is DOM
Choix du second test en position S2 (BAL=F)The winner si MPG
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Arbre final obtenu
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Erreur apparente nulle, mais...
Faible pouvoir predictif (notion de sur-apprentissage – ou apprentissage parcoeur)Necessite d’obtenir un arbre plus petit : elagage
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Phase d’elagage de l’arbre de decision
Deux approches
• Eviter une trop grande croissance de l’arbre en arretant sa constructionau bon moment (early stopping via ensemble de validation).
• Proceder en deux phases : construire l’arbre completement, puis couperles branches qui depassent !
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Elagage de CARTVariations d’erreurs a minimiser
• T0 un arbre de decision a elaguer, T l’ensemble de tous les arbres dedecision obtenus a partir de T0 en remplacant certains noeuds internespar des feuilles.
• Pour chaque noeud interne p de T0 :
α =∆RS
emp
|Tp| − 1
ou ∆RSemp est le nombre d’erreurs supplementaires que commet l’arbre
sur S lorsqu’on elague a la position p, et |Tp| − 1 mesure le nombre defeuilles supprimees.
Processus iteratif• Ti+1 obtenu a partir de Ti , auquel on coupe la branche qui permet un α
minimal.• Soit T0, . . . ,Ti , . . . ,Tt la suite obtenue, ou Tt est reduit a une feuille.• Selection de l’arbre Ti dont le nombre d’erreurs calculees sur ensemble
de validation Sval est minimal.
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Elagage de CART sur l’exemple
BAL ?
DOM ? MPG ?
MCC ?PerduGagné Perdu
PerduGagné
oui
oui oui
oui
non
non
non
non
(4V, 4F ; 8)
(3V, 1F ; 4) (1V, 3F ; 4)
(3V, 0F ; 3) (0V, 1F ; 1)
(1V, 0F ; 1) (0V, 1F ; 1)
(0V, 2F ; 2)(1V, 1F ; 2)
T0
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Elagage de CART sur l’exemple
BAL ?
DOM ? Perdu
PerduGagné
oui
oui non
non
(4V, 4F ; 8)
(3V, 1F ; 4) (1V, 3F ; 4)
(3V, 0F ; 3) (0V, 1F ; 1)
T1
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Elagage de CART sur l’exemple
BAL ?
Gagné Perdu
oui non
(4V, 4F ; 8)
(3V, 1F ; 4) (1V, 3F ; 4)
Gagné(4V, 4F ; 8)
T2 T3
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Elagage de CART sur l’exemple (cont’d)
Ensemble de validationMatch dom. Balance pos. Mauvais climat Match prec. gagne Victoire
V V V F VF V V F VF F F V FV F V F V
Calculs d’erreurs• T0 : 0 en apprentissage, 1
2 en test
• T1 : 14 en apprentissage, 1
2 en test : memes erreurs que T0
• T2 : 12 en apprentissage, 1
4 en test
• T3 : 12 en apprentissage, 1
4 en test
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
ComplementsAutres categories d’attributs
• Traitement en cas d’attributs n-aires et continus• Traitement en cas de multi-classes• Donnees manquantes ?
Attribut continu : partition de l’intervalle
• Attribut a, tests binaires de la forme a < v ou a ≤ v• Soient v1, v2, . . . vN valeurs prises par a dans S• Exemple de test, pour i = 1 . . .N − 1 :
a <vi + vi+1
2
• Test selectionne grace a la notion de gain
v1 v2 v3 v4 v5 v6 v7 v8
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
ComplementsAutres categories d’attributs
• Traitement en cas d’attributs n-aires et continus• Traitement en cas de multi-classes• Donnees manquantes ?
Attribut continu : partition de l’intervalle
• Attribut a, tests binaires de la forme a < v ou a ≤ v• Soient v1, v2, . . . vN valeurs prises par a dans S• Exemple de test, pour i = 1 . . .N − 1 :
a <vi + vi+1
2
• Test selectionne grace a la notion de gain
v1 v2 v3 v4 v5 v6 v7 v8
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Complements : attributs n-aires
Generalisation des formules de gain
Gainf (p,T ) = f (Sp)−N∑
j=1
Pj × f (Spj )
• Privilege des attributs de grande arite• Cas ou attribut = cle identifiant chaque element de S
Approche de C4.5 : Ratio de gainSoit a d’arite N, prenant les valeurs v1, . . . , vN :
GainRatio =Gain
−∑N
i=1ki|S| log ki
|S|
ou ki = nombre d’exemples de S pour lesquels a = vi .
Introduction Classification supervisee par arbre de decision Algorithme d’apprentissage d’arbres de decision
Complements : instabilite
Variance importanteSur donnees reelles :
• choix d’un attribut plutot qu’un autre : limite serree !• influence majeure si proche de la racine
Solutions : agreger sur le hasard
• Bagging (Boostrap Aggregating)• Random Forests