Kann ein neuronales Netzwerk das Konzept der Entfernung ausarbeiten?

10

Stellen Sie sich ein Spiel vor, bei dem es sich neben einem roten und einem blauen Pixel um einen schwarzen Bildschirm handelt. Wenn sie dieses Spiel einem Menschen geben, werden sie zuerst sehen, dass durch Drücken der Pfeiltasten das rote Pixel verschoben wird. Als nächstes werden sie versuchen, das rote Pixel auf das blaue Pixel zu verschieben.

Geben Sie dieses Spiel einer KI, es bewegt das rote Pixel zufällig, bis eine Million Versuche später versehentlich auf das blaue Pixel verschoben werden, um eine Belohnung zu erhalten. Wenn die KI ein Konzept für den Abstand zwischen dem roten und dem blauen Pixel hätte, könnte sie versuchen, diesen Abstand zu minimieren.

Wenn wir die Pixel des Spiels nehmen, ohne das Konzept der Distanz tatsächlich zu programmieren, können wir dann eine Zahl (en) wie "Entropie" berechnen, die niedriger wäre, wenn die Pixel weit voneinander entfernt sind als wenn sie nahe beieinander liegen? Es sollte mit anderen Pixelkonfigurationen funktionieren. Zum Beispiel ein Spiel mit drei Pixeln, bei denen eines gut und eines schlecht ist. Nur um dem neuronalen Netzwerk ein besseres Gefühl dafür zu geben, wie der Bildschirm aussieht? Geben Sie dem NN dann ein Ziel, z. B. "Versuchen Sie, die Entropie des Bretts zu minimieren und Belohnungen zu erhalten".

Gibt es in der aktuellen Forschung etwas Ähnliches?

Zooby
quelle
Ich glaube nicht, dass Sie ihm das Bild direkt zuführen und es die Entfernung ermitteln lassen würden ... Stattdessen würden Sie ihm eine Reihe von Zahlen zuführen, die die Entfernung, die vertikale Entfernung, die horizontale Entfernung usw. darstellen.
FreezePhoenix
@Pheo ja, aber du müsstest ihm für jede Art von "Spiel" unterschiedliche Werte geben. Was ich damit sagen möchte, könnten wir einen globalen Werttyp haben, der hoch ist, wenn Pixel zusammen gruppiert werden, und niedrig, wenn Pixel voneinander beabstandet sind?
Zooby
"Das nächste, was sie versuchen werden, ist, das rote Pixel auf das blaue Pixel zu verschieben." Möglicherweise nicht "rot" und "blau" sind meistens Feinde, so dass Sie beginnen, die Entfernung zu vergrößern, bevor das blaue Pixel Sie bemerkt.
Lee

Antworten:

1

Antworten

Ich werde Ihre Frage zum Nennwert nehmen und mich eingehend mit diesem Thema befassen.

Ja, sie können. Der typische menschliche Geist kann. Aber bedenken Sie den menschlichen Geist. Millionen, wenn nicht Milliarden von Neuronen. Tatsächlich kann man Distanz als menschliches Konzept betrachten, einfach als Theorie, die aus Interaktionen mit der Welt entwickelt wurde.

Daher könnten Sie nach ein oder zwei Jahren mit einer Tonne Neuronen auf Ihrer Hand dieses Szenario replizieren. Das ist, wenn Ihr Computer so parallel ist wie der menschliche Geist. Die kurze Erklärung ist, dass der menschliche Geist sehr parallel ist.

Es wäre jedoch einfacher, die Entfernung mit einem Programm und nicht mit einer KI zu berechnen und das Ergebnis einfach der KI zuzuführen, die die Entscheidungen treffen würde.

Berücksichtigen Sie die Zeit, die Sie mit dem Betrachten eines Bildschirms verbracht haben. Wenn Sie den (ungefähren) Abstand zwischen zwei Pixeln ermitteln können, kann dies auch ein neuronales Netzwerk tun, wie Sie es sind. Fügen Sie jedoch die Zeit hinzu, die Sie am Leben verbracht und gelernt haben, und es wird eine Katastrophe.

Weiterführende Literatur

Das menschliche Gehirn ist parallel

Dies ist darauf zurückzuführen, dass alle Neuronen im menschlichen Gehirn unabhängig voneinander sind. Sie können echte gleichzeitige Aktionen ausführen, wodurch die Interpretation von Bildern erheblich erleichtert wird, da Neuronenblöcke unabhängig von den Operationen der anderen "denken" können, was die "Verzögerung" auf einen winzigen Betrag begrenzt.

FreezePhoenix
quelle
1

Sie können KI erstellen, um als Mensch zu "sehen". Wie Sie sagten, wenn Sie dem Menschen die Schlüssel geben, wird er zufällig klicken. Er muss nur wissen, welche Tasten er drückt, um näher an andere Objekte auf dem Bildschirm heranzukommen. Ich denke, die Grundlagen einer KI sind Objekterkennung. Ich würde versuchen, ein Skript zu erstellen, um die Bildschirmobjekte des Spiels abzubilden. In Python gibt es rechtliche Beispiele.

