Was ist die Q-Funktion und was ist die V-Funktion beim Bestärkungslernen?

30

Es scheint mir, dass die V Funktion leicht durch die Q Funktion ausgedrückt werden kann und daher die Funktion für mich überflüssig zu sein scheint. Allerdings lerne ich noch nicht viel, also habe ich wohl etwas falsch gemacht.V

Definitionen

Q- und V-Learning stehen im Kontext von Markov-Entscheidungsprozessen . Ein MDP ist ein 5-Tupel(S,A,P,R,γ) mit

  • S ist eine Menge von Zuständen (typischerweise endlich)
  • A ist eine Menge von Aktionen (typischerweise endlich)
  • P(s,s,a)=P(st+1=s|st=s,at=a) ist die Wahrscheinlichkeit , mit der Aktion a von Zustands zu Zustand zu gelangen.sa
  • R(s,s,a)R ist die unmittelbare Belohnung nach dem Übergang von Zustands zu Zustands mit Aktiona . (Es scheint mir, dass normalerweise nurs zählt).
  • γ[0,1] heißt Rabattfaktor und bestimmt, ob man sich auf unmittelbare Belohnungen (γ=0 ), die Gesamtbelohnung (γ=1 ) oder einen Kompromiss konzentriert.

Eine Politik π nach Reinforcement Learning: Eine Einführung von Sutton und Barto ist eine Funktion π:SA (dies könnte probabilistisch sein).

Laut Mario Martins Dias , die V - Funktion ist

Vπ(s)=Eπ{Rt|st=s}=Eπ{k=0γkrt+k+1|st=s}
und die Q-Funktion ist
Qπ(s,a)=Eπ{Rt|st=s,at=a}=Eπ{k=0γkrt+k+1|st=s,at=a}

Meine Gedanken

Die Funktion gibt an, wie hoch der erwartete Gesamtwert (nicht die Belohnung!) Eines Zustands s unter der Richtlinie π ist.Vsπ

Die Funktion gibt den Wert eines Zustands s und einer Aktion a unter der Richtlinie π an .Qsaπ

Das heißt,

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

Recht? Warum haben wir überhaupt die Wertfunktion? (Ich glaube, ich habe etwas verwechselt)

Martin Thoma
quelle

Antworten:

15

Q-Werte sind eine großartige Möglichkeit, Aktionen explizit zu machen, damit Sie Probleme bewältigen können, bei denen die Übergangsfunktion nicht verfügbar ist (modellfrei). Wenn Ihr Aktionsraum jedoch groß ist, sind die Dinge nicht so schön und die Q-Werte nicht so praktisch. Denken Sie an eine Vielzahl von Aktionen oder sogar an kontinuierliche Aktionsräume.

Aus einer Stichprobenperspektive ist die Dimensionalität von Q(s,a) höher alsV(s) so dass es möglicherweise schwieriger wird,im Vergleich zu ( s ) genügend(s,a) Stichproben zu erhalten. Wenn Sie Zugriff auf die Übergangsfunktion haben, ist V manchmalgut.(s)V

Es gibt auch andere Anwendungen, bei denen beide kombiniert werden. Zum Beispiel, wo die VorteilsfunktionA(s,a)=Q(s,a)V(s) . Bei Interesse finden Sie hier ein aktuelles Beispiel mit Vorteilsfunktionen:

Duellieren von Netzwerkarchitekturen für tiefes Reinforcement-Lernen

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

Juan Leni
quelle
19

Vπ(s) ist die Zustandswertfunktion von MDP (Markov Decision Process). Es ist der erwartete Ertrag ausZustand ausgehends folgenden Politikπ .

Im Ausdruck

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

Gt ist die gesamte DISCOUNTED-Belohnung von Zeitschrittt im Gegensatz zu Rt die eine sofortige Rückgabe darstellt. Hier nehmen Sie die Erwartung von ALLEN Handlungen gemäß der Richtlinie π .

Qπ(s,a) ist die Aktionswertfunktion. Dies ist die erwartete Rendite ab dem Statuss , der der Richtlinieπ folgtund Aktionaausführt . Es konzentriert sich auf die bestimmte Aktion in dem bestimmten Staat.

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

Die Beziehung zwischen Qπ undVπ (der Wert, in diesem Zustand zu sein) ist

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

Sie addieren jeden Aktionswert multipliziert mit der Wahrscheinlichkeit, diese Aktion auszuführen (die Richtlinie π(a|s) ).

Wenn Sie an das Beispiel der Rasterwelt denken, multiplizieren Sie die Wahrscheinlichkeit (hoch / runter / rechts / links) mit dem Zustandswert (hoch / runter / rechts / links), der einen Schritt voraus ist.

