Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7...
Transcript of Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7...
Apprentissage de concepts(Référence : Tom Mitchell, Machine Learning, McGraw Hill, 1997)
Apprentissage de concepts 2
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 3
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 4
Exemple : Champignons
Tâche : Prédire si des champignons sont vénéneuxPerformance : Taux d’exactitude de la classificationExpé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éneuxReprésentation de la connaissance à apprendre :
Conjonction de valeurs d’attributs.Mécanisme d’apprentissage :
Élimination des candidats
Apprentissage de concepts 5
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 6
Espace des entrées et 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.
XNous ne disposons que d’un petit sous-ensemble
Y = {0,1}
X : l’espace de tous les exemples possibles (espace des entrées). Y: l’espace des classes (espace des sorties).
Apprentissage de concepts 7
Exemples d’apprentissageD : 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), poisonous)((red,small,elongated,humid,low,smooth), poisonous)((gray,large,elongated,humid,low,rough), not-poisonous)((red,small,elongated,humid,high,rough), poisonous)
Instances de l’espace des sorties
Instances de l’espace des entrées
Apprentissage de concepts 8
Représenter une hypothèse
Les hypothèses suivantes : (?,?,?,?,?,?) : tous les champignons sont vénéneux (0,0,0,0,0,0) : aucun champignon n’est vénéneux
Symboles spéciaux : ? n’importe quelle valeur est acceptable 0 aucune valeur n’est acceptable
Une hypothèse h est une fonction de X vers Yh: X Y
Espace des conjonctions.
Apprentissage de concepts 9
Espace d’hypothèses
L’espace de toutes les hypothèses est représenté par 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.
X
h
Apprentissage de concepts 10
Supposition 1
Exploration de l’espace de toutes les conjonctions.
Nous supposons que le concept cible appartient àcet espace.
Concept cible c
H
Apprentissage de concepts 11
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 12
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 13
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 14
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 à traversl’espace des hypothèses H. Elle est réflexive, antisymétrique et transitive.
Apprentissage de concepts 15
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
h3 h4
h2
h5 h6
h7 h8
Apprentissage de concepts 16
Trouver une hypothèse maximalement spécifiqueAlgorithme 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érale3. Retourner l’hypothèse h
Apprentissage de concepts 17
Exemple
Exécutons l’algorithme précédent sur ces exemples :
((red,small,round,humid,low,smooth), poisonous)((red,small,elongated,humid,low,smooth), poisonous)((gray,large,elongated,humid,low,rough), not-poisonous)((red,small,elongated,humid,high,rough), 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 18
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 19
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
h3 h4
h2
h5 h6
h7 h8
Apprentissage de concepts 20
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 21
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 Spectroscopie de masses en chimie
o Règles de contrôle pour recherche heuristique
Apprentissage de concepts 22
Consistance vs Couverture
h1
h2
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
Exemples positifs
Exemples négatifs
Ensemble d’apprentissage D
Apprentissage de concepts 23
Espace des versions VS
Espace des hypothèses H
Espace des versions : Sous-ensemble d’hypothèses deH, consistant avec l’ensemble d’apprentissage D.
Apprentissage de concepts 24
Exemple : champignons
Ensemble d’apprentissage D:((red,small,round,humid,low,smooth), poisonous)((red,small,elongated,humid,low,smooth), poisonous)((gray,large,elongated,humid,low,rough), not-poisonous)((red,small,elongated,humid,high,rough), poisonous)
Le 1er algorithme ne trouve qu’une parmi 6 hypothèses consistantes :
(red,small,?,humid,?,?)
(?,small,?,humid,?,?)(red,?,?,humid,?,?) (red,small,?,?,?,?)
(red,?,?,?,?,?) (?,small,?,?,?,?)G:
S:S: plus spécifiqueG: plus générale
Apprentissage de concepts 25
Candidate-Elimination Algorithm (CEA)
(red,small,?,humid,?,?)
(red,?,?,?,?,?)(?,small,?,?,?,?)G:
S:
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é
VS
Apprentissage de concepts 26
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 fairea) si X est positif : généraliser S si nécessaireb) si X est négatif : spécialiser G si nécessaire
4. Output {G,S}
Apprentissage de concepts 27
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:
S:
hInconsistant
Ajouter généralisationsminimales
Apprentissage de concepts 28
Exemples négatifs
b) Si X est négatif : 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
G:
S: gInconsistant
Ajouter spécialisationsminimales
Apprentissage de concepts 29
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), poisonous)((red,small,elongated,humid,low,smooth), poisonous)
S: (0,0,0,0,0,0)
(red,small,round,humid,low,smooth)
(red,small,?,humid,low,smooth)
G: (?,?,?,?,?,?)
généraliser
spécialiser
Apprentissage de concepts 30
Exemple : un premier exemple négatif
Le 3ème exemple est négatif :((gray,large,elongated,humid,low,rough), not-poisonous)
S:(red,small,?,humid,low,smooth)
G: (?,?,?,?,?,?)
(red,?,?,?,?,?,?) (?,small,?,?,?,?) (?,?,?,?,?,smooth)
Pourquoi (?,?,round,?,?,?) n’est pas une spécialisation valide de G ?
généraliser
spécialiser
Apprentissage de concepts 31
Exemple : un autre positif
Le 4ème exemple est positif :((red,small,elongated,humid,high,rough), poisonous)
S:(red,small,?,humid,low,smooth)généraliser
spécialiserG: (red,?,?,?,?,?,?) (?,small,?,?,?,?) (?,?,?,?,?,smooth)
(red,small,?,humid,?,?)
Apprentissage de concepts 32
VS : l’espace des versions appris
G: (red,?,?,?,?,?,?) (?,small,?,?,?,?)
S: (red,small,?,humid,?,?)
(red,?,?,humid,?,?) (red,small,?,?,?,?) (?,small,?,humid,?,?)
Apprentissage de concepts 33
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 34
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 35
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.