Warum erfordert die Wiedergabe von Erfahrungen einen Algorithmus, der außerhalb der Richtlinien liegt?

12

In dem Artikel, in dem DQN " Atari spielen mit tiefem Verstärkungslernen " vorgestellt wurde, wurde Folgendes erwähnt:

Beachten Sie, dass beim Lernen durch Wiederholung von Erfahrungen das Lernen außerhalb der Richtlinien erforderlich ist (da sich unsere aktuellen Parameter von denen unterscheiden, die zum Generieren der Stichprobe verwendet wurden), was die Wahl von Q-Learning motiviert.

Ich habe nicht ganz verstanden, was es bedeutet. Was ist, wenn wir SARSA verwenden und uns die Aktion a'für die Aktion merken, die wir s'in unserem Speicher ausführen sollen, und dann Stapel daraus abtasten und Q aktualisieren, wie wir es in DQN getan haben? Und können schauspieler-kritische Methoden (A3C) Erfahrungswiedergaben verwenden? Wenn nein, warum?

DarkZero
quelle

Antworten:

2

Bei den Richtlinienmethoden wie SARSA wird erwartet, dass die Aktionen in jedem Status auf der Grundlage der aktuellen Richtlinien des Agenten ausgewählt werden, die normalerweise die Belohnungen ausnutzen.

Dadurch wird die Richtlinie verbessert, wenn wir unsere Richtlinie basierend auf den letzten Belohnungen aktualisieren. Insbesondere aktualisieren sie hier die Parameter des NN, die den Wert eines bestimmten Zustands / einer bestimmten Aktion vorhersagen.

Wenn wir jedoch unsere Richtlinie basierend auf gespeicherten Übergängen aktualisieren, wie in der Erfahrungswiedergabe, bewerten wir tatsächlich Aktionen von einer Richtlinie, die nicht mehr die aktuelle ist, da sie sich im Laufe der Zeit weiterentwickelt hat, sodass sie nicht mehr auf der Richtlinie basiert.

Die Q-Werte werden basierend auf den zukünftigen Belohnungen bewertet, die Sie von einem Status erhalten, der der aktuellen Agentenrichtlinie folgt.

Dies gilt jedoch nicht mehr, da Sie jetzt eine andere Richtlinie verfolgen. Aus diesem Grund verwenden sie eine gemeinsame Methode, die auf der Grundlage eines Epsilon-Greedy-Ansatzes untersucht wird.

Dante
quelle
Vielen Dank, aber ich verstehe das immer noch nicht: Wenn ich die TD (0) -Update-Regel verwende, erinnere ich mich an einen Übergang (s, a, r, s')und ziehe diese Erfahrung für die Wiedergabe heran. Jetzt ist meine derzeitige Politik sagt : Angenommen , Sie nehmen sollten a'auf s', dann ich Zeichen Q(s, a)sollte r + Q(s', a')und Gradientenabfallsaktualisierung tun. Ich glaube, ich habe Erfahrung damit, die Richtlinien zu wiederholen. Gibt es ein Problem mit dem Prozess?
DarkZero
Ich glaube, das Problem ist, dass Sie, da Sie jetzt eine andere Richtlinie als zuvor verwenden und diese Aktion unter Verwendung der alten Richtlinie ausgewählt wird, nicht wirklich sagen können, dass es sich um eine Richtlinie handelt: Um den Q-Wert einer Richtlinie korrekt zu bewerten Sie sollten viele Aktionen mit demselben ausführen. Hier versuchen Sie, eine aktuelle Richtlinie mit einer Aktion zu bewerten, die diese Richtlinie nicht auswählen konnte.
Dante
Kann ich also sagen, dass ich das hier nicht mache? Was wird theoretisch das Ergebnis davon sein?
DarkZero
1
Also, wenn ich Sie richtig verstehe, sollte man entweder off-policy Methoden wie Q-Learning verwenden, und immer die maximale Q als zukünftig erwartete Belohnung wählen. Es spielt keine Rolle, wie die aktuelle Aktion aussieht, da es eine Eigenschaft von Q learning ist, dass Q unter optimaler Richtlinie zu Q konvergiert, wenn Sie immer das maximale Q für die Zukunft wählen. Oder er sollte offen einer Richtlinie folgen, jede Aktion einschließlich der zukünftigen über diese Richtlinie auswählen und eine Aktualisierung der Richtlinie durchführen. Ist das richtig?
DarkZero
1
Bis jetzt kann ich nicht verstehen, warum Richtlinienmethoden gut sind. Off-Policy-Methoden scheinen mehr Freiheit zu haben und sie können die optimale Policy selbst herausfinden. Würde es Ihnen etwas ausmachen, auch auf stats.stackexchange.com/questions/265354/… zu antworten ? Vielen Dank für alle Diskussionen.
DarkZero
1

eins

dilaudid
quelle