
Reinforcement Learning ist in zwei große Klassen unterteilt: modellfrei und modellbasiert. Im ersten Fall werden Aktionen direkt durch das Belohnungssignal optimiert, und im zweiten Fall ist das neuronale Netzwerk nur ein Modell der Realität, und die optimalen Aktionen werden mithilfe eines externen Schedulers ausgewählt. Jeder Ansatz hat seine eigenen Vor- und Nachteile.
Entwickler von Berkeley und Google Brain haben den modellbasierten PDDM-Algorithmus mit einem verbesserten Scheduler eingeführt, mit dem Sie komplexe Bewegungen mit einer großen Anzahl von Freiheitsgraden in einer kleinen Anzahl von Beispielen effektiv lernen können. Um zu lernen, wie man Bälle in einem Roboterarm mit realistischen Fingergelenken mit 24 Freiheitsgraden dreht, brauchte man nur 4 Stunden Übung mit einem echten physischen Roboter.
Reinforcement Learning ist das Training von Robotern mit einem Belohnungssignal. Dies ähnelt dem Lernen von Lebewesen. Das Problem wird jedoch durch die Tatsache kompliziert, dass nicht bekannt ist, wie die Gewichte des neuronalen Netzwerks so geändert werden können, dass die vorgeschlagenen Maßnahmen zu einer Erhöhung der Belohnungen führen. Daher sind beim Reinforcement Learning herkömmliche Trainingsmethoden für neuronale Netze nicht geeignet. Schließlich ist nicht bekannt, was genau sie bei ihrem Ausgang herausgeben soll, was bedeutet, dass es unmöglich ist, einen Fehler zwischen ihrer Vorhersage und dem tatsächlichen Zustand der Dinge zu finden. Um diesen Unterschied durch die Schichten des neuronalen Netzwerks zurückzuspringen und die Gewichte zwischen den Neuronen zu ändern, um diesen Fehler zu minimieren. Dies ist ein klassischer Back-Propagation-Algorithmus, der von neuronalen Netzen gelehrt wird.
Daher haben Wissenschaftler verschiedene Wege gefunden, um dieses Problem zu lösen.
Modellfrei
Einer der effektivsten Ansätze war das Schauspieler-Kritiker-Modell. Lassen Sie ein neuronales Netzwerk (Akteur) an seinem Eingang den Zustand der staatlichen Umgebung empfangen und am Ausgang Aktionen ausgeben, die zu einer Erhöhung der Belohnungsbelohnungen führen sollten. Bisher sind diese Aktionen zufällig und hängen einfach vom Signalfluss innerhalb des Netzwerks ab, da das neuronale Netzwerk noch nicht trainiert wurde. Und das zweite neuronale Netzwerk (Kritiker) lässt die Eingabe auch den Zustand der Zustandsumgebung empfangen, aber auch Aktionen von der Ausgabe des ersten Netzwerks. Und lassen Sie am Ausgang nur die vorhergesagte Belohnungsbelohnung zu, die erhalten wird, wenn diese Aktionen angewendet werden.
Beobachten Sie jetzt Ihre Hände: Wir wissen nicht, was die besten Aktionen am Ausgang des ersten Netzwerks sein sollten, was zu einer Erhöhung der Belohnung führt. Daher können wir den Back-Propagation-Algorithmus nicht trainieren. Das zweite neuronale Netzwerk kann jedoch sehr gut den genauen Wert der Belohnungsbelohnung (oder besser gesagt normalerweise deren Änderung) vorhersagen, die es erhält, wenn jetzt Aktionen angewendet werden. Nehmen wir also den Fehleränderungsgradienten aus dem zweiten Netzwerk und wenden ihn auf das erste an! Sie können also das erste neuronale Netzwerk mit der klassischen Methode der Rückausbreitung von Fehlern trainieren. Wir nehmen den Fehler einfach nicht von den Ausgängen des ersten Netzwerks, sondern von den Ausgängen des zweiten.
Infolgedessen lernt das erste neuronale Netzwerk, optimale Aktionen auszuführen, was zu einer Erhöhung der Belohnungen führt. Denn wenn der Kritiker einen Fehler gemacht und eine geringere Belohnung vorhergesagt hat, als es sich in der Realität herausgestellt hat, bewegt der Gradient dieses Unterschieds die Handlungen des Schauspielers in die Richtung, so dass der Kritiker die Belohnung genauer vorhersagt. Und das bedeutet optimalere Aktionen (schließlich führen sie dazu, dass der Kritiker eine höhere Auszeichnung genau vorhersagt). Ein ähnliches Prinzip funktioniert in die entgegengesetzte Richtung: Wenn der Kritiker die erwartete Belohnung überschätzt, verringert der Unterschied zwischen Erwartung und Realität die Aktionsausgaben des ersten neuronalen Netzwerks, was zu dieser überschätzten Belohnungsanzeige des zweiten Netzwerks führte.
Wie Sie sehen, werden in diesem Fall die Aktionen direkt durch das Belohnungssignal optimiert. Dies ist die gemeinsame Essenz aller modellfreien Algorithmen beim Reinforcement Learning. Sie sind derzeit auf dem neuesten Stand der Technik.
Ihr Vorteil ist, dass durch Gradientenabstieg optimale Aktionen angestrebt werden, so dass am Ende die optimalsten gefunden werden. Was bedeutet, das beste Ergebnis zu zeigen. Ein weiterer Vorteil ist die Möglichkeit, kleine (und damit schneller lernbare) neuronale Netze zu verwenden. Wenn aus der ganzen Vielzahl von Umweltfaktoren einige spezifische Faktoren zur Lösung des Problems entscheidend sind, kann der Gradientenabstieg sie durchaus identifizieren. Und verwenden Sie, um das Problem zu lösen. Diese beiden Vorteile haben den Erfolg mit direkten modellfreien Methoden sichergestellt.
Sie haben aber auch Nachteile. Da Aktionen direkt durch das Belohnungssignal vermittelt werden, sind viele Trainingsbeispiele erforderlich. Dutzende Millionen, auch in sehr einfachen Fällen. Sie arbeiten schlecht an Aufgaben mit einer großen Anzahl von Freiheitsgraden. Wenn es dem Algorithmus nicht sofort gelingt, Schlüsselfaktoren in der hochdimensionalen Landschaft zu identifizieren, wird er höchstwahrscheinlich überhaupt nicht lernen. Auch modellfreie Methoden können Schwachstellen im System ausnutzen, indem sie sich auf nicht optimale Aktionen konzentrieren (wenn der Gradientenabstieg darauf konvergiert) und andere Umgebungsfaktoren ignorieren. Auch für geringfügig andere modellfreie Aufgaben müssen die Methoden komplett neu trainiert werden.
Modellbasiert
Die modellbasierten Methoden im Reinforcement Learning unterscheiden sich grundlegend von dem oben beschriebenen Ansatz. In Model-Based sagt ein neuronales Netzwerk nur voraus, was als nächstes passieren wird. Keine Aktion anbieten. Das heißt, es ist einfach ein Modell der Realität (daher das "Modell" -basierte im Namen). Und überhaupt kein Entscheidungssystem.
Modellbasierte neuronale Netze werden mit dem aktuellen Zustand der Zustandsumgebung und den Aktionen, die wir ausführen möchten, versorgt. Und das neuronale Netzwerk sagt voraus, wie sich der Zustand in Zukunft ändern wird, nachdem diese Aktionen angewendet wurden. Sie kann auch vorhersagen, welche Belohnung sich aus diesen Aktionen ergibt. Dies ist jedoch nicht erforderlich, da die Belohnung normalerweise aus einem bekannten Zustand berechnet werden kann. Ferner kann dieser Ausgangszustand (zusammen mit neuen vorgeschlagenen Aktionen) auf den Eingang des neuronalen Netzwerks zurückgeführt werden und so Änderungen in der externen Umgebung viele Schritte vorwärts rekursiv vorhersagen.
Modellbasierte neuronale Netze sind sehr einfach zu erlernen. Da sie einfach vorhersagen, wie sich die Welt verändern wird, ohne Vorschläge zu machen, welche optimalen Maßnahmen ergriffen werden sollten, damit sich die Belohnung erhöht. Daher verwendet das modellbasierte neuronale Netzwerk alle vorhandenen Beispiele für sein Training und nicht nur diejenigen, die zu einer Erhöhung oder Verringerung der Belohnungen führen, wie dies bei modellfrei der Fall ist. Dies ist der Grund, warum modellbasierte neuronale Netze weitaus weniger Trainingsbeispiele benötigen.
Der einzige Nachteil besteht darin, dass das modellbasierte neuronale Netzwerk die tatsächliche Dynamik des Systems untersuchen und daher über ausreichende Kapazitäten verfügen sollte. Ein modellfreies neuronales Netzwerk kann auf Schlüsselfaktoren konvergieren, den Rest ignorieren und daher ein kleines einfaches Netzwerk sein (wenn die Aufgabe im Prinzip durch weniger Ressourcen gelöst wird).
Ein weiterer großer Vorteil ist neben dem Training an einer kleineren Anzahl von Beispielen, dass als universelles Modell der Welt ein einziges modellbasiertes neuronales Netzwerk verwendet werden kann, um eine beliebige Anzahl von Problemen in dieser Welt zu lösen.
Das Hauptproblem des modellbasierten Ansatzes besteht darin, welche Aktionen Aktionen auf die Eingabe neuronaler Netze angewendet werden sollten. Schließlich bietet das neuronale Netzwerk selbst keine optimalen Aktionen.
Der einfachste Weg ist, durch ein solches neuronales Netzwerk Zehntausende von zufälligen Aktionen zu fahren und diejenigen auszuwählen, für die das neuronale Netzwerk die größte Belohnung vorhersagt. Dies ist ein klassisches modellbasiertes Reinforcement-Lernen. Bei großen Dimensionen und langen Zeitketten ist die Anzahl der möglichen Aktionen jedoch zu groß, um sie alle zu sortieren (oder zumindest ein wenig optimal zu erraten).
Aus diesem Grund sind modellbasierte Methoden in der Regel modellfreien Methoden unterlegen, die durch Gradientenabstieg direkt zu den optimalsten Aktionen konvergieren.
Eine verbesserte Version für Bewegungen in der Robotik besteht darin, keine zufälligen Aktionen zu verwenden, sondern die vorherige Bewegung beizubehalten und der Normalverteilung Zufälligkeit hinzuzufügen. Da die Bewegungen von Robotern normalerweise reibungslos sind, wird die Anzahl der Büsten verringert. Gleichzeitig kann eine wichtige scharfe Veränderung übersehen werden.
Die endgültige Entwicklungsoption für diesen Ansatz kann als CEM-Option betrachtet werden, bei der keine feste Normalverteilung verwendet wird, die Zufälligkeit in den aktuellen Aktionspfad einführt, sondern die Parameter der Zufallsverteilung mithilfe der Kreuzentropie ausgewählt werden. Zu diesem Zweck wird eine Population von Aktionsberechnungen gestartet, von denen die besten verwendet werden, um die Verteilung der Parameter in der nächsten Generation zu verfeinern. So etwas wie ein evolutionärer Algorithmus.
PDDM
Eine so lange Einführung war erforderlich, um zu erklären, was in dem neuen vorgeschlagenen modellbasierten PDDM-Verstärkungslernalgorithmus geschieht. Nach dem Lesen eines Artikels im Berkeley AI-Blog (oder einer erweiterten Version ) und sogar des Originalartikels von arxiv.org/abs/1909.11652 war dies möglicherweise nicht offensichtlich.
Die PDDM-Methode wiederholt die Idee von CEM, wenn zufällige Aktionen ausgewählt werden, die über ein modellbasiertes neuronales Netzwerk ausgeführt werden müssen, um Aktionen mit der höchsten vorhersehbaren Belohnung auszuwählen. Nur anstatt zufällige Verteilungsparameter auszuwählen, wie dies in CEM der Fall ist, verwendet PDDM eine zeitliche Korrelation zwischen Aktionen und eine weichere Regel zum Aktualisieren der zufälligen Verteilung. Die Formel ist im Originalartikel angegeben. Auf diese Weise können Sie eine größere Anzahl geeigneter Aktionen über große Zeitdistanzen überprüfen, insbesondere wenn Bewegungen eine präzise Koordination erfordern. Zusätzlich filtern die Autoren des Algorithmus Kandidaten für Aktionen, wodurch eine glattere Bewegungsbahn erhalten wird.
Einfach ausgedrückt, schlugen die Entwickler einfach eine bessere Formel für die Auswahl von zufälligen Aktionen vor, die im klassischen modellbasierten Reinforcement-Lernen getestet werden sollen.
Das Ergebnis war aber sehr gut.
In nur 4 Stunden Training an einem echten Roboter lernte ein Roboter mit 24 Freiheitsgraden, zwei Bälle zu halten und sie in den Handflächen zu drehen, ohne sie fallen zu lassen. Ein unerreichbares Ergebnis für alle modernen modellfreien Methoden mit einer so geringen Anzahl von Beispielen.
Interessanterweise verwendeten sie für das Training einen zweiten Roboterarm mit 7 Freiheitsgraden, der die heruntergefallenen Bälle aufnahm und zum Hauptroboterarm zurückbrachte:

