Sunteți pe pagina 1din 31

1

Fouille de données (Data Mining)


& Acquisition de connaissances
{Vincent.Corruble,JeanDaniel.Zucker}
@lip6.fr
http://www-poleia.lip6. fr/~zucker

© J-D. ZUCKER LIP6

2
Plan
Plandu
ducours
coursDESS-GLA
DESS-GLA2001/2002
2001/2002etetModalité
Modalité

Contenu de ce cours:
• Une introduction à diverses méthodes et techniques
d’apprentissage automatique et des systèmes adaptatifs
• La fouille de données:
» Rappel base et entrepôts de données (ODBC, OLAP).
» L’analyse de données
» Le processus de la fouille de données
» Algorithmes pour la fouille de données et environnements

• Représentation des connaissances et acquisition: un rappel


sur les systèmes à base de règles (SBR)

Modalité du module
– 14 séances Cours-TP-TP-TD Mardi Matin (9h30-12h30)
– Enseignants: V. Corruble, J-D. Zucker
– 1 mini-projet (apprentissage par renforcement) + 1 DataMining.

© J-D. ZUCKER LIP6


3

Plan du premier cours

I. L’apprentissage: généralités

– Définition, exemples, motivations, historique


II. Construire un système capable apprenant

III. L’apprentissage par renforcement

IV. Exemple illustratif et MiniProjet (TD)

© J-D. ZUCKER LIP6

I. L’apprentissage pour une machine

Votre
Votredéfinition:
définition:

© J-D. ZUCKER LIP6


5

I.1 Définition

•Qu’est-ce que l’apprentissage ?


– “Changement(s) dans un système lui permettant d’améliorer ses
performances sur une tâche déjà vue ou similaire” (Simon,83)

•Qu’est-ce qu’une tâche ?


– Classification (diagnostic médical, détection de fraudes, qualité d’investissements,
séquences ADN, parole, écriture, images astronomiques, etc.)
– Résolution de problème, planification et action (problèmes calculatoires, jouer
aux dames, commander un bras manipulateur, conduire une voiture, etc.)

•Comment mensurer les performances ?


– Taux de classification sur des exemples tests, cohérence et qualité des
solutions, ...

© J-D. ZUCKER LIP6

Exemples illustratifs d’apprentissages

Classification, Organisation Résolution de problèmes,


Diagnostiquer un churner planification et action
Accorder un prêt Améliorer une heuristique
Rejeter des pièces sur une chaîne de prod. Conduire une voiture
Quelle bannière afficher sur mon site Jouer au football

vache saine vache folle


possède reproduit
pattes ovipare

reproduit
vivipare mange possède
viande bec
mange possède mange
herbe écaille graines

© J-D. ZUCKER LIP6


7

I.3 Quels “changements” pour apprendre?

Il y a deux manières principales pour améliorer


les performances d’un système:

➂- Acquérir de nouvelles connaissances


– Acquérir de nouveaux faits (connaissances déclaratives)
– Acquérir de nouvelles capacités (connaissances procédurales)

②- Adapter son comportement


– résoudre les problèmes plus correctement,
– résoudre les problèmes plus efficacement, ...

© J-D. ZUCKER LIP6

I.4 Importance de l’apprentissage ? (1/2)

Raisons pratiques/économiques:
Découvrir de nouvelles K, de nouveaux motifs, des régularités
(le Data Mining, Web Mining, Text Mining )

La nécessité de développer des systèmes adaptatifs


(agents d’interfaces, filtreurs de courrier personnalisés, robots adaptatifs, agents
virtuels)

Le coût et la difficulté de construire de larges SBC (ou SE).


C’est le goulot d’étranglement de l’acquisition des connaissances
Ex: MYCIN 400 règles mais .... 100 ha !

© J-D. ZUCKER LIP6


9

I.4 Importance de l’apprentissage ? (2/2)

• Raisons scientifiques/théoriques
– Mieux comprendre l’apprentissage humain

