Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique :...

24
1 Cornuéjols 1-Introduction à l’Apprentissage Artificiel 04/10/12 Antoine Cornuéjols AgroParisTech [email protected] http://www.lri.fr/~antoine/ 2 Cornuéjols 1-Introduction à l’Apprentissage Artificiel 04/10/12 3 Cornuéjols 1-Introduction à l’Apprentissage Artificiel 04/10/12 Le cours 8 Cours : 4 AAA + 4 FD 2 DM + Quizz + 1 Contrôle sur table (2h) Documents ! Le livre "L'apprentissage artificiel. Concepts et algorithmes" A. Cornuéjols & L. Miclet. Eyrolles. 2 ème éd. 2010. ! Les transparents + Informations + devoirs + projets sur : http://www.lri.fr/~antoine/Courses/Master-ISI/Cours- ISI-3.html 4 Cornuéjols 1-Introduction à l’Apprentissage Artificiel 04/10/12 « How can we build computer systems that automatically improve with experience, and what are the fundamental laws that govern all learning processes ? » Tom Mitchell, 2006 !"# %&'#"&# ( %)" )*+#,

Transcript of Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique :...

Page 1: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

1!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Antoine Cornuéjols !

AgroParisTech!

[email protected]!

http://www.lri.fr/~antoine/!

2!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

3!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Le cours

•  8 Cours : 4 AAA + 4 FD

•  2 DM + Quizz + 1 Contrôle sur table (2h)

•  Documents

!  Le livre "L'apprentissage artificiel. Concepts et algorithmes" A. Cornuéjols & L. Miclet. Eyrolles. 2ème éd. 2010.

!  Les transparents + Informations + devoirs +

projets sur : http://www.lri.fr/~antoine/Courses/Master-ISI/Cours-

ISI-3.html

4!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

« How can we build computer systems that

automatically improve with experience,

and

what are the fundamental laws that

govern all learning processes? »

Tom Mitchell, 2006

!"#$%&'#"&#$($$%)"$)*+#,$

Page 2: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

5!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Types d’apprentissages

6!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

L’apprentissage artificiel

•  Science de la modélisation

!  Recherche des régularités sous-jacentes aux données d’observation

!  Cherche un modèle du monde permettant la décision et la prédiction

•  Science de l’adaptation!

!  Apprentissage par renforcement!

!  Évolution simulée!

7!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Qu’est-ce que l’apprentissage ?

Meilleure compréhension du monde

à partir d’observations

en vue de prédiction

8!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Qu’est-ce que l’apprentissage ?

Changements dans un système lui permettant de

réaliser le même type de tâche

avec une meilleure performance

à l’avenir

Page 3: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

9!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Recherche de régularités

10!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Modélisation

•  Discrimination

!  Identification de sous-marins vs. bruits naturels

!  Identification de locuteur / de signature

!  Reconnaissance de l'écriture manuscrite, de la parole

!  Code postal

!  …

•  Catégorisation

!  SKY SURVEY

11!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Adaptation

•  Association

•  Imitation

•  Apprentissage de comportement :

!  Apprendre à marcher (insectoïdes de Brooks)

!  Apprendre à se comporter sur une planète

•  Apprendre à mieux jouer

!  S'adapter à l'adversaire

!  Ne pas répéter ses fautes

!  Apprendre à jouer en équipe –  Équipes de robots

12!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1. 1- Quel objectif ?

Page 4: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

13!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Données -> régularités pour prédire

•  Échantillon de données (training set)

•  Apprentissage de règle de prédiction (decision rule, hypothesis)

14!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Données -> régularités pour prédire

15!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1. 1- Quel objectif ? 16!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1. 1- Quel objectif ?

Aide à la « découverte scientifique »

Page 5: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

17!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Amélioration de performances

18!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustrations : Grand DARPA challenge (2005)

19!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustrations : Grand DARPA challenge (2005) 20!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustrations : Grand DARPA challenge (2005)

"  150 mile off-road robot race across the Mojave desert

"  Natural and manmade hazards "  No driver, no remote control "  No dynamic passing "  Fastest vehicle wins the race

