Wie lernen KI zu handeln, wenn der Problembereich zu groß ist?


10

Ich lerne am besten durch Experimente und Beispiele. Ich lerne etwas über neuronale Netze und habe (was ich denke) ein ziemlich gutes Verständnis für Klassifikation und Regression sowie über überwachtes und unbeaufsichtigtes Lernen, aber ich bin auf etwas gestoßen, das ich nicht ruhig herausfinden kann.

Wenn ich eine KI trainieren wollte, um ein kompliziertes Spiel zu spielen; Ich denke so etwas wie ein RTS (zB Age of Empires, Empire Earth usw.). Bei diesen Arten von Spielen gibt es normalerweise eine Reihe von Einheiten, die vom Spieler kontrolliert werden (Einheiten, Gebäude), die jeweils unterschiedliche Fähigkeiten haben. Es scheint das Problem zu sein, dass die KI eine Klassifizierung ist (z. B. diese Einheit und diese Aktion auswählen). Wie geht man jedoch mit einem Klassifizierungsproblem auf diese Weise um, da die Anzahl der Einheiten eine Variable ist?

Das einzige, was ich mir vorstellen kann, sind mehrere Netzwerke, die unterschiedliche Phasen ausführen (eine für die Gesamtstrategie, eine für die Steuerung dieses Einheitentyps, eine für diesen Gebäudetyp usw.). aber das scheint, als würde ich das Problem zu kompliziert machen.

Gibt es ein gutes Beispiel für maschinelles Lernen / Neuronale Netze, die komplexe Spiele lernen (nicht speziell RTS, aber komplizierter als Mario )?



Könnte für eine Antwort nützlich sein: ijcai.org/papers07/Papers/IJCAI07-168.pdf und Überprüfung derselben: aigamedev.com/open/review/transfer-learning-rts
Neil Slater

Antworten:


4

Das ist eine gute Frage, und viele Wissenschaftler auf der ganzen Welt stellen dies auch. Zunächst einmal wird ein Spiel wie Age of Empires nicht als wirklich großer Lösungsraum angesehen. Es gibt nicht so viele Dinge, die Sie tun können. Es ist dasselbe in Spielen wie Mario Bros. Das Problem des Lernens in einfachen Spielen wie Atari-Spielen wurde von den Jungs von DeepMind (hier das Papier ) gelöst , das von Google übernommen wurde. Sie verwendeten eine Implementierung von Reinforcement Learning mit Deep Learning.

Zurück zu Ihrer Frage. Ein wirklich großes Problem ist, wie man die Menge an Entscheidungen nachahmt, die ein Mensch jeden Tag trifft. Wach auf, frühstücke, dusche, verlasse dein Haus ... All diese Aktionen erfordern ein wirklich hohes Maß an Intelligenz und viele Aktionen, um sich zu entwickeln.

Es gibt viele Leute, die an diesem Problem arbeiten, ich bin einer von ihnen. Ich kenne die Lösung nicht, aber ich kann Ihnen sagen, in welche Richtung ich schaue. Ich folge den Theorien von Marvin Minsky, er ist einer der Väter der KI. Dieses Buch, die Emotion Machine, gibt einen sehr guten Überblick über das Problem. Er schlug vor, dass der Weg zur Schaffung einer Maschine, die das menschliche Verhalten nachahmt, nicht darin besteht, eine einheitliche kompakte Theorie der künstlichen Intelligenz zu konstruieren. Im Gegenteil, er argumentiert, dass unser Gehirn Ressourcen enthält, die miteinander konkurrieren, um gleichzeitig verschiedene Ziele zu erreichen. Sie nannten dies Denkweisen .


1

Gute Frage. Dies ist eine Frage der Komplexität, und der von Ihnen verwendete Ansatz hängt davon ab, wie komplex das Problem ist. Mit jedem Problem, das wir zu lösen versuchen, ist ein gewisses Maß an Komplexität verbunden, umgangssprachlich definiert als "die Anzahl der interagierenden Dinge oder Dinge, die berücksichtigt werden müssen". Beim überwachten und unbeaufsichtigten Lernen geben wir genau die Anzahl der zu berücksichtigenden Dinge an.

Bei der multiplen linearen Regression teilen wir dem Lernalgorithmus beispielsweise mit, wie viele Funktionen beim Anpassen eines Modells berücksichtigt werden müssen (Anzahl der Spalten in Ihrem Trainingssatz). Die gleiche Situation gilt für unbeaufsichtigtes Lernen; Es wird ein genau definierter Trainingssatz mit einer expliziten Anzahl von Funktionen verwendet (in diesem Fall ohne Beschriftungen).

Was Sie sehen, ist eine Situation, die für eine Klassifizierung oder Regression ungeeignet ist, weil Sie die Anzahl der "zu berücksichtigenden Dinge" nicht genau angeben können. Wie Sie sagen, ist Ihr Problembereich außerordentlich groß. Eine andere Möglichkeit, darüber nachzudenken, besteht in der Ausbildung, die zum Erlernen eines Modells erforderlich ist. Wie schwer fällt es Ihnen, sich vorzustellen, wie das Trainingsset aussieht? In deinem Fall schwierig. Was genau würden die Spalten meines Sets enthalten?

Aus diesem Grund verwenden Anwendungen wie selbstfahrende Autos, Atari und AlphaGo keine Klassifizierung oder Regression. Es ist unmöglich zu wissen, wie das Trainingsset überhaupt aussehen würde. Sie können es versuchen, aber Ihr Modell kann keine zuverlässigen Vorhersagen treffen (in diesem Fall bewegt es sich). Wie viele Dinge müssen Sie berücksichtigen, um ein Modell der Straßenverhältnisse zu erstellen?

Aus diesem Grund gibt es eine dritte Art des maschinellen Lernens, das verstärkte Lernen. Anstatt ein vorgegebenes Trainingsset zu verwenden, wird Versuch und Irrtum verwendet. Durch kontinuierliches Stöbern in seiner Umgebung kann es eine Richtlinie erlernen, die langfristig funktioniert.

Für kleinere Problembereiche, in denen wir die Möglichkeit haben, den Trainingssatz zu definieren, verwenden wir überwachtes und unbeaufsichtigtes maschinelles Lernen. Für größere Problembereiche, in denen es schwierig ist, den Trainingssatz zu definieren, verwenden wir Verstärkungslernen. Natürlich können Sie auch interessante Kombinationen aller oben genannten Ansätze erstellen, aber es kommt immer noch auf die Komplexität an.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.