Neuromorphe Computer

Immer leistungsfähigere KI Anwendungen bringen konventionelle Prozessor-Architekturen an ihre Grenzen. Völlig neue Denkansätze sind notwendig geworden. Neuromorphe Computer Hardware stellt eine der Lösungen dar, die bald die Landschaft digitaler Rechner umwälzen könnte. Sie sind vielfach leistungsfähiger, effizienter und stromsparender als herkömmliche Prozessoren und funktionieren ähnlich dem Gehirn – also völlig anders.

Der Großteil der heutigen Computer Hardware basiert auf der sogenannten von-Neumann-Architektur, die Speicher und Recheneinheit (CPU) voneinander trennt.

 

 

Das Problem dabei: Daten müssen ständig zwischen Speichern und CPU hin und her transferiert werden, was Zeit und vor allem eines kostet: Energie.

Dieses Problem nennt man das von-Neumann-Bottleneck

Chiphersteller behalfen sich bislang damit, indem sie Transistoren immer weiter miniaturisierten (siehe auch Moore-sches Gesetz) und mit verschiedenen Materialien experimentierten. So gelang es ihnen die Dichte der Transistoren auf den Prozessoren immer weiter zu erhöhen. Allerdings hat diese Strategie einen Preis: Abwärme, physikalische Grenzen bei der Abbildbarkeit und immer noch: Energie. Man behilft sich damit, indem man die Anzahl der Prozessor-Kerne erhöht und Berechnungen hochgradig parallelisiert. Jedoch schlägt auch hier wieder – zwar auf einem höheren Niveau-  das von-Neumann-Bottleneck Problem zu. Denn auch parallelisierte Multi-Kern-Prozessoren greifen auf gemeinsame Speicher zu. 

Aktuelle Anforderungen in Deep Learning Einsatz Anwendungen haben das Bottleneck Problem nicht vereinfacht, sondern – im Gegenteil –  durch ihre komplexen Speicherzugriffe noch weiter verschärft.

Neben stetig steigenden Anforderungen aus der Industrie für „smarte“ Applikationen, beispielsweise für Autonomes Fahren, kommen hohe Anforderungen an die Hardware durch neue wissenschaftliche Denkmodelle aus der KI/Kognitionsforschung hinzu.
Insbesondere kontroversielle Theorien (z.B. IIT, GWT) zur Entstehung des menschlichen Bewusstseins, die zur Simulation dieser Modelle mit den verfügbaren Prozessoren schnell auf Grenzen stoßen. Es bedürfe daher völlig neuer Prozessoren, die biologischen Neuronen (Nervenzellen) deutlich ähnlicher sind, um überhaupt realitätsnahe Simulationen für diese Forschung durchspielen zu können. Alles andere wäre nur eine Art „Deep Fake Intelligence“ – so Christoph Koch.

Auch in anderen Bereichen, in der KI eine immer zentralere Rolle spielt, wünscht man sich entsprechend spezialisiertere CPUs, wie z.B. in medizinischen und militärischen Anwendungen.

Es zeichnet sich eines klar ab: das Paradigma wie Prozessoren aufgebaut sind, muss sich grundlegend ändern  – oder zumindest entscheidend erweitern.

Ein Ausweg wäre eine neue Art von Nicht-Von-Neumann-Architektur zu finden – also auf massiv parallele Datenverarbeitung zu setzen. Es gibt Ansätze  im Quantencomputing als auch in neuromorphic Computing (mit dem Gehirn als Vorbild). Neuromorphic Computing scheint aktuell im Rennen die Nase vorne zu haben.

Neuromorphe Computer – aber wie?

Neuromorphe Technologien versuchen sich an der Funktionsweise neurophysiologischen Strukturen zu orientieren. In Gehirnen werden (elektro-biochemische) Signale zwischen Neuronen übertragen, sobald ein Neuron beim Überschreiten seines Aktionspotenzial dazu angeregt wird.
So simpel das Prinzip neuronaler Aktionspotenziale beim ersten Blick erscheint, so leistungsfähig und komplex ist es bei genauerer Betrachtungsweise. Trotz der Komplexität ist die neuronale Signalverarbeitung erstaunlich performant.

Ein Neuron

Ein Neuron (Quelle: wikimedia)

Ein Aktionspotenzial eines Neurons kann durch viele Inputs benachbarter Neuronen auf einmal (räumlich) oder durch Inputs, die sich im Laufe der Zeit aufbauen (zeitlich), ausgelöst (depolarisiert) werden. Aufgrund dieser Eigenschaften und der enormen Vernetzung der Synapsen ist das Gehirn in der Lage Informationen hoch performant zu übertragen.

Anders als binäre, konventionelle Computer, die nur mit „Null“ und „Eins“ rechnen, sind neuromorphe Rechner in der Lage mit mehr als nur zwei Zuständen zu arbeiten, ähnlich wie das Gehirn. Neuromorphe Systeme (NMS) verwenden dazu sogenannte „Spike-Netze“. Diese Spikes ermöglichen Informationen räumlich und zeitlich, wie im Gehirn, zu übermitteln.
Wobei NMS sowohl digital als auch analog aufgebaut sein können und die Rolle der Synapsen von Software oder Memristoren übernommen werden kann.

Synapsen vs. Memristoren

Synapsen vs. Memristoren / Quelle: Neuromorphic Computing Using Memristor Crossbar Networks: A Focus on Bio-Inspired Approaches Yeonjoo Jeong, W. Lu (2018)

 

Memristoren können nicht nur übermitteln, sondern auch Informationen – gewichtet – speichern können. Dies spielt insbes. bei lernenden Anwendungen eine große Rolle.