(and 2 million dollar prize)

Page 6: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

21!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustrations : Grand DARPA challenge (2005) 22!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1. 1- Quel objectif ?

•  Systèmes autonomes avec apprentissage

23!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Objectifs fondamentaux d’une science de l’apprentissage

Mieux comprendre l'apprentissage :

•  ne pas avoir à programmer

!  Programmation par la démonstration

!  Programmation par l'exemple (e.g. l'EBL)

!  Programmation par échantillon d'apprentissage : induction

•  mieux enseigner

•  savoir ce que toute intelligence pourrait apprendre :

vers une théorie générale de l'apprentissage

24!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Concepts de base

Page 7: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

25!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Induction supervisée 26!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Les données : organisation et types

Identifieur Genre Age Niveau études Marié ? Nb enfants Revenu Profession A prospecter ?

I_21 M 43 Bac+5 Oui 3 55 000 Architecte OUI

I_34 M 25 Bac+2 Non 0 21 000 Infirmier NON

I_38 F 34 Bac+8 Oui 2 35 000 Chercheuse OUI

I_39 F 67 Bac Oui 5 20 000 Retraitée NON

I_58 F 56 CAP Oui 4 27 000 Ouvrière NON

I_73 M 40 Bac+3 Non 2 31 000 Commercial OUI

I_81 F 51 Bac+5 Oui 3 75 000 Chef d’entreprise

OUI

Exemple!(example, instance)!

Descripteur!Attribut!(feature)!

Étiquette!(label)!

27!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Les données : organisation et types

Identifieur Genre Age Niveau études Marié ? Nb enfants Revenu Profession A prospecter ?

I_21 M 43 Bac+5 Oui 3 55 000 Architecte OUI

I_34 M 25 Bac+2 Non 0 21 000 Infirmier NON

I_38 F 34 Bac+8 Oui 2 35 000 Chercheuse OUI

I_39 F 67 Bac Oui 5 20 000 Retraitée NON

I_58 F 56 CAP Oui 4 27 000 Ouvrière NON

I_73 M 40 Bac+3 Non 2 31 000 Commercial OUI

I_81 F 51 Bac+5 Oui 3 75 000 Chef d’entreprise

OUI

28!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Types de formats

Numérique continue (R) Compte en banque : 12 915,86 "!Numérique discrète (N ou Z) Nombre d’enfants : 11!Binaire Célibataire : vrai!Catégorie Couleur dans {rouge, vert, bleu}!Texte La protéine «#sp|P00004|CYC_HORSE#» est

activée par …!Données structurées Arbre, expression XML, …!

Séquences Génôme$Séquence de commandes d’accès sur réseau!

Images, vidéos

28!

Page 8: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

29!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Représentation des exemples

Représentation propositionnelle

Attributs-Valeurs

Âge = 23 & Taille = 1.72 & Profession = chercheur & …

Représentation la plus répandue

30!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Représentation des exemples

Représentation relationnelle

Logique du 1er ordre

Bloc(B1) & SurTable(B1) & Au-Dessus(B2,B1) & …

!  Utilisation

–  Structures (molécules, relations sociales, …)

31!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Types d’apprentissages 32!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Apprentissage supervisé

•  Un échantillon d’apprentissage

S = {(x1, y1), (x2, y2), … , (xi , yi), … , (xm, ym)}

32!

f!

h!

•  Prédiction pour de nouveaux exemples x –h-> y ?

Page 9: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

33!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Exemples

•  Apprendre à diagnostiquer une maladie

!  x = description du patient (symptomes, résultats d’examens, …)

y = maladie (ou thérapie recommandée)

•  Étiquetage de texte (Part-of-Speech tagging)

!  x = une phrase (e.g. « a star was born »)

!  y = Rôle des mots dans la phrase

•  Reconnaissance de visages

!  x = image bitmap de visage

!  y = nom de la personne (ou caractéristique : en colère, …)

34!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Apprentissage supervisé

34!

35!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1 - L'induction supervisée 36!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Apprentissage supervisé

