Warum konvergiert Q-Learning nicht, wenn Funktionsnäherung verwendet wird?


11

Es wird garantiert, dass der tabellarische Q-Lernalgorithmus die optimale Funktion Q ∗ findet , vorausgesetzt, die folgenden Bedingungen (die Robbins-Monro-Bedingungen ) bezüglich der Lernrate sind erfülltQQ

  1. tαt(s,a)=
  2. tαt2(s,a)<

wobei αt(s,a) die Lernrate bedeutet, die verwendet wird, wenn der Q Wert aktualisiert wird, der dem Zustand s und der Aktion a zum Zeitpunkt , wobei als wahr angenommen wird; für alle Zustände und Aktionen .t0αt(s,a)<1sa

der Tatsache, dass , müssen anscheinend alle Zustands-Aktions-Paare unendlich oft besucht werden, damit die beiden Bedingungen erfüllt sind. Dies wird auch im Buch Reinforcement Learning: An Introduction angegeben Abgesehen von der Tatsache, dass dies allgemein bekannt sein sollte und dies der Grund für die Verwendung der Greedy-Richtlinie (oder ähnlicher Richtlinien) während des Trainings ist.0αt(s,a)<1ϵ

Ein vollständiger Beweis, der zeigt, dass das Lernen die optimale Funktion findet, findet sich in der Arbeit Konvergenz des Q-Lernens: Ein einfacher Beweis (von Francisco S. Melo). Er verwendet Konzepte wie die Kontraktionsabbildung , um die optimale Funktion zu definieren (siehe auch Was ist der Bellman-Operator beim Verstärkungslernen? ), Die ein fester Punkt dieses Kontraktionsoperators ist. Er verwendet auch einen Satz (Nr. 2) bezüglich des Zufallsprozesses , der unter einigen Annahmen gegen konvergiert . (Der Beweis ist möglicherweise nicht leicht zu befolgen, wenn Sie kein Mathematiker sind.)QQQ 0Q0

Wenn ein neuronales Netzwerk zur Darstellung der Funktion verwendet wird, gelten die Konvergenzgarantien des Lernens noch? Warum konvergiert (oder nicht) Q-Learning bei Verwendung der Funktionsnäherung? Gibt es einen formalen Beweis für eine solche Nichtkonvergenz des Lernens unter Verwendung der Funktionsnäherung?QQQ

Ich suche nach verschiedenen Arten von Antworten, von denen, die nur die Intuition hinter der Nichtkonvergenz des Lernens bei der Verwendung der Funktionsnäherung vermitteln, bis zu denen, die einen formalen Beweis liefern (oder einen Link zu einem Papier mit einem formalen Beweis).Q


2
Gute Frage!
John Doucette

Das Buch, auf das Sie verwiesen haben, behandelt dieses Problem in Kapitel 11, damit Sie es lesen können. Ich glaube auch nicht, dass es einen formalen Beweis dafür gibt, aber es gibt nur wenige Beispiele, die auch in einfachen Umgebungen (z. B. Tsitsiklis und van Roy) Unterschiede aufweisen.
Brale_

Antworten:


7

Hier ist eine intuitive Antwort auf die Beschreibung:

Die Funktionsnäherung kann mit jeder parametrierbaren Funktion erfolgen. Betrachten Sie das Problem einer Q(s,a) Raum , in den s die positiven reellen Zahlen ist, a ist 0 oder 1 , und die wahre Q-Funktion Q(s,0)=s2 , und Q(s,1)=2s2 für alle Staaten. Wenn Ihr Funktionsapproximator Q(s,a)=ms+na+b , es gibt keine Parameter, die die wahreQ Funktiongenau darstellenkönnen (wir versuchen, eine Linie an eine quadratische Funktion anzupassen). Selbst wenn Sie eine gute Lernrate gewählt haben und unendlich oft alle Zustände besuchen, wird Ihre Approximationsfunktion daher niemals zur wahrenQ Funktionkonvergieren.