Neben Memristoren spielen weitere Technologien wie Phasenwechsel-Speicher, resistives RAM, magnetisches RAM, Spin-Transfer-Torque und leitfähiges Brücken-RAM eine Rolle.
Andere Möglichkeiten Synapsen nachzubilden bieten sich auch mit Quantenpunkten und Graphen an.

Neuromorphe Systeme – wo anwenden?

Rechenintensive Aufgaben können in Neuromorphen Prozessoren direkt verarbeitet werden, weil Daten nicht erst (aufwendig) zwischen Komponenten transferiert oder an eine Cloud/Rechenfarm ausgelagert werden, wenn es sich um Klein-Computer, wie Smartphones handelt.

Eine weitere große Überlegenheit des Gehirns (gegenüber konventionellen Prozessoren) kommt zum Tragen wenn es um die Flexibilität beim Problemlösungen geht. Eine wichtige Disziplin in der KI.

Man versucht KI Systeme mit immer umfassenderen (und aufwendigeren) Trainingsdatenmodellen in Problemräume „hinein-zu-optimieren“.

Solche konventionelle KI Systeme scheitern bislang an Mehrdeutigkeiten, unscharfen Ausgangsbedingungen und Generalisierungen, sowie Situationen, die vom Problemlöser „intuitives“ Denken verlangen. Ohne dabei die erstaunlichen Errungenschaften einzelner KI Anwendungen (Deep Learning) für klar eingegrenzte Bereiche schmälern zu wollen (siehe AlphaGo).

NMS könnten hier jedoch völlig neue hardware-basierte Plattformen für KI Anwendungen schaffen, die durch ihre Leistungsfähigkeit (ähnlich der des Gehirns) neue leistungsfähigere Rahmenbedingungen bereitstellen.
Rahmenbedingungen, die, mit der richtigen Software, Lösungen für Probleme ermöglichen, obwohl die Ausgangsbedingungen dafür unscharf und unvollständig sind und sogar – „laterales Denken“ erfordern.

Und nicht nur das – KI auf NMS könnte vielleicht sich selbst optimieren und bahnbrechende neue KI hervorbringen. Aktuell alles nur Gedankenspiele.


Neuromorphe Computer – heute?

USB 2 chip, 262K Neuronen

USB 2 chip, 262K Neuronen (Quelle: WikiChip)

Intel verfügt über einen neuromorphen Chip namens Loihi und hat 64 davon verwendet, um ein System mit 8 Millionen Synapsen namens Pohoiki Beach herzustellen, das aus 8 Millionen Neuronen besteht (in naher Zukunft sollen es 100 Millionen Neuronen werden). Momentan werden Loihi-Chips von Forschern eingesetzt, u. a. im Telluride Neuromorphic Cognition Engineering Workshop, wo sie bei der Herstellung künstlicher Haut und bei der Entwicklung von motorisierten Prothesen verwendet werden.

Intel Nahuku Board 32 Chip, 4M Neurons  (Quelle: WikiChip)

Intel Nahuku Board 32 Chip, 4M Neurons (Quelle: WikiChip)

 

IBM verfügt über ein eigenes Neuromorphes System, , das 2014 eingeführt wurde und zuletzt 64 Millionen Neuronen und 16 Milliarden Synapsen aufwies. IBM hat sich zu TrueNorth erstaunlich bedeckt gehalten und im Stillen weiterentwickelt.
Vermutlich, weil IBM von Anfang an eine militärische Zielrichtung anstrebt. Dies untermauert die Partnerschaft mit dem US Air Force Research Laboratory und die Entwicklung an einem „neuromorphen Supercomputer“ mit dem Namen Blue Raven. Auch zu den möglichen Anwendungen hält man sich klarerweise bedeckt. Eine Option könnte die Entwicklung

 intelligenterer und effizienterer Drohnen sein.

 

Neuromorphic Computing ist auch Teil des EU-finanzierten Human Brain Project (HBP), ein 10-Jahres-Projekt, das seit 2013 läuft.

In diesem Zusammenhang sind beiden akademischen „Spin-offs“ SpiNNaker und BrainScaleS zu nennen. 2018 wurde das SpiNNaker-System mit einer Million Kernen in Betrieb genommen, der derzeit größte neuromorphe Supercomputer. Man erhofft sich eine Erweiterung des Systems zur Modellierung von einer Million Neuronen.

Mit BrainScaleS werden ähnliche Ziele wie mit SpiNNaker verfolgt, und die Architektur des Systems befindet sich jetzt in der zweiten Generation, BrainScaleS-2.

 

Neuromorphic Engineering –  eine neuromorphe Zeitenwende steht bevor

Bislang haben sich fast alle Paradigmen der Datenverarbeitung, sowohl auf Software oder Hardware Ebene um das von-Neumann Computermodell entwickelt.
Der Übergang in ein neuromorphes Zeitalter erfordert daher enorme Anstrengungen.

Viele konventionelle Anwendungen werden um-gedacht und überarbeitet werden müssen.

Ein Beispiel ist der Umgang mit visuellen Daten (Bsp. Videoaufnahme): Herkömmliche Systeme verstehen sie als eine einzige Serie von Einzelmessungen erfasster Bildpunkte, „zerhackt“ in Bild-Frames (und komprimiert gespeichert), während ein neuromorpher Prozessor solche Informationen als parallele Veränderungen über die Zeit im gesamten Gesichtsfeld kodieren würde.

Herausforderungen kommen auch auf Programmiersprachen zu, die diese massiv parallelen Hardwarekomponenten ansprechen müssen. Auch müssen Speicher und Sensoren mit NMS kompatibel werden. Das erfordert auch auf dieser Ebene grundlegend neue Denkansätze.