DE112020001369T5 - Gepulste synaptische elemente für gepulste neuronale netze - Google Patents

Gepulste synaptische elemente für gepulste neuronale netze Download PDF

Info

Publication number
DE112020001369T5
DE112020001369T5 DE112020001369.3T DE112020001369T DE112020001369T5 DE 112020001369 T5 DE112020001369 T5 DE 112020001369T5 DE 112020001369 T DE112020001369 T DE 112020001369T DE 112020001369 T5 DE112020001369 T5 DE 112020001369T5
Authority
DE
Germany
Prior art keywords
postsynaptic
neuron
synaptic
pulses
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112020001369.3T
Other languages
English (en)
Inventor
Angeliki Pantazi
Stanislaw Wozniak
Stefan Abel
Jean Fompeyrine
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020001369T5 publication Critical patent/DE112020001369T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Feedback Control In General (AREA)
  • Character Discrimination (AREA)
  • Image Analysis (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

Ausführungsformen der Erfindung sind auf das Übertragen von Signalen zwischen Neuronen eines mittels Hardware realisierten gepulsten neuronalen Netzes (bzw. SNN) gerichtet. Das Netz weist neuronale Verbindungen auf, die jeweils eine synaptische Einheit aufweisen, die ein präsynaptisches Neuron mit einem postsynaptischen Neuron verbindet. Vom präsynaptischen Neuron jeder neuronalen Verbindung werden zunächst auf der Grundlage eines in jeder synaptischen Einheit gespeicherten synaptischen Gewichts frequenzmoduliert, um postsynaptische Impulse zu erzeugen, sodass eine erste Anzahl vom präsynaptischen Neuron empfangener Impulse eine zweite Anzahl postsynaptischer Impulse umgesetzt wird. Mindestens einige der vom präsynaptischen Neuron empfangenen Impulse können jeweils in eine Folge aus zwei oder mehr postsynaptischen Impulsen umgesetzt werden. Die erzeugten postsynaptischen Impulse werden anschließend zum postsynaptischen Neuron jeder neuronalen Verbindung übertragen. Der neuartige Einsatz macht es möglich, beim Synapsenausgang einen höheren Dynamikbereich zu erhalten.

Description

  • HINTERGRUND
  • Die Erfindung betrifft allgemein Techniken zum Übertragen von Signalen zwischen Neuronen eines mittels Hardware realisierten gepulsten neuronalen Netzes. Insbesondere ist sie auf Verfahren zum Übertragen von Signalen zwischen Neuronen eines gepulsten neuronalen Netzes gerichtet, wobei von präsynaptischen Neuronen empfangene Impulse frequenzmoduliert werden (und nicht in Ströme mit sich verändernden Amplituden umgewandelt werden), um postsynaptische Impulsfolgen zu erzeugen, bevor Letztgenannte zu postsynaptischen Neuronen übertragen werden.
  • Maschinelles Lernen beruht oftmals auf künstlichen neuronalen Netzen (KNNs), bei denen es sich um Datenverarbeitungsmodelle handelt, die durch biologische neuronale Netze im Gehirn von Menschen oder Tieren inspiriert sind. Derartige Systeme erlernen schrittweise und selbstständig Aufgaben anhand von Beispielen, auf die sie erfolgreich angewendet wurden, z.B. Spracherkennung, Textverarbeitung und Computer Vision.
  • Ein KNN weist einen Satz verbundener Einheiten oder Knoten auf, die mit biologischen Neuronen in Tiergehirnen vergleichbar sind und daher als „künstliche Neuronen“ bezeichnet werden. Signale werden entlang von Verbindungen (die auch als „Kanten“ bezeichnet werden) ähnlich wie bei Synapsen zwischen künstlichen Neuronen übertragen. Das heißt, ein künstliches Neuron, das ein Signal empfängt, verarbeitet es und signalisiert es danach angeschlossenen Neuronen. In der Regel handelt es sich bei den entlang derartiger Verbindungen übermittelten Signalen um analoge reelle Zahlen, und Ausgangssignale der künstlichen Neuronen werden dank einer nichtlinearen Funktion der Summe seiner Eingangssignale berechnet.
  • Verbindungsgewichte (die auch als „synaptische Gewichte“ bezeichnet werden) sind den Verbindungen und Knoten zugehörig; derartige Gewichte passen sich mit dem Fortschreiten des Lernens an. Jedes Neuron kann mehrere Eingänge haben, und ein Verbindungsgewicht ist jedem Eingang zugeordnet (das Gewicht dieser bestimmten Verbindung). Derartige Verbindungsgewichte werden während einer Trainingsphase erlernt und dadurch aktualisiert. Der Lernprozess erfolgt iterativ: Datenfälle werden dem Netz unterbreitet, in der Regel jeweils einer, und die den Eingangswerten zugehörigen Gewichte werden in jedem Zeitschritt angepasst.
  • Es sind viele Arten neuronaler Netze bekannt, angefangen bei vorwärtsgerichteten neuronalen Netzen wie beispielsweise mehrschichtigen Perzeptronen über tiefe neuronale Netze bis hin zu faltenden neuronalen Netzen. Zudem entstehen neue Arten neuronaler Netze wie beispielsweise gepulste neuronale Netze. Ein gepulstes neuronales Netz (Spiking Neural Network, SNN) unterscheidet sich von üblichen neuronalen Netzen insofern, als SNNs unter Verwendung von Impulsen arbeiten, bei denen es sich um diskrete binäre Ereignisse handelt, die zu einem beliebigen Zeitpunkt asynchron auftreten können, und nicht um Analogwerte, die in regelmäßigen Zeitschritten berechnet werden. Das heißt, SNNs berücksichtigen außer dem neuronalen und synaptischen Zustand auch das Konzept der Zeit. Das heißt, Neuronen feuern anstelle des Feuerns bei jedem Ausbreitungszyklus wie z.B. bei mehrschichtigen Perzeptronnetzen nur, wenn ein Membranpotenzial einen bestimmten Wert erreicht. Feuern bedeutet im Kontext von SNNs, dass ein Neuron ein Signal erzeugt, das andere Neuronen erreicht, die wiederum ihre Potenziale entsprechend den Signalen erhöhen oder verringern, die sie von anderen Neuronen empfangen.
  • Neuronale Netze sind in der Regel in Software realisiert. Ein neuronales Netz kann jedoch auch in Hardware realisiert sein, z.B. als resistive Verarbeitungseinheit oder als optisches neuromorphes System. Das heißt, bei einem mittels Hardware realisierten KNN handelt es sich um eine physische Maschine, die sich deutlich von einem klassischen Computer (Universal- oder Spezialcomputer) In der Weise unterscheidet, dass sie hauptsächlich und speziell so ausgelegt ist, dass sie ein KNN realisiert (zu Trainings- und/oder Schlussfolgerungszwecken). Ein mittels Hardware realisiertes KNN könnte im besten Fall mit einem klassischen Computer emuliert werden (obwohl nicht mit demselben Wirkungsgrad), während es nicht mehrere Datenverarbeitungsaufgaben wie ein klassischer Computer ausführen kann.
  • KURZDARSTELLUNG
  • Gemäß seinem ersten Aspekt ist die vorliegende Erfindung als Verfahren zum Übertragen von Signalen zwischen Neuronen eines mittels Hardware realisierten gepulsten neuronalen Netzes (bzw. SNN) verkörpert. Das Netz weist neuronale Verbindungen auf, die jeweils eine synaptische Einheit aufweisen, die ein präsynaptisches Neuron mit einem postsynaptischen Neuron verbindet. Im Grunde genommen beruht das Verfahren auf einem digitalen Modulationsprozess, der für jede neuronale Verbindung der neuronalen Verbindungen und an jeder synaptischen Einheit davon realisiert ist. Das heißt, von dem präsynaptischen Neuron jeder neuronalen Verbindung empfangene Impulse werden auf der Grundlage eines synaptischen Gewichts, das in jeder synaptischen Einheit gespeichert ist, zuerst frequenzmoduliert, um postsynaptische Impulse zu erzeugen. Auf diese Weise wird eine erste Anzahl von Impulsen, die vom präsynaptischen Neuron empfangen wurden, in eine zweite Anzahl postsynaptischer Impulse umgesetzt. Die erzeugten postsynaptischen Impulse werden anschließend zum postsynaptischen Neuron jeder neuronalen Verbindung übertragen. Alle erzeugten postsynaptischen Impulse können unter Umständen die gleiche Signalamplitude haben.
  • Der vorliegende Ansatz macht es möglich, beim Synapsenausgang einen höheren Dynamikbereich dank der Tatsache zu erhalten, dass die in der synaptischen Einheit erzeugten diskreten Ereignisse im Vergleich zu Analogsignalen, die bei Lösungen nach dem Stand der Technik verwendet werden, bei denen Eingangsimpulse aus einem präsynaptischen Neuron am Synapsenausgang in Analogströme umgesetzt werden, besser wahrnehmbar gelesen und in jedes Ausgangsneuron integriert werden können.
  • Der vorstehend genannte Prozess berücksichtigt Operationen, die bei der synaptischen Einheit durchgeführt werden, in Übereinstimmung mit einem weiteren Aspekt der Erfindung, der eine Schaltung einer synaptischen Einheit betrifft. Bei Ausführungsformen wird der vorstehend genannte Prozess jedoch durch zusätzliche Schritte ergänzt, die beispielsweise durch die prä- und postsynaptischen Neuronen ausgeführt werden. Insbesondere führt dieser Prozess beim postsynaptischen Neuron jeder neuronalen Verbindung zum Erzeugen von Ausgangsimpulsen auf der Grundlage der übertragenen postsynaptischen Impulse. Ausgangsimpulse können erzeugt werden, indem beim postsynaptischen Neuron empfangene postsynaptische Impulse auf der Grundlage einer Anzahl davon integriert werden.
  • Bei Ausführungsformen der Erfindung weist das Verfahren ferner ein Aufrechterhalten (bei jeder synaptischen Einheit) eines Zustands auf, der das synaptische Gewicht bestimmt, wobei der Zustand gemäß einem kognitiven Lernmechanismus geändert werden kann. Insbesondere kann das Verfahren ferner ein Ändern (um noch einmal darauf hinzuweisen, bei jeder synaptischen Einheit) des Zustands gemäß dem kognitiven Lernmechanismus einerseits auf der Grundlage vom präsynaptischen Neuron empfangener Impulse und andererseits auf der Grundlage von Ausgangsimpulsen aufweisen, die bei einem oder mehreren postsynaptischen Neuronen des SNN erzeugt wurden.
  • Die synaptische Einheit kann so konfiguriert sein, dass ein Mechanismus einer von Impulsen und zeitlicher Steuerung abhängigen Plastizität (STDP-Mechanismus) (STDP = spike-timing-dependent plasticity) realisiert wird, der auf vom präsynaptischen Neuron empfangenen Impulsen und auf Ausgangsimpulsen beruht, die bei dem postsynaptischen Neuron erzeugt wurden. Das heißt, der Zustand wird auf der Grundlage eines STDP-Mechanismus geändert.
  • Vom präsynaptischen Neuron empfangene Impulse können insbesondere bei jeder synaptischen Einheit moduliert werden, indem zunächst die empfangenen Impulse in ein oder mehrere elektrische Signale (gemäß einem synaptischem Gewicht, das durch den Zustand bestimmt wird) umgewandelt werden und dann auf der Grundlage der elektrischen Signale eine Frequenz der zu erzeugenden postsynaptischen Impulse festgelegt wird.
  • Bei Ausführungsformen umfassen die vorliegenden Verfahren zwei Zustände, d.h. außer dem vorstehend genannten Zustand (dem primären Zustand) einen sekundären Zustand. Das heißt, der Impulsmodulationsprozess weist ferner ein Aufrechterhalten eines sekundären Zustands auf, der ein kurzzeitiges synaptisches Gewicht bestimmt. Dieser sekundäre Zustand hängt von Impulsen ab, die vom präsynaptischen Neuron empfangen wurden. Das Modulationsschema weist ferner ein Vergleichen eines durch den primären Zustand bestimmten aktuellen synaptischen Gewichts mit einem Schwellenwert auf. Letztgenanntes hängt vom kurzzeitigen synaptischen Gewicht (das aus dem sekundären Zustand bestimmt wurde) ab, wodurch die postsynaptischen Impulse nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als der oder gleich dem Schwellenwert ist.
  • Bei einer bestimmten Klasse von Ausführungsformen ist dieser Schwellenwert gleich dem kurzzeitigen synaptischen Gewicht, wodurch das aktuelle synaptische Gewicht mit dem kurzzeitigen synaptischen Gewicht verglichen wird, während postsynaptische Impulse nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als das oder gleich dem kurzzeitigen synaptischen Gewicht ist. Die Modulation greift ferner auf ein Vergleichen des kurzzeitigen synaptischen Gewichts mit einem für den Schwellenwert zulässigen Maximalwert zurück, und wenn dementsprechend festgestellt wird, dass der Wert größer als der oder gleich dem Maximalwert ist, auf ein Zurücksetzen des kurzzeitigen synaptischen Gewichts.
  • Bei einer weiteren Klasse von Ausführungsformen wird der Schwellenwert zum Zweck des Vergleichens des aktuellen synaptischen Gewichts mit dem Schwellenwert als Differenz zwischen einem Maximalwert und dem kurzzeitigen synaptischen Gewicht genommen. Bei diesem Maximalwert handelt es sich um einen Maximalwert, der für die Summe aus dem aktuellen synaptischen Gewicht und dem kurzzeitigen synaptischen Gewicht zulässig ist. Das heißt, postsynaptische Impulse werden nur erzeugt, wenn das aktuelle synaptische Gewicht größer als die oder gleich der Differenz ist. Hierbei führt der Modulationsprozess jedes Mal zum Zurücksetzen des kurzzeitigen synaptischen Gewichts, wenn ein postsynaptischer Impuls zur Übertragung zum postsynaptischen Neuron erzeugt wird (und nachdem dieser Impuls erzeugt wurde).
  • Gemäß einem weiteren Aspekt ist die Erfindung als Schaltung einer synaptischem Einheit zum Übertragen von Signalen zwischen Neuronen eines mittels hardwarerealisierten SNN verkörpert. Diese Schaltung ist so gestaltet, dass ein präsynaptisches Neuron mit einem postsynaptischen Neuron des Netzes verbunden wird, um dadurch eine neuronale Verbindung zu bilden. In Übereinstimmung mit den vorliegenden Verfahren ist die Schaltung bei Verbindung mit einem präsynaptischen Neuron und einem postsynaptischen Neuron zum Frequenzmodulieren von Impulsen gestaltet, die vom präsynaptischen Neuron empfangen wurden, und zum Übertragen der erzeugten postsynaptischen Impulse zum postsynaptischen Neuron. Vom präsynaptischen Neuron empfangene Impulse werden auf der Grundlage eines in der Schaltung gespeicherten synaptischen Gewichts moduliert, um postsynaptische Impulse zu erzeugen, wodurch während des Betriebs eine erste Anzahl vom präsynaptischen Neuron empfangener Impulse in eine zweite Anzahl postsynaptischer Impulse umgesetzt wird. Wie zuvor ausgeführt, kann die Schaltung so konfiguriert sein, dass sie postsynaptische Impulse erzeugt, die alle eine gleiche Amplitude haben.
  • Bei Ausführungsformen ist die Schaltung so konfiguriert, dass sie, wenn sie mit dem präsynaptischen Neuron und dem postsynaptische Neuron verbunden ist, einen Zustand aufrechterhält, der das synaptische Gewicht bestimmt, und den Zustand einerseits auf der Grundlage von Impulsen, die vom präsynaptischen Neuron empfangen wurden, und andererseits auf der Grundlage von Impulsen ändert, die durch das postsynaptische Neuron abgegeben wurden.
  • Die Schaltung kann eine Impulserzeugungseinheit aufweisen, die so ausgelegt ist, dass sie während des Betriebs die postsynaptischen Impulse erzeugt und Letztgenannte zum postsynaptischen Neuron überträgt. Die Schaltung weist ferner eine memristive Einheit und eine Aktualisierungseinheit auf, die mit jedem des präsynaptischen Neurons und des postsynaptischen Neurons verbindbar und so konfiguriert sind, dass sie während des Betriebs den Zustand ändert. Die memristive Einheit ist einerseits mit der Impulserzeugungseinheit verbunden und anderenfalls mit dem präsynaptischen Neuron verbindbar. Die memristive Einheit ist anderenfalls so konfiguriert, dass sie den Zustand speichert, sodass die Impulserzeugungseinheit Impulse, die durch die memristive Einheit vom präsynaptischen Neuron empfangen wurden, auf der Grundlage eines aus dem Zustand bestimmten synaptischen Gewichts modulieren und während des Betriebs die postsynaptischen Impulse erzeugen kann. Andererseits ist die memristive Einheit mit der Aktualisierungseinheit verbunden, wodurch ein durch die Aktualisierungseinheit geänderter beliebiger Zustand das synaptische Gewicht bestimmt, das während des Betriebs zum Modulieren der Impulse verwendet wird.
  • Bei Ausführungsformen ist die Aktualisierungseinheit so konfiguriert, dass sie einen STDP-Mechanismus auf der Grundlage von Impulsen, die vom präsynaptischen Neuron empfangen wurden, und von Ausgangsimpulsen realisiert, die beim postsynaptischen Neuron erzeugt wurden, wodurch während des Betriebs der Zustand auf der Grundlage dieses STDP-Mechanismus geändert wird.
  • Die memristive Einheit kann ferner so konfiguriert sein, dass sie vom präsynaptischen Neuron empfangene Impulse in ein oder mehrere elektrische Signale (z.B. Strom oder Spannung) gemäß einem synaptischen Gewicht umwandelt, das durch den in der memristiven Einheit gespeicherten Zustand bestimmt wird, und die Impulserzeugungseinheit ist ferner so ausgelegt, dass sie während des Betriebs auf der Grundlage der elektrischen Signale eine Frequenz der zu erzeugenden postsynaptischen Impulse festlegt.
  • Bei Ausführungsformen ist der Zustand ein primärer Zustand, und die memristive Einheit ist eine erste memristive Einheit, die so konfiguriert ist, dass sie den primären Zustand speichert. Die Schaltung der synaptischen Einheit weist ferner eine zweite memristive Einheit auf, die mit dem präsynaptischen Neuron verbindbar und so ausgelegt ist, dass sie einen sekundären Zustand speichert, der ein kurzzeitiges synaptisches Gewicht bestimmt, wobei der sekundäre Zustand während des Betriebs von den Impulsen abhängt, die durch die zweite memristive Einheit vom präsynaptischen Neuron empfangen werden.
  • Die Schaltung der synaptischen Einheit kann ferner einen Komparator aufweisen, wobei Letztgenanntes mit jeder der ersten memristiven Einheit und der zweiten memristiven Einheit verbunden ist, um ein aus dem primären Zustand bestimmtes aktuelles synaptisches Gewicht mit einem Schwellenwert zu vergleichen, wobei Letztgenanntes von dem aus dem sekundären Zustand bestimmten kurzzeitigen synaptischen Gewicht abhängt. Postsynaptische Impulse werden durch die Impulserzeugungseinheit nur erzeugt, wenn während des Betriebs das aktuelle synaptische Gewicht größer als der oder gleich dem Schwellenwert ist.
  • Bei Ausführungsformen ist der Komparator ein erster Komparator, der so ausgelegt ist, dass er das kurzzeitige synaptische Gewicht als Schwellenwert verwendet, wodurch die postsynaptischen Impulse durch die Impulserzeugungseinheit nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als das oder gleich dem kurzzeitigen synaptischen Gewicht ist. In diesem Fall weist die Schaltung ferner einen zweiten Komparator auf, der so konfiguriert ist, dass er das kurzzeitige synaptische Gewicht mit einem für den Schwellenwert zulässigen Maximalwert vergleicht, wobei die Schaltung anderenfalls so konfiguriert ist, dass sie das kurzzeitige synaptische Gewicht zurücksetzt, wenn festgestellt wird, dass Letztgenanntes größer als der oder gleich dem Maximalwert ist.
  • Der Komparator ist so ausgelegt, dass er zum Vergleichen des aktuellen synaptischen Gewichts mit dem Schwellenwert auf eine Differenz zwischen einem Maximalwert und dem kurzzeitigen synaptischen Gewicht als Schwellenwert zurückgreift. Bei diesem Maximalwert handelt es sich um einen Maximalwert, der für die Summe aus dem aktuellen synaptischen Gewicht und dem kurzzeitigen synaptischen Gewicht zulässig ist, wodurch die postsynaptischen Impulse durch die Impulserzeugungseinheit nur erzeugt werden, wenn während des Betriebs das aktuelle synaptische Gewicht größer als die oder gleich der Differenz ist. Außerdem ist die Schaltung ferner so konfiguriert, dass sie das kurzzeitige synaptische Gewicht jedes Mal zurücksetzt, wenn ein postsynaptischer Impuls zur Übertragung zum postsynaptischen Neuron erzeugt wird (und nachdem dieser Impuls erzeugt wurde).
  • Gemäß einem letzten Aspekt ist die Erfindung als Hardwarevorrichtung verkörpert, die ein SNN realisiert, wobei das Netz eine Anzahl neuronaler Verbindungen aufweist, die jeweils ein präsynaptisches Neuron; ein postsynaptisches Neuron; und eine wie beispielsweise vorstehend beschriebene Schaltung einer synaptischen Einheit aufweisen. Die Schaltung verbindet das präsynaptische Neuron mit dem postsynaptischen Neuron.
  • Ein postsynaptisches Neuron kann durch eine Mehrzahl derartiger Schaltungen verbunden sein. Insbesondere kann jedes postsynaptische Neuron der neuronalen Verbindungen insbesondere durch eine Mehrzahl von Schaltungen synaptischer Einheiten des Netzes verbunden und so konfiguriert sein, dass es Ausgangsimpulse erzeugt, die auf den postsynaptischen Impulsen beruhen, die durch alle Schaltungen synaptischer Einheiten übertragen werden, die mit diesen verbunden sind.
  • Bei Ausführungsformen der Erfindung ist jedes postsynaptische Neuron ferner so konfiguriert, dass es die Ausgangsimpulse erzeugt, indem die durch die jeweiligen Schaltungen synaptischer Einheiten übertragenen postsynaptischen Impulse auf der Grundlage einer Anzahl davon integriert werden.
  • Einheiten, Vorrichtungen und Verfahren, die die vorliegende Erfindung verkörpern, werden nun anhand nicht einschränkender Beispiele und unter Bezugnahme auf die beigefügten Zeichnungen beschrieben.
  • Figurenliste
  • Die beigefügten Figuren, bei denen gleiche Bezugsnummern in den einzelnen Ansichten identische oder funktional ähnliche Elemente bezeichnen und die zusammen mit der folgenden ausführlichen Beschreibung in die vorliegende Spezifikation einbezogen sind und einen Teil der vorliegenden Spezifikation bilden, dienen zur weiteren Veranschaulichung verschiedener Ausführungsformen und zur Erläuterung verschiedener Grundgedanken und Vorteile gemäß der vorliegenden Offenbarung, wobei:
    • die 1A und 1B Darstellungen sind, die die Funktion ausgewählter Komponenten eines mittels Hardware realisierten gepulsten neuronalen Netzes (SNN) schematisch veranschaulichen, wobei wie bei Lösungen nach dem Stand der Technik Eingangsimpulse in postsynaptische Ströme mit variierenden Amplituden umgewandelt werden;
    • die 2 bis 7 Darstellungen sind, die die Funktion ausgewählter Komponenten eines mittels Hardware realisierten SNN schematisch veranschaulichen, die zum Übertragen von Signalen zwischen Neuronen davon ausgelegt sind, wobei von präsynaptischen Neuronen empfangene Impulse frequenzmoduliert (und nicht amplitudenmoduliert) werden, um postsynaptische Impulse zu erzeugen, bevor Letztgenannte wie bei Ausführungsformen zu postsynaptischen Neuronen übertragen werden. Zu beachten ist, dass die 2 und 7 allgemein Grundgedanken veranschaulichen, die dem vorliegenden Ansatz zugrunde liegen, während die 3 bis 6 bestimmte Klassen von Ausführungsformen betreffen; und
    • 8 ein Flussdiagramm ist, das auf einer höheren Ebene angesiedelte Schritte eines Verfahrens zum Übertragen von Signalen zwischen Neuronen und einem mittels Hardware realisierten SNN gemäß Ausführungsformen veranschaulicht.
  • Die beigefügten Zeichnungen zeigen vereinfachte Darstellungen von Einheiten und Komponenten oder Teilen davon, die in Ausführungsformen enthalten sind. Ähnlichen oder funktionstechnisch ähnlichen Elementen in den Figuren wurden die gleichen Bezugsziffern zugeordnet, sofern nichts anderes angegeben ist.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Eine zuverlässige und effiziente Hardwarerealisierung eines gepulsten Netzes (SNN) ist ein Problem, da kontinuierliche Signale (Werte) in der Regel durch Synapsen (an Ausgängen davon) zu postsynaptischen Neuronen übertragen werden. Wie unter Umständen vorstellbar ist, wirkt sich dies auf den Dynamikbereich von Signalen aus, die durch einen Synapsenausgang ausgegeben werden. Diese Beobachtung sowie andere Nachteile üblicher mittels Hardware realisierter SNNs hat die Erfinder der vorliegenden Erfindung veranlasst, neue Techniken zum Übertragen von Signalen zwischen Neuronen eines SNN zu entwickeln, wobei von präsynaptischen Neuronen empfangene Impulse frequenzmoduliert werden, um eine eindeutige Anzahl postsynaptischer Impulse zu erzeugen (und nicht in Ströme mit sich ändernden Amplituden umzuwandeln).
  • Unter Bezugnahme auf die 2 und 8 wird ein erster Aspekt der Erfindung beschrieben, der ein Verfahren zum Übertragen von Signalen zwischen Neuronen 11, 14 eines mittels Hardware realisierten gepulsten neuronalen Netzes 1, 1a bis 1c (im Folgenden „SNN“) betrifft. Dieses Verfahren und dessen Varianten werden zusammen als „die vorliegenden Verfahren“ bezeichnet. Bei dem SNN wird angenommen, dass es mehrere neuronale Verbindungen aufweist, die jeweils eine synaptische Einheit 20, 20a bis 20c aufweisen, die ein präsynaptisches Neuron 11 mit einem postsynaptischen Neuron 14 verbindet. Diese synaptische Einheit kann insbesondere als Schaltung realisiert sein, wie später beispielsweise unter Bezugnahme auf einen weiteren Aspekt der Erfindung beschrieben wird. Das SNN kann als Ganzes als Hardwarevorrichtung realisiert sein, die ebenfalls später unter Bezugnahme auf einen letzten Aspekt der Erfindung beschrieben wird.
  • Das Verfahren beruht im Wesentlichen auf einem Modulationsprozess, der bei jeder synaptischen Einheit des SNN realisiert ist, d.h. für jede der neuronalen Verbindungen des Netzes. Gemäß diesem Prozess werden von einem präsynaptischen Neuron 11 empfangene S22 Impulse 31 frequenzmoduliert S26, wie im Flussdiagramm von 8 wiedergegeben. Im Hinblick auf das Erzeugen S27 postsynaptischer Impulse 32 wird die Modulation auf der Grundlage des synaptischen Gewichts w durchgeführt, das in jeder synaptischen Einheit 20, 20a bis 20c gespeichert ist. Aufgrund der Frequenzmodulation wird die Anzahl vom präsynaptischen Neuron empfangener Impulse in der Regel in eine eindeutige Anzahl postsynaptischer Impulse umgesetzt. Zum Beispiel können mindestens einige der vom präsynaptischen Neuron 11 empfangenen Impulse 31 jeweils in eine Folge aus zwei oder mehr postsynaptischen Impulsen 32 umgesetzt werden, wie in den 7B und 7C veranschaulicht. Die erzeugten postsynaptischen Impulse 32 werden anschließend zum postsynaptischen Neuron 14 übertragen S28, das über die synaptische Einheit mit dem präsynaptischen Neuron 11 verbunden ist. Derselbe Prozess wird entlang jeder neuronalen Verbindung des SNN durchgeführt.
  • Bei Impulsen handelt es sich um durch biologische Neuronen erzeugte Impulssignale, die Aktionspotenziale hervorrufen. In ähnlicher Weise handelt es sich bei einer Impulsfolge 32 um eine zeitliche Abfolge von Impulsen, die mit Abfolgen von Aktionspotenzialen verglichen werden können, die durch biologische Neuronen erzeugt wurden.
  • Gemäß dem vorliegenden Ansatz wird eine erste Anzahl von Eingangsimpulsen, die vom präsynaptischen Neuron 11 empfangen wurden, am Ausgang der synaptischen Einheit 20 in eine zweite Anzahl von Impulsen 32 umgesetzt. Die postsynaptischen Impulse 32 sollen in der Regel alle eine gleiche Amplitude haben (und sei es nur, um den Erzeugungsprozess zu vereinfachen), obwohl dies keine strikte Anforderung ist. Bei Varianten können die ausgegebenen postsynaptischen Impulse 32 eindeutige Amplituden haben. Des Weiteren können die ausgegebenen Impulse 32 unter Umständen die gleiche Amplitude wie die Eingangsimpulse haben, obwohl dies keine strikte Anforderung ist.
  • Die Anzahl von Impulsen, die durch die synaptische Einheit ausgegeben werden, hängt von dem darin gespeicherten synaptischen Gewicht w ab. Mit anderen Worten, hierbei bestimmt anstelle einer Amplitude von Strömen, die durch die synaptische Einheit ausgegeben werden, das synaptische Gewicht die Anzahl erzeugter S27 und ausgegebener S28 Impulse (vergleiche die 1 und 2). Interessanterweise sind die vorliegenden Methoden nichtsdestoweniger mit einem Mechanismus einer von Impulsen und zeitlicher Steuerung abhängigen Plastizität (STDP-Mechanismus) kompatibel. Allgemeiner ausgedrückt, derartige Verfahren können verschiedene Lernmechanismen umfassen. Alle derartigen Mechanismen führen mit fortschreitendem Lernen zu einem Ändern der Gewichte der neuronalen Verbindungen. Sobald das SNN ordnungsgemäß trainiert wurde S40, kann es zu Schlussfolgerungszwecken verwendet werden S50. Nach wie vor können die vorliegenden Netze 1, 1a bis 1c unter Umständen nur für Schlussfolgerungszwecke verwendet werden, wodurch die Gewichte jeweils auf einen beliebigen geeigneten Wert festgelegt (d.h. programmiert) werden können, der aus einer vorhergehenden Lernphase erlernt wurde, und daher unverändert bleiben. Das heißt, die synaptischen Gewichte könnten dank einer eigenständigen Hardwarevorrichtung erlernt worden sein.
  • Da sich die Anzahl durch die synaptische Einheit ausgegebener S28 Impulse aus einer Modulation ergibt, die von den in der synaptischen Einheit 20, 20a bis 20c gespeicherten Gewichten abhängt, kann unter Umständen nicht jeder empfangene S22 Impuls 31 bewirken, dass Impulse 32 erzeugt S27 und zu einem postsynaptischen Neuron 14 übertragen S28 werden, wie in 7A veranschaulicht. Vielmehr können unter Umständen tatsächlich nur einige der empfangenen Impulse 31 in eine größere (oder kleinere) Anzahl von Impulsen 32 umzuwandeln (zu modulieren) sein, siehe die 7B und 7C. Die dementsprechend erzeugte Abfolge aufeinanderfolgender Impulse kann Impulsfolgen bilden, wie am besten in 7C zu erkennen ist. Da die Modulation im Frequenzbereich erfolgt, werden die empfangenen S22 Impulse 31 meistens in eine eindeutige Anzahl von Impulsen umgewandelt. Ob diese Umwandlung zu einer größeren oder kleineren Anzahl führt, hängt sowohl von den Gewichtswerten als auch vom tatsächlichen Schema ab. Zum Beispiel kann eine Impulsfolge aus einer größeren Anzahl von Impulsen erhalten werden, wie bei den in den 3 und 7A bis 7C veranschaulichten Ausführungsformen, oder es können umgekehrt vom präsynaptischen Neuron 11 empfangene Impulse in eine größere Anzahl von Impulsen umgewandelt werden (wie bei den in den 4 bis 6 und 7D veranschaulichten Ausführungsformen). Aber da die Umwandlung außerdem von den Gewichtswerten abhängt, können bei Schritt S22 empfangene Impulse gelegentlich zur Ausgabe S28 eines einzigen postsynaptischen Impulses 31 oder überhaupt keines Impulses führen. Bei einigen Konfigurationen müssen unter Umständen mehr als ein Impuls 31 bei der synaptischen Einheit empfangen S22 werden, um die Erzeugung S27 eines postsynaptischen Impulses 32 auszulösen. In derartigen Fällen können Eingangsimpulse 31 je nach dem synaptischen Gewicht nicht direkt in einen oder mehrere postsynaptische Impulse 32 umgewandelt werden.
  • Der vorliegende Ansatz ermöglicht eine effiziente und zuverlässige Realisierung neuronaler Netze, die die Übertragung diskreter Ereignisse anstelle kontinuierlicher Signalwerte umfasst (vergleiche die 2B und 1B). Per Definition ist der vorliegende Ansatz mit digitaler Technologie kompatibel. Es ist anderenfalls mit einer Realisierungsform von Synapsen unter Verwendung memristiver Einheiten kompatibel, wie bei den Ausführungsformen der Erfindung, die später unter Bezugnahme auf einen weiteren Aspekt der Erfindung erörtert werden.
  • Der vorgeschlagene Ansatz macht es möglich, beim Synapsenausgang einen höheren Dynamikbereich dank der Tatsache zu erhalten, dass die bei der synaptischen Einheit erzeugten S27 diskreten Ereignisse im Vergleich zu Analogsignalen 34 (siehe 1) besser wahrnehmbar gelesen und in jedes Ausgangsneuron 14 integriert werden können. Tatsächlich müssen bei Ansätzen nach dem Stand der Technik, die auf analoge postsynaptische Signale zurückgreifen, die Amplituden derartiger Signale in ausreichender Weise unterschieden werden, um eine zufriedenstellende Unterscheidung zwischen Werten zu ermöglichen, die aus derartigen Amplituden gelesen werden. Dies begrenzt jedoch den Dynamikbereich, der bei Signalen am Synapsenausgang erhalten werden kann. Im Gegensatz hierzu greift der vorliegende Ansatz auf zeitliche Auflösung zurück, um die postsynaptischen Ereignisse 32 auseinanderzuhalten. Unter der Annahme eines ausreichend schnellen Erkennungsmechanismus bei den Ausgangsneuronen 14 wird verständlich, dass am Synapsenausgang ein größerer Dynamikbereich erhalten werden kann. Eine einschränkende Bedingung besteht darin, dass den erzeugten Impulsen 32 zugewiesene Zeitfenster in der Regel zu größeren Zeitrahmen führen. Letztgenanntes kann jedoch mit einer ausreichenden zeitlichen Auflösung beim Lesen kompensiert werden. Darüber hinaus kann der postsynaptische Strom 32 in kleineren Zeitschritten integriert werden, als bei Analogsignalen 34 am Membranpotenzial im empfangenden Neuron 14 verwendet werden, wobei alles Übrige ansonsten gleich ist. Zu beachten ist, dass die benötigte zeitliche Auflösung und der damit erreichbare Dynamikbereich von der Zielanwendung und der dafür gewählten Realisierungsform abhängen. Unter der beispielhaften Annahme, dass das System im Mikrosekundenbereich läuft und dass die gepulsten Synapsen unter Verwendung von Nanosekundenimpulsen getaktet werden, übertrifft der erzielte Bereich bereits eine (analoge) Standard-Synapsenkonfiguration mit einem 8-Bit-Dynamikbereich.
  • Das vorliegende Schema hat weitere Vorteile. Zum Beispiel ermöglicht es eine effizientere Auswahl eines Gewinnerneurons in einem „Alles oder nichts“-Netz. Das heißt, bei Verfahren nach dem Stand der Technik wird oftmals die Differenz zwischen einem Membranpotenzial und dem Schwellenwert für das Feuern verwendet, um den Gewinner zu schätzen, bei dem es sich um das erste Neuron handelt, das den Schwellenwert überschreitet. Im Gegensatz hierzu kann das Gewinnerneuron bei hierin betrachteten Ausführungsformen über ein Schwellenwertverfahren direkt bestimmt werden, ohne dass zusätzliche Berechnungen notwendig sind.
  • Zwar ist eine ideale analoge Synapse in der Praxis schwer zu realisieren, die vorliegenden Verfahren stellen jedoch Lösungen bereit, um die Gewichte in einer anderen Weise darzustellen. Derartige Verfahren können auf native neuromorphe Hardwaretechnologie angewendet werden und tragen daher bei kognitiven Aufgaben zu einem massiven Leistungs- und Effizienzgewinn bei. Hardwarebeschleuniger machen es möglich, derartige Aufgaben zu beschleunigen, insbesondere bei resistiven Verarbeitungseinheiten (resistive processing units, RPUs), die aus einem Crossbar-Array aus Memristoren bestehen.
  • All dies wird nun unter Bezugnahme auf bestimmte Ausführungsformen der Erfindung beschrieben. Zu Beginn ist zu beachten, dass der vorstehend erwähnte Prozess Operationen berücksichtigt, die speziell bei der synaptischen Einheit 20, 20a bis 20c durchgeführt werden, sei es zu Schlussfolgerungs- oder Trainingszwecken. Auf der Ebene der Vorrichtung 1, 1a bis 1c werden zusätzliche Operationen gleichzeitig durchgeführt, insbesondere bei den Schaltungen, die die Neuronen 11, 14 realisieren. Derartige Operationen sind im Flussdiagramm von 8 enthalten, wodurch ein externes System zum Beispiel mit dem SNN verbunden werden und dadurch Signale zu diesem übertragen kann. Derartige Signale werden an jedem empfangenden Neuron als Eingänge gelesen S12, siehe die Phase S10. Dies wiederum bewirkt, dass bei den präsynaptischen Neuronen 11 Impulse erzeugt werden S14, wobei die Impulse anschließend zu den synaptischen Einheiten 20, 20a bis 20c übertragen werden S16, sodass diese einen Prozess S20 wie beispielsweise den vorstehend beschriebenen realisieren. Durch die synaptische Einheit anschließend übertragene Impulse werden an jeweiligen postsynaptischen Neuronen 14 empfangen S32 und bewirken, dass Ausgangsimpulse erzeugt werden S34, und übertragen S36 Letztgenannte zu anderen präsynaptischen Neuronen anderer Ebenen des Netzes und so weiter.
  • Somit können die vorliegenden Verfahren bei Ausführungsformen insbesondere Schritte aufweisen, die bei postsynaptischen Neuronen 14 realisiert werden, wodurch Ausgangsimpulse 33 auf der Grundlage S32 übertragener postsynaptischer Impulse 32 erzeugt werden S34, wie in 8 veranschaulicht. Wenn mehrere Eingangsneuronen 11 mit einem gleichen Ausgangsneuron 14 (siehe 2B) verbunden sind, werden aus allen benachbarten Synapsen 20 ausgegebene Neuronen letztendlich addiert 141, um am empfangenden Neuron 14 das gesamte postsynaptische Signal (z.B. Strom) zu bilden. Das gesamte postsynaptische Signal wird am empfangenden Neuron 14 integriert 142, um Ausgangsimpulse 33 zu erzeugen S34.
  • Der vorstehend erwähnte Prozess S10 bis S30 kann insbesondere zu Trainingszwecken durchgeführt werden, wie im Flussdiagramm von 8 angenommen. Nach dem Beenden S40 werden endgültige Gewichte erhalten, die anschließend zu Schlussfolgerungszwecken S50 verwendet werden können. Das heißt, die endgültigen Gewichte können im selben Netz unverändert aufrechterhalten oder an ein weiteres Netz übermittelt werden, um damit Schlussfolgerungen zu ziehen. Zu beachten ist, dass die vorstehend beschriebenen Schritte S26 bis S28 gleichermaßen zu Schlussfolgerungszwecken durchgeführt werden können. Auch in diesem Fall werden von präsynaptischen Neuronen 11 empfangene Eingänge moduliert S26, wodurch Impulse erzeugt werden, die zu postsynaptischen Neuronen 14 übertragen werden, sodass das SNN Signale ausgibt, die als Ergebnisse (Schlussfolgerungen) interpretiert werden.
  • Während einer Trainingsphase können die synaptischen Gewichte aufgrund von Zuständen bestimmt werden, die bei den synaptischen Einheiten aufrechterhalten werden. Wie in 8 zu erkennen ist, hält somit jede synaptische Einheit 20, 20a bis 20c einen Zustand aufrecht S25, der das synaptische Gewicht w bestimmt, das wiederum verwendet wird, um Eingangsimpulse 31 zu modulieren S26. Dieser Zustand kann gemäß einem kognitiven Lernmechanismus geändert werden, um die Gewichte in geeigneter Weise anzupassen. Wie zuvor ausgeführt, kann es sich bei dem kognitiven Mechanismus zum Beispiel um einen STDP-Mechanismus handeln. Bei Varianten kann dieser Lernmechanismus ein beliebiges geeignetes (z.B. globales) Lernschema wie beispielsweise ein Rückwärtsausbreitungsmechanismus sein. Bei anderen Varianten kann das SNN jedoch einfach so gestaltet sein, dass ein Schlussfolgerungsmodul realisiert wird, wie zuvor angemerkt. Das heißt, die Gewichte können auf der Grundlage an anderer Stelle erlernter Gewichte festgelegt (d.h. programmiert) werden.
  • Derartige Zustände können insbesondere durch Widerstandszustände von Einheitenelementen erfasst werden, die einen Teil der synaptischen Einheit 20, 20a bis 20c bilden. Zum Beispiel können insbesondere memristive Einheiten 21, 21a bis 21c verwendet werden, siehe die 3 bis 6. Derartige Einheiten können als elektrische Widerstandsschalter betrachtet werden, die in der Lage sind, auf der Grundlage des Verlaufs von angelegter Spannung und zugeführtem Strom einen Zustand des Innenwiderstands zu speichern. Das heißt, eine memristive Einheit ist in der Lage, einen Zustand des Innenwiderstands auf der Grundlage zuvor angelegter Spannungen und zugeführter Ströme (d.h. des Verlaufs der Spannungen und Ströme) zu speichern. Eine derartige Einheit kann dementsprechend verwendet werden, um Informationen zu speichern und zu verarbeiten. Im vorliegenden Kontext können die Leistungseigenschaften memristiver Einheiten im Vergleich zu herkömmlichen integrierten Schaltungen besser sein.
  • Lernmechanismen bewirken, dass auf der Grundlage von Impulsen 31, die von präsynaptischen Neuronen 11 empfangen wurden S22, sowie von Ausgangsimpulsen 33, die bei postsynaptischen Neuronen 14 des SNN 1, 1a bis 1c erzeugt wurden S34, Zustände geändert werden S24, die bei den synaptischen Einheiten 20, 20a bis 20c aufrechterhalten werden. Zu beachten ist, dass ein lokaler Lernmechanismus außer auf Impulse, die vom präsynaptischen Neuron 11 empfangen wurden, allein auf Impulse zurückgreift, die durch das postsynaptische Neuron 14 lokal ausgegeben wurden, wie in 2 angenommen. Das heißt, jede synaptische Verbindung erlernt ihr jeweiliges Gewicht auf der Grundlage von Impulsen 31, die vom jeweiligen präsynaptischen Neuron 11 empfangen wurden, und von Ausgangsimpulsen 33, die am jeweiligen postsynaptischen Neuron 14 erzeugt wurden. Zum Beispiel können die synaptischen Einheiten 20, 20a bis 20c einen STDP-Mechanismus oder einen STDP-ähnlichen Mechanismus realisieren, wie in den beigefügten Zeichnungen angenommen. Ein derartiger Mechanismus bewirkt, dass jede synaptische Einheit Zustände, die sie aufrechterhält, einerseits auf der Grundlage von Impulsen 31, die vom jeweiligen präsynaptischen Neuron 11 empfangen wurden S22, und andererseits auf der Grundlage von Ausgangsimpulsen 33 ändert S24, die am entsprechenden postsynaptischen Neuron 14 erzeugt S34 wurden. Bei Varianten kann ein globaleres Lernschema verwendet werden, das auch Ausgangsimpulse berücksichtigt, die durch andere Neuronen ausgegeben wurden.
  • Wie in 2B veranschaulicht, können Ausgangsimpulse 33 erzeugt werden S34, indem bei postsynaptischen Neuronen 14 empfangene postsynaptische Impulse 32 auf der Grundlage einer Anzahl davon integriert werden. Zum Beispiel können bei einem postsynaptischen Element 20 Eingangsimpulse 31, die vom präsynaptischen Neuron 11 empfangen wurden, in Folgen von Impulsen umgesetzt werden, die alle die gleiche Amplitude haben, wobei die Anzahl von Impulsen vom synaptischen Gewicht abhängt. Wie in 2B zu erkennen ist, wird bei einer Synapse j ein Eingangsimpuls 31 lokal in eine Impulsfolge umgesetzt, die im Falle eines Integrieren-und-Feuern-Neurons (IF-Neurons) zum folgenden Beitrag zu dessen neuronalem Membranpotenzial führt: Δ V j ( Δ t s p ) = t Δ t s p q j ( t ) = w j b .
    Figure DE112020001369T5_0001
  • In der vorstehend aufgeführten Gleichung steht Δtsp für das Zeitintervall für jeden Eingangsimpuls, und qj (t) bezeichnet eine Impulsausgabe bei Synapse j. Alle derartigen Ausgaben haben eine gleiche Amplitude, sodass ihre Summe proportional zum synaptischen Gewicht wj (bis zu einem Faktor b) ist.
  • Der STDP-Mechanismus ist ansonsten unverändert. Impulse von allen Synapsen j, die ein gleiches Ausgangsneuron 14 erreichen, werden addiert, um bei diesem empfangenden Neuron 14 den gesamten postsynaptischen Strom zu bilden, und der gesamte postsynaptische Strom wird beim empfangenden Neuron 14 in das Membranpotenzial integriert, um die Ausgangsimpulse 33 zu erzeugen. Somit kann der Gesamtbeitrag des postsynaptischen Stroms geschrieben werden, der über einen von t0 bis tl reichenden Zeitraum in das Membranpotenzial V integriert wird: Δ V ( t 0 t l ) = t = t 0 t l j = 1 n x j ( t ) w j b ,
    Figure DE112020001369T5_0002
    wobei xj (t) das Auftreten eines Eingangsimpulses bei der Synapse j zum Zeitpunkt t bezeichnet (es liegen n Verbindungen vor, die in diesem Fall zum interessierenden Ausgangsneuron führen), wj das synaptische Gewicht ist und b eine Konstante ist.
  • Im Gegensatz hierzu wird bei Lösungen nach dem Stand der Technik (siehe die 1A und 1B) jeder Eingangsimpuls 31 von einem präsynaptischen Neuron 11 in einen Analogstrom 34 am Synapsenausgang (postsynaptischer Strom) umgesetzt, wobei die Amplitude des Stroms vom synaptischem Gewicht abhängt. Wie in 1B zu erkennen ist, wird ein Eingangsimpuls 31 lokal in den folgenden Beitrag zum Membranpotenzial umgesetzt: Δ V j ( Δ t s p ) = w j α ,
    Figure DE112020001369T5_0003
    wobei Δ tsp für ein Zeitintervall für jeden Eingangsimpuls steht, wj das synaptische Gewicht ist und α eine Konstante ist. Das synaptische Gewicht variiert gemäß der Aktivität der prä- und postsynaptischen Neuronen (z.B. gemäß einem STDP-Mechanismus). Die Ströme von allen Synapsen werden addiert, um beim empfangenden Neuron den gesamten postsynaptischen Strom zu bilden, und der gesamte postsynaptische Strom wird beim empfangenden Neuron in das Membranpotenzial integriert, um Ausgangsimpulse zu erzeugen. Somit kann in diesem Fall der Gesamtbeitrag des postsynaptischen Stroms geschrieben werden, der über einen von t0 bis tl reichenden Zeitraum integriert wird: Δ V ( t 0 , t l ) = t = t 0 t ; j = 1 n x j ( t ) w j α .
    Figure DE112020001369T5_0004
  • Eine erste Klasse von Ausführungsformen wird nun unter Bezugnahme auf 3 beschrieben. Bei diesem Beispiel werden vom präsynaptischen Neuron 11 empfangene S22 Impulse 31 moduliert S26 (bei jeder synaptischen Einheit 20), indem infolge einer memristiven Einheit 21 zunächst die empfangenen Impulse 31 in elektrischen Strom umgewandelt werden S262. Zu beachten ist, dass allgemeiner ausgedrückt derartige Impulse zunächst in elektrische Signale umgewandelt werden können (auf Spannungssignale zurückgegriffen werden kann). In allen Fällen hängt die Modulation vom aktuellen synaptischen Gewicht w ab, das selbst durch den aktuellen Zustand der Synapse 20 bestimmt wird. Danach wird infolge einer Impulserzeugungseinheit 22 die Frequenz der zu erzeugenden postsynaptischen Impulse 32 auf der Grundlage der elektrischen Signale und vor dem Erzeugen der Impulse 32 festgelegt S264.
  • Bei dem konkreten Beispiel von 3 bildet die dargestellte Einheit Teil einer Hardwarevorrichtung 1 und weist eine memristive Einheit 21 auf, die das synaptische Gewicht w speichert, einen Schaltungsblock 15, der die gewünschten Lernregel realisiert, sowie einen Impulserzeugungsblock 22, der Impulse (in vordefinierten Intervallen) mit einer Impulsfrequenz erzeugt, die vom aktuellen synaptischen Gewicht w abhängt. Die Impulserzeugungseinheit 22 kann zum Beispiel aus Realisierungsformen neuronaler Schaltungen angepasst sein, wie beispielsweise in den im Abschnitt „Hintergrund“ zitierten Referenzen beschrieben. Die Funktion des in 3 beschriebenen synaptischen Elements ist wie folgt. Die vom präsynaptischen Neuron 11 empfangenen Eingangsimpulse 31 erzeugen am memristiven Element 21 Leseereignisse. Der entstehende Lesestrom legt die Frequenz postsynaptischer Impulse beim Impulserzeugungsblock 22 auf der Grundlage dessen fest, welche postsynaptischen Impulse erzeugt werden S27. Damit einhergehend wird das synaptische Gewicht w unter Verwendung einer vorgegebenen Lernregel aktualisiert, z.B. auf der Grundlage der STDP.
  • Ein ähnlicher Prozess ist in den 4 und 5 beteiligt, mit den folgenden Bedingungen. Die 4 und 5 geben zwei weitere Klassen von Ausführungsformen wieder, die erfordern, dass die synaptischen Einheiten jeweils einen weiteren Zustand (der als „sekundärer Zustand“ bezeichnet werden kann) aufrechterhalten S25. Das heißt, der primäre Zustand bestimmt das Gewicht w, während der bei einer Synapse aufrechterhaltene S25 sekundäre Zustand ein kurzzeitiges synaptisches Gewicht ws bestimmt. Wie in den 4 und 5 zu erkennen ist, hängt Letztgenanntes außerdem von Impulsen 31 ab, die vom präsynaptischen Neuron 11 empfangen wurden. Ausführlicher ausgedrückt, von präsynaptischen Neuron 11 empfangene S22 Impulse 31 werden jetzt durch Vergleichen 23a, 23b des aktuellen synaptischen Gewichts w mit einem Schwellenwert moduliert S26. Letztgenanntes hängt vom kurzzeitigen synaptischen Gewicht ws ab. Die postsynaptischen Impulse 32 werden nur erzeugt S27, wenn das aktuelle synaptische Gewicht w größer als der oder gleich dem Schwellenwert ist.
  • Zu diesem Zweck kommen die Komparatoren 23a, 23b zum Einsatz. Der vorstehend erwähnte Vergleich läuft auf ein Auswerten eines Bedingungskonstrukts für ein aktuelles synaptisches Gewicht w in Bezug auf den Schwellenwert hinaus. Dieser Wert kann auf unterschiedliche Weise definiert werden. Insbesondere kann der Schwellenwert als gleich einem kurzzeitigen synaptischen Gewicht ws oder als Differenz wmax - ws genommen werden, wobei wmax ein für die Summe w + ws zulässiger Maximalwert ist.
  • Ausführlicher erläutert, bei Ausführungsformen wie beispielsweise der in 4 dargestellten wird der Schwellenwert als gleich dem kurzzeitigen synaptischem Gewicht ws genommen, sodass das aktuelle synaptische Gewicht w mit ws verglichen 23a wird und postsynaptische Impulse 32 nur erzeugt werden S27, wenn das aktuelle synaptische Gewicht w zufällig größer als oder gleich ws ist. Der Modulations- und Erzeugungsprozess S26 bis S27 beinhaltet einen Vergleich 24a zwischen ws und dem für ws zulässigen Maximalwert wmax. Wenn festgestellt wird, dass ws größer als der oder gleich dem Maximalwert ist, wird als Nächstes das kurzzeitige Gewicht ws, d.h. ein Parameter, der möglicherweise auf einen beliebigen Wert zwischen 0 und wmax eingestellt werden kann, auf seinen Anfangswert zurückgesetzt.
  • Bei dem konkreten Beispiel von 4 bildet die dargestellte Einheit Teil einer Hardwarevorrichtung 1a, die eine memristive Einheit 21a aufweist, die das synaptische Gewicht w speichert, eine memristive Kurzzeitspeichereinheit 25a, die die Anzahl postsynaptischer Impulse bei Modulation bestimmt, sowie zwei Komparatorenblöcke 23a, 24a. Wie in 3 realisiert der Schaltungsblock 15 die Lernregel. Jetzt erzeugt der Impulserzeugungsblock 22a jedoch Impulse, die von der Ausgabe des Komparatorblocks 23a abhängen. Die Funktion des synaptischen Elements ist wie folgt. Eingänge der Kurzzeitspeichereinheit 25a (die ws speichert) werden unter Verwendung eines Schreibimpulses für jeden eingehenden Impuls akkumuliert. Eingehende Impulse erzeugen Leseereignisse für beide memristive Elemente 21a, 25a. Ein Ausgangsimpuls wird nur erzeugt, wenn w ≥ ws, während die memristive Kurzzeitspeichereinheit 25a zurückgesetzt wird, wenn ws ≥ wmax. In der Zwischenzeit wird das synaptische Gewicht w unter Verwendung einer vorgegebenen Lernregel aktualisiert. Bei einem geringen synaptischen Gewicht w ist somit nach wenigen eingehenden Ereignissen die Bedingung w ≥ ws nicht mehr gültig, und die Synapse 20a beendet das Feuern. Im Gegensatz hierzu bleibt die Bedingung w ≥ ws bei einem hohen synaptischen Gewicht w während mehrerer eingehender Ereignisse gültig.
  • Bei Ausführungsformen wie beispielsweise der in 5 veranschaulichten wird der Schwellenwert als Differenz wmax - ws zwischen einem Maximalwert wmax und dem kurzzeitigen synaptischen Gewicht ws genommen. Zu beachten ist, dass es sich bei dem Maximalwert jetzt um einen für die Summe w + ws zulässigen Maximalwert handelt. Somit wird das aktuelle Gewicht w jetzt mit der Differenz wmax - ws verglichen 23b, und die postsynaptischen Impulse 32 werden nur erzeugt S27, wenn das aktuelle synaptische Gewicht w größer als diese oder gleich dieser Differenz ist. Das kurzzeitige synaptische Gewicht ws wird hierbei jedes Mal zurückgesetzt 22b, wenn ein postsynaptischer Impuls 32 zur Übertragung zum postsynaptischen Neuron 14 erzeugt S27 wird, d.h. nachdem dieser Impuls erzeugt wurde S27.
  • Bei dem konkreten Beispiel von 5 bildet die Einheit Teil einer Hardwarevorrichtung 1b und weist Komponenten 15, 21b, 22b und 25b auf, die den Komponenten 15, 21a, 22a und 25a von 4 ähneln. Dieses Element beinhaltet jedoch keinen zweiten Komparator. Stattdessen addiert ein Addiererblock 26 von den memristiven Elementen 21b, 25b erhaltene Signale, und der Impulserzeugungsblock erzeugt Impulse, die von der Ausgabe des Komparatorblocks 23b abhängen. Dieses Element wird wie folgt betrieben. Eingaben werden unter Verwendung eines Schreibimpulses für jeden eingehenden Impuls 31 in der Kurzzeitspeichereinheit 25b akkumuliert. Nach wie vor erzeugen eingehende Impulse 31 Leseereignisse bei beiden Elementen 21b, 25b. Ein Ausgangsimpuls wird erzeugt, wenn w + ws ≥ wmax. Bei Varianten kann die Synapse 20b mehrere Impulse (in einem vordefinierten Intervall) mit einer Impulsfrequenz erzeugen, die vom synaptischen Gewicht abhängt. Die Kurzzeitspeichereinheit 25b wird in diesem Fall nach jedem Ereignis des Ausgangsfeuerns zurückgesetzt. Das synaptische Gewicht w wird gleichzeitig durch den Schaltungsblock 15 zurückgesetzt. Bei einem niedrigen synaptischen Gewicht w werden mehrere eingehende Ereignisse (die ebenfalls das Gewicht ws erhöhen) benötigt, damit die Summe w + ws den Wert wmax erreicht. Im Gegensatz hierzu kann die Summe w + ws bei einem bereits hohen synaptischen Gewicht w infolge eines einzigen eingehenden Ereignisses wmax möglicherweise leichter erreichen.
  • 6 gibt eine weitere Klasse von Ausführungsformen wieder, bei der Eingangsimpulse über einen spannungsgesteuerten Oszillator 28 Schwingungen auslösen. Hierbei wird die Frequenz oder die Dämpfung der Oszillatorschaltung durch das Gewicht w gesteuert, das in der Memristoreinheit 21c gespeichert ist. Ein großer Gewichtswert führt zu einer hohen Frequenz oder einer niedrigen Dämpfung, während ein kleiner Gewichtswert zu einer niedrigen Frequenz oder einer hohen Dämpfung führt. Das heißt, das Gewicht der Memristoreinheit 21c wird verwendet, um für die Einheit 29c einen Schwellenwert für das Pulsen zu bestimmen. Wenn die Spannung einen Schwellenwert Vth überschreitet, wird ein einzelner Impuls erzeugt.
  • Unter Bezugnahme auf die 2A, 3 bis 6 wird nun ein weiterer Aspekt der Erfindung ausführlich beschrieben, der Schaltungen 20, 20a bis 20c synaptischer Einheiten zum Übertragen von Signalen zwischen Neuronen 11, 14 eines mittels Hardware realisierten SNN 1, 1a bis 1c betrifft. Die Komponenten und die Funktion derartiger Schaltungen wurden bereits unter Bezugnahme auf die vorliegenden Verfahren beschrieben. Die Haupteigenschaften dieser Schaltungen werden daher im Folgenden nur kurz beschrieben. Eine derartige synaptische Schaltung ist allgemein so gestaltet, dass ein präsynaptisches Neuron 11 mit einem postsynaptischen Neuron 14 des Netzes verbunden wird, um so eine neuronale Verbindung zu bilden. Wenn sie in geeigneter Weise mit einem präsynaptischen Neuron 11 und einem postsynaptischen Neuron 14 verbunden ist, ermöglicht diese Schaltung, dass vom präsynaptischen Neuron 11 empfangene Impulse 31 auf der Grundlage des darin gespeicherten synaptischen Gewichts w frequenzmoduliert werden, sodass ein postsynaptischer Impuls 32 erzeugt wird. Das heißt, vom präsynaptischen Neuron 11 empfangene Impulse 31 können in eine eindeutige Anzahl postsynaptischer Impulse 32 umgesetzt werden, bevor die erzeugten postsynaptischen Impulse 32 während des Betriebs zum postsynaptischen Neuron 14 übertragen werden.
  • Wie ausgeführt kann eine derartige Schaltung so konfiguriert sein, dass postsynaptische Impulse 32 erzeugt werden, die alle eine gleiche Amplitude haben. Darüber hinaus kann die Schaltung zum Beispiel einen Zustand aufrechterhalten, der das synaptische Gewicht w bestimmt, und den Zustand einerseits auf der Grundlage von Impulsen 31, die vom präsynaptischen Neuron 11 empfangen wurden, und andererseits von Impulsen 33 ändern, die während des Betriebs durch das postsynaptische Neuron 14 ausgegeben wurden, mit dem sie verbunden ist.
  • Wie in den 3 bis 5 zu erkennen ist, kann die Schaltung eine Erzeugungseinheit 22, 22a bis 22c aufweisen, wobei diese Einheit so ausgelegt ist, dass postsynaptische Impulse 32 erzeugt werden und die dementsprechend erzeugten postsynaptischen Impulse 32 während des Betriebs zu einem postsynaptischen Neuron 14 übertragen werden. In der Regel bildet eine Aktualisierungseinheit 15 einen Teil der Schaltung. Die Einheit 15 ist so angeordnet, dass sie mit dem Neuronenpaar 11, 14 verbindbar ist. Die Einheit 15 dient zum Ändern des Zustands der Schaltung (z.B. auf der Grundlage eines STDP-Mechanismus), um während des Betriebs zu ermöglichen, dass das Gewicht erlernt wird. Darüber hinaus kann die Schaltung eine memristive Einheit 21, 21a bis 21c aufweisen, wobei Letztgenanntes mit jeder der Impulserzeugungseinheit und der Aktualisierungseinheit 15 verbunden ist. Die memristive Einheit ist mit der Impulserzeugungseinheit 22, 22a bis 22c verbunden; Anderenfalls ist sie mit einem präsynaptischen Neuron 11 verbunden. Wie zuvor erläutert ist die memristive Einheit 21, 21a bis 21c so ausgelegt, dass sie einen Widerstandszustand speichert, sodass die Impulserzeugungseinheit 22, 22a bis 22c Impulse 31, die durch die memristive Einheit vom präsynaptischen Neuron 11 empfangen wurden, auf der Grundlage eines aus diesem Zustand bestimmten synaptischen Gewichts w modulieren und während des Betriebs postsynaptische Impulse 32 erzeugen kann. Die memristive Einheit ist des Weiteren mit der Aktualisierungseinheit 15 verbunden: ein beliebiger (durch die Aktualisierungseinheit 15 geänderter) Zustand der memristiven Einheit bestimmt das synaptische Gewicht w (bzw. dessen Änderung), das während des Betriebs selbst die Modulation der Impulse 31 bestimmt.
  • Wie in 3 veranschaulicht, kann die memristive Einheit 21, 21a, 21b insbesondere so konfiguriert sein, dass sie Impulse 31 in einem Ausmaß in elektrischen Strom umwandelt, das durch das synaptische Gewicht w bestimmt wird, das selbst durch den Zustand bestimmt wird, der durch die memristive Einheit gespeichert wird. Ergänzend kann die Impulserzeugungseinheit 22, 22a bis 22c so gestaltet sein, dass sie die Frequenz der postsynaptischen Impulse 32 auf der Grundlage eines derartigen Stroms festlegt, um während des Betriebs Impulse 31 zu modulieren, die vom präsynaptischen Neuron 11 empfangen wurden.
  • Die Erfinder der vorliegenden Erfindung haben eine Anzahl von Versuchen durchgeführt, um die Gültigkeit des vorliegenden Ansatzes zu prüfen. Insbesondere haben sie die Möglichkeit zum Erkennen von Korrelationen mit einem Neuron getestet und bestätigt, das durch mehrere Eingangsströme verbunden ist, wobei dieses Neuron wie oben beschrieben anderenfalls mit einer Schaltung einer synaptischen Einheit verbunden ist. Wie sie schlussfolgerten, macht es ein gepulstes synaptisches Element zweifelsfrei möglich zu ermitteln, ob einige der Eingangsdatenströme statistisch korreliert sind.
  • Unter Bezugnahme auf die 4, 5 kann eine derartige Schaltung einer synaptischen Einheit 20a, 20b ferner so konfiguriert sein, dass sie eindeutige Zustände speichert, d.h. einen primären Zustand und einen sekundären Zustand. Der primäre Zustand wird durch die erste memristive Einheit 21a, 21b gespeichert, während eine zweite memristive Einheit 25a, 25b bereitgestellt ist (die, um noch einmal darauf hinzuweisen, mit einem präsynaptischen Neuron 11 verbindbar ist), um den sekundären Zustand zu speichern. Letztgenanntes bestimmt das kurzzeitige synaptische Gewicht ws. Wie zuvor beschrieben hängt der sekundäre Zustand von Impulsen 31 ab, die durch die zweite memristive Einheit während des Betriebs vom präsynaptischen Neuron 11 empfangen wurden.
  • Wie ferner in den 4, 5 zu erkennen ist, kann die Schaltung der synaptischen Einheit 20a, 20b ferner einen Komparator 23a, 23b aufweisen. Letztgenannter ist mit jeder der ersten memristiven Einheit 21a, 21b und der zweiten memristiven Einheit 25a, 25b verbunden, um ein aktuelles synaptisches Gewicht w mit einem Schwellenwert vergleichen zu können. Wie zuvor erläutert, kann der Schwellenwert auf verschiedene Weise definiert werden. In allen Fällen hängt der Schwellenwert vom kurzzeitigen synaptischem Gewicht ws ab, das selbst aus dem zweiten Zustand ermittelt wird. Die postsynaptischen Impulse 32 werden durch die Impulserzeugungseinheit 22a, 22b nur erzeugt, wenn während des Betriebs das aktuelle synaptische Gewicht w größer als der oder gleich dem Schwellenwert ist.
  • Wie zuvor beschrieben, kann der Schwellenwert einfach gleich dem kurzzeitigen synaptischen Gewicht ws festgelegt werden (siehe 4), wobei in diesem Fall ein zweiter Komparator 24a enthalten ist, um das kurzzeitige synaptische Gewicht ws mit dem für den Schwellenwert zulässigen Maximalwert wmax zu vergleichen. Die Schaltung ist anderenfalls so konfiguriert, dass sie das kurzzeitige synaptische Gewicht ws zurücksetzt, wenn infolge des zweiten Komparators 24a festgestellt wird, dass Letztgenanntes größer als der oder gleich dem Maximalwert ist.
  • Bei Varianten, die in 5 veranschaulicht sind, wird auf einen einzigen Komparator 23b zurückgegriffen, der so gestaltet ist, dass die Differenz wmax- ws als Schwellenwert für Vergleichszwecke verwendet wird. Hierbei werden postsynaptische Impulse 32 durch die Impulserzeugungseinheit nur erzeugt, wenn während des Betriebs festgestellt wird, dass das aktuelle synaptische Gewicht w größer als die oder gleich der vorstehend erwähnten wmax - ws ist. Die Schaltung setzt das kurzzeitige synaptische Gewicht ws jedes Mal zurück, wenn ein postsynaptischer Impuls 32 zur Übertragung zum postsynaptischen Neuron 14 erzeugt wird (nachdem dieser Impuls erzeugt wurde).
  • Als Nächstes kann die Erfindung gemäß einem letzten Aspekt als Hardwarevorrichtung 1, 1a bis 1c verkörpert sein. Diese Vorrichtung realisiert ein SNN und weist eine Anzahl neuronaler Verbindungen auf. Jede dieser Verbindungen beinhaltet ein präsynaptisches Neuron 11, ein postsynaptisches Neuron 14 und eine Schaltung einer synaptischen Einheit 20, 20a bis 20c, wie beispielsweise zuvor beschrieben. Jede Schaltung einer synaptischen Einheit verbindet jeweils ein präsynaptisches Neuron 11 mit einem postsynaptischen Neuron 14. Jedes postsynaptische Neuron kann insbesondere durch eine Mehrzahl von Schaltungen synaptischer Einheiten des Netzes verbunden sein, wie in 2B gezeigt. Jedes postsynaptische Neuron 14 kann somit so konfiguriert sein, dass es auf der Grundlage postsynaptischer Impulse 32, die durch jede der jeweiligen Schaltungen synaptischer Einheiten 20, 20a bis 20c übertragen wurden, Ausgangsimpulse 33 erzeugt. Wie zuvor ausführlich erläutert kann jedes postsynaptische Neuron 14 ferner so konfiguriert sein, dass es Ausgangsimpulse 33 erzeugt, indem durch die jeweiligen Schaltungen 20, 20a bis 20c übertragene postsynaptische Impulse 32 auf der Grundlage einer Anzahl der übertragenen Impulse 32 integriert werden.
  • Zwar wurde die vorliegende Erfindung unter Bezugnahme auf eine begrenzte Anzahl von Ausführungsformen, Varianten und die beigefügten Zeichnungen beschrieben, dem Fachmann wird jedoch klar sein, dass verschiedene Änderungen vorgenommen werden können und Elemente der Erfindung durch Äquivalente ersetzt werden können, ohne vom Schutzbereich der vorliegenden Erfindung abzuweichen. Insbesondere kann eine Funktion (einheitenähnlich oder verfahrensähnlich), die in einer bestimmten Ausführungsform oder Variante aufgeführt oder in einer Zeichnung dargestellt ist, mit einer anderen Funktion in einer anderen Ausführungsform, Variante oder Zeichnung kombiniert oder durch diese ersetzt werden, ohne vom Schutzbereich der vorliegenden Erfindung abzuweichen. Verschiedene Kombinationen der in Bezug auf beliebige der oben aufgeführten Ausführungsformen oder Varianten beschriebenen Funktionen können dementsprechend vorgesehen werden, die in den Schutzbereich der beigefügten Ansprüche fallen. Darüber hinaus können viele Änderungen vorgenommen werden, um eine bestimmte Situation oder ein bestimmtes Material an die Lehren der vorliegenden Erfindung anzupassen, ohne von deren Schutzbereich abzuweichen. Daher soll die vorliegende Erfindung nicht auf die jeweiligen offenbarten Ausführungsformen beschränkt sein, sondern die vorliegende Erfindung schließt alle Ausführungsformen ein, die in den Schutzbereich der beigefügten Ansprüche fallen. Darüber hinaus können viele andere Varianten als die oben ausdrücklich erwähnten vorgesehen werden.

Claims (24)

  1. Verfahren zum Übertragen von Signalen zwischen Neuronen eines mittels Hardware realisierten gepulsten neuronalen Netzes, wobei Letztgenanntes neuronale Verbindungen aufweist, die jeweils eine synaptische Einheit aufweist, die ein präsynaptisches Neuron mit einem postsynaptischen Neuron verbindet, wobei das Verfahren für jede neuronale Verbindung der neuronalen Verbindungen und bei jeder synaptischen Einheit davon aufweist: Frequenzmodulieren von Impulsen, die vom präsynaptischen Neuron jeder neuronalen Verbindung empfangen wurden, auf Grundlage eines synaptischen Gewichts, das in jeder synaptischen Einheit gespeichert ist, um postsynaptische Impulse zu erzeugen, wodurch eine erste Anzahl vom präsynaptischen Neuron empfangener Impulse in eine zweite Anzahl postsynaptischer Impulse umgesetzt wird; und Übertragen der erzeugten postsynaptischen Impulse zum postsynaptischen Neuron jeder neuronalen Verbindung.
  2. Verfahren nach Anspruch 1, wobei das Verfahren ferner aufweist: beim postsynaptischen Neuron jeder neuronalen Verbindung Erzeugen von Ausgangsimpulsen auf Grundlage der übertragenen postsynaptischen Impulse.
  3. Verfahren nach Anspruch 1 oder 2, wobei das Verfahren ferner aufweist: bei jeder synaptischen Einheit Aufrechterhalten eines Zustands, der das synaptische Gewicht bestimmt, wobei der Zustand gemäß einem kognitiven Lernmechanismus geändert werden kann.
  4. Verfahren nach einem der Ansprüche 1 bis 3, wobei das Verfahren ferner aufweist: Ändern, bei jeder synaptischen Einheit, des Zustands gemäß dem kognitiven Lernmechanismus einerseits auf Grundlage vom präsynaptischen Neuron empfangener Impulse und andererseits auf Grundlage von Ausgangsimpulsen, die bei einem oder mehreren postsynaptischen Neuronen des gepulsten neuronalen Netzes erzeugt wurden.
  5. Verfahren nach einem der Ansprüche 1 bis 4, wobei: die synaptische Einheit so konfiguriert ist, dass sie einen Mechanismus einer von Impulsen und zeitlicher Steuerung abhängigen Plastizität auf Grundlage von Impulsen, die vom präsynaptischen Neuron empfangen wurden, und von Ausgangsimpulsen realisiert, die beim postsynaptischen Neuron erzeugt wurden, wodurch der Zustand auf Grundlage dieses Mechanismus einer von Impulsen und zeitlicher Steuerung abhängigen Plastizität geändert wird.
  6. Verfahren nach Anspruch 2, wobei: die Ausgangsimpulse erzeugt werden, indem beim postsynaptischen Neuron empfangene postsynaptische Impulse auf Grundlage einer Anzahl davon integriert werden.
  7. Verfahren nach Anspruch 2 oder 7, wobei: die vom präsynaptischen Neuron empfangenen Impulse bei jeder synaptischen Einheit moduliert werden, indem zunächst die empfangenen Impulse in ein oder mehrere elektrische Signale gemäß einem synaptischem Gewicht, das durch den Zustand bestimmt wird, umgewandelt werden und dann auf Grundlage der elektrischen Signale eine Frequenz der zu erzeugenden postsynaptischen Impulse festgelegt wird.
  8. Verfahren nach einem der Ansprüche 2, 7 oder 8, wobei: der Zustand ein primärer Zustand ist; und das Modulieren vom präsynaptischen Neuron empfangener Impulse aufweist: Aufrechterhalten eines sekundären Zustands, der auf Grundlage vom präsynaptischen Neuron empfangener Impulse ein kurzzeitiges synaptisches Gewicht bestimmt; und Vergleichen eines durch den primären Zustand bestimmten aktuellen synaptischen Gewichts mit einem Schwellenwert, der von dem kurzzeitigen synaptischen Gewicht abhängt, das aus dem sekundären Zustand bestimmt wurde, wodurch die postsynaptischen Impulse nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als der oder gleich dem Schwellenwert ist.
  9. Verfahren nach Anspruch 8, wobei: der Schwellenwert gleich dem kurzzeitigen synaptischen Gewicht ist, wodurch das aktuelle synaptische Gewicht mit dem kurzzeitigen synaptischen Gewicht verglichen wird und postsynaptische Impulse nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als das oder gleich dem kurzzeitigen synaptischen Gewicht ist; und das Modulieren vom präsynaptischen Neuron empfangener Impulse ferner ein Vergleichen des kurzzeitigen synaptischen Gewichts mit einem für den Schwellenwert maximal zulässigen Wert aufweist, und wenn dementsprechend festgestellt wird, dass Wert größer als der oder gleich dem Maximalwert ist, ein Zurücksetzen des kurzzeitigen synaptischen Gewichts.
  10. Verfahren nach Anspruch 8 oder 9, wobei: der Schwellenwert gleich einer Differenz zwischen einem Maximalwert und dem kurzzeitigen synaptischen Gewicht ist, wodurch das aktuelle synaptische Gewicht mit der Differenz verglichen wird, wobei es sich bei dem Maximalwert um einen für die Summe aus dem aktuellen synaptischen Gewicht und dem kurzzeitigen synaptischen Gewicht zulässigen Maximalwert handelt, sodass die postsynaptischen Impulse nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als die oder gleich der Differenz ist; und das Modulieren vom präsynaptischen Neuron empfangener Impulse ferner jedes Mal das Zurücksetzen des kurzzeitigen synaptischen Gewichts aufweist, wenn ein postsynaptischer Impuls zur Übertragung zum postsynaptische Neuron erzeugt wird, nachdem dieser Impuls erzeugt wurde.
  11. Verfahren nach einem der Ansprüche 1 bis 10, wobei: alle erzeugten postsynaptischen Impulse eine gleiche Signalamplitude haben.
  12. Schaltung einer synaptischen Einheit zum Übertragen von Signalen zwischen Neuronen eines mittels Hardware realisierten gepulsten neuronalen Netzes, wobei: die Schaltung so gestaltet ist, dass ein präsynaptisches Neuron mit einem postsynaptischen Neuron des Netzes verbunden wird, um so eine neuronale Verbindung zu bilden; und die Schaltung so konfiguriert ist, dass sie, wenn sie mit dem präsynaptischen Neuron und dem postsynaptische Neuron verbunden ist: vom präsynaptischen Neuron empfangene Impulse auf Grundlage eines in der Schaltung gespeicherten synaptischen Gewichts frequenzmoduliert, um postsynaptische Impulse zu erzeugen, wodurch während des Betriebs eine erste Anzahl vom präsynaptischen Neuron empfangener Impulse in eine zweite Anzahl postsynaptischer Impulse umgesetzt wird; und Übertragen der erzeugten postsynaptischen Impulse zum postsynaptische Neuron.
  13. Schaltung der synaptischen Einheit nach Anspruch 12, wobei: die Schaltung ferner so konfiguriert ist, dass sie, wenn sie mit dem präsynaptischen Neuron und dem postsynaptischen Neuron verbunden ist, postsynaptische Impulse erzeugt, die alle eine gleiche Amplitude haben.
  14. Schaltung der synaptischen Einheit nach Anspruch 12 oder 13, wobei: die Schaltung ferner so konfiguriert ist, dass sie, wenn sie mit dem präsynaptischen Neuron und dem postsynaptische Neuron verbunden ist, einen Zustand aufrechterhält, der das synaptische Gewicht bestimmt, und den Zustand einerseits auf Grundlage von Impulsen, die vom präsynaptischen Neuron empfangen wurden, und andererseits auf Grundlage von Impulsen ändert, die durch das postsynaptische Neuron abgegeben wurden.
  15. Schaltung der synaptischen Einheit nach einem der Ansprüche 12 bis 14, wobei die Schaltung aufweist: eine Impulserzeugungseinheit, die so ausgelegt ist, dass sie während des Betriebs die postsynaptischen Impulse erzeugt und die postsynaptischen Impulse zum postsynaptischen Neuron überträgt; eine Aktualisierungseinheit, die mit jedem des präsynaptischen Neurons und des postsynaptischen Neurons verbindbar und so konfiguriert ist, dass sie während des Betriebs den Zustand ändert; und eine memristive Einheit, wobei Letztgenannte: mit der Impulserzeugungseinheit verbunden ist und anderenfalls mit dem präsynaptischen Neuron verbindbar ist, wobei die memristiver Einheit so konfiguriert ist, dass sie den Zustand speichert, sodass die Impulserzeugungseinheit Impulse, die durch die memristive Einheit vom präsynaptischen Neuron empfangen wurden, auf Grundlage eines aus dem Zustand bestimmten synaptischen Gewichts moduliert und während des Betriebs die postsynaptischen Impulse erzeugt; und mit der Aktualisierungseinheit verbunden ist, wodurch ein durch die Aktualisierungseinheit geänderter beliebiger Zustand das synaptische Gewicht bestimmt, das während des Betriebs zum Modulieren der Impulse verwendet wird.
  16. Schaltung der synaptischen Einheit nach Anspruch 15, wobei: die Aktualisierungseinheit ferner so konfiguriert ist, dass sie einen Mechanismus einer von Impulsen und zeitlicher Steuerung abhängigen Plastizität auf Grundlage von Impulsen, die vom präsynaptischen Neuron empfangen wurden, und von Ausgangsimpulsen realisiert, die beim postsynaptischen Neuron erzeugt wurden, wodurch während des Betriebs der Zustand auf Grundlage dieses Mechanismus einer von Impulsen und zeitlicher Steuerung abhängigen Plastizität geändert wird.
  17. Schaltung der synaptischen Einheit nach Anspruch 15 oder 16, wobei: die memristive Einheit ferner so konfiguriert ist, dass sie vom präsynaptischen Neuron empfangene Impulse in ein oder mehrere elektrische Signale gemäß einem synaptischen Gewicht umwandelt, das durch den in der memristiven Einheit gespeicherten Zustand bestimmt wird; und die Impulserzeugungseinheit ferner so konfiguriert ist, dass sie auf Grundlage der elektrische Signale eine Frequenz der zu erzeugenden postsynaptischen Impulse festlegt, um während des Betriebs vom präsynaptischen Neuron empfangene Impulse zu modulieren.
  18. Schaltung der synaptischen Einheit nach einem der Ansprüche 15 bis 17, wobei: der Zustand ein primärer Zustand ist und die memristive Einheit eine erste memristive Einheit ist, die so konfiguriert ist, dass sie den primären Zustand speichert; und die synaptische Einheit ferner eine zweite memristive Einheit aufweist, die mit dem präsynaptischen Neuron verbindbar und so ausgelegt ist, dass sie einen sekundären Zustand speichert, der ein kurzzeitiges synaptisches Gewicht bestimmt, wobei der sekundäre Zustand während des Betriebs von den Impulsen abhängt, die durch die zweite memristive Einheit vom präsynaptischen Neuron empfangen werden.
  19. Schaltung der synaptischen Einheit nach Anspruch 16, wobei: die Schaltung der synaptischen Einheit ferner einen Komparator aufweist, wobei Letztgenanntes mit jeder der ersten memristiven Einheit und der zweiten memristiven Einheit verbunden ist, um ein aus dem primären Zustand bestimmtes aktuelles synaptisches Gewicht mit einem Schwellenwert zu vergleichen, wobei Letztgenanntes von dem aus dem sekundären Zustand bestimmten kurzzeitigen synaptischen Gewicht abhängt, wodurch während des Betriebs die postsynaptischen Impulse durch die Impulserzeugungseinheit nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als der oder gleich dem Schwellenwert ist.
  20. Schaltung der synaptischen Einheit nach Anspruch 19, wobei: der Komparator ein erster Komparator ist, der so ausgelegt ist, dass er das kurzzeitige synaptische Gewicht als Schwellenwert zu verwendet, wodurch die postsynaptischen Impulse durch die Impulserzeugungseinheit nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als das oder gleich dem kurzzeitigen synaptischen Gewicht ist; und die Schaltung ferner einen zweiten Komparator aufweist, der so konfiguriert ist, dass er das kurzzeitige synaptische Gewicht mit einem für den Schwellenwert zulässigen Maximalwert vergleicht, wobei die Schaltung anderenfalls so konfiguriert ist, dass sie das kurzzeitige synaptische Gewicht zurücksetzt, wenn festgestellt wird, dass Letztgenanntes größer als der oder gleich dem Maximalwert ist.
  21. Schaltung der synaptischen Einheit nach Anspruch 19 oder 20, wobei: der Komparator so ausgelegt ist, dass eine Differenz zwischen einem Maximalwert und dem kurzzeitigen synaptischen Gewicht als Schwellenwert zum Vergleichen des aktuellen synaptischen Gewichts mit dem Schwellenwert verwendet wird, wobei es sich bei dem Maximalwert um einen für die Summe aus dem aktuellen synaptischen Gewicht und dem kurzzeitigen synaptischen Gewicht zulässigen Maximalwert handelt, wodurch während des Betriebs die postsynaptischen Impulse durch die Impulserzeugungseinheit nur erzeugt werden, wenn das aktuelle synaptische Gewicht größer als die oder gleich der Differenz ist; und die Schaltung ferner so konfiguriert ist, dass sie das kurzzeitige synaptische Gewicht jedes Mal zurücksetzt, wenn ein postsynaptischer Impuls zur Übertragung zum postsynaptischen Neuron erzeugt wird, nachdem dieser Impuls erzeugt wurde.
  22. Hardwarevorrichtung, die ein gepulstes neuronales Netz realisiert, wobei: das Netz eine Anzahl neuronaler Verbindungen aufweist, die jeweils aufweisen: ein präsynaptisches Neuron; ein postsynaptisches Neuron; und eine Schaltung einer synaptischen Einheit, die jeweils das präsynaptische Neuron mit dem postsynaptischen Neuron verbindet; die Schaltung der synaptischen Einheit zum Übertragen von Signalen zwischen Neuronen eines mittels Hardware realisierten gepulsten neuronalen Netzes konfiguriert ist, wobei: die Schaltung so gestaltet ist, dass das präsynaptische Neuron mit dem postsynaptischen Neuron des Netzes verbunden wird, um so die neuronale Verbindung zu bilden; und die Schaltung so konfiguriert ist, dass sie, wenn sie mit dem präsynaptischen Neuron und dem postsynaptische Neuron verbunden ist: vom präsynaptischen Neuron empfangene Impulse auf Grundlage eines in der Schaltung gespeicherten synaptischen Gewichts frequenzmoduliert, um postsynaptische Impulse zu erzeugen, wodurch während des Betriebs eine erste Anzahl vom präsynaptischen Neuron empfangener Impulse in eine zweite Anzahl postsynaptischer Impulse umgesetzt wird; und Übertragen der erzeugten postsynaptischen Impulse zum postsynaptische Neuron.
  23. Hardwarevorrichtung nach Anspruch 22, wobei: jedes postsynaptische Neuron des neuronalen Netzes: durch eine Mehrzahl von Schaltungen synaptischer Einheiten des Netzes verbunden ist; und so konfiguriert ist, dass sie Ausgangsimpulse auf Grundlage postsynaptischer Impulse erzeugt, die durch eine oder mehrere jeweilige Schaltungen synaptischer Einheiten übertragen wurden.
  24. Hardwarevorrichtung nach Anspruch 23, wobei: jedes postsynaptische Neuron ferner so konfiguriert ist, dass es die Ausgangsimpulse erzeugt, indem die durch die jeweiligen Schaltungen synaptischer Einheiten übertragenen postsynaptischen Impulse auf Grundlage einer Anzahl davon integriert werden.
DE112020001369.3T 2019-03-21 2020-02-27 Gepulste synaptische elemente für gepulste neuronale netze Pending DE112020001369T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/360,158 US11195085B2 (en) 2019-03-21 2019-03-21 Spiking synaptic elements for spiking neural networks
US16/360,158 2019-03-21
PCT/IB2020/051669 WO2020188380A1 (en) 2019-03-21 2020-02-27 Spiking synaptic elements for spiking neural networks

Publications (1)

Publication Number Publication Date
DE112020001369T5 true DE112020001369T5 (de) 2021-12-09

Family

ID=72514553

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020001369.3T Pending DE112020001369T5 (de) 2019-03-21 2020-02-27 Gepulste synaptische elemente für gepulste neuronale netze

Country Status (6)

Country Link
US (1) US11195085B2 (de)
JP (1) JP7427015B2 (de)
CN (1) CN113614745A (de)
DE (1) DE112020001369T5 (de)
GB (1) GB2596480B (de)
WO (1) WO2020188380A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11195085B2 (en) * 2019-03-21 2021-12-07 International Business Machines Corporation Spiking synaptic elements for spiking neural networks
CN112906884B (zh) * 2021-02-05 2023-04-18 鹏城实验室 一种基于脉冲连续吸引子网络的类脑预测跟踪方法
CN114548046B (zh) * 2022-04-25 2022-09-27 阿里巴巴达摩院(杭州)科技有限公司 文本处理方法以及装置
CN114936626B (zh) * 2022-05-19 2023-10-27 常州大学 一种用于离散神经元网络的初值控制方法
CN115169547B (zh) * 2022-09-09 2022-11-29 深圳时识科技有限公司 神经形态芯片及电子设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4478296B2 (ja) 2000-06-16 2010-06-09 キヤノン株式会社 パターン検出装置及び方法、画像入力装置及び方法、ニューラルネットワーク回路
US9269042B2 (en) 2010-09-30 2016-02-23 International Business Machines Corporation Producing spike-timing dependent plasticity in a neuromorphic network utilizing phase change synaptic devices
US8515885B2 (en) 2010-10-29 2013-08-20 International Business Machines Corporation Neuromorphic and synaptronic spiking neural network with synaptic weights learned using simulation
US9104186B2 (en) 2012-06-04 2015-08-11 Brain Corporation Stochastic apparatus and methods for implementing generalized learning rules
US9111224B2 (en) * 2011-10-19 2015-08-18 Qualcomm Incorporated Method and apparatus for neural learning of natural multi-spike trains in spiking neural networks
US20140143191A1 (en) 2012-11-20 2014-05-22 Qualcomm Incorporated Piecewise linear neuron modeling
US20140310216A1 (en) * 2013-04-15 2014-10-16 Qualcomm Incorporated Method for generating compact representations of spike timing-dependent plasticity curves
US9296101B2 (en) * 2013-09-27 2016-03-29 Brain Corporation Robotic control arbitration apparatus and methods
US20210138249A1 (en) * 2016-04-22 2021-05-13 Newton Howard System and method for neural stimulation using spike frequency modulation
US9767408B1 (en) 2016-09-16 2017-09-19 International Business Machines Corporation Multi-memristive synapse with clock-arbitrated weight update
CN106845632B (zh) 2017-01-25 2020-10-16 清华大学 脉冲神经网络信息转换为人工神经网络信息的方法和系统
US11222255B2 (en) 2017-08-17 2022-01-11 Samsung Electronics Co., Ltd. Neuromorphic processing apparatus
US11195085B2 (en) * 2019-03-21 2021-12-07 International Business Machines Corporation Spiking synaptic elements for spiking neural networks
US20200401876A1 (en) * 2019-06-24 2020-12-24 Washington University Method for designing scalable and energy-efficient analog neuromorphic processors

Also Published As

Publication number Publication date
CN113614745A (zh) 2021-11-05
GB202113789D0 (en) 2021-11-10
WO2020188380A1 (en) 2020-09-24
GB2596480A (en) 2021-12-29
GB2596480B (en) 2022-05-11
US20200302267A1 (en) 2020-09-24
JP7427015B2 (ja) 2024-02-02
JP2022525066A (ja) 2022-05-11
US11195085B2 (en) 2021-12-07

Similar Documents

Publication Publication Date Title
DE112020001369T5 (de) Gepulste synaptische elemente für gepulste neuronale netze
DE4042139C2 (de) Neuron-Einheit
DE102007001025B4 (de) Verfahren zur rechnergestützten Steuerung und/oder Regelung eines technischen Systems
DE102008020380B4 (de) Verfahren zum rechnergestützten Lernen einer Steuerung und/oder Regelung eines technischen Systems
EP2649567B1 (de) Verfahren zur rechnergestützten modellierung eines technischen systems
WO2014121863A1 (de) Verfahren und vorrichtung zur steuerung einer mit einer erneuerbaren energiequelle betreibbaren energieerzeugungsanlage
DE102008020379A1 (de) Verfahren zur rechnergestützten Steuerung und/oder Regelung eines technischen Systems
DE112011101370T5 (de) Neuronales Netz mit kanonischen gepulsten Neuronen für einen raumzeitlichen Assoziativspeicher
DE3938645C1 (de)
DE112020002186T5 (de) Dnn-training mit asymmetrischen rpu-einheiten
DE4217832A1 (de) Mustererkennungs- und musterlerngeraet
DE112019004944T5 (de) Demodulieren modulierter signale mit künstlichen neuronalen netzwerken
DE19703965C1 (de) Verfahren zur Transformation einer zur Nachbildung eines technischen Prozesses dienenden Fuzzy-Logik in ein neuronales Netz
DE102016221516B4 (de) Zeitverzögerungselement aus Phasenwechselmaterial für neuromorphe Netzwerke
DE10139682B4 (de) Verfahren zum Generieren von neuronalen Netzen
DE10201018B4 (de) Neuronales Netz, Opimierungsverfahren zur Einstellung der Verbindungsgewichte eines neuronalen Netzes sowie Analyseverfahren zur Überwachung eines Optimierungsverfahrens
DE112020005613T5 (de) Neuromorphe Einheit mit Kreuzschienen-Array-Struktur
DE19703964C1 (de) Verfahren zur Transformation einer zur Nachbildung eines technischen Prozesses dienenden Fuzzy-Logik in ein neuronales Netz
EP0978052B1 (de) Rechnergestütztes verfahren zur auswahl von trainingsdaten für ein neuronales netz
DE10048308B4 (de) Verfahren und Vorrichtung zum Klassifizieren von Objekten aus als Pixelmuster vorliegenden eingangsseitigen Bilddaten
DE102018205660A1 (de) Simulieren von statistisch modellierten Sensordaten
DE4330847A1 (de) Vorrichtung und Verfahren zur Datenverarbeitung
DE112020004754T5 (de) Künstliche-intelligenz-hardware mit synaptischer wiederverwendung
DE102021201833A1 (de) Vorrichtung zur Verarbeitung von mindestens einem Eingangsdatensatz unter Verwendung eines neuronalen Netzes sowie Verfahren
EP1114398B1 (de) Verfahren zum trainieren eines neuronalen netzes, verfahren zur klassifikation einer folge von eingangsgrössen unter verwendung eines neuronalen netzes, neuronales netz und anordnung zum trainieren eines neuronalen netzes

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence