Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par...

30
21 mars 2005 Apprentissage statistique et Optimisation stochastique Michèle Sebag TAO CNRS INRIA LRI http://tao.lri.fr

Transcript of Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par...

Page 1: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

21 mars 2005

Apprentissage statistique et Optimisationstochastique

Michèle Sebag

TAO

CNRS� INRIA � LRI

http://tao.lri.fr

Page 2: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Plan

� Apprentissage

� Apprentissage : programmation par les données

� Optimisation

� Optimisation : programmation par les préférences

Page 3: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Apprentissage supervisé

Input� Données brutes : signaux, données expérimentales, logs d’EGEE, ...� Etiquettes associées : signaux positifs/négatifs,jobs DONE, LOST, ABORT

Base d’apprentissage

E = f(xi; yi); xi 2 X; yi 2 Y gY = IR régressionY = f1;�1g classification

Page 4: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Apprentissage supervisé, 2

E = f(xi; yi); xi 2 X; yi 2 Y gOutput: Hypothèses

h : X 7! YCritères� Qualité prédictive ` = fonction de perte

h� = ArgminfE[`(h(x); y)]; h 2 Hg� Compréhensibilité h est intelligible, l’expert comprend et agit

Page 5: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Programmation par Apprentissage

Trois exemples Dietterich, Oregon State University

� Hand-written recognition

� Wafer test

� Camera allocation in autonomous robotics

Page 6: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Scenario 1: Reading Checks

Find and read “ courtesy amount” on checks:

Page 7: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Scenario 2: VLSI Wafer Testing

Wafer test: Functional test of each die (chip) while on the wafer

Page 8: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Scenario 3: Allocating mobile robot camera

BinocularNo GPS

Page 9: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Programmation classique

Analyse : Interviewer experts et utilisateurs pour identifierquoi et comment faire

Conception: Programmer

Implementer

Tester

Limites : Spécifications ardues; compromis mal définis

Page 10: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Spécifications ardues

Absence d’expertisefraude téléphonique

Expertise implicitereconnaissance de caractères

Spécifications évolutivesdétection d’intrusion

Personnalisationfiltrage de pourriels

Page 11: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Compromis mal définis

Cas du waffer testingdépend de la probabilité de panne, du coût du test (Wafer vs SIP)

Cas de la caméra robotiquedépend de la probabilité des obstacles, et de la qualité des amers.

Page 12: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Programmation par Apprentissage

Remplacer les choix du programmeurreconnaissance de caractères, point d’équilibre pour le test, ...

...par l’apprentissage / la fouille de données� utilisant des modèles appris à partir des données

Défi: utiliser la connaissance du domaine

Page 13: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

n = 10; N = 100

Transitions de phaseProbabilité de couverture(m;L)

Complexité effective(m;L)

Page 14: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Learning Competence Map

++++...........+.++

+++

+

+++..........++++++++++++

.

.

.

.

.

.

.

.

.

.+.+++.

++++++

+........+

+.+++

++

+........+..++++++++++

+

.

.

.

.

.

.

.

.

.

.

.

.+++++++.+++

+........++++++

+++++.+

+......

++++++++++++++

.

.

.

.

.

.

.

.

.+++++

.

++++++

.

.

.

.

.

.

.+...++.+++++++++

+......+.++++

.

.

.

.

.

.

.++...

.

.

.

.

.

.

.

.++++

.

.

.

.

.

.

.+...++

.

.

.

.

.

.

.

.+++++

.

.

.

.

.+++++

.

.

.

.

.

.

.

.

.+++

.

.

.

.

.

.

.

.

.+.++

.

.

.

.

.

.+++.++

.

.

.

.

.+....++

++++++++++++

+++++++++

+++

+++.++++.+.+++++++.

+++++++.

+....++.+++.++

+

++......+.+...+.+++++

++.......+...+

++++++.+

5 10 15 20 25 30m

10

15

20

25

30

35

40

45

L

+ Success (> 80% on test set) � Failuren = 4; N = 100

Page 15: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Plan

� Apprentissage

� Apprentissage : programmation par les données

� Optimisation

� Optimisation : programmation par les préférences

Page 16: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Stochastic population-based Optimisation

Evolutionary Computation

F : 7! IR; Find ArgMax(F)

���������������������������������������������

���������������������������������������������

���������������������������������������������

���������������������������������������������

���������������������������������������������

���������������������������������������������

���������������������������������������������

