„Tiefes Verstärkungstraining. AlphaGo und andere Technologien ": die Ankündigung des Buches

Hallo allerseits!

Wir haben eines der besten Bücher zum Thema Verstärkungstraining zur Vorbestellung, das ursprünglich von Maxim Lapan als " Deep Reinforcement Learning Hands-on " bezeichnet wurde. Hier ist das Cover der russischen Übersetzung :



Damit Sie die Zusammenfassung des Buches schätzen können, bieten wir Ihnen eine Übersetzung der vom Autor verfassten Rezension zur Veröffentlichung des Originals an.


Hallo!

Ich bin ein autodidaktischer Enthusiast, der tiefes Lernen liebt. Als Vertreter des Packt-Verlags mich kontaktierten und mir vorschlugen, ein praktisches Buch über den aktuellen Stand des tiefen Lernens mit Verstärkung zu schreiben, hatte ich ein wenig Angst, aber nach einigem Zögern stimmte ich zu und ging optimistisch davon aus: „Oh, es wird eine interessante Erfahrung geben.“
Ich werde nicht sagen, dass mir diese Arbeit als einfacher Spaziergang gegeben wurde, natürlich nicht. Sie haben keine freien Tage, keine Freizeit, ständige Angst vor "eiskalter Dummheit" und die Einhaltung von Fristen für jedes Kapitel (zwei Wochen pro Kapitel und Beispielcode). Im Allgemeinen verlief jedoch alles positiv und sehr interessant.

Bevor wir den Inhalt jedes Kapitels kurz beschreiben, wollen wir die Idee des gesamten Buches beschreiben .
Als ich vor mehr als vier Jahren anfing, in RL zu experimentieren, verfügte ich über folgende Informationsquellen:



Vielleicht gab es noch etwas anderes, aber dies waren die wichtigsten Informationsquellen. Alle von ihnen sind sehr weit von der Praxis entfernt:

  • Das Buch von Sutton und Barto, auch bekannt als "The RL Book", liefert nur die theoretischen Grundlagen dieser Disziplin.
  • RL-bezogene Artikel werden fast täglich veröffentlicht, enthalten jedoch nur selten Links zu bestimmten Codes. Nur Formeln und Algorithmen. Wenn Sie Glück haben, werden Hyperparameter angezeigt.
  • Der David Silver Kurs wurde 2015 am University College London (UCL) unterrichtet. Es gibt einen sehr guten Überblick über die damals existierenden Methoden, so dass sie intuitiv beherrscht werden können. Hier hat die Theorie jedoch wieder Vorrang vor der Praxis.


Gleichzeitig war ich tief begeistert von dem Artikel DeepMind („Ein neuronales Netzwerk kann lernen, Atari-Spiele in Pixeln zu spielen! WOW!“) Und ich hatte das Gefühl, dass diese trockene Theorie einen großen praktischen Wert verbirgt. Also habe ich viel Zeit damit verbracht, die Theorie zu studieren, verschiedene Methoden zu implementieren und sie zu debuggen. Wie Sie wahrscheinlich vermutet haben, war es nicht einfach: Sie können ein paar Wochen damit verbringen, die Methode zu verfeinern und dann feststellen, dass Ihre Implementierung falsch ist (oder, noch schlimmer, Sie haben die Formel falsch verstanden). Ich halte ein solches Training nicht für Zeitverschwendung - im Gegenteil, ich denke, dass dies der richtigste Weg ist, etwas zu lernen. Dies nimmt jedoch viel Zeit in Anspruch.

Zwei Jahre später, als ich anfing, an dem Text zu arbeiten, war mein Hauptziel Folgendes: einem Leser, der diese faszinierende Disziplin nur kennt - wie ich es einmal tat - gründliche praktische Informationen über RL-Methoden zu geben.

Nun ein wenig zum Buch. Es konzentriert sich hauptsächlich auf die Praxis, und ich habe versucht, das Volumen an Theorie und Formeln zu minimieren. Es enthält Schlüsselformeln, aber es werden keine Beweise gegeben. Grundsätzlich versuche ich, ein intuitives Verständnis für das Geschehen zu vermitteln, ohne die maximale Genauigkeit der Präsentation anzustreben.

