Können wir mit der aktuellen Technologie technisch beliebig große neuronale Netze in Hardware herstellen?


9

Wenn Neuronen und Synapsen mithilfe von Transistoren implementiert werden können, was hindert uns daran, beliebig große neuronale Netze mit denselben Methoden zu erstellen, mit denen GPUs hergestellt werden?

Im Wesentlichen haben wir gesehen, wie außerordentlich gut virtuelle neuronale Netze funktionieren, die auf sequentiellen Prozessoren implementiert sind (selbst GPUs sind sequentielle Maschinen, aber mit großen Mengen an Kernen).

Man kann sich vorstellen, dass wir mit GPU-Designprinzipien - die im Grunde genommen Tausende programmierbarer Prozessoreinheiten haben sollen, die parallel arbeiten - viel einfachere "Neuronen-Prozessoreinheiten" herstellen und Millionen oder Milliarden dieser NPUs in einen einzigen großen Chip stecken könnten. Sie hätten ihr eigenes Gedächtnis (zum Speichern von Gewichten) und wären durch gemeinsame Nutzung eines Busses mit einigen hundert anderen Neuronen verbunden. Sie könnten beispielsweise eine Frequenz von 20 Hz haben, wodurch sie einen Datenbus mit vielen anderen Neuronen teilen könnten.

Natürlich gibt es hier einige elektrotechnische Herausforderungen, aber es scheint mir, dass alle großen Technologieunternehmen diesen Weg inzwischen erkunden sollten.

Viele KI-Forscher sagen, dass Superintelligenz um das Jahr 2045 kommt. Ich glaube, dass ihre Argumentation auf Moores Gesetz und der Anzahl der Neuronen basiert, die wir in Software implementieren können, die auf den schnellsten Computern läuft, die wir haben.

Tatsache ist jedoch, dass wir heute Siliziumchips mit Milliarden von Transistoren herstellen. SPARK M7 hat 10 Milliarden Transistoren.

Wenn die Implementierung eines (nicht programmierbaren) Neurons und einiger hundert Synapsen dafür beispielsweise 100 000 Transistoren erfordert, können wir ein neuronales Netzwerk in Hardware erstellen, das 100 000 Neuronen emuliert.

Wenn wir einen solchen Chip so entwerfen, dass wir ihn einfach physisch größer machen können, wenn wir mehr Neuronen wollen, dann scheint es mir, dass beliebig große neuronale Netze einfach eine Budgetfrage sind.

Können wir mit der aktuellen Technologie technisch beliebig große neuronale Netze in Hardware herstellen?

Denken Sie daran: Ich frage NICHT, ob ein solches Netzwerk tatsächlich sehr intelligent sein wird. Ich frage nur, ob wir faktisch beliebig große, stark miteinander verbundene neuronale Netze herstellen können, wenn wir uns dafür entscheiden, Intel dafür zu bezahlen.

Die Implikation ist, dass an dem Tag, an dem einige Wissenschaftler in der Lage sind, allgemeine Intelligenz in Software zu erstellen, wir unsere Hardwarefähigkeiten nutzen können, um diese allgemeine Intelligenz auf menschliches Niveau und darüber hinaus auszudehnen.


Kommentare sind nicht für eine ausführliche Diskussion gedacht. Dieses Gespräch wurde in den Chat verschoben .
nbro

Antworten:


5

Der Ansatz , den Sie beschreiben , heißt neuromorphe Computing und es ist durchaus ein Besetztfeld .

IBMs TrueNorth hat sogar spitzende Neuronen.

Das Hauptproblem bei diesen Projekten ist, dass noch niemand genau weiß, was er damit anfangen soll.

Diese Projekte versuchen nicht, Chips zu erstellen, die für den Betrieb eines neuronalen Netzwerks optimiert sind . Das wäre sicherlich möglich, aber der teure Teil ist das Training, nicht der Betrieb neuronaler Netze. Und für das Training benötigen Sie riesige Matrixmultiplikationen, in denen GPUs bereits sehr gut sind. ( Googles TPU wäre ein Chip, der für die Ausführung von NNs optimiert ist.)

