ENSIIE-WIA1 IntelligenceArtificielle - Benjamin ... · Arbres de décision Plan 1...

41
ENSIIE - WIA1 Intelligence Artificielle 3ème cours - Arbres de décision Benjamin Piwowarski 13 octobre 2014 Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 1 / 41

Transcript of ENSIIE-WIA1 IntelligenceArtificielle - Benjamin ... · Arbres de décision Plan 1...

ENSIIE - WIA1Intelligence Artificielle

3ème cours - Arbres de décision

Benjamin Piwowarski

13 octobre 2014

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 1 / 41

Episode précédent

ApprentissageAu lieu de programmer un ordinateur manuellement, donner à l’ordinateurles moyens de se programmer lui-même

Apprentissage superviséOn se limite à la problématique de classification binaireFournir au système un ensemble d’exemples étiquetésd’apprentissage

Se programmer lui-même = trouver les paramètres optimaux

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 2 / 41

Arbres de décision

Plan

1 Arbres de décisionPrincipesDescriptionApprentissageAttributs continusSur-apprentissageConclusion

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 3 / 41

Arbres de décision Principes

Arbres de décision : principes

DéfinitionUn arbre de décision est un classifieur représenté sous forme d’arbre telque :

Les noeuds de l’arbre testent les attributsIl y a une branche pour chaque valeur possible de l’attribut testéLes feuilles spécifient les catégories (deux ou plus)

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 4 / 41

Arbres de décision Principes

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 5 / 41

Arbres de décision Principes

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 6 / 41

Arbres de décision Principes

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 7 / 41

Arbres de décision Principes

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 8 / 41

Arbres de décision Principes

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 9 / 41

Arbres de décision Principes

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 9 / 41

Arbres de décision Description

Intérêt

IntérêtsLes arbres de décision sont des classifieurs interprétables -contrairement aux perceptrons où KNN par exempleIls fonctionnent facilement sur données qualitativesIls fonctionnent bien (tant que le nombre de caractéristiques n’est pastrop grand)

InconvénientsIls ne sont pas si interprétables que cela...Ils sont lents et instables pendant l’apprentissage

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 10 / 41

Arbres de décision Description

Interprétabilité

AvantageLes Arbres de décisions permettent d’obtenir des fonctions de décisionutilisables ”par un humain”

d’où utilisation de ces arbres pour la découvertes de propriétés.

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 11 / 41

Arbres de décision Description

Interprétabilité....

Toute fonction booléenne peut se représenter comme un arbre dedécision

Rappel : avec n attributs booléens, on peut définir 22n

fonctionsbooléennes... Pour n = 6, on a ∼ 1019 possibilités !

Selon les fonctions à représenter les arbres sont plus ou moins grands

La taille de l’arbre peut grandir exponentiellement !

Un arbre peut se représenter par une disjonction de règles

Limité à la logique des propositions (on ne représente pas de relations)

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 13 / 41

Arbres de décision Description

Interprétabilité....

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 14 / 41

Arbres de décision Apprentissage

Apprentissage

Apprentissage des arbres de décisionA partir d’un jeu de données d’apprentissage, comment construireautomatiquement un arbre de décision efficace ?

Il y a le plus souvent de nombreux arbres de décision possibles corrects.Enumération exhaustive impossible (NP-complet)

4 attributs et 3 valeurs = 55 296 arbres possibles

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 15 / 41

Arbres de décision Apprentissage

Apprentissage

Soit la basse de donnée suivante :

Quel arbre est la plus approrié ?

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 16 / 41

Arbres de décision Apprentissage

Construction de l’arbre

Apprentissage des DTsA partir d’un jeu de données d’apprentissage, comment construireautomatiquement un arbre de décision efficace ?

Enumeration NP-complet

Solution : Construction itérative de l’arbre (méthode gloutonne)

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 17 / 41

Arbres de décision Apprentissage

Apprentissage

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 18 / 41

Arbres de décision Apprentissage

Idée

Construction de la racine vers les feuilles

l’attribut le plus informatif est sélectionné pour construire un nœudde l’arbre

Utilisation d’une mesure de discriminationcas classique : entropie de Shannon, index de Gini,...

Critères d’une bonne mesure de discrimination :

obtenir des nœuds cohérentsminimiser la taille de l’arbrefournir de bons résultats en classification

Rôle de la mesure de discrimination :

mesure de la prédictabilité de la valeur ck de C à partir d’une valeurvi de Amesure du pouvoir de discrimination de l’attribut A envers la classe C

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 19 / 41

Arbres de décision Apprentissage

Principes

Trois concepts fondamentaux :1 Quel attribut ?2 Quand arrêter ?3 Comment bien généraliser ?

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 20 / 41

Arbres de décision Apprentissage

Gain d’information

Gain d’information = différence entre1 Entropie (théorie de l’information - Shannon, 1948)

H(C ) = −∑

P(c) logP(c)

2 Espérance de l’entropie connaissant la valeur de l’attribut

H(C |A) = −∑a∈A

P(a)∑c

P(c |a) logP(c |a)︸ ︷︷ ︸H(C |A=a)

IG (C ,A) = H(C )− H(C |A)

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 21 / 41

