Warum werden Richtliniengradientenmethoden in kontinuierlichen Aktionsbereichen der Annäherung an Wertfunktionen vorgezogen?


7

Ich verstehe, dass wir in der Wert-Funktions-Näherung, insbesondere beim tiefen Q-Lernen, zuerst die Q-Werte für jede Aktion vorhersagen. Wenn es jedoch viele Aktionen gibt, ist diese Aufgabe nicht einfach.

Bei der Richtlinieniteration müssen wir jedoch auch einen Softmax-Vektor ausgeben, der sich auf jede Aktion bezieht. Ich verstehe also nicht, wie dies verwendet werden kann, um mit einem kontinuierlichen Aktionsraum zu arbeiten.

Warum werden Richtliniengradientenmethoden in kontinuierlichen Aktionsbereichen der Annäherung an Wertfunktionen vorgezogen?

Antworten:


7

Bei der Richtlinieniteration müssen wir jedoch auch einen Softmax-Vektor ausgeben, der sich auf jede Aktion bezieht

Dies ist nicht unbedingt richtig. Ein Softmax-Vektor ist eine Möglichkeit, eine Richtlinie darzustellen, und funktioniert für diskrete Aktionsbereiche. Der Unterschied zwischen Richtliniengradienten- und Wertfunktionsansätzen besteht darin, wie Sie die Ausgabe verwenden. Für eine Wertfunktion würden Sie die maximale Ausgabe finden und diese auswählen (vielleichtϵ-greedily), und es sollte eine Schätzung des Wertes dieser Maßnahme sein. Für eine Richtlinienfunktion würden Sie die Ausgabe als Wahrscheinlichkeit verwenden, um jede Aktion auszuwählen, und Sie kennen den Wert dieser Aktion nicht.

Ich verstehe also nicht, wie dies verwendet werden kann, um mit einem kontinuierlichen Aktionsraum zu arbeiten?

Bei Richtliniengradientenmethoden kann die Richtlinie eine beliebige Funktion Ihrer Parameter seinθ welche:

  • Gibt eine Wahrscheinlichkeitsverteilung aus

  • Kann in Bezug auf unterschieden werden θ

So kann zum Beispiel Ihre Richtlinienfunktion sein

πθ(s)=N(μ(s,θ),σ(s,θ))

wo μ und σkönnen Funktionen sein, die Sie beispielsweise mit einem neuronalen Netzwerk implementieren. Die Ausgabe des Netzwerks ist eine Beschreibung der Normalverteilung für den Aktionswerta einen Zustandswert gegeben s. Die Richtlinie erfordert, dass Sie eine Stichprobe aus der durch diese Werte definierten Normalverteilung erstellen (der NN führt diese Stichprobe nicht durch, Sie müssen sie normalerweise im Code hinzufügen).

Warum werden Richtliniengradientenmethoden in kontinuierlichen Aktionsbereichen der Annäherung an Wertfunktionen vorgezogen?

Es ist zwar weiterhin möglich, den Wert eines Status- / Aktionspaars in einem kontinuierlichen Aktionsbereich zu schätzen , dies hilft Ihnen jedoch nicht bei der Auswahl einer Aktion. Überlegen Sie, wie Sie eine implementieren könntenϵ-greedy-Richtlinie unter Verwendung der Aktionswertnäherung: Es würde eine Optimierung des Aktionsraums für jede einzelne Aktionsauswahl erforderlich sein, um die geschätzte optimale Aktion zu finden. Dies ist möglich, aber wahrscheinlich sehr langsam / ineffizient (es besteht auch das Risiko, ein lokales Maximum zu finden).

Durch die direkte Arbeit mit Richtlinien, die Wahrscheinlichkeitsverteilungen ausgeben, kann dieses Problem vermieden werden, vorausgesetzt, diese Verteilungen lassen sich leicht abtasten. Daher werden Sie häufig Dinge wie Richtlinien sehen, die Parameter der Normalverteilung oder ähnliches steuern, da bekannt ist, wie diese Stichproben einfach abgetastet werden können.


Oh ! In der Laufzeit gibt unsere Policy Score-Funktion die Wahrscheinlichkeit an, dass jede Aktion ausgeführt wird, und wählt dann eine Aktion mit maximaler Wahrscheinlichkeit aus. | DIES IST FALSCH RICHTIG! | Stattdessen wird eine Distribution erstellt. So etwas wie normalisierte Verteilung. Wie in der epsilon-gierigen Richtlinie führt das System dann Aktionen entsprechend der Verteilung aus. Habe ich recht ?
Shamane Siriwardhana

1
@ShamaneSiriwardhana: Ja, dein Kommentar scheint mir richtig zu sein. Der Punkt ist, dass weder die Aktionswertfunktion noch die Richtlinienfunktion die Aktion direkt auswählen. Sie müssen diese als Teil des Lernalgorithmus hinzufügen. Für den Aktionswert müssen Sie sich alle möglichen Aktionen ansehen und die maximale Belohnung finden, um eine gierige Aktion zu identifizieren (Sie können manchmal nur zufällig auswählenp(non-greedy)=ϵ). Für die Richtlinienfunktion wird eine Verteilung ausgegeben, und Sie wählen immer nur zufällig aus dieser Verteilung aus.
Neil Slater


