Vous êtes sur la page 1sur 34

Apprentissage par

renforcement

1
Plan

• Tâche d’apprentissage

• Apprentissage par renforcement passif

• Q-Learning

• Fonction d’approximation

2
Apprentissage par renforcement
• L'agent apprend à l'aide de ses expériences en
agissant dans son environnement.
• L’agent ne connaît pas les probabilités de
transition.
• Pour chaque action, l’agent reçoit une
récompense ou une pénalité, mais ne connaît
pas la fonction de récompenses.
• Le but de l’agent est d’apprendre la suite
d’actions qui lui procure la plus grande somme
(espérée) de récompenses (discomptées). 3
Tâche d’apprentissage
• L'agent peut percevoir dans son environnement
un ensemble S d'états distincts (donc MDP).
• Il a un ensemble d'actions qu'il peut exécuter.
• À chaque étapes ,
– L'agent perçoit l'état courant ,
– Il choisit l'action courante et l'exécute.
– L'environnement répond en donnant à l'agent
une récompense et en produisant
l'état suivant :

• Les fonctions et font parti de l'environnement


et elles ne sont pas connues de l'agent.
4
Tâche d’apprentissage
• La tâche de l'agent est d'apprendre une politique pour
sélectionner la prochaine action en se basant sur l'état
courant .
• La politique que nous voulons que l'agent apprenne est la
politique qui va donner la plus grande somme (espérée)
de récompenses pour l'agent.
• Définissons la fonction suivante qui donne la somme des
récompenses pour une certaine politique et pour un
certain état de départ.

5
Tâche d’apprentissage (suite)
• Le but de l’agent est d’apprendre la politique
optimale, celle qui maximise la somme des
récompenses pour tous les états s.

6
Apprentissage par renforcement passif
• En apprentissage passif, la politique de l’agent est
fixe, c’est-à-dire que dans l’état s, il effectue
toujours l’action .
• Son but est d’apprendre à quel point la politique
est utile: ou .
• L’agent ne connaît pas le modèle de transition
et la fonction de récompense.

7
Exemple
• L’agent reçoit un
renforcement de -0.04 dans
chaque état, sauf les états
finaux.

8
Estimation directe de l’utilité
(Monte-Carlo)
• Dans son environnement, le but de l’agent est
d’apprendre l’utilité espérée de chacun des
états pour une certaine politique fixée. Pour
ce faire, il effectue des essais (ici avec la
politique toujours droite):

9
Estimation directe de l’utilité
(Monte-Carlo)
• On conserve une moyenne des utilités pour
chacun des états.
• Par exemple (avec γ =1), pour le premier essai, on
avait un exemple pour l’état (1,1) avec une utilité
de 0.72, deux exemples de 0.76 et 0.84 pour
l’état (1,2), etc.
• Cette méthode a tendance à converger très
lentement, car elle ne considère pas l’interaction
entre les états, comme le fait.

10
Programmation dynamique adaptive
• Apprentissage du modèle de transition:
probabilité d’arriver dans l’état s’ étant donné
une action dans un état :
• Dans l’exemple, l’action Droite a été effectuée
trois fois en (1,3) et dans deux cas l’état
résultant était (2,3), donc
est estimée à 2/3.
• Trouver les utilités avec les équations:

11
Exemple
Exemple (apprentissage du modèle
de transition)
Apprentissage par différence
temporelle (TD)
• Exploiter les équations de Bellman sans apprendre
directement un modèle de transition.
• Le but est d’ajuster la valeur des états en fonction
des transitions effectuées.
– Par exemple, supposons qu’on ait les estimations suivantes

– Si la transition de (1,3) vers (2,3) survient tout le temps, on


voudrait:

– Son estimation de 0.84 est un peu basse et il faudrait donc


l’augmenter.

14
TD (suite)
• Mise à jour selon la règle « delta »:
différence entre la sortie désirée et la sortie
actuelle x , le taux d’apprentissage
– Sortie désirée :
– Sortie actuelle :

15
Exemple TD
• Reprenons l’exemple précédent:

En utilisant un taux d’apprentissage de 0.1 et en supposant que


les valeurs initiales sont à 0 pour tous les états, quelles mises à
jour sont faites par le TD-learning après les essais 1), 2) et 3)
ci-dessus? Utilisez un facteur de discompte de 0.9.
Exemple TD (solution)
Apprentissage par renforcement actif
• La politique n’est plus fixée d’avance, l’agent
choisit les actions.
• Rappel: équations de Bellman et fonction Q
pour résoudre les MDP.
Fonction Q

