SlideShare une entreprise Scribd logo
1  sur  96
Télécharger pour lire hors ligne
1
Apprentissage par
renforcement
Module « soft-computing »
deloor@enib.fr
P. De Loor - ENIB -
www.enib.fr/~deloor
2
Apprentissages
{ Supervisé
{ Symbolique : faits + induction
{ Connexioniste : entrées/sorties + optimisation
{ nécessite : Liste d’exemples
{ Evolutionniste
{ génération évolutionniste de “la solution” + sélection
+ croisement + mutation
{ nécessite : mesure de la “qualité” (fitness) d’une
solution
{ Renforcement
{ Essai/Erreur de la “meilleure prochaine action”
{ apprentissage d ’interaction
{ nécessite : “Récompense sur but ou echec”
3
Historique
{ Psychologues : [Thorndike 1911]
{ Animaux
{ État-action -> récompense ou punition
{ Apprentissage des associations état-
action
z Force de la récompense
z Fréquence de la récompense
{ Mathématiciens : [Bellman 1957]
{ Optimisation de stratégie de contrôle
{ Modèle probabiliste
4
La Carotte, le baton et le silence
environnement
Perception
Récompenses
Action
mémoire
5
Apprentissage par renforcement
environnement
Apprentissage par exploration
trouver la meilleure action
d ’après l ’expérience passée
optimiser les récompenses
récompense
ou
renforcement
but atteint ?
perception
actions
état
modification
selection
6
Apprentissage par renforcement
{ Apprentissage d’interactions avec
un environnement
{ Environnement pouvant être
dynamique
{ Pas d’exemples “tout fait”
{ Exploration / Exploitation
7
Exemple : Tic Tac Toe
{ Joueur parfait ne perd jamais
{ Joueur imparfait “pas logique”
z modèle parfais du joueur (minmax)
exclu
8
Apprendre le Tic-Tac-Toe
{ Pondérer les états du jeu
z valeur de l’état = récompense
z pondération initiale :
{ 1 pour trois croix alignées
{ 0 pour trois rond alignés
{ 0.5 ou aléatoire pour les autres
{ exploiter : aller vers les états de grande valeur
{ explorer : partir au hasard
{ apprendre : faire remonter un partie des valeurs de
l ’état courant vers les états précédents
9
Apprendre le Tic-Tac-Toe
0.5
Q=0.8
0.5
exploitation
exploration : aléatoire
0.8 Q’
apprentissage
Qt+1 = Qt + α(Qt’-Qt)
0.3
Ici c’est de l’apprentissage
par différence temporelle
Bootstrap : Prise en compte de la corrélation inter-états
l ’estimation de Q dépend de l ’estimation de Q’
10
Variables clés
Actions A (ai, aj …)
Renforcement
r (rk, rj ..)
π: stratégie
R : gain
Etats
S (sk, sj ..)
11
π : Stratégies(s)
{ Caractérise ce qu’il faut faire ? s->a
{ probabiliste :
z π(s,a) : probabilité de choix (dure/permissive)
{ déterministe :
z π(s) : action, pas une probabilité
{ π* optimale : permet d ’obtenir le plus de gains
z compromis court/long terme , infini ? épisode ?
z c ’est ce que l ’on cherche à apprendre
12
π : Stratégie(s)
{ exemple
Stratégie déterministe
actions
Sortie
10 points
état
Stratégie probabiliste
ou soft
13
R : le gain
• Pas de définition unique
{ Gain au bout d’un
certain temps
z Jeu chronométré
{ Gain au bout d’un
temps “infini”
{ Gain moyen
∑
+
=
+
+ =
+
+
+
=
T
t
i
i
T
t
t
t r
r
r
r
R
1
2
1 L
Gain cumulé sur horizon fini
Gain cumulé avec intérêt
∑
∞
+
=
+
+
+
+
+ =
+
+
=
1
1
3
2
2
1
t
k
k
t
k
t
t
t
t r
r
r
r
R γ
γ
γ L
Gain en moyenne
∑
+
=
−
=
T
t
i
i
t r
T
R
1
1
1
14
Influence de la définition du gain
K = 4 et γ=0.9
3 stratégies
+2
+10
+11
3 définitions de gain
∑
=
k
t
t
r
0
∑
∞
=0
t
t
t
r
γ ∑
=
∞
→
k
t
t
k r
k 0
1
lim
6 16 2
59
11
0
0 58.4
10
15
Le problème de l’exploration
Les machines à sous
16
Machine à sous à n bras
z un seul état
z un nombre de tirage fixés
z n bras : n actions a1…an , gain moyen Q(ai)
z chaque bras permet de gagner une somme r
distribuée aléatoirement (proba inconnue)
0000
1 n Proba pour 2 bras
0,1
a1
a2
gain
2 4
Q(a1)Q(a2)
17
Machine à sous à n bras
{ Explorer : jouer au pif
{ Exploiter : jouer le meilleur bras estimé
z Estimer l’utilité d’une action a (bras) ?
z Estimation possible seulement après qu’elle soit
choisie ka fois :
Gain estimé pour a =Qka(a) = r1+r2+……+rka
z si ka → ∞ alors Qka(a) -> Q(a)
ka
18
Définition récursive de Qk(a)
k
r
r
r
a
Q k
k
+
+
+
=
...
)
( 2
1
1
1
1
1
+
=
∑
+
=
+
k
r
Q
k
i i
k
]
[
*
1
1
1
1 k
k
k
k Q
r
k
Q
Q −
+
+
= +
+
]
.[
1 erreur
Q
Q k
k α
+
=
+
1
1 1
1
+
+
=
∑= +
+
k
r
r
Q
k
i t
i
k
k
Q
Voir page 46
19
Problèmes non stationnaires
{ Lorsque Q varie dans le temps
z privilégier les dernières expériences
z problème de convergences
∑=
−
−
+
−
=
k
i i
i
k
k
k r
Q
Q 1
0 )
1
(
)
1
( α
α
α
20
Bien apprendre : explorer/exploiter
{ Taux d’exploration : ε (ε-Greedy methods)
{ ε variable aléatoire (0≤ ε ≤1)
probabilité
{ valeur de ε ?
z apprentissage rapide du gain moyen mais moins performant en moyenne
versus
z apprentissage lent, prudent, performant à long terme
z si ε est toujours > 0 on parle de politique ε-soft
Jouer le meilleur « greedy action »
maxa(Q(a))
Explorer
ε
1-ε
21
Explorations plus fines
{ Softmax
z Dépend de Qt(ai)
z plus une action est “valable” plus elle a de chance
d’être choisie (distribution de Boltzman, fixer la
température ?)
τ→0 : greedy
∑ =
n
b
b
Q
a
Q
t
t
e
e
1
/
)
(
/
)
(
τ
τ
probabilité
de choisir « a »
parmi n actions τ→∞ : equiprobable
22
Explorations plus fines
{ Est-ce que l’estimation du gain des actions est pertinente
pour fixer la probabilité de choix ?
{ Qu’est ce qu’une bonne action -> référence/aux autres ?
{ Méthode des comparaisons de renforcement
z Dissocier “préférence” et “valeur” d’une action
z la préférence reflète la variation de la différence entre le gain
“moyen” r et celui de l’action concernée
z la probabilité de choix dépend de la préférence
]
[
)
(
)
(
1 t
t
t
t r
r
a
p
a
p −
+
=
+ β
∑ =
n
b
b
p
a
p
t
t
e
e
1
)
(
)
(
23
Explorations plus fines
{ Méthodes de poursuites
z définition récursive de la probabilité de choix de la
“greedy action a”
z pour les autres actions (b)
z doucement, la probabilité de choix de la meilleure
action tend vers 1.
)]
(
1
[
)
(
)
(
1 a
a
a t
t
t π
β
π
π −
+
=
+
)]
(
0
[
)
(
)
(
1 b
b
b t
t
t π
β
π
π −
+
=
+
24
Choix d’une méthode
{ Spécifique au problème
{ Explication sur cas simplifiés
z valeur moyenne des renforcements
z différences entre les valeurs moyennes
des renforcements
z variance des renforcements
25
L’apprentissage de π*
{ Apprendre le modèle de l’environnement.
z Quelles récompenses pour chaque état.
z Quels sont les états atteints pour chaque action.
z Problème : supervisé, complexe, interactions entre
états ignorées (état qui mène à l’état qui … donne
une récompense).
{ Apprendre avec des “fonctions d’utilité”
z La fonction d’utilité est à rapprocher du gain moyen
z Elle est liée à un état ou un couple état-action
z Elle correspond à une espérance de gain futur
26
Fonction d’utilité V(s) (s->ℜ)
{ V(s) Gains que l’on peut espérer à partir de s
{ V*(s) : valeur optimale (inconnue)
{ Vπ(s): valeur pour une stratégie π
z Exemple pour un gain avec intérêt et horizon infini :
{ }
s
s
R
E
s
V t
t =
= π
π
)
(
⎭
⎬
⎫
⎩
⎨
⎧
=
= ∑
∞
=
+
+
0
1
)
(
k
t
k
t
k
s
s
r
E
s
V γ
π
π
27
Exemple
{ L ’environnement
Renforcements
- bords : -1
- A->A ’ : 10
- B->B ’ : 5
(pour toute action)
- ailleurs : 0
A B
A’
B’
actions +5
+10
28
Exemple Vπ avec π probabiliste
{ stratégie π : probabilité de choix des 4 directions
identique partout π(si,droite) = π(si,haut) = … =
0.25
{ remise : γ=0.9 Vπ
A B
A’
B’
8.8 5.3
1.5
4.4 1.5
3.3
3.0 2.3 1.9 0.5
0.1 0.7 0.7 0.4 -0.4
-1 -0.4 -0.4 -0.6 -1.2
-2
-1.4
-1.2
-1.3
-1.9
+5
+10
29
Gain et stratégie optimale
{ V* : gains optimums pour la stratégie optimale π*
V* π*
24.4 19.4
19.8
22 17.5
22
22 19.8 17.8 16
17.8 19.8 17.8 16 14.4
16 17.8 16 14.4 13
11.7
13
14.4
16
14.4
+10
+5 +5
+10
30
Fonction d’utilité Q
{ Comme V mais …
z sur une action : Q(a) : a -> ℜ
z sur un couple état/action : Q(s,a) : (s,a) -> ℜ
z Q(s,a) : gains espérés en exécutant a à partir de s.
{ Q* valeur optimale (inconnue)
{ Qπ(s,a) valeur pour une politique π
z Exemple pour un gain avec intérêt et horizon infini :
⎭
⎬
⎫
⎩
⎨
⎧
=
=
= ∑
∞
=
+
+
0
1 ,
)
,
(
k
k
t
k
a
at
s
st
r
E
a
s
Q γ
π
π
31
Chercher π*
{ Hiérarchie entre stratégies
{ La stratégie optimale est supérieure à
toute les autres
{ Il en existe toujours une dans les
processus Markoviens
s
s
V
s
V
ssi ∀
≥
≥ ),
(
'
)
(
' π
π
π
π
32
Processus Markovien
{ Un état suffit à résumer toute l’histoire du
système
{ Une décision peut être prise juste en
observant cet état
{ Exemple : situation d’un jeu de dame à
un instant donné.
33
Chercher π*
{ Connaissance de la dynamique de l ’environnement :
z pas besoin de simulation.
z programmation dynamique : corrélation entre les états (bootstrap)
{ Sans connaissance de la dynamique de l ’environnement :
z simuler (contrôler) et apprendre
{ sans « bootstrap » : Méthode de Monté-Carlo
{ avec « bootstrap » : Temporal Difference Learning
z identification « off-policy »
{ utiliser une politique différente de celle que l ’on recherche
{ permet de rechercher une politique optimale et « dure »
z identification « on-policy »
{ utiliser la politique que l ’on optimise durant l ’optimisation
{ oblige à utiliser des politiques « molles » (scrutation)
34
Programmation dynamique
{ Connaissance de la dynamique de
l ’environnement.
{ MDP (Markov Decision Process),
{ Apprentissage optimal
z équation de Bellman
z V peut être calculé
z V* existe et peut être calculé
z π* existent et peuvent être calculées
a
ss'
P a
ss'
R
Probabilité de passage de s à s’
par l ’action a
Renforcement lors du passage de
s à s’ par a
35
Programmation dynamique : Principe
π0 Vπ0 π1 Vπ1 π*
aléatoire
a
ss'
P a
ss'
R
E A E
E : évaluation
A : amélioration
Utilisation de la corrélation entre états -> bootstrap
36
V*, Q* et a* formellement
V*(s) est la meilleure utilité trouvée parmis les stratégies
s
s
V
s
V ∀
= ),
(
max
)
(
* π
π
Partant de st pour une action a menant à s’, le gain espéré est
[ ]
)
'
(
*
' s
V
R s
st
γ
+
Corrélation inter-état
a
s
st
P '
L’action a peut mener à différents états s’ avec une probabilité
a*t est l’action qui permettra d’obtenir la meilleure utilité
[ ]
)
'
(
*
'
'
'
*
s
V
R
P
ArgMax
a s
s
s
a
s
s
a
t t
t
γ
+
= ∑
37
V*, Q* et a* formellement
Si l’on travaille avec Q
a
et
s
a
s
Q
a
s
Q ∀
∀
= ),
,
(
max
)
,
(
* π
π
)
,
(
*
*
a
s
Q
ArgMax
a t
a
t =
38
Evaluation d’une stratégie probabiliste
{ }
s
s
R
E
s
V t
t =
= π
π
)
(
⎭
⎬
⎫
⎩
⎨
⎧
=
= +
+
∞
=
∑ s
s
r
E t
k
t
k
k
1
0
γ
π
⎭
⎬
⎫
⎩
⎨
⎧
=
+
= +
+
∞
=
+ ∑ s
s
r
r
E t
k
t
k
k
t 2
0
1 γ
γ
π
⎥
⎦
⎤
⎢
⎣
⎡
⎭
⎬
⎫
⎩
⎨
⎧
=
+
= +
+
+
∞
=
∑
∑ ∑ '
)
,
( 1
2
0
'
'
' s
s
r
E
R
P
a
s t
k
t
k
k
a
ss
a s
a
ss γ
γ
π π
[ ]
)
'
(
)
,
( '
'
' s
V
R
P
a
s a
ss
a s
a
ss
π
γ
π +
= ∑ ∑
Vπ(s) peut être calculé à partir d’une estimation de Vπ(s’)
(équation de Bellman)
39
Evaluation d’une stratégie probabiliste
{ On peut approximer itérativement V
{ Point fixe :
{ Stratégie déterministe :
z Plus de somme sur a, car a est π(s)
{ }
s
s
s
V
r
E
s
V t
t
k
t
k =
+
= +
+
+ )
(
)
( 1
1
1 γ
π
π
V
Vk =
[ ]
)
'
(
)
,
(
)
( '
'
'
1 s
V
R
P
a
s
s
V k
a
ss
a s
a
ss
k
π
γ
π +
= ∑ ∑
+
[ ]
)
'
(
)
( )
(
'
'
)
(
'
1 s
V
R
P
s
V k
s
ss
s
s
ss
k
π
π
π
γ
+
= ∑
+
40
La meilleure action : vers une stratégie
déterministe
)
,
(
)
( a
s
Q
ArgMax
s
a
π
π =
{ }
a
a
s
s
s
V
r
E
ArgMax t
t
t
t
a
=
=
+
= +
+ ,
)
( 1
1
π
π γ
[ ]
)
'
(
'
'
' s
V
R
P
ArgMax a
ss
s
a
ss
a
π
γ
+
= ∑
41
Programmation dynamique
Modèle de l ’environnement
a
ss'
P a
ss'
R
)]
'
(
[
)
,
(
)
(
'
s
V
a
s
s
V
s
a
π
π
π
π
γ
π +
= ∑
∑ (s)
ss'
(s)
ss' R
P
πn π0 aléatoire
itérations
stabilisation : Vπ
evaluation de la stratégie
« bootstrap »
amélioration de la stratégie
)]
'
(
[
max
arg
)
(
'
s
V
s a
s
a
a
π
γ
π +
= ∑ ss'
ss' R
P
stabilisation : V*, π*
42
Programmation dynamique, l ’algo
complet (stratégie déterministe)
--------------------------------------------------------------
1.Initialization
V(s) ∈ℜ, π(s) ∈A(s) arbitrairement pour tout s∈S
--------------------------------------------------------------
2. Evaluation de la stratégie
Repeat
∆←0
For each s∈S
v←V(s)
V(s) ←
∆←max(∆,|v-V(s)|)
until ∆<θ (a small positive number)
-------------------------------------------------------------
3. Amelioration de la stratégie
policy-stable←true
For each s∈S
b← π(s)
π(s) ← arg maxa
if b≠ π(s) , then policy-stable ← false
If policy-stable, then stop; else go to 2
)]
'
(
[
'
s
V
s
γ
π
π
+
∑ (s)
ss'
(s)
ss' R
P
)]
'
(
[
'
s
V
a
s
a
γ
+
∑ ss'
ss' R
P
Bootstrapping :
Corrélation entre états
43
Quand l’environnement est inconnu
{ Différents algorithmes
{ Doivent effectuer 2 fonctions :
z Evaluation (prévision)
{ bootstrap ou moyenne ou les deux
z Contrôle (simulation) en apprenant
{ implémentation réelle
44
Méthode de Monte-Carlo
{ Plus de connaissance de
{ Estimation de l’espérance de gain
par expérience et moyennage
{ Plus de corrélation entre états
z recherche plus lente
a
ss'
P a
ss'
R
{ }
s
s
R
E
s
V t
t =
= π
π
)
(
45
Méthodes de Monte Carlo : off-policy
Choix aléatoire d ’une stratégie π
et de Q.
Jouer l ’épisode
πn
nouveau Q
Contrôle du système
évaluation « soft »
de la stratégie
(sur un épisode)
Q(s,a) = moyenne des
renforcements (par s,a)
π(s) = arg maxa Q(s,a) amélioration de la stratégie
Sans arrêt variantes : amélioration de l ’exploration
46
Temporal-Difference ou TD-
Learning
{ Prise en compte de la corrélation inter-état de la
programmation dynamique = plus rapide
{ Calcul itératif de la fonction d’utilité :
{ V(s) ←V(s)+α[Rt-V(s))]
{ Qk+1= Qk+ α[erreur]
{ le calcul partiel des méthodes de MC (moins lourd)
{ naturellement en-ligne
{ pas de preuves de convergence mais fonctionne dans
les faits
47
Evaluer l’utilité itérativement, exemple
pour Q
ka
r
r
r
a
Q ka
t
+
+
+
=
...
)
( 2
1
1
1
1
1
+
=
∑
+
=
+
k
r
Q
k
i i
k
]
[
*
1
1
1
1 k
k
k
k Q
r
k
Q
Q −
+
+
= +
+
1
1 1
1
+
+
=
∑= +
+
k
r
r
Q
k
i t
i
k
k
Q
( )
1
1
)
*
)
1
(
*
)
1
(
*
(
)
1
(
*
)
(
*
1
*
)
1
(
*
* 1
1
1 1
1
+
+
+
+
−
+
+
=
+
+
+
=
+
+
= +
+
= +
+
∑
k
r
k
Q
k
Q
k
Q
k
k
k
r
k
k
Q
k
k
k
r
r
k t
k
k
k
t
k
k
i t
i
k
Q
1
1
)
*
)
1
(
*
( 1
1
+
+
+
+
−
+
= +
+
k
r
k
Q
k
Q
k
Q
Q t
k
k
k
k
]
.[
1 erreur
Q
Q k
k α
+
=
+
48
Programmation dynamique -> TD
learning
{ Programmation dynamique :
{ TD learning : approximation
{ V(s) ←V(s)+α[r+γV(s’)-V(s)]
{ Idem pour Q :
{ Q(st,at) = Q(st,at)+α*[rt+1+γ*Q(st+1,a)-Q(st,at)]
{ }
s
s
s
V
r
E
s
V t
t
k
t
k =
+
= +
+
+ )
(
)
( 1
1
1 γ
π
Interêt du aux horizon non bornés
+ Inter-corrélation
49
Sarsa : On-Policy (st, at, rt+1, st+1, at+1)
Apprentisage de Q(s,a)
Choix aléatoire : Q et s
choix de a par Q (soft)
D ’après Q (soft car « on-policy »)
appliquer a, observer r et s ’
choisir a’ (d ’après Q et s’)
Q(s,a) = Q(s,a) + α[r+γ Q(s’,a’)-Q(s,a)]
s = s’ ; a = a’
Contrôle du système
Amélioration de la stratégie
Sans arrêt
50
Q-learning : off-Policy
Choix aléatoire : Q et s
D ’après Q (rendu « soft» temporairement)
choisir a, observer r et s ’
Q(s,a) = Q(s,a) + α[r+γ maxa’ Q(s’,a’)-Q(s,a)]
s = s’
Contrôle du système
amélioration de la stratégie
Pas la stratégie
51
Performance :
Q-learning/Sarsa
{ Très difficile
z Problème dépendant
52
Actor-Critic Methods
On-Policy
Politique
Environnement
V
acteur
critique
erreur
correction
δt+1 = rt+1- (V(st) - γV(st+1))
États
st
st+1
rt+1 renforcement
Exemple : softmax (+ou- sur proba action)
renforcement espéré
action
53
R-Learning
{ Cas particulier de problèmes
z Apprentissage continu (sans fin)
z Mais sans remise (pas de γ)
{ Pas de sommation des remises
{ Prise en compte de la dérivée de
l ’erreur
54
TD(λ) : aspects temporels et
environnements dynamiques
Monté-Carlo TD(0) : sarsa
épisode
Optimisation :
Moyenne des ri
épisode
t0
t1
t2
t3
t4
t0
t1
t2
..
Optimisations :
ri + prévision précédente
Rapide/moins précis
Seul l ’instant précédent
est considéré
Lent/précis (si env pas dyn)
autant d ’importance
à tous les instants
55
TD(λ) : SARSA(λ), Q(λ),
t0
t1
t2
t3
t
Optimisation sur
tous les r précédents, mais
pondération sur les
Q(s,a) les
plus récents
instant présent
4
56
e(t) trace d ’elligibilité d ’un état (ou
état-action)
• Sorte de facteur d’oubli
• Deux possibilités : accumulation ou replacement
accumulation replacement
Passages
par l’état
e(t)
1
0
57
SARSA(λ) : l ’algo complet (en
cadeau gratuit)
--------------------------------------------------------------
Initialize Q(s,a) arbitrarily and e(s,a)=0, for all s,a
Repeat (for each episode)
Initialize s,a
Repeat (for each step of episode)
Take action a, observe r, s’
Choose a’ from s’ using policy derived from Q (e.g., ε-greedy)
δ ← r + γQ(s,a ’) - Q(s,a)
e(s,a) ←e(s,a)+1
For all s, a:
Q(s,a) ← Q(s,a) + α δ e(s,a)
e(s,a) ← γλe(s,a)
s ←s’; a ←a’
until s is terminal
Ça c’est intéressant
accumulation
58
Sarsa(λ) sur un labyrinthe
{ Les premiers pas sont utilisés pour
évaluer Q
*
* *
Sarsa(λ)
chemin Sarsa
59
TD(λ)
{ Autres algorithmes
z Q(λ) (2 versions)
z « Elligibility Traces for Actor-Critic Methods »
z Ecrêtage de e (états trop visités)
{ Implémentation
z assez lourde (mémoire+temps)
z heuristiques bidouillantes
z facilement distribuable
60
Généralisation et approximation
{ Trop de données
z états
z Actions
{ Regrouper
z généraliser
z en apprenant
61
Généralisation
{ Fonction-Valeur dépend de
paramètres
{
{ Bien moins de paramètres que
d ’états
{ descente de gradient :
{ en apprentissage :
) (
t V
θ
r
[ ]2
1 )
(
)
(
2
1
t
t
t
t
t s
V
s
V
t
−
∇
−
=
+
π
θ
α
θ
θ r
r
r
[ ] )
(
)
(
1 t
t
t
t
t
t
t s
V
s
V
v
t
θ
α
θ
θ r
r
r
∇
−
+
=
+
vt : approximation de Vπ(st)
62
Descente de gradient Principe
Vπ ou estimation
erreur d(erreur)
dt
Mise à jour
θ
F (S, θ)
V
S
θ
63
Deux méthodes éprouvées
{ Réseaux de Neurones Artificiels
{ Méthodes linéaires
θ
V
S
s
T
s
t s
V φ
θ
r
r
=
)
(
θφ V
S
s
t s
V
t
φ
θ
r
=
∇ )
(
64
Méthodes linéaires
{ Rapport qualité-prix !!
{ φ : caractéristiques des états
z tache critique
{ exemple coarse coding
z chaque cercle est un φi (taille de θ = nb
cercles)
0
1
2
3
4
φ0=1
φn=0
S est continu (2D)
65
Méthodes linéaires
{ Tile coding (carrelage)
{ Radial Basis Functions
z φ n ’est pas binaire
z méthode de
structuration
par apprentissage
carrés
logarithmes
...
⎟
⎟
⎠
⎞
⎜
⎜
⎝
⎛ −
= 2
2
2
exp
)
(
i
s
ci
s
i
σ
φ
66
Méthodes linéaires
{ La voiture
x
x
10 grilles décalées
Goal
Actions : accélèration avant(1), arrière(-1), nulle(0)
xt+1=bound[xt+xt+1]
xt+1=bound[xt+0.001*at-0.0025*cos(3xt)] (bien non linéaire)
67
Résultats apprentissage et
généralisation
{ Par replacement d’éligibilité
800 λ=1
λ=0.99
λ=0
λ=0.9
λ=0.4
400
α
nb pas pour réussir
68
Pour en savoir plus : en annexe
{ Karneva coding
{ apprentissage de planification
{ Dyna-Q algorithme
{ Prioritized Sweeping
z Manœuvres dans un labyrinthe
{ 14 400 états potentiels * 4 actions
{ pas tous scrutés bêtement
69
Les problèmes à résoudre
{ Nb couples état-action
{ Convergence
{ Hiérarchisation des actions
{ Sémantisation des actions
¾ Systèmes de classifieurs (C.Buche).
70
Bibliographie
{ Thorndike, Animal Intelligence, 1911.
{ Bellman, Dynamic Programming, 1957.
{ Richard S.Sutton and Andrew G.Barto, Reinforcement
Learning, MIT Press, 2000.
{ Cédric Sanza, Evolution d ’entités virtuelles
cooperatives par système de classifieurs. These de
doctorat de l ’université de Toulouse, 2001.
{ Apprentissage automatique et évolution artificielle,
revue extraction des connaissances et apprentissage,
Volume1, n°3, éditions hermes, 2001.
{ Algorithmes d ’apprentissages et applications, revue
d ’intelligence artificielle, volume 14, n°3, édition hermes,
2000.
{ Antoine Cornuéjols et Laurent Miclet, Apprentissage
artificiel, concepts et algorithmes, éditions Eyrolles,
2002.
71
Annexes
72
Rappels
{ Approche supervisée : retour instructif,
indique la bonne solution.
{ Renforcement : retour évaluatif, on ne
sait pas quelle est la bonne
{ Il faut une exploration “active”
{ Plein de stratégies : exemple de la
machine à sous à n bras
73
Apprentissage supervisé
Modèle à paramétrer
RdN,
Exemples tout prêts
entrées résultat
entrées résultat
Algorithme
d’apprentissage
paramètres
74
Sarsa : estimation des Q(s,a) On-
Policy TD
{ On évaluent tous les Q (s,a)
pendant la simulation, on en déduit
une politique en même temps...
75
Avantage de Sarsa sur MC
{ Si il y a une impasse sarsa diminue
le Q(s,a) qui ne sera bientôt plus
choisi car sarsa apprend pendant
l ’épisode
{ MC resterait dans l ’impasse
{ exemple 6.4 de Reinforcement
learning An introduction (Sutton
2000)
76
Propriété markovienne
{ Distribution de proba de st+1 et rt+1
{ Pr{st+1 = s’, rt+1=r | st,at,rt, st-1,…r1,s0,a0}
(1)
{ Si elle ne dépend que de l’instant présent
{ Pr{st+1 = s’, rt+1=r | st,at}
(2)
{ les états ont une propriété markovienne si
(1) = (2)
{ ?
77
Programmation dynamique
{ Optimisations
z algorithme d ’itération des valeurs
{ calcul de Vk+1(s) (et non d ’évaluation des
politiques)
{ puis une seule opération pour obtenir la
politique optimale
z Programmation dynamique asynchrone
{ pour les gros espaces d ’état
{ on ne calcul Vk+1(s) que pour un état à
chaque fois
{ quasi-équivalence asymptotique
78
Programmation Dynamique
{ Calculs coûteux (mémoire/temps)
{ Dynamique de l ’environnement
{ Généralisation aux politiques probabilistes
choix de plusieurs actions par état défini par
π(s,a)
{ Temps polynomial (n états et m actions)
z alors qu ’il y a mn solutions potentielles
79
Méthode de Monte-Carlo: l ’algo
complet
--------------------------------------------------------------
1.Initialization
for all s∈S, a∈A(s) :
Q(s,a) ←arbitraire
Returns(s,a) ← liste vide
π ← une politique arbitraire ε-soft policy
--------------------------------------------------------------
2. Evaluation de la politique
Repeat forever
(a) Generate an episode using π
(b) for each pair s,a appearing in the episode:
R ←return following the first occurrence of s,a
Append R to Returns(s,a)
Q(s,a) ← average(Returns(s,a))
(c) for each s in the episode:
a* ← arg maxa Q(s,a)
For all a ∈A(s) :
π(s,a) ←
1-ε+ ε/|A(s)| if a=a*
ε/|A(s)| if a≠a*
80
Principe des algorithmes de type
TD-learning
{ Estimation d ’une politique Vπ :
--------------------------------------------------------------
1.Initialisation : V(s) arbitraire, π poitique à évaluer
Repeat(for each episode) :
Initialize s
Repeat(for each step of episode):
a← action given by π for s
Take action a; observe reward r and next state s’
V(s) ←V(s)+α[r+γV(s’)-V(s)]
s ←s’
until s is terminal
La prévision est faite à partir d ’une prévision
81
Annexe : Définition récursive de Q(a)
ka
r
r
r
a
Q ka
t
+
+
+
=
...
)
( 2
1
1
1
1
1
+
=
∑
+
=
+
k
r
Q
k
i i
k
]
[
*
1
1
1
1 k
k
k
k Q
r
k
Q
Q −
+
+
= +
+
1
1 1
1
+
+
=
∑= +
+
k
r
r
Q
k
i t
i
k
k
Q
( )
1
1
)
*
)
1
(
*
)
1
(
*
(
)
1
(
*
)
(
*
1
*
)
1
(
*
* 1
1
1 1
1
+
+
+
+
−
+
+
=
+
+
+
=
+
+
= +
+
= +
+
∑
k
r
k
Q
k
Q
k
Q
k
k
k
r
k
k
Q
k
k
k
r
r
k t
k
k
k
t
k
k
i t
i
k
Q
1
1
)
*
)
1
(
*
( 1
1
+
+
+
+
−
+
= +
+
k
r
k
Q
k
Q
k
Q
Q t
k
k
k
k
]
.[
1 erreur
Q
Q k
k α
+
=
+
82
Méthodes linéaires
{ complexité≈
{ Kanerva coding
z séparation dimension de S/complexité de V
z plus de dimension : codage binaire des états
z distance de hamming pour les regroupements
z travaux en cours
e
S
de
dimension
nb
83
Apprentissage et Généralisation
{ Etudes expérimentales : algo de
type Sarsa et Q-learning plus
stables
z Linear gradient-descent Sarsa(λ)
z Linear gradient-descent Q(λ)
{ RDN : à voir, il me semble que
c ’est très chaud de faire bosser en
parallèle deux algos comme ça.
84
Planification et apprentissage
{ Planifier
z i.a. classique : modèle + cognition
z ici : améliorer Q (ou V) par
l ’évaluation d ’un modèle + simulation
du modèle
V, politique
experience
model
planification action
RL
Apprentissage du modèle
85
Modèle déterministe
{ Pour un couple (s,a) donné le
renforcement est toujours le même
z Labyrinthe
{ Dyna-Q algorithme
Q-learning
Environnement
Q
Model-learning Modèle env
=
mémoire (s,a,s’,r)
Simulation
aléatoire
parmi les situations
mémorisées
Q-learning ’
temps réel temps simulé
86
Modèle en évolution
{ heuristique de Dyna-Q+
z si un couple(s,a) n ’a pas été rencontré
depuis longtemps, lui attribuer un
renforcement espéré + grand pour
obliger le système à explorer
87
Prioritized Sweeping
{ Problème de Dyna-Q
z les premiers pas, suivant une modification de
l ’environnement, sont très nuls
z peu de chance de tomber dessus
{ Favoriser l ’amélioration de Q .
z Scruter les états-actions menant aux états dont
les valeurs ont le plus changées.
z Priorité aux états les plus changeant
z A la fois dans le Q-learning et le modèle
learning
88
Prioritized Sweeping
{ Performance facteur 5 à 10 par
rapport au Dyna-Q
{ Manœuvres dans un labyrinthe
z 14 400 états potentiels * 4 actions
z pas tous scrutés bêtement
{ Travaux en cours
89
Maximiser quoi ?
{ Maximiser les gains à long terme
z la meilleure action “maintenant” n’est pas
forcément la meilleure à long terme
z Ne pas maximiser les renforcements
“immédiats” !!!
{ Apprentissage par épisodes (T)
z Maximiser Rt = rt+1 + rt+2 +… +rT
z exemple : sortie d ’un labyrinthe
90
Le long terme
{ Apprentissage continu : pas de fin
z la somme des renforcements peut croître
indéfiniment quelque soit le choix
z comment savoir que l’on est sur la bonne voie
?
z Pondérer le long terme
z Rt = rt+1 + γrt+2 + γ2rt+3 +…
z 0≤γ≤1 : remise (discount)
91
Système de classifieurs
1010 01
capteurs
environnement
#010:01 28
#0##:11 12
101#:01 42
#0#0:11 11
01#1:10 12
10#1:00 25
AG
M (Match set)
#010:01 28
#0##:11 12
101#:01 42
#0#0:11 11
#010:01 28
101#:01 42
A (Action set)
A-1
renforcement interne
effecteurs
action
état
roulette
récompense attendue
rétribution
éventuelle
92
Renforcement des ZCS : Algorithm « Bucket
Brigade »
environnement
sceau B
#010:01 28
101#:01 42
A
A-1
rétribution
éventuelle
#010:01 25.2
101#:01 37.8
A
2.8+4.2=7
##10:11 5
11##:11 8
#11#:11 9
A-1
##10:11 5.7
11##:11 9
#11#:11 10
Prélèvement
d ’un pourcentage br (taxe)
(exemple 10%)
taux d ’apprentissage
#010:01 27.2
101#:01 39.8
A
renforcement interne
taux de remise
Variante pour convergence : diminution des poids des classifieurs de M-A
93
ZCS
z privilégie les règles rapportant plus
z élimine les autres (oubli = surprise = « covering » = pif)
z quelle que soit leur « précision »
z n ’apprend que des environnements
markovien
Perception états
Woods1 : markovien Woods100 : non markovien
94
Environnement non markovien : renforcer
l ’historique : ZCSM
{ Codage d ’une règle
#0101, 01# : 10, #1#
identification état interne
modification état interne
identification capteurs action
95
Préserver les classifieurs précis :
XCS
{ Privilégier les règles les plus
« préçises »
{ Une règle #010:01
z + 3 attributs
{ prédiction (de rétribution) : utilisé pour la
sélection (M->A)
{ erreur de prédiction
{ fitness (qualité/précision) : utilisé par
l ’AG pour la reproduction (faite sur A
(niche))
z mise à jour : Q-learning
96
Systèmes de classifieurs XCS
{ Apprentissage
z Prédiction : pour toutes les régles de l ’ensemble M (Match set)
z Définition de l ’ensemble A (roulette ou autre d ’après P(ai))
z Application de l ’action et réception de la rétribution P
z Pour tous les éléments de A, mise à jour de la prédiction :
p = p + β.(P-p) [0<β<1 : taux d ’apprentissage]
z Mise à jour de l ’erreur de prédiction :
{ e = e+ β.(|P-p|-e)
z Mise à jour de la fitness :
{ F = F + β.(k-F) [k fonction décroissante de e (e : F )]
( )
∑
∑
=
i
i
i
i
F
F
P
a
P
.

Contenu connexe

Dernier

firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirstjob4
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...Institut de l'Elevage - Idele
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...Institut de l'Elevage - Idele
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageInstitut de l'Elevage - Idele
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...Institut de l'Elevage - Idele
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéInstitut de l'Elevage - Idele
 
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Ville de Châteauguay
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...Institut de l'Elevage - Idele
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesInstitut de l'Elevage - Idele
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusInstitut de l'Elevage - Idele
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de planchermansouriahlam
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestionyakinekaidouchi1
 
optimisation logistique MLT_231102_155827.pdf
optimisation logistique  MLT_231102_155827.pdfoptimisation logistique  MLT_231102_155827.pdf
optimisation logistique MLT_231102_155827.pdfSoukainaMounawir
 
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...Institut de l'Elevage - Idele
 

Dernier (15)

firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdf
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
 
JTC 2024 Bâtiment et Photovoltaïque.pdf
JTC 2024  Bâtiment et Photovoltaïque.pdfJTC 2024  Bâtiment et Photovoltaïque.pdf
JTC 2024 Bâtiment et Photovoltaïque.pdf
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversité
 
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentes
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de plancher
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestion
 
optimisation logistique MLT_231102_155827.pdf
optimisation logistique  MLT_231102_155827.pdfoptimisation logistique  MLT_231102_155827.pdf
optimisation logistique MLT_231102_155827.pdf
 
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
 

En vedette

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

En vedette (20)

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 

Apprentissage_Renforcement_2004.pdf

  • 1. 1 Apprentissage par renforcement Module « soft-computing » deloor@enib.fr P. De Loor - ENIB - www.enib.fr/~deloor
  • 2. 2 Apprentissages { Supervisé { Symbolique : faits + induction { Connexioniste : entrées/sorties + optimisation { nécessite : Liste d’exemples { Evolutionniste { génération évolutionniste de “la solution” + sélection + croisement + mutation { nécessite : mesure de la “qualité” (fitness) d’une solution { Renforcement { Essai/Erreur de la “meilleure prochaine action” { apprentissage d ’interaction { nécessite : “Récompense sur but ou echec”
  • 3. 3 Historique { Psychologues : [Thorndike 1911] { Animaux { État-action -> récompense ou punition { Apprentissage des associations état- action z Force de la récompense z Fréquence de la récompense { Mathématiciens : [Bellman 1957] { Optimisation de stratégie de contrôle { Modèle probabiliste
  • 4. 4 La Carotte, le baton et le silence environnement Perception Récompenses Action mémoire
  • 5. 5 Apprentissage par renforcement environnement Apprentissage par exploration trouver la meilleure action d ’après l ’expérience passée optimiser les récompenses récompense ou renforcement but atteint ? perception actions état modification selection
  • 6. 6 Apprentissage par renforcement { Apprentissage d’interactions avec un environnement { Environnement pouvant être dynamique { Pas d’exemples “tout fait” { Exploration / Exploitation
  • 7. 7 Exemple : Tic Tac Toe { Joueur parfait ne perd jamais { Joueur imparfait “pas logique” z modèle parfais du joueur (minmax) exclu
  • 8. 8 Apprendre le Tic-Tac-Toe { Pondérer les états du jeu z valeur de l’état = récompense z pondération initiale : { 1 pour trois croix alignées { 0 pour trois rond alignés { 0.5 ou aléatoire pour les autres { exploiter : aller vers les états de grande valeur { explorer : partir au hasard { apprendre : faire remonter un partie des valeurs de l ’état courant vers les états précédents
  • 9. 9 Apprendre le Tic-Tac-Toe 0.5 Q=0.8 0.5 exploitation exploration : aléatoire 0.8 Q’ apprentissage Qt+1 = Qt + α(Qt’-Qt) 0.3 Ici c’est de l’apprentissage par différence temporelle Bootstrap : Prise en compte de la corrélation inter-états l ’estimation de Q dépend de l ’estimation de Q’
  • 10. 10 Variables clés Actions A (ai, aj …) Renforcement r (rk, rj ..) π: stratégie R : gain Etats S (sk, sj ..)
  • 11. 11 π : Stratégies(s) { Caractérise ce qu’il faut faire ? s->a { probabiliste : z π(s,a) : probabilité de choix (dure/permissive) { déterministe : z π(s) : action, pas une probabilité { π* optimale : permet d ’obtenir le plus de gains z compromis court/long terme , infini ? épisode ? z c ’est ce que l ’on cherche à apprendre
  • 12. 12 π : Stratégie(s) { exemple Stratégie déterministe actions Sortie 10 points état Stratégie probabiliste ou soft
  • 13. 13 R : le gain • Pas de définition unique { Gain au bout d’un certain temps z Jeu chronométré { Gain au bout d’un temps “infini” { Gain moyen ∑ + = + + = + + + = T t i i T t t t r r r r R 1 2 1 L Gain cumulé sur horizon fini Gain cumulé avec intérêt ∑ ∞ + = + + + + + = + + = 1 1 3 2 2 1 t k k t k t t t t r r r r R γ γ γ L Gain en moyenne ∑ + = − = T t i i t r T R 1 1 1
  • 14. 14 Influence de la définition du gain K = 4 et γ=0.9 3 stratégies +2 +10 +11 3 définitions de gain ∑ = k t t r 0 ∑ ∞ =0 t t t r γ ∑ = ∞ → k t t k r k 0 1 lim 6 16 2 59 11 0 0 58.4 10
  • 15. 15 Le problème de l’exploration Les machines à sous
  • 16. 16 Machine à sous à n bras z un seul état z un nombre de tirage fixés z n bras : n actions a1…an , gain moyen Q(ai) z chaque bras permet de gagner une somme r distribuée aléatoirement (proba inconnue) 0000 1 n Proba pour 2 bras 0,1 a1 a2 gain 2 4 Q(a1)Q(a2)
  • 17. 17 Machine à sous à n bras { Explorer : jouer au pif { Exploiter : jouer le meilleur bras estimé z Estimer l’utilité d’une action a (bras) ? z Estimation possible seulement après qu’elle soit choisie ka fois : Gain estimé pour a =Qka(a) = r1+r2+……+rka z si ka → ∞ alors Qka(a) -> Q(a) ka
  • 18. 18 Définition récursive de Qk(a) k r r r a Q k k + + + = ... ) ( 2 1 1 1 1 1 + = ∑ + = + k r Q k i i k ] [ * 1 1 1 1 k k k k Q r k Q Q − + + = + + ] .[ 1 erreur Q Q k k α + = + 1 1 1 1 + + = ∑= + + k r r Q k i t i k k Q Voir page 46
  • 19. 19 Problèmes non stationnaires { Lorsque Q varie dans le temps z privilégier les dernières expériences z problème de convergences ∑= − − + − = k i i i k k k r Q Q 1 0 ) 1 ( ) 1 ( α α α
  • 20. 20 Bien apprendre : explorer/exploiter { Taux d’exploration : ε (ε-Greedy methods) { ε variable aléatoire (0≤ ε ≤1) probabilité { valeur de ε ? z apprentissage rapide du gain moyen mais moins performant en moyenne versus z apprentissage lent, prudent, performant à long terme z si ε est toujours > 0 on parle de politique ε-soft Jouer le meilleur « greedy action » maxa(Q(a)) Explorer ε 1-ε
  • 21. 21 Explorations plus fines { Softmax z Dépend de Qt(ai) z plus une action est “valable” plus elle a de chance d’être choisie (distribution de Boltzman, fixer la température ?) τ→0 : greedy ∑ = n b b Q a Q t t e e 1 / ) ( / ) ( τ τ probabilité de choisir « a » parmi n actions τ→∞ : equiprobable
  • 22. 22 Explorations plus fines { Est-ce que l’estimation du gain des actions est pertinente pour fixer la probabilité de choix ? { Qu’est ce qu’une bonne action -> référence/aux autres ? { Méthode des comparaisons de renforcement z Dissocier “préférence” et “valeur” d’une action z la préférence reflète la variation de la différence entre le gain “moyen” r et celui de l’action concernée z la probabilité de choix dépend de la préférence ] [ ) ( ) ( 1 t t t t r r a p a p − + = + β ∑ = n b b p a p t t e e 1 ) ( ) (
  • 23. 23 Explorations plus fines { Méthodes de poursuites z définition récursive de la probabilité de choix de la “greedy action a” z pour les autres actions (b) z doucement, la probabilité de choix de la meilleure action tend vers 1. )] ( 1 [ ) ( ) ( 1 a a a t t t π β π π − + = + )] ( 0 [ ) ( ) ( 1 b b b t t t π β π π − + = +
  • 24. 24 Choix d’une méthode { Spécifique au problème { Explication sur cas simplifiés z valeur moyenne des renforcements z différences entre les valeurs moyennes des renforcements z variance des renforcements
  • 25. 25 L’apprentissage de π* { Apprendre le modèle de l’environnement. z Quelles récompenses pour chaque état. z Quels sont les états atteints pour chaque action. z Problème : supervisé, complexe, interactions entre états ignorées (état qui mène à l’état qui … donne une récompense). { Apprendre avec des “fonctions d’utilité” z La fonction d’utilité est à rapprocher du gain moyen z Elle est liée à un état ou un couple état-action z Elle correspond à une espérance de gain futur
  • 26. 26 Fonction d’utilité V(s) (s->ℜ) { V(s) Gains que l’on peut espérer à partir de s { V*(s) : valeur optimale (inconnue) { Vπ(s): valeur pour une stratégie π z Exemple pour un gain avec intérêt et horizon infini : { } s s R E s V t t = = π π ) ( ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ = = ∑ ∞ = + + 0 1 ) ( k t k t k s s r E s V γ π π
  • 27. 27 Exemple { L ’environnement Renforcements - bords : -1 - A->A ’ : 10 - B->B ’ : 5 (pour toute action) - ailleurs : 0 A B A’ B’ actions +5 +10
  • 28. 28 Exemple Vπ avec π probabiliste { stratégie π : probabilité de choix des 4 directions identique partout π(si,droite) = π(si,haut) = … = 0.25 { remise : γ=0.9 Vπ A B A’ B’ 8.8 5.3 1.5 4.4 1.5 3.3 3.0 2.3 1.9 0.5 0.1 0.7 0.7 0.4 -0.4 -1 -0.4 -0.4 -0.6 -1.2 -2 -1.4 -1.2 -1.3 -1.9 +5 +10
  • 29. 29 Gain et stratégie optimale { V* : gains optimums pour la stratégie optimale π* V* π* 24.4 19.4 19.8 22 17.5 22 22 19.8 17.8 16 17.8 19.8 17.8 16 14.4 16 17.8 16 14.4 13 11.7 13 14.4 16 14.4 +10 +5 +5 +10
  • 30. 30 Fonction d’utilité Q { Comme V mais … z sur une action : Q(a) : a -> ℜ z sur un couple état/action : Q(s,a) : (s,a) -> ℜ z Q(s,a) : gains espérés en exécutant a à partir de s. { Q* valeur optimale (inconnue) { Qπ(s,a) valeur pour une politique π z Exemple pour un gain avec intérêt et horizon infini : ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ = = = ∑ ∞ = + + 0 1 , ) , ( k k t k a at s st r E a s Q γ π π
  • 31. 31 Chercher π* { Hiérarchie entre stratégies { La stratégie optimale est supérieure à toute les autres { Il en existe toujours une dans les processus Markoviens s s V s V ssi ∀ ≥ ≥ ), ( ' ) ( ' π π π π
  • 32. 32 Processus Markovien { Un état suffit à résumer toute l’histoire du système { Une décision peut être prise juste en observant cet état { Exemple : situation d’un jeu de dame à un instant donné.
  • 33. 33 Chercher π* { Connaissance de la dynamique de l ’environnement : z pas besoin de simulation. z programmation dynamique : corrélation entre les états (bootstrap) { Sans connaissance de la dynamique de l ’environnement : z simuler (contrôler) et apprendre { sans « bootstrap » : Méthode de Monté-Carlo { avec « bootstrap » : Temporal Difference Learning z identification « off-policy » { utiliser une politique différente de celle que l ’on recherche { permet de rechercher une politique optimale et « dure » z identification « on-policy » { utiliser la politique que l ’on optimise durant l ’optimisation { oblige à utiliser des politiques « molles » (scrutation)
  • 34. 34 Programmation dynamique { Connaissance de la dynamique de l ’environnement. { MDP (Markov Decision Process), { Apprentissage optimal z équation de Bellman z V peut être calculé z V* existe et peut être calculé z π* existent et peuvent être calculées a ss' P a ss' R Probabilité de passage de s à s’ par l ’action a Renforcement lors du passage de s à s’ par a
  • 35. 35 Programmation dynamique : Principe π0 Vπ0 π1 Vπ1 π* aléatoire a ss' P a ss' R E A E E : évaluation A : amélioration Utilisation de la corrélation entre états -> bootstrap
  • 36. 36 V*, Q* et a* formellement V*(s) est la meilleure utilité trouvée parmis les stratégies s s V s V ∀ = ), ( max ) ( * π π Partant de st pour une action a menant à s’, le gain espéré est [ ] ) ' ( * ' s V R s st γ + Corrélation inter-état a s st P ' L’action a peut mener à différents états s’ avec une probabilité a*t est l’action qui permettra d’obtenir la meilleure utilité [ ] ) ' ( * ' ' ' * s V R P ArgMax a s s s a s s a t t t γ + = ∑
  • 37. 37 V*, Q* et a* formellement Si l’on travaille avec Q a et s a s Q a s Q ∀ ∀ = ), , ( max ) , ( * π π ) , ( * * a s Q ArgMax a t a t =
  • 38. 38 Evaluation d’une stratégie probabiliste { } s s R E s V t t = = π π ) ( ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ = = + + ∞ = ∑ s s r E t k t k k 1 0 γ π ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ = + = + + ∞ = + ∑ s s r r E t k t k k t 2 0 1 γ γ π ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ = + = + + + ∞ = ∑ ∑ ∑ ' ) , ( 1 2 0 ' ' ' s s r E R P a s t k t k k a ss a s a ss γ γ π π [ ] ) ' ( ) , ( ' ' ' s V R P a s a ss a s a ss π γ π + = ∑ ∑ Vπ(s) peut être calculé à partir d’une estimation de Vπ(s’) (équation de Bellman)
  • 39. 39 Evaluation d’une stratégie probabiliste { On peut approximer itérativement V { Point fixe : { Stratégie déterministe : z Plus de somme sur a, car a est π(s) { } s s s V r E s V t t k t k = + = + + + ) ( ) ( 1 1 1 γ π π V Vk = [ ] ) ' ( ) , ( ) ( ' ' ' 1 s V R P a s s V k a ss a s a ss k π γ π + = ∑ ∑ + [ ] ) ' ( ) ( ) ( ' ' ) ( ' 1 s V R P s V k s ss s s ss k π π π γ + = ∑ +
  • 40. 40 La meilleure action : vers une stratégie déterministe ) , ( ) ( a s Q ArgMax s a π π = { } a a s s s V r E ArgMax t t t t a = = + = + + , ) ( 1 1 π π γ [ ] ) ' ( ' ' ' s V R P ArgMax a ss s a ss a π γ + = ∑
  • 41. 41 Programmation dynamique Modèle de l ’environnement a ss' P a ss' R )] ' ( [ ) , ( ) ( ' s V a s s V s a π π π π γ π + = ∑ ∑ (s) ss' (s) ss' R P πn π0 aléatoire itérations stabilisation : Vπ evaluation de la stratégie « bootstrap » amélioration de la stratégie )] ' ( [ max arg ) ( ' s V s a s a a π γ π + = ∑ ss' ss' R P stabilisation : V*, π*
  • 42. 42 Programmation dynamique, l ’algo complet (stratégie déterministe) -------------------------------------------------------------- 1.Initialization V(s) ∈ℜ, π(s) ∈A(s) arbitrairement pour tout s∈S -------------------------------------------------------------- 2. Evaluation de la stratégie Repeat ∆←0 For each s∈S v←V(s) V(s) ← ∆←max(∆,|v-V(s)|) until ∆<θ (a small positive number) ------------------------------------------------------------- 3. Amelioration de la stratégie policy-stable←true For each s∈S b← π(s) π(s) ← arg maxa if b≠ π(s) , then policy-stable ← false If policy-stable, then stop; else go to 2 )] ' ( [ ' s V s γ π π + ∑ (s) ss' (s) ss' R P )] ' ( [ ' s V a s a γ + ∑ ss' ss' R P Bootstrapping : Corrélation entre états
  • 43. 43 Quand l’environnement est inconnu { Différents algorithmes { Doivent effectuer 2 fonctions : z Evaluation (prévision) { bootstrap ou moyenne ou les deux z Contrôle (simulation) en apprenant { implémentation réelle
  • 44. 44 Méthode de Monte-Carlo { Plus de connaissance de { Estimation de l’espérance de gain par expérience et moyennage { Plus de corrélation entre états z recherche plus lente a ss' P a ss' R { } s s R E s V t t = = π π ) (
  • 45. 45 Méthodes de Monte Carlo : off-policy Choix aléatoire d ’une stratégie π et de Q. Jouer l ’épisode πn nouveau Q Contrôle du système évaluation « soft » de la stratégie (sur un épisode) Q(s,a) = moyenne des renforcements (par s,a) π(s) = arg maxa Q(s,a) amélioration de la stratégie Sans arrêt variantes : amélioration de l ’exploration
  • 46. 46 Temporal-Difference ou TD- Learning { Prise en compte de la corrélation inter-état de la programmation dynamique = plus rapide { Calcul itératif de la fonction d’utilité : { V(s) ←V(s)+α[Rt-V(s))] { Qk+1= Qk+ α[erreur] { le calcul partiel des méthodes de MC (moins lourd) { naturellement en-ligne { pas de preuves de convergence mais fonctionne dans les faits
  • 47. 47 Evaluer l’utilité itérativement, exemple pour Q ka r r r a Q ka t + + + = ... ) ( 2 1 1 1 1 1 + = ∑ + = + k r Q k i i k ] [ * 1 1 1 1 k k k k Q r k Q Q − + + = + + 1 1 1 1 + + = ∑= + + k r r Q k i t i k k Q ( ) 1 1 ) * ) 1 ( * ) 1 ( * ( ) 1 ( * ) ( * 1 * ) 1 ( * * 1 1 1 1 1 + + + + − + + = + + + = + + = + + = + + ∑ k r k Q k Q k Q k k k r k k Q k k k r r k t k k k t k k i t i k Q 1 1 ) * ) 1 ( * ( 1 1 + + + + − + = + + k r k Q k Q k Q Q t k k k k ] .[ 1 erreur Q Q k k α + = +
  • 48. 48 Programmation dynamique -> TD learning { Programmation dynamique : { TD learning : approximation { V(s) ←V(s)+α[r+γV(s’)-V(s)] { Idem pour Q : { Q(st,at) = Q(st,at)+α*[rt+1+γ*Q(st+1,a)-Q(st,at)] { } s s s V r E s V t t k t k = + = + + + ) ( ) ( 1 1 1 γ π Interêt du aux horizon non bornés + Inter-corrélation
  • 49. 49 Sarsa : On-Policy (st, at, rt+1, st+1, at+1) Apprentisage de Q(s,a) Choix aléatoire : Q et s choix de a par Q (soft) D ’après Q (soft car « on-policy ») appliquer a, observer r et s ’ choisir a’ (d ’après Q et s’) Q(s,a) = Q(s,a) + α[r+γ Q(s’,a’)-Q(s,a)] s = s’ ; a = a’ Contrôle du système Amélioration de la stratégie Sans arrêt
  • 50. 50 Q-learning : off-Policy Choix aléatoire : Q et s D ’après Q (rendu « soft» temporairement) choisir a, observer r et s ’ Q(s,a) = Q(s,a) + α[r+γ maxa’ Q(s’,a’)-Q(s,a)] s = s’ Contrôle du système amélioration de la stratégie Pas la stratégie
  • 51. 51 Performance : Q-learning/Sarsa { Très difficile z Problème dépendant
  • 52. 52 Actor-Critic Methods On-Policy Politique Environnement V acteur critique erreur correction δt+1 = rt+1- (V(st) - γV(st+1)) États st st+1 rt+1 renforcement Exemple : softmax (+ou- sur proba action) renforcement espéré action
  • 53. 53 R-Learning { Cas particulier de problèmes z Apprentissage continu (sans fin) z Mais sans remise (pas de γ) { Pas de sommation des remises { Prise en compte de la dérivée de l ’erreur
  • 54. 54 TD(λ) : aspects temporels et environnements dynamiques Monté-Carlo TD(0) : sarsa épisode Optimisation : Moyenne des ri épisode t0 t1 t2 t3 t4 t0 t1 t2 .. Optimisations : ri + prévision précédente Rapide/moins précis Seul l ’instant précédent est considéré Lent/précis (si env pas dyn) autant d ’importance à tous les instants
  • 55. 55 TD(λ) : SARSA(λ), Q(λ), t0 t1 t2 t3 t Optimisation sur tous les r précédents, mais pondération sur les Q(s,a) les plus récents instant présent 4
  • 56. 56 e(t) trace d ’elligibilité d ’un état (ou état-action) • Sorte de facteur d’oubli • Deux possibilités : accumulation ou replacement accumulation replacement Passages par l’état e(t) 1 0
  • 57. 57 SARSA(λ) : l ’algo complet (en cadeau gratuit) -------------------------------------------------------------- Initialize Q(s,a) arbitrarily and e(s,a)=0, for all s,a Repeat (for each episode) Initialize s,a Repeat (for each step of episode) Take action a, observe r, s’ Choose a’ from s’ using policy derived from Q (e.g., ε-greedy) δ ← r + γQ(s,a ’) - Q(s,a) e(s,a) ←e(s,a)+1 For all s, a: Q(s,a) ← Q(s,a) + α δ e(s,a) e(s,a) ← γλe(s,a) s ←s’; a ←a’ until s is terminal Ça c’est intéressant accumulation
  • 58. 58 Sarsa(λ) sur un labyrinthe { Les premiers pas sont utilisés pour évaluer Q * * * Sarsa(λ) chemin Sarsa
  • 59. 59 TD(λ) { Autres algorithmes z Q(λ) (2 versions) z « Elligibility Traces for Actor-Critic Methods » z Ecrêtage de e (états trop visités) { Implémentation z assez lourde (mémoire+temps) z heuristiques bidouillantes z facilement distribuable
  • 60. 60 Généralisation et approximation { Trop de données z états z Actions { Regrouper z généraliser z en apprenant
  • 61. 61 Généralisation { Fonction-Valeur dépend de paramètres { { Bien moins de paramètres que d ’états { descente de gradient : { en apprentissage : ) ( t V θ r [ ]2 1 ) ( ) ( 2 1 t t t t t s V s V t − ∇ − = + π θ α θ θ r r r [ ] ) ( ) ( 1 t t t t t t t s V s V v t θ α θ θ r r r ∇ − + = + vt : approximation de Vπ(st)
  • 62. 62 Descente de gradient Principe Vπ ou estimation erreur d(erreur) dt Mise à jour θ F (S, θ) V S θ
  • 63. 63 Deux méthodes éprouvées { Réseaux de Neurones Artificiels { Méthodes linéaires θ V S s T s t s V φ θ r r = ) ( θφ V S s t s V t φ θ r = ∇ ) (
  • 64. 64 Méthodes linéaires { Rapport qualité-prix !! { φ : caractéristiques des états z tache critique { exemple coarse coding z chaque cercle est un φi (taille de θ = nb cercles) 0 1 2 3 4 φ0=1 φn=0 S est continu (2D)
  • 65. 65 Méthodes linéaires { Tile coding (carrelage) { Radial Basis Functions z φ n ’est pas binaire z méthode de structuration par apprentissage carrés logarithmes ... ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − = 2 2 2 exp ) ( i s ci s i σ φ
  • 66. 66 Méthodes linéaires { La voiture x x 10 grilles décalées Goal Actions : accélèration avant(1), arrière(-1), nulle(0) xt+1=bound[xt+xt+1] xt+1=bound[xt+0.001*at-0.0025*cos(3xt)] (bien non linéaire)
  • 67. 67 Résultats apprentissage et généralisation { Par replacement d’éligibilité 800 λ=1 λ=0.99 λ=0 λ=0.9 λ=0.4 400 α nb pas pour réussir
  • 68. 68 Pour en savoir plus : en annexe { Karneva coding { apprentissage de planification { Dyna-Q algorithme { Prioritized Sweeping z Manœuvres dans un labyrinthe { 14 400 états potentiels * 4 actions { pas tous scrutés bêtement
  • 69. 69 Les problèmes à résoudre { Nb couples état-action { Convergence { Hiérarchisation des actions { Sémantisation des actions ¾ Systèmes de classifieurs (C.Buche).
  • 70. 70 Bibliographie { Thorndike, Animal Intelligence, 1911. { Bellman, Dynamic Programming, 1957. { Richard S.Sutton and Andrew G.Barto, Reinforcement Learning, MIT Press, 2000. { Cédric Sanza, Evolution d ’entités virtuelles cooperatives par système de classifieurs. These de doctorat de l ’université de Toulouse, 2001. { Apprentissage automatique et évolution artificielle, revue extraction des connaissances et apprentissage, Volume1, n°3, éditions hermes, 2001. { Algorithmes d ’apprentissages et applications, revue d ’intelligence artificielle, volume 14, n°3, édition hermes, 2000. { Antoine Cornuéjols et Laurent Miclet, Apprentissage artificiel, concepts et algorithmes, éditions Eyrolles, 2002.
  • 72. 72 Rappels { Approche supervisée : retour instructif, indique la bonne solution. { Renforcement : retour évaluatif, on ne sait pas quelle est la bonne { Il faut une exploration “active” { Plein de stratégies : exemple de la machine à sous à n bras
  • 73. 73 Apprentissage supervisé Modèle à paramétrer RdN, Exemples tout prêts entrées résultat entrées résultat Algorithme d’apprentissage paramètres
  • 74. 74 Sarsa : estimation des Q(s,a) On- Policy TD { On évaluent tous les Q (s,a) pendant la simulation, on en déduit une politique en même temps...
  • 75. 75 Avantage de Sarsa sur MC { Si il y a une impasse sarsa diminue le Q(s,a) qui ne sera bientôt plus choisi car sarsa apprend pendant l ’épisode { MC resterait dans l ’impasse { exemple 6.4 de Reinforcement learning An introduction (Sutton 2000)
  • 76. 76 Propriété markovienne { Distribution de proba de st+1 et rt+1 { Pr{st+1 = s’, rt+1=r | st,at,rt, st-1,…r1,s0,a0} (1) { Si elle ne dépend que de l’instant présent { Pr{st+1 = s’, rt+1=r | st,at} (2) { les états ont une propriété markovienne si (1) = (2) { ?
  • 77. 77 Programmation dynamique { Optimisations z algorithme d ’itération des valeurs { calcul de Vk+1(s) (et non d ’évaluation des politiques) { puis une seule opération pour obtenir la politique optimale z Programmation dynamique asynchrone { pour les gros espaces d ’état { on ne calcul Vk+1(s) que pour un état à chaque fois { quasi-équivalence asymptotique
  • 78. 78 Programmation Dynamique { Calculs coûteux (mémoire/temps) { Dynamique de l ’environnement { Généralisation aux politiques probabilistes choix de plusieurs actions par état défini par π(s,a) { Temps polynomial (n états et m actions) z alors qu ’il y a mn solutions potentielles
  • 79. 79 Méthode de Monte-Carlo: l ’algo complet -------------------------------------------------------------- 1.Initialization for all s∈S, a∈A(s) : Q(s,a) ←arbitraire Returns(s,a) ← liste vide π ← une politique arbitraire ε-soft policy -------------------------------------------------------------- 2. Evaluation de la politique Repeat forever (a) Generate an episode using π (b) for each pair s,a appearing in the episode: R ←return following the first occurrence of s,a Append R to Returns(s,a) Q(s,a) ← average(Returns(s,a)) (c) for each s in the episode: a* ← arg maxa Q(s,a) For all a ∈A(s) : π(s,a) ← 1-ε+ ε/|A(s)| if a=a* ε/|A(s)| if a≠a*
  • 80. 80 Principe des algorithmes de type TD-learning { Estimation d ’une politique Vπ : -------------------------------------------------------------- 1.Initialisation : V(s) arbitraire, π poitique à évaluer Repeat(for each episode) : Initialize s Repeat(for each step of episode): a← action given by π for s Take action a; observe reward r and next state s’ V(s) ←V(s)+α[r+γV(s’)-V(s)] s ←s’ until s is terminal La prévision est faite à partir d ’une prévision
  • 81. 81 Annexe : Définition récursive de Q(a) ka r r r a Q ka t + + + = ... ) ( 2 1 1 1 1 1 + = ∑ + = + k r Q k i i k ] [ * 1 1 1 1 k k k k Q r k Q Q − + + = + + 1 1 1 1 + + = ∑= + + k r r Q k i t i k k Q ( ) 1 1 ) * ) 1 ( * ) 1 ( * ( ) 1 ( * ) ( * 1 * ) 1 ( * * 1 1 1 1 1 + + + + − + + = + + + = + + = + + = + + ∑ k r k Q k Q k Q k k k r k k Q k k k r r k t k k k t k k i t i k Q 1 1 ) * ) 1 ( * ( 1 1 + + + + − + = + + k r k Q k Q k Q Q t k k k k ] .[ 1 erreur Q Q k k α + = +
  • 82. 82 Méthodes linéaires { complexité≈ { Kanerva coding z séparation dimension de S/complexité de V z plus de dimension : codage binaire des états z distance de hamming pour les regroupements z travaux en cours e S de dimension nb
  • 83. 83 Apprentissage et Généralisation { Etudes expérimentales : algo de type Sarsa et Q-learning plus stables z Linear gradient-descent Sarsa(λ) z Linear gradient-descent Q(λ) { RDN : à voir, il me semble que c ’est très chaud de faire bosser en parallèle deux algos comme ça.
  • 84. 84 Planification et apprentissage { Planifier z i.a. classique : modèle + cognition z ici : améliorer Q (ou V) par l ’évaluation d ’un modèle + simulation du modèle V, politique experience model planification action RL Apprentissage du modèle
  • 85. 85 Modèle déterministe { Pour un couple (s,a) donné le renforcement est toujours le même z Labyrinthe { Dyna-Q algorithme Q-learning Environnement Q Model-learning Modèle env = mémoire (s,a,s’,r) Simulation aléatoire parmi les situations mémorisées Q-learning ’ temps réel temps simulé
  • 86. 86 Modèle en évolution { heuristique de Dyna-Q+ z si un couple(s,a) n ’a pas été rencontré depuis longtemps, lui attribuer un renforcement espéré + grand pour obliger le système à explorer
  • 87. 87 Prioritized Sweeping { Problème de Dyna-Q z les premiers pas, suivant une modification de l ’environnement, sont très nuls z peu de chance de tomber dessus { Favoriser l ’amélioration de Q . z Scruter les états-actions menant aux états dont les valeurs ont le plus changées. z Priorité aux états les plus changeant z A la fois dans le Q-learning et le modèle learning
  • 88. 88 Prioritized Sweeping { Performance facteur 5 à 10 par rapport au Dyna-Q { Manœuvres dans un labyrinthe z 14 400 états potentiels * 4 actions z pas tous scrutés bêtement { Travaux en cours
  • 89. 89 Maximiser quoi ? { Maximiser les gains à long terme z la meilleure action “maintenant” n’est pas forcément la meilleure à long terme z Ne pas maximiser les renforcements “immédiats” !!! { Apprentissage par épisodes (T) z Maximiser Rt = rt+1 + rt+2 +… +rT z exemple : sortie d ’un labyrinthe
  • 90. 90 Le long terme { Apprentissage continu : pas de fin z la somme des renforcements peut croître indéfiniment quelque soit le choix z comment savoir que l’on est sur la bonne voie ? z Pondérer le long terme z Rt = rt+1 + γrt+2 + γ2rt+3 +… z 0≤γ≤1 : remise (discount)
  • 91. 91 Système de classifieurs 1010 01 capteurs environnement #010:01 28 #0##:11 12 101#:01 42 #0#0:11 11 01#1:10 12 10#1:00 25 AG M (Match set) #010:01 28 #0##:11 12 101#:01 42 #0#0:11 11 #010:01 28 101#:01 42 A (Action set) A-1 renforcement interne effecteurs action état roulette récompense attendue rétribution éventuelle
  • 92. 92 Renforcement des ZCS : Algorithm « Bucket Brigade » environnement sceau B #010:01 28 101#:01 42 A A-1 rétribution éventuelle #010:01 25.2 101#:01 37.8 A 2.8+4.2=7 ##10:11 5 11##:11 8 #11#:11 9 A-1 ##10:11 5.7 11##:11 9 #11#:11 10 Prélèvement d ’un pourcentage br (taxe) (exemple 10%) taux d ’apprentissage #010:01 27.2 101#:01 39.8 A renforcement interne taux de remise Variante pour convergence : diminution des poids des classifieurs de M-A
  • 93. 93 ZCS z privilégie les règles rapportant plus z élimine les autres (oubli = surprise = « covering » = pif) z quelle que soit leur « précision » z n ’apprend que des environnements markovien Perception états Woods1 : markovien Woods100 : non markovien
  • 94. 94 Environnement non markovien : renforcer l ’historique : ZCSM { Codage d ’une règle #0101, 01# : 10, #1# identification état interne modification état interne identification capteurs action
  • 95. 95 Préserver les classifieurs précis : XCS { Privilégier les règles les plus « préçises » { Une règle #010:01 z + 3 attributs { prédiction (de rétribution) : utilisé pour la sélection (M->A) { erreur de prédiction { fitness (qualité/précision) : utilisé par l ’AG pour la reproduction (faite sur A (niche)) z mise à jour : Q-learning
  • 96. 96 Systèmes de classifieurs XCS { Apprentissage z Prédiction : pour toutes les régles de l ’ensemble M (Match set) z Définition de l ’ensemble A (roulette ou autre d ’après P(ai)) z Application de l ’action et réception de la rétribution P z Pour tous les éléments de A, mise à jour de la prédiction : p = p + β.(P-p) [0<β<1 : taux d ’apprentissage] z Mise à jour de l ’erreur de prédiction : { e = e+ β.(|P-p|-e) z Mise à jour de la fitness : { F = F + β.(k-F) [k fonction décroissante de e (e : F )] ( ) ∑ ∑ = i i i i F F P a P .