1
@ShamaneSiriwardhana: Nein, tut mir leid, ich kann das nicht beantworten, ich weiß es nicht gut genug. Ich überwache alle Fragen auf der Website (es ist nicht zu beschäftigt. Vielleicht 20 Fragen pro Tag) und suche nach Fragen, die ich beantworten kann, sodass ich sie nicht verknüpfen muss. Ich hoffe du findest deine Antwort. Übrigens kann es hilfreich sein, wenn Sie keine Screenshots mehr verwenden. Verknüpfen Sie stattdessen die Folien als Quelle und fügen Sie den Text von der Folie in die Frage ein. Es mag einige Zeit dauern, bis die Gleichungen richtig sind, aber es macht die Frage viel besser (und es ist wahrscheinlicher, dass sie hochgestimmt wird)
Neil Slater

3

Bei Wertfunktionsmethoden (oder kritischen Methoden) wählen wir normalerweise eine der folgenden Optionen, um unsere Aktionen auszuwählen, nachdem wir die relevante Wertfunktion geschätzt haben:

  • Boltzman-Funktion mit einem (inversen) Temperaturparameter, der steuert, wie viel wir das Maximum der Wertefunktion 'abhören', um unsere Aktionen auszuwählen.
  • ϵ-greedy: Wählt die Aktion mit der Maximalwertfunktion mit Wahrscheinlichkeit (1-ϵ) und eine zufällige mit Wahrscheinlichkeit ϵ.

In Policy Gradient (oder Actor Methods) haben wir zwei Ansätze:

  1. Stochastic Policy Gradients (SPG): Die Ausgabe ist eine Wahrscheinlichkeit über Aktionen. Für Ihren Algorithmus wären die Ausgaben die Parameter einer vorgegebenen Verteilung (normalerweise Gausian), wie Neil beschrieben hat. Dann probieren Sie diese Verteilung auf ähnliche Weise wie die Boltzman-Verteilung.
  2. Deterministic Policy Gradients (DPG): Die Ausgabe ist der Wert einer Aktion (z. B. Geschwindigkeit, Höhe usw.).

Aus dem Obigen können Sie deutlich erkennen, dass PG eine viel plausibelere Lösung bietet, wenn es um kontinuierlichen Aktionsraum geht.

Für weitere Informationen empfehle ich Ihnen die Masterarbeit PG Methods: SGD-DPG von Riashat. Er arbeitete eng mit einem der Mitautoren von Silvers DPG-Artikel zusammen und die Arbeit ist sehr gut strukturiert, wobei MATLAB-Code verfügbar ist. Richtlinienverlaufsmethoden sind aufgrund der Mathematik (und der häufig verwendeten unterschiedlichen Notation) viel schwieriger zu verstehen. Ich würde Ihnen jedoch empfehlen, bei Jan Peters zu beginnen und dann zu Silvers Folien zurückzukehren (meine Meinung :)).


Wie probieren wir normalerweise aus diesen Verteilungen? Kannst du ein Beispiel geben.
Shamane Siriwardhana

Oh, es ist so, als würden wir einen besseren Wert aus der Verteilung mit einigen Rändern wie diesem auswählen, oder? google.com.sg/… :
Shamane Siriwardhana

Ich bin mir nicht sicher, wie viele Details Sie dazu benötigen. Sie probieren diese Verteilungen mit den üblichen Probenahmemethoden aus. Für den Boltzmann (diskreter Aktionsraumfall) müssten Sie die kumulative Verteilung berechnen (In MATLAB histc). Dann probieren Sie eine Zufallszahl zwischen 0 und 1 aus und sehen, wo in diesem Histogramm diese Zufallszahl liegt, und wählen die Aktion aus, die der Wahrscheinlichkeit entspricht, die Ihrer Zufallszahl am nächsten kommt. Wenn Sie damit nicht vertraut sind, lassen Sie es mich bitte wissen.
Constantinos

1
Für den Gaußschen Fall haben die meisten Programmiersprachen einen einzeiligen Befehl zum Abtasten aus einem Gaußschen. Zum Beispiel ist in MATLAB mvnrand (mu, sigma). Die Gaußschen Parameter stammen aus der Ausgabe Ihres Richtliniengradientenalgorithmus (natürlich stochastische Version). Beachten Sie, dass Sie mit PG-Methoden den Wert der Aktion erhalten, z. B. Geschwindigkeit = 10 km, der für Domänen mit kontinuierlicher Aktion geeignet ist. In den oben beschriebenen diskreten Fall- und Wertmethoden erhalten Sie einen Index, der die Aktion angibt (z. B. Aktion1 = 'Nord', Ausgabebeispiel aus Stichprobe: 1, das der Aktion Nord entspricht). Hoffe es hilft :)
Constantinos

2
Richtig! In SPG-Fällen versucht das Richtliniennetzwerk, die Wahrscheinlichkeitsverteilung über den angegebenen Status der Aktionen zu approximieren. Sie haben also immer einen Abtastschritt, nachdem das Netz die Wahrscheinlichkeit ausgegeben hat. Ab diesem Schritt erhalten Sie die Aktion, die an die Umgebung zurückgegeben wird. In DPG-Fällen ist die Ausgabe des Netzwerks die eigentliche Aktion, sodass keine Stichproben erforderlich sind.
Constantinos
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.