DE112021003881T5 - Online-training von neuronalen netzen - Google Patents

Online-training von neuronalen netzen Download PDF

Info

Publication number
DE112021003881T5
DE112021003881T5 DE112021003881.8T DE112021003881T DE112021003881T5 DE 112021003881 T5 DE112021003881 T5 DE 112021003881T5 DE 112021003881 T DE112021003881 T DE 112021003881T DE 112021003881 T5 DE112021003881 T5 DE 112021003881T5
Authority
DE
Germany
Prior art keywords
neural
network
computer
neural network
spatial
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
DE112021003881.8T
Other languages
English (en)
Inventor
Thomas Bohnstingl
Stanislaw Wozniak
Angeliki Pantazi
Evangelos Stavros Eleftheriou
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 DE112021003881T5 publication Critical patent/DE112021003881T5/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/08Learning methods
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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
    • 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

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)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)

Abstract

Die Erfindung betrifft insbesondere ein von einem Computer umgesetztes Verfahren zum Trainieren von Parametern eines rekurrenten neuronalen Netzes. Das Netz weist eine oder mehrere Schichten neuronaler Einheiten auf. Jede neuronale Einheit weist einen internen Zustand auf, der auch als Einheitenzustand bezeichnet werden kann. Das Verfahren weist ein Bereitstellen von Trainingsdaten, die ein Eingangssignal und ein erwartetes Ausgangssignal aufweisen, an das rekurrente neuronale Netz auf. Das Verfahren weist ferner ein Bestimmen einer räumlichen Gradientenkomponente für jede neuronale Einheit und ein Bestimmen einer zeitlichen Gradientenkomponente für jede neuronale Einheit auf. Das Verfahren weist ferner ein Aktualisieren der zeitlichen und der räumlichen Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals auf. Die Berechnung der räumlichen und der zeitlichen Gradientenkomponente kann unabhängig voneinander ausgeführt werden. Die Erfindung betrifft ferner ein neuronales Netz und ein zugehöriges Computerprogrammprodukt.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Die vorliegende Anmeldung ist eine nicht-vorläufige Anmeldung der vorläufigen US-Anmeldung 63/054247 , „ONLINE TRAINING OF RECURRENT NEURAL NETWORKS“, die am 21. Juli 2020 eingereicht wurde und hiermit durch Bezugnahme in ihrer Gesamtheit für alle Zwecke aufgenommen wird.
  • HINTERGRUND
  • Die Erfindung betrifft insbesondere ein von einem Computer umgesetztes Verfahren zum Trainieren von neuronalen Netzen, insbesondere rekurrenten neuronalen Netzen.
  • Die Erfindung betrifft ferner ein zugehöriges neuronales Netz und ein zugehöriges Computerprogrammprodukt.
  • In den letzten Jahren ist die Zahl der Anwendungen, die künstliche neuronale Netze (KNNs) verwenden, schnell gewachsen. Vor allem bei Aufgaben wie Spracherkennung, Sprachübersetzung oder dem Bau neuronaler Computer haben rekurrente KNNs, sogenannte RNNs, erstaunliche Leistungen gezeigt.
  • Rekurrente neuronale Netze (RNNs) haben in den letzten Jahren eine wichtige Rolle bei den Fortschritten der künstlichen Intelligenz gespielt. Ein bekannter Ansatz zum Trainieren von RNNs ist ein Gradienten-gestütztes Training unter Verwendung von Backpropagation of Errors Through Time („Rückführung von Fehlern über die Zeit“, BPTT).
  • BPTT hat jedoch Einschränkungen, da es alle vergangenen Aktivitäten verfolgen muss, indem es das Netz in der Zeit entfaltet, was mit zunehmender Länge der Eingabesequenz sehr tief werden kann. Beispielsweise ergibt eine zwei Sekunden lange gesprochene Eingabesequenz mit 1-ms-Zeitschritten ein 2000 Schichten tiefes entfaltetes Netz.
  • Dementsprechend kann die Rückführung von Fehlern über die Zeit zu Systemsperrproblemen führen, wodurch BPTT für Online-Lernszenarien ziemlich unbrauchbar wird. Varianten, die Online-Training ermöglichen, haben in letzter Zeit wieder die Aufmerksamkeit der Forschungsgemeinschaft auf sich gezogen. Ein bekannter Ansatz konzentriert sich darauf, BPTT durch Online-Algorithmen zu approximieren. Ein anderer Ansatz lässt sich von der Biologie inspirieren und untersucht gepulste neuronale Netze („spiked neural networks“, SNNs).
  • Somit besteht weiterhin Bedarf an vorteilhaften Verfahren zum Trainieren, insbesondere dem Online-Trainieren neuronaler Netze.
  • KURZDARSTELLUNG
  • Gemäß einem Aspekt ist die Erfindung als von einem Computer umgesetztes Verfahren zum Trainieren eines neuronalen Netzes ausgeführt. Das Netz weist eine oder mehrere Schichten neuronaler Einheiten auf. Jede neuronale Einheit hat einen internen Zustand, der auch als Einheitenzustand bezeichnet werden kann. Das Verfahren weist ein Bereitstellen von Trainingsdaten, die ein Eingangssignal und ein erwartetes Ausgangssignal aufweisen, an das neuronale Netz auf. Das Verfahren weist ferner ein Bestimmen einer räumlichen Gradientenkomponente für jede neuronale Einheit und ein Bestimmen einer zeitlichen Gradientenkomponente für jede neuronale Einheit auf. Das Verfahren weist ferner ein Aktualisieren der zeitlichen und der räumlichen Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals auf.
  • Dementsprechend stützen sich Verfahren gemäß Ausführungsformen der Erfindung auf eine Trennung von räumlichen und zeitlichen Gradientenkomponenten. Dies kann ein tieferes Verständnis von Rückkopplungsmechanismen ermöglichen. Darüber hinaus kann es eine wirtschaftliche Umsetzung auf Hardwarebeschleunigern wie memristiven Arrays erleichtern. Verfahren gemäß Ausführungsformen der Erfindung können insbesondere zum Online-Training verwendet werden. Verfahren gemäß Ausführungsformen der Erfindung können insbesondere verwendet werden, um Trainingsparameter des neuronalen Netzes zu trainieren.
  • Verfahren gemäß Ausführungsformen der Erfindung verarbeiten als Eingangssignale zeitliche Daten. Zeitliche Daten können als Daten definiert werden, die einen Zustand oder Wert in der Zeit darstellen, oder mit anderen Worten als Daten, die sich auf Zeitpunkte beziehen. Die Eingangssignale können insbesondere aus fortlaufenden Eingangsdatenströmen bestehen. Das Eingangssignal wird von dem neuronalen Netz zu Zeitpunkten oder mit anderen Worten in Zeitschritten verarbeitet.
  • Gemäß einer Ausführungsform wird das Bestimmen der räumlichen und der zeitlichen Gradientenkomponente unabhängig voneinander ausgeführt. Dies hat den Vorteil, dass diese Gradientenkomponenten parallel berechnet werden können, was die Rechenzeit verringert.
  • Gemäß Ausführungsformen bilden die räumlichen Gradientenkomponenten Lernsignale und die zeitlichen Gradientenkomponenten Ereignisspuren (engl. „eligibility trace“).
  • Verfahren gemäß Ausführungsformen der Erfindung können insbesondere für Einheiten mit geringer Komplexität wie Internet-of-Things(loT)-Einheiten sowie Edge-Artificial-Intelligence- (AI) -Einheiten verwendet werden.
  • Gemäß Ausführungsformen weist das Verfahren ein Aktualisieren von Trainingsparametern des neuronalen Netzes zu bestimmten bzw. vordefinierten Zeitpunkten auf, insbesondere zu jedem Zeitpunkt. Die Aktualisierung kann insbesondere in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponenten erfolgen.
  • Die gemäß Ausführungsformen trainierbaren Trainingsparameter umfassen insbesondere Eingangsgewichte und/oder rekursive Gewichte der neuronalen Einheiten. Durch die Aktualisierung der Trainingsparameter zu jedem Zeitpunkt lernen die neuronalen Einheiten zu jedem Zeitpunkt oder mit anderen Worten in jedem Zeitschritt.
  • Gemäß Ausführungsformen stützen sich die räumlichen Gradientenkomponenten auf Konnektivitätsparameter des neuronalen Netzes, beispielsweise der Konnektivität der einzelnen neuronalen Einheiten. Gemäß Ausführungsformen beschreiben die Konnektivitätsparameter insbesondere Parameter der Architektur des neuronalen Netzes. Gemäß Ausführungsformen können die Konnektivitätsparameter als Anzahl oder Satz von Übertragungsleitungen definiert werden, die einen Informationsaustausch zwischen einzelnen neuronalen Einheiten ermöglichen. Gemäß Ausführungsformen sind die räumlichen Gradientenkomponenten Komponenten, die die räumlichen Aspekte des neuronalen Netzes berücksichtigen, insbesondere gegenseitige Abhängigkeiten zwischen den einzelnen neuronalen Einheiten zu jedem Zeitpunkt.
  • Gemäß Ausführungsformen stützen sich die zeitlichen Gradientenkomponenten auf die zeitliche Dynamik der neuronalen Einheiten. Gemäß Ausführungsformen sind die zeitlichen Gradientenkomponenten Komponenten, die die zeitliche Dynamik der neuronalen Einheiten berücksichtigen, insbesondere die zeitliche Entwicklung der internen Zustände/Einheitenzustände.
  • Gemäß Ausführungsformen weist das Verfahren ein Bestimmen einer räumlichen Gradientenkomponente zu jedem Zeitpunkt für jede der einen oder mehreren Schichten und ein Bestimmen einer zeitlichen Gradientenkomponente für jede der einen oder mehreren Schichten zu jedem Zeitpunkt auf. Somit berechnet das Verfahren zu jedem Zeitpunkt/Zeitschritt eine zeitliche Gradientenkomponente und eine räumliche Gradientenkomponente je Schicht. Die räumlichen Gradientenkomponenten/das Lernsignal kann für jede Schicht spezifisch sein und breitet sich von der letzten Schicht zur Eingabeschicht aus, ohne in der Zeit zurückzugehen, d.h. es stellt den räumlichen Gradienten dar, der durch die Netzarchitektur läuft.
  • Gemäß Ausführungsformen kann jede Schicht ihre eigene zeitliche Gradientenkomponente/Ereignisspur berechnen, die ausschließlich von Beiträgen der jeweiligen Schicht abhängig ist, d.h. sie stellt den zeitlichen Gradienten dar, der die Zeit für dieselbe Schicht durchläuft. Gemäß Ausführungsformen können die räumlichen Gradientenkomponenten für zwei oder mehr Schichten gemeinsam genutzt werden.
  • Gemäß Ausführungsformen kann das Verfahren sowohl für einschichtige als auch für mehrschichtige Netze verwendet werden.
  • Gemäß Ausführungsformen kann das Verfahren auf rekurrente neuronale Netze, gepulste neuronale Netze und hybride Netze angewendet werden, die Einheiten aufweisen oder daraus bestehen, die einen Einheitenzustand aufweisen, und Einheiten, die keinen Einheitenzustand aufweisen.
  • Gemäß Ausführungsformen können das Verfahren oder Teile des Verfahrens auf neuromorpher Hardware umgesetzt werden, insbesondere auf Arrays von memristiven Einheiten.
  • Für flache Netze können Verfahren gemäß Ausführungsformen der Erfindung zu der Backpropagation-through-time- (BPTT) -Technik äquivalente Gradienten beibehalten.
  • Gemäß einer Ausführungsform eines weiteren Aspekts der Erfindung ist ein neuronales Netz, insbesondere ein rekurrentes neuronales Netz vorgesehen. Das neuronale Netz weist eine oder mehrere Schichten von neuronalen Einheiten auf. Jede neuronale Einheit weist einen internen Zustand auf, der auch als Einheitenzustand bezeichnet werden kann. Das neuronale Netz ist zum Ausführen eines Verfahrens konfiguriert, das ein Bereitstellen von Trainingsdaten aufweist, die ein Eingangssignal und ein erwartetes Ausgangssignal für das neuronale Netz aufweisen. Das Verfahren weist ferner ein Berechnen einer räumlichen Gradientenkomponente für jede neuronale Einheit und ein Berechnen einer zeitlichen Gradientenkomponente für jede neuronale Einheit auf. Das Verfahren weist ferner ein Aktualisieren der zeitlichen und der räumlichen Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals auf. Die Berechnung der räumlichen und der zeitlichen Gradientenkomponente kann unabhängig voneinander ausgeführt werden.
  • Gemäß Ausführungsformen kann das neuronale Netz aus einem rekurrenten neuronalen Netz, einem gepulsten neuronalen Netz oder einem hybriden neuronalen Netz bestehen.
  • Gemäß einer Ausführungsform eines weiteren Aspekts der Erfindung ist ein Computerprogrammprodukt zum Trainieren eines neuronalen Netzes vorgesehen. Das Computerprogrammprodukt weist ein von einem Computer lesbares Speichermedium mit darauf verkörperten Programmanweisungen auf, wobei die Programmanweisungen durch das neuronale Netz ausführbar sind, um das neuronale Netz zu veranlassen, ein Verfahren auszuführen, das Schritte zum Empfangen von Trainingsdaten aufweist, die ein Eingangssignal und ein erwartetes Ausgangssignal aufweisen. Das Verfahren weist weitere Schritte eines Berechnens einer räumlichen Gradientenkomponente für jede neuronale Einheit und eines Berechnens einer zeitlichen Gradientenkomponente für jede neuronale Einheit auf. Weitere Schritte umfassen ein Aktualisieren der zeitlichen und der räumlichen Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals. Gemäß Ausführungsformen kann das Berechnen der räumlichen und der zeitlichen Gradientenkomponente unabhängig voneinander ausgeführt werden.
  • Ausführungsformen der Erfindung werden nachfolgend im Einzelnen anhand darstellender und nicht einschränkender Beispiele unter Bezugnahme auf die beigefügten Zeichnungen beschrieben.
  • Figurenliste
    • 1 zeigt den Gradientenfluss eines von einem Computer umgesetzten Verfahrens zum Trainieren eines neuronalen Netzes gemäß einer Ausführungsform der Erfindung;
    • 2 zeigt den Gradientenfluss eines von einem Computer umgesetzten Verfahrens zum Trainieren eines neuronalen Netzes gemäß einer Ausführungsform der Erfindung;
    • 3 zeigt eine gepulste neuronale Einheit eines gepulsten neuronalen Netzes;
    • 4a zeigt Testergebnisse von Verfahren gemäß Ausführungsformen der Erfindung im Vergleich zu Backpropagation-through-time- (BPTT) -Techniken;
    • 4b zeigt weitere Testergebnisse von Verfahren gemäß Ausführungsformen der Erfindung im Vergleich zu Backpropagation-through-time- (BPTT) -Techniken;
    • 5 zeigt das Testergebnis einer weiteren Aufgabe bezüglich der Klassifikation handgeschriebener Ziffern;
    • 6 zeigt, wie Verfahren gemäß Ausführungsformen der Erfindung auf neuromorpher Hardware umgesetzt werden können;
    • 7 zeigt eine vereinfachte schematische Darstellung eines neuronalen Netzes gemäß einer Ausführungsform der Erfindung;
    • 8 zeigt ein Flussdiagramm von Verfahrensschritten eines von einem Computer umgesetzten Verfahrens zum Trainieren von Parametern eines rekurrenten neuronalen Netzes;
    • 9 zeigt eine beispielhafte Ausführungsform eines Datenverarbeitungssystems zum Ausführen eines Verfahrens gemäß Ausführungsformen der Erfindung;
    • Die 10 und 11 zeigen eine beispielhafte detaillierte Ableitung von Verfahren gemäß Ausführungsformen der Erfindung für tiefe neuronale Netze.
  • DETAILLIERTE BESCHREIBUNG
  • Ausführungsformen der Erfindung sehen ein Verfahren zum Trainieren, insbesondere zum Online-Training, von neuronalen Netzen vor, insbesondere rekurrenten neuronalen Netzen (RNNs). Das Verfahren kann im Folgenden auch als OSTL bezeichnet werden. Verfahren gemäß Ausführungsformen der Erfindung stellen einen vorteilhaften Algorithmus bereit, der für Online-Lernanwendungen verwendet werden kann, indem räumliche und zeitliche Gradienten getrennt werden.
  • 1 zeigt den Gradientenfluss eines von einem Computer umgesetzten Verfahrens zum Trainieren eines neuronalen Netzes 100 gemäß einer Ausführungsform der Erfindung. Für 1 wird angenommen, dass das neuronale Netz 100 ein rekurrentes neuronales Netz (RNN) mit einer einzigen Schicht 110 ist, die neuronale Einheiten 111 aufweist. Das neuronale Netz wird für drei Zeitschritte t entfaltet.
  • Jede neuronale Einheit 111 weist einen internen Zustand S 120 auf. Das Verfahren weist ein Bereitstellen von Trainingsdaten, die ein Eingangssignal xt 131 aufweisen, und ein erwartetes Ausgangssignal 132 an das neuronale Netz auf. Nun berechnet das Verfahren für jede neuronale Einheit 110 eine räumliche Gradientenkomponente Lt 141 und eine zeitliche Gradientenkomponente et 142. Ferner werden zu jedem Zeitpunkt t des Eingangssignals 131 die zeitlichen Gradientenkomponenten 130 und die räumlichen Gradientenkomponenten 131 für jede neuronale Einheit 110 aktualisiert.
  • Ziel des Lernens/Trainings ist es, Parameter θ des neuronalen Netzes so zu trainieren, dass es den Fehler Et bei dem gegenwärtigen Ausgangssignal yt und dem Eingangssignal xt zu einer Zeit t minimiert.
  • In RNNs hängt der Netzfehler Et zur Zeit t oft von der Ausgabe yt der neuronalen Einheiten in der Ausgangsschicht ab, d.h. Et = f(yt). Weiter können viele neuronale Einheiten in RNNs einen internen Zustand st enthalten, von dem die Ausgabe abhängt, d.h. yt = f(st). Dieser interne Zustand der neuronalen Einheiten kann eine rekursive Funktion seiner selbst sein, der zusätzlich über trainierbare Eingangsgewichte W und trainierbare Rekurrenzgewichte H von seinem Eingangssignal xt bzw. rekursiv von seinen Ausgangssignalen abhängt.
  • Gemäß Ausführungsformen kann eine Gleichung für den internen Zustand als st = f(xt, st-1, yt-1, W, H) formuliert werden, zum Beispiel st = Wxt + Hyt-1.
  • Der Einfachheit halber können alle trainierbaren Parameter des RNN 100 im Folgenden gemeinsam durch eine Variable θ beschrieben werden. Dies vereinfacht die obige Gleichung zu st = f(xt, st-1, yt-1, θ).
  • Außerdem kann die Darstellung der Ausgabe yt gemäß Ausführungsformen erweitert werden, so dass sie auch eine direkte Abhängigkeit von den trainierbaren Parametern berücksichtigt, d.h. yt = f(st, θ), zum Beispiel yt = σ(st + b).
  • Unter Verwendung dieser Darstellung kann die erforderliche Änderung der Parameter θ zur Minimierung von E auf Grundlage des Prinzips des Gradientenabstiegs berechnet werden als Δ θ = η d E d θ .
    Figure DE112021003881T5_0001
  • Davon ausgehend verwenden Ausführungsformen der Erfindung die Backpropagation-through-time- (BPTT) -Technik als Ausgangspunkt für die Ableitung und drücken dE/dθ aus als d E d θ = 1 t T E t y t [ y t s t d s t d θ + y t θ ] ,
    Figure DE112021003881T5_0002
    wobei die Summation über die Zeit vom ersten Zeitschritt t = 1 bis zum letzten Zeitschritt t = T reicht. Nun wird Gleichung 2 unten erweitert und eine Rekursion aufgelöst, die ausgenutzt werden kann, um eine Online-Umformulierung der BPTT zu erstellen. Der Kürze halber skizzieren wir nur die Hauptschritte für eine einzelne Einheit, aber die detaillierte Herleitung ist im ergänzenden Material weiter unten angegeben. Insbesondere kann gezeigt werden, dass d s t d θ = 1 t ^ t ( t t ' > t ^ d s t ' d s t ' 1 ) ( s t ' θ + s t ^ y t ^ 1 y t ^ 1 θ ) .
    Figure DE112021003881T5_0003
  • Gleichung 3 kann wie folgt in rekursiver Form umgeschrieben werden ε t , θ : = d s t d θ = ( d s t d s t 1 ε t 1, θ + ( s t θ + s t y t 1 y t 1 θ ) ) .
    Figure DE112021003881T5_0004
  • Dies führt zu einem Ausdruck des Gradienten als d E d θ = t L t e t , θ ,
    Figure DE112021003881T5_0005
    wobei e t , θ : = d y t d θ = y t s t ε t , θ + y t θ
    Figure DE112021003881T5_0006
    L t : = E t y t .
    Figure DE112021003881T5_0007
  • Somit können gemäß Ausführungsformen die Berechnung der räumlichen und der zeitlichen Gradientenkomponente unabhängig voneinander ausgeführt werden.
  • Im Beispiel von Standard-RNNs ist die explizite Form dieser Gleichungen d s l t d s l t 1 = H l h ' l t 1
    Figure DE112021003881T5_0008
    ε t , W = d s t d s t 1 ε t 1, W + x t e t , W = σ ' t ε t , W ε t , H = d s t d s t 1 ε t 1, W + y t 1 e t , H = σ ' t ε t , H ε t , b = d s t d s t 1 ε t 1, b + H σ ' t 1 e t , b = σ ' t ε t , b + σ ' t
    Figure DE112021003881T5_0009
  • Gemäß Ausführungsformen lehnen sich die Bezeichnungen an die Standardnomenklatur biologischer Systeme an, bei denen die Änderung synaptischer Gewichte häufig in ein Lernsignal und eine Ereignisspur zerlegt wird. Im einfachsten Fall sind die Ereignisspuren tiefpassgefilterte Versionen der neuronalen Aktivitäten, während die Lernsignale räumlich vermittelte Belohnungssignale darstellen. Somit können gemäß Ausführungsformen die mit et,θ in Gleichung 6 bezeichneten zeitlichen Gradienten zu Ereignisspuren gehören, und die mit Lt in Gleichung 7 bezeichneten räumlichen Gradienten können zu Lernsignalen gehören.
  • Ähnlich wie bei biologischen Systemen wird die Parameteränderung dE/dθ gemäß Gleichung 5 als Summe der Produkte der Ereignisspur und des Lernsignals über die Zeit berechnet. Dadurch können die Parameteraktualisierungen online berechnet werden, wie in 1 gezeigt.
  • Weiterhin ist zu beachten, dass die Ableitung in Gleichung 6 exakt ist.
  • Wie in 1 gezeigt, können bei jedem Zeitschritt die zeitlichen Gradienten mit den räumlichen Gradienten dieses Zeitschritts zusammengeführt werden und müssen nicht bis zum Beginn der Eingangssequenz/des Eingangssignals zurückgehen, wie es gemäß der bekannten Backpropagation-through-time-Technik erforderlich ist.
  • 2 zeigt den Gradientenfluss eines von einem Computer umgesetzten Verfahrens zum Trainieren eines neuronalen Netzes 200 gemäß einer Ausführungsform der Erfindung. Für 2 wird angenommen, dass das neuronale Netz 200 ein rekurrentes neuronales Netz (RNN) mit mehreren Schichten ist.
  • Insbesondere zeigt 2 den Gradientenfluss für ein zweischichtiges RNN, das eine erste Schicht 210 mit neuronalen Einheiten 211 und eine zweite Schicht 220 mit neuronalen Einheiten 221 aufweist. Die Schichten 210 und 220 sind für drei Zeitschritte entfaltet und die räumlichen und die zeitlichen Gradienten sind getrennt.
  • Jede neuronale Einheit 211 hat einen internen Zustand S1 230. Jede neuronale Einheit 221 hat einen internen Zustand S2 231. Das Verfahren weist ein Bereitstellen von Trainingsdaten auf, die ein Eingangssignal xt 141 und ein erwartetes Ausgangssignal 142 an das neuronale Netz 200 aufweisen. Nun berechnet das Verfahren für jede neuronale Einheit 211 eine räumliche Gradientenkomponente L1 t 151 und für jede neuronale Einheit 221 eine räumliche Gradientenkomponente L2 t 152. Weiterhin berechnet das Verfahren für jede neuronale Einheit 211 eine zeitliche Gradientenkomponente e1 t 161 und für jede neuronale Einheit 221 eine zeitliche Gradientenkomponente e2 t 162.
  • Außerdem werden zu jedem Zeitpunkt t des Eingangssignals 141 die zeitlichen Gradientenkomponenten 161, 162 und die räumlichen Gradientenkomponenten 151, 152 für jede neuronale Einheit 211 bzw. 221 aktualisiert.
  • Viele der neuesten Anwendungen beruhen auf komplizierteren mehrschichtigen Architekturen. Um Verfahren gemäß Ausführungsformen der Erfindung auf tiefe Architekturen zu erweitern, können die Definitionen der Zustände st und der Ausgabe yt wie folgt aktualisiert werden. Der Fehler Et in tiefen Architekturen ist nur von der letzten Ausgabeschicht k abhängig, d.h. Et = f(yk t), und jede Schicht I hat ihre eigenen trainierbaren Parameter θI. Die Eingabe in Schicht I ist die Ausgabe der vorherigen Schicht yI-1 t und für die erste Schicht wird die externe Eingabe y0 t = xt verwendet.
  • Somit können die Definitionen angepasst werden zu s l t = f ( s l t 1 , y l t 1 , y l 1 t , θ l )
    Figure DE112021003881T5_0010
    y l t = f ( s l t , θ l ) .
    Figure DE112021003881T5_0011
  • Für ein einschichtiges neuronales Netz kommt die Trennung von räumlichen und zeitlichen Komponenten zustande, wenn man den durch die Gleichungen 3 bis 5 skizzierten Ableitungen folgt.
  • Für eine mehrschichtige Architektur kann jedoch der Ausdruck dst/dθ in Gleichung 3 unterschiedliche Schichten I und m einbeziehen, z.B. dsI t/dθm, und führt dadurch zu Abhängigkeiten zwischen den Schichten, siehe das ergänzende Material.
  • Um die oben beschriebenen Vorteile zu erhalten, wird gemäß Ausführungsformen der Erfindung die klare Trennung von räumlichen und zeitlichen Gradienten auch für mehrschichtige Architekturen eingeführt. Dementsprechend werden ähnliche Schritte wie oben für ein Einzelschicht-RNN beschrieben unter Verwendung der verallgemeinerten Zustands- und Ausgabegleichung 8 und 9 ausgeführt. Nach den detaillierten Herleitungen im ergänzenden Material ergeben sich für Schicht I folgende Ereignisspuren und Lernsignale: e l t , θ = ( y l t s l t ε l t , θ + y l t θ l )
    Figure DE112021003881T5_0012
    L l t = E t y k t ( ( k l + 1 ) m ' 1 y k m ' + 1 t s k m ' + 1 t s k m ' + 1 t y k m ' t ) ,
    Figure DE112021003881T5_0013
    wobei ε l t , θ = ( d s l t d s l t 1 ε l t 1, θ + ( s l t θ l + s l t y l t 1 y l t 1 θ l ) ) .
    Figure DE112021003881T5_0014
  • Nun kann gezeigt werden, dass d E d θ l = t [ L l t e l t , θ + R ] .
    Figure DE112021003881T5_0015
  • Wie man durch Vergleich der Gleichungen 5 und 13 erkennen kann, bleibt der Ansatz gemäß Ausführungsformen der Erfindung bezüglich einer Multiplikation eines Lernsignals LI t mit einer Ereignisspur eI t,θ bei tiefen Netzen gleich.
  • Das Lernsignal LI t ist für jede Schicht spezifisch und breitet sich von der letzten Schicht bis zur Eingabeschicht aus, ohne in der Zeit zurückzugehen, d.h. es stellt den räumlichen Gradienten dar, der die Netzarchitektur durchläuft. Darüber hinaus berechnet jede Schicht ihre eigene Ereignisspur eI t,θ, die ausschließlich von Beiträgen der entsprechenden Schicht I abhängt, die also den zeitlichen Gradienten darstellt, der dieselbe Schicht durch die Zeit durchläuft.
  • In Gleichung 13 sind allerdings auch zusätzliche Terme beteiligt, die jeweils eine Mischung aus räumlichen und zeitlichen Gradienten enthalten und im Allgemeinen ein Zurückgehen in der Zeit erfordern. Diese Terme werden im Restterm R zusammengefasst.
  • Um die Trennung zwischen räumlichen und zeitlichen Gradienten beizubehalten, wird Gleichung 13 gemäß Ausführungsformen vereinfacht, indem der Term R weggelassen wird. Somit ergibt sich gemäß Ausführungsformen die folgende Formulierung für mehrschichtige Netze: d E d θ l = t L l t e l t , θ .
    Figure DE112021003881T5_0016
  • Somit wird gemäß Ausführungsformen der Erfindung bewusst auf den Restterm R verzichtet und die räumlich und zeitlich gemischten Gradientenanteile werden beim Lernen/Training nicht berücksichtigt. Untersuchungen der Erfinder der vorliegenden Erfindung haben jedoch zu der Einsicht geführt, dass dies ein vorteilhafter Ansatz ist. Insbesondere ist bei einem solchen Ansatz bekannt, was weggelassen wird. Darüber hinaus haben Simulationen der Erfinder empirische Beweise erbracht, dass auch ohne diese Terme eine konkurrenzfähige Leistung zu BPTT erreicht werden kann, wie weiter unten erläutert wird.
    Darüber hinaus kann gemäß Ausführungsformen der Restterm R auch genähert werden, was eine noch bessere Näherung der Gradienten aus Gleichung 13 erlaubt.
  • 3 zeigt eine gepulste neuronale Einheit SNU 310 eines gepulsten neuronalen Netzes 300. Unter Bezugnahme auf 3 wird gezeigt, dass Verfahren gemäß der Ausführungsform auf gepulste neuronale Netze (SNN) angewendet werden können. Gestrichelte Linien in 3 zeigen Verbindungen mit Zeitverzögerung an, während fette Linien parametrisierte Verbindungen anzeigen. Die SNU 310 weist einen Blockeingang 320, einen Blockausgang 321, ein Rücksetz-Gatter 322 und ein Membranpotential 323 auf.
  • Während SNNs in der Vergangenheit oft mit Varianten von Pulszeit-abhängiger Plastizität trainiert wurden, wurde kürzlich gradientengestütztes Training für SNNs vorgeschlagen, z.B. in dem Dokument: Wozniak, S., Pantazi, A., Bohnstingl, T. und Eleftheriou, E., Deep learning incorporating biologically-inspired neural dynamics, arXiv, Dezember 2018, URL: https://arxiv.org/abs/1812.07040.
  • Ein solches Verfahren zielt darauf ab, die ANN-Welt mit der SNN-Welt zu verbinden, indem die SNN-Dynamik mit ANN-gestützten Komponenten umgestaltet wird, wodurch die gepulste neuronale Einheit SNU 310 ausgebildet wird. Die SNUs 310 des gepulsten neuronalen Netzes 300 empfangen eine Mehrzahl von Eingangssignalen.
  • Mit diesem Ansatz ermöglichen SNUs ein gradientengestütztes Lernen. Dies ermöglicht es, die Leistung bekannter Optimierungstechniken für KNNs auszunutzen und gleichzeitig die Dynamik des in der Neurowissenschaft bekannten Leaky-Integrate-and-Fire-(LIF) -Neuronenmodells zu reproduzieren.
  • Wie oben gezeigt, können Verfahren gemäß Ausführungsformen der Erfindung für generische RNNs verwendet werden, können gemäß Ausführungsformen aber auch zum Trainieren tiefer SNNs angewendet werden, die als RNNs formuliert sind. Dies wird im Folgenden gezeigt. Man geht von den Zustands- und Ausgabegleichungen einer SNU-Schicht I wie in Wozniak et al., 2018, aus: s l t = g ( W l y l 1 t + H l y l t 1 + l ( τ ) s l t 1 ( 1 y l t 1 ) )
    Figure DE112021003881T5_0017
    y l t = h ( s l t + b l ) .
    Figure DE112021003881T5_0018
  • Unter Verwendung der Gleichungen 15 und 16 werden die Ereignisspuren gemäß Gleichung 10 abgeleitet als e l t , W = h ' l t ε l t , W
    Figure DE112021003881T5_0019
    e l t , H = h ' l t ε l t , H
    Figure DE112021003881T5_0020
    e l t , b = h ' l t ε l t , b + h ' l t ,
    Figure DE112021003881T5_0021
    wobei ε l t , W = g ' l t [ d s l t d s l t 1 ε l t 1, W + y l 1 t ]
    Figure DE112021003881T5_0022
    ε l t , H = g ' l t [ d s l t d s l t 1 ε l t 1, W + y l t 1 ]
    Figure DE112021003881T5_0023
    ε l t , b = g ' l t [ d s l t d s l t 1 ε l t 1, b l ( τ ) s l t 1 h ' l t 1 + H l h ' l t 1 ]
    Figure DE112021003881T5_0024
    und d s l t d s l t 1 = l ( τ ) ( 1 y l t 1 s l t 1 h ' l t 1 ) + H l h ' l t 1 .
    Figure DE112021003881T5_0025
  • Zu beachten ist, dass die abgekürzte Schreibweise d g ( χ l t ) d χ l t = g ' l t
    Figure DE112021003881T5_0026
    und d h ( χ l t ) d χ l t = h ' l t .
    Figure DE112021003881T5_0027
    verwendet wurde.
  • Für eine Verlustfunktion des mittleren quadratische Fehlers, z.B. E t = ( y ^ t y k t ) 2 ,
    Figure DE112021003881T5_0028
    wobei y ^ t
    Figure DE112021003881T5_0029
    die Zielausgabe ist, kann das Lernsignal wie folgt berechnet werden: L l t = 2 ( y ^ t y k t )
    Figure DE112021003881T5_0030
    [ ( k l + 1 ) m ' 1 h k m ' + 1 ' t g k m ' + 1 ' t W k m ' + 1 ] .
    Figure DE112021003881T5_0031
  • Für ein tiefes neuronales Netz mit k Schichten, die aus RNNs oder rekurrenten SNUs bestehen, haben Verfahren gemäß Ausführungsformen der Erfindung eine Zeitkomplexität von O(kn4). Diese Zeitkomplexität wird durch die Netzstruktur selbst bestimmt und hauptsächlich von der Rekursionsmatrix HI dominiert. Wenn vorwärtsgerichtete Architekturen gemäß Ausführungsformen verwendet werden, verschwinden die Ausdrücke mit HI und die Gleichungen der SNU werden zu s l t = g ( W l y l 1 t + l ( τ ) s l t 1 ( 1 y l t 1 ) )
    Figure DE112021003881T5_0032
    y l t = h ( s l t + b l ) .
    Figure DE112021003881T5_0033
  • Diese Gleichungen führen dann zu den folgenden Ereignisspuren e l t , W = h ' l t ε l t , W
    Figure DE112021003881T5_0034
    e l t , b = h ' l t ε l t , b + h ' l t ,
    Figure DE112021003881T5_0035
    wobei e l t , W = g ' l t [ d s l t d s l t 1 ε l t 1, W + y l 1 t ]
    Figure DE112021003881T5_0036
    e l t , b = g ' l t [ d s l t d s l t 1 ε l t 1, b l ( τ ) s l t 1 h ' l t 1 ] ,
    Figure DE112021003881T5_0037
    mit d s l t d s l t 1 = l ( τ ) ( 1 y l t 1 s l t 1 h ' l t 1 ) .
    Figure DE112021003881T5_0038
  • Dadurch wird die Zeitkomplexität von O(kn4) auf O(kn2) gesenkt. Die Verwendung einer vorwärtsgerichteten SNU-Netzarchitektur verhindert nicht notwendigerweise das Lösen zeitlicher Aufgaben. Solche Netze werden seit langem in SNNs verwendet, und dies impliziert, dass sich das Netz auf die internen Zustände der Einheiten verlassen sollte, die unter Verwendung von Selbstrekursion anstatt von schichtweisen Rekursionsmatrizen HI umgesetzt sind.
  • Es ist anzumerken, dass gemäß Ausführungsformen das Lernsignal ohne die Matrizen W berechnet werden kann, z.B. auf Grundlage einer gewissen Randomisierung bzw. Näherung von W. Insbesondere kann das Lernsignal auf Grundlage verschiedener Matrizen berechnet werden, die im vorwärtsgerichteten Pfad nicht verwendet werden. Mit anderen Worten kann der vorwärtsgerichtete Pfad Matrizen W verwenden, während das Lernsignal mit anderen Matrizen B berechnet wird. Die Matrizen B können, müssen aber nicht trainierbar sein.
  • Gemäß Ausführungsformen können Verfahren wie oben gezeigt auch für hybride Netze verwendet werden. In dieser Hinsicht besteht ein sehr häufiges Szenario bei tiefen RNNs oder SNNs darin, dass sie häufig mit Schichten von zustandslosen Neuronen am Ausgang verbunden sind, beispielsweise Sigmoid- oder Softmax-Schichten. Verfahren gemäß Ausführungsformen der Erfindung können ohne Modifikationen ebenfalls angewendet werden, um diese hybriden Netze zu trainieren, die eine oder mehrere Schichten von zustandslosen Neuronen enthalten. Insbesondere vereinfachen sich die Zustands- und Ausgabegleichungen dieser Schichten zu s l t = f ( y l 1 t , θ l )
    Figure DE112021003881T5_0039
    und y l t = f ( s l t , θ l ) ,
    Figure DE112021003881T5_0040
    wodurch der Ausdruck d s l t d s l t 1
    Figure DE112021003881T5_0041
    in Gleichung 12 verschwindet, und die Ereignisspuren und Lernsignale können berechnet werden als e l t , θ = y l t s l t ε l t , θ + y l t θ l
    Figure DE112021003881T5_0042
    L l t = E t y k t ( ( k l + 1 ) m ' + 1 y k m ' + 1 t s k m ' + 1 t s k m ' + 1 t y k m ' t ) ,
    Figure DE112021003881T5_0043
    wobei ε l t , θ : = s l t θ l .
    Figure DE112021003881T5_0044
  • Zu beachten ist, dass eine zustandslose Schicht keine Restterme R einführt. Dies hat zur Folge, dass beim Hinzufügen einer solchen Schicht zum Netz, selbst zwischen RNN-Schichten, die Gradienten für die nachfolgenden Schichten unverändert bleiben.
  • 4a zeigt Testergebnisse von Verfahren gemäß Ausführungsformen der Erfindung im Vergleich zu Backpropagation-through-time- (BPTT) -Techniken. Insbesondere betrifft 4a die Musikvorhersage auf Grundlage des JSB-Datensatzes, wie im folgenden Dokument eingeführt: Boulanger-Lewandowski, N., Bengio, Y. und Vincent, P., „Modeling temporal dependencies in high-dimensional sequences: Application to polyphonic music generation and transcription“, Proceedings of the 29th International Conference on MachineLearning ICML 12 S. 1881-1888, Madison, Wl, USA, 2012. Omnipress, ISBN 9781450312851. Dazu wurde die standardmäßige Trainings-/Testdatenaufteilung verwendet. Für den Test wurde eine Hybridarchitektur verwendet, die eine vorwärtsgerichtete SNU-Schicht mit 150 Einheiten und eine zustandslose Sigmoid-Schicht mit 88 Einheiten darüber aufweist. Um eine Vergleichsbasis zu erhalten, wurde dasselbe Netz einschließlich all seiner Hyperparameter mit Verfahren gemäß Ausführungsformen der Erfindung sowie BPTT für 1000 Epochen trainiert. Die Y-Achse bezeichnet die negative logarithmische Wahrscheinlichkeit, gemittelt über 10 zufällige Anfangsbedingungen. Balken 411 zeigt das Ergebnis für das Training nach dem BPTT-Verfahren, während Balken 412 das Ergebnis für das Training nach Verfahren gemäß Ausführungsformen der Erfindung zeigt. Weiterhin zeigt Balken 413 das Ergebnis für den Testlauf des BPTT-Verfahrens, während Balken 414 das Ergebnis für den Testlauf von Verfahren gemäß Ausführungsformen der Erfindung zeigt.
  • Wie in 4a gezeigt, sind die mit Verfahren gemäß den Ausführungsformen der Erfindung erhaltenen Ergebnisse praktisch gleichauf mit denen, die mit BPTT erhalten wurden. Man beachte, dass die Aufgabe die Gradientenäquivalenz von BPTT und von Verfahren gemäß Ausführungsformen der Erfindung für eine Hybridarchitektur mit einer einzelnen RNN-Schicht und einer zustandslosen Schicht darüber beweist.
  • Wie in 4b gezeigt, kann diese Aufgabe verwendet werden, um die verringerte Rechenkomplexität von Verfahren gemäß Ausführungsformen der Erfindung für vorwärtsgerichtete SNNs zu demonstrieren. Zu diesem Zweck wurde die Anzahl der erforderlichen Gleitkommaoperationen MFLOP (y-Achse) mit dem integrierten TensorFlow-Profiler für einen Parameter gemessen, der über verschiedene Eingabesequenzlängen (x-Achse) der JSB-Eingabesequenz aktualisiert wurde, siehe 4b. Wie aus Linie 421 ersichtlich, muss BPTT ein zeitliches Entfalten ausführen, daher die lineare Abhängigkeit von der Länge der Sequenz T, wohingegen Verfahren gemäß Ausführungsformen der Erfindung dies nicht tun und daher stabil bleiben, wie durch Linie 422 gezeigt ist. In praktischen Umsetzungen kann es jedoch erforderlich sein, die Aktualisierungen von Verfahren gemäß Ausführungsformen der Erfindung im Laufe der Zeit zu akkumulieren, was zu derselben Komplexität wie BPTT führt. Man beachte, dass die anfänglich höheren Kosten von Verfahren gemäß Ausführungsformen der Erfindung auf Umsetzungsaufwand zurückzuführen sind, da Verfahren gemäß Ausführungsformen der Erfindung nicht in der Standard-Toolbox von TensorFlow enthalten sind. Nichtsdestotrotz stimmt das erhaltene Diagramm mit der theoretischen Komplexitätsanalyse überein.
  • 5 zeigt das Testergebnis einer weiteren Aufgabe zur handschriftlichen Ziffernklassifizierung auf Grundlage des MNIST-Datensatzes, wie eingeführt im Dokument: Lecun, Y., Bottou, L., Bengio, Y., und Haffner, P., „Gradient based learning applied to document recognition“, Proc. IEEE, 86(11):2278-2324, Nov. 1998, ISSN 1558-2256, doi: 10.1109/5.726791.
  • Wiederum wurde die standardmäßige Trainings-/Testdatenaufteilung verwendet. Gemäß dem Test wurde eine vorwärtsgerichtete Architektur aus fünf Schichten von SNUs mit 256 Einheiten verwendet und für 50 Epochen gemittelt über 10 zufällige Anfangsbedingungen trainiert. Ähnlich wie bei der mit Bezug auf die 4a und 4b gezeigten Aufgabe erreicht die Genauigkeit von Verfahren gemäß Ausführungsformen der Erfindung die von BPTT. Die y-Achse bezeichnet die Genauigkeit (in Prozent), die x-Achse die Anzahl der Epochen, die Linie 510 die Ergebnisse für BPTT und die Linie 520 die Ergebnisse für Verfahren gemäß Ausführungsformen der Erfindung.
  • 6 zeigt, wie Verfahren gemäß Ausführungsformen der Erfindung auf neuromorpher Hardware umgesetzt werden können. Die neuromorphe Hardware kann insbesondere ein Kreuzschienenarray aufweisen, das eine Mehrzahl von Zeilenleitungen 610, eine Mehrzahl von Spaltenleitungen 620 und eine Mehrzahl von Verbindungen 630 aufweist, die zwischen der Mehrzahl von Zeilenleitungen 610 und der Mehrzahl von Spaltenleitungen 620 angeordnet sind. Jeder Übergang 630 weist ein resistives Speicherelement 640 auf, insbesondere eine Reihenschaltung eines resistiven Speicherelements und eines Zugriffselements, das einen Zugriffsanschluss zum Zugreifen auf das resistive Speicherelement aufweist. Die resistiven Elemente können z.B. aus Phasenwechselspeicherelementen, Direktzugriffsspeicherelementen mit leitfähiger Überbrückung (CBRAM), resistiven Metall-Oxid-Direktzugriffsspeicherelementen (RRAM), magnetoresistiven Direktzugriffsspeicherelementen (MRAM), ferroelektrischen Direktzugriffsspeicherelementen (FeRAM) oder optischen Speicherelementen bestehen.
  • Gemäß Ausführungsformen können die Eingangsgewichte und die rekursiven Gewichte in der neuromorphen Einheit angeordnet werden, insbesondere als Widerstandszustände der Widerstandselemente.
  • Gemäß einer solchen Ausführungsform werden die trainierbaren Eingangsgewichte WI und die trainierbaren rekurrenten Gewichte HI auf die resistiven Speicherelemente 640 abgebildet.
  • 7 zeigt eine vereinfachte schematische Darstellung eines neuronalen Netzes 700 gemäß einer Ausführungsform der Erfindung. Das neuronale Netz 700 weist eine Eingangsschicht 710 mit einer Mehrzahl von neuronalen Einheiten 10, eine oder mehrere verborgene Schichten 720 mit einer Mehrzahl von neuronalen Einheiten 10 und eine Ausgangsschicht 730 mit einer Mehrzahl von neuronalen Einheiten 10 auf. Das neuronale Netz 700 weist eine Mehrzahl von elektrischen Verbindungen 20 zwischen den neuronalen Einheiten 10 auf. Die elektrischen Verbindungen 20 verbinden die Ausgänge von Neuronen von einer Schicht, z.B. der Eingangsschicht 710, mit den Eingängen von neuronalen Einheiten der nächsten Schicht, z.B. einer der verborgenen Schichten 720. Das neuronale Netz 700 kann insbesondere als rekurrentes neuronales Netz ausgeführt sein.
  • Dementsprechend weist das Netz 700 rekurrente Verbindungen von einer Schicht zu den neuronalen Einheiten derselben oder einer vorherigen Schicht auf, wie schematisch durch die Pfeile 30 gezeigt.
  • 8 zeigt ein Flussdiagramm von Verfahrensschritten eines von einem Computer umgesetzten Verfahrens zum Trainieren von Parametern eines rekurrenten neuronalen Netzes.
  • Das Verfahren beginnt bei Schritt 810.
  • Bei einem Schritt 820 werden Trainingsdaten von dem neuronalen Netz empfangen oder, mit anderen Worten, diesem bereitgestellt. Die Trainingsdaten weisen ein Eingangssignal und ein erwartetes Ausgangssignal auf.
  • Bei einem Schritt 830 berechnet das neuronale Netz für jede neuronale Einheit eine räumliche Gradientenkomponente.
  • Bei einem Schritt 840 berechnet das neuronale Netz für jede neuronale Einheit eine zeitliche Gradientenkomponente.
  • Bei einem Schritt 850 aktualisiert das neuronale Netz die zeitliche und die räumliche Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals.
  • Gemäß einer Ausführungsform können die Aktualisierungen der Parameter des neuronalen Netzes akkumuliert und bis zu einem späteren Zeitschritt T verschoben werden. Die Berechnung der räumlichen und der zeitlichen Gradientenkomponente wird unabhängig voneinander ausgeführt.
  • Die Schritte 820 bis 850 werden in Schleifen 860 wiederholt. Insbesondere können die Schritte 820 bis 850 zu bestimmten bzw. vordefinierten Zeitpunkten und insbesondere zu jedem Zeitpunkt wiederholt werden.
  • Nimmt man nun auf 9 Bezug, ist eine beispielhafte Ausführungsform eines Datenverarbeitungssystems 900 zum Ausführen eines Verfahrens gemäß Ausführungsformen der Erfindung gezeigt. Das Datenverarbeitungssystem 900 kann gemäß Ausführungsformen ein neuronales Netz bilden. Das Datenverarbeitungssystem 900 kann mit zahlreichen weiteren Allzweck- oder Spezial-Datenverarbeitungssystemumgebungen oder -konfigurationen verwendbar sein. Beispiele für bekannte Datenverarbeitungssysteme, -umgebungen und/oder -konfigurationen, die zur Verwendung mit dem Datenverarbeitungssystem 900 geeignet sein können, umfassen ohne Einschränkung Personal-Computer-Systeme, Server-Computersysteme, Thin Clients, Thick Clients, Handheld- oder Laptopeinheiten, Multiprozessorsysteme, mikroprozessorgestützte Systeme, Set-Top-Boxen, programmierbare Unterhaltungselektronik, Netzwerkcomputer, Minicomputersysteme, Mainframe-Computer-Systeme und verteilte Cloud-Computing-Umgebungen, die beliebige der oben genannten Systeme oder Einheiten umfassen, und dergleichen.
  • Das Datenverarbeitungssystem 900 kann im allgemeinen Kontext von durch ein Computersystem ausführbaren Anweisungen beschrieben werden, beispielsweise Programmmodulen, die von einem Computersystem ausgeführt werden. Im Allgemeinen können die Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen usw. umfassen, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Das Datenverarbeitungssystem 900 kann in Form einer Allzweck-Datenverarbeitungseinheit gezeigt sein. Die Komponenten des Server-Datenverarbeitungssystems 900 können, ohne darauf beschränkt zu sein, einen oder mehrere Prozessoren bzw. Verarbeitungseinheiten 916, Systemspeicher 928 und einen Bus 918 umfassen, der verschiedene Systemkomponenten wie beispielsweise den Systemspeicher 928 mit dem Prozessor 916 verbindet.
  • Der Bus 918 stellt eine oder mehrere von mehreren Arten von Busstrukturen dar, beispielsweise eines Speicherbusses bzw. eines Speichercontrollers, eines Peripheriebusses, eines Accelerated Graphics Port und eines Prozessor- bzw. lokalen Busses, unter Verwendung einer Vielfalt von Busarchitekturen. Beispielhaft und nicht einschränkend umfassen solche Architekturen einen ISA-Bus („Industry Standard Architecture“), einen MCA-Bus („Micro Channel Architecture“), einen EISA-Bus („Enhanced ISA“), einen lokalen VESA-Bus („Video Electronics Standards Association“) und einen PCI-Bus („Peripheral Component Interconnect“).
  • Das Datenverarbeitungssystem 900 umfasst üblicherweise eine Vielfalt von von einem Computersystem lesbaren Medien. Solche Medien können alle verfügbaren Medien sein, auf die das Datenverarbeitungssystem 900 zugreifen kann, und sie umfassen sowohl flüchtige als auch nichtflüchtige Medien, austauschbare und nicht austauschbare Medien.
  • Der Systemspeicher 928 kann von einem Computersystem lesbare Medien in Form von flüchtigem Speicher umfassen, beispielsweise Direktzugriffsspeicher (RAM) 930 und/oder Cache-Speicher 932. Das Datenverarbeitungssystem 900 kann ferner weitere austauschbare/nicht austauschbare, flüchtige/nichtflüchtige Speichermedien des Computersystems umfassen. Nur beispielhaft kann das Speichersystem 934 zum Lesen von und Schreiben auf einem nicht austauschbaren, nichtflüchtigen magnetischen Medium (nicht gezeigt und üblicherweise als „Festplatte“ bezeichnet) eingerichtet sein. Obwohl nicht gezeigt, können ein Magnetplattenlaufwerk zum Lesen von und Schreiben auf einer austauschbaren, nichtflüchtigen Magnetplatte (z.B. einer „Diskette“) und ein Laufwerk für optische Platten zum Lesen von oder Schreiben auf einer austauschbaren, nichtflüchtigen optischen Platte wie einer CD-ROM, DVD-ROM oder einem anderen optischen Medium vorgesehen sein. In solchen Fällen können diese jeweils über eine oder mehrere Medien-Datenschnittstellen mit dem Bus 918 verbunden sein. Wie nachstehend weiter gezeigt und beschrieben, kann der Speicher 928 mindestens ein Programmprodukt mit einem Satz von Programmmodulen (z.B. mindestens einem) enthalten, die zum Ausführen der Funktionen von Ausführungsformen der Erfindung konfiguriert sind.
  • Als Beispiel und nicht einschränkend können ein Programm/Dienst 940 mit einem Satz (mindestens einem) von Programmmodulen 942 ebenso wie ein Betriebssystem, ein oder mehrere Anwendungsprogramme, weitere Programmmodule und Programmdaten im Systemspeicher 928 gespeichert sein. Das Betriebssystem, das eine oder die mehreren Anwendungsprogramme, die anderen Programmmodule und Programmdaten oder eine Kombination davon können eine Umsetzung einer Netzwerkumgebung enthalten. Die Programmmodule 942 führen im Allgemeinen die Funktionen und/oder Verfahren von Ausführungsformen der Erfindung wie hierin beschrieben aus. Die Programmmodule 942 können insbesondere einen oder mehrere Schritte eines von einem Computer umgesetzten Trainings rekurrenter neuronaler Netze ausführen, z.B. einen oder mehrere Schritte des Verfahrens, wie es unter Bezugnahme auf die 1, 2 und 8 beschrieben wurde.
  • Das Datenverarbeitungssystem 900 kann auch mit einem oder mehreren externen Einheiten 915 Daten austauschen, beispielsweise einer Tastatur, einem Zeigegerät, einer Anzeige 924 usw.; einem oder mehreren Einheiten, die es einem Benutzer ermöglichen, mit dem Datenverarbeitungssystem 900 zu interagieren; und/oder irgendwelchen Einheiten (z.B. Netzwerkkarten, Modems usw.), die es dem Datenverarbeitungssystem 900 ermöglichen, mit einem oder mehreren weiteren Datenverarbeitungseinheiten Daten auszutauschen. Ein solcher Datenaustausch kann über Eingabe/Ausgabe- (E/A) -Schnittstellen 922 erfolgen. Noch weiter kann das Datenverarbeitungssystem 900 über einen Netzwerkadapter 920 mit einem oder mehreren Netzwerken wie einem lokalen Netzwerk (LAN), einem Weitverkehrsnetzwerk (WAN) und/oder einem öffentlichen Netzwerk (z.B. dem Internet) Daten austauschen. Wie gezeigt, tauscht der Netzwerkadapter 920 mit den anderen Komponenten des Datenverarbeitungssystems 900 über den Bus 918 Daten aus. Es versteht sich, dass andere Hardware- und/oder Softwarekomponenten, obwohl nicht gezeigt, in Verbindung mit dem Datenverarbeitungssystem 900 verwendet werden könnten. Beispiele hierfür sind unter anderem: Mikrocode, Gerätetreiber, redundante Verarbeitungseinheiten, externe Festplattenarrays, RAID-Systeme, Bandlaufwerke und Datenarchivierungsspeichersysteme usw.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt auf jeder möglichen technischen Integrationsstufe handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder -medien) mit durch einen Computer lesbaren Programmanweisungen darauf umfassen, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch ein System zur Ausführung von Anweisungen aufbewahren und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten, Konfigurationsdaten für integrierte Schaltungen oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der fern angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder bzw. Schaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in den Blöcken angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden zu Zwecken der Veranschaulichung angegeben, sind aber nicht als erschöpfend oder auf die offenbarten Ausführungsformen beschränkt anzusehen. Viele Modifikationen und Varianten sind für Fachleute offensichtlich, ohne vom Umfang und Geist der beschriebenen Ausführungsformen abzuweichen. Die hierin verwendete Terminologie wurde ausgewählt, um die Grundsätze der Ausführungsformen, die praktische Anwendung oder die technische Verbesserung gegenüber Technologien, die am Markt vorhanden sind, am besten zu beschreiben oder anderen Fachleuten zu ermöglichen, die hierin offenbarten Ausführungsformen zu verstehen.
  • Im Allgemeinen können Modifikationen, die für eine Ausführungsform beschrieben wurden, nach Bedarf auf eine andere Ausführungsform angewendet werden.
  • Im Folgenden wird ergänzend eine detaillierte Herleitung von Verfahren gemäß Ausführungsformen der Erfindung für tiefe neuronale Netze, insbesondere für rekurrente Netze mit Mehrschichtarchitekturen, angegeben.
  • Viele der neuesten Anwendungen setzen auf Mehrschichtnetze, bei denen der Fehler Et nur von der letzten Ausgabeschicht k abhängt, d.h. E t = E t ( y k t ) .
    Figure DE112021003881T5_0045
    Gemäß Ausführungsformen der Erfindung werden die Zustands- und Ausgabegleichungen wie folgt angepasst s l t = s l t ( s l t 1 ,   y l t 1 ,   y l 1 t ,   θ l )
    Figure DE112021003881T5_0046
    y l t = y l t ( s l t ,   θ l ) .
    Figure DE112021003881T5_0047
  • Unter Verwendung dieser Umformulierung kann Gleichung 2 wie folgt verallgemeinert werden d E d θ l = 1 t T d E t d θ l = 1 t T E t y k t [ y k t s k t d s k t d θ l + y k t θ l ] .
    Figure DE112021003881T5_0048
  • Für die letzte Schicht eines mehrschichtigen Netzes, bei der k = l ist, entspricht Gleichung 33 Gleichung 2 für eine einzelne Schicht. Für die verborgenen Schichten, d.h. k ≠ l, wird der Ausdruck d s k t d θ l
    Figure DE112021003881T5_0049
    jedoch wie folgt erweitert d s k t d θ l = s k t θ l + s k t y k t 1 d y k t 1 d θ l + s k t y k 1 t d y k 1 t d θ l .
    Figure DE112021003881T5_0050
  • Man definiert einen rekursiven Term m als X l m t , θ : = d s l t d θ m   = s l t s m t 1 X l m t 1, θ + s l t y l t 1 ( y l t 1 s l t 1 X l m t 1, θ + y l t 1 θ m )   + s l t y l 1 t ( y l 1 t s l 1 t X l 1 m t , θ + y l t θ m ) + s l t θ m ,
    Figure DE112021003881T5_0051
    mit den folgenden Eigenschaften ε l t , θ : = X l l t , θ
    Figure DE112021003881T5_0052
    e l t , θ : = d y l t d θ l = ( y l t s l t X l l t , θ + y l t θ l ) X l m t < 1, θ = 0 X l l + 1 t , θ = 0 X l < 2 m t , θ = 0 X l m < 1 t , θ = 0.
    Figure DE112021003881T5_0053
  • Der Ausdruck X l m t , θ
    Figure DE112021003881T5_0054
    für k ≠ l enthält eine zeitliche Rekursion, enthält aber zusätzlich eine räumliche Rekursion, d.h. er hängt von anderen Schichten ab, z.B. der (k - 1)-ten Schicht.
  • Wenn wir den Ausdruck X l m t , θ
    Figure DE112021003881T5_0055
    in Gleichung 33 einfügen, erhalten wir d E d θ l = 1 t T E t y k t [ y k t s k t X k l t , θ + y l t θ l ] .
    Figure DE112021003881T5_0056
  • Die rechte Seite von Gleichung 38 wird erweitert zu dem komplexeren Ausdruck d E d θ l = 1 t T [ d E t d y k t [ y k t s k t s k t s k t 1 X k l t 1, θ + y k t s k t s k t y k t 1 ( y k t 1 s k t 1 + X k l t 1, θ + y k t 1 θ l ) + y k t s k t s k t y k 1 t ( y k 1 t s k 1 t X k 1 l t , θ + y k 1 t θ l ) + y k t s k t s k t θ l ] + y k t θ l ] ,
    Figure DE112021003881T5_0057
    bei dem die beiden Rekurrenzen X k 1 l t , θ
    Figure DE112021003881T5_0058
    im Raum und X k l t 1, θ
    Figure DE112021003881T5_0059
    in der Zeit - sichtbar werden. Wenn X k 1 l t
    Figure DE112021003881T5_0060
    weit genug im Raum erweitert wird, erreicht er schließlich X l l t , θ = ε l t .
    Figure DE112021003881T5_0061
    Somit können wir Gleichung 39 umschreiben als d E d θ l = 1 t T [ d E t d y k t ( ( k l + 1 ) m ' 1 y k m ' + 1 t s k m ' + 1 t s k m ' + 1 t y k m ' t ) ( y l t s l t X l l t , θ + y l t θ l ) + R ] ,
    Figure DE112021003881T5_0062
    wobei alle verbleibenden Terme in einen Restterm R zusammengefasst werden. Zusätzlich definieren wir ein verallgemeinertes Lernsignal L l t
    Figure DE112021003881T5_0063
    und eine verallgemeinerte Ereignisspur e l t , θ
    Figure DE112021003881T5_0064
    als L l t = E t y k t ( ( k l + 1 ) m ' 1 y k m ' + 1 t s k m ' + 1 t s k m ' + 1 t y k m ' t )
    Figure DE112021003881T5_0065
    e l t , θ = ( y l t s l t ε l t , θ + θ y l t θ l ) ,
    Figure DE112021003881T5_0066
    siehe Gleichungen 10 bis 11. Dies ermöglicht es, die Parameteraktualisierung auszudrücken als d E d θ l = 1 t T [ L l t e l t , θ + R ] ,
    Figure DE112021003881T5_0067
    siehe Gleichung 13. Durch Weglassen des Restterms R gemäß Ausführungsformen gelangt man zu Gleichung 14.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 63054247 [0001]

Claims (23)

  1. Von einem Computer umgesetztes Verfahren zum Trainieren eines neuronalen Netzes, wobei das Netz eine oder mehrere Schichten von neuronalen Einheiten aufweist, wobei jede neuronale Einheit einen internen Zustand aufweist, wobei das Verfahren aufweist: Bereitstellen von Trainingsdaten, die ein Eingangssignal und ein erwartetes Ausgangssignal aufweisen, an das neuronale Netz; Bestimmen einer räumlichen Gradientenkomponente für jede neuronale Einheit; Bestimmen einer zeitlichen Gradientenkomponente für jede neuronale Einheit; und Aktualisieren der zeitlichen und der räumlichen Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals.
  2. Von einem Computer umgesetztes Verfahren nach Anspruch 1, wobei das Bestimmen der räumlichen und der zeitlichen Gradientenkomponente unabhängig voneinander ausgeführt wird.
  3. Von einem Computer umgesetztes Verfahren nach Anspruch 1, ferner aufweisend ein Aktualisieren eines vordefinierten Satzes von Trainingsparametern des neuronalen Netzes in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente.
  4. Von einem Computer umgesetztes Verfahren nach Anspruch 3, ferner aufweisend ein Aktualisieren des vordefinierten Satzes von Trainingsparametern des neuronalen Netzes zu bestimmten oder vordefinierten Zeitpunkten in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente.
  5. Von einem Computer umgesetztes Verfahren nach Anspruch 4, ferner aufweisend ein Aktualisieren des vordefinierten Satzes von Trainingsparametern des neuronalen Netzes zu jedem Zeitpunkt in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente.
  6. Von einem Computer umgesetztes Verfahren nach Anspruch 1, wobei das Verfahren aufweist: Bestimmen, zu jedem Zeitpunkt, einer räumlichen Gradientenkomponente für jede der einen oder mehreren Schichten; und Bestimmen, zu jedem Zeitpunkt, einer zeitlichen Gradientenkomponente für jede der einen oder mehreren Schichten.
  7. Von einem Computer umgesetztes Verfahren nach Anspruch 1, wobei: die räumliche Gradientenkomponente auf Konnektivitätsparametern des neuronalen Netzes beruht; und die zeitliche Gradientenkomponente auf Parametern beruht, die die zeitliche Dynamik der neuronalen Einheiten betreffen.
  8. Von einem Computer umgesetztes Verfahren nach Anspruch 1, wobei das Netz eine einzelne Schicht von neuronalen Einheiten aufweist und das Bestimmen der räumlichen Gradientenkomponente ein Bestimmen aufweist von: L t : = E t y t
    Figure DE112021003881T5_0068
    wobei t den jeweiligen Zeitpunkt bezeichnet; Lt die räumliche Gradientenkomponente zum Zeitpunkt t bezeichnet; Et den Netzfehler bezeichnet, insbesondere den Fehler zwischen einem erwarteten Ausgangssignal und dem gegenwärtigen Ausgangssignal zum Zeitpunkt t; und yt das gegenwärtige Ausgangssignal zum Zeitpunkt t bezeichnet.
  9. Von einem Computer umgesetztes Verfahren nach Anspruch 1, das ferner ein Aktualisieren eines vordefinierten Satzes von Trainingsparametern des neuronalen Netzes in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente aufweist, wobei das Netz eine einzelne Schicht von neuronalen Einheiten aufweist und das Bestimmen der zeitlichen Gradientenkomponente ein Bestimmen aufweist von: e t , θ : = d y t d θ = y t s t + y t θ
    Figure DE112021003881T5_0069
    e t , θ : = d s t d θ = ( d s t d s t 1 ε t 1, θ + ( s t θ + s t y t 1 y t 1 θ ) )
    Figure DE112021003881T5_0070
    wobei t den jeweiligen Zeitpunkt bezeichnet; yt das gegenwärtige Ausgangssignal zum Zeitpunkt t bezeichnet; st den Einheitenzustand zum Zeitpunkt t bezeichnet; θ die Trainingsparameter des Netzes bezeichnet; und ε t , θ : = d s t d θ
    Figure DE112021003881T5_0071
  10. Von einem Computer umgesetztes Verfahren nach Anspruch 9, wobei das Aktualisieren der Trainingsparameter ein Bestimmen aufweist von: Δ θ = α t L t e t , θ ,
    Figure DE112021003881T5_0072
    wobei α eine Lernrate ist.
  11. Von einem Computer umgesetztes Verfahren nach Anspruch 1, wobei das Netz eine Mehrzahl von Schichten neuronaler Einheiten aufweist und das Bestimmen der räumlichen Gradientenkomponente ein Berechnen aufweist von: L l t = E t y k t ( ( k l + 1 ) m ' 1 y k m ' + 1 t s k m ' 1 t s k m ' + 1 t y k m ' t )
    Figure DE112021003881T5_0073
    wobei: LI t die räumliche Gradientenkomponente der Schicht I zum Zeitpunkt t bezeichnet; Et einen Netzfehler bezeichnet, insbesondere den Fehler zwischen einem erwarteten Ausgangssignal und dem gegenwärtigen Ausgangssignal zum Zeitpunkt t; t den jeweiligen Zeitpunkt bezeichnet; yk t das gegenwärtige Ausgangssignal der Schicht k bezeichnet; sk t den Einheitenzustand der Schicht k bezeichnet; k die letzte Schicht/Ausgangsschicht des Netzes bezeichnet; und m' Zwischenschichten des Netzes im Bereich von 1 bis (k-l+1) bezeichnet.
  12. Von einem Computer umgesetztes Verfahren nach Anspruch 1, wobei das Netz eine Mehrzahl von Schichten von neuronalen Einheiten aufweist und das Bestimmen der zeitlichen Gradientenkomponente ein Bestimmen aufweist von: e l t , θ = ( y l t s l t ε l t , θ + y l t θ l )
    Figure DE112021003881T5_0074
    e l t , θ = ( d s l t d s l t 1 ε l t 1, θ + ( s l t θ l + s l t y l t 1 y l t 1 θ l ) )
    Figure DE112021003881T5_0075
    wobei t den jeweiligen Zeitpunkt bezeichnet; I die jeweilige Schicht bezeichnet; yt das gegenwärtige Ausgangssignal bezeichnet; st den gegenwärtigen Einheitenzustand bezeichnet; θ Trainingsparameter des Netzes bezeichnet; und ε t , θ : = d s t d θ
    Figure DE112021003881T5_0076
  13. Von einem Computer umgesetztes Verfahren nach Anspruch 1, ferner aufweisend ein Aktualisieren eines vordefinierten Satzes von Trainingsparametern des neuronalen Netzes in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente, wobei das Aktualisieren der Trainingsparameter ein Bestimmen aufweist von: d E d θ l = t [ L l t e l t , θ + R ]
    Figure DE112021003881T5_0077
    wobei R ein Restterm ist.
  14. Von einem Computer umgesetztes Verfahren nach Anspruch 13, wobei der Restterm R durch eine Verbindung von Ereignisspuren und Lernsignalen angenähert wird.
  15. Von einem Computer umgesetztes Verfahren nach Anspruch 1, ferner aufweisend ein Aktualisieren eines vordefinierten Satzes von Trainingsparametern des neuronalen Netzes in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente, wobei das Aktualisieren der Netzparameter ein Bestimmen aufweist von: Δ θ = α t L l t e l t , θ ,
    Figure DE112021003881T5_0078
    wobei α eine Lernrate ist.
  16. Von einem Computer umgesetztes Verfahren nach Anspruch 1, wobei das neuronale Netz ausgewählt ist aus der Gruppe, bestehend aus: einem rekurrenten neuronalen Netz, einem hybriden Netz, einem gepulsten neuronalen Netz und einem generischen rekurrenten Netz, wobei das generische rekurrente Netz insbesondere Long-Short-Term-Memory-Einheiten und Gated Recurrent Units aufweist oder aus diesen besteht.
  17. Von einem Computer umgesetztes Verfahren nach Anspruch 1, das ferner ein Aktualisieren eines vordefinierten Satzes von Trainingsparametern des neuronalen Netzes in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente aufweist, wobei das Netz eine Mehrzahl von Schichten von neuronalen Einheiten aufweist und das Bestimmen der zeitlichen Gradientenkomponente ein Bestimmen aufweist von: e l t , θ = y l t s l t ε l t , θ + y l t θ l + y l t y l t 1 e l t 1, θ
    Figure DE112021003881T5_0079
    wobei: t den jeweiligen Zeitpunkt bezeichnet; I die Schicht bezeichnet; yt das gegenwärtige Ausgangssignal bezeichnet; st den gegenwärtigen Einheitenzustand bezeichnet; θ die trainierbaren Parameter des Netzes bezeichnet; und ε t , θ : = d s t d θ
    Figure DE112021003881T5_0080
  18. Neuronales Netz, das eine oder mehrere Schichten von neuronalen Einheiten aufweist, wobei jede neuronale Einheit einen internen Zustand aufweist, wobei das neuronale Netz dazu konfiguriert ist, ein Verfahren zum Trainieren eines neuronalen Netzes auszuführen, das Verfahren aufweisend Bereitstellen von Trainingsdaten, die ein Eingangssignal und ein erwartetes Ausgangssignal aufweisen, an das neuronale Netz; Bestimmen einer räumlichen Gradientenkomponente für jede neuronale Einheit; Bestimmen einer zeitlichen Gradientenkomponente für jede neuronale Einheit; und Aktualisieren der zeitlichen und der räumlichen Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals.
  19. Neuronales Netz nach Anspruch 18, wobei das neuronale Netz ferner so konfiguriert ist, dass es Parameter des neuronalen Netzes zu jedem Zeitpunkt in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente aktualisiert.
  20. Computerprogrammprodukt zum Trainieren eines rekurrenten neuronalen Netzes, wobei das Computerprogrammprodukt ein von einem Computer lesbares Speichermedium mit darauf verkörperten Programmanweisungen aufweist, wobei die Programmanweisungen durch das neuronale Netz ausführbar sind, um das neuronale Netz zu veranlassen, ein Verfahren auszuführen, aufweisend: Empfangen von Trainingsdaten, die ein Eingangssignal und ein erwartetes Ausgangssignal aufweisen; Bestimmen einer räumlichen Gradientenkomponente für jede neuronale Einheit; Bestimmen einer zeitlichen Gradientenkomponente für jede neuronale Einheit; und Aktualisieren der zeitlichen und der räumlichen Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals.
  21. Computerprogrammprodukt nach Anspruch 20, wobei die Programmanweisungen durch das neuronale Netz ausführbar sind, um das neuronale Netz zu veranlassen, Parameter des neuronalen Netzes zu jedem Zeitpunkt in Abhängigkeit von der räumlichen und der zeitlichen Gradientenkomponente zu aktualisieren.
  22. Computersystem, das dazu konfiguriert ist, ein von einem Computer umgesetztes Verfahren zum Trainieren von Parametern eines neuronalen Netzes auszuführen, wobei das Netz eine oder mehrere Schichten von neuronalen Einheiten aufweist, wobei jede neuronale Einheit einen internen Zustand aufweist, wobei das Verfahren aufweist: Bereitstellen von Trainingsdaten, die ein Eingangssignal und ein erwartetes Ausgangssignal aufweisen, an das neuronale Netz; Bestimmen einer räumlichen Gradientenkomponente für jede neuronale Einheit; Bestimmen einer zeitlichen Gradientenkomponente für jede neuronale Einheit; und Aktualisieren der zeitlichen und der räumlichen Gradientenkomponente für jede neuronale Einheit zu jedem Zeitpunkt des Eingangssignals.
  23. Computersystem nach Anspruch 22, wobei das Computersystem ein memristives Speicherarray aufweist.
DE112021003881.8T 2020-07-21 2021-07-06 Online-training von neuronalen netzen Pending DE112021003881T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063054247P 2020-07-21 2020-07-21
US63/054,247 2020-07-21
PCT/IB2021/056026 WO2022018548A1 (en) 2020-07-21 2021-07-06 Online training of neural networks

Publications (1)

Publication Number Publication Date
DE112021003881T5 true DE112021003881T5 (de) 2023-05-11

Family

ID=79688371

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021003881.8T Pending DE112021003881T5 (de) 2020-07-21 2021-07-06 Online-training von neuronalen netzen

Country Status (6)

Country Link
US (1) US20220027727A1 (de)
JP (1) JP2023535679A (de)
CN (1) CN116171445A (de)
DE (1) DE112021003881T5 (de)
GB (1) GB2612504A (de)
WO (1) WO2022018548A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114781633B (zh) * 2022-06-17 2022-10-14 电子科技大学 一种融合人工神经网络与脉冲神经网络的处理器
CN115456149B (zh) * 2022-10-08 2023-07-25 鹏城实验室 脉冲神经网络加速器学习方法、装置、终端及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8612286B2 (en) * 2008-10-31 2013-12-17 International Business Machines Corporation Creating a training tool
US11615310B2 (en) * 2016-05-20 2023-03-28 Deepmind Technologies Limited Training machine learning models by determining update rules using recurrent neural networks
CN106418849A (zh) * 2016-09-26 2017-02-22 西安蒜泥电子科技有限责任公司 一种人体扫描仪同步扫描控制方法及系统
CN106991474B (zh) * 2017-03-28 2019-09-24 华中科技大学 深度神经网络模型并行的全连接层数据交换方法及系统
CN111126223B (zh) * 2019-12-16 2023-04-18 山西大学 基于光流引导特征的视频行人再识别方法

Also Published As

Publication number Publication date
WO2022018548A1 (en) 2022-01-27
JP2023535679A (ja) 2023-08-21
US20220027727A1 (en) 2022-01-27
CN116171445A (zh) 2023-05-26
GB2612504A (en) 2023-05-03

Similar Documents

Publication Publication Date Title
DE112020000281T5 (de) Vereinigen von modellen, die jeweilige zielklassen aufweisen, mit destillation
DE102019116305A1 (de) Pipelining zur verbesserung der inferenzgenauigkeit neuronaler netze
DE112019000336T5 (de) Massiv parallele neuronale inferenz-datenverarbeitungselemente
DE112018005227T5 (de) Merkmalsextraktion mithilfe von multi-task-lernen
DE112019003529T5 (de) Datendarstellung für dynamische Genauigkeit in Kernen neuronaler Netze
DE102019004300A1 (de) Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten
DE112018000723T5 (de) Aktualisierungsverwaltung für eine RPU-Anordnung
DE102013213397A1 (de) Verfahren und Vorrichtung zum Bereitstellen von Stützstellendaten für ein datenbasiertes Funktionsmodell
DE3501272A1 (de) Adaptives, selbstausbesserndes prozessorfeld
DE112011101370T5 (de) Neuronales Netz mit kanonischen gepulsten Neuronen für einen raumzeitlichen Assoziativspeicher
DE112020002186B4 (de) Dnn-training mit asymmetrischen rpu-einheiten
DE112021003881T5 (de) Online-training von neuronalen netzen
DE112020003365T5 (de) Überwachte kreuzmodale wiedergewinnung für zeitreihen und text unter verwendung von multimodalen triplettverlusten
DE112019003326T5 (de) Speichererweiterte neuronale netzwerkarchitekturen eines codierers-decodierers
DE112019000676T5 (de) Zentraler scheduler und anweisungszuteiler für einen neuronalen inferenzprozessor
DE112020003050T5 (de) Fehlerkompensation in analogen neuronalen netzen
DE102020101275A1 (de) Rechenvorrichtung zum Trainieren eines künstlichen neuronalen Netzwerkmodells, Verfahren zum Trainieren des künstlichen neuronalen Netzwerkmodells und Speichersystem zum Speichern desselben
DE112018006377T5 (de) Verschmelzen spärlich besetzter kernels zur approximation eines vollen kernels eines neuronalen faltungsnetzes
DE102018127802A1 (de) Hybrider klassifikator eines gepulsten neuronalen netzwerks und einer support-vektor-maschine
EP3557487A1 (de) Generieren von validierungsdaten mit generativen kontradiktorischen netzwerken
DE112021000308T5 (de) Graphenfaltungsnetze für video-grounding
DE112020002547T5 (de) Rausch- und signalverwaltung für rpu-array
DE112021005925T5 (de) Domänenverallgemeinerter spielraum über metalernen zur tiefen gesichtserkennung
DE112021001968T5 (de) Driftregularisierung zum entgegenwirken einer variation in driftkoeffizienten für analoge beschleuniger
DE112021002868T5 (de) Erzeugung von rich descriptor framework zu text unter verwendung vongraphen und strukturellen neuronalen codierern

Legal Events

Date Code Title Description
R012 Request for examination validly filed