940 likes | 2.4k Views
Apprentissage par arbre de décision. Objectifs / Applications. Apprendre une classification Classification animale, végétale Pouvoir répondre à un questionnaire Pouvoir résoudre un problème à l’aide de Questions/Réponses Apprentissage de r è gles pour annoter des prot é ines Etc.
E N D
Objectifs / Applications • Apprendre une classification • Classification animale, végétale • Pouvoir répondre à un questionnaire • Pouvoir résoudre un problème à l’aide de Questions/Réponses • Apprentissage de règles pour annoter des protéines • Etc.
Un exemple : Détection de la grippe • Apparition soudaine de fièvre élevée • Le patient est fatigué • Rhinorrhée (nez qui coule) • Toux • Douleurs à la gorge • Enrouement, douleurs dorsales, des membres et céphalées Grippe
fièvre toux fatigue Nez qui coule angine Maux de gorge Courbatures et maux de tête grippe Représentation sous forme d’arbre
Méthode • Apprendre une suite de Questions/Réponses la plus « efficace » possible • Isoler les classes • Organiser les questions/réponses sous la forme d’un arbre
Autre exemple : la ballade du chien • Attributs • quel temps fait-il ? {pluvieux, ensoleillé, couvert} • Température extérieure : attribut numérique • Voisin parti avec son chat : attribut booléen • Décision à prendre • Sortir ou non le chien
Quel temps fait-il ? Température ? Voisin absent ? Arbre de décision couvert Ensoleillé pluvieux Je reste chez moi non > 10 degré 10 degré oui Je reste chez moi Je sors le chien Je sors le chien Je reste chez moi
Construction de l’arbre • Problème : • Apprendre un arbre de décision à partir d’une base d’exemples étiquetés • Objectif : • Être efficace en généralisation (être capable de classer correctement un nouvel exemple)
Recherche exhaustive dans l’ensemble des arbres possibles • Impossible : • exponentiel en fonction de • nombre d ’attributs : d • nombre moyen de valeurs par attributs : a
Construction « intelligente » des arbres de décision • Démarrer avec un arbre vide et construire l’arbre de manière inductive et descendante • Critères d’arrêt : • échantillon pur • plus d’attributs a tester
Algorithme Procédure : construire-arbre(X) Si tous les points de X appartiennent à la même classe alors créer une feuille portant le nom de cette classe sinon choisir le meilleur attribut pour créer un nœud Le test associé à ce nœud sépare X en deux parties : Xg et Xd construire-arbre (Xg) construire-arbre (Xd) finsi
Positionnement du problème • Ensemble d ’apprentissage : S • Un exemple : (x,w) décrit par • d attributs : {xi, i=1,…,d} • w une classe C ={w1,…,wC}
Quelques probabilités… • soit un nœud contenant n exemples, répartis en C classes wj comportant chacune nj exemples • Soit a un attribut binaire divisant chaque sous-ensemble nj en deux parties contenant respectivement • lj exemples pour test sur a=VRAI • et rj exemples pour test sur a=FAUX • lj/n P(a=VRAI, w = wj) , rj/n P(a=FAUX, w = wj) • l/n P(a=VRAI) , r/n P(a=FAUX) • nj/n P( w = wj)
Mesure pour choisir l’attribut • Théorie de l ’information • Information mutuelle (entropie croisée) • Si w et a sont deux variables avec Dw et Da leurs ensembles finis de valeurs possibles L ’entropie croisée de w et a est égale à
Entropie • Entropie d’une variable aléatoire w • Entropie de w conditionnée par a • Résultat classique :
et avec : Mesure retenue pour le test • Estimation des probabilités • Attribut retenu (celui qui minimise l’entropie) • Entropie minimale si « échantillon pur »
Un exemple de construction • Problème : • étant donné une situation, prédire si un enfant peut aller ou non jouer avec son voisin • Base d ’exemples • décisions prises les 8 jours précédents le problème (4 attributs binaires et une classe)
Recherche de la racine de l’arbre Calcul de H(w|DF), H(w|BH), H(w|TB) et H(w|GP) H(w|BH) = 0.93, H(w|TB) = 0.8 et H(w|GP) = 1
Temps = beau ? Arbre de décision ... vrai faux
Temps = beau ? faux vrai Goûter pris ? Devoirs finis ? vrai faux vrai Maman de bonne humeur ? faux vrai faux Faux Vrai Faux Vrai Faux Arbre de décision appris
Élagage de l’arbre • Pré-élagage • créer une feuille si une classe y est majoritairement représentée (seuil a priori) • utilisation de critères locaux • Post-élagage • utilisation d’un ensemble indépendant de l’ensemble d’apprentissage • mesurer l’erreur commise sur cet ensemble
Post-élagage • Soit Tmax l’arbre obtenu à partir de l’ensemble d’apprentissage • Construire une suite d’arbres {Tmax, T1, T2, …, Tn} en partant des feuilles et en remontant vers la racine en transformant un nœud en feuille à chaque étape. • Comparer le coût du nouvel arbre à celui du précédent et arrêter l’élagage si le coût est supérieur
Nombre d’exemples de l’ensemble d’apprentissage mal classés par le nœud v de Tk dans l’arbre élagué à v Nombre d’exemples de l’ensemble d’apprentissage mal classés par le nœud v de Tk dans l’arbre non élagué Nombre de feuilles de Tk Nombre de feuilles du sous-arbre de Tk situé sous le nœud v Estimation du coût d’un arbre • Prise en considération de • erreur commise par l’arbre • complexité de l’arbre
Algorithme d’élagage Procédure : élaguer(Tmax) k 0 Tk Tmax tant que Tk a plus d ’un nœud faire pour chaque nœud v de Tkfaire calculer le critère w(Tk,v) sur l ’ensemble d ’apprentissage finPour choisi le nœud vm pour lequel le critère est maximum Tk+1 se déduit de Tk en y remplaçant vm par une feuille k k+1 fin TantQue Sur l’ensemble des arbres {Tmax, T1, …, Tk, …, Tn} choisir celui qui a la plus petite erreur en classification sur l’ensemble de validation
X2 O O O * * O * * O O c O O d O * * b * * * X1 a Un exemple d’élagage
v1 X1 > a ? Faux Vrai v2 v3 X2 > c ? X2 > b ? Faux Vrai Faux Vrai v4 X2 > d ? * * O Faux Vrai * O L’arbre de décision Tmax
v1 X1 > a ? Faux Vrai v2 v3 X2 > c ? X2 > b ? Faux Vrai Faux Vrai v4 X2 > d ? * * O Faux Vrai * O L’arbre de décision Tmax
v1 X1 > a ? Faux Vrai v3 * X2 > b ? Faux Vrai * O L’arbre de décision T1
X1 > a ? Faux Vrai * O L’arbre de décision T2 Choisir, à partir d’un ensemble de validation, le meilleur arbre parmi Tmax, T1 et T2. C’est à dire celui minimisant l’erreur de classification
X1 > a ? X1 > a ? X1 > a ? X2 > c ? X2 > b ? X2 > b ? Vrai Faux Faux Vrai Faux Vrai * Faux Vrai O Faux Vrai * Faux Vrai X2 > d ? * * O Vrai Faux * O * O Choix de l’arbre • Choisir, à partir d’un ensemble de validation, le meilleur arbre parmi Tmax, T1 et T2, c’est à dire celui minimisant l’erreur de classification T2 T1 Tmax
Récapitulatif • Méthode de référence en apprentissage supervisé • Méthode très répandue, rapide et disponible (http://www.cse.unsw.edu.au/~quinlan) • Méthode relativement sensible au bruit