•  Discrimination

–  Les clients totalisant des appels à l’étranger pour plus de 300!/mois et qui ont déjà fait 3 réclamations sont susceptibles de

changer pour un autre opérateur.

•  Régression

–  Le nombre de sinistres déclarés par un conducteur est

inversement proportionnel à l’ancienneté de son permis, avec des coefficients proportionnels propre à chaque sexe.

Page 10: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

37!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1- Types d’apprentissages 38!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Action Perception

1- Types d’apprentissages

Environnement

Récompense

Apprentissage de réflexes ... -> … apprentissage de planification!

39!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Le problème de l’induction

40!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Introduction à l’induction

Page 11: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

41!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustrations

Et première exposition aux problèmes

de l’induction

42!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1.1- Un exemple

•  Soient deux exemples dont les descriptions pourraient être :

!  E1 : Un triangle rayé au-dessus d’un carré uni noir

!  E2 : Un carré uni blanc au-dessus d’un cercle rayé

"  Formuler une description générale de ces deux exemples

E1 E2

A

B

C

D

43!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Description! Votre réponse! Vraie réponse!

1 grand carré rouge! -!

1.1- Encore un autre exemple

•  Exemples décrits par :

!  nombre (1 ou 2); taille (petit ou grand); forme (cercle ou carré); couleur (rouge ou vert)

•  Les objets appartiennent soit à la classe + soit à la classe -

1 grand carré vert!

2 petits carrés rouges!

2 grands cercles rouges!

1 grand cercle vert!

1 petit cercle rouge!

1 petit carré vert!

1 petit carré rouge!

2 grands carrés verts!

+!

+!

+!

-!

+!

+!

+!

-!

44!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustration : un problème d’apprentissage

•  On cherche à apprendre une fonction inconnue

x1 x2 x3 x4

Fct inconnue : f!y = f(x1,x2,x3,x4)!

Exemple! x1! x2! x3! x4! Etiquette!1! 0! 0! 1! 0! 0!2! 0! 1! 0! 0! 0!3! 0! 0! 1! 1! 1!4! 1! 0! 0! 1! 1!5! 0! 1! 1! 0! 0!6! 1! 1! 0! 0! 0!7! 0! 1! 0! 1! 0!

Pouvez-vous deviner la

fonction ?

Page 12: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

45!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustration : un problème d’apprentissage

•  Combien de fonctions possibles de 4 entrées booléennes et une sortie booléenne ?

Exemple x1 x2 x3 x4 Etiquette

1 0 0 0 0 ?

2 0 0 0 1 ?

3 0 0 1 0 0

4 0 0 1 1 1

5 0 1 0 0 0

6 0 1 0 1 0

7 0 1 1 0 0

8 0 1 1 1 ?

9 1 0 0 0 ?

10 1 0 0 1 1

11 1 0 1 0 ?

12 1 0 1 1 ?

13 1 1 0 0 0

14 1 1 0 1 ?

15 1 1 1 0 ?

16 1 1 1 1 ?

•  Combien de fonctions encore envisageables quand on connaît 7 exemples ?

Apprendre est-il possible ?

46!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustration : un problème d’apprentissage

•  Chercher une règle simple : de la forme d’une conjonction

•  16 fonctions possibles (sans les négations) Exemple! x1! x2! x3! x4! Etiquette!

1! 0! 0! 1! 0! 0!2! 0! 1! 0! 0! 0!3! 0! 0! 1! 1! 1!4! 1! 0! 0! 1! 1!5! 0! 1! 1! 0! 0!6! 1! 1! 0! 0! 0!7! 0! 1! 0! 1! 0!

Règle Contre-exemple x1 1 1 0 0 0 x2 0 1 0 0 0 x3 0 1 1 0 0 x4 0 1 0 1 1 x1 ! x2 1 1 0 0 0 x1 ! x3 0 0 1 1 1 x1 ! x4 0 0 1 1 1 x2 ! x3 0 0 1 1 1 x2 ! x4 0 0 1 1 1 x3 ! x4 1 0 0 1 1 x1 ! x2 ! x3 0 0 1 1 1