– Modéliser les mécanismes d’apprentissage

– Analyser le statut philosophique de l’induction

• Raisons historiques/expérimentales
– La quantité d’information: WWW, Entrepots de données (Data Warehouse), etc.

– Des algorithmes existent déjà et ils ont prouvé leur intérêt:


BMT 30,000 règles et seulement 9 ha !

© J-D. ZUCKER LIP6

10

I.5 Enjeux pour l’e-commerce

• On-line Behaviour
– Where are they now?
– What are they reading?
– Where did they come from?
• Historical Behaviour
– What did they buy last time?
– Where do they spend most of their time?
– How long do they stay?
• Customer Identity
– Are they male or female?
– What are their interests?

© J-D. ZUCKER LIP6


11
Know your eCustomers!
I.5 Enjeux pour l’e-commerce: CRM et l’eCRM

• How effective are my marketing efforts?

• What types of content, products, or services draw people back?

• How do visitors respond to the different parts of my site?

• When visitors use one site area or service, what else will they be interested in?

• Were there any dramatic changes in PR or marketing-generated traffic yesterday?

• When do certain segments of visitors visit?

© J-D. ZUCKER LIP6

12
I.5 Enjeux pour l’e-commerce: bénéfices
Technique Advantage Benefit
Discover major paths through your Improve effectiveness of web site
Path Analysis web site, those that lead to sales and design, measure the impact of
what drives web site performance. creatives (e.g. animated pictures)
Discover where your best customers Assess success of advertising and
Referral Analysis
are coming from. affiliations with other web sites
Recommend the mix of products,
Discover which products are bought
Shopping Basket Analysis services and offers that customers are
together or in sequence
most likely to buy - increase sales.
Predict who is most likely to respond
Improve response to campaings -
Marketing Campaign Analysis to different marketing programs,
increase sales.
measure campaing response.
Gain deeper understanding of
Identify customers who exhibit similar
customers, develop personalised
Curstomer Profiling and Segmentation behaviours and have similar needs or
offers and campaigns - maximise your
preferences.
marketing ROI.
Develop targeted customer retention
Predict customers who are most likely
Churn Modeling and loyalty programs - reduce
to leave.
customer attrition.
Understand customer lifetime value
LifeTime Value Modeling Maximise customer profitability
and profitability.
© J-D. ZUCKER LIP6
13

Web Mining: déjà de nombreux outils

© J-D. ZUCKER LIP6

14

I.6. Différents types d’apprentissage

• Apprentissage par renforcement (RL)


• Apprentissage symbolique (Concept Learning)
• Apprentissage à partir de cas (CBR) ; K-PPV
• Algorithmes génétiques (Genetic Algorithm)
• Construction de classifications (Clustering)
• Apprentissage de programmes (prolog (ILP); PG)
• Apprentissage neuronal (NN)
• Apprentissage probabiliste, par cœur, par analogie
• Apprentissage par explications (EBL)
• Approches hybrides, ....

© J-D. ZUCKER LIP6


15

I.7. Une taxinomie des apprentissages (intuitif)

Méthodes d’apprentissage

Raisonnement inductif Raisonnement déductif


De l’expérimentation De l’explication
à l’acquisition de connaissances à la révision de connaissances

Avec professeur Sans professeur Planification Action


(monde connu) (monde inconnu)
(supervisé) (non supervisé)

© J-D. ZUCKER LIP6

16

Apprentissage inductif

– Etant donné un ensemble de pairs xi , yi


– Trouver une généralisation f telle que f (xi ) soit comme yi

– Etant donné un ensemble d'observations
– Faire une classification des x i,

Mangeable ?

© J-D. ZUCKER LIP6


17

Apprentissage par renforcement

– Etant donné un lien avec l'environnement (réel ou virtuel)


– Trouver un comportement qui maximise le renforcement à long terme.

Etat

Observation Reinf
Action