Aaron
quelle
5
Dies ist die prägnanteste Antwort.
Brett
Ich habe Quelle , die besagt , dass . Wie verhält sich diese Gleichung zu der, die Sie in Ihrer Antwort angegeben haben: V π ( s ) = a A π ( a s ) Q π ( a , s ) ? In Ihrer Gleichung definieren Sie V als gewichtete Summe von QVπ(s)=maxaAQπ(s,a)Vπ(s)=aAπ(as)Qπ(a,s)VQWerte. Dies unterscheidet sich von der Definition, die ich habe und die als das höchste Q definiert . VQ
nbro
@nbro Ich glaube, es hängt davon ab, welche Art von Politik Sie verfolgen. In einer reinen gierigen Politik sind Sie richtig. Wenn es sich jedoch um eine explorativere Politik handelte, die darauf
abzielte
7

Sie haben es richtig gemacht, die V Funktion gibt Ihnen den Wert eines Zustands und Q gibt Ihnen den Wert einer Aktion in einem Zustand (gemäß einer gegebenen Richtlinie π ). Die klarste Erklärung für Q-Learning und seine Funktionsweise fand ich in Tom Mitchells Buch "Machine Learning" (1997), Kap. 13, die heruntergeladen werden kann. V ist definiert als die Summe einer unendlichen Reihe, aber es ist hier nicht wichtig. Was zählt, ist das Q Funktion definiert als

Q(s,a)=r(s,a)+γV(δ(s,a))
, wobei V * ist der beste Wert eines Staateswenn Sie eine optimale Politik folgen könntendie Sie nicht kennen. Doch es eine schöne Charakterisierung hinsichtlich hatQ
V(s)=maxaQ(s,a)
ComputingQ durchErsetzen der getan wirdVin der ersten Gleichung ergibt sich
Q(s,a)=r(s,a)+γmaxaQ(δ(s,a),a)

Dies mag zunächst als merkwürdige Rekursion erscheinen, da sie den Q-Wert einer Aktion im aktuellen Status als den besten Q-Wert eines Nachfolgezustands ausdrückt , aber es ist sinnvoll, wenn Sie sich ansehen, wie der Sicherungsprozess ihn verwendet: Die Erkundung Der Prozess stoppt, wenn er einen Zielstatus erreicht und die Belohnung sammelt, die zum Q-Wert des endgültigen Übergangs wird. Wenn nun in einer nachfolgenden Trainingsepisode der Erkundungsprozess diesen Vorgängerstatus erreicht, verwendet der Sicherungsprozess die obige Gleichheit, um den aktuellen Q-Wert des Vorgängerstatus zu aktualisieren. Das nächste Mal seineDer Vorgänger wird daraufhin besucht, dass der Q-Wert des Status aktualisiert wird, und so weiter. (Mitchells Buch beschreibt eine effizientere Methode, indem alle Berechnungen gespeichert und später wiedergegeben werden.) Vorausgesetzt, jeder Zustand wird unendlich oft besucht, berechnet dieser Prozess schließlich das optimale Q

Manchmal wird eine Lernrate α angewendet, um zu steuern, wie viel Q tatsächlich aktualisiert wird:

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))
Hinweis jetztdass das Update auf den QWertnichtauf dem aktuellen QWert ab. In Mitchells Buch wird auch erklärt, warum dies so ist und warum Sieα benötigen: es ist für stochastische MDPs. Ohneα jedes Mal, wenn ein Zustand-Aktionspaar versucht wurde, eine andere Belohnung geben, so dass die Q ^ -Funktion überall abprallt und nicht konvergiert. αist da so, dass da das neue wissen nur zum teil akzeptiert wird. Anfänglich wird α hoch eingestellt, damit die aktuellen (meist zufälligen) Werte von Q weniger einflussreich sind. α wird mit fortschreitendem Training verringert, so dass neue Aktualisierungen immer weniger Einfluss haben und das Q-Lernen jetzt konvergiert

SN
quelle
0

Hier ist eine detailliertere Erklärung der Beziehung zwischen Zustandswert und Aktionswert in Aarons Antwort. Betrachten wir zunächst die Definitionen der Wertfunktion und der Aktionswertfunktion unter der Richtlinie π :

vπ(s)=E[Gt|St=s]qπ(s,a)=E[Gt|St=s,At=a]
wobeiGt=k=0γkRt+k+1ist die Rückkehr zum Zeitpunktt. Die Beziehung zwischen diesen beiden Wertfunktionen kann als
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)
Die obige Gleichung ist wichtig. Es beschreibt die Beziehung zwischen zwei grundlegenden Wertefunktionen beim Bestärkungslernen. Es gilt für jede Police. Wenn wir darüber hinaus einedeterministischePolitik haben, istvπ(s)=qπ(s,π(s)). Hoffe das ist hilfreich für dich. (um mehr über die Bellman - Optimalitätsgleichung zu erfahrenhttps://stats.stackexchange.com/questions/347268/proof-of-bellman-optimality-equation/370198#370198 )

Jie Shi
quelle
0

Die Wertfunktion ist eine abstrakte Formulierung des Nutzens. Und die Q-Funktion wird für den Q-Lernalgorithmus verwendet.

Emmanuel
quelle
Für den Kontext dieser Frage sind das und das Q unterschiedlich. VQ
Siong Thye Goh