Règle Contre-exemple x1 ! x2 ! x4 0 0 1 1 1 x1 ! x3 ! x4 0 0 1 1 1 x2 ! x3 ! x4 0 0 1 1 1 x1 ! x2 ! x3 ! x4 0 0 1 1 1

Aucune de ces règles ne convient

47!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Illustration : un problème d’apprentissage

•  Chercher une règle simple : de la forme m of n

•  20 fonctions possibles Exemple! x1! x2! x3! x4! Etiquette!1! 0! 0! 1! 0! 0!2! 0! 1! 0! 0! 0!3! 0! 0! 1! 1! 1!4! 1! 0! 0! 1! 1!5! 0! 1! 1! 0! 0!6! 1! 1! 0! 0! 0!7! 0! 1! 0! 1! 0!

Règle Contre-exemple {x1} 3!{x2} 2!{x3} 1!{x4} 7!{x1,x2} 2! 3!{x1,x3} 1! 3!{x1,x4} 6! 3!{x2,x3} 2! 3!{x2,x4} 2! 3!{x3,x4} 4! 4!{x1,x2,x3} 1! 3! 3!

Règle Contre-exemple {x1,x2,x4} 2! 3! 3!{x1,x3,x4} 1! ***! 3!{x2,x3,x4} 1! 5! 3!{x1, x2,x3,x4} 1! 5! 3! 3!

On a trouvé une règle !

48!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Et pour la prédiction de séquence …

Page 13: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

49!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1.6- Exemple : reconnaissance de caractères manuscrits (3)

•  Quel critère de performance (de succès) ?

!  Probabilité de misclassification

!  Risque

!  Nombre d’erreurs

•  Apprentissage sur un échantillon d'apprentissage

•  Test sur une base de test

Taille échantillon!

“Erreur”!

Courbe d’apprentissage!

50!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Apprendre requiert du soin

•  L’apprentissage peut être vu comme la diminution de l’incertitude restante

!  Supposons que nous connaissions la classe de la fonction (e.g. m of n), alors l’échantillon d’apprentissage peut nous permettre d’identifier la bonne fonction

•  L’apprentissage requiert donc de faire un pari sur la classe des hypothèses à considérer

!  On peut commencer par une classe simple (restreinte) et l’« élargir » si c’est nécessaire jusqu’à trouver une classe dans laquelle une fonction s’accorde aux données

•  On peut se tromper !

!  Notre pari peut être mauvais (e.g. la fonction y = x4 ! one-of{x1,x3} marche aussi)

!  Si c’était la fonction cible, alors on va commettre des erreurs en généralisation (sur des exemples non vus)

51!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Stratégie générale

•  Bien choisir un langage de représentation des concepts (hypothèses)

!  Limiter son expressivité (sinon on ne peut pas apprendre)

!  E.g. concept conjonctif, m-of-n, réseau de neurones d’architecture bien choisie, …

•  Considérer un espace d’hypothèses flexible

!  Permettant de considérer des classes d’hypothèses de plus en plus riches

!  Arbres de décision, réseaux de neurones, SVM, …

•  Concevoir un algorithme d’exploration de l’espace des hypothèses H !  Pour trouver une « bonne » hypothèse (qui s’accorde approximativement aux données)

!  Et espérer que cette hypothèse généralisera bien à des données non vues

52!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

L’apprentissage de concept

Page 14: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

53!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Apprendre ! prédiction dans X

+! +!+!+!

+! +!+!

-!-!

-!

-!

-!

-!

-!-!

-!

Espace des exemples : !X!

+/- ?!

"  Hypothèse de continuité dans X !

54!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Trois ingrédients : trois questions

55!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Apprendre = un jeu entre espaces

Espace des exemples : X ! Espace des hypothèses : H !

LH

#  Comment choisir l’espace des hypothèses (i.e. le langage LH ) ?!

+! +!+!+!

+! +!+!

-!-!

-!

-!-!

-!

-!-!

-!

x ! h!

56!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

1- Choix de H

Page 15: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