© J-D. ZUCKER LIP6

18

II. Architecture générique d’un système d’apprentissage

Connaissances
Apprises ou Révisées

Apprentissage
Fonctionnalités

Environnement

© J-D. ZUCKER LIP6


19

II. Définir un système d’apprentissage

1) Définir la situation d’apprentissage: le problème

2) Choisir la fonction cible et sa représentation

3) Choisir un algorithme pour apprendre la fonction cible

4) Evaluer les résultats de l’apprentissage

© J-D. ZUCKER LIP6

20

II.1.a. Situations d’apprentissage

• Un Domaine: a) perception b) cognition c) action


– a) Vision, Parole; b) lang. nat., design, diagnostic, raisonnement, planification ; c)
contrôle de robot.

• Une tâche T
– Apprendre un concept, des règles, une grammaire, ...

• Une évaluation des performances P de l’apprentissage


– taux d’erreur de classification sur exemples nouveaux, efficacité, jugement d’un
expert du domaine.

• Un protocole: l’experience E du système

© J-D. ZUCKER LIP6


21

II.1.b. Définir la tâche d’apprentissage T

Améliorer les performances P d’un système sur une tache T à partir


d’expériences E.

• T: Jouer au dames

• T: Reconnaître des mots écrits scannés

• T: Conduire une voiture sur une autoroute

• T: Diagnostic des vaches malades

• T: Construire un plan de déplacement dans une pièce


© J-D. ZUCKER LIP6

22

Superposé II.1

P: % de parties gagnées ; E: Jouer contre soi-même

P: % mots correct. class. ; E: BDD de mots correc. classés.

P: Distance moyenne sans erreur ; E: séquences vidéo

P: % patient diagno. ; E: BDD dossiers patients et diagnos

P: Temps moyen constr. plan ; E: situations enrregistrées


© J-D. ZUCKER LIP6
23

II.1.c. Définir le protocole (l’experience E)

• Formes des données


– Supervisé / Non-supervisé
– En ligne/ hors Ligne
– Incrémentale ou non
– bruitées ou non

• Origine des données


– Aléatoire, expert, utilisateur
– Possibilité d’interroger un oracle
– Possibilité de faire ses propres expériences pour collecter des
données.

• Représentativité des données


© J-D. ZUCKER LIP6

24

II.1.d. Qu’est-ce qu’une bonne tâche d’apprentissage

1. La tâche ne doit pas être déterministe. Des problèmes qui ont des
solutions ou des petits espaces de recherche(s) sont inintéressants !

2. Il doit y avoir un but idéal et des buts intermédiaires dont on peut


mesurer la distance au but idéal (ex: % de classif)

3. Il faut des connaissances sur la tâche pour l’évaluer.

4. La tâche doit être familière à suffisamment de personnes pour que son


automatisation soit utile !

© J-D. ZUCKER LIP6


25

II.2.a. Choisir la fonction cible ...

• Question: que doit-on apprendre et comment la connaissance apprise


sera utilisée ?

• Dans le jeux des dames anglaises [checkers (Samuel,59)]:


– On peut apprendre à jouer les coups légaux: LEGAL(damier)
--> coup-légal
– On peut apprendre à choisir le meilleur des coups légaux:
CHOIX(damier légaux) --> meilleur-coup
– On peut chercher à apprendre à évaluer une position:
V(damier) --> score

© J-D. ZUCKER LIP6

26

II.2.b. fonction cible idéale ... et approximative

• Soit V(d) la fonction d’évaluation d’un damier


– V(d)=1 si d est une position finale gagnante
– V(d)=-1 si d est une position finale perdante
– V(d)=0 si d est une position finale nulle
– Si d n’est pas une position finale: V(d)=v(d’) où
d’ est la position finale ayant le meilleur score que l’on peut atteindre en
jouant depuis la position d.

• Cette définition n’est pas opérationnelle 1040


• Une définition opérationnelle: temps polynomial
^
• Une approximation V de la fonction idéale V