Um nach Algorithmen zu suchen, die möglicherweise im Gehirn implementiert sind (wir wissen kaum etwas darüber), benötigen Sie Flexibilität, was diese Chips nicht haben. Die technische Herausforderung besteht wahrscheinlich auch darin, viele Synapsen bereitzustellen. Vergleichen Sie einfach die durchschnittliche Anzahl von Synapsen pro Neuron von TrueNorth (256) und des Gehirns (10.000).

Sie könnten also einen Chip erstellen, der nach einer neuronalen Architektur entworfen wurde und schneller, effizienter usw. wäre. Dazu müssen Sie jedoch zuerst wissen, welche Architektur funktioniert. Wir wissen, dass Deep Learning funktioniert, daher verwendet Google maßgeschneiderte Hardware, um seine Anwendungen auszuführen, und ich könnte mir durchaus vorstellen, dass in Zukunft maßgeschneiderte Deep Learning-Hardware auf ein Smartphone in Ihrer Nähe kommt. Um einen neuromorphen Chip für eine starke KI zu erstellen, müssen Sie zuerst eine starke KI entwickeln.


Vielen Dank. Ich glaube, dass sich riesige spikierende neuronale Netze sehr intelligent verhalten werden. Wenn also jemand eine Idee (Durchbruch) bekommt, die es einem Hardware-Neuron ermöglicht, sich effizient mit 10000 oder mehr Neuronen zu verbinden, wäre dies lediglich eine Frage, die über genügend Silizium verfügt, um beliebig große neuronale Netze zu erstellen - und möglicherweise über Superintelligenz. Was impliziert, dass es heute passieren könnte, bereits in einem Labor bei IBM passiert ist - oder in 20 Jahren passieren wird. Das heißt, wir müssen nicht auf das Moores-Gesetz warten.
Frodeborli

4

Wenn Neuronen und Synapsen mit Transistoren implementiert werden können,

Ich hoffe, Sie sprechen nicht über die neuronalen Netze, die derzeit alle Wettbewerbe im Bereich maschinelles Lernen gewinnen (MLPs, CNNs, RNNs, Deep Residual Networks, ...). Diese wurden früher als Modell für Neuronen verwendet, aber sie sind nur sehr lose mit dem verbunden, was in realen Gehirnzellen passiert.

Spiking-Netzwerke sollten realen Neuronen viel näher sein. Ich habe gehört, dass das Hodgkin-Huxley-Modell ziemlich realistisch ist. Im Gegensatz zu den oben genannten Modellen scheint es jedoch keinen effektiven Trainingsalgorithmus für Spiking-Netzwerke zu geben.

was uns daran hindert, beliebig große neuronale Netze zu schaffen

  • Rechenressourcen : Das Training neuronaler Netze nimmt viel Zeit in Anspruch. Wir sprechen über ~ 12 Tage mit einem GPU-Cluster für einige CNN-Modelle in Computer Vision.
  • Trainingsdaten : Je mehr Variablen Sie dem Modell hinzufügen, desto mehr Daten benötigen Sie, um diese zu schätzen. Neuronale Netze sind keine Magie. Sie brauchen etwas, mit dem sie arbeiten können.

Tatsache ist jedoch, dass wir heute Siliziumchips mit Milliarden von Transistoren herstellen. SPARK M7 hat 10 Milliarden Transistoren.

Wenn die Implementierung eines (nicht programmierbaren) Neurons und einiger hundert Synapsen dafür beispielsweise 100 000 Transistoren erfordert, können wir ein neuronales Netzwerk in Hardware erstellen, das 100 000 Neuronen emuliert.

