In Minecraft ist Redstone ein sehr wichtiger Gegenstand. Es ist ein einzigartiges Material im Spiel. Schalter, Redstone-Fackeln und Redstone-Blöcke können Drähten oder Objekten stromähnliche Energie verleihen.
Redstone-Schaltkreise können Strukturen aufbauen, mit denen Sie andere Maschinen steuern oder aktivieren können. Sie können selbst so gestaltet sein, dass sie auf manuelle Aktivierung durch Spieler reagieren, oder sie können wiederholt Signale ausgeben oder auf Änderungen reagieren, die von Nicht-Spielern verursacht werden Kreaturenbewegung, fallengelassene Gegenstände, Pflanzenwachstum, Tag- und Nachtaustausch usw.
Daher kann Redstone in meiner Welt viele Arten von Maschinen steuern, von einfachen Maschinen wie automatischen Türen, Lichtschaltern und Blitzstromversorgungen bis hin zu riesigen Aufzügen, automatischen Farmen, kleinen Spielplattformen und sogar dem in das Spiel integrierten Computer .
Kürzlich haben Bilibili UP-Besitzer @chenzhanaotou und andere echte „Redstone-Künstliche Intelligenz“ in Minecraft realisiert. Sie haben sechs Monate damit verbracht, das weltweit erste reine Redstone-Neuronale Netzwerk zu entwickeln. Die Aufgabe besteht darin, 15×15 handgeschriebene Ziffern zu erkennen.
Die Autoren gaben an, dass sie zur Implementierung des neuronalen Netzwerks eine nicht-traditionelle Berechnungsmethode verwendet haben – Zufallsberechnung. Das Design und Layout sind viel einfacher als bei herkömmlichen Berechnungen mit voller Präzision und die einzelne theoretische Erkennungszeit beträgt nur 5 Minuten.
Dieses reine Redstone-Neuronale Netzwerk erledigte eine gängige Bilderkennungsaufgabe im Bereich des maschinellen Lernens – handschriftliche Ziffernerkennung – und die Genauigkeit erreichte 80 % (simuliert anhand des MNIST-Datensatzes).
Im Implementierungsprozess verwendet der Autor unter anderem folgende Elemente:
Ein einzelnes Neuron akzeptiert mehrere Eingaben und erzeugt eine Ausgabe.
Fügen Sie einen „Multiplikator“ hinzu, um eine Dezimalmultiplikation nur mit Zufallszahlen und einem einzigen Logikgatter durchzuführen.
Das Neuronen-Array gibt das Erkennungsergebnis aus oder übergibt es an die nächste Schicht.
Vertrauen jeder Zahl.
Die Faltungsschicht wird zum Extrahieren von Strichmerkmalen verwendet.
Vollständig verbundene erste Ebene: Informationen komprimieren und klassifizieren.
Aktivierungsfunktionsarray: Ordnen Sie Daten nichtlinear dem hochdimensionalen Merkmalsraum zu.
Vollständig verbundene zweite und dritte Ebene: Erkennungsergebnisse weiter klassifizieren und ausgeben.
Der Autor gab an, dass die vom Netzwerk verwendete Architektur komprimiertes LeNet-5 ist und die Genauigkeit 80 % erreicht.
Aufgrund der Rechenleistung von Minecraft beträgt die tatsächliche Erkennungszeit jedoch mehr als 20 Minuten. Nichtsdestotrotz ist dies immer noch ein großer Durchbruch auf dem Gebiet der digitalen Redstone-Elektronik und könnte auch als Inspiration für reale Hardware-Neuronale Netze dienen.
Derzeit wurde das Video mehr als 800.000 Mal abgespielt, belegt Platz 39 der Bilibili-Rangliste und versetzt Internetnutzer aus allen Gesellschaftsschichten in Erstaunen. Sogar der Gewinner des Turing-Preises, Yann LeCun, veröffentlichte das Video erneut auf Facebook und sagte: „Eine sehr geduldige und beharrliche Person, die LeNet-5 in meiner Welt mithilfe von Redstone implementiert hat, ist der Vorschlager der LeNet-Architektur.“
【Minecraft】Das weltweit erste reine Redstone-Neuronale Netzwerk! Echte künstliche Intelligenz von Redstone (Chinesisch/Englisch) [Minecraft] Redstone Convolutional Neural Network – Prinzip
In einem weiteren Video „[Minecraft] Redstone Convolutional Neural Network – Prinzip“ erklärt der Autor die Prinzipien von Redstone Convolutional Neural Networks ausführlich.
Im Allgemeinen verwenden sie ein komprimiertes LeNet-5-Faltungsnetzwerk. Faltung ist der erste Schritt der Netzwerkberechnung. Es verwendet ein gewichtetes Fenster (Faltungskern), um das Bild einzeln zu scannen und die Striche zu extrahieren .
Dann werden diese Schlaganfallmerkmale zur Klassifizierung und Erkennung in ein tiefes neuronales Netzwerk (vollständig verbundene Schicht) eingespeist.
Implementierung des Redstone Neural Network in Minecraft
Der Autor wird zuerst als Eingabegeräte aufgeführt Dazu gehören ein Monopuls-Druckplattentablett und ein 15×15-Koordinatenbildschirm. Der Handschriftblock erzeugt jeweils ein Koordinatensignal von 2 Ticks, das dann auf dem Bildschirm gezeichnet wird.
Dann gelangen die eingegebenen handschriftlichen Ziffern in die Faltungsschicht. Die Berechnungsmethode besteht darin, die abgedeckten Teile des Faltungskerns zu akkumulieren und auszugeben Ergebnis. Gehen Sie zum nächsten Level. Um die Nichtlinearität sicherzustellen, durchläuft die Ausgabe außerdem die ReLU-Funktion.
Da der Faltungskern nur 3 × 3 ist, verwendet der Autor direkt die elektrische Modelloperation. Und führen Sie ReLU automatisch auf der Ausgabeseite aus.
Da sich die Faltung außerdem nicht wie in der Animation bewegen kann, wird eine direkte Stapelmethode verwendet und dann über eine feste Verkabelung verbunden zur Tablet-Eingabe.
Auf der vollständig verbundenen Schicht besteht jede Schicht aus mehreren neuronalen Netzen. Jedes Neuron verbindet mehrere Eingaben und erzeugt eine Ausgabe. Das Neuron gewichtet und akkumuliert jede Eingabe und speist sie dann in eine Aktivierungsfunktionsausgabe ein. Es ist zu beachten, dass die gewichtete Summierung eine „lineare Division“ ist und die Aktivierungsfunktion nichtlinear sein muss, um die Dimension zu erhöhen. Als Aktivierungsfunktion verwendete der Autor tanh (Tangens hyperbolicus).
spiegelt sich im tatsächlichen Neuronenschaltkreis wider, wie in der folgenden Abbildung dargestellt.
Gleichzeitig wird das Gewicht im Werfer gespeichert (wird verwendet, um das Artikelverhältnis anzupassen, um zufällige Zeichenfolgen unterschiedlicher Häufigkeit zu erzeugen ), geben Sie den Multiplikator ein, der nach der Gewichtung durch das Modul akkumuliert wird.
Bezüglich der Schaltungsimplementierung berechnen Sie zunächst die Addition durch analoge Elektrizität und wandeln sie dann in a um digitales elektrisches Signal.
Der Akkumulator wurde vom 2-Tick-Pipeline-Addierer, der von einem anderen Up-Besitzer bereitgestellt wurde, so modifiziert, dass er nicht überläuft.
Dann werden die Neuronen gestapelt, um eine vollständig verbundene Schicht zu bilden.
Die Ausgabe der letzten Schicht und des Zwischenschichtpuffers verwenden den folgenden analogen Zähler, der die Anzahl der „1“ in der 5-Hz-Reihe zählen kann und die Kapazität 1024 beträgt.
Auf der Ausgangsebene schließlich werden die oberen 4 Bits des Zählers mit der Zählplatine verbunden, und dann wählt die Schaltung den Maximalwert aus und zeigt ihn auf dem Ausgangsfeld an.
Am Ende des Videos zeigt der Autor die endgültige Netzwerkstruktur, wie in der folgenden Abbildung dargestellt. Unter diesen beträgt der Gewichtsbereich [-1, 1], die zufällige Zeichenfolgenlänge beträgt 1024 und die Genauigkeit des MNIST-Datensatzes beträgt etwa 80 %. Bei einer Zeichenfolgenlänge von 256 beträgt die Genauigkeit jedoch nur 62 %.
Das obige ist der detaillierte Inhalt von„Der Eigentümer von Bilibili UP hat erfolgreich das weltweit erste Redstone-basierte neuronale Netzwerk geschaffen, das in den sozialen Medien für Aufsehen sorgte und von Yann LeCun gelobt wurde.'. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!