Was ist Neuromorphes Computing?

Rechnen, das Neuronen und Synapsen des Gehirns nachahmt, Informationen als Impulse namens Spikes austauscht und nur dann rechnet, wenn sich etwas ändert. Es platziert den Speicher nah an der Berechnung und zielt auf geringen Stromverbrauch.

Japanische Bezeichnung: ニューロモーフィックコンピューティング

„Neuromorphes Computing“ kommt in 2 Übungsfragen aus 1 Themen vor, z. B. KI-Hardware und Software-Stack.

Fachgebiet: KI-Hardware und Software-Stack

Drei Ideen aus dem Gehirn

Neuromorphes Computing modelliert die Berechnung nach den neuronalen Schaltkreisen des Gehirns. Erstens wird Information nicht als kontinuierliche Werte, sondern durch das Auftreten und den Zeitpunkt kurzer Impulse namens Spikes dargestellt. Zweitens ist es ereignisgesteuert: Schaltungen werden nur aktiv, wenn sich die Eingabe ändert, und ruhende Teile verbrauchen fast keine Energie. Drittens werden die synaptischen Gewichte nah am Ort der Berechnung gespeichert, was die Datenbewegung zwischen Speicher und Recheneinheiten verringert. Ein typischer Entwurf hat viele Kerne, die jeweils viele Neuronen verarbeiten und durch ein Netzwerk verbunden sind, das Spikes als kleine Pakete versendet.

Spikende neuronale Netze

Die auf dieser Hardware ausgeführten Modelle heißen spikende neuronale Netze (SNNs). Jedes Neuron sammelt eingehende Spikes als Membranpotenzial an, und überschreitet dieses eine Schwelle, sendet es einen Spike aus und wird zurückgesetzt. Da die Aktivität dünn besetzt ist und Zeitinformation natürlich verarbeitet wird, gelten SNNs als geeignet für die Verarbeitung von Sensorsignalen und für Inferenz auf Geräten mit begrenzter Energie. Das Feuern eines Spikes ist jedoch eine unstetige, nicht differenzierbare Operation, sodass die übliche Backpropagation gewöhnlicher neuronaler Netze nicht direkt angewendet werden kann; Methoden, die den Gradienten mit einer glatten Funktion annähern oder trainierte konventionelle Modelle umwandeln, werden erforscht.

Typische Chips

2014 stellte IBM TrueNorth vor, einen digitalen Chip mit 1 Million Neuronen und 256 Millionen Synapsen, und berichtete eine Leistungsaufnahme von etwa 70 mW. Intel stellte 2017 seinen Forschungschip Loihi und 2021 die zweite Generation Loihi 2 vor und präsentierte 2024 Hala Point, ein System aus 1152 Loihi-2-Chips mit etwa 1,15 Milliarden Neuronen. Dies sind digitale Schaltungen, doch es wird auch an analogen Bauelementen wie ReRAM (resistivem Speicher) geforscht, die synaptische Gewichte halten und Multiplikations-Akkumulations-Operationen im Speicher ausführen, was eng mit In-Memory Computing zusammenhängt.

Vergleich mit GPUs und Herausforderungen

Bei dichten Matrixberechnungen wie dem Training großer Sprachmodelle dominierten Mitte der 2020er-Jahre konventionelle Beschleuniger wie die GPU. Neuromorphes Computing zahlt sich am ehesten bei dünn besetzten, zeitlich veränderlichen Eingaben und in Anwendungen mit engen Energiegrenzen aus. Zu den Herausforderungen gehören Trainingsmethoden und Genauigkeit von SNNs, ausgereifte Software-Werkzeuge sowie ein Benchmark, der fair mit konventionellen Ansätzen vergleicht, und es wird weiter erforscht, wo es Vorteile haben wird.

Jetzt üben: Fragen zu Neuromorphes Computing

Was ist der Hauptgrund dafür, dass Hardware für neuromorphes Computing einen niedrigen Stromverbrauch anstreben kann?

  1. AAlle Neuronen laufen ständig gleichzeitig mit hoher Taktfrequenz
  2. BAlle Berechnungen werden in 64-Bit-Gleitkomma ausgeführt
  3. CSie arbeitet ereignisgesteuert, sodass nur die Teile aktiv sind, die Spikes empfangen, und der Speicher für die Gewichte liegt nahe an der Berechnung, was Datenbewegungen verringert
Antwort und Erläuterung anzeigen

