Ich habe eine allgemeine Zusammenfassung zu Googles AlphaGo gelesen ( http://googleresearch.blogspot.co.uk/2016/01/alphago-mastering-ancient-game-of-go.html ) und bin auf die Begriffe "Richtlinie" gestoßen network "und" value network ". Auf hoher Ebene verstehe ich, dass das Richtliniennetzwerk verwendet wird, um Bewegungen vorzuschlagen, und das Wertnetzwerk verwendet wird, um "die Tiefe des Suchbaums zu verringern [und den Gewinner an jeder Position zu schätzen], anstatt den gesamten Weg bis zum zu suchen Ende des Spiels."
Diese beiden Netzwerke erscheinen mir überflüssig. Was macht das Richtliniennetzwerk, wenn es das Wertnetzwerk nicht zum Bereinigen seiner Richtlinien verwendet? Es scheint ziemlich klar zu sein, dass das Wertnetzwerk ein lernendes neuronales Netzwerk ist. Ist das Policy-Netzwerk nur eine theoretische Abstraktion und kein tatsächliches neuronales Netzwerk? Die Zielvariable für das Wertnetzwerk scheint Gewinn / Verlust zu sein. Gibt es eine Zielvariable für das Richtliniennetzwerk? Wenn ja, was ist das? Was versucht das Policy-Netzwerk zu optimieren?
Das vollständige PDF des in Nature veröffentlichten Google-Dokuments finden Sie hier: https://vk.com/doc-44016343_437229031?dl=56ce06e325d42fbc72
quelle
Antworten:
Kurz gesagt, jedes Netz hat einen anderen Zweck, als Sie erwähnt haben:
Im Allgemeinen können Sie Wertfunktionsmethoden verwenden, um eine optimale Richtlinie zu finden, oder direkt im Richtlinienbereich suchen, um eine parametrisierte Richtlinienfunktion zu optimieren (natürlich gibt es Vor- und Nachteile). Sie können jeweils Funktionsapproximatoren (zB Deep Nets) verwenden. Ich sehe, dass Sie hauptsächlich über das Policennetz verwirrt sind, deshalb konzentriere ich meine Antwort darauf.
Das Policennetz war zuerst:
trainiert, um die Bewegungen auszuführen, die ein Mensch bei einem bestimmten Board-Status am wahrscheinlichsten ausführen würde (Eingabe ist also ein Board-Status und Ausgabe ist ein Histogramm, das die Wahrscheinlichkeit jeder Aktion bei einem bestimmten Status anzeigt). Das Netz kann die Wahrscheinlichkeitsfunktion approximieren, die der Abbildung von Zuständen auf Aktionen zugrunde liegt. Es ist vernünftig zu überlegen, ob Sie Ihre Richtlinie doch anhand der verfügbaren Daten erstellen möchten. Nach beaufsichtigtem Training mit Expertenbewegungen könnte das Richtliniennetz das Spiel ausreichend spielen (obwohl es weit von einem Master-Level entfernt ist). Sie haben einfach versucht, das allgemeine Muster der Aktionsauswahl von Profispielern zu erfassen.
Dann,
Es wurde in Spielen mit dem Gegner selbst trainiert, um die zuvor erlernte Politik zu optimieren. Diesmal wurden die Gewichte mit dem REINFORCE-Algorithmus aktualisiert. Auf diese Weise aktualisieren Sie die Nettoparameter, um die erwartete Belohnung zu maximieren. Schließlich haben Sie ein Netz, das nicht nur die Aktionen eines Profispielers auswählt, sondern auch zum Gewinnen des Spiels beiträgt (es kann jedoch nicht geplant werden!).
Nach diesem Schritt haben sie die Wertfunktion einer etwas verrauschten Version der erlernten Richtlinie durch Regression angenähert (Eingabe ist das State Board und Ziel das Ergebnis des Spiels). Über dieses Netzwerk können Sie die Blattknotenauswertung beeinflussen.
Konzeptionell gesehen gibt Ihnen das Richtliniennetz eine Wahrscheinlichkeit für Aktionen, aber dies bedeutet nicht, dass Sie in einen guten Zustand gelangen, um das Spiel zu gewinnen. AlphaGo hatte einige "blinde Flecken" und machte während des Turniers einige wirklich schlechte Züge, aber auch einen außergewöhnlichen Zug, an den ein Mensch niemals gedacht hätte.
Schließlich können Sie Ihren Planungsalgorithmus (MCTS) in Kombination mit diesen Netzen verwenden. Warum haben wir all diese Schritte unternommen? Kurz gesagt, das einfache MCTS ohne "Intuition" wäre gescheitert.
quelle
Hier ist mein prägnanter Denkprozess zum Verständnis der beiden unterschiedlichen Netzwerke.
Zunächst ist das Ziel, eine optimale Lösung (oder eine nahezu optimale Lösung) zu finden, ohne eine erschöpfende Suche durchzuführen, was definitiv eine Herausforderung darstellt.
Pro Position oder Zustand sind N Züge möglich, und bei jedem Zug gibt es eine eigene Tiefe D in einem vollständigen Suchbaum. Es ist theoretisch oder mathematisch möglich, alle Pfade zu durchlaufen und eine oder mehrere optimale Lösungen zu finden. Wir möchten jedoch keine vollständige Suche durchführen.
Jetzt haben wir zwei getrennte Fragen zur Entwicklung eines Approximationsansatzes.
Q1. Wie können wir einige Züge aus N pro Position überspringen oder ignorieren? (dh Atemreduktion)
Q2. Wie können wir in einer mittleren Tiefe in einem Suchbaum anhalten, anstatt bis zum Ende des Spiels durchzugehen, ohne eine optimale Lösung zu finden? (dh Tiefenreduzierung)
Das Richtliniennetzwerk dient hauptsächlich zum Herausfiltern nutzloser Bewegungen aus N, ohne jedoch eine optimale Lösung zu finden. Hierbei stützt sich dieses Netzwerk zunächst auf menschliche Expertenbewegungen, dh SL, und wird später von RL verbessert.
Das Wertnetzwerk dient hauptsächlich dazu, die Gewinnwahrscheinlichkeit ohne eine vollständige Suche zu finden.
Diese beiden Netzwerke verfolgen das gemeinsame Ziel, eine optimale Lösung zu finden. Bei jeder strategischen Entscheidung für einen Zug spielt jedoch jedes Netzwerk eine andere Rolle.
Ich hoffe nur, das hilft. Ich weiß, dass es immer noch auf einem hohen Niveau sein würde.
quelle
Ich denke, das OP hat AlphaGo mit Alpha-Beta verwechselt. In Alpha-Beta würden Sie das Richtliniennetzwerk zwar zum Bereinigen verwenden, aber nicht hier. Auch hier gibt es kein Beschneiden, da der Algorithmus auf der Monte-Carlo-Baumsuche (MCTS) beruht.
Wer meint, meine Antwort sei zu lang, kann zum Abschnitt mit der Zusammenfassung übergehen, in dem ich erkläre, warum die beiden Netzwerke nicht redundant sind.
Im folgenden Beispiel werde ich einige Vereinfachungen vornehmen, um das Verständnis meiner Ideen zu erleichtern.
Beispiel:
Stellen Sie sich vor, Sie haben eine Position, in der es zwei rechtliche Schritte gibt. Der erste Zug ist für Sie absolut verloren, der zweite Zug bringt Ihnen jedoch einen gewinnbringenden Vorteil.
Bewertungsnetzwerk
Nehmen wir an, das Bewertungsnetzwerk, das Google Ihnen zur Verfügung stellt, ist perfekt. Es kann jede Blattposition in unserem Beispiel perfekt auswerten. In diesem Beispiel werden wir unser Wertschöpfungsnetzwerk nicht ändern.
Nehmen wir zur Vereinfachung unseres Beispiels an, unser Wertschöpfungsnetzwerk liefert:
Richtliniennetzwerk
Angenommen, Google bietet Ihnen zwei Richtlinien-Netzwerke. Die für unsere Position generierten Wahrscheinlichkeiten sind:
Beachten Sie, dass unser erstes Richtliniennetzwerk für unser Beispiel eine falsche vorherige Wahrscheinlichkeit angibt. Es gibt 0,9 für Zug 1, was ein Verlustzug ist. Dies ist in Ordnung, da nicht einmal Google ein perfektes Netzwerk für Richtlinien trainieren kann.
Spielen mit dem ersten Richtliniennetzwerk
AlphaGo muss eine Simulation mit Monte-Carlo generieren und Zug 1 oder 2 auswählen. Nun zeichnet AlphaGo eine gleichmäßig verteilte Zufallsvariable und wählt Folgendes aus:
AlphaGo wählt also viel eher den zu simulierenden Verlustzug aus (in unserer allerersten Simulation). In unserer ersten Simulation verwenden wir auch das Wertnetzwerk, um eine Punktzahl für die Simulation zu erhalten. In der Zeitung heißt es:
Dieser Wert wäre -1000, da diese Simulation zu einem Verlust führen würde.
Jetzt muss AlphaGo die zweite Simulation generieren. Auch hier würde der erste Schritt viel wahrscheinlicher sein. Aber irgendwann wäre der zweite Schritt die Wahl, weil:
Beachten Sie, dass
N
es sich um die Anzahl der Züge handelt, nach denen gesucht wurde, und die im Nenner stehen. Je wahrscheinlicher unser erster Zug durchsucht wird, desto kleiner ist dieu
Funktion. Daher verbessert sich die Wahrscheinlichkeit, unseren zweiten Zug zu wählen, weil AlphaGo tatsächlich einen Zug nach folgender Gleichung auswählt:Dies ist die Schlüsselgleichung . Bitte schauen Sie es sich genau an:
P
für die vorherige Wahrscheinlichkeit (vom Richtliniennetzwerk angegeben).Q
für die Bewertungspunkte (gegeben durch das Wertnetzwerk)Jetzt wissen wir, dass unser zweiter Zug gewählt wird. In diesem Fall gibt das Wertnetzwerk +1000 aus. Dies erhöht
Q
die Wahrscheinlichkeit , dass der zweite Zug in den späteren Simulationen gewählt wird.Bei genügend Simulationen sollte die Häufigkeit, mit der der zweite Zug für die Simulation ausgewählt wird, höher sein als die Häufigkeit, mit der der erste Zug ausgewählt wird.
Der letzte Schritt, den AlphaGo beschließt, ist (aus dem Papier zitiert):
Spielen mit dem zweiten Richtliniennetzwerk
Unser zweites Richtliniennetzwerk benötigt weniger Iterationen, um Schritt 2 auszuwählen, da die vom Richtliniennetzwerk angegebene vorherige Wahrscheinlichkeit an erster Stelle korrekt ist.
Bemerkungen
Alles hier ist der
Bayesian
Analyse sehr ähnlich . Wir beginnen mit einer vorherigen Wahrscheinlichkeit (angegeben durch das Richtliniennetzwerk), dann generieren wir Daten, um die Wahrscheinlichkeitsverteilung (angegeben durch das Wertnetzwerk) zu verschieben.Zusammenfassungen
quelle
Richtlinien-Netzwerk : Das Netzwerk, das lernt, eine bestimmte Ausgabe zu liefern, indem es dem Spiel eine bestimmte Eingabe gibt, wird als Richtlinien-Netzwerk bezeichnet.
Wertnetze : Das Wertnetz weist dem Status des Spiels Wert / Punktzahl zu, indem eine erwartete kumulative Punktzahl für den aktuellen Status berechnet wird
s
. Jeder Staat durchläuft das Wertnetzwerk. Die Staaten, die mehr Belohnung erhalten, erhalten offensichtlich mehr Wert im Netzwerk.Besseres Verständnis mit Animationen Gehen Sie hier: Policy Networks vs. Value Networks beim Reinforcement Learning
quelle
Soweit ich weiß, liegt der Unterschied in den Ausgaben. Wenn das Richtliniennetzwerk eine Wahrscheinlichkeitsverteilung über die möglichen Züge ausgibt, gibt das Wertnetzwerk einen realen Wert zurück, der als Gewinnwahrscheinlichkeit bei dieser Kartenkonfiguration interpretiert werden kann. Von dort aus wird die Monte-Carlo-Baumsuche durchgeführt, indem Top-K-Züge von dem Suchbaum genommen werden und dann der Suchbaum erneut eingeengt wird, indem Top-K-Wert-Netzwerkausgaben genommen werden.
Fühlen Sie sich verpflichtet, mich zu korrigieren, wenn ich falsch liege.
quelle