Gibt es Verstärkungslernalgorithmen, die auf große Probleme skaliert werden können?

7

Angesichts eines großen Problems scheinen Wertiterationen und andere tabellenbasierte Ansätze zu viele Iterationen zu erfordern, bevor sie konvergieren. Gibt es andere Lernansätze zur Verstärkung, die sich besser auf große Probleme skalieren lassen und die Anzahl der Iterationen im Allgemeinen minimieren?

Jan.
quelle

Antworten:

4

Das ist eine große Frage. Ich werde nicht versuchen, den Stand der Technik zu behandeln, aber ich werde versuchen, einige der Hauptideen zu behandeln.

Funktionsannäherung [1]
Eine wesentliche Strategie zur Skalierung von RL-Algorithmen besteht darin, die effektive Größe Ihres Zustands und / oder Aktionsraums durch Funktionsnäherung zu verringern. Sie können beispielsweise Ihre Wertefunktion mit weniger Parametern parametrisieren, als es Zustände gibt. Die Optimierung würde dann in dem viel kleineren Parameterraum stattfinden, der wesentlich schneller sein kann. Beachten Sie, dass Sie bei Verwendung der Funktionsnäherung fast immer Konvergenzgarantien verlieren, die Sie sonst in der Tabelleneinstellung gehabt hätten. In der Praxis war es jedoch sehr erfolgreich.

Sampling [2]
Wertiteration und andere dynamische Programmieralgorithmen durchlaufen bei der Berechnung von Wertfunktionen den gesamten Zustandsraum. Beispielbasierte Ansätze aktualisieren stattdessen Wertfunktionen für Zustände, wenn diese besucht werden. Dazu gehören Monte-Carlo- und zeitliche Differenzmethoden. Durch die Stichprobe können wir uns auf eine Teilmenge der Zustände konzentrieren und uns von der Berechnung befreien, die erforderlich ist, um genaue Wertschätzungen potenziell irrelevanter Zustände zu erhalten. Dies ist in realen Umgebungen unerlässlich, in denen fast alle möglichen Zustände der Welt irrelevant oder sogar unmöglich zu erreichen sind.

Sample Efficiency / Experience Replay Wenn
alles andere gleich ist, lernt ein Sample Efficient Agent mit derselben Erfahrung mehr. Dadurch wird die Lernzeit verkürzt, insbesondere wenn der Zeitengpass in der Interaktion mit der Umgebung liegt. Eine grundlegende Möglichkeit zur Verbesserung der Probeneffizienz besteht darin, Erfahrungen mit dem im DQN-Papier verbreiteten Erfahrungswiedergabepuffer zu speichern und wiederzuverwenden . Ein anderer, neuerer Algorithmus namens Hindsight Experience Replay verbessert die Sampling-Effizienz, indem der Agent mehr aus seinen Fehlern lernen kann (Trajektorien ohne Belohnung).

Modellbasierte Methoden [3]
Während es technisch gesehen auch um die Probeneffizienz geht (vielleicht sind alle diese Punkte?), Sind modellbasierte Methoden wichtig genug, um einen eigenen Abschnitt zu gewährleisten. Normalerweise ist die MDP-Dynamik dem Agenten vorher nicht bekannt. Das Erlernen und Aufrechterhalten einer Schätzung des MDP ist daher oft eine gute Idee. Wenn ein Agent sein internes Modell der Welt verwenden kann, um Erfahrungen zu simulieren, kann er aus dieser simulierten Erfahrung ( Planung genannt ) lernen und zusätzlich aus tatsächlichen Erfahrungen lernen. Da simulierte Erfahrungen viel billiger zu sammeln sind als tatsächliche Erfahrungen, kann dies die zum Lernen erforderliche Zeit verkürzen.