Antwort: C. Sie arbeitet ereignisgesteuert, sodass nur die Teile aktiv sind, die Spikes empfangen, und der Speicher für die Gewichte liegt nahe an der Berechnung, was Datenbewegungen verringert

Neuromorphes Computing nimmt die neuronalen Schaltkreise des Gehirns zum Vorbild und überträgt Informationen als Impulse, die Spikes genannt werden. Nur die Teile, die bei einer Änderung der Eingabe Spikes empfangen, sind aktiv, sodass bei Verarbeitung mit spärlicher Aktivität untätige Schaltungen kaum Strom verbrauchen. Außerdem liegen die synaptischen Gewichte im Speicher innerhalb jedes Kerns, wodurch lange Datenbewegungen zu und von den Recheneinheiten entfallen. Diese Merkmale unterscheiden es von einer GPU, die dichte Matrixoperationen im Gleichschritt ausführt.

Was ist der Hauptgrund dafür, dass sich gepulste neuronale Netze (Spiking Neural Networks, SNN), die beim neuromorphen Computing verwendet werden, nur schwer direkt mit der Backpropagation gewöhnlicher neuronaler Netze trainieren lassen?

  1. ASNNs haben keine Gewichte
  2. BDas Auslösen eines Spikes ist ein unstetiger Vorgang, der davon abhängt, ob ein Schwellenwert überschritten wird, und ist daher nicht differenzierbar
  3. CSNNs können nur Inferenz ausführen und kennen kein Training
Antwort und Erläuterung anzeigen

Antwort: B. Das Auslösen eines Spikes ist ein unstetiger Vorgang, der davon abhängt, ob ein Schwellenwert überschritten wird, und ist daher nicht differenzierbar

Jedes Neuron eines SNN sammelt eingehende Spikes als Membranpotenzial an und gibt einen Spike ab, wenn dieses einen Schwellenwert überschreitet. Weil dieser Ausgang unstetig zwischen 0 und 1 springt, ist der für die Backpropagation nötige Gradient fast überall 0 oder nicht definiert. Erforscht werden daher Verfahren, die nur beim Training einen Gradienten verwenden, der die Spike-Funktion durch eine glatte Funktion annähert, oder die ein gewöhnliches Netz trainieren und anschließend in ein SNN umwandeln. Die Entwicklung von Trainingsverfahren ist eine der Herausforderungen beim neuromorphen Computing.

Häufige Fragen

Wie unterscheidet sich neuromorphes Computing von einer GPU?

Eine GPU lässt viele Recheneinheiten im Gleichtakt mit einem Takt laufen, um dichte Matrixoperationen schnell auszuführen. Neuromorphes Computing ist ereignisgesteuert, sodass nur die Teile aktiv sind, die Spikes empfangen, und platziert den Speicher nah an der Berechnung, um dünn besetzte Arbeitslasten mit geringer Leistung zu verarbeiten.

Was ist ein spikendes neuronales Netz (SNN)?

Ein neuronales Netz, in dem Neuronen über Impulse namens Spikes kommunizieren. Jedes Neuron sammelt Eingaben als Membranpotenzial an und sendet einen Spike aus, wenn es eine Schwelle überschreitet. SNNs sind die Modelle, die auf neuromorpher Hardware laufen.

Was sind die Herausforderungen des neuromorphen Computings?

SNNs sind schwer zu trainieren, weil Spikes nicht differenzierbar sind, und Genauigkeit, Reife der Software und ein fairer Vergleich mit konventionellen Ansätzen sind ebenfalls offene Fragen. Es wird weiter erforscht, in welchen Anwendungen es überlegen sein wird.

„Neuromorphes Computing“ in den Erläuterungen

Fragen mit „Neuromorphes Computing“ (2)

  1. Was ist der Hauptgrund dafür, dass Hardware für neuromorphes Computing einen niedrigen Stromverbrauch anstreben kann?
  2. Was ist der Hauptgrund dafür, dass sich gepulste neuronale Netze (Spiking Neural Networks, SNN), die beim neuromorphen Computing verwendet werden, nur schwer direkt mit der Backpropagation gewöhnlicher neuronaler Netze trainieren lassen?

Verwandte Begriffe

GPU Backpropagation All-Reduce Arithmetische Intensität Attention Batchgröße Berechnungsgraph Datenparallelität FlashAttention Gradient Checkpointing

Zur Glossarübersicht