IFT 501 Recherche d'information et forage de données Chaptitre 4 : Classification concepts de base, arbres de décision et évalution des modèles Partie.

Slides:



Advertisements
Présentations similaires
MOT Éditeur de modèles de connaissances par objets typés
Advertisements

Relational Learning as a Search in a Critical Region Lou Fedon 9 Mars 2006.
A. Cornuéjols IAA (basé sur Rob Schapires IJCAI99 talk) Combiner des apprenants: le boosting.
Algorithmes et structures de données avancés
Classification et prédiction
Classification et prédiction
Regroupement (clustering)
Apprentissage supervisé à partir de séquences
Regroupement (clustering)
RECONNAISSANCE DE FORMES
Classification supervisée Marine Campedel avril 2005.
Application de réseaux bayésiens à la détection de fumées polluantes
Yann Chevaleyre et Jean-Daniel Zucker
Système formel Nous avons introduit : signes de variables (x, y, z, …), de constantes (0, 1), d’opérations (+, ), de relations (=, ) Axiomes : ce sont.
Modélisation des systèmes non linéaires par des SIFs
Traitement Co-Séquentiel: Appariment et Fusion de Plusieurs Listes
Traitement de données socio-économiques et techniques d’analyse :
Concepts avancés en mathématiques et informatique appliquées
Mirta B. Gordon Laboratoire Leibniz-IMAG Grenoble
Apprendre à partir des observations
Algorithmique et Programmation
Initiation à la conception de systèmes d'information
FDD et Arbres de Décision
Heuristiques A. Introduction B. Recherche d ’une branche
Méthode des k plus proches voisins
Groupe 1: Classes de même intervalle
Construction de modèles visuels
La segmentation
RECONNAISSANCE DE FORMES
DEA Perception et Traitement de l’Information
La Classification
Les fichiers indexés (Les B-arbres)
Structures de données IFT-2000
Gestion de Fichiers Indexes basés sur les structures d’arbres binaires et indexes à niveaux multiples.
Algorithmes d ’approximation
Révisions - IA Généralité: problèmes de lIA Recherche Logique Traitement de lincertitude Apprentissage Langue naturelle.
Les Arbres de décision ou régression
Structure discriminante (analyse discriminante)
Mise en oeuvre des MMCs L'utilisation des MMCs en reconnaissance des formes s'effectue en trois étapes : définition de la topologie de la chaîne de Markov,
Gestion de Fichiers GF-10: Traitement Co-Sequentiel: Appariment et Fusion de Plusieures Listes (Base sur les sections de Folk, Zoellick & Riccardi,
Réseaux bayésiens Chap. 14 Sections 1 – 3.
Apprentissage par arbre de décision
Programmation linéaire en nombres entiers
1 Alain Casali Christian Ernst Extraction de Règles de Corrélation Décisionnelles 29 Janvier 2009.
Classification : objectifs
Algorithmes Branch & Bound
Christelle Scharff IFI 2004
Arbres binaires et tables de hachage
I.A. Session 2009/2010 E.P.S.I. Bordeaux – C.S.I.I – 2 ème Année – Cours n°6.
Foued Mnasri Weal Rekik
Micro-intro aux stats.
Probabilités et Statistiques Année 2010/2011
Initiation à la conception des systèmes d'informations
Arbres de décision flous
Olivier Leclair, Université Laval Un algorithme de fouille dans une représentation des données par objets: une application médicale SIMON, Arnaud.
Knowledge discovery in Databases (KDD)
1/16 Chapitre 3: Représentation des systèmes par la notion de variables d’état Contenu du chapitre 3.1. Introduction 3.2. Les variables d’état d’un système.
Combating Web Spam with TrustRank. OSINI Aurélien.
Méthode des moindres carrés (1)
Structures de données avancées : Principales structures de fichiers
Les Extra-Trees+SW Réalisé par : Encadrante:
Extreemly Random Trees + SubWindows HOURRI Soufiane NAIT ABDELLAH OUALI Ismail OUFQIR Anouar OUSSAFI Mohammed.
INTRODUCTION AUX BASES DE DONNEES
Détecter les groupes à hauts risques cardiaques à partir de caractéristiques telles que l’alimentation, le fait de fumer ou pas, les antécédents familiaux.
Raison d'être de la structure de fichiers : Les premiers travaux : Début des années 1960 : En 1963 : Près de 10 ans plus tard... (à peu près 1973) : Durant.
Arbres de décision Algorithme CART Aurélien Vesin Master 2 Pro –
Schéma de base de données Présentation. Conception du schéma logique  Transformation du schéma conceptuel en structures de données supportées par les.
IFT 501 Recherche d'information et forage de données Chapitre 4 : Classification concepts de base, arbres de décision et évalution des modèles Partie 3.
Les dossiers patients d’un hôpital contiennent les attributs suivants : – nom – code postal – pression systolique en mm de mercure. – s’il est porteur.
Technologies de l’intelligence d’affaires Séance 11
Transcription de la présentation:

IFT 501 Recherche d'information et forage de données Chaptitre 4 : Classification concepts de base, arbres de décision et évalution des modèles Partie I André Mayers Automne 2014 inspiré fortement des transparents suggérés par les auteurs du manuel obligatoire 1

Introduction 2 Un modèle est une fonction f : A n  C

Exemples de tâche de classification Prédire si une tumeur est maligne ou bénigne Détecter si une transaction une carte de crédit est frauduleuse Classifier les structures secondaires d’une protéine comme étant soit alpha-helix, beta-sheet, random coil Identifier le type d’un articles de revue comme étant financier, sportif, culturel… Trouver les caractéristiques différenciant les différentes classes d’un ensemble d’objets (ex. les espèces de chien) 3

PRÉLIMINAIRES Section 4.1 4

Définition de la classification Étant donné une collection d’objets pour l’apprentissage ◦ Chaque objet possède un ensemble d’attributs dont l’un est sa classe Trouver et valider un modèle prédisant la classe d’un objet de classe inconnue à partir de la valeur de ses attributs ◦ Habituellement la collection d’objets identifiés pour l’apprentissage est divisée en deux parties : l’une pour construire le modèle et l’autre pour valider le modèle Modèle est un nom pour signifier une fonction dont le domaine est le produit cartésien des attributs et l’image la classe ◦ on confond souvent modèle avec l’algorithme utilisé pour évaluer la classe d’un objet Tous les attributs continus sont discrétisés, c’est la principale caractéristique distinguant la classification de la régression 5

Utilité d’un modèle de classification Décrire ◦ Un modèle descriptif de classification permet de trouver les caractéristiques distinctives des éléments d’une classe Prédire ◦ Un modèle prédictif de classification permet d’identifier la classe d’un objet en fonction de la valeur de ses attributs Tous les modèles ne sont pas descriptifs, ◦ un réseau de neurones peut servir à la prédiction mais non à la description  il est difficile d’inférer une explication symbolique à partir des poids des liens entre les neurones  les neurones des couches cachées n’ont souvent aucune signification symbolique 6

APPROCHE GÉNÉRIQUE DE RÉSOLUTION D’UN PROBLÈME DE CLASSIFICATION Section 4.2 7

Processus de classification 8

Évaluation d’un modèle de classification L’évaluation d’un modèle de classification est basée sur le nombre de prédictions correctes et le nombre de prédictions erronées. Se fait souvent avec la matrice de confusion dont nous avons parlé 9

Les techniques de classification ◦ Les méthodes basées sur les arbres de décision ◦ Les méthodes basées sur les règles ◦ Réseau de neurones ◦ Réseau bayésien ◦ Séparateur à vaste marge (SVM) Dans ce cours, nous nous concentrerons sur les arbres de décision 10

INDUCTION D’UN ARBRE DE DÉCISION Section

Exemple d’arbre de décision 12 Attributs diviseurs categorique continu classe Données d’apprentissage Owner* MarSt TaxInc YES NO Oui Non Married Single, Divorced < 80K> 80K Modèle: Arbre de décision * Owner = Home Owner

Autre exemple d’arbre de décision MarSt Owner TaxInc YES NO Yes No Married Single, Divorced < 80K> 80K Il peut exister plusieurs arbres de décision comme modèle des mêmes données categorique continu classe Données d’apprentissage 13

La classification à l’aide d’un arbre de décision Arbre de décision La phase utilisation du modèle voir les prochaines acétates 14

LA PHASE UTILISATION Comment utiliser un arbre de décision pour classifier une donnée 15

La phase utilisation du modèle : 1 16 Owner* MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K la donnée à tester comparer les attributs en commençant à la racine prendre une donnée dans l’ensemble test

La phase utilisation du modèle : 2 Owner MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K La donnée à tester 17 Le premier attribut diviseur est « être propriétaire d’une maison »

La phase utilisation du modèle : 3 Owner MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K donnée test 18 Prendre la branche correspondant à la valeur de l’attribut propriétaire pour la donnée

La phase utilisation du modèle : 4 Owner MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K donnée test 19 Le prochain attribut diviseur est l’état matrimonial

La phase utilisation du modèle : 5 20 Owner MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Donnée test Prendre la branche correspondant à la valeur de l’attribut état matrimonial pour la donnée, c.-à-d. marié

La phase utilisation du modèle : 6 Owner MarSt. TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Donnée test Assign Cheat to “No” 21

LA PHASE APPRENTISSAGE Les algorithmes pour induire un arbre de décision : 22

La phase apprentissage du modèle Arbre de décision La phase apprentissage 23

Algorithme d’apprentissage d’un arbre de décision ◦ Algorithme de Hunt (1966) ◦ CART (Classification And Regression Trees) (1984) ◦ ID3 (1986), C4.5 (1993) ◦ SLIQ, SPRINT 24

Algorithme de Hunt Soit D t l’ensemble des données qui a été associé au nœud t ◦ Si D t contient que des nœuds appartenant à la classe y t, alors le nœud t est une feuille étiquetée y t ◦ Si D t =Ø, alors t est une feuille étiquetée par la classe de défaut y d ◦ Si D t contient des données appartenant à plus d’une classe alors a) utilisez un attribut diviseur pour créer des nœuds fils à t et recueillant les données de t en fonction de la valeur de l’attribut choisi. b) appliquer les étapes précédentes aux nœuds créés Le noeud t ? 25