© J-D. ZUCKER LIP6


27

II.2.c. Choisir la représentation de la fonction cible

• La fonction à apprendre peut se représenter par


– table de hachage
– règles symboliques
– réseau de neurones
– fonction numérique continue
– etc.
• Compromis représentativité/complexité d’apprentissage
• Pour les dames: par ex. une combinaison linéaire
^
– V (d) = w 0 + w 1 x RN(d) + w 2 x RR(d) + w3 x DN(d) + w 4 x DR(d) +
w5 x PNM(d) + w 6 x PRM(d) )

Caractéristiques Ci: RN=roi noirs, RR=roi rouge, DN=dames noires, DR=dames rouges, PNM=pieces
noires menacées , PRM=pieces rouges menacées

un exemple: ( (RN=3, RR=1, DN=2, DR=0, PNM=0, PRM=1), 1)


© J-D. ZUCKER LIP6

28

II.3. Choisir un algorithme d’apprentissage et l’évaluer

• Un algorithme d’apprentissage utilise des exemples d’une fonction


pour en trouver une approximation qui est correcte vis à vis des
exemples donnés.

• Evaluation xpérimentale
– tests (benchmarks),

– vitesse, précision, évolution

• Evaluation théorique
– complexité des algorithmes,

– preuves sur l’apprenabilité

© J-D. ZUCKER LIP6


29

I. L’apprentissage: généralités

– Définition, exemples illustratifs, motivations, historique


II. Construire un système d’apprentissage

III.L’apprentissage par renforcement


IV. Exemple illustratif (TD)

© J-D. ZUCKER LIP6

30

III. Apprentissage par renforcement: situation

Environnement

Récompense Perception
Action

✓Agent autonome
✓Apprentissage en ligne
✓Apprentissage modifie l'env.
✓Monde peut être non déterministe © J-D. ZUCKER LIP6
31

III.1. Apprentissage par renforcement (définition)

Apprentissage par renforcement (ou interaction)

But: (Apprendre à) prendre la meilleure action dans une situation Si


L'environnement donne une récompense r pour une action a dans l'état Si (ou
pour une séquence d'actions)

Origine: apprentissage des animaux (par exemple souris)


Aujourd'hui: de l'essai-erreur à la planification controlée

≠ Apprentissage supervisé:
un professeur dit la bonne action à prendre en Si

(par exemple: dans la position Si il faut jouer sur la case 33)


© J-D. ZUCKER LIP6

32

Pourquoi apprendre par renforcement ?

• Le signal d'un professeur est rarement disponible


• Une récompense est plus facile à spécifier qu'un comportement:
+ for removing dirt
- for consuming energy
-- for damaging furniture
--- for terrorizing cat

© J-D. ZUCKER LIP6


33

I.2. Exemples illustratifs

✓ Les jeux (dans certains cas): jugements intuitifs, blitz...


✓ A la naissance, une gazelle tient à peine debout...
✓ Attraper son paquet de céréal favori, un ballon,...
✓ Stratégie d'un robot (se recharger)/(continuer)
✓ Contrôleurs adaptatifs temps réel (prod./coût/qualité)
✓ Equilibre

✓ Point communs:
✓ intéractions, sous-buts, incertitude de l'environnement.
✓ l'expérience permet d'apprendre...
© J-D. ZUCKER LIP6

34

Exemple 1: Le problème du "bandit à k bras"


p1=? p2=? p3=? pk=?

0 1 1 0

.......
Bandit 1 Bandit 2 Bandit 3 Bandit k

 Il y a k machines à sous
 Chacune donne 0 ou 1 avec une loi de probabilité cachée
 On peut jouer h coups.
 Comment choisir les machines pour optimiser le gain?

© J-D. ZUCKER LIP6


35

Exemple 2: Le jeu de Tic-Tac-Toe

Soit

• Un TicTacToe à 9 cases
• Comment apprendre à évaluer une position ?

Apprentissage Supervisé:
• Un ensemble de couple (positions notes): , 10

Apprentissage par renforcement:


• On apprend la valeur des positions en
fonction des parties jouées.

© J-D. ZUCKER LIP6

36

I.4. Quand doit-on faire appel à l'app. par renf. ?

✔ Une tâche en plusieurs étapes où la récompense ne vient qu'à la fin


d'une succession de choix (un état final)

e.g. Recherche dans un labyrinthe

✔ La récompense peut venir plus fréquemment (perdre une pièce aux


échec) mais celle-ci ne donne pas d'indication sur la solution optimale

e.g. Prise de pièces (attention un sacrifice peut mener à la victoire)

✔ On ne sait pas quelle récompense attribuer à quelle action


credit assigment problem

© J-D. ZUCKER LIP6


37

II.1. Deux types d'approche pour apprendre π


π
A) Apprendre V la fonction d'utilité liée aux états (TD-learning)
Dans l'état Si choisir l'action a qui maximise l'utilité V(Si+1) supposée de l'état Sj+1 obtenue après
avoir fait l'action a.
Requiert un modèle assez précis de l'environnement pour connaître les états où mènent les
actions (exemple: Jeux de dame+Minimax)

