Apprentissage de concepts (Référence : Tom Mitchell, Machine Learning, McGraw Hill, 1997)
Apprentissage de concepts Définitions Espace de recherche : du général au spécifique L algorithme d élimination des candidats Biais inductifs Apprentissage de concepts 2
Définition Problème : apprendre une fonction de mapping d exemples vers deux classes : positive & négative. Input : Un ensemble d exemples déjà classifiés comme positifs or négatifs. Apprendre un concept : processus d induction d une fonction de mapping des exemples vers un ensemble Booléen. Exemples : Classifier des objets dans des images astronomiques comme des étoiles ou des galaxies Classifier des animaux comme vertébrés ou invertébrés Apprentissage de concepts 3
Exemple : Champignons Tâche : Prédire si des champignons sont vénéneux Performance : Taux d exactitude de la classification Expérience : Une base de données décrivant des champignons et leurs classes. Connaissance à apprendre : Fonction de mapping des champignons vers {0,1} où 0:non vénéneux et 1: vénéneux Représentation de la connaissance à apprendre : Conjonction de valeurs d attributs. Mécanisme d apprentissage : Élimination des candidats Apprentissage de concepts 4
Représentation des exemples Attributs / Caractéristiques : color : {red, brown, gray} size : {small, large} shape : {round,elongated} land : {humid,dry} air humidity : {low,high} texture : {smooth, rough} Apprentissage de concepts 5
Espace des entrées et des sorties X : l espace de tous les exemples possibles (espace des entrées). Y: l espace des classes (espace des sorties). Un exemple dans X est un vecteur de caractéristiques x. Par exemple : x = (red,small,elongated,humid,low,rough) X est le produit croisé de toutes les valeurs de caractéristiques. X Nous ne disposons que d un petit sous-ensemble Y = {0,1} Apprentissage de concepts 6
Exemples d apprentissage D : ensemble des exemples d apprentissage, D : ensemble de pairs { (x,c(x)) }, où c est le concept cible. Exemple : ((red,small,round,humid,low,smooth), ((red,small,elongated,humid,low,smooth), ((gray,large,elongated,humid,low,rough), ((red,small,elongated,humid,high,rough), poisonous) poisonous) not-poisonous) poisonous) Instances de l espace des entrées Instances de l espace des sorties Apprentissage de concepts 7
Représenter une hypothèse Une hypothèse h est une fonction de X vers Y h: X Y Espace des conjonctions. Symboles spéciaux :? n importe quelle valeur est acceptable 0 aucune valeur n est acceptable Les hypothèses suivantes : (?,?,?,?,?,?) : tous les champignons sont vénéneux (0,0,0,0,0,0) : aucun champignon n est vénéneux Apprentissage de concepts 8
Espace d hypothèses L espace de toutes les hypothèses est représenté par H X h h une hypothèse dans H. x un exemple de champignon. si h(x) = 1 alors x est vénéneux, sinon x ne l est pas. Le but est de trouver l hypothèse, h*, qui est très proche du concept cible c. On dit d une hypothèse qu elle couvre les exemples qu elle classifie comme positifs. Apprentissage de concepts 9
Supposition 1 Exploration de l espace de toutes les conjonctions. Nous supposons que le concept cible appartient à cet espace. H Concept cible c Apprentissage de concepts 10
Supposition 2 Une hypothèse proche du concept cible c, obtenue après avoir vu plusieurs exemples d apprentissage, s avèrera efficace sur un ensemble de nouveaux exemples. Ensemble d apprentissage D L hypothèse h* est bonne Nouvel ensemble D L hypothèse h* est bonne Apprentissage de concepts 11
Apprentissage de concepts : une recherche Une recherche qui va du général au spécifique. Inhérente à l espace des hypothèses. Considérons ces deux hypothèses : h1 = (red,?,?,humid,?,?) h2 = (red,?,?,?,?,?) h2 est plus générale que h1 car h2 classifie plus d instances que h1 et h1 est couverte par h2. Apprentissage de concepts 12
Générale Spécifique Par exemple, considérons les hypothèses suivantes : h1 h2 h3 h1 est plus générale que h2 et h3. h2 et h3 ne sont ni plus spécifique ni plus générale l une par rapport à l autre. Apprentissage de concepts 13
Définition hj et hk deux hypothèses de mapping d exemples vers {0,1}. hj est plus générale que hk ssi, Pour tous les exemples x, hk(x) = 1 hj(x) = 1 Ainsi, hj >= hk La relation >= relation impose un ordre partiel à travers l espace des hypothèses H. Elle est réflexive, antisymétrique et transitive. Apprentissage de concepts 14
Treillis Un espace d entrées X défini ainsi un treillis d hypothèses ordonnées selon une relation général-spécifique : h1 h2 h3 h4 h5 h6 h7 h8 Apprentissage de concepts 15
Trouver une hypothèse maximalement spécifique Algorithme de recherche dans l espace des conjonctions : Commencer avec l hypothèse la plus spécifique Généraliser l hypothèse quand elle échoue à reconnaître un exemple positif Algorithme : - Initialiser h à l hypothèse la plus spécifique - Pour chaque exemple positif X Pour chaque valeur a dans h Si l exemple X et h coïncide sur a, Alors rien Sinon généraliser a par la prochaine contrainte la plus générale 3. Retourner l hypothèse h Apprentissage de concepts 16
Exemple Exécutons l algorithme précédent sur ces exemples : ((red,small,round,humid,low,smooth), ((red,small,elongated,humid,low,smooth), ((gray,large,elongated,humid,low,rough), ((red,small,elongated,humid,high,rough), poisonous) poisonous) not-poisonous) poisonous) On commence par l hypothèse la plus spécifique : h = (0,0,0,0,0,0) Le premier exemple est positif. h échoue à le reconnaître, on généralise h pour qu il couvre exactement cet exemple : h = (red,small,round,humid,low,smooth) Apprentissage de concepts 17
Exemple Puis, vient l exemple 2 : ((red,small,elongated,humid,low,smooth), poisonous) C est un exemple positif. Tous ces attributs coïncident avec l hypothèse h sauf, l attribut forme (shape) : il a la valeur elongated, et non pas round. On généralise cet attribut en utilisant le symbole? : h: (red,small,?,humid,low,smooth) Le 3 ème exemple est négatif, on l ignore. En traitant le 4 ème exemple, l hypothèse est généralisée ainsi : h = (red,small,?,humid,?,?) h est interprétée comme suit : tout champignon qui est rouge, petit et récolté dans un sol humide doit être classifié comme vénéneux. Apprentissage de concepts 18
Analyse de l algorithme L algorithme trouve l hypothèse la plus spécifique et consistante avec l ensemble des exemples d apprentissage. Il exploite les relations <général-spécifique> pour se déplacer dans le treillis à la recherche de la prochaine hypothèse la plus spécifique. h1 h2 h3 h4 h5 h6 h7 h8 Apprentissage de concepts 19
Points à considérer Il y a plusieurs hypothèses consistantes avec l ensemble d apprentissage D. Pourquoi préférer la plus spécifique? Qu arriverait-il si les exemples ne sont pas tous consistants? S ils contiennent des erreurs, du bruit? Et si l espace des hypothèses H possède plus d une hypothèse maximalement spécifique h? La recherche dans le treillis devrait être différente pour permettre cette possibilité. Apprentissage de concepts 20
Algorithme d élimination des candidats : principales idées L algorithme qui trouve l hypothèse maximalement spécifique ne trouve en fait qu une seule hypothèse consistante avec les données d apprentissage. L algorithme d élimination des candidats (CEA) trouve TOUTES les hypothèses consistantes avec les données d apprentissage. CEA fonctionne sans explicitement énumérer toutes les hypothèses consistantes. Applications : o o Spectroscopie de masses en chimie Règles de contrôle pour recherche heuristique Apprentissage de concepts 21
Consistance vs Couverture Ensemble d apprentissage D h2 h1 Exemples positifs Exemples négatifs h1 couvre un ensemble d exemples différent de celui couvert par h2 h2 est consistant avec D h1 n est pas consistant avec D Apprentissage de concepts 22
Espace des versions VS Espace des hypothèses H Espace des versions : Sous-ensemble d hypothèses de H, consistant avec l ensemble d apprentissage D. Apprentissage de concepts 23
Exemple : champignons Ensemble d apprentissage D: ((red,small,round,humid,low,smooth), ((red,small,elongated,humid,low,smooth), ((gray,large,elongated,humid,low,rough), ((red,small,elongated,humid,high,rough), poisonous) poisonous) not-poisonous) poisonous) Le 1er algorithme ne trouve qu une parmi 6 hypothèses consistantes : G: (red,?,?,?,?,?) (?,small,?,?,?,?) (red,?,?,humid,?,?) (red,small,?,?,?,?) (?,small,?,humid,?,?) S: (red,small,?,humid,?,?) S: plus spécifique G: plus générale Apprentissage de concepts 24
Candidate-Elimination Algorithm (CEA) L algorithme CEA garde deux listes d hypothèses consistantes avec l ensemble d apprentissage : La liste des hypothèses les plus spécifiques S et, La liste des hypothèses les plus générales G Cela permet de dériver l espace des versions VS dans sa totalité G: (red,?,?,?,?,?)(?,small,?,?,?,?) VS S: (red,small,?,humid,?,?) Apprentissage de concepts 25
Candidate-Elimination Algorithm 1. Initialiser G comme l ensemble des hypothèses maximalement générales de H 2. Initialiser S comme l ensemble des hypothèses maximalement spécifiques de H 3. Pour chaque exemple d apprentissage X faire a) si X est positif : généraliser S si nécessaire b) si X est négatif : spécialiser G si nécessaire 4. Output {G,S} Apprentissage de concepts 26
Exemples positifs a) Si X est positif : Supprimer de G toute hypothèse inconsistante avec X Pour chaque hypothèse h de S non consistante avec X Supprimer h de S Ajouter à S toutes les généralisations minimales k de h consistantes avec X, t.q un membre de G soit plus général que k Supprimer de S toute hypothèse plus générale que n importe quelle hypothèse de S G: h Inconsistant S: Ajouter généralisations minimales Apprentissage de concepts 27
Exemples négatifs b) Si X est négatif : G: Supprimer de S toute hypothèse inconsistante avec X Pour chaque hypothèse g dans G non consistante avec X Supprimer g de G Ajouter à G toutes les spécialisations minimales h de g consistantes avec X t.q un membre de S est plus spécifique que h Supprimer de G toute hypothèse moins générale que n importe quelle hypothèse de G S: g Ajouter spécialisations minimales Inconsistant Apprentissage de concepts 28
Exemple Initialiser S et G : S: (0,0,0,0,0,0) G: (?,?,?,?,?,?) Les deux premiers exemples sont positifs : ((red,small,round,humid,low,smooth), ((red,small,elongated,humid,low,smooth), G: (?,?,?,?,?,?) poisonous) poisonous) spécialiser (red,small,?,humid,low,smooth) (red,small,round,humid,low,smooth) S: (0,0,0,0,0,0) généraliser Apprentissage de concepts 29
Exemple : un premier exemple négatif Le 3ème exemple est négatif : ((gray,large,elongated,humid,low,rough), not-poisonous) G: (?,?,?,?,?,?) spécialiser (red,?,?,?,?,?,?) (?,small,?,?,?,?) (?,?,?,?,?,smooth) S:(red,small,?,humid,low,smooth) généraliser Pourquoi (?,?,round,?,?,?) n est pas une spécialisation valide de G? Apprentissage de concepts 30
Exemple : un autre positif Le 4ème exemple est positif : ((red,small,elongated,humid,high,rough), poisonous) spécialiser G: (red,?,?,?,?,?,?) (?,small,?,?,?,?) (?,?,?,?,?,smooth) (red,small,?,humid,?,?) S:(red,small,?,humid,low,smooth) généraliser Apprentissage de concepts 31
VS : l espace des versions appris G: (red,?,?,?,?,?,?) (?,small,?,?,?,?) (red,?,?,humid,?,?) (red,small,?,?,?,?) (?,small,?,humid,?,?) S: (red,small,?,humid,?,?) Apprentissage de concepts 32
Questions Est-ce que l algorithme converge vers la bonne hypothèse? Il converge dans les conditions suivantes : Les exemples sont exempts d erreurs Le concept cible est inclus dans l espace des hypothèses H Qu arrive t-il s il existe des erreurs dans les exemples? La bonne hypothèse sera inconsistante et sera donc éliminée Si S et G convergent vers un espace vide, nous en concluons que le concept recherché est en dehors de l espace H. Apprentissage de concepts 33
Classifier de nouveaux exemples Si VS ne se réduit pas à une simple hypothèse et l on veut classifier une nouvelle instance? Supposons que toutes les hypothèses de S affirment que l instance est positive? Donc, nous sommes surs que toutes les hypothèses dans VS affirment que l instance est positive. Pourquoi? C est le même cas si l instance est classée négative par tous les membres de G. Apprentissage de concepts 34
En résumé CEA exploite la relation général-spécifique entre hypothèses pour trouver toutes les hypothèses consistantes avec l ensemble d apprentissage. L espace des versions contient toutes les hypothèses consistantes ; il est représenté par 2 listes : S et G. CEA n est pas robuste au bruit ; il suppose aussi que le concept cible est inclus dans l espace des hypothèses. Tout algorithme inductif nécessite que l on fixe certaines données à propos de l espace des hypothèses, sinon, il serait impossible d effectuer des prédictions. Apprentissage de concepts 35