La signification du facteur d'actualisation sur l'apprentissage par renforcement

10

Après avoir lu les réalisations de google deepmind sur les jeux d'Atari , j'essaie de comprendre le q-learning et les q-réseaux, mais je suis un peu confus. La confusion survient dans le concept du facteur d'actualisation. Bref résumé de ce que je comprends. Un réseau neuronal convolutionnel profond est utilisé pour estimer la valeur de la valeur attendue optimale d'une action. Le réseau doit minimiser la fonction de perte où est \ mathbb {E} \ gauche [r + \ gamma max_ { a '} Q (s', a '; \ theta ^ -_ i) \ right | s, a] Q est une valeur de score cumulée et r

Li=Es,a,r[(Es[y|s,a]Q(s,a;θi))2]
Es[y|s,a]Q r
E[r+γmaxaQ(s,a;θi)|s,a]
Qrest la valeur de score pour l'action choisie. s,a et s,a sont respectivement l'état et l'action choisis à l'instant t et l'état et l'action à l'instant t . Les θi sont les poids du réseau à l'itération précédente. Le γ est un facteur d'actualisation qui prend en compte la différence temporelle des valeurs de score. L' indice i est le pas temporel. Le problème ici est de comprendre pourquoi γ ne dépend pas de θ .

Du point de vue mathématique γ est le facteur d'actualisation et représente la probabilité d'atteindre l'état s partir de l'état s .

Je suppose que le réseau apprend réellement à redimensionner le Q selon la vraie valeur de γ , alors pourquoi ne pas laisser γ=1 ?

emanuele
la source

Réponses:

6

Le facteur d'actualisation ne représente pas la probabilité d'atteindre l'état partir de l'état . Ce serait , qui n'est pas utilisé dans Q-Learning, car il est sans modèle (seules les méthodes d'apprentissage par renforcement basées sur un modèle utilisent ces probabilités de transition). Le facteur d'actualisation est un hyperparamètre réglé par l'utilisateur qui représente la quantité d'événements futurs qui perdent leur valeur en fonction de leur éloignement dans le temps. Dans la formule référencée, vous dites que la valeur pour votre état actuel est la récompense instantanée pour cet état plus ce que vous espérez recevoir à l'avenir à partir dessp(s|s,a)sγyss. Mais ce terme futur doit être actualisé, car les récompenses futures peuvent ne pas (si ) avoir la même valeur que de recevoir une récompense en ce moment (tout comme nous préférons recevoir 100 $ maintenant au lieu de 100 $ demain). C'est à vous de choisir combien vous souhaitez amortir vos futures récompenses (cela dépend du problème). Un facteur de remise de 0 signifierait que vous ne vous souciez que des récompenses immédiates. Plus votre facteur de remise est élevé, plus vos récompenses se propageront dans le temps.γ<1

Je vous suggère de lire le livre de Sutton & Barto avant d'essayer Deep-Q afin d'apprendre un apprentissage par renforcement pur en dehors du contexte des réseaux de neurones, ce qui peut vous dérouter.

rcpinto
la source
Merci pour votre réponse, mais j'ai encore quelques doutes. Je pense à haute voix. Imaginez à chaque étape que vous recevez un score de et que vous devez payer pour commencer à jouer. Comment calculer la valeur attendue? Eh bien parce que vous ajoutez des valeurs de à différents moments dans le futur, n'est-ce pas? c E v = + i = 1 γ i d - cdc
Ev=i=1+γidc
d
emanuele
Eh bien, je vais briser même si quelle est la valeur correcte pour ? La valeur correcte pour est la valeur qui me permet de faire un compromis entre les récompenses présentes et futures et est . est la probabilité de survivre à l'étape et c'est la raison laquelle . La vérification est où sont des chances de survivre à chaque étape et est la durée de vie attendue. γgammaγ=p
dγ1γ=c
γgammaγ=pt 0 γ 1 ppt0γ1τp1p=ττ
emanuele