Gleichzeitig wird davon ausgegangen, dass der Leser über Grundkenntnisse in Deep Learning und Statistik verfügt. Das Buch enthält ein Kapitel mit einem Überblick über die PyTorch-Bibliothek (da alle Beispiele mit PyTorch angegeben werden). Dieses Kapitel kann jedoch nicht als autarke Informationsquelle für neuronale Netze angesehen werden. Wenn Sie noch nie von den Verlust- und Aktivierungsfunktionen gehört haben, schauen Sie sich zunächst andere Bücher an. Heute gibt es viele. (Hinweis: Zum Beispiel das Buch " Deep Learning ").

In meinem Buch finden Sie viele Beispiele unterschiedlicher Komplexität, beginnend mit den einfachsten (die CrossEntropy Methode in der CartPole Umgebung enthält ~ 100 Zeilen in Python), die mit ziemlich großen Projekten enden, z. B. dem Erlernen von AlphGo Zero oder einem RL-Agenten für den Handel an der Börse. Der Beispielcode ist vollständig auf GitHub hochgeladen. In Python gibt es mehr als 14.000 Codezeilen.

Das Buch besteht aus 18 Kapiteln, die die wichtigsten Aspekte des modernen Deep Learning mit Verstärkung behandeln:

  • Kapitel 1 : enthält einführende Informationen zum verstärkten Lernparadigma und zeigt, wie es sich vom Lernen mit und ohne Lehrer unterscheidet. Hier betrachten wir das zentrale mathematische Modell im Zusammenhang mit dem Lernen von Verstärkung: Markov-Entscheidungsprozesse: (MPPR). Die Bekanntschaft mit MPNR wurde Schritt für Schritt gemacht: Ich spreche von Markov-Ketten, die in Markov-Verstärkungsprozesse (unter Hinzufügung einer Verstärkungskomponente) und schließlich in vollwertige Markov-Entscheidungsprozesse umgewandelt werden, bei denen die Aktionen des Agenten auch im Gesamtbild berücksichtigt werden.
  • Kapitel 2 : Vorträge über OpenAI Gym , eine verallgemeinerte API für RL, die für die Arbeit in einer Vielzahl von Umgebungen entwickelt wurde, einschließlich Atari, zur Lösung klassischer Probleme wie CartPole, kontinuierliche Lernaufgaben usw.
  • Kapitel 3 : gibt einen ausdrücklichen Überblick über die PyTorch-API. Dieses Kapitel war nicht als vollständiger Leitfaden für DL gedacht, bildet jedoch die Grundlage für das Verständnis weiterer Kapitel. Wenn Sie andere Tools zum Lösen von Deep-Learning-Problemen verwenden, sollte dies eine gute Einführung in das schöne PyTorch-Modell sein, damit Sie die Beispiele aus den folgenden Kapiteln leichter verstehen können. Am Ende dieses Kapitels werden wir ein einfaches GAN unterrichten, das Atari-Screenshots von verschiedenen Spielen generiert und unterscheidet.
  • Kapitel 4 : Untersucht eine der einfachsten und leistungsfähigsten Methoden: CrossEntropy. In diesem Kapitel lernen Sie das erste Netzwerk kennen, das Probleme in der CartPole-Umgebung lösen kann.
  • Kapitel 5 : Dieses Kapitel beginnt mit dem zweiten Teil des Buches über den Iterationsalgorithmus für Werte. In Kapitel 5 wird eine einfache Methode zum Trainieren von Tabellenkalkulationen unter Verwendung der Bellman-Gleichung zur Lösung von Problemen in der FrozenLake-Umgebung erläutert .
  • Kapitel 6 : Dieses Kapitel führt Sie in die DQNs ein, die das Atari-Spiel spielen. Die Architektur des Agenten ist genau die gleiche wie im berühmten Artikel DeepMind .
  • Kapitel 7 : Einführung mehrerer moderner DQN-Erweiterungen zur Verbesserung der Stabilität und Leistung des zugrunde liegenden DQN. In diesem Kapitel werden die Methoden aus dem Artikel „ Regenbogen: Kombinieren von Verbesserungen in Deep RL “ beschrieben. Alle diese Methoden werden in diesem Kapitel implementiert, und ich erkläre die ihnen zugrunde liegenden Ideen. Diese Methoden sind: N-Schritt-DQN, Dual-DQN, verrauschte Netzwerke, Prioritätswiedergabepuffer, Duell-Netzwerke und Kategorienetzwerke. Am Ende des Kapitels werden alle Methoden zu einem gemeinsamen Codebeispiel zusammengefasst, genau wie im „Regenbogenartikel“.
  • Kapitel 8 : beschreibt das erste mittelgroße Projekt und veranschaulicht die praktische Seite von RL bei der Lösung realer Probleme. In diesem Kapitel wird ein Agent mithilfe des DQN geschult, um Vorgänge an der Vermittlungsstelle auszuführen.
  • Kapitel 9 : Dieses Kapitel beginnt mit dem dritten Teil des Buches über Techniken mit politischem Gradienten. Darin lernen wir solche Methoden, ihre Stärken und Schwächen im Vergleich zu den Methoden der Aufzählung durch bereits oben betrachtete Werte kennen. Die erste Methode in dieser Familie heißt REINFORCE.
  • Kapitel 10 : Beschreibt den Umgang mit einem der schwerwiegendsten Probleme von RL: der Variabilität des Richtliniengradienten. Nachdem Sie mit grundlegenden PG-Levels experimentiert haben, werden Sie mit der Schauspieler-Kritiker-Methode vertraut.
  • Kapitel 11 : Erläutert, wie die Schauspieler-Kritiker-Methode auf moderner Hardware parallelisiert werden kann.
  • Kapitel 12 : Ein zweites praktisches Beispiel, das beschreibt, wie Probleme im Zusammenhang mit der Verarbeitung natürlicher Sprache gelöst werden können. In diesem Kapitel lernen wir einen einfachen Chatbot, wie man RL-Methoden für das Material des Cornell-Kinodialogfelds verwendet .
  • Kapitel 13 : Ein weiteres praktisches Beispiel zur Webautomatisierung: Als Plattform wird MiniWoB verwendet. Leider hat OpenAI die Verwendung von MiniWoB abgelehnt, sodass es schwierig ist, Informationen darüber zu finden ( hier einige Körner). Die Idee von MiniWoB ist jedoch brillant. In diesem Kapitel zeige ich, wie der Agent konfiguriert und geschult wird, um einige der damit verbundenen Probleme zu lösen.
  • Kapitel 14 : Der letzte, vierte Teil des Buches, der fortgeschritteneren Methoden und Techniken gewidmet ist, beginnt damit. Kapitel 14 konzentriert sich auf kontinuierliche Verwaltungsaufgaben und beschreibt die A3C-, DDPG- und D4PG-Methoden zur Lösung von Problemen in einigen PyBullet-Umgebungen.
  • Kapitel 15 : Erläutert weitere Informationen zu kontinuierlichen Verwaltungsproblemen und führt Sie anhand von TRPO, PPO und ACKTR in das Phänomen der Vertrauensregion ein.
  • Kapitel 16 : Lehrmethoden mit Verstärkung ohne Farbverläufe (nach dem Prinzip der „Black Box“); Sie sind als skalierbarere Alternativen für die DQN- und PG-Methoden positioniert. Hier werden evolutionäre Strategien und genetische Algorithmen angewendet, um verschiedene Probleme der kontinuierlichen Kontrolle zu lösen.
  • Kapitel 17 : Untersucht modellbasierte RL-Ansätze und beschreibt den Versuch von DeepMind , die Lücke zwischen modellbasierten und nicht modellbasierten Methoden zu schließen. In diesem Kapitel wird der I2A-Agent für Breakout implementiert.
  • Kapitel 18 : Das letzte Kapitel des Buches beschreibt die AlphaGo Zero-Methode, die beim Spielen von Connect4 verwendet wird. Anschließend wird der fertige Agent als Teil des Telegramm-Bots verwendet, um die Ergebnisse zu überprüfen.



Das ist alles! Ich hoffe dir gefällt das Buch.

Source: https://habr.com/ru/post/de474276/


All Articles