Nous pourrions utiliser cette équation pour céer un


algorithme d’itération de la Q-valeur pour résoudre
des MDP ‘offline’. Il faudrait par contre connaître la
fonction de récompense et les probabilités de
transition.
19
Q-learning
• Pour l’apprentissage par renforcement actif
l’agent devra plutôt choisir des actions ‘online’
pour apprendre sa politique.
• Dans le Q-learning, l’agent apprend la fonction
Q. Il pourra ensuite recouvrir la politque avec
l’identité:
Q-learning
• Disons qu’en faisant l’action a à partir de l’état
s l’agent tombe dans l’état s’ et reçoit une
récompense r de son environnement. À partir
d’une estimation antérieure des Q-valeurs
l’agent peut mettre à jour son estimation de
Q(s,a) similairement au TD-learning:
Stratégies d’exploration
• Comment l’agent choisit-il ses actions?
• Si l’agent choisit toujours l’action qui
maximise Q (sa meilleure action
jusqu’à maintenant selon les Q-
valeurs actuelles):
– Il va avoir tendance à toujours prendre le
même chemin.
– Il n’explorera pas les autres possibilités qui
sont peut-être meilleures.
22
Epsilon-greedy
• Une première stratégie pour favoriser
l’exploration: choisir ε entre 0 et 1.
• Avec probabilté ε prendre une action
aléatoire et avec probabilité 1-ε prendre
la meilleure action selon les Q-valeurs
actuelles.
Fonction d’exploration
• Explorer les endroits moins visités davantage.
• Par exemple, soit f(q,n) = q + k/n, où q est une
Q-valeur, n un nombre de visites et k une
constante.
• Choisir l’action qui maximise f(Q(s,a),n(s,a)) au
lieu de l’action qui maximise Q(s,a).
• Le terme k/n est un bonus à l’exploration.
Autre stratégie d’exploration
• On peut choisir aléatoirement une action, mais en
donnant plus de chance aux actions ayant une
grande valeur de Q.

• k > 0 est une constante. Plus k est grand, plus on


favorise les valeurs de Q élevées.
• En général, on commence avec une petite valeur
pour k et on l’augmente graduellement. Donc, il y a
plus d’exploration au début.

25
Fonction d’approximation
• Jusqu’à maintenant, on a considéré que les les
Q-valeurs étaient emmagasinées dans une table
avec une entrée pour chaque paire état, action
possible.
• Ça peut fonctionner avec 10 000 états, mais pas
pour des problèmes plus complexes comme les
échecs (10120) ou le backgammon (1050).
• Il serait absurde de vouloir visiter tous ces états
pour pouvoir apprendre à jouer.
26
Fonction d’approximation
• Une idée est d’utiliser une fonction
d’approximation, c’est-à-dire n’importe quelle
autre représentation qu’un tableau.
• C’est une estimation parce qu’on ne sait pas si
la vraie fonction d’utilité peut être représentée
par la forme choisie.
• Exemple: Une fonction linéaire pondérée d’un
ensemble de caractéristiques.

27
Fonction linéaire pondérée
• Supposons que l’on a n caractéristiques (features):
(f1(s,a),…,fn(s,a)), alors la Q-fonction serait
estimée par:

• L’algorithme du Q-learning approximatif apprend les


valeurs des paramètres wi pour estimer le mieux
possible la vraie Q-fonction.
• Par exemple, au lieu d’avoir 10120 valeurs dans un
tableau, on a 20 valeurs de paramètres.
• C’est une compression énorme qui peut tout de
même donner de très bon résultats.
28
Avantage
• Permet de représenter des fonctions d’utilité
pour de très grands espaces d’états.
• Mais le plus grand avantage est la capacité de
généralisation d’une fonction d’approximation.
• Par exemple, Pacman peut alors apprendre
qu’être trop près d’un fantôme est mauvais
pour toute position dans laquelle il se trouve.

29
Règle delta

• “delta”: différence entre la sortie désirée et la sortie


actuelle.
• L’agent met à jour les valeurs des paramètres à chaque
expérience en minimisant l’erreur suivante entre ce qui
est prédit et ce qui est observé:

30
Règle delta
• La dérivée partielle de l’erreur par rapport à chacun des
paramètres et la mise à jour par descente du gradient
sont alors:

• Ce qui peut être réécrit de la manière suivante :

31
Rappel sur le gradient
Minimisation de l’approximation
linéaire
Descente du gradient

Vous aimerez peut-être aussi