π
B) Apprendre Q la fonction d'utilité liée aux actions (Q-learning)
Choisir l'action a qui maximise Q(Si,a):
l'utilité supposée de l'action a dans l'état Si
Requiert un modèle limité de l'environnement: on n'a besoin que de mesurer la valeur d'une
action et non l'état résultant de l'action (pas de look-ahead) (exemple: attraper une plume,
blitz)

© J-D. ZUCKER LIP6

38

Modèlisation: états, actions et récompenses

r(s,a)
r(s,a)récompense
récompenseimmédiate
immédiate(inconnue
(inconnueau
audépart)
départ)

0 100
But
0 0
0 0
0 0 100
0 0

0 0

➤ Dernière étape qui assure la récompense (jeux, monde des blocs,


etc.)
➤ Tâche: apprendre la meilleure stratégie qui maximise le gain
© J-D. ZUCKER LIP6
39

Critères de gains
➤ Horizon fini k

∑ r = r + r +...+r
t =0
t 0 1 k

➤ Horizon infini avec intérêt


∑ t 0 1 2 r3 +...
γ t

t =0
r = r + γr + γ 2
r + γ 3

➤ En moyenne
1 k
lim ∑ rt
k →∞ k
t =0

© J-D. ZUCKER LIP6

40

Comparaison des comportements


k=4, γ=0.9 Quelle est la meilleure stratégie k ∞
∑ rt
t =0
∑ γ rt lim
t 1 k
k →∞ k
∑ rt
t =0 t =0

+2
6 16.0 2

+10

0 59.0 10

+11

0 58.4 11

© J-D. ZUCKER LIP6


41

Récompense Cumulée

π
➤ On définit la récompense cumulée V (st) = ∑γ t =0
t
rt
π
➤ Le problème: trouver π * = argmax( v (s))
π

90 100
But
0

81 90 100

V*(s)=V π*
V*(s)=Vπ*(s)
(s)récompense
récompensecumulée
cumuléeoptimale
optimale
© J-D. ZUCKER LIP6

42

Une stratégie

• Apprendre une fonction Q:


Q : S × A → valeur

• L'utiliser pour choisir la meilleure action


π (s) = argmax Q(s, a)
a ∈A

© J-D. ZUCKER LIP6


43

Choix d'une action

• Exploration versus exploitation:

• Si vous avez confiance en vous:


– choisissez
π (s) = argmax Q(s, a)
• Sinon, a ∈A
10
– explorez

??

© J-D. ZUCKER LIP6

44

Processus de décision Markovien