Infolgedessen konnte die Roboruk nach 1-2 Stunden die Bälle sicher halten und in ihrer Handfläche bewegen, und 4 Stunden reichten für ein vollständiges Training aus.

Achten Sie auf die zuckenden Bewegungen der Finger. Dies ist ein Merkmal modellbasierter Ansätze. Da die beabsichtigten Aktionen zufällig ausgewählt werden, stimmen sie nicht immer mit den optimalen überein. Der modellfreie Algorithmus könnte möglicherweise zu wirklich optimalen reibungslosen Bewegungen konvergieren.
Der modellbasierte Ansatz ermöglicht es jedoch, mit einem trainierten neuronalen Netzwerk, das die Welt modelliert, verschiedene Probleme zu lösen, ohne sie neu zu trainieren. Der Artikel enthält mehrere Beispiele. Sie können beispielsweise die Drehrichtung der Kugeln in der Hand leicht ändern (in Model-Free müssten Sie das neuronale Netzwerk dafür neu trainieren). Oder halten Sie den Ball an einer bestimmten Stelle in Ihrer Handfläche und folgen Sie dem roten Punkt.

Sie können Roboruk auch dazu bringen, beliebige Flugbahnen mit einem Bleistift zu zeichnen. Dies ist für modellfreie Methoden eine sehr schwierige Aufgabe.

Obwohl der vorgeschlagene Algorithmus kein Allheilmittel und nicht einmal ein KI-Algorithmus im wahrsten Sinne des Wortes ist (in PDDM ersetzt das neuronale Netzwerk einfach das analytische Modell, und Entscheidungen werden durch zufällige Suche mit einer kniffligen Regel getroffen, die die Anzahl der Aufzählungen von Optionen verringert), kann er in der Robotik nützlich sein. Da es eine spürbare Verbesserung der Ergebnisse zeigte und an einer sehr kleinen Anzahl von Beispielen trainiert wird.