Frage

Ich habe gerade ein Google Tech Talk Video abdeckt "Polyworld" sehe (gefunden hier ) und sie sprechen über die Zucht zwei neuronale Netze zusammen Nachkommen zu bilden. Meine Frage ist, wie würde man über die Kombination von zwei neuronale Netze gehen? Sie scheinen so verschieden, dass jeder Versuch, sie zu kombinieren einfach ein drittes, völlig unabhängig Netzwerk bilden würde. Vielleicht bin ich etwas fehlt, aber ich weiß nicht, eine gute Möglichkeit, die positiven Aspekte von zwei getrennten neuronalen Netzen zu nehmen sehen und sie zu einem einzigen zu kombinieren. Wenn jemand auf diesem Prozess ausarbeiten könnte, würde ich es zu schätzen wissen.

War es hilfreich?

Lösung

Sie würden nicht wirklich züchten zwei neuronale Netze zusammen. Vermutlich haben sie eine Vielzahl von genetischem Algorithmus, der eine bestimmte neurale Netzwerkstruktur, eine bestimmte Sequenz von „Genen“ angegeben erzeugt. Sie würden mit einer Bevölkerung von Gensequenzen beginnen, erzeugen ihre charakteristischen neuronale Netze, und dann jedes dieser Netze auf das gleiche Trainingsprogramm aussetzen. Vermutlich einige dieser Netzwerke für die Ausbildung besser als einige andere reagieren würde (das heißt würden sie leichter „trainierbar“, um das gewünschte Verhalten zu erreichen). Sie würden dann die genetischen Sequenzen nehmen, die das beste „Azubis“ produziert, Quer züchten sie miteinander, erzeugen ihre charakteristischen neuronale Netze, die dann auf das gleiche Trainingsprogramm ausgesetzt werden. Vermutlich würden einige dieser neuronalen Netze in der zweiten Generation noch mehr trainierbar als jene der ersten Generation. Diese würden die Eltern der dritten Generation werden, und so weiter und so weiter.

Andere Tipps

Keine Antwort bisher gilt die Natur der Polyworld! ...

Sie beschreiben beide eine typische Genetic Algorithm (GA) Anwendung. Während GA einige der Elemente enthält in Polyworld (Zucht, Auswahl) gefunden, GA impliziert auch eine Form von „objektiven“ Kriterien richtet Evolution in Richtung [relativ] spezifische Ziele zu führen.

Polyworld, auf der anderen Seite ist ein Framework für Artificial Life (ALife). Mit ALife, das Überleben der einzelnen Kreaturen und ihre Fähigkeit, ihre Gene auf andere Generationen weitergeben, ist nicht so sehr unter der Regie von ihrer Fähigkeit, eine bestimmte „Fitness-Funktion“ , gerecht zu werden, sondern ist es gebunden an < strong> verschiedene breiter, nicht-zielorientiert, Kriterien , wie die Fähigkeit des Individuums, sich im Einklang mit seiner Größe und seinen Stoffwechsel in einer Weise zu ernähren, seine Fähigkeit, Räuber, seine Fähigkeit zu finden Paarungspartner zu vermeiden und auch verschiedene Dosen von Glück und Zufall.

