Qu'est-ce que la fonction Q et quelle est la fonction V dans l'apprentissage par renforcement?

30

Il me semble que la fonction V peut être facilement exprimée par la fonction Q et donc la fonction V me semble superflue. Cependant, je suis nouveau dans l'apprentissage par renforcement, donc je suppose que je me suis trompé.

Définitions

L'apprentissage Q et V s'inscrit dans le contexte des processus de décision de Markov . Un MDP est un 5-tuple (S,A,P,R,γ) avec

  • S est un ensemble d'états (généralement finis)
  • A est un ensemble d'actions (généralement finies)
  • P(s,s,a)=P(st+1=s|st=s,at=a) est la probabilité de passer de l'états à l'états avec l'actiona .
  • R(s,s,a)R est la récompense immédiate après être passé de l'états à l'états avec l'actiona . (Il me semble que généralements questions).
  • γ[0,1] est appelé facteur d'actualisation et détermine si l'on se concentre sur les récompenses immédiates (γ=0 ), la récompense totale (γ=1 ) ou certains compromis.

Une politique π , selon Reinforcement Learning: An Introduction de Sutton et Barto, est une fonction π:SA (cela pourrait être probabiliste).

D'après les diapositives de Mario Martins , la fonction V est

Vπ(s)=Eπ{Rt|st=s}=Eπ{k=0γkrt+k+1|st=s}
et la fonction Q est
Qπ(s,a)=Eπ{Rt|st=s,at=a}=Eπ{k=0γkrt+k+1|st=s,at=a}

Mes pensées

La fonction V indique quelle est la valeur globale attendue (pas la récompense!) D'un état s sous la politique π .

La fonction indique quelle est la valeur d'un état s et d'une action a sous la politique π .Qsaπ

Cela signifie que

Qπ(s,π(s))=Vπ(s)

Droite? Alors, pourquoi avons-nous la fonction de valeur? (Je suppose que j'ai mélangé quelque chose)

Martin Thoma
la source

Réponses:

15

Les valeurs Q sont un excellent moyen de rendre les actions explicites afin que vous puissiez traiter les problèmes où la fonction de transition n'est pas disponible (sans modèle). Cependant, lorsque votre espace d'action est grand, les choses ne sont pas si agréables et les valeurs Q ne sont pas si pratiques. Pensez à un grand nombre d'actions ou même à des espaces d'action continus.

Du point de vue de l'échantillonnage, la dimensionnalité de Q(s,a) est supérieure à V(s) , il peut donc être plus difficile d'obtenir suffisamment d' échantillons (s,a) par rapport à (s) . Si vous avez accès à la fonction de transition, parfois V est bon.

Il existe également d'autres utilisations où les deux sont combinées. Par exemple, la fonction d'avantage où A(s,a)=Q(s,a)V(s) . Si vous êtes intéressé, vous pouvez trouver un exemple récent en utilisant les fonctions d'avantage ici:

Architectures de réseau de duels pour un apprentissage par renforcement profond

par Ziyu Wang, Tom Schaul, Matteo Hessel, Hado van Hasselt, Marc Lanctot et Nando de Freitas.

Juan Leni
la source
19

Vπ(s) est la fonction état-valeur du MDP (Markov Decision Process). C'est le retour attendu à partir de l'états suivant la politiqueπ .

Dans l'expression

Vπ(s)=Eπ{Gt|st=s}

Gt est la récompense REMISE totale du pas de tempst , par opposition àRt qui est un retour immédiat. Ici, vous prenez l'attente de TOUTES les actions selon la politiqueπ .

Qπ(s,a) est la fonction valeur-action. C'est le retour attendu à partir de l'états , suivant la politiqueπ , en prenant l'actiona . Il se concentre sur l'action particulière à l'état particulier.

Qπ(s,a)=Eπ{Gt|st=s,at=a}

La relation entre Qπ et Vπ (la valeur d'être dans cet état) est

Vπ(s)=aAπ(a|s)Qπ(a,s)

Vous additionnez chaque valeur d'action multipliée par la probabilité de prendre cette action (la politique π(a|s) ).

Si vous pensez à l'exemple du monde de la grille, vous multipliez la probabilité de (haut / bas / droite / gauche) par la valeur d'état un pas en avant de (haut / bas / droite / gauche).

Aaron
la source
5
Ceci est la réponse la plus concise.
Brett
Vπ(s)=maxaAQπ(s,a)V Q V QVπ(s)=aAπ(as)Qπ(a,s)VQVQ
@nbro Je pense que cela dépend du type de politique que vous suivez. Dans une politique purement gourmande, vous avez raison. Mais s'il s'agissait d'une politique plus exploratoire, conçue pour décider stochastiquement d'une action, alors ce qui précède serait correct
deltaskelta
7

VQπVQ

Q(s,a)=r(s,a)+γV(δ(s,a))
Q
V(s)=maxaQ(s,a)
QV
Q(s,a)=r(s,a)+γmaxaQ(δ(s,a),a)

Cela peut sembler étrange au premier abord, car il exprime la valeur Q d'une action dans l'état actuel en termes de la meilleure valeur Q d'un état successeur , mais cela a du sens lorsque vous regardez comment le processus de sauvegarde l'utilise: l'exploration le processus s'arrête lorsqu'il atteint un état objectif et recueille la récompense, qui devient la valeur Q de cette transition finale. Dans un épisode de formation ultérieur, lorsque le processus d'exploration atteint cet état prédécesseur, le processus de sauvegarde utilise l'égalité ci-dessus pour mettre à jour la valeur Q actuelle de l'état prédécesseur. La prochaine fois que lale prédécesseur est visité pour que la valeur Q de l'état soit mise à jour, et ainsi de suite sur la ligne (le livre de Mitchell décrit une manière plus efficace de le faire en stockant tous les calculs et en les rejouant plus tard). À condition que chaque état soit visité à l'infini souvent, ce processus calcule finalement le Q optimal

α

Q(s,a)=(1α)Q(s,a)+α(r(s,a)+γmaxaQ(s,a))
=Q(s,a)+α(r(s,a)+γmaxaQ(s,a)Q(s,a))
ααααα

SN
la source
0

π

vπ(s)=E[Gt|St=s]qπ(s,a)=E[Gt|St=s,At=a]
Gt=k=0γkRt+k+1t
vπ(s)=E[Gt|St=s]=gtp(gt|St=s)gt=gtap(gt,a|St=s)gt=ap(a|St=s)gtp(gt|St=s,At=a)gt=ap(a|St=s)E[Gt|St=s,At=a]=ap(a|St=s)qπ(s,a)
vπ(s)=qπ(s,π(s))https://stats.stackexchange.com/questions/347268/proof-of-bellman-optimality-equation/370198#370198 )

Jie Shi
la source
0

La fonction de valeur est une formulation abstraite d'utilité. Et la fonction Q est utilisée pour l'algorithme Q-learning.

Emmanuel
la source
VQ