Arbres de décision Apprentissage

Mesure de discrimination classique : 2 Classes

Entropie de Shannon - Si 2 classes :

HS(C ) = −P+ logP+ − P− logP−

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 22 / 41

Arbres de décision Apprentissage

Attributs avec beaucoup de valeurs

Problème (en général)

Attributs avec beaucoup de valeurs => Gain d’information haut

Une solution

GainRatio (C ,A) =IG (C ,A)

H(A)

où H(A) est l’entropie de l’attribut A

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 23 / 41

Arbres de décision Apprentissage

Régression

Ces critères ne sont pas valables pour de la régressionDans CART, critère des moindres carrés

LS(C ,A) = min{xa}

∑y

(xa − y)2

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 24 / 41

Arbres de décision Apprentissage

Autres critères

Rapport de gainIndice de GiniRapport de vraissemblance Chi-CarréDKM....

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 25 / 41

Arbres de décision Apprentissage

Construction de l’arbre : cas général

Algorithme d’apprentissage (Algorithme C4.5)1 Calculer Φ (Aj) pour tous les attributs Aj

1 Choisir l’attribut Aj qui minimise Φ (Aj)

créer un nœud dans l’arbre de décision

2 A l’aide de Aj , partitionner la base d’apprentissage

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 26 / 41

Arbres de décision Apprentissage

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 27 / 41

Arbres de décision Apprentissage

Exemple

H(C |DF ) = 58H (C |DF = vrai) + 3

8H(C |DF = faux)

H (C |DF = vrai) = − 35 log

35 −

25 log

25 ≈ 0.67

H (C |DF = faux) = − 13 log

13 −

23 log

23 ≈ 0.63

...H(C |DF ) ≈ 0.65, H(C |BH) ≈ 0.65, H(C |TB) = 0.56 etH(C |GP) = log 2 ≈ 0.69

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 28 / 41

Arbres de décision Apprentissage

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 29 / 41

Arbres de décision Apprentissage

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 30 / 41

Arbres de décision Attributs continus

Discrétisation

ProblématiqueQue faire dans le cas d’entrées à valeurs continues i.e vecteurs ?

Solution :On discrétise : transformation d’une variable continue en une ou plusieursvariables discrète

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 31 / 41

Arbres de décision Attributs continus

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 32 / 41

Arbres de décision Attributs continus

Exemple

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 33 / 41

Arbres de décision Attributs continus

Comment faire ?

Les essayer tousEssayer à intervalles réguliers (« grid search »)?

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 34 / 41

Arbres de décision Sur-apprentissage

Sur-apprentissage

Grande complexité = RISQUE DE SUR-APPRENTISSAGEDeux moyens de le limiter

1 Arrêter la construction de l’arbre2 Élaguer

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 35 / 41

Arbres de décision Sur-apprentissage

Critère d’arrêt

Erreur d’apprentissageProfondeur maximumTaille de l’échantillonCritère numérique (ex. IG en-dessous d’un seuil)

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 36 / 41

Arbres de décision Sur-apprentissage

Élagage

Elagage à posterioriIdée : Elaguer après la construction de l’arbre entier, en remplaçant lessous-arbres optimisant un critère d’élagage par un noeud. Nombreusesméthodes. Encore beaucoup de recherches.

Minimal Cost-Complexity Pruning (MCCP) (Breiman et al.,84)Reduced Error Pruning (REP) (Quinlan,87,93)Minimum Error Pruning (MEP) (Niblett & Bratko,86)Critical Value Pruning (CVP) (Mingers,87)Pessimistic Error Pruning (PEP) (Quinlan,87)Error-Based Pruning (EBP) (Quinlan,93) (utilisé dans C4.5)...

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 37 / 41

Arbres de décision Sur-apprentissage

Reduced Error Pruning (REP)

Récursion depuis le bas de l’arbreAvec un jeu de validationÀ chaque nœud, on regarde

taux d’erreur si on remplace par la classe majoritairesi < au taux d’erreur global => on remplace

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 38 / 41

Arbres de décision Sur-apprentissage

Error-Based Pruning (EBP)

Récursion depuis le haut de l’arbreSans jeu de validationBasé sur une borne supérieure sur l’erreur de classification

Emax (T , S) = ε(T ,S) + Zα

√ε (T ,S) (1− ε (T ,S))

|S |

ε est le taux de mauvaise classificationZα est l’inverse de la distribution cumulative normaleα seuil pour que le test soit significatif

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 39 / 41

Arbres de décision Conclusion

Conclusion

Approprié pour :Classification de formes décrites en attributs-valeursAttributs à valeurs discrètesRésistants au bruit

Stratégie :Recherche par construction incrémentale d’une hypothèseCritère local (gradient) fondé sur critère statistique

EngendreArbre de décision interprétable (e.g. règles de production)

Nécessite contrôle de la taille de l’arbre

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 40 / 41

Arbres de décision Conclusion

Applications

Principalement, exploration de données...un arbre... et des forêts !

Plus d’interprétation possiblemais modèles très robustes

Benjamin Piwowarski WIA1 - IA - 3ème cours 13 octobre 2014 41 / 41