Ich würde versuchen, einem Weg wie diesem zu folgen:

  • Machen Sie der KI klar, dass durch Klicken auf die Pfeile oder das WASD im Kontext GAME das Objekt, das die Pixel entsprechend der Richtung bewegt, den Hauptautor (den Spieler) darstellt.

  • Parallel: Ordnen Sie alle Grenzen der Region zu und indizieren Sie verschiedene Objekte innerhalb dieser Region, um automatisch die Koordinatendomäne und den Objektabstand zu erhalten. KI muss das Spiel SEHEN (streamen) und durch Bilder, um Objekte zu kategorisieren. Verstehst du was ich meine?

  • Parallel dazu: Die KI muss alle Texte und Informationen kennen, die auf dem Bildschirm angezeigt werden (alle zugeordnet, erinnerst du dich?). Sie müssen verstehen, wenn sich ein Text ändert oder etwas anderes passiert. Zum Beispiel: Wann immer er zur Ausgangsposition jeder Phase zurückkehrt, wann immer er eine Zählung hat, was passiert, wenn der Cout Null erreicht oder eine gemeinsame Zahl, die eine andere Art von Änderung erzeugt.

  • Er muss verstehen, was sich bei jedem "Respawn" wiederholt. Sie müssen auch verstehen, was "Respawn" ist. Möglicherweise eine bestimmte Kartenposition auf jeder Karte, die zurückgegeben wird, wenn eine Zählung auf dem Bildschirm endet. Oder wenn es auf einen bestimmten Objekttyp stößt (zugeordnetes Objekt)

Um ehrlich zu sein, wenn Sie einen superintelligenten Roboter erstellen möchten, können Sie alle Schritte ausführen, die durch die Köpfe verschiedener Menschen oder der besten Menschen oder die Regeln jedes Spiels gehen. Manchmal ist es jedoch einfacher, bestimmte Bots zu erstellen, um bestimmte Aufgaben auszuführen. Es hängt davon ab, was Sie tun möchten

Guilherme IA
quelle
Er fragte nicht, wie Sie es tun würden, sondern können Sie es tun.
FreezePhoenix
Es gibt verschiedene Möglichkeiten. Ich habe den Weg bestanden, den ich zum Erstellen der Vorlage eingeschlagen habe. Es ist keine Theorie, es ist ein Prozess, der andere Prozesse gemäß der Evolution der KI umfassen kann.
Guilherme IA
1

Was Sie dort erwähnen, ist das perfekte Beispiel für die Pfadplanung , die in der KI ausführlich erforscht wird.

Bitte suchen Sie nach einem A-Stern-Algorithmus und wie Sie ihn mit neuronalen Netzen verbessern können :)

pcko1
quelle
1

Wir können das Problem wie folgt aufteilen:

<x0,y0,x1,y1>(x0y0)2+(x1y1)2

<x0,y0,x1,y1>

Natürlich gibt es keinen Grund, dies in zwei getrennten neuronalen Netzen zu tun, also können wir einfach die beiden End-to-End-Modelle kombinieren, die das Bild als Eingabe und die Entfernung als Ausgabe verwenden.

Dieses Modell müsste jedoch auf beschrifteten Daten trainiert werden, sodass Sie die Daten entweder selbst generieren oder Bilder beschriften müssen.

Wenn Sie jedoch möchten, dass der Begriff des Schließens einer Distanz auf weniger überwachte Weise erlernt wird, müssen Sie das Verstärkungslernen verwenden. In diesem Fall müssten Sie eine Umgebung einrichten, die den Agenten dazu anregt, die Entfernung zu verringern. Dies kann so einfach sein wie das Erhalten einer Belohnung, wenn eine Aktion die Entfernung verringert.

Ein anderer Ansatz wäre, den Agenten mit zukünftigen Belohnungen zu motivieren. Das heißt, die Belohnung kommt nicht nur von den Ergebnissen des nächsten unmittelbaren Zustands, sondern es gibt auch Beiträge vom nächsten möglichen Zustand und dem danach und so weiter. Dies ist die Idee hinter Deep Q-Learning, und ich implementiere ein einfaches Beispiel (sehr ähnlich dem, was Sie beschreiben) in dieses Notizbuch .

Die Frage ist nun: Hat diese Implementierung etwas anderes getan, als sich zufällig zu bewegen, bis sie einem Weg zum Erfolg folgt?

In Ihrem Beispiel sprechen Sie davon, den Agenten zu belohnen, wenn er auf dem Ziel landet. Aber in dem, was ich beschrieben habe, wurde es belohnt, indem man sich dem Ziel näherte (entweder durch die Q-Funktion oder direkt aus der Umgebung). Dies kann durch Erlernen einer abstrakten Vorstellung von Distanz erreicht werden (die in der überwachten Version dargestellt werden kann).

Wenn ein Mensch dies lernt, hat dies genau den gleichen Grund: Der Mensch erhält eine Belohnung dafür, dass er sich durch ein Gefühl zukünftiger Belohnungen in diese Richtung bewegt.

Ich würde sagen, dass bei ausreichendem Training und ausreichenden Daten das verstärkte Lernen dieses Konzept mühelos erlernen kann. In Bezug auf andere Belohnungen, die auf dem Brett vorhanden sind (z. B. "Minimieren Sie die Entropie des Bretts und versuchen Sie, Belohnungen zu erhalten"), müssen Sie darüber nachdenken, was Sie verlangen. Möchten Sie lieber, dass der Agent die Entfernung minimiert oder die Belohnung maximiert? Im Allgemeinen kann es nicht beides. Wenn Sie nach einem Gleichgewicht zwischen beiden suchen, definieren Sie die Belohnung wirklich neu, um auch die Entfernung zu berücksichtigen.

Nathan Margaglio
quelle