57!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Impossibilité de l’induction sans biais

•  Combien de fonctions possibles de 4 entrées booléennes et une sortie booléenne ?

Exemple x1 x2 x3 x4 Etiquette

1 0 0 0 0 ?

2 0 0 0 1 ?

3 0 0 1 0 0

4 0 0 1 1 1

5 0 1 0 0 0

6 0 1 0 1 0

7 0 1 1 0 0

8 0 1 1 1 ?

9 1 0 0 0 ?

10 1 0 0 1 1

11 1 0 1 0 ?

12 1 0 1 1 ?

13 1 1 0 0 0

14 1 1 0 1 ?

15 1 1 1 0 ?

16 1 1 1 1 ?

•  Combien de fonctions encore envisageables quand on connaît 7 exemples ?

Apprendre est-il possible ?

58!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

+! +!+!+!

+! +!+!

-!-!

-!

-!-!

-!

-!-!

-!

Espace des exemples : !X!

Biais = Contraintes sur l’espace d’hypothèses

•  Apprendre (pour prédire) est impossible …

… sans limitation sur l’espace des hypothèses

+/- ?!

Espace des hypothèses : H

x !hj!

hk!

x !hi!

x !

x !hi!x !hi!x !hi!x !hi!

x !hi!x !hi!

x !hi!x !hi!x !hi!

x !hi!x !hi!x !hi!

x !hi!x !hi!x !hi!x !hi!

x !hi!x !hi!x !hi!

x !hi!x !hi!x !hi!x !hi!

x !hi!x !hi!x !hi!x !hi!x !hi!x !hi!

59!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

2- L’évaluation des hypothèses dans H

60!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Le critère inductif

+! +!+!+!

+! +!+!

-!-!

-!

-!-!

-!

-!-!

-!

LH

x ! h!

X H

Page 16: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

61!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Critère de performance

R(h) = l h(x), u( ) dP(x, y)X!Y"

Étiquette !prédite!

Étiquette vraie!(ou désirée)!

Loi de probabilité!jointe sur X " Y!

62!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Exemples de fonctions de perte

•  Discrimination

•  Régression

•  Estimation de densité

l (h(xi), ui) = 0 si ui = h(xi )1 si ui ! h(xi )" # $

l (h(xi), ui) = h(xi) ! ui[ ]2

l (h(xi)) = ! ln h(xi)

63!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

64!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

(i) Le principe inductif ERM

REmp(h) = l h(xi ), ui( )i = 1

m

!

R(h) = l h(x), u( ) dP(x, y)X!Y"

Page 17: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

65!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

(ii) Approche bayésienne 66!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

3.1- (iii) Principe de compression maximale

67!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

L’exploration de H

#  Quelle méthode d’exploration de H ? !

+! +!+!+!

+! +!+!

-!-!

-!

-!-!

-!

-!-!

-!

LH

x ! h!

X H

x ! h!x !h!? ?

68!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

3- L’exploration de H

Page 18: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

69!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

2- Apprendre = explorer un espace d’hypothèses

•  Comment choisir une (des) hypothèse(s) ?

•  Notion de biais de représentation

+ +++

+ ++

--

-

-

-

-

--

-

70!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

2- Apprendre = explorer un espace d’hypothèses

•  Exploration de l’espace d’hypothèses!

•  Mesure de l’adéquation de l’hypothèse (critère de succès)!

+ ! + !+ !+ !

+ ! + !+ !

- !- !

- !

- !

- !

- !

- !- !

- !

x !

x ! x !? -!

Nouvel!exemple!

hj!hk!

hi! ?

Espace des exemples : X Espace des hypothèses : H

71!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Apprendre = explorer un espace d’hypothèses

•  Exploration de l’espace d’hypothèses!

#  guidée par les relations de généralités dans H!

+ ! + !+ !+ !

+ ! + !+ !

- !- !

- !

- !

- !

- !

- !- !

- !

x !

x ! x !? -!

Nouvel!exemple!

hj!hk!

hi! ?

Espace des exemples : X Espace des hypothèses : H

72!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Induction et généralisation