• Propriété de Markov
P(s t | st −1 , at −1 ) = P(s t | st −1 , at −1 , st − 2 , a t − 2 ,...)
• Alors
Q(s, a) = R(s, a) + γ ∑ P( s ′ | s, a) max Q(′∈ s ′, a ′ )
s′ ∈S a A

récompense taux prochain état Valeur future


immédiate d'intérêt espéré

• Theorem: Etant donné P et R, il y a une unique Q [Bellman]

• Mais si P et R sont inconnus... il faut apprendre une politique


© J-D. ZUCKER LIP6
45

Trouver un algorithme: problèmes


BUT:
BUT:Trouver
Trouverune politiqueππ: :SS-->
unepolitique -->A,A,
qui
quiààtout
toutétat
étatsst tassocie
associel'action
l'actionaat tqui
quioptimise
optimiseun
uncritère
critèrede
degain.
gain.
➤ "Temporal Credit Assignment":
quelles sont les actions qui doivent être créditées ?
➤ Exploration/exploition: quel compromis avoir ?
➤ Etats partiellement observables:
si les capteurs ne donnent pas toutes les infos ?
➤ Apprentissage à long terme:
ré-utiliser des connaissances apprises pour d'autres taches ?
Performances:
vitesse de convergence, regret
© J-D. ZUCKER LIP6

46

Quelle fonction apprendre ?

➤ La politique optimale π* ?
➤pas d'exemples de la forme (s,a)
➤ La récompense cumulée V* ?
➤L'agent choisira alors s1 plutôt que s2 car V*(s1) > V*(s2) et comme il faut
choisir une action.

π *( s) = argmax(r(s,a) + γ V * (δ (s,a)))
a

➤Intéressant ssi r(s,a) et δ(s,a) sont totalement connues

➤ La fonction Q ci-dessous offre une réponse


➤On définit Q(s,a)= r(s,a) + γ V*(δ
δ(s,a))
➤ Point clef: l'agent pourra prendre les décisions optimales sans
connaissances des fonctions r(s,a) et δ(s,a)
© J-D. ZUCKER LIP6
47
La "beauté" de la fonction Q

➤ La fonction Q est définit comme étant LA fonction qui résume en UN


nombre toute l'info nécessaire sur le gain cumulé d'une action a, prise
dans l'état s.

Q(s,a)
Q(s,a)

90 100
But
81 0
72 81
81 90 100
81 90

72 81

© J-D. ZUCKER LIP6

48

III. Un algorithme pour apprendre Q(s,a) (cas déterministe)

Q(S,a)=r(s,a) + γ V*(δ(s,a))