Polyworld Modell mit den Kreaturen verbunden sind und ihre Welt ist relativ fest (zum Beispiel alle haben Zugang zu (wenn auch nicht zu verwenden) verschiedene Basissensoren wählen (für Farbe, Form ...) und verschiedene Aktoren ( „Geräte“ zu essen, sich zu paaren, drehen, zu bewegen ...) und diese grundlegenden sensorischen und motorischen Funktionen entwickeln nicht (wie es kann in der Natur, zum Beispiel, wenn Kreaturen Wege finden, um Wärme oder auf Geräusche und / oder Wege zu finden, um von sich bewegenden empfindlich zu werden, die von den ursprünglichen Bewegungs Primitiven usw. unterschiedlich sind ...)

Auf der anderen Seite, das Gehirn von Lebewesen hat Struktur und Verbindungen, die sowohl das Produkt der genetischen Make-up der Kreatur sind ( „Material“ von seinen Vorfahren) und eigenen Erfahrung . Zum Beispiel verwendet der Hauptalgorithmus, um die Stärke der Verbindungen zwischen den Neuronen verwendet Hebbian Logik (dh Feuer zusammen, draht zusammen) während der gesamten Lebensdauer des Tieres (früh, ich bin zu raten, wie der Algorithmus oft eine „Abkühlung hat zu bestimmen, "Faktor, der seine Fähigkeit, minimieren, um die Dinge in einem großen Weg zu ändern, wie sich die Zeiten vergeht). Es ist unklar, ob das Modell eine Form von Lamarkian Evolution umfasst, wobei einige der High-Level-Verhaltensweisen [direkt] durch die Gene weitergegeben, anstatt zu sein [möglicherweise] relearnt mit jeder Generation (auf der indirekten Grundlage einiger genetisch weitergegeben Struktur).

Der markante Unterschied zwischen ALife und GA (und es gibt andere!) Ist, dass mit ALife, der Fokus auf ist die Beobachtung und Förderung in ungerichtete Wegen , emergente Verhaltensweisen was auch immer sie sein mag - , wie zum Beispiel, wenn einige Kreaturen ein Make-up zu entwickeln, die sie in die Nähe Haufen von grünen Lebensmitteln zu warten, fordern und dunkelgrünen Kreaturen warten, sie zu töten, oder einige Kreaturen können ein anderes, zum Beispiel beginnt mit einer Zusammenarbeit von jedem der anderen Anwesenheit für andere Zwecke suchen als Paarung usw. mit GA, liegt der Fokus auf auf einem bestimmtes Verhalten des Programms entwickelt wird . Zum Beispiel das Ziel sein kann das Programm erkennen Kanten in einem Videobild zu haben, und deshalb ist die Evolution in dieser speziellen Richtung begünstigt. Individuelle Programme, die diese Aufgabe besser erfüllen (als Maßnahme mit einer gewissen „Fitness-Funktion“) werden im Hinblick auf die Entwicklung begünstigt.

Ein anderer, weniger offensichtlich, aber wichtiger Unterschied hinsichtlich die Art und Weise Kreaturen (oder Programme im Fall von GA) selbst reproduzieren. Mit ALife einzelnen Kreaturen finden ihre eigenen Paarungspartner , zufällig auf dem ersten obwohl nach einiger Zeit können sie lernen nur mit Kreaturen zu reproduzieren ein bestimmtes Attribut oder Verhalten zeigen. Mit GA, auf der anderen Seite „Sex“ ist mit dem GA Rahmen links selbst, die, zum Beispiel wählt, um vorzugsweise Quer Rasse Individuen (und Klont davon), die auf der besten Fitness-Funktion punkten (und einmmer so dass Raum für einige Zufälligkeit, damit die Lösungssuche bei einigen lokalen Maxima stecken bleibt, aber der Punkt ist, dass der GA Rahmen entscheidet meist der Sex mit wem hat) ...

Diese geklärt haben, können wir zurückkehren zu die ursprüngliche Frage der OP ...
... wie würde man über die Kombination von zwei neuronale Netze gehen? Sie scheinen so verschieden, dass jeder Versuch, sie zu kombinieren einfach ein drittes, völlig unabhängig Netzwerk bilden würde. ... Ich sehe eine gute Möglichkeit, die positiven Aspekte der zwei getrennte neuronale Netze zu nehmen und sie zu einem einzigen kombinieren ... nicht
Der „Erbgut“ eine bestimmte Kreatur wirkt Parameter , wie die Größe des Tieres, seine Farbe und so weiter. Es enthält auch Parameter mit dem Gehirn assoziiert werden, insbesondere seine Struktur: die Anzahl der Neuronen, die Existenz der Verbindung von verschiedenen Sensoren, die Existenz von Verbindungen zu verschiedenen Aktoren (zB (.? ZB ist die Kreatur, die blaue Farbe sehr gut sehen). hat die Kreatur ihr Licht verwenden?). Die spezifischen Verbindungen zwischen den Neuronen und der relativen Stärke von diesen auch in den Genen weitergegeben werden können, wenn auch nur als Anfangswert zu dienen, schnell während der Gehirnlernphase verändert werden.
Durch die zwei Kreaturen, wir [Natur!] Können wählen, in einer mehr oder weniger zufälligen Art und Weise, die Parameter von der ersten Kreatur kommen und die kommen von der anderen Kreatur (sowie ein paar neuen „Mutationen ", die weder von den Eltern kommen). Zum Beispiel, wenn der „Vater“ hatte viele Verbindungen mit rotem Farbsensor, aber die Mutter nicht die Nachkommen wie der Vater in diesem Bereich aussahen, sondern auch seine Mutter 4 Neuron-Schichten-Struktur erhalten, anstatt Vater 6 Neuron-Schichten-Struktur .
Das Interesse, dies zu tun ist neue Fähigkeiten von den Individuen zu entdecken ; in dem obigen Beispiel kann die Kreatur nun besser rot gefärbte Räuber erkennen, und auch Informationen schneller in seinem etwas einfachen Gehirn (im Vergleich mit dem Vater) verarbeiten. Nicht alle Nachkommen sind besser ausgestattet als ihre Eltern, so schwächeren Individuen, in kurzer Zeit (oder vielleicht zum Glück lange genug überleben, verschwinden zu schaffen, sagen wir, ihre Phantasie Art sich zu bewegen und Räuber zu entziehen, obwohl ihre Eltern machte sie blind oder zu groß oder was auch immer ... Das Wichtigste noch einmal. ist nicht so besorgt über unmittelbare Nützlichkeit eines bestimmten Merkmals zu sein, nur um zu sehen, es auf lange Sicht spielen

Neuronale Netze sind nicht (wahrscheinlich) in diesem Fall willkürlich Bäume. Sie sind wahrscheinlich Netzwerke mit einer konstanten Struktur, das heißt gleiche Knoten und Verbindungen, so ‚Zucht‘ würde sie sich auf ‚durchschnittlich‘ die Gewichte der Knoten. Sie könnten die Gewichte für jedes Paar von Knoten in den beiden entsprechenden Netzen im Durchschnitt des ‚Nachkommen‘ net zu produzieren. Oder Sie könnten eine kompliziertere Funktion abhängig von immer weiteren Sätzen von benachbarten Knoten verwenden - die Möglichkeiten sind enorm. Meine Antwort ist unvollständig, wenn die Annahme über die feste Struktur falsch oder unberechtigt ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top