���������������������������������������������

������������������������������������������������������������

��������� � � � �

����������������������

���������������������������������������������

���������������������������������������������

���������������������������������������������

���������������������������������������������

������������������������������������������������������������

������������������������������������������������������������

���������������������������������������������

���������������������������������������������

������������������������������������������������������

���������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������

��������������������

������������������������������������

Evaluation

Initialisation

Replacement

"Darwinism" (stochastic or determinist)

Main CPU cost

Best individual

Stop ? Selection

Crossover,Mutation, ...OffspringEvaluation

Stochastic operators: Representation dependent

Generation

Checkpointing: stopping criterion and statistics

Parents

Genitors

Page 17: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Evolutionary Computation: When ?

F : 7! IR; Find ArgMax(F)Aimed at ill-posed problems:

� DynamicF� ChaoticF� Mixed search spaces

� Infinite search spaces

� Non computableF

Page 18: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Exploring the expert’s search spaceIdentification of Behavioral Laws

Strain

Stre

ss

0 0.01 0.02 0.03 0.04 0.05

0

100

200

300

400

500Experimental curve

Input: Experimental curves

Page 19: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Identification of Behavioral Laws, 2

Input: Experimental curves

� observed strain�(t) for applied stress�(t);� observed stress�(t) for applied strain�(t);

Output: Behavioral lawDifferential equations linking�(t), �(t) and their derivatives, e.g.

if �(t) < �1 then�(t) = a:�(t) + b: _�(t)else if �(t) < �2 then�(t) = c:�(t) + d: _�(t)

Criteria: the law must fit the experimentsand be comprehensible.

Page 20: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Search space: Rheological models

Dynamic 1-D laws.Assembly in series or parallel of� springs (elastic behavior)� sliders (plastic behavior)� dashpots (viscous behavior)

Page 21: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Genetic Programming

� Stochastic optimisationinitialization, (selection, crossover, mutation)�

� Search space = Trees (N , T )

PolynomsN = f+;�; �gT = fX1; X2; : : : ; Xn;Rg

ProgramsN = fif-then-else, do-whilegT = fexpressions, instructionsg

� Fitness : fitting experimental data

Page 22: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Non parametric identification with GP

� Rheological models = Trees (N , T )N = f//, +g T = fsprings, sliders, dashpotsg

Page 23: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Non parametric Identification

with Background Knowledge

� Macro-Mechanical Identification, Indentation laws

Page 24: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

GP and Background Knowledgeex: Dimension consistencymeters and seconds should not be added...

Goal: Enforcing dimension consistency

Assumption:finite set of units fm; s; kggcompound units Uijk : misjkgklimited combinations i; j; k 2 [�2; 2]

Representation: BNF grammarsS start symbol U1;�2;1N non-terminals fUijkgT terminals fV ars;R;+;�; �; =; expgP production rules

Uijk := Uijk + Uijk j Uijk � Uijk j Uijk exp U000jabc+def=ijk Uabc � Udefjabc�def=ijk Uabc = Udefjunit(var)=ijk V ar

Page 25: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Plan

� Apprentissage

� Apprentissage : programmation par les données

� Optimisation

� Optimisation : programmation par les préférences

Page 26: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Understanding the User’s GoalFunctional Brain Imagery� Patients, Experiments, Measures

EEG MEG� Magneto-Encephalography1,000 measurespersensorpersecond.

Page 27: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

The data

Spatio-temporal structure� Sensorsi = 1::N� i ! � Mi = (xi; yi; zi) 2 IR3fCi[t]; t = 1::Tg 2 IRT

Page 28: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Goal

Find spatio-temporal patterns� Spatial regionA � IR3� Temporal intervalI � f1::Tgdefining V(A; I) = fCk[t]; k 2 A; t 2 Ig

SUCH THATthe variance of signals withinV(A; I) is lowandA� I is a large spatio-temporal region

“active areas of the brain”

Page 29: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

Discriminant Spatio-Temporal Patterns

Time

Activity

1100 1200 1300

0

-50

MEG

Time

Activity

0 1000 2000

0

100

-50

50

MEG

Page 30: Apprentissage statistique et Optimisation stochastiquesebag/Slides/LAL.pdf · Programmation par Apprentissage Remplacer les choix du programmeur reconnaissance de caractères, point

What’s difficult ?

Solve the problem

Understand the problem

Understand the expert’s goals

From Xtrem Programming to Xtrem Solving