Comment corriger une hypothèse défectueuse!

++

+

+ +

+

+

0

000

0

0

0

0

X

hm

Nouvel exemple : (xm+1 ,-1)

hm+1+

++

+ +

+

+

0

0

0

0

0

0

0

X

hm

Nouvel exemple : (xm+1 ,+1)

hm+1+

(a) (b)

Page 19: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

73!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Couverture des exemples par une hypothèse

•  h1 : complète mais incorrecte!

•  h2 : correcte mais incomplète!

•  h3 : complète et correcte : cohérente!

++

+

+ +

+

+

0

0

00

0

0

0

0

X

h1

h2h3

74!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Relation d’inclusion et relation de généralité

Vers la généralisation

++ +

+ ++

+

0

00

0

0

0

0

Xcouverture(ht)

ht

ht+1

H

+

couverture(ht+1)

75!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Relation d’inclusion et relation de généralité

Vers la spécialisation

++ +

+ ++

+

0

000

0

0

0

0

X

ht

ht+1

H

couverture(ht+1)

couverture(ht)

76!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- La relation de généralité induite dans H

Relation de généralité dans H induite par la relation d'inclusion dans X

X

h1

h2

H

couverture(h3)

couverture(h2)

h3

couverture(h1)

Page 20: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

77!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Treillis de généralisation dans H

Ordre partiel dans H

hi hj

gms(hi, hj)

smg(hi, hj)

H

78!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Les opérateurs

•  Généralisation

!  Transforme une description en une description plus générale

•  Spécialisation

!  Duale de la généralisation

!  (En général : produit une description qui est une conséquence logique de la description initiale)

•  Reformulation

!  Transforme une description en une description logiquement équivalente

79!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Opérateurs de généralisation

•  Règle d’abandon de conjonction

!  A & B # C => A # C

ferrari & rouge # coûteux => ferrari # coûteux

•  Règle d’ajout d’alternative

!  A # C => A $ B # C

ferrari # coûteux => ferrari $ rouge # coûteux

•  Règle d’extension du domaine de référence

!  A & [B = R] # C => A & [B = R’] # C

grand & [couleur = rouge] # coûteux => grand & [couleur rouge $ bleu] # coûteux

80!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Opérateurs de généralisation

•  Règle de clôture d’intervalle

!  A & [B=v1] # C & A & [B = v2] # C => A & [B = v1 ... v2] # C

grand & [coût = 100] # à acheter && grand & [coût = 150] # à acheter => grand & [coût = 100 .. 150] # à acheter

•  Règle de l’ascension dans l’arbre de hiérarchie

!  A & [B= n1] # C && A & [B= n2] # C => A & [B= N] # C

corrosif & [élément = chlorine] # toxique

corrosif & [élément = bromine] # toxique

=> corrosif & [élément = halogène] # toxique

Halogène!

Bromine!Chlorine!

Page 21: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

81!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Opérateurs de généralisation

•  Règle de variabilisation

!  F(a) & F(b) & ... # C => % v, F(v) # C

grand(sommet_objet) & grand(fond_objet) & ... # C

=> % partie, grand(partie) # C

•  Règle de changement de conjonction en disjonction

!  A & B # C => A $ B # C

grand & rouge # coûteux => grand $ rouge # coûteux

•  Règle d’extension du domaine de quantification

!  & v, F(v) # C => % v, F(v) # C

& partie, grand(partie) # C => % partie, grand(partie) # C

82!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

4- Opérateurs de généralisation

•  Inversion de la résolution

!  A & B # C && ¬A & D # C => B $ D # C

vieux & grand # C && ¬ vieux & rouge # C => grand $ rouge # C

•  Règle anti-extension

!  A & [B=v1] # C && D & [B=v2] # ¬C => [B ! v2] # C

•  Règle constructive de généralisation (modifiant les descripteurs)

!  A & B # C && D # C => A & D # C

83!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

L’espace des versions

et

L’algorithme d’élimination des candidats

84!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Représentation de l'espace des versions

Observation fondamentale :