Und hier noch ein bisschen mehr Details:

  1. Neuronale Netze approximieren Funktionen. Eine Funktion kann mehr oder weniger approximiert werden, indem mehr oder weniger komplexe Polynome verwendet werden, um sie zu approximieren. Wenn Sie mit der Näherung der Taylor-Serie vertraut sind, sollte diese Idee ziemlich natürlich erscheinen. Wenn nicht, denken Sie über das Intervall [0- π/2 ) an eine Funktion wie eine Sinuswelle . Sie können es (schlecht) mit einer geraden Linie approximieren. Sie können es mit einer quadratischen Kurve besser approximieren. Indem wir den Grad des Polynoms erhöhen, mit dem wir die Kurve approximieren, können wir etwas erhalten, das immer enger zur Kurve passt.
  2. Neuronale Netze sind Approximatoren für universelle Funktionen . Dies bedeutet, dass Sie, wenn Sie eine Funktion haben, auch ein neuronales Netzwerk erstellen können, das tief oder breit genug ist, um die von Ihnen erstellte Funktion beliebig genau zu approximieren. Eine bestimmte Netzwerktopologie, die Sie auswählen, kann jedoch nicht alle Funktionen erlernen , es sei denn, sie ist unendlich breit oder unendlich tief. Dies ist analog dazu, wie bei Auswahl der richtigen Parameter eine Linie auf zwei beliebige Punkte passen kann, jedoch nicht auf drei beliebige Punkte. Wenn Sie ein Netzwerk mit einer bestimmten endlichen Breite oder Tiefe auswählen, kann ich immer eine Funktion konstruieren, die ein paar weitere Neuronen benötigt, um richtig zu passen.

  3. Die Grenzen des Q-Lernens gelten nur, wenn die Darstellung der Q-Funktion genau ist . Angenommen, Sie haben Ihre Q-Funktion mit einer linearen Interpolation approximiert, um zu sehen, warum. Wenn die wahre Funktion überhaupt irgendeine Form annehmen kann, kann der Fehler in unserer Interpolation eindeutig unbegrenzt groß gemacht werden, indem einfach eine XOR-ähnliche Q-Funktionsfunktion konstruiert wird, und keine zusätzliche Zeit oder Daten erlauben es uns, diesen Fehler zu reduzieren . Wenn Sie einen Funktionsapproximator verwenden und die wahre Funktion, die Sie anpassen möchten, nichtWenn sich die Funktion beliebig gut annähern lässt, konvergiert Ihr Modell selbst bei einer ausgewählten Lernrate und Explorationsrate nicht richtig. Unter Verwendung der Terminologie der rechnergestützten Lerntheorie können wir sagen, dass die Konvergenzbeweise für das Q-Lernen implizit angenommen haben, dass die wahre Q-Funktion ein Mitglied des Hypothesenraums ist, aus dem Sie Ihr Modell auswählen.


Wo können wir aus dem Beweis ersehen, dass "die Grenzen des Q-Lernens nur gelten, wenn die Darstellung der Q-Funktion genau ist" wahr ist?
nbro

Wir können also jede (vernünftige) Funktion unter Verwendung eines neuronalen Netzwerks (Architektur) approximieren, aber bei einer festen neuronalen Netzwerkarchitektur (die wir zu Beginn der Trainingsphase des Q- Lernens auswählen müssen), Q- Lernen konvergiert möglicherweise nicht unter Verwendung dieser spezifischen Architektur Z , da Z möglicherweise nicht aussagekräftig genug ist, um Q darzustellen . ZQQZZQ
nbro

@nbro Der Beweis sagt das nicht explizit aus, sondern setzt eine genaue Darstellung der Q-Funktion voraus (dh, dass für jedes Zustands- / Aktionspaar genaue Werte berechnet und gespeichert werden). Für unendliche Zustandsräume ist es klar, dass diese exakte Darstellung im schlimmsten Fall unendlich groß sein kann (einfaches Beispiel: Q (s, a) = etw Ziffer von pi). Ihr zweiter Kommentar fasst es gut zusammen. Wenn die wahre Hypothese Q * kein Element des Hypothesenraums H ist, aus dem Sie ein Modell auswählen, können Sie formal nicht mit Q * konvergieren, selbst mit unendlicher Zeit oder Daten.
John Doucette

4

Soweit mir bekannt ist, ist es immer noch ein offenes Problem, ein wirklich klares, formales Verständnis dafür zu erhalten, warum / wann wir einen Mangel an Konvergenz haben - oder, schlimmer noch, manchmal die Gefahr einer Divergenz. Es wird typischerweise der "tödlichen Triade" (siehe 11.3 der zweiten Ausgabe von Sutton und Bartos Buch) zugeschrieben, der Kombination von:

  1. Funktionsnäherung UND
  2. Bootstrapping (unter Verwendung unserer eigenen Wertschätzungen bei der Berechnung unserer Trainingsziele, wie durch Q Learning durchgeführt), AND
  3. Off-Policy-Training ( Q Learning ist in der Tat Off-Policy).

Das gibt uns nur eine (möglicherweise nicht erschöpfende) Beschreibung von Fällen, in denen wir eine mangelnde Konvergenz und / oder die Gefahr einer Divergenz haben, sagt uns aber immer noch nicht, warum dies in diesen Fällen der Fall ist.