Algorithme de Hunt … Owner Don’t Cheat Yes.No Owner Don’t Cheat YesNo Marital Status Don’t Cheat Single, Divorced Married Taxable Income Don’t Cheat < 80K>= 80K Owner Don’t Cheat YesNo Marital Status Don’t Cheat Single, Divorced Married 26

Conception de l’algorithme d’induction d’un arbre de décision Stratégie gloutonne ◦ Choisir un attribut et sa valeur qui maximise un certain critère.  sans retour en arrière ◦ Ce sera toujours une stratégie gloutonne  Bien qu’il y aura une sous-phase test pouvant mener à un retour au début du processus de forage Points considérés dans les prochains transparents 1.La division des données 1.Les types de division des valeurs d'un attribut 2.Trouver la division optimale 2.La condition d’arrêt pour la division 27

POINTS À CONSIDÉRER LA DIVISION DES DONNÉES LES TYPES DE DIVISION DES VALEURS D'UN ATTRIBUT TROUVER LA DIVISION OPTIMALE LA CONDITION D’ARRÊT POUR LA DIVISION Conception de l’algorithme d’induction d’un arbre de décision 28

Les types de test pour diviser les données En fonction du type d’attribut ◦ Nominale ◦ Ordinale ◦ Continue En fonction du nombre de divisions ◦ Division binaire ◦ Division n-naire 29

Division à partir d’un attribut nominal Division n-aire ◦ créer autant de nœuds fils qu’il y a de valeurs. Division binaire ◦ diviser les valeurs en deux groupes et attribuer à chacun un nouveau nœud. ◦ Comment séparer optimalement les valeurs ? CarType Family Sports Luxury CarType {Family, Luxury} {Sports} CarType {Sports, Luxury} {Family} ou 30

Division à partir d’un attribut ordinal Division n-aire ◦ Idem à nominal Division binaire Que pensez du regroupement ci-dessus ? 31 Size Small Medium Large Size {Medium, Large} {Small} ou Size {Small, Large} {Medium}

Division à partir d’un attribut continue Différentes stratégies ◦ Discrétisation pour transformer l’attribut continu en un attribut ordinal Donne lieu à une division binaire ou n-aire  Statique – la discrétisation se fait a priori  Dynamique – les valeurs sont réparties dans des intervalles égaux, de fréquences égales (ex. : percentile), ou induit par regroupement (clustering). ◦ Décision binaire : (A < v) or (A  v)  il s’agit de trouver la valeur de v optimale  l’essai de toutes les valeurs de v peut-être coûteux 32

Division binaire et n-aire d’un attribut continu 33

POINTS À CONSIDÉRER LA DIVISION DES DONNÉES LES TYPES DE DIVISION DES VALEURS D'UN ATTRIBUT TROUVER LA DIVISION OPTIMALE LA CONDITION D’ARRÊT POUR LA DIVISION Conception de l’algorithme d’induction d’un arbre de décision 34

Trouver la division optimale Stratégie globale Stratégie gloutonne : ◦ La division donnant les nœuds les plus homogènes est choisie  Plus les nœuds sont homogènes, plus ces nœuds contiennent de l’information ◦ Comment mesurer la pureté ou l’impureté d’un nœud et des divisions (nœuds fils) ? Quel nœud donne le plus d’information ? Non homogène, Niveau élevé d’impureté Homogène, Niveau faible d’impureté 35

Le gain d’information Avant division : M0 B? YesNo Node N3Node N4 A? YesNo Node N1Node N2 M1 M2M3M4 M12 M34 Le critère de décision est le gain Gain = M0 – M12 vs M0 – M34 M : Fonction mesurant l’impureté à déterminer 36

Le gain d’information L’attribut cible a deux classes de 10 éléments chacun Quelle est la meilleure division ? (réponse est dans les diapositives 53 …) ∆ = gain d’information est un critère pour choisir la division optimale M() : mesure d’impuretén j : # de donnée ayant la valeur v j v j : j ième valeur de l’attributn : # de donnée dans le nœud parent 37

Mesures du niveau d’impureté Index Gini Entropie Erreur de classification 38

L’INDEX GINI Calcul de la division optimale basé sur 39

Mesure du niveau d’impureté : GINI Index Gini pour le nœud t:  (NOTE : p( j | t) est la fréquence relative de la valeur j dans le nœud t. ◦ Sa valeur maximum est (1 - 1/nb classe ), c.-à-d. le max d’impureté  Lorsque toutes les classes sont uniformément distribuées dans les nœuds ◦ Sa valeur minimum est 0,  lorsque toutes les données du nœud appartiennent à la même classe 40

La division basée sur l’index Gini L’index Gini d’une division ◦ Soit p : le nœud parent k : # de nœuds fils n i = # de données dans le nœud fils i, n = # de données dans le nœud p. On choisit le gain le plus important c.-à-d. Le Gini division le plus petit Utilisé par CART, SLIQ, SPRINT. 41

Attribut binaire : Calcul de l’index Gini l Diviser les donneés selon les valeurs de l’attribut – Soit le noeud parent B? B? Yes No Node N1Node N2 Gini(N1) = 1 – (5/6) 2 – (2/6) 2 = Gini(N2) = 1 – (1/6) 2 – (4/6) 2 = Gini Division = 7/12 * /12 * = 0.333

Attribut nominal : Calcul de l’index Gini Pour chaque ensemble de noeuds fils potentiels, trouver l’index Gini de cet ensemble (Gini Division ) Choisir la division menant à Gini Division la plus petite. Division n-aireDivision binaire 43 Il manque la division : {Luxury} vs {Sports, Family}

Attribut continu : Calcul de l’index Gini Décision binaire Le nombre maximum de divisions pertinentes est le nombre de valeurs de l’attribut ◦ Choisir le milieu entre 2 valeurs consécutives Pour chaque v (valeur de division) faire la matrice de décompte Méthode triviale ◦ Pour chaque v, calculer le Gini Div ◦ Choisir v qui a le plus petit Gini Div ◦ Méthode inefficace A<VA≥V Y N

Attribut continu : Calcul de l’index Gini … Décision binaire Pour optimiser l’algo de choix de v ◦ Ordonner les données selon les valeurs de l’attribut de division ◦ Construire les matrices de division autour des changements de valeurs de classe (en bleu) ◦ Calculer les GiniDiv pour ces matrices ◦ Choisir comme valeur de division la donnée donnant le petit GiniDiv ◦ Voir l’exemple de la prochaine diapositive pour justifier le procédé 45 Valeurs de division Données ordonnées

Exemple plus détaillé 46 cdivn-ggi*pdginipdsn-dgi*pdginipds i0.450(0 1) (15 9) (1 1) (14 9) (2 1) (13 9) (3 1) (12 9) (3 2) (12 8) (3 3) (12 7) (3 4) (12 6) (4 4) (11 6) (5 4) (10 6) (6 4) (9 6) (7 4) (8 6) (7 5) (8 5) (7 6) (8 4) (7 7) (8 3) (8 7) (7 3)

47

L’ENTROPIE Calcul de la division optimale basé sur 48

La division basée sur l’entropie Entropie pour un nœud :  (NOTE : p( j | t) est la fréquence relative de la classe j dans le nœud t). ◦ Sa valeur maximum est (log 2 nb classe ), c.-à-d. le max d’impureté  Lorsque les classes sont uniformément distribuées dans le nœud ◦ Sa valeur minimum est 0,  lorsque toutes les données du nœud appartiennent à la même classe ◦ Entropie pour une division : identique à Gini, c.-à-d. c’est la moyenne pondéré de l’entropie des nœuds ◦ Comme pour l’index Gini, on choisit l’attribut et la division qui minimise l’impureté 49

La division basée sur l’entropie P(C1) = 0/6 = 0 P(C2) = 6/6 = 1 Entropie = – 0 log 0 – 1 log 1 = – 0 – 0 = 0 P(C1) = 1/6 P(C2) = 5/6 Entropie = – (1/6) log 2 (1/6) – (5/6) log 2 (1/6) = 0.65 P(C1) = 2/6 P(C2) = 4/6 Entropie = – (2/6) log 2 (2/6) – (4/6) log 2 (4/6) =

La division basée sur l’entropie… L’entropie d’une division ◦ Soit p : le noeud parent k : # de noeuds fils n i : # de données dans le ième noeud fils, n : # de données dans le noeud p. ◦ On choisit le gain le plus important c.-à-d. L’entropie division le plus petit ◦ Utilisé par ID3 et C4.5 (vérifier pour C4.5) ◦ Favorise l’attribut ayant un # de valeurs élevées, mais qui n’a pas nécessairement une sémantique pertinente (ex. : le matricule).

Regroupement des valeurs d’un attribut Parfois le # d’éléments dans l’ensemble des feuilles sont trop faibles pour mener à des interprétations fiables, il faut regrouper ces valeurs. ◦ Noeud parent  N p = (18 18) i.e. C1 = 18, C2 = 18  Entropie = 1 ◦ On choisit attribut A qui a 4 valeurs A1, A2, A3 et A4  N A1 = (3 7) ; N A2 = (8 4) ; N A3 = (5 1) ; N A4 = (2 6)  L’entropie pour cette division ◦ On décide de regrouper A1 avec A2, et A3 avec A4  N A1A 2 = (11 11) ; N A3A4 = (7 7)  L’entropie pour cette division est 1.0  c’était pas un bon regroupement des valeurs  en général le regroupement est basé sur une sémantique des valeurs des attributs ◦ On décide donc de regrouper A1 avec A4, et A2 avec A3  N A1A4 =(5 13) ; N A2A 3 = (13 5)  L’entropie pour cette division  Est-ce vraiment moins bon que de conserver les 4 valeurs ? 52

La division de l’information (split information) Dans les deux arbres ci-contre, les feuilles sont pures (une seule classe) (ex. 50+, 10+, 10- etc). L’entropie est donc nulle pour chaque division. Laquelle est la meilleure? ◦ En termes de gain d’information ◦ En terme du rapport de gain A1 100 exemples A2 100 exemples

L’entropie d’un attribut ayant un # de valeurs élevées (split information) L’entropie du # de division : ◦ Le nombre de division augmente la probabilité d’avoir des fréquences petites ou grandes ◦ Entropie n_div augmente avec k le nombre de noeuds fils Le ratio du gain permet de pondérer le gain en fonction du # de divisions Utiliser dans l’algo de C4.5 Le ratio de gain s’applique aussi à l’index Gini qui a le même défaut 54

GainRatio ◦ Noeud parent  N p = (18 18) i.e. C1 = 18, C2 = 18  Entropie = 1 ◦ On choisit attribut A qui a 4 valeurs A1, A2, A3 et A4  N A1 = (3 7) ; N A2 = (8 4) ; N A3 = (5 1) ; N A4 = (2 6)  L’entropie pour cette division  gainRatio = ( ) / =  On décide de regrouper A1 avec A2, et A3 avec A4  N A1A 2 = (11 11) ; N A3A4 = (7 7)  L’entropie pour cette division est  gainRatio = ◦ On décide donc de regrouper A1 avec A4, et A2 avec A3 ‘  N A1A4 =(5 13) ; N A2A 3 = (13 5)  L’entropie pour cette division  Est-ce vraiment moins bon que de conserver les 4 valeurs ?  gainRatio = ( ) / 55

CALCUL DE LA DIVISION OPTIMALE BASÉ SUR L’ERREUR DE CLASSIFICATION 56

La division optimale basée sur l’erreur de classification Erreur de classification pour un nœud :  (NOTE: p( j | t) est la fréquence relative de la classe j dans le nœud t). ◦ Une feuille est étiqueté par la classe ayant le plus grand nombre d’élément  max(P(i|t) est la probabilité de ne pas faire d’erreur de prédiction ◦ Sa valeur maximum est (1 - 1/n c ), c.-à-d. le max d’impureté  Lorsque les classes sont uniformément distribuées dans le nœud ◦ Sa valeur minimum est 0,  lorsque toutes les données du nœud appartiennent à la même classe ◦ Erreur de classification pour une division est comme pour l’index Gini et l’entropie, la moyenne pondéré des erreurs de classification pour chacun des nœuds. ◦ Comme précédemment, on choisit l’attribut et les valeurs qui minimisent l’erreur de classification 57

La division optimale basée sur l’erreur de classification P(C 1 ) = 0/6 = 0 P(C 2 ) = 6/6 = 1 Erreur = 1 – max (0, 1) = 1 – 1 = 0 P(C 1 ) = 1/6 P(C 2 ) = 5/6 Erreur = 1 – max (1/6, 5/6) = 1 – 5/6 = 1/6 P(C 1 ) = 2/6 P(C 2 ) = 4/6 Erreur = 1 – max (2/6, 4/6) = 1 – 4/6 = 1/3 58

La division optimale basée sur l’erreur de classification 59 Est-ce que tous les regroupements de valeurs d’attributs donnent le même résultat ? (errClassNoeud 1 5)  1/6 'errClassNoeud 2 8)  1/5 (errClassNoeud 1 1)  1/2 (errClassDiv '(1 5) '(2 8) '(1 1))  2/9 (errClassDiv '(3 13) '(1 1))  2/9 (errClassDiv '(2 6) '(2 8))  2/9 (errClassDiv '(3 9) '(1 5))  2/9

Comparaison des mesures d’impureté Lorsque l’attribut classe a deux valeurs 60

Erreur de classification vs Gini A? YesNo Noeud N1Noeud N2 A-t-on vraiment un gain d’information en choisissant l’attribut A? 61

POINTS À CONSIDÉRER LA DIVISION DES DONNÉES LES TYPES DE DIVISION DES VALEURS D'UN ATTRIBUT TROUVER LA DIVISION OPTIMALE LA CONDITION D’ARRÊT POUR LA DIVISION Conception de l’algorithme d’induction d’un arbre de décision 62

Les critères d’arrêt lors de l’induction d’un arbre de décision Arrêter l’éclatement d’un nœud lorsque toutes ses données sont de la même classe ◦ Ça sert à rien de continuer Arrêter l’éclatement d’un nœud lorsque toutes ses données ont des attributs ayant des valeurs similaires ◦ Ça sert à rien de continuer Arrêter l’éclatement d’un nœud avant que les critères précédents deviennent vrais. ◦ arrêter lorsque le gain est en dessous d’un certain seuil ◦ arrêter lorsque le # d’éléments dans les feuilles est en dessous d’un certain seuil ◦ Ces points seront développés la semaine prochaine. 63

Squelette de l’algorithme d’induction d’un arbre de décision 64

L’UTILISATION DES ARBRES DE DÉCISION POUR LA CLASSIFICATION 65

Avantages de la classification avec arbre de décision ◦ Non paramétrique  aucune supposition sur la distribution des données ◦ Peu coûteux à construire ◦ Rapidité pour classifier une nouvelle donnée ◦ Facile à interpréter  sauf pour les arbres de décision de grande taille ◦ Précision des résultats comparables aux autres techniques de classification pour plusieurs ensembles de données simples ◦ Idéal pour approximer plusieurs fonctions discrètes  exception exemple : la fonction parité pour un vecteur booléen ◦ N’est pas trop affecté par la redondance d’attribut 66

Expressivité Pour modéliser des fonctions à valeurs discrètes d’attributs, les arbres de décision ont une bonne expressivité (modélisent facilement cette fonction) ◦ Pour certains types de fonctions discrètes, l’arbre doit être complet pour être pertinent  Exemple la fonction parité  Classe = 1 si le # d’attributs booléens avec valeur True est pair  Classe = 0 si le # d’attributs boolléens avec valeur True est impair Pour les attributs continus, les arbres de décisions peuvent manquer d’expressivité ◦ Particulièrement avec les fonctions d’attributs qui ne prennent qu’un seul attribut. 67

Désavantage de la classification avec un arbre de décision ◦ Danger de fragmentation menant à la surgénéralisation ◦ Les attributs superflus peuvent accidentellement augmenter sa complexité ◦ Trouver l’arbre de décision idéal est NP-complet  les heuristiques utilisées ne mènent pas au modèle idéal  stratégie gloutonne, top-down… ◦ réplication de sous-arbres ◦ Modélise mal les fonctions où deux attributs interagissent simultanément 68

la stratégie de diviser pour conquérir peut mener à répéter des sous-arbres Le même sous-arbre apparaît dans plus d’une branche 69

Frontière de décision Arbre de décision modélise par une fonction discrète La situation idéale : les classes peuvent être définis par formule logique ou chaque atome ne traite que d’une variable La ligne limitant deux régions de classes différentes est nommée frontière de décision Pour les tests à une variable, les frontières de décision sont // aux axes 70

Une situation simple où il faut considérer une paire d’attribut comme diviseur 71

Arbre avec frontières de décision non // aux axes x + y < 1 Class = + Class = La fonction d’éclatement implique plus d’un attribut Plus expressive Trouver la fonction d’éclatement optimale est computationnellement coûteux Il faut une discrétisation multidimensionnelle 72

Contourner la complexité dû à une paire d’attribut diviseur Définir un troisième comme étant une fonction de la paire d’attribut Pour la diapositive précédente, il s’agit de construire l’attribut Z = x+y et de considérer z =1 ◦ Il est parfois difficile de trouver une telle fonction et le coût pour trouver une telle fonction peut dépasser celui de tester toutes les combinaisons possibles des valeurs de la paire d’attribut. 73

Exemple: C4.5 Induction de l’arbre par un processus en profondeur d’éclatement des noeuds Utilisation du gain d’information (ratio) Tri les données. Inapproprié pour les grandes bases de données ◦ L’ensemble des données doit être dans la RAM. ◦ Le tri doit se faire hors de la RAM. Logiciel disponible sur le web faire google avec c4.5r8.tar.gz 74

Considérations pratiques pour la classification Sous apprentissage et sur apprentissage Valeurs manquantes Coût de la classification 75