Es ist nicht so einfach:

  • Asynchonosität : Biologische neuronale Netze arbeiten asynchron. Dies bedeutet, dass möglicherweise ein Neuron aktiv ist, während alle anderen nicht aktiv sind.
  • Emulation : Sie gehen davon aus, dass nur ein Zyklus erforderlich ist, um ein biologisches Neuron zu simulieren. Es benötigt jedoch viele tausend Zyklen. Sie können nicht einfach mehr Recheneinheiten verwenden, da einige Dinge nicht parallelisierbar sind. Denken Sie zum Beispiel an die Funktion f(x) = sin(x*x + 1). Für einen Menschen, gibt es grundsätzlich drei Berechnungen: r1 = x*x, r2 = r1 + 1, r3 = sin(r2). Selbst wenn 3 Personen an der Berechnung des Ergebnisses arbeiten, sind Sie nicht schneller als die schnellste Person in dieser Gruppe. Warum? Weil Sie die Ergebnisse der letzten Berechnung benötigen.

Kommentare sind nicht für eine ausführliche Diskussion gedacht. Dieses Gespräch wurde in den Chat verschoben .
nbro

1

Während ein einzelner Transistor die Grundfunktion eines einzelnen Neurons annähern könnte, kann ich nicht zustimmen, dass ein elektronisches Element die Synapsen / Axone simulieren könnte. Transistoren sind auf einer ebenen Fläche geätzt und können nur mit benachbarten oder nahegelegenen Transistoren verbunden werden. Axone im Gehirn erstrecken sich über große Entfernungen (im Vergleich zur Größe des Neurons selbst) und sind nicht auf eine zweidimensionale Oberfläche beschränkt. Selbst wenn wir die Anzahl der Transistoren auf einem Prozessor an die Anzahl der Neuronen in einem Gehirn annähern könnten, wären wir nicht annähernd so viele Verbindungen. Es könnte auch argumentiert werden, dass die analogen Signale im Gehirn mehr Informationen pro Zeiteinheit enthalten als die binären Impulse auf einem Chip. Darüber hinaus hat das Gehirn tatsächlich Plastizität, dh Verbindungen zwischen Neuronen können geschwächt / verworfen oder begradigt / erzeugt werden.


1
Siliziumchips sind in vielen Schichten aufgebaut, was eine große Flexibilität bei der Interkonnektivität zwischen Neuronen ermöglicht. Außerdem bewegt sich der Strom schnell - so können wir die Signalpfade durch Multiplexen gemeinsam nutzen. Ich kann mir verschiedene Möglichkeiten vorstellen, um eine hohe Konnektivität zwischen nahe gelegenen und etwas entfernten Neuronen zu ermöglichen. Plastizität würde durch einen höheren Grad an Konnektivität emuliert - da sich eine verworfene Synapse identisch mit einer Synapse verhält, die mit Null multipliziert wird.
Frodeborli

0

Vielleicht möchten Sie diese Liste berücksichtigen :

10 wichtige Unterschiede zwischen Gehirn und Computer:

  1. Gehirne sind analog, Computer sind digital
  2. Das Gehirn verwendet inhaltsadressierbares Gedächtnis
  3. Das Gehirn ist eine massiv parallele Maschine; Computer sind modular und seriell
  4. Die Verarbeitungsgeschwindigkeit ist im Gehirn nicht festgelegt. Es gibt keine Systemuhr
  5. Kurzzeitgedächtnis ist nicht wie RAM
  6. In Bezug auf Gehirn oder Geist kann keine Unterscheidung zwischen Hardware und Software getroffen werden
  7. Synapsen sind weitaus komplexer als elektrische Logikgatter
  8. Im Gegensatz zu Computern werden Verarbeitung und Speicher von denselben Komponenten im Gehirn ausgeführt
  9. Das Gehirn ist ein selbstorganisierendes System
  10. Gehirne haben Körper

1
Sie machen viele Annahmen und ich bin mit vielen nicht einverstanden. Wiederkehrende neuronale Netze haben die meisten Eigenschaften, die Sie beschreiben. Der Körper muss nicht existieren, wir müssen lediglich die sensorischen Neuronen füttern, damit dieses Gehirn glaubt, einen Körper zu haben - vorausgesetzt, ich möchte, dass dieses Gehirn einen Körper hat.
Frodeborli
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.