L'espace des versions structuré par une relation d'ordre partiel peut être représenté par :

!  sa borne supérieure : le G-set

!  sa borne inférieure : le S-set

•  G-set = Ensemble de toutes les hypothèses les plus générales cohérentes avec les exemples connus

•  S-set = Ensemble de toutes les hypothèses les plus spécifiques cohérentes avec les exemples connus

H

G

S

hi hj

Page 22: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

85!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Apprentissage ...

… par mise à jour de l'espace des versions

Idée :

maintenir le S-set

et le G-set

après chaque nouvel exemple

#  Algorithme d'élimination des candidats

86!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Algorithme d'élimination des candidats

Initialiser S et G par (resp.) :

!  l'ensemble des hypothèses les plus spécifiques (les plus générales) cohérentes

avec le 1er exemple positif connu.

Pour chaque nouvel exemple (positif ou négatif)

!  mettre à jour S

!  mettre à jour G

Jusqu'à convergence

ou jusqu'à ce que S = G = Ø

87!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Mise à jour de S

•  xi est négatif

!  Eliminer les hypothèses de S couvrant (indûment) xi

•  xi est positif

!  Généraliser les hypothèses de S ne couvrant pas xi juste assez pour qu'elles le couvrent

!  Puis éliminer les hypothèses de S

–  couvrant un ou plusieurs exemples négatifs

–  plus générales que des hypothèses de S

88!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Mise à jour de G

•  xi est positif

!  Eliminer les hypothèses de G ne couvrant pas xi

•  xi est négatif

!  Spécialiser les hypothèses de G couvrant xi juste assez pour qu'elles ne le couvrent plus

!  Puis éliminer les hypothèses de G

–  n'étant pas plus générales qu'au moins un élément de S

–  plus spécifiques qu'au moins une autre hypothèse de G

Page 23: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

89!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Algorithme d'élimination des candidats

Mise à jour des bornes S et G

H

G

Sx

x

x

x(a)

(b)

(c)

(d)

x(d')

(b')

(a')

xx

x

90!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Propriétés de l'AEC

•  Incrémentalité

•  Complexité ?

•  Utilisation si non convergence ?

•  Que signifie S = G = Ø ?

•  Possibilité d'"apprentissage actif" ?

•  Que faire si les données sont bruitées ?

91!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Exemple : le système LEX (1)

Résolutionde problèmes Généralisation

Critique

Générationde problèmes

Exercice

Trace détaillée de latentative de résolution

de l'exercice

Heuristiquespartiellement

apprises

Exempled'apprentissage

92!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

5- Exemple : le système LEX (2)

Résolutionde problèmes Généralisation

Critique

Générationde problèmes

Calculer la primitive de :! 3x cos(x) dx

! 3x cos(x) dx

3x sin(x) - ! 3x sin(x) dx

3x sin(x) - 3 ! x sin(x) dx

3x sin(x) - 3x cos(x) dx + C

OP2 avec :u = 3xdv = cos(x) dx

OP1

OP5

Un des exemples positifs proposés :

! 3x cos(x) dx" Appliquer OP2 avec :

u = 3x dv = cos(x) dx

Espace des versions pour l'utilisation del'opérateur OP2 :

S ={ ! 3x cos(x) dx " Appliquer OP2avec : u = 3x

dv = cos(x) dx}G ={ ! f1(x) f2(x) dx " Appliquer OP2

avec : u = f1(x) dv = f2(x) dx}

Page 24: Tr-Intro-AA ISI 3antoine/Courses/Master-ISI/Tr-Intro...y = nom de la personne (ou caractéristique : en colère, …) Cornuéjols 1-Introduction à l’Apprentissage Artificiel 34!

93!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

3.3 - Le choix d’une méthode d’apprentissage

x!h!

H

hi hj

gms(hi, hj)

smg(hi, hj)

H

Dépend fondamentalement de l’espace des hypothèses H

94!Cornuéjols 1-Introduction à l’Apprentissage Artificiel

04/10/12

Induction de grammaire

•  !"#$%&'(&"')&*"+,-"'

./'0'1*2'-*3'