➤ On a : V * ( s) = max Q(s,a')
a'

➤ Définition récursive: Q( s, a ) = r ( s, a ) + γ max Q(δ (s,a),a' )


a'

^
Pour chaque couple s, a initialisé la table Q(s,a) à zéro.
Pour l'état courant s
Répéter
Choisir une action a et l'exécuter (exploration vs. exploitation)
Réception d'une récompense immédiate r
Observer le nouvel état s'
∧ ∧
MAJ de Q( s, a ) ← r ( s, a ) + γ max Q(δ (s,a),a')
a'
s <-- s'

© J-D. ZUCKER LIP6


49

Exemple illustratif...
^
On Prend γ =0.9 72
Q(s,a)
100

63
81

∧ ∧
Q( s, a ) ← r + γ max Q(δ (s,a),a' ) ) adroite
a'

← 0 + 0.9 max{63,81,100}} ^
9090 100 Q(s,a)
← 90
63
81

© J-D. ZUCKER LIP6

50

Convergence

➤ Théorème: convergence de l'algo Q-learning déterministe


^ ^
➤Soit Qn(s,a) l'hypothèse de Q(s,a) après la nième mise à jour.
➤Si chaque couple (état,action) est visité un nombre infiniment souvent, alors Qn(s,a)
converge vers Q(s,a) quand n tend vers l'infini.

➤ Démonstration ∆ n

≡ max Qn( s, a ) − Q( s, a )
s ,a

∧ ∧
Q n + 1( s, a ) − Q( s, a ) = ( r + γ max Qn( s' ,a')) - ( r + γ max Q( s' ,a' ))
a' a'
∧ ∧
Q n + 1( s, a ) − Q( s, a ) = γ max Qn ( s' ,a') − max Q( s' ,a' )
a' a'
∧ ∧
Q n + 1( s, a ) − Q( s, a ) ≤ γ max Qn( s' ,a') − Q( s' ,a' )
a'
∧ ∧
Q n + 1( s, a ) − Q( s, a ) ≤ γ max Qn( s' ' ),a' ) − Q( s' ' ,a' )
s ,a '

Q n + 1( s, a ) − Q( s, a ) ≤ γ ∆ n

© J-D. ZUCKER LIP6


51

Critères de gains espérés: cas non déterministe


➤ Horizon fini
 k 
E  ∑ rt  = r0 + r1 +...+ rk
 t =0 

➤ Horizon infini avec intérêt


 ∞ t 
E  ∑ γ rt  = E (r0 + γr1 + γ 2r2 + γ 3r3 +...)
 t =0 

➤ En moyenne
1 k 
lim E  ∑ rt 
k →∞  k t =0 
© J-D. ZUCKER LIP6

52

Récompenses et actions non déterministes

➤ e.g. au BackGammon: récompense dépend des dés

^
Pour chaque couple s, a initialisé la table Q(s,a) à zéro.
Pour l'état courant s
Répéter
Choisir une action a et l'exécuter
Réception d'une récompense immédiate r
Observer le nouvel état s'
∧ ∧  ∧ ∧ 
MAJ de Q n ( s, a ) ← Q n − 1( s, a ) + αn r ( s,a ) +γ max
a'
Q n-1( δ (s,a),a') ) −Q n −1( s ,a ) 
 

s <-- s'
erreur temporelle (TD error)

➤ Théorème de convergence (Watkins & Dayan 92) αn


1
= 1+ visites ( s ,a )
n
© J-D. ZUCKER LIP6
53

Temporal Difference Learning TD(λ)


ï Idée: ne pas mettre à jour que les successeurs ou prédécesseurs immédiats.

Q(1) ( st , at ) = rt + γ max Q( st + 1,a)
a


Q(2 ) ( st , at ) = rt + γrt + 1 + γ 2 max Q( st + 2,a)
a

...

Q(n ) ( st , at ) = rt + γrt + 1+...+ γ n max Q( st + n,a)
a

[ ]
Q(λ ) ( st , at ) = (1 − λ ) Q(1) ( st , at ) + λ Q(2 ) ( st , at ) + λ 2 Q(3) ( st , at ) +....

Q(λ ) ( st , at ) = rt + γ (1 − λ ) max Q( st,a) + λQ(λ ) ( st + 1, at + 1) 
 a 
© J-D. ZUCKER LIP6

54

TD /TP: le jeux de Tic-Tac-Toe

Soit
➤ Un damier à 9 cases

Donner

➤ Construire un programme qui apprenne à gagner

Approche
➤ a) un apprentissage par renforcement basé sur l'action

© J-D. ZUCKER LIP6


55

IV.1. Exemple illustratif du tic-tac-toe

Renforcement par différence temporelle (TD-learning [temporal difference])

On associe à chacune des 512 positions une valeur initiale égale à V(st=0)=0.5 (sauf pour
les positions perdantes 0. et gagnantes 1.).

On joue ensuite contre un opposant en choisissant l'action qui mène à la position de plus
haute récompense (pour laquelle V(s) est maximale) ou parfois on choisit
β) un autre coup, dit exploratoire.
aléatoirement (β

Après chaque coup non exploratoires on met à jour les valeurs:


V(st+1) := V(s t) + α [ (γγ=1) x max(V(δδ(st)) - V(s t)] (α
α fonct. décroissante)

==> converge vers une décision optimale dans chaque état

© J-D. ZUCKER LIP6

56

IV.2. Exemple illustratif du tic-tac-toe (suite)


Position de départ
a
Mouvement de
l'adversaire { MAJ
b

Notre
mouvement { c* c

Mouvement de
l'adversaire
{ d

Notre
mouvement
{ e* e

Mouvement de
l'adversaire
{ f MAJ

Notre
mouvement { g*

© J-D. ZUCKER LIP6


57

IV.3. Exemple illustratif du tic-tac-toe (suite)

α = 0.1
Mouvement de
l'adversaire
{ V(x) := 0.5 + 0.1 x [1. - 0.5]
Notre
mouvement
{ x

Mouvement de
l'adversaire { y
MAJ

V(z) = 1
Notre
mouvement { z* MAJ

Position
Positiongagnante
gagnante
ï L'état x passe d'une valeur de 0.5 à 0.55
ï Si l'adversaire joue toujours y dans la position x sa valeur ne cessera d'augmenter [m'me
si x est, dans l'absolu, une position perdante]
© J-D. ZUCKER LIP6

58

Résumé

➤ L'apprentissage par renforcement concerne les problèmes


d'apprentissage par des agents autonomes de Tâches où le but
est de maximiser les récompenses reçues.
➤ Le Q-learning est une forme d'apprentissage par renforcement
qui a des bonnes propriétés de convergence.
➤ Le Q-learning fait partie d'une famille plus large d'algorithme:
Temporal Difference Learning
➤ Lien entre l'Apprentissage par renforcement et les processus
décisionnels markovien (PDM ou MDP) et la programmation
dynamique.
➤ Renouveau actuel de l'apprentissage par renforcement...

© J-D. ZUCKER LIP6


59

Bibliographie

Apprentissage en général
Dietterich, T. (1990). Readings in Machine Learning. Morgan Kaufmann.
Langley. P. (1996). Elements of Machine Learning. Morgan Kaufmann.
Mitchell, T. (1998). Machine Learning. MacGraw Hill.
http://www.ai.univie.ac.at/oefai/ml/ml-resources.html

Apprentissage par renforcement


Samuel, A. (1967). Some studies in machine learning using the game of
checkers. IIó recent progress. IBM Journal on Research and
Development, (pp. 601-617).
Sutton, R. (1998). Introduction to Reinforcement Learning.
http://envy.cs.umass.edu/People/sutton/sutton.html

© J-D. ZUCKER LIP6

60

V. Conclusions

➤ Apprendre c'est chercher une fonction d'approximation:


➤recherche dans un espace d'hypothèses
➤ Différentes méthodes d'apprentissage emploient différentes techniques
de recherche
➤ Différentes représentations
➤numériques,
➤règles ou fonction logique,
➤cas,
➤polynômes, ...
➤ Différents algorithmes
➤Descente du gradient
➤Généralisation
➤Plus proches voisins
➤Renforcement temporel, ...
© J-D. ZUCKER LIP6
61

Exemple: TD-Gammon

Démarre avec un réseau aléatoire


Joue des millions de parties contre soi-même
Apprend une fonction d’évaluation

Donnerait le meilleur joueur de BackGammon du monde !


© J-D. ZUCKER LIP6

62

Bibliographie

Apprentissage en général
Dietterich, T. (1990). Readings in Machine Learning. Morgan Kaufmann.
Langley. P. (1996). Elements of Machine Learning. Morgan Kaufmann.
http://www.ai.univie.ac.at/oefai/ml/ml-resources.html

Apprentissage par renforcement


Samuel, A. (1967). Some studies in machine learning using the game of
checkers. IIó recent progress. IBM Journal on Research and
Development, (pp. 601-617).
Sutton, R. (1998). Introduction to Reinforcement Learning.
http://envy.cs.umass.edu/People/sutton/sutton.html

© J-D. ZUCKER LIP6

S-ar putea să vă placă și