Suche [4]
Wenn unsere Wertschätzungen perfekt wären, wäre ein optimales Verhalten nur eine Frage des Umzugs in den Nachbarstaat mit dem höchsten Wert. Dies ist jedoch kaum jemals der Fall, daher möchten wir Entscheidungen intelligenter treffen. Eine Möglichkeit, die als Vorwärtssuche bezeichnet wird , besteht darin, ein Modell zu verwenden, um viele mögliche Trajektorien ausgehend vom aktuellen Status zu berücksichtigen. Das beliebteste und erfolgreichste Beispiel für die Vorwärtssuche ist die Monte-Carlo-Baumsuche (MCTS), die in AlphaGo Zero bekanntermaßen verwendet wurde . Da die Suche es uns ermöglicht, bei unvollständigen Wertschätzungen bessere Entscheidungen zu treffen, können wir uns auf vielversprechendere Trajektorien konzentrieren, was Zeit und Berechnung spart.

Exploration
Nur das zu tun, was wir für die "beste" Aktion in einem bestimmten Zustand halten, ist normalerweise keine sehr gute Idee. Bei der Abtastung von Trajektorien durch große Zustands- und / oder Aktionsräume kann diese Strategie vollständig fehlschlagen. Durch explorative Maßnahmen kann sichergestellt werden, dass überhaupt hochwertige Zustände entdeckt werden. Die Entscheidung, wann und welche Maßnahmen ergriffen werden müssen, ist ein aktives Forschungsgebiet. Im Allgemeinen sind Sondierungsmaßnahmen jedoch solche, die die Unsicherheit eines Agenten in Bezug auf die Umgebung verringern.

Injizieren von menschlichem Wissen
Schließlich und möglicherweise offensichtlich kann die Reduzierung der zeitlichen Komplexität eines RL-Algorithmus erreicht werden, indem dem Agenten mehr Informationen über die Welt gegeben werden. Dies kann auf viele Arten erfolgen. Wenn beispielsweise eine lineare Funktionsnäherung verwendet wird, kann ein Agent über die von ihm verwendeten Funktionen nützliche Informationen erhalten. Wenn ein Modell verwendet wird, kann das Modell mit angemessenen Prioritäten für die Belohnungs- und Übergangswahrscheinlichkeitsverteilungen initialisiert werden. "Reward Shaping", das manuelle Entwickeln einer (dichten) Belohnungsfunktion, um das Erlernen einer bestimmten Aufgabe zu erleichtern, ist ein allgemeinerer Ansatz. Ein Agent könnte auch direkt aus menschlichen Demonstrationen mit inversem Verstärkungslernen oder Nachahmungslernen lernen .


Referenzen
Alle Referenzen, auf die noch nicht verwiesen wurde, sind Kapitel aus Sutton und Bartos RL-Buch .
[1] Die Approximation linearer Funktionen wird in Kapitel 9 ausführlich erläutert.
[2] Monte-Carlo- und zeitliche Differenzmethoden werden in den Kapiteln 5 und 6 erläutert.
[3] Modellbasierte Methoden werden im ersten Teil von Kapitel 8 erläutert.
[4] ] MCTS und Suche im Allgemeinen werden in der zweiten Hälfte von Kapitel 8 erörtert.

Philip Raeisghasem
quelle
Ich denke, dies ist ein schöner Beitrag, aber vielleicht sollten Sie auch einige konkrete Algorithmen auflisten (falls vorhanden), die sich tatsächlich gut auf große Probleme skalieren lassen, da dies die eigentliche Frage ist. Im Moment ist Ihre Antwort auf die Frage "Mit welchen Techniken können RL-Algorithmen auf große Probleme skaliert werden".
nbro
1
@nbro Ich kenne keine implementierten Agenten, die all diese Techniken verwenden. Aber viele der Artikel, mit denen ich verlinkt habe (DQN, HER, AlphaGo Zero), enthalten vollständige Spezifikationen von Wirkstoffen, die sich bei großen Problemen gut skalieren lassen.
Philip Raeisghasem