Johns Antwort liefert bereits die Intuition, dass ein Teil des Problems einfach darin besteht, dass die Verwendung der Funktionsnäherung leicht zu Situationen führen kann, in denen Ihr Funktionsnäherungsgerät nicht leistungsfähig genug ist, um die wahre Q -Funktion darzustellen. Möglicherweise gibt es immer Annäherungsfehler, die unmöglich sind loszuwerden, ohne auf einen anderen Funktionsapproximator umzuschalten.

Persönlich denke ich, dass diese Intuition hilft zu verstehen, warum der Algorithmus die Konvergenz zur optimalen Lösung nicht garantieren kann, aber ich würde dennoch intuitiv erwarten, dass er möglicherweise zu einer "stabilen" Lösung "konvergieren" kann, die die bestmögliche Annäherung darstellt die Einschränkungen, die der gewählten Funktionsdarstellung inhärent sind. In der Tat beobachten wir dies in der Praxis, wenn wir auf ein On-Policy-Training (z. B. Sarsa) umsteigen, zumindest im Fall von linearen Funktionsapproximatoren.


Meine eigene Intuition in Bezug auf diese Frage war im Allgemeinen, dass eine wichtige Quelle des Problems die Verallgemeinerung ist . In der tabellarischen Einstellung haben wir die Einträge Q.(s,ein) für alle (s,ein) Paare vollständig isoliert . Jedes Mal, wenn wir unsere Schätzung für einen Eintrag aktualisieren, bleiben alle anderen Einträge unverändert (zumindest anfänglich - es kann aufgrund des Bootstrappings in der Aktualisierungsregel einige Auswirkungen auf andere Einträge in zukünftigen Updates geben). Aktualisierungsregeln für Algorithmen wie Q. Learning und Sarsa werden manchmal in die "falsche" Richtung aktualisiert, wenn wir "Pech" haben, aber in Erwartungaktualisieren sie im Allgemeinen in die richtige "Richtung". Intuitiv bedeutet dies, dass wir in der tabellarischen Einstellung erwartungsgemäß langsam und schrittweise Fehler in Einträgen isoliert beheben, ohne möglicherweise andere Einträge zu beschädigen.

Wenn wir bei der Funktionsnäherung unsere Q.(s,ein) -Schätzung für ein (s,ein) Paar aktualisieren , kann dies möglicherweise auch alle anderen Schätzungen für alle anderen Zustands-Aktions-Paare beeinflussen. Intuitiv bedeutet dies, dass wir nicht mehr die nette Isolation von Einträgen wie in der Tabelleneinstellung haben und das "Beheben" von Fehlern in einem Eintrag das Risiko birgt, anderen Einträgen neue Fehler hinzuzufügen. Wie Johns Antwort würde diese ganze Intuition jedoch auch für On-Policy-Algorithmen gelten, sodass sie immer noch nicht erklärt, was das Besondere an Q. Learning (und anderen Off-Policy-Ansätzen) ist.


maxmax

Q.(s,ein)

Q(s,a)Q(s,a)+α[maxaQ(s,a)Q(s,a)].

maxaQ(s,a)Q estimates over a -- possibly very long -- trajectory. As already discussed in some of the previous answers, our function approximator has a limited representational capacity, and updates to one state-action pair may affect value estimates for other state-action pairs. This means that, after triggering our update to Q(s,a), our function approximator may no longer be able to simultaneously express the policy that leads to the high returns that our maxaQ(s,a) estimate was based on. The authors of this paper say that the algorithm is "delusional". It performs an update under the assumption that, down the line, it can still obtain large returns, but it may no longer actually be powerful enough to obtain those returns with the new version of the function approximator's parameters.


Finally, another (even more recent) paper that I suspect is relevant to this question is Diagnosing Bottlenecks in Deep Q-learning Algorithms, but unfortunately I have not yet had the time to read it in sufficient detail and adequately summarise it.


1
But isn't the use of a neural network also due to the assumption that certain states are very similar to each? Very similar states (e.g. successive frames in a game) often have very similar (or same) optimal actions, so I am not sure that explanation in the first paper is valid (I should read it to fully understand their main points).
nbro

1
@nbro Yeah, often generalisation is considered to be an advantage rather than a problem precisely because of that reason. If it works out as "intended", it can be very powerful and speed up learning because we transfer whatever we learn to similar states / similar actions, rather than learning for every slightly different state/action in isolation. But it can also lead to problems, especially in theory but also in practice. It's like a "double-edged sword" I suppose.
Dennis Soemers

1
@DennisSoemers Super interesting answer. The Non-delusional Q-learning point makes a ton of sense. Finding the correct Q-function means finding a fixed point for your update rule, but it sure looks like function approximation could lead to cyclic updates in Q-learning if you think about it this way.
John Doucette
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.