Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7...

35
Apprentissage de concepts (Référence : Tom Mitchell, Machine Learning, McGraw Hill, 1997)

Transcript of Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7...

Page 1: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

Apprentissage de concepts(Référence : Tom Mitchell, Machine Learning, McGraw Hill, 1997)

Page 2: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 3: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 4: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 5: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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}

Page 6: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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).

Page 7: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 8: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.

Page 9: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 10: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 11: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 12: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.

Page 13: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.

Page 14: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.

Page 15: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 16: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 17: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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)

Page 18: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.

Page 19: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 20: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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é.

Page 21: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 22: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 23: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.

Page 24: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 25: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 26: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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}

Page 27: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 28: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 29: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 30: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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

Page 31: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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,?,?)

Page 32: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

Apprentissage de concepts 32

VS : l’espace des versions appris

G: (red,?,?,?,?,?,?) (?,small,?,?,?,?)

S: (red,small,?,humid,?,?)

(red,?,?,humid,?,?) (red,small,?,?,?,?) (?,small,?,humid,?,?)

Page 33: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.

Page 34: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.

Page 35: Apprentissage de concepts - UQAMlounis_h/dic938G-hiv2011/dic... · Apprentissage de concepts 7 Exemples d’apprentissage D : ensemble des exemples d’apprentissage, D : ensemble

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.