Académique Documents
Professionnel Documents
Culture Documents
Plan
! Apprentissage ! Induction ! Rgles d'infrence inductive ! Apprentissage de concepts ! Espace de versions ! Arbres de dcision ! ID3 ! Analogie
Apprentissage
! F.-Y. Villemin !
http://deptinfo.cnam.fr
2!
Apprentissage
Trois grandes approches dapprentissage (Luger)
! Symbolique : Logique, Rseaux Baysiens*, Chanes caches de Markov*, Processus de dcision de Markov* ! Connexionniste* : rseaux de neurones ! Gntique* : algorithmes gntiques, programmation gntique Il peut y avoir dautres classification (Russel & Norvig) ! Supervis : Par un humain Par trace d explication* ! Non supervis* ! Par renforcement* : Signal venant de l environnement
Apprentissage
Deux grandes catgories dapprentissage : ! Par induction ! Par analogie Apprentissage symbolique supervis : ! Induction de concept simple ! Espace de versions ! ID3 (arbres de dcision) ! Apprentissage par explication* ! Apprentissage par dmonstration* Apprentissage par renforcement (R. Sutton & A. Barto "Reinforcement Learning: An introduction" MIT Press, 1998) : ! Apprendre une stratgie pour maximiser une valeur numrique (rcompense) ! Formalis par les processus de dcision de Markov
F.-Y. Villemin 2011! 4!
Apprentissage
Logique :
Concepts
Concept # reprsentation mentale abstraite qui nous permet de catgoriser des objets de l'environnement ! Abstrait : ne reprsente pas d'objet spcifique concret ! Unit fondamentale de la connaissance, joue un rle central dans la cognition Catgorie # regroupement concret d'objets reprsentant le concept Un concept permet de catgoriser Apprentissage d'un concept C partir d'exemples (# instances xi du concept) :
!x1, ,xn!
F.-Y. Villemin 2011! 5! F.-Y. Villemin 2011!
Apprentissage!
chantillon d apprentissage X
hypothse
6!
H ! C!
Induction
Processus de drivation de sentences plus gnrales partir de sentences tablies pour certains cas spcifiques, par application d'un ensemble de rgles d'infrence inductive ! Thorie du domaine Th! ! Ensemble F = {f1, f2, , fn} de faits gnraliser $ gnralisations consistantes G ! ! ! ! !Th | f (f % F) !Th | G !Th & F | G !Th & {G} |= f (f % F) faits non redondants conclusion inconnue consistance gnralisation
$!Condition Th & F |= G en gnral pas satisfaite #!gnralisations G pas ncessairement vraies dans tous les modles de Th & F!
F.-Y. Villemin 2011! 7!
8!
P ! S! |< extension de disjonction (3) ! P ) Q ! S! ! P (a) ! S! |< remplacement de constantes par des variables (4) !!P (a/x) ! S! !P (x,, x,) ! S |< !P (x,, y,) ! S ajout de variables (5)
9!
10!
Apprentissage de concepts
Exemple classique (Patrick Winston, 1975)
! Apprentissage (supervis) de concepts dans un
Apprentissage de concepts
Exemples d'arches :
monde de blocs ! On souhaite apprendre le concept d'"arche" partir d'exemples et contre-exemples ! Le programme ajoute la base des concepts celui d'"arche" ! L'ordre des exemples dtermin par le professeur
11!
12!
Apprentissage de concepts
L'arche A et sa description structurelle :
A
est-compos-de est-compos-de
u est-s r
Apprentissage de concepts
L'arche E et sa description structurelle :
E
B! C!
est-compos-de
C
est-un
F ! G! H !
est-compos-de
u est-s r
est-compos-de est-compos-de
F Pyramide
est-un
D !
Bloc
-gauche-de -droite-de
D
est-un
H
est-un
Bloc
au-contact
Bloc
Bloc
Bloc
13!
14!
Apprentissage de concepts
Heuristiques utilises par P. Winston : !Arc obligatoire !Arc interdit !Arc supprim !Monte d un arbre !Extension des domaines de variables !Fermeture d intervalles!
Apprentissage de concepts
15!
e % Exemple /* 1er exemple positif*/! H:= *; gnraliser(H, e); /* Hypothse H */! !Pour chaque e % Exemple! Si e = "contre-exemple" alors spcialiser(H, e);! Si e = "exemple" alors gnraliser(H, e);! ! Procdure gnraliser(H, e)! Comparer Exemple e Hypothse H;! Pour chaque d diffrence entre e et H :! Si e a un lien sur des classes diffrentes alors! Si les classes font partie de la taxinomie alors utiliser l'heuristique "monte d un arbre";! If les classes forment ensemble exhaustif alors utiliser l'heuristique "lien supprim";! !sinon alors utiliser l'heuristique "extension des domaines de variables";! Si e a un lien manquant dans H alors utiliser l'heuristique "lien supprim";! Si e a des valeurs diffrentes numriques alors utiliser l'heuristique "fermeture d'intervalles"; !! ! Procdure spcialiser(H, e)! !Comparer Exemple e Hypothse H;! !Trouver d diffrence unique la "plus importante" entre e et H;! Si d n'est pas identifiable alors ignorer e;! Si e a un lien manquant dans H alors utiliser l'heuristique "lien interdit";! Si H a un lien manquant dans e alors utiliser l'heuristique "lien obligatoire";!
F.-Y. Villemin 2011! 16!
Apprentissage de concepts
Concept d'arche appris :
Arche
est-compos-de est-compos-de
Espace de versions
Un espace de versions, du T. Mitchell (1978) (versions space) est l'ensemble des gnralisations et spcialisations des exemples # lensemble de concepts consistants avec les exemples Les algorithmes dapprentissage de type "espace de versions" consistent rduire lensemble des versions au fur et mesure que des exemples sont fournis Trois types dalgorithmes : !Du spcifique au gnral !Du gnral au spcifique !Dans les deux sens : limination de candidats
17! F.-Y. Villemin 2011! 18!
est-compos-de
ur est-s
X
est-un
Bloc ) Pyramide
-gauche-de -droite-de
Z
est-un
Bloc
F.-Y. Villemin 2011!
au-contact
Bloc
Espace de versions
Caractristiques des algorithmes "espace de versions" : ! Langage de reprsentation des concepts ! Entres : " Exemples (instances) positifs dun concept " Exemples (instances) ngatifs dun concept " Oprations de gnralisation " Oprations de spcialisation ! Principe : " Recherche heuristique incrmentale dans lespace de versions du concept qui gnralise le mieux les exemples ! Sortie : " Dfinition du concept qui englobe tous les exemples positifs et exclut tous les exemples ngatifs
Espace de versions
Un problme de cartes : Le but de ce problme est d apprendre un concept C de main dans un jeu de carte (poker, annonces au bridge...) partir d un ensemble d exemples E et de contre-exemples N de ce concept Chaque concept de main est caractris par un certain nombre de cartes (5 au poker, 13 au bridge...) Un espace de versions pour un exemple est un treillis dont le maximum est le concept indfini "ANY" est le minimum est l exemple et les nuds intermdiaire sont des concepts plus gnraux que ceux qui leur sont infrieurs dans le treillis et moins gnraux que ceux qui leur sont suprieurs dans le treillis
F.-Y. Villemin 2011! 20!
19!
Espace de versions
Le langage utilis pour dcrire les concepts est : ! n pour "noir" (avec p pour "pique" et t pour "trfle") ! r pour "rouge" (avec c pour cur et d pour "carreau") ! f pour une figure (avec a pour "as", k pour "roi", q pour "dame", v pour "valet") ! # pour un nombre (2 10) D autre part dsigne "rien" Une carte est reprsente par une paire (valeur, couleur) avec : ! "valeur" : # soit un nombre # soit # # soit une figure (a, k, q, v) # soit f # soit ! "couleur" : # soit c # soit d # soit t # soit p # soit r # soit n # soit
F.-Y. Villemin 2011! 21!
Espace de versions
! "ANY" est quivalent (, ) ! "roi de cur" s crit (k, c) ! "roi" s crit (k, ) ! "cur" s crit (, c) Exemple "roi de cur"et sa reprsentation trs partielle :
ANY
!
(, )
ROI
CUR (K, )
(, C)
ROI de CUR
F.-Y. Villemin 2011!
(K, C)
22!
Espace de versions
Exemples = {4 de cur, 7 de cur, 5 de carreau}
(, ) (#, ) (#, r) (4, ) (4, r) (4, c) (#, c) (, c) (, r)
Espace de versions
! E1=C
(#, ) (#, r) (, d) (4, ) (4, r) (4, c) (#, c) (, c) (, ) (, )
!
(, r)
C=C+E2
(, ) (#, ) (#, r) (, c) (, r)
C=C+E3
(, ) (#, ) (#, r) (, r)
C=C-N1
(, r)
C=C-N2
(, r)
(#, r)!
(#, r)
(#, d)
(#, c)
Le concept appris est une carte de couleur rouge avec un nombre ou {#, r}
(f, ) (f, r)
(, r) (, c) (f, c)
24!
Espace de versions
Algorithme utilis (du spcifique au gnral) :
e % Exemple /* e 1er exemple positif*/! S:= {gnraliser(e)}; /* S Espace de versions */! Pour chaque e % Exemple! Si e = "exemple" alors ! ! !S':= {gnraliser(e)};! ! !S := S , S' is! Sinon /* e est un contre-exemple */ ! ! !S':= {gnraliser(e)};! !S := S - S' is! Fait
Arbres de dcision
Un arbre de dcision est une structure souvent utilise pour modliser le raisonnement d'experts humains On considre une collection d'objets de mme classe, on cherche obtenir la dfinition de cette classe en fonction des proprits des objets (des valeurs des attributs de cette classe) Dans un arbre de dcision : ! Chaque nud intermdiaire correspond une question sur une proprit de l'objet (valeur d'un attribut) ! Chaque lien correspond une valeur de l'attribut ! Chaque nud terminal (feuille) correspond une classe (une collection d'objets de mme nature) Plusieurs feuilles diffrentes peuvent correspondre la mme classe Un chemin de la racine un nud correspond une srie de questions et rponses Les questions correspondent aux attributs et les rponses leurs valeurs
F.-Y. Villemin 2011! 26!
25!
Arbre de dcision
Algorithmes d'induction dun arbre de dcision : Entre :
! Ensemble dexemples positifs dun concept (base de donnes) ! Liste des proprits (attributs)
Arbres de dcision :
x=1!
x=0!
Sortie :
! Arbre de dcision
Caractristiques :
Y=0 ! C 1! y=1 ! C 2! y=2 ! z=0 ! z=1 ! C! 3
L'algorithme ID3
L algorithme ID3 : ! a t dvelopp par J. Ross Quinlan (1975) ! construit un arbre de dcision du haut vers le bas ! utilise comme heuristique le principe du "rasoir d'Occam*" pour d'viter de faire des suppositions inutiles ! minimise le nombre de "questions" poser (l'arbre de dcision le plus simple) !se compose de deux phases principales : #l'apprentissage #la phase de tests
* "ne rien supposer qui soit pas ncessaire" "It is vain to do with more what can be done with less... Entities should not be multiplied beyond necessity" William of Occam, en 1324
F.-Y. Villemin 2011! 29!
L'algorithme ID3
En phase d'apprentissage, l'algorithme consiste trouver, partir d'exemples, une gnralisation Chaque exemple est vu comme une instance d'une classe Cette classe divise les exemples en n catgories en fonction des valeurs des attributs La racine de l'arbre de dcision contient tous les exemples Les nuds sont tiquets par les attributs Les arcs sont tiquets par les diffrentes valeurs de l'attribut Si tous les exemples correspondant une branche sont de la mme catgorie, on cre la feuille reprsentant cette catgorie classe, sinon les attributs sont nouveau tests et un nouveau nud est ajout Les exemples composs des mmes attributs forment une mme branche qui correspond la catgorie et forme une rgle de dcision
F.-Y. Villemin 2011! 30!
L'algorithme ID3
Le principe d'ID3 est : 1. Si tous les lments du nud sont dans la mme classe, alors quitter 2. Autrement, faire les tapes suivantes : 2.1. Choisir un attribut et l'assigner au nud 2.2. Partitionner les exemples dans des sous-ensembles selon les valeurs de cet attribut 2.3. Crer des nouveaux nuds pour chaque sousensemble non-vide de la partition 2.4. La liste de nouveaux nuds devient les enfants du nud 2.5. Appliquer la procdure rcursivement sur les nouveaux nuds
L'algorithme ID3
ID3 construit l'arbre de dcision partir d'un ensemble d'exemples # un ensemble d'objets dcrits par leurs attributs et leur classe
Fonction ID3 (exemples attributs) ! DEBUT ! SI examples est vide ALORS RETOURNER nil ! ! !/* Il n'y a pas d'objet dans cette "sous-classification"': nud terminal "spcial" */ ! SINON SI tous les objets de exemples font partie de la mme classe! ALORS RETOURNER un nud contenant tous les objets des exemples ! ! !/* Nud terminal */ ! ! SINON /* Nud intermdiaire */! !A <- attribut de attributs minimisant l'entropie de la ! ! !classification ! !vals <- liste des valeurs possibles pour A ! POUR i DANS vals FAIRE /* Partitionnement: */ ! ! ! part[i] <- objets de exemples qui ont i comme valeur ! !pour A ! ! !/* Calcul des nuds fils: */ ! ! ! fils[i] <- ID3 (part[i], A) ! FINPOUR ! RETOURNER un nud avec fils comme successeurs ! !FINSI !
F.-Y. Villemin 2011! 32!
31!
L'algorithme ID3
L'entropie est la mesure de l'incertitude sur la classification d'un objet ID3 utilise l'entropie pour calculer l'arbre de dcision le plus petit, ne conservant alors que les informations absolument ncessaires pour classer un objet Pour partitionner les exemples ID3 choisit l'attribut qui donne la plus petite l'entropie de classification est aprs L'entropie H(C|A), ou l'entropie de la classification aprs avoir choisi de partitionner les exemples suivant la valeur de l'attribut A, est (1) :
M
L'algorithme ID3
ID3 n'est pas un algorithme squentiel exemple aprs exemple Pour obtenir un arbre de dcision concis et suffisant, ID3 choisit les attributs d'clatement pour aboutir, par le chemin le plus court et ncessaire, au plus grand nombre d'exemples de la mme classe ID3 recherche le meilleur attribut (celui qui maximise le gain d'information) : (1) recherche de l'entropie de la collection d'exemples traiter
I(P, N) = P P+N log2 P P+N N P+N log2 N P+N
H(C | A) =
o aj dsigne une valeur de l'attribut A, M le nombre total de valeurs pour l'attribut A et p(aj) la probabilit que la valeur de l'attribut A vaut aj! En outre (2) :
M
o :
! H(C | aj) = -
p(ci | aj)
(2) recherche du gain d'information pour chaque valeur vi de l'attribut A calcul de E(A)
E(A) =
F.-Y. Villemin 2011!
o N est le nombre de classes diffrentes, p(ci|aj) la probabilit conditionnelle qu'un objet soit de la classe ci tant donn que l'attribut A vaut aj
F.-Y. Villemin 2011!
vi
P1 + N 1 P+N
I(P 1 , N 1 )
34!
i=1
33!
L'algorithme ID3
(3) calcul du gain gagn pour chaque attribut gain (A) = I(P, N) E(A) (4) choix de l'attribut : celui qui maximise le gain L'attribut choisi constitue un nud et chacune de ses valeurs constitue une branche identifie par la valeur et aboutit un ensemble d'exemples Si les exemples de cette sous-population sont tous de la mme classe, alors la branche est termine La feuille qui en dcoule indique la valeur de la classe Sinon, il faudra choisir nouveau l'attribut qui maximise le gain d'information sur les exemples restant le nud. Le chemin allant de la racine jusqu' une feuille reprsente une rgle Chaque chemin de cet arbre est de longueur variable et aboutit obligatoirement une et une seule classe
F.-Y. Villemin 2011! 35!
L'algorithme ID3
En phase de test : ! Un arbre de dcision a t produit partir d'exemples d'apprentissage ! Un ensemble d'exemples dont la classe est connu (en non utiliss pour l'apprentissage La classe trouve dans l'arbre est compare celle de l'exemple (de test) Une diffrence entre les valeurs constitue une erreur D'autres erreurs doivent tre prises en compte : ! une valeur d'un attribut dans l'exemple n'existe pas dans l'arbre ! un attribut prsent dans l'exemple n'existe pas dans l'arbre alors que ce nouvel attribut est ncessaire pour distinguer deux classes Ces erreurs se cumulent pour constituer le taux d'erreur
F.-Y. Villemin 2011! 36!
Ensemble d'apprentissage :!
Temps
soleil soleil couvert pluie pluie pluie couvert soleil soleil pluie soleil couvert couvert pluie
Humidit
85 90 78 96 80 70 65 95 70 80 70 90 75 80
Vent
faux vrai faux faux faux vrai vrai faux faux faux vrai vrai faux vrai
Golf
je ne joue pas je ne joue pas je joue je joue je joue je ne joue pas je joue je ne joue pas je joue je joue je joue je joue je joue je ne joue pas
38!
37!
De mme :
Gain(temprature) = 0.029 bits Gain(humidit) = 0.151 bits Gain(vent) = 0.048 bits
I(P, N) =
9 9 log 2 14 14
5 5 log 2 14 14
= 0.940 bits
Pour l'attribut temps : valeur1=soleil, valeur2=couvert, valeur3=pluie 2 en P et 3 en N donc : P1 = 2 N1 = 3 et I(P1, N1) = 0.971 De mme : P2 = 4 N2 = 0 et I(P2, N2) = 0 P3 = 3 N3 = 2 et I(P3, N3) = 0.971 Donc : 5 4 5
E(temps) = 14 I(P 1 , N 1 ) + 14 I(P 1 , N 1 ) + 14 I(P 1 , N 1 )
F.-Y. Villemin 2011! 39!
L'attribut temps est choisi Puis les objets sont diviss suivant leur valeur de temps, et le processus est recommenc pour chacun des 3 ensembles d'exemples
F.-Y. Villemin 2011! 40!
Analogie
Processus de drivation de sentences caractrisant une situation inconnue partir de sentences caractrisant une situation connue et similaire Situation peut se rfrer un objet, une classe d'objets, un problme pos, une rgle, une procdure de rsolution, une action, un plan, un comportement
couvert joue
Similarit peut porter sur la structure, des attributs physiques des liens conceptuels, des relations de causalit, des objectifs ou justifications, des historiques de rsolution ! situation inconnue $ cible T! ! situation similaire connue et analogue $ source S ! une thorie disponible du domaine Th ! un prdicat P # proprits similaires de S et de T pertinentes pour la conclusion ! un prdicat Q # proprits connues de S dont transfert la cible T forme la conclusion
41! F.-Y. Villemin 2011! 42!
Analogie
Rgle d'infrence analogique : Th, P [S] ( Q [S], P[T]! |< ! ! !Q[T]! Proprits de l'analogie :
Th Th Th Th | P[S] ( Q[S] source non redondante & {P[T]} | Q[T] cible inconnue & {P[S] ( Q[S] ( P[T]} | Q[T] consistance & {Q[T]} |= Sol ! conclusion utile
Analogie
!analogie standard!
La condition Th & {P[S] ( Q[S] ( P[T]}|= Q[T] n'est pas en gnral satisfaite $!l'analogie comme l'induction n'est pas ncessairement adquate
Problmes : ! un problme de reconnaissance : $!quel analogue source S considrer, sur base de similarits P dtecter? ! un problme de mise en correspondance : $!quelle proprits Q mettre en correspondance et transposer de l'analogue source vers l'analogue cible? ! un problme de validation : $!comment valuer et le cas chant rviser la conclusion analogique Q[T] de manire garantir que celle-ci soit correcte? Pour rendre rgle d'infrence analogique adquate [Davies & Russel 87] : $!notion de dpendance fonctionnelle en thorie des bases de donnes
$ ajout d'axiomes thorie Th (axiome de dtermination) :
44!
Analogy
T. Evans (1968) Si A:!! alors B:!!
Analogy
Une proposition contient un certain nombre de figures caractrises : ! par une forme (les formes sont stables) : rectangle, carr, losange, triangle, disque ... ! une taille: grande, moyenne, petite ! une couleur: noire, blanche ! une position (celle de son centre): * est en haut au centre
Si C:
alors
*
6
milieu
bas
5 4
45!
46!
Sp
Adaptation du cas
S1
Rfrences :
Aamodt, A. et E. Plaza, "Case-Based Reasoning : Foundational Issues. Methodological variations ans system", AI Communications 7 (1), pp36 59, 1994. Coyle, L., P. Cunningham, et C. Hayes, "Representing Cases for CBR in XML", Proceedings of 7th United Kingdom Case-Based Reasoning, Workshop, Peterhouse, Cambridge, 2002. Kolodner, J., "Case-Based Reasoning", Morgan Kaufmann, 1993.
F.-Y. Villemin 2011! 47! F.-Y. Villemin 2011!
Sp
Sn
C1
Cp
Cn
Cas-solutions gnraliss
Abstraction du cas
48!