Notions d’apprentissage automatique machine learning · 2005-09-20 · Notions d’apprentissage...

Preview:

Citation preview

Notions d’apprentissage automatique machine learning

Marie-Odile Cordier, le 11 septembre 2003,projet SACADEAUInspiré de V. Claveau + V. Masson + …

zQu’est-ce que l’apprentissage

y généralités

y apprentissage inductif

zUn exemple : apprentissage de chroniques (ECGs)

2

Une définition

z« Un programme est capable d’apprendre à partir d’une expérience E, p.r. à un ensemble T de taches et selon une mesure de performance P, si sa performance à effectuer T mesurée par P, s'améliore avec E. » T. Mitchell

zExemple : apprendre à jouer aux damesyT : jouer et gagner aux damesyP : pourcentage de victoires parmi les parties jouéesyE : « entraînement » avec un humain

3

Exemples de pb d’apprentissage

zApprentissage de compétence - apprendre à agiryapprendre a nager en observant un expert

zApprentissage de formes - apprendre à discriminerycontrôle qualité

zApprentissage de concept – apprendre à classerydétection de fraudes de carte de crédit

zApprentissage de fonction - apprendre a prédireyprévisions météo

4

Types d’apprentissage

z Supervisé vs. non-superviséysupervisé :⌧ les données sont composées d’exemples et de contre-exemples (entrées et sortie de la fonction / appartenance ou non à la classe)

⌧ besoin d’un expert pour caractériser les exemples (donner la valeur de la sortie – donner la classe de la donnée)

ynon supervisé :⌧ recherche de similarités dans les données : on ne connaît pas les classes

a priori

z Caractérisation explicite ou nonydescription de la classe vs. boîte noire

Une donnée (un exemple) est un couple <x,f(x)> ou x est la valeur d'entrée et f(x) la valeur de sortie (inconnue si apprentissage non-supervisé)

5

Apprentissage inductif (supervisé)

zBut : induire une règle générale à partir d’un ensemble d’observations

Exemples d’apprentissage

Système d’apprentissage

Description du concept

Classe (+ action)

Objet inconnu

6

Apprentissage et inférence

zSyllogismea) Tout homme est mortel

b) Or Socrate est un homme

c) Donc Socrate est mortel

mortel(X) :- homme(X).

homme(socrate).

mortel(socrate).

Inférence déductive : avec a et b on trouve c

Inférence abductive : avec a et c on trouve b

Inférence inductive : avec b et c on trouve a

7

Apprentissage inductifz Le système d’apprentissage (ou apprenant ou apprenti) cherche

à trouver une description du concept qui y« explique » les instances données en exemplesy« n’explique pas » les instances données en contre-exemples

Instances Concepts (espace des hypothèses)

8

PLI : programmation logique inductive

z Recherche du « meilleur » f parmi un ensemble (espace) d'hypothèses H

à apprentissage = pb de recherche dans un espace

Attrait majeur de la PLI:recours à un langage des hypothèses expressif (logique du premier ordre) et pratique (les exemples, les hypothèses possibles et l’expertise du domaine ont la même représentation)

Inconvénient :la richesse de ce langage implique une combinatoire forte —> il est important de décrire des biais d ’apprentissage qui limitent l’exploration de l ’ensemble des hypothèses possibles

9

Exemple jouet

On veut apprendre à découvrir quels animaux volent : f(x) = vole ou f(x) = vole_pas

zExemples positifs (e+) : canard, pie, chauve-souris

zExemples négatifs (e-) : chien, chat, pingouin

zattributs décrivant les e+ et e- : oiseau, a_des_ailes, mammifère, à_plumes, à_poils, gros, petit, poids, ...

10

Exemple jouet - version PLI

On veut apprendre un prédicat vole(X)z E+ :

vole(canard). vole(pie). vole(chauve-souris).

z E- :

vole(chien). vole(chat).

z Informations sur le « monde » (background knowledge) :

oiseau(canard). oiseau(pie).

mammifère(chauve-souris). mammifère(chien). mammifère(chat).

à Résultat de l’apprentissage :

vole(X) :- oiseau(X).

vole(chauve-souris).

11

Biais inductifs

z Recherche du « meilleur » f parmi un ensemble (espace) d'hypothèses H

à apprentissage = pb de recherche dans un espace

z Un biais est une connaissance rajoutée au système qui permet de choisir plus efficacement un meilleur f parmi H

