Ich bin kein Fachmann auf diesem Gebiet, und meine Frage ist wahrscheinlich sehr naiv. Es geht aus einem Aufsatz hervor, in dem die Möglichkeiten und Grenzen des Lernens zur Stärkung, wie sie im AlphaGo-Programm verwendet werden, erläutert werden.
Das Programm AlphaGo wurde unter anderem mit Hilfe von neuronalen Netzen (Monte-Carlo-Erforschung von Bäumen usw.) erstellt, die aus einer riesigen Datenbank von Go-Spielen von Menschen trainiert werden und die dann durch das Spielen von Versionen der Go-Netze verstärkt werden Programm gegen sich selbst oft.
Nun frage ich mich, was passieren würde, wenn wir versuchen würden, ein solches Programm ohne menschliche Datenbank zu erstellen, dh mit einem Grundprogramm von Go zu beginnen, nur Regeln zu kennen und Methoden zu finden, um Bäume zu erforschen, und es zuzulassen, gegen sich selbst zu spielen, um sein neuronales Netzwerk zu verbessern. Werden wir nach vielen Spielen gegen sich selbst zu einem Programm kommen, das mit den besten menschlichen Spielern konkurrieren oder sie schlagen kann? Und wenn ja, wie viele Spiele (in der Größenordnung) wären dafür erforderlich? Oder wird ein solches Programm im Gegenteil zu einem viel schwächeren Spieler konvergieren?
Ich gehe davon aus, dass das Experiment nicht durchgeführt wurde, da AlphaGo so neu ist. Die Antwort kann jedoch für einen Fachmann offensichtlich sein. Andernfalls wird mich jede fundierte Vermutung interessieren.
Die gleiche Frage kann man auch für "einfachere" Spiele stellen. Wenn wir für ein Schachprogramm ungefähr die gleichen Techniken zum Erlernen von Verstärkung verwenden, die auch für AlphaGo verwendet werden, aber keine menschliche Datenbank verwenden, erhalten wir dann irgendwann ein Programm, das den besten Menschen schlagen kann? Und wenn ja, wie schnell? Wurde das versucht? Oder wenn nicht für Schach, was ist mit Dame oder noch einfacheren Spielen?
Danke vielmals.
Dieselbe Frage wurde dem Autor des AlphaGo-Papiers gestellt und er antwortete, dass wir nicht wissen, was passieren würde, wenn AlphaGo von Grund auf lernen würde (sie haben es nicht getestet).
Angesichts der Komplexität des Spiels wäre es jedoch eine schwierige Aufgabe, einen Algorithmus ohne Vorkenntnisse von Grund auf neu zu trainieren. Daher ist es am Anfang vernünftig, ein solches System aufzubauen, indem man es mit dem vom Menschen erworbenen Wissen auf ein Master-Niveau aufrüstet.
Es ist erwähnenswert, dass dieser Prior einen Abklingfaktor hat, obwohl die menschlichen Bewegungen die Aktionsauswahl an den Baumknoten (Zuständen) beeinflussen. Dies bedeutet, dass vermehrte Besuche in einem bestimmten Zustand die Stärke des Vorgängers verringern, um den Algorithmus zum Erkunden anzuregen.
Die aktuelle Stufe der Beherrschung von AlphaGo ist nicht bekannt, wie nah oder fern es der menschlichen Spielweise ist (im Turnier hat es einen Zug gegeben, für den ein Mensch mit einer Wahrscheinlichkeit von fast Null eine Leistung erbracht hat!). . Möglicherweise müssen all diese Fragen noch beantwortet werden, indem die entsprechenden Testalgorithmen tatsächlich implementiert werden.
Ich bin es schuldig, meine Antwort zu bearbeiten, da das aktuelle Paper von DeepMind Ihre Frage beantwortet. Es gab viele Verbesserungen, die sich aus der gesamten vorherigen Erfahrung mit der ersten Version von AlphaGo ergaben, und es lohnt sich wirklich, sie zu lesen.
quelle
Soweit ich den Algorithmus von AlphaGo verstanden habe, basiert er auf einem einfachen RL-Framework (Reinforcement Learning), bei dem mithilfe der Monte-Carlo-Baumsuche die besten Aktionen ausgewählt werden. Darüber hinaus stellen die vom RL-Algorithmus abgedeckten Zustände und Aktionen nicht nur die gesamte mögliche Konfiguration des Spiels dar (Go ist sehr komplex), sondern basieren auf einem Richtliniennetzwerk und einem Wertnetzwerk, die aus echten Spielen gelernt wurden und dann verbessert durch das Spielen von AlphaGo vs AlphaGo.
Dann fragen wir uns vielleicht, ob das Training aus echten Spielen nur eine Abkürzung ist, um Zeit zu sparen, oder eine notwendige Option, um eine solche Effizienz zu erzielen. Ich vermute, niemand weiß die Antwort wirklich, aber wir könnten einige Annahmen aufstellen. Erstens beruht die Fähigkeit des Menschen, gute Bewegungen zu fördern, auf einer viel komplexeren Intelligenz als ein einfaches neuronales Netz. Bei Brettspielen ist es eine Mischung aus Erinnerung, Erfahrung, Logik und Gefühlen. In dieser Richtung bin ich mir nicht sicher, ob der AlphaGo-Algorithmus ein solches Modell erstellen könnte, ohne explizit einen großen Prozentsatz der gesamten Konfiguration des Go-Spiels zu untersuchen (was praktisch unmöglich ist). Aktuelle Forschungen konzentrieren sich darauf, eine komplexere Darstellung eines solchen Spiels zu erstellen, wie relationales RL oder induktives Logiklernen. Dann für einfachere Spiele (könnte der Fall für Schach sein, aber nichts sicheres),
Trotzdem ist es nur eine Meinung. Aber ich bin mir ziemlich sicher, dass der Schlüssel zur Beantwortung Ihrer Frage in dem RL-Ansatz liegt, der heutzutage in Bezug auf Wissen noch recht einfach ist. Wir sind nicht wirklich in der Lage zu identifizieren, was uns in der Lage macht, mit diesen Spielen umzugehen, und der beste Weg, den wir bis jetzt gefunden haben, um den Menschen zu besiegen, besteht darin, grob von ihm zu lernen und das erlernte Modell mit massiven Berechnungen (ein bisschen) zu verbessern.
quelle
Selbst in komplizierten, teilweise beobachteten Umgebungen ist ein kompetitives Selbstspiel ohne menschliche Datenbank möglich. OpenAI konzentriert sich auf diese Richtung. Nach diesem Artikel :
Das ist ein wichtiger Grund für den Erfolg des Selbstspielens.
OpenAI erzielte am 11. August 2017 für Dota 2 1v1 übermenschliche Ergebnisse und schlug Dendi nach den üblichen Turnierregeln mit 2 : 0.
Diese Richtung ist nicht nur für Spiele, sondern auch für Robotikaufgaben vielversprechend.
Im nächsten Schritt erweitern sie die Methode, um zu lernen, wie man kooperiert, konkurriert und kommuniziert , und beschränken sich nicht nur auf das Selbstspiel.
quelle