Pourquoi le taux d'actualisation dans l'algorithme REINFORCE apparaît-il deux fois?

11

Je lisais le livre Reinforcement Learning: An Introduction de Richard S. Sutton et Andrew G. Barto (ébauche complète, 5 novembre 2017).

À la page 271, le pseudo-code de la méthode de gradient de politique Monte-Carlo épisodique est présenté. En regardant ce pseudo-code, je ne comprends pas pourquoi il semble que le taux d'actualisation apparaisse 2 fois, une fois dans l'état de mise à jour et une deuxième fois dans le retour. [Voir la figure ci-dessous]

entrez la description de l'image ici

Il semble que le retour des étapes après l'étape 1 ne soit qu'une troncature du retour de la première étape. De plus, si vous regardez juste une page ci-dessus dans le livre, vous trouvez une équation avec seulement 1 taux d'actualisation (celui à l'intérieur du retour.)

Pourquoi alors le pseudo-code semble-t-il différent? Je suppose que je me méprends sur quelque chose:

(13.6)θt+1 =˙ θt+αGtθπ(At|St,θt)π(At|St,θt).

Diego Orellana
la source

Réponses:

5

Le facteur de remise apparaît deux fois, et c'est correct.

En effet, la fonction que vous essayez de maximiser dans REINFORCE pour un problème épisodique (en prenant le gradient) est le retour attendu d'un état de départ (distribution de) donné:

J(θ)=Eπ(θ)[Gt|St=s0,t=0]

G1G2γ=0

J(θ)γt

Neil Slater
la source
5

γt

Je voudrais juste préciser en outre que vous ne semblez rien comprendre, l' équation (13.6) du livre est en effet différente du pseudocode .

Maintenant, je n'ai pas l'édition du livre que vous avez mentionnée ici, mais j'ai une version ultérieure du 22 mars 2018, et le texte sur ce sujet particulier semble être similaire. Dans cette édition:

  • γ=1 dans leur preuve pour le théorème de gradient de politique.
  • Cette preuve conduit finalement à la même équation (13.6) à la page 329.
  • γ=1
  • γ<1
Dennis Soemers
la source
2
Merci. L'explication de votre troisième point manquait sur le projet de 2017.
Diego Orellana
2
@DiegoOrellana Je ne trouve plus de lien vers le projet du 22 mars, il semble y avoir un projet encore plus tard (impossible de trouver une date mentionnée) ici . Cette version a en fait une couverture de fantaisie, il pourrait même s'agir d'une version finale plutôt que d'un brouillon. Si le lien se casse à l'avenir, je soupçonne qu'un nouveau lien sera disponible ici .
Dennis Soemers
3

C'est un problème subtil.

Si vous regardez l'algorithme A3C dans l' article original (p.4 et annexe S3 pour le pseudo-code), leur algorithme d'acteur-critique (même algorithme à la fois épisodique et problèmes continus) est décalé d'un facteur gamma par rapport à l'acteur- pseudo-code critique pour les problèmes épisodiques dans le livre de Sutton et Barto (p.332 de l'édition de janvier 2019 de http://incompleteideas.net/book/the-book.html ). Le livre de Sutton et Barto a le gamma "premier" supplémentaire comme indiqué sur votre photo. Donc, le livre ou le papier A3C est faux? Pas vraiment.

La clé est en p. 199 du livre de Sutton et Barto:

S'il y a actualisation (gamma <1), elle doit être traitée comme une forme de résiliation, ce qui peut être fait simplement en incluant un facteur de dans le deuxième terme de (9.2).

Le problème subtil est qu'il existe deux interprétations du facteur d'actualisation gamma:

  1. Un facteur multiplicatif qui accorde moins de poids aux récompenses futures lointaines.
  2. Probabilité, 1 - gamma, qu'une trajectoire simulée se termine faussement, à n'importe quel pas de temps. Cette interprétation n'a de sens que pour les cas épisodiques et non pour les cas continus.

Implémentations littérales:

  1. Multipliez simplement les récompenses futures et les quantités associées (V ou Q) à l'avenir par gamma.
  2. Simulez certaines trajectoires et terminez-les au hasard (1 - gamma) à chaque pas de temps. Les trajectoires terminées ne donnent aucune récompense immédiate ou future.

Glnπ(a|s)

γ2Glnπ(a|s)0.81Glnπ(a|s)

Glnπ(a|s)G

Vous pouvez choisir n'importe quelle interprétation du gamma, mais vous devez être conscient des conséquences pour l'algorithme. Personnellement, je préfère m'en tenir à l'interprétation 1 simplement parce qu'elle est plus simple. J'utilise donc l'algorithme dans le document A3C, pas le livre de Sutton et Barto.

Votre question portait sur l'algorithme REINFORCE, mais j'ai discuté d'acteur-critique. Vous avez exactement le même problème lié aux deux interprétations gamma et au gamma supplémentaire dans REINFORCE.

toto2
la source