z Biais restrictifs : « f doit avoir telles propriétés » => restreint H

z Biais de préférence : détermine un ordre sur l’ensemble des solutions possibles ~ heuristiques

12

Exemple jouet - Biais de langage

On veut apprendre un prédicat vole(X)

z E+ :

vole(canard). vole(pie). vole(chauve-souris).

z E- :

vole(chien). vole(chat).

z background knowledge :oiseau(canard). oiseau(pie).

mammifère(chauve-souris). mammifère(chien). mammifère(chat).a_des_ailes(X) :- oiseau(X).a_des_ailes(chauve_souris).

à Résultat de l’apprentissage :

vole(X) :- a_des_aile(X).

13

Généralisation vs spécialisation

zOrganiser l’espace des hypothèses de manière hiérarchique -> parcours intelligent

zh1 est plus générale que h2 si h1 « explique » les mêmes exemples (positifs ou négatifs) que h2 (plus éventuellement d’autres)ySi h ne couvre pas (n’explique pas) un exemple, on généralise h

zh1 est plus spécifique que h2 si h1 couvre un sous-ensemble des exemples couverts par h2ySi h couvre (explique) un contre-exemple, on spécialise h

14

Choisir la « meilleure » hypothèse

Si aucune hypothèse n’est complètement satisfaisante, on teste chaque hypothèse par rapport aux biais et aux exemples e+ et contre-exemples e- -> notion de score

zRefuser les hypothèses couvrant bcp d’e+ et très peu d’e- ?

zSi non, quels poids leur accorde-t’on ? -> notion de bruit

15

Exemple jouet - BruitOn veut apprendre un prédicat vole(X)

z E+ :

vole(canard). vole(pie). vole(chauve-souris).

z E- :

vole(chien). vole(chat).vole(pingouin).

z background knowledge :

oiseau(canard). oiseau(pie). oiseau(pingouin). mammifère(chauve-souris). mammifère(chien). mammifère(chat).a_des_ailes(X) :- oiseau(X).a_des_ailes(chauve_souris).

à Résultat de l’apprentissage :

vole(canard). vole(pie). vole(chauve-souris).

Juste mais pas intéressant !

16

Exemple jouet - BruitOn veut apprendre un prédicat vole(X)

z E+ :

vole(canard). vole(pie). vole(chauve-souris).

z E- :

vole(chien). vole(chat).vole(pingouin).

z background knowledge :

oiseau(canard). oiseau(pie). oiseau(pingouin).

mammifère(chauve-souris). mammifère(chien). mammifère(chat).a_des_ailes(X) :- oiseau(X).a_des_ailes(chauve_souris).

à Résultat de l’apprentissage avec bruit :

vole(X) :- a_des_ailes(X).

17

Choisir la meilleure hypothèse

Après la phase d’apprentissagezComment savoir que l’hypothèse trouvée se

comportera bien avec les nouvelles données ?zComment éviter l’overfitting (apprentissage

par cœur) ?zSéparer les données d’apprentissage en un

ensemble d’apprentissage et un ensemble de test -> cross-validation

18

PLI et Sacadeau

z Simuler par le modèle biophysique des scénarios temporels « représentatifs » des différentes classes de situations possibles

zAssocier aux résultats de ces simulations (dits signatures temporisées) un degré d’acceptabilité en termes de qualité des eauxzutiliser un système de PLI qui permette d’inférer

des corrélations de variables influant sur la qualité des eaux (et non une « simple classification » des différentes situations)

19

Utilisation de la PLI

zSignatures temporisées jugées « polluantes » : exemples (d ’observations)zSignatures temporisées jugées « non

polluantes » : contre-exempleszInférence d ’hypothèses (symboliques)

expliquant les observations: ici apprentissage de variables (caractéristiques de pratiques agricoles, de climats, etc) qui influent sur la qualité des eauxzNB: importance ici des données temporelles

20

Un mot sur l’apprentissage par coeur

zL’apprentissage par cœur peut servir comme technique d’apprentissagezOn parle de case-based learning, memory-

based learning, apprentissage par analogies, à base d’instances…zOn stocke tous les exemples et quand une

donnée inconnue arrive, on regarde de quel exemple connu elle est le + proche et on lui assigne la même valeur de sortie

21

Quelques techniques utilisées

zRéseaux de neurones

zAlgorithmes génétiques

zArbres de décision

zProgrammation logique inductive

zApprentissage bayesien

zApprentissage par renforcementzInférence grammaticalez...

22

23

Plan du cours

zQu’est-ce que l’apprentissage

zUn exemple : l’inférence grammaticale(source : François Coste)yReprésentationyEspace des hypothèses

Notions d’apprentissage automatique

24

Inférence grammaticale

Rappel théorie des langages

zmot : séquence de symboles s1s2…sp

zlangage : ensemble de mots {m1,m2,…}

zgrammaire : ensemble de règles de production des mots d’un langage

zexemples de séquences : langage naturel (syntaxe), séquences biologiques (ADN, ARN, protéines, …), ...

25

Inférence grammaticaleUne définition

zInférence grammaticale : apprentissage inductif d’un langage à partir d’un échantillon de mots du langage

Instances (mots) Concepts (grammaires)

26

Inférence grammaticaleReprésentation

zPlutôt que de décrire les exemples par des attributs, on s’intéresse à la séquencialité des instances

zQuelle représentation pour décrire les concepts sur les séquences ?

à Grammaires, machines à états finis (e.g. automates, transducteurs), arbres, expressions, HMM, ...

27

Inférence grammaticaleReprésentation

Rappel hiérarchie de Chomsky

classification des grammaires :

zà structure de phrase (type 0)

zcontextuelles (type 1)

zalgébriques (type 2)

zrégulières (automates) (type 3)

expressivité

28

Inférence grammaticaleReprésentation

Apprendre un langage régulier

Instances (mots) Concepts (automates)

{aaa,bba,baaa} inférence a

a

b

29

Plan du cours

zQu’est-ce que l’apprentissage

zUn exemple : l’inférence grammaticale(source : François Coste)yReprésentationyEspace des hypothèses

Notions d’apprentissage automatique

30

Inférence grammaticaleEspace des hypothèses

Organisation de l’espace des concepts :zen bas l’automate le + spécifique :

MCA (maximumcannonicalautomaton)

zEn haut l’automate le + général :

UA (universal Automaton)

a

a a a

a a

abb

b

a,b

31

Inférence grammaticaleEspace des hypothèses

Parcours de l’espace des concepts :

zopérateur de généralisation : fusion d'états ysi l’automate A explique x séquences,

l’automate résultant de la fusion de deux états de A explique au moins les x mêmes mots

zopérateur de spécialisation : fission d'étatsysi l’automate A explique x séquences,

l’automate résultant de la fission d’un état de A explique un sous-ensemble des x mêmes mots

32

Inférence grammaticaleEspace des hypothèses

Fusion d'étatszChoisir deux états de l’automate et les

fusionner zChoix basé sur critères heuristiques

a

a a a

a a

abb

b

33

Inférence grammaticaleEspace des hypothèses

Fusion d'étatszChoisir deux états de l’automate et les

fusionner zChoix basé sur critères heuristiques

a

a a a

a a

abb

b

34

Inférence grammaticaleEspace des hypothèses

Fusion d'étatszChoisir deux états de l’automate et les

fusionner zChoix basé sur critères heuristiques

a

a a a

a a

abb

b

35

Inférence grammaticaleEspace des hypothèses

Fusion d'étatszChoisir deux états de l’automate et les

fusionner zChoix basé sur critères heuristiques

a

a a a

a

aabb

b

36

Inférence grammaticaleEspace des hypothèses

Espace de recherchezC’est un treillis d’automates

UA

MCA

En rouge : parcours par fusion

z Pb : comment éviter la sur-généralisation (i.e. éviter qu’on monte trop haut dans le treillis)

37

Inférence grammaticaleEspace des hypothèses

Limiter la généralisation => ajout d’un critère supplémentaire :

zLimitation à une sous-classe d’automate

zCritère statistique d’arrêt des fusions (les états restants sont trop dissemblables)

zUtilisation d’exemples négatifs : arrêt dès qu’un e- est accepté par l ’automate

38

Inférence grammaticaleEspace des hypothèses

Limiter la généralisation avec des e- :

MCA

UA

Border set : ensemble des automates les plus généraux n’acceptant pas d’e-

e- acceptés

à Rasoir d’Occam : recherche de l’automate minimale dans le border set

39

Inférence grammaticaleExemple

Promoteurs de B. Subtilis

zdonnées initiales :

y1 248 616 états, 131 e+, 55 062 e-

zsolution :

y95 états, 347 transitions, 8h de calcul

40

41

Questions IA1

Recommended