Classification supervisée Marine Campedel avril 2005
Plan du cours Introduction Généralités Approche probabiliste Notion dapprentissage Méthodes courantes Classificateur de Bayes Analyse discriminante et classificateur de Fisher kppv Arbres de décision Réseaux de neurones Séparateurs à vaste marge (SVM) Stratégies multi-classes
Introduction Objectif de la classification : identifier les classes auxquelles appartiennent des objets à partir de traits descriptifs (attributs, caractéristiques, features). Supervisé : les classes sont connues et lon dispose dexemples de chaque classe. Applications : Reconnaissance des formes ; Contrôle de processus ; Jeux
Introduction Buffon, 1749 « Le seul moyen de faire une méthode instructive et naturelle, est de mettre ensemble des choses qui se ressemblent et de séparer celles qui diffèrent les unes des autres » 1ère taxonomie scientifique : Andrea Cesalpino, 1853 Classification = thème majeur de lhistoire naturelle puis de la biologie Fin 19ème, théorie statistique apparaît. 20ème : analyse de données + optimisation, apprentissage
Généralités P population D ensemble de descripteurs {1,…,K} ensemble de classes X : P -> D, fonction qui associe une description à tout élément de P (extraction dattributs) Y : P -> {1,…,K}, associe une classe à chaque élément de P C : D -> {1,…,K}, fonction de classement ou procédure de classification
Généralités Objectif : apprendre C Déterminer C de façon que C(X) approche au mieux Y Les attributs peuvent être : logiques, symboliques, numériques,… Décrire la population : attribuer une valeur à chacun des attributs
Généralités Moyen : lapprentissage (machine learning) « Apprendre consiste à construire et à modifier des représentations ou des modèles à partir dune série dexpériences. » Michalski (1986) Difficulté actuelle ne réside pas dans laccès à linformation mais dans son filtrage -> intérêt de la classification. A ensemble dapprentissage constitué dexemples x à valeurs dans D, associés à une classe y
Généralités Stratégies pour apprendre C Règle majoritaire : à tout d de D, on associe la classe k telle que P(k) est maximale. Règle du maximum de vraisemblance : à tout d on associe k telle que P(d/k) maximale. Règle de Bayes : à tout d on associe k telle que P(k/d) maximale.
Généralités Erreur pour un attribut d = probabilité quun élément P de description d soit mal classe par C E(d) = P( Y != C / X = d ) E(C)= E(d)P(X=d) Théorème : La règle de Bayes est celle qui minimise lerreur de classification
Généralités Exercice Population dindividus ouvriers (O), médecins (M) ou employés des télécoms (FT) (donc 3 classes). 1 attribut binaire : possède un répondeur / nen possède pas Calculer lerreur associée aux procédures de classement obtenues par la règle majoritaire, la règle du maximum de vraisemblance et la règle de Bayes P(répondeur/k) P(k) OMFTk
Généralités Exercice Population de champignons. 2 classes : vénéneux ou comestible 1- Je ramasse les champignons que la règle de Bayes me donne comme comestibles. Est-ce que je ramasse les champignons à volve ? Appliqueriez-vous cette règle en pratique ? 2- On définit un coût pour tout couple de classes (k,i) et un coût moyen par : On prend la règle qui minimise ce coût moyen. Sachant coût(1,1)=coût(2,2)=0 ; coût(1,2)=2 et coût(2,1)=infini Est-ce que je ramasse les champignons à volve ? P(volve/k) P(k) Comestible(2)Vénéneux(1)k
Généralités Problème 1 : toutes les erreurs ne se valent pas -> Nécessité de pondérer les erreurs. Problème 2 : les procédures de classification doivent avoir un pouvoir prédictif Sous problème : le langage de description doit être suffisamment riche
Généralités Erreur apparente A est le nombre dexemples dapprentissage et err le nombre derreurs effectuées par la procédure C En général A trop petit -> nécessité de prédire lerreur de classification. Lerreur apparente est souvent trop optimiste.
Généralités Limitation de lespace des fonctions C car impossible à explorer. Pb : Sélectionner C, parmi un ensemble réduit, de façon que lerreur apparente (dapprentissage) soit petite en sassurant que lerreur réelle soit petite aussi. Sélectionner C et juger de sa qualité sur le même ensemble A pose problème.
Généralités Soit C lensemble des hypothèses (ou modèles) pour C Capacité de C = card (C) ; pour les ensembles infinis la capacité est égale à la dimension de Vapnik Chervonenskis (VC-dimension) Si capacité trop petite, résultat potentiellement inintéressant Si capacité trop grande, risque de trop minimiser lerreur apparente au détriment de lerreur réelle (sur-apprentissage) -> complexification néfaste
Généralités Plus lon a de degrés de libertés (architecture dun réseau, taille des arbres de décision,…), plus la capacité est grande. Solution : minimiser le risque structurel i.e. choisir conjointement le bon compromis entre erreur réelle et capacité de lespace des hypothèses. Estimation de lerreur réelle : sur un ensemble T
Généralités Attention à la taille de T Parfois 3 ensembles (A, T) + Validation Techniques de rééchantillonnage Validation croisée (partitionnement) Bootstrap (tirage avec remise)
Généralités : conclusion La classification supervisée consiste à inférer, à partir dun échantillon de données classées, une procédure de classification La recherche se fait sur un espace de modèles basés sur Des hypothèses probabilistes (Classif de Bayes) Des notions de proximité (kPPV) Recherche de structure (arbres de décision, réseaux de neurones) Trouver 1 bon compromis entre la minimisation de lerreur apparente et la complexité du modèle.
Classificateur naïf de Bayes Règle de Bayes Naïf -> hypothèse que les attributs sont indépendants donc Estimations de P(k) par la proportion des éléments de k dans A, idem pour P(d/k) Généralement bons résultats malgré hypothèse dindépendance souvent fausse
Analyse discriminante de Fisher Objectif : trouver lhyperplan +b =0 qui sépare au mieux les classes des données x. Fonction discriminante : sign( y = +b ) ou bien comparaison de y = à un seuil Matrice de dispersion inter-classes S B Matrice de dispersion intra-classe S W Critère de Fisher
K plus proches voisins Approche très simple Pas dapprentissage simplement stockage des données dapprentissage : Une donnée de classe inconnue est comparée à toutes les données stockées. On choisit pour la nouvelle donnée la classe majoritaire parmi ses K plus proches voisins. Lourdeur de la procédure -> pb daccélération.
Objectif : produire une procédure de classification interprétable par lutilisateur Exemple : Nœuds : repérés par leur position p ; Nœuds internes = nœuds de décision (étiqueté par un test) – les arcs issus dun nœud sont étiquetés par les résultats du test ; Feuille étiquetée par une classe. Les arbres de décision oui non malade Bien portant Température < 37.5 Gorge irritée
Les arbres de décision Représentation graphique dune procédure de classification Pour une description complète, on aboutit à une seule feuille Règles de décision : larbre définit un système de règles avec un ordre dexamen fixé pour les attributs + règles exclusives SI température < 37.5 ET gorge irritée ALORS malade SI température < 37.5 ET NON gorge irritée ALORS sain SI NON température < 37.5 ALORS malade
Les arbres de décision Notations Echantillon S, Classes {1,…,K} p position dun nœud N(p) cardinal de lensemble des exemples associés à p N(k/p) cardinal de lensemble des exemples associés à p ayant la classe k P(k/p) = N(k/p) / N(p)
Les arbres de décision Exercice : calcul de N et P pour un échantillon de 100 malades (M) et 100 patients sains (S) oui non malade Bien portant Température < 37.5 Gorge irritée 1S ; 41M2S ; 21MTempérature >= S ; 1M6S ; 37MTempérature < 37.5 Non irritéeGorge irritée
Les arbres de décision Exercice : Comment construire larbre de décision associé ? non villagemoyenfaible8 nonouivilleâgémoyen7 nonouivilleâgéélevé6 oui villejeunemoyen5 oui bourgmoyenfaible4 non bourgâgéfaible3 non bourgmoyenélevé2 oui villagemoyen 1 I (classe) ERAMClient
Les arbres de décision Comparaison des différents tests possibles : choix dune fonction permettant de mesurer le degré de mélange des exemples dans les différentes classes. Minimale lorsque tous les exemples appartiennent à la même classe Maximale lorsque les exemples sont équirépartis Entropie Gini Exercice : calculer Entropie et Gini sur lexemple précédent
Les arbres de décision Choix de la fonction de gain (i la fonction précédente) p position dans larbre test : choisi parmi tous les tests possibles pour le nœud courant, darité n P(j) proportion déléments de S, en p, qui passent en p j Exercice : appliquer le calcul du gain sur lexemple précédent.
Les arbres de décision Exercice T1=P T2=Humidité(N,P) T3=Temps( Humidité(N,P), P, Venté(N,P) ), avec étiquetage des arcs dans lordre (gauche à droite) pour le temps: soleil, nuages et pluie pour lhumidité: >75 et <= 75 pour venté: vrai ou faux Montrer que T3 est parfait Calculer lerreur apparente de chaque arbre.
Les arbres de décision Construction : diviser successivement et le plus efficacement possible les exemples de lensemble dapprentissage, par des tests définis à laide des attributs. Opérateurs nécessaires : Décider si un nœud est terminal Sélectionner un test à associer à un nœud Affecter une classe à une feuille
Les arbres de décision Etapes Initialisation à larbre vide Répéter Décider si le nœud courant est terminal Si terminal alors affecter une classe Sinon sélectionner un test et créer le sous-arbre Passer au nœud inexploré suivant sil en existe Jusquà obtenir un arbre de décision Construction dun arbre qui classe parfaitement les exemples dapprentissage -> pb Algorithme classique de construction = non optimal (algorithme descendant)
Les arbres de décision CART (Breiman et al.) Arbre de décision binaire Attributs binaires, qualitatifs ou continus (mais quantifiés) Exploite la fonction de Gini Utilise deux ensembles A et T Deux phases : expansion puis élagage (sur T)
Les arbres de décision Expansion : Nœud terminal si Gini(p) <= seuil ou N(p) <= seuil Sélection dun test : gain à maximiser Feuille : choix de la classe majoritaire
Les arbres de décision Élagage Construction de la suite des arbres T0,…TM T0 = arbre issu de lexpansion et Ti+1 est un élagué de Ti (un sous-arbre de Ti est remplacé par une feuille) Choix de la position où élaguer par minimisation de Calcul de lerreur apparente sur T de chaque Ti
Les réseaux de neurones Intelligence artificielle Cognitivisme Connexionnisme Étude et modélisation des phénomènes naturels Boîte noire Physiologie du cerveau Cellule axone dendrites synapses
Les réseaux de neurones Formalisation par Mc Culloch et Pitts (1943) Loi de Hebb (renforcement des neurones actifs simultanément) 1958 Perceptron de Rosenblatt 1969 Minski et Papert critiquent le perceptron 80s Rumelhart et Mc Clelland et Le Cun introduisent le MLP (rétropropagation)
Les réseaux de neurones Paramètres dun réseau Choix du type de cellule élémentaire (à seuil ou non) Architecture du réseau (nombre de couches, nombre de neurones par couche) Dynamique du réseau (synchrone ou séquentiel)
Les réseaux de neurones Perceptron linéaire à seuil Potentiel post-synaptique Fonction dactivation x1x1 xnxn o w1 wn x1x1 xnxn o w1 wn w0 X0=1X0=1
Les réseaux de neurones Exercices Que modélise ce réseau ? Peut-on modéliser la fonction XOR logique ? x1x1 x2x2 o W1=1 W2=1 W0=-0.5 X0=1X0=1
Les réseaux de neurones Théorème : un perceptron linéaire à seuil à n entrées divise lespace des entrées en deux sous-espaces délimités par un hyperplan. Réciproquement : tout ensemble linéairement séparable peut être discriminé par perceptron linéaire à seuil.
Les réseaux de neurones Apprentissage par correction derreurs A ensemble dapprentissage de R n x{0,1} Objectif : trouver un algo qui infère un perceptron qui classifie au mieux les éléments de A Initialisation des poids w i Répéter : Prendre une donnée (x, y) de A Calculer la sortie o pour la donnée courante %Mise à jour des poids Pour i = 1 : n, w i <- w i + (c-o)x i Sortie : perceptron défini par w 0,…w n
Les réseaux de neurones Exemple : Appliquer lalgorithme par correction derreurs à lapprentissage du OU logique pour deux variables binaires x 1 et x 2 (initialisation w 0 =0, w 1 =1 et w 2 =-1)
Les réseaux de neurones Si lespace nest pas linéairement séparable, lalgorithme par correction derreur ne converge pas et il ny a aucun moyen de le savoir. Aucune tolérance au bruit.
Les réseaux de neurones Apprentissage par descente de gradient Sortie o réelle Mesure de lerreur sur tout léchantillon
Les réseaux de neurones Algorithme par descente de gradient Initialisation Répéter Pour tout (x s,y s ) de A –Calculer o s ; –Pour tout i Pour tout i Sortie : perceptron défini par w 0, …w n
Les réseaux de neurones Fonction derreur quadratique donc ne possède quun minimum -> assurer de converger même si lespace est non strictement linéairement séparable. Paramètre ξ (learning rate) doit être bien choisi ; on peut décroître sa valeur en fonction du nombre ditérations. Défaut de lalgo : convergence peut être lente.
Les réseaux de neurones Algorithme de Widrow-Hoff (règle delta) Initialisation des poids w i Répéter Prendre une donnée (x s,y s ) de A Calculer o s Pour i = 1 : n Sortie : Perceptron défini par w 0,…w n
Les réseaux de neurones Parcourt des exemples Critère darrêt : après un passage complet, les modification de poids sont sous un seuil prédéfini. Pas loin de lalgo par correction derreur mais sorties réelles (et non binaires) et utilisation du paramètre ξ. Empiriquement : convergence non assurée mais en pratique ok et plus rapide que le précédent.
Les réseaux de neurones Perceptron multi-couches 1 à plusieurs couches intermédiaires Connections uniquement entre couches successives Exemple : XOR (à vérifier en exercice) x1x1 x2 o -0.5 X0 =
Les réseaux de neurones Couches C 0 (entrée),C 1 …C q-1 (couches cachées), C q (sortie) Entrées de la couche C i = cellules de la couche C i-1. Si les cellules = perceptron linéaire à seuil alors le réseau est appelé perceptron multi-couches linéaire à seuil. On peut démontrer (Hornik 1989) que la plupart des fonctions numériques peuvent être approximées par des réseaux à une seule couche cachée -> pb de complexité Pb du PMC : déterminer larchitecture du réseau.
Les réseaux de neurones Cellule élémentaire = perceptron linéaire Erreur : (P cellules de sortie) Erreur (delta) :
Les réseaux de neurones Notations w ij poids associé au lien entre cellule j vers cellule i ; x ij entrée associée y i entrée totale de la cellule i o i sortie de la cellule i Exercice : calculer en distinguant les cellules de la couche de sortie des autres.
Les réseaux de neurones Algorithme de rétropropagation (1980s) N cellules réparties sur les couches C 0,C 1 …C q-1, C q Initialisation des poids sur [-0.5, 0.5] Répéter : Prendre une donnée (x,c) et calculer o %calcul par rétropropagation –Pour les cellules de sortie : –Pour q-1 à 1, pour chaque cellule %Mise à jour des poids
Les réseaux de neurones Algorithmes puissants : peuvent résoudre des pbs non linéaires Les algorithmes reposent plus sur des heuristiques que sur des théorèmes solides
Les machines à vecteurs de support Apparut au début des 90s Grand succès sur nombre dapplications Potentiel énorme grâce au « truc des noyaux » Même problème que les arbres et réseaux neuronaux : déterminer les bons paramètres ! Cours de 3h !
Stratégies multi-classes Optimisation globale UCU UCT
Conclusion Classification supervisée Nombreux outils et nombreuses applications Quels sont les outils les plus adaptés à tel ou tel problème ? La réponse dépend des attentes de lutilisateur… Autres cours : SVM + TP sur SVM Classification non supervisée : plus difficile à évaluer ! + TP
Exercices supplémentaires Exercice Population de patients appartenant à deux classes : S (sains) ou M (malades). On utilise deux attributs logiques indépendants T (tension anormale) et C (taux de cholestérol anormal). 1- Donner la procédure de classification selon Bayes sous la forme dun arbre de décision T 2- T1=S et T2=T(M,S) -> calcul de lerreur associée à chaque arbre P(C/k) P(T/k) P(k) MSk