DE102019113958A1 - Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente - Google Patents

Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente Download PDF

Info

Publication number
DE102019113958A1
DE102019113958A1 DE102019113958.9A DE102019113958A DE102019113958A1 DE 102019113958 A1 DE102019113958 A1 DE 102019113958A1 DE 102019113958 A DE102019113958 A DE 102019113958A DE 102019113958 A1 DE102019113958 A1 DE 102019113958A1
Authority
DE
Germany
Prior art keywords
neural network
neuron
transmission module
input
further transmission
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
DE102019113958.9A
Other languages
English (en)
Inventor
Rainer Straschill
Tobias Schäfer
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.)
FEV Europe GmbH
Original Assignee
FEV Europe GmbH
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 FEV Europe GmbH filed Critical FEV Europe GmbH
Publication of DE102019113958A1 publication Critical patent/DE102019113958A1/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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Feedback Control In General (AREA)

Abstract

Die Erfindung betrifft ein Fahrzeugsystem mit einem Steuergerät (2), zumindest einer mit dem Steuergerät (2) steuerbaren Komponente (3) eines Fahrzeugs (4), einem Sensor, einem neuronalen Netz (6), einem Trainingsmodul (7) zum Trainieren des neuronalen Netzes (6), wobei das neuronale Netz (6) in Abhängigkeit von mit dem Sensor erfassten Daten Werte für das Steuergerät (2) zum Steuern der Komponente (3) berechnen kann und das Trainingsmodul (7) und das neuronale Netz (6) derart eingerichtet sind, dass mithilfe des Trainingsmoduls (7) ein Gradientenverfahren zur Veränderung zumindest eines ersten Übertragungsmoduls, mit dem ein mit einem ersten Neuron des neuronalen Netzes (6) erzeugtes Signal veränderbar ist und an ein zweites Neuron des neuronalen Netzes (6) gesendet werden kann, durchführbar ist und in Abhängigkeit eines Verlaufes des Gradientenverfahrens zu dem neuronalen Netz (6) zumindest ein weiteres Übertragungsmodul (41; 184; 9011) hinzufügbar ist, mit dem ein mit einem dritten Neuron des neuronalen Netzes (6) erzeugtes Signal veränderbar ist und an ein viertes Neuron des neuronalen Netzes (6) gesendet werden kann.

Description

  • Die Erfindung betrifft ein Verfahren zur Steuerung einer Komponente eines Fahrzeugs mithilfe eines Steuergerätes und einem neuronalen Netz.
  • Es ist bekannt ein derartiges Verfahren zum Steuern einer Antriebsmaschine oder eines Fahrerassistenzsystems eines Fahrzeugs zu verwenden. In der US 2016/0349330 A1 wird beschrieben, wie ein neuronales Netz zur Vorhersage eines Ausfalls einer Autobatterie verwendet werden kann. Eine Schwierigkeit bei einem Einsatz eines neuronalen Netzes zum Steuern von Fahrzeugkomponenten besteht unter anderem bei einem Training des neuronalen Netzes. Das Training soll möglichst derart erfolgen, dass in vielen Wertebereichen möglicher Eingangsgrößen des neuronalen Netzes ein möglichst geringer Wert einer Fehlerfunktion zur Beschreibung eines Fehlers zwischen realen Daten, die mit dem neuronalen Netz approximiert werden sollen, und den ausgegebenen Daten, die mit dem neuronalen Netz tatsächlich berechnet werden, erzeugt wird. Oft kann der Wert der Fehlerfunktion nicht weiter reduziert werden, weil ein Algorithmus zum Durchführen des Trainings abbricht, zum Beispiel wenn ein lokales Minimum der Fehlerfunktion aufgefunden wurde.
  • Ausgehend hiervon ist es die Aufgabe der vorliegenden Erfindung, ein Verfahren bereitzustellen, mit welchem eine Leistung eines Fahrzeugsystems mit einem neuronalen Netz zur Steuerung einer Fahrzeugkomponente weiter verbessert werden kann.
  • Diese Aufgabe wird mit einem Verfahren mit den Merkmalen des Anspruches 1 und einem Fahrzeugsystem mit den Merkmalen des Anspruches 10 gelöst. Vorteilhafte Ausgestaltungen des Verfahrens und Weiterbildungen des Fahrzeugsystems sind Gegenstand der abhängigen Ansprüche.
  • Zur Lösung der Aufgabe wird ein Verfahren zur Steuerung einer Komponente eines Fahrzeugs mithilfe eines Steuergerätes, eines neuronalen Netzes und eines Trainingsmoduls zum Minimieren einer Fehlerfunktion des neuronalen Netzes vorgeschlagen. Das Verfahren hat die folgenden Schritte. In einem ersten Schritt wird zumindest ein Gradientenverfahren mithilfe des Trainingsmoduls zur Veränderung zumindest eines ersten Übertragungsmoduls durchgeführt. Das erste Übertragungsmodul verändert ein mit einem ersten Neuron des neuronalen Netzes erzeugtes Signal und sendet es an ein zweites Neuron des neuronalen Netzes. In einem zweiten Schritt wird eine Überwachung des Gradientenverfahrens durchgeführt. Weiterhin sieht das Verfahren in einem dritten Schritt ein Hinzufügen zumindest eines weiteren Übertragungsmoduls, das ein mit einem dritten Neuron des neuronalen Netzes erzeugtes Signal verändert und an ein viertes Neuron des neuronalen Netzes sendet, vor. Das Hinzufügen des weiteren Übertragungsmoduls erfolgt in Abhängigkeit eines Ergebnisses der Überwachung. In einem vierten Schritt wird die Komponente mithilfe des Steuergerätes in Abhängigkeit zumindest eines mithilfe des neuronalen Netzes bestimmten Ausgangswertes gesteuert, wobei zumindest ein Sensorwert zumindest eines Sensors des Fahrzeugs an zumindest einen Eingang des neuronalen Netzes weitergeleitet wird.
  • Die Komponente kann beispielsweise als ein Antiblockiersystem und der Sensor als ein Raddrehzahlsensor ausgeführt sein. Das neuronale Netz kann gemäß einer ersten Variante mit einer Software auf einem Prozessor abgebildet werden. Dabei kann der Prozessor in dem Steuergerät integriert sein oder von diesem getrennt, beispielsweise außerhalb des Steuergerätes in dem Fahrzeug oder in einer Cloud, angeordnet sein. Bei letzterer Möglichkeit ist die Cloud über eine Kommunikationsverbindung mit dem Steuergerät verbindbar.
  • Gemäß einer zweiten Variante kann das neuronale Netz mit Hilfe einer mechanischen und/oder biologischen Struktur abgebildet werden. Beispielsweise kann dies dadurch realisiert sein, dass die Struktur zumindest Elemente, wie ein Und-Gatter und einen Inverter, aufweist, wobei diese Elemente vorzugsweise durch eine Verformung eines, insbesondere biologischen, Materials die jeweilige Funktion des Und-Gatters bzw. Inverters nachbilden. Die Verformungen können abgegriffen werden und in elektrische Signale für das Steuergerät umgewandelt werden. Ebenfalls kann das neuronale Netz mithilfe eines photonischen Rechners, eines Quantencomputers oder mit Elementen der Spinelektronik nachgebildet werden.
  • Das neuronale Netz hat zumindest eine Eingabeschicht mit Neuronen, wobei an jedes Neuron der Eingabeschicht jeweils ein Eingangsdatum angelegt werden kann, zumindest eine erste verdeckte Schicht mit Neuronen und eine Ausgabeschicht mit zumindest einem Neuron. Angelegt bedeutet, dass das Datum an das entsprechende Neuron elektronisch gesendet oder mechanisch aufgeprägt wird. Eine verdeckte Schicht ist eine Schicht mit Neuronen, die sich zwischen der Eingabeschicht und der Ausgabeschicht befindet. Werden an der Eingabeschicht Eingangsdaten, insbesondere in Form eines Eingabevektors, angelegt, so erzeugen die Neuronen der Eingabeschicht Signale an ihren Ausgängen. Diese Signale werden mit Hilfe von Übertragungsmodulen, insbesondere mithilfe des ersten oder des weiteren Übertragungsmoduls, verändert und an Eingänge der Neuronen der ersten verdeckten Schicht weitergeleitet. Die Neuronen der ersten verdeckten Schicht erzeugen in Abhängigkeit von an ihren Eingängen angelegten Signalen weitere Signale an ihren Ausgängen, die jeweils mit Hilfe von anderen Übertragungsmodulen verändert werden und an einen jeweiligen Eingang des Neurons der Ausgabeschicht weitergeleitet werden. Das Neuron der Ausgabeschicht erzeugt dann einen Ausgangswert des neuronalen Netzes. Der Ausgangswert ist vorzugsweise eine reelle Zahl, die beispielsweise einen Wert einer Sollbremskraft bezeichnet, mit der ein einzelnes Rad des Fahrzeugs abgebremst werden soll. Der Ausgangswert kann an einen Regler des Steuergerätes zur Regelung einer Bremskraft des Rades in Abhängigkeit der Sollbremskraft gesendet werden. Die Eingangsdaten sind vorzugsweise ebenfalls reelle Werte. Mithilfe von reellen Werten lassen sich sowohl für den Ausgangswert als auch für die Eingangsdaten feinere Abstufungen bei der Berechnung des Ausgangswertes erzielen.
  • Das Gradientenverfahren ist vorzugsweise ein Gradientenabstiegsverfahren, wie beispielsweise das Backpropagation-Verfahren, bei welchem die Fehlerfunktion nach einzelnen Parametern des neuronalen Netzes, abgeleitet wird, um eine Änderung von Werten der Parameter zu bestimmen.
  • Ein Übertragungsmodul im Sinne der Erfindung erzeugt, bevorzugt berechnet, aus einem Ausgangswert eines beispielhaften Neurons des neuronalen Netzes einen Eingangswert eines weiteren beispielhaften Neurons des neuronalen Netzes. In einem einfachen Fall kann das Übertragungsmodul eine Multiplikation durchführen, bei welcher der Ausgangswert des beispielhaften Neurons mit einem Faktor, im Folgenden Gewicht genannt, multipliziert wird. Das Übertragungsmodul sendet in diesem Fall ein Ergebnis der Multiplikation an einen Eingang des weiteren beispielhaften Neurons.
  • Das Übertragungsmodul kann durch eine Berechnungsvorschrift oder durch ein Übertragungselement, das ein einkommendes Signal verstärken oder abschwächen kann, realisiert sein. Das Übertragungsmodul hat zumindest einen veränderbaren Parameter, durch dessen Veränderung sich ein Übertragungsverhalten des Übertragungsmoduls ändert. Im einfachen Fall kann das Übertragungsverhalten einzelner Übertragungsmodule jeweils durch eine Änderung einzelner Gewichte der Übertragungsmodule verändert werden.
  • Wird mithilfe der Neuronen der Eingabeschicht ein Eingabevektor eingelesen, so erzeugt das neuronale Netz wie oben beschrieben den Ausgangswert des neuronalen Netzes. Dieser Ausgangswert wird mit einem zu dem Eingabevektor zugehörigen Sollwert verglichen und bevorzugt ein Quadrat einer Differenz zwischen dem Sollwert und dem Ausgangswert berechnet. Der Eingabevektor und der zugehörige Sollwert bilden einen Trainingsdatensatz. Vorzugsweise werden für mehrere Trainingsdatensätze das jeweilige Quadrat der Differenz zwischen dem entsprechenden Sollwert und dem entsprechenden Ausgangswert berechnet und die Quadrate zu einer Fehlerquadratsumme aufsummiert. Die Fehlerquadratsumme ist abhängig von den Trainingsdatensätzen und den Gewichten und ist eine bevorzugte Ausgestaltung der Fehlerfunktion.
  • Üblicherweise werden bei dem Backpropagation-Verfahren Werte von partiellen Ableitungen gebildet, indem die Fehlerquadratsumme nach den einzelnen Gewichten der jeweiligen Übertragungsmodule abgleitet wird. In Abhängigkeit der Werte der partiellen Ableitungen können Werte von Änderungen der einzelnen Gewichte bestimmt werden. Durch die Änderungen der Gewichte verändert das neuronale Netz bei einem identischen Eingabevektor, der den Neuronen der Eingabeschicht präsentiert wird, in der Regel den Ausgangswert des neuronalen Netzes. Bevorzugt werden bei dem Gradientenverfahren mehrere Iterationen hintereinander durchgeführt, wobei bei jeder Iteration die Änderungen der Gewichte neu errechnet werden. Dies wird im Folgenden Training genannt.
  • Die Überwachung des Gradientenverfahrens kann derart erfolgen, dass zumindest ein Wert einer Kennzahl, die einen Fortschritt des Gradientenverfahrens beschreibt, überwacht wird und in Abhängigkeit von dem Wert der Kennzahl das Hinzufügen des weiteren Übertragungsmoduls ausgelöst wird. Die Kennzahl kann beispielsweise ein Quotient sein, der als Dividend eine Änderung eines gemittelten Wertes der Fehlerfunktion, wie zum Beispiel der oben genannten Fehlerquadratsumme, und als Divisor eine Anzahl an Iterationen, die mit dem Gradientenverfahren durchgeführt wurden, aufweist.
  • Das Hinzufügen des weiteren Übertragungsmoduls kann zumindest nach zwei verschiedenen Varianten durchgeführt werden. Gemäß einer ersten Variante wird kein neues Neuron dem neuronalen Netz hinzugefügt. Stattdessen verknüpft das weitere Übertragungsmodul einen Ausgang des dritten Neurons mit einem Eingang des vierten Neurons derart, dass der Eingangswert des vierten Neurons verändert wird, wenn das dritte Neuron aktiviert wird. Gemäß einer zweiten Variante wird zusätzlich zu dem Hinzufügen des weiteren Übertragungsmoduls ein neues Neuron dem neuronalen Netz hinzugefügt. In diesem Fall ist das neue Neuron das oben genannte dritte Neuron. Bei dieser zweiten Variante verknüpft das weitere Übertragungsmodul den Ausgang des neuen Neurons mit einem Eingang des vierten Neurons derart, dass der Eingangswert des vierten Neurons verändert wird, wenn das neue Neuron aktiviert wird.
  • Das Hinzufügen des weiteren Übertragungsmoduls hat folgenden Vorteil. Vor dem Hinzufügen des weiteren Übertragungsmoduls ist der Eingang des vierten Neurons mit einer Anzahl n von jeweiligen Ausgängen weiterer n Neuronen des neuronalen Netzes mit Hilfe von bereits existierenden Übertragungsmodulen verbunden. Die Anzahl n ist größer oder gleich eins. Dadurch senden die n weiteren Neuronen über die existierenden Übertragungsmodule n Eingaben in Form von Signalen an das vierte Neuron, so dass das vierte Neuron einen Raum der Eingaben mit Hilfe einer n-1-dimensionalen Hyperebene separiert. Nach dem Hinzufügen des weiteren Übertragungsmoduls kann das vierte Neuron eine um 1 erhöhte Anzahl von Eingaben gleichzeitig empfangen und verarbeiten, wodurch das vierte Neuron den Raum der Eingaben durch eine um eine Dimension erhöhte Hyperebene teilt. Dadurch kann der Raum der Eingaben des neuronalen Netzes noch feiner aufgeteilt werden, wodurch eine feinere Abstufung bei einem Klassifizieren von verschiedenen Eingabevektoren, die dem neuronalen Netz präsentiert werden, erzielt werden kann.
  • Wird in dem dritten Schritt dem Neuronalen Netz ebenfalls das neue Neuron hinzugefügt, hat dies zusätzlich den Vorteil, dass das neue Neuron einen weiteren Raum von Eingaben, die an das neue Neuron gesendet werden, separieren kann.
  • Dadurch kann das neue Neuron verwendet werden, um noch komplexere Muster mit dem neuronalen Netz zu erkennen und/oder auszuwerten.
  • Ein weiterer Vorteil des vorgeschlagenen Verfahrens liegt darin, dass während eines Trainings des neuronalen Netzes eine neue Verbindung zwischen bereits im neuronalen Netz enthaltenen Neuronen oder neu hinzugefügten Neuronen in Form des weiteren Übertragungsmoduls erzeugt werden kann. Dadurch kann eine Anforderung über eine Kenntnis eines mit dem neuronalen Netz zu modellierenden Verhaltens der Komponente des Fahrzeugs reduziert werden. Bekannt ist es, in Abhängigkeit eines Wissens über das zu modellierende Verhalten der Komponente eine Topologie eines neuronalen Netzes einschließlich etwaiger Übertragungsmodule zwischen Neuronen vor einem Training des neuronalen Netzes festzulegen und eine Anzahl der Übertragungsmodule beim Training nicht weiter zu erhöhen.
  • In einer vorteilhaften Weiterbildung wird die Überwachung derart durchgeführt, dass ein lokales Minimum der Fehlerfunktion identifiziert wird und nach einem Identifizieren des lokalen Minimums das weitere Übertragungsmodul hinzugefügt wird.
  • Das lokale Minimum kann beispielsweise identifiziert werden, indem eine Anzahl von Gewichten des neuronalen Netzes, insbesondere eine Anzahl von in einem Teilbereich des neuronalen Netzes benachbarter Gewichte, bestimmt wird, deren Änderung bei aufeinanderfolgenden Iterationen des Gradientenverfahrens das Vorzeichen wechselt. Übersteigt die Anzahl einen vorgegebenen Wert, so kann vermutet werden, dass sich das Gradientenverfahren in dem lokalen Minimum verhangen hat. Im Sinne der Erfindung ist das lokale Minimum dann identifiziert, wenn seine Existenz aufgrund von beobachteten Veränderungen der Werte der Parameter des neuronalen Netzes zu einem Zeitpunkt des Gradientenverfahrens vermutet werden kann, d.h. eine Wahrscheinlichkeit der Existenz erhöht ist.
  • Wenn die Gewichte bei mehreren aufeinanderfolgenden Iterationen um einen Wert schwanken ist zum einen eine Wahrscheinlichkeit hoch, dass eine Leistung des neuronalen Netzes mittels des Gradientenverfahrens allein nicht weiter verbessert werden kann. Zum anderen ist eine Wahrscheinlichkeit hoch, in einer Umgebung eines lokalen Minimums ein globales Minimum zu finden. In vorteilhafter Weise wird das weitere Übertragungsmodul derart hinzugefügt, dass das dritte und vierte Neuron in dem Teilbereich der oben genannten benachbarten Gewichte liegt.
  • Eine weitere Ausführungsform sieht vor, dass ein erster Satz von Eingabevektoren ermittelt wird, mit denen Werte in einer vorgegebenen Umgebung des lokalen Minimums erreicht werden können, und in Abhängigkeit des ersten Satzes das weitere Übertragungsmodul hinzugefügt wird.
  • Der erste Satz von Eingabevektoren kann mithilfe derjenigen Eingabevektoren konstruiert werden, die eine Aktivierung von Neuronen bewirken, die unmittelbar an die Gewichte gekoppelt sind, die bei mehreren aufeinanderfolgenden Iterationen um einen Wert schwanken. Zusammen mit zu den Eingabevektoren des ersten Satzes korrespondierenden Sollwerten kann überprüft werden, ob einzelne Eingabevektoren des ersten Satzes ein spezielles Ereignis des zu modellierenden Verhaltens des Systems repräsentieren. Eine derartige Prüfung kann mit Hilfe von Verfahren der Mustererkennung, insbesondere eines weiteren neuronalen Netzes, realisiert werden. Das spezielle Ereignis kann beispielsweise ein bestimmter Betriebspunkt einer Antriebsmaschine sein, wenn die Komponente die Antriebsmaschine ist.
  • Wird ein spezielles Ereignis erkannt, so ist es möglich, gezielt manuell oder automatisch das neuronale Netz durch Hinzufügen des weiteren Übertragungsmoduls zu verändern oder den ersten Satz der Eingabevektoren zu ignorieren. Letzteres kann beispielsweise sinnvoll sein, wenn der erste Satz von Eingabevektoren ein „unnormales“ Verhalten des Systems repräsentiert. In diesem Fall wird vorzugsweise das weitere Übertragungsmodul zunächst nicht hinzugefügt, sondern die Schritte eins bis drei wiederholt. Der Vorteil dieser Ausführungsform ist es, dass ein Expertenwissen über das zu modellierende Verhalten in das Training des neuronalen Netzes mit einfließen kann, indem der erste Satz der Eingabevektoren überprüft oder bewertet wird.
  • In einer speziellen Ausgestaltung wird ein fünftes Neuron bestimmt, welches bei einem Anlegen aller Eingabevektoren des ersten Satzes an den Neuronen der Eingabeschicht am häufigsten aktiviert wird. Nach dem Hinzufügen des weiteren Übertragungsmoduls erzeugt das weitere Übertragungsmodul einen Eingangswert des fünften Neurons, wenn das neuronale Netz erneut trainiert wird oder zur Steuerung der Komponente verwendet wird.
  • Beispielsweise kann ein mit dem weiteren Übertragungsmodul berechneter Wert an einen Eingang des fünften Neurons weitergeleitet werden. Dadurch kann das fünfte Neuron einen Raum von Eingaben, die dem fünften Neuron präsentiert werden, mit Hilfe einer um eine Dimension erhöhten Hyperebene separieren. Darüber hinaus ist es möglich, aus dem ersten Satz der Eingabevektoren einzelne spezielle Eingabevektoren auszuwählen, die mit bekannten Ereignissen verknüpft werden können. Bei einer derartigen Weiterbildung des Verfahrens wird das fünfte Neuron vorzugsweise als dasjenige Neuron bestimmt, welches bei einem Anlegen der speziellen ausgewählten Eingabevektoren am häufigsten aktiviert wird. Die bekannten Ereignisse können so leichter mit dem Netz erkannt werden.
  • In vorteilhafter Weise wird durch das Hinzufügen des neuen Neurons eine weitere verdeckte Schicht des neuronalen Netzes erzeugt. Die weitere verdeckte Schicht kann beispielsweise derart erzeugt werden, indem das neue Neuron als Eingangswert einen mit dem weiteren Übertragungsmodul veränderten Ausgangswert eines Neurons der ersten verdeckten Schicht hat und ein Ausgangswert des neuen Neurons mit Hilfe eines zweiten weiteren Übertragungsmoduls zu einem weiteren Eingangswert des Neurons in der Ausgabeschicht verändert wird. Die weitere verdeckte Schicht wird in diesem Fall durch das neue Neuron gebildet. Darüber hinaus kann eine direkte Verbindung zwischen dem Neuron der ersten verdeckten Schicht und dem Neuron der Ausgabeschicht entfernt und durch eine indirekte Verbindung zwischen dem Neuron der ersten verdeckten Schicht und dem Neuron in der Ausgabeschicht über das neue Neuron ersetzt werden. In vorteilhafter Weise wird die weitere verdeckte Schicht durch mehrere neu hinzugefügte Neuronen ausgebildet, wobei jedes neu hinzugefügte Neuron mit Hilfe eines jeweiligen hinzugefügten weiteren Übertragungsmoduls mit zumindest einem Ausgang eines Neurons der ersten verdeckten Schicht verbunden ist.
  • Dadurch, dass die weitere verdeckte Schicht erzeugt wird, kann beispielsweise aus einem neuronalen Netz mit nur einer verdeckten Schicht ein neuronales Netz mit zwei verdeckten Schichten generiert werden. Im Gegensatz zu einem neuronalen Netz mit nur einer verdeckten Schicht kann ein neuronales Netz mit zwei verdeckten Schichten auch für Problemstellungen verwendet werden, die nicht linear separierbar sind. So können beispielsweise die Neuronen der ersten verdeckten Schicht dazu benutzt werden, um einen Eingaberaum, der durch die Eingaben, die den Neuronen der Eingabeschicht präsentiert werden, gebildet wird, linear in einzelne Teilräume zu separieren. Die Neuronen in der weiteren bzw. zweiten, verdeckten Schicht können derart verwendet werden, dass sie die Teilräume miteinander über logische Operationen, wie z. B. ein logisches AND oder OR, miteinander verknüpfen.
  • Eine Konstruktion der weiteren verdeckten Schicht kann auch dann sinnvoll sein, wenn das neuronale Netz bereits zwei verdeckte Schichten aufweist. So ist es möglich, dass zwei bereits bestehende verdeckte Schichten zur Klassifizierung eines Teilmusters der Eingabevektoren verwendet werden und die weitere verdeckte Schicht mittels der ersten und zweiten verdeckten Schicht gefilterte Daten der Eingabevektoren zu neuen Werten berechnet. Dabei kann die weitere verdeckte Schicht allein zu einer Veränderung des Ausgangswertes des neuronalen Netzes beitragen, während die erste und zweite verdeckte Schicht lediglich zur Filterung derjenigen Daten beitragen, die zur Berechnung des Ausgangswertes verwendet werden. Praktischerweise haben einige der Neuronen der ersten und zweiten verdeckten Schicht in diesem Fall Radial-Basis-Funktionen als Aktivierungsfunktionen.
  • Bei dem Gradientenverfahren werden die Gewichte des neuronalen Netzes normalerweise derart verändert, dass ein Betrag einer Änderung des Ausgangswertes des neuronalen Netzes unterhalb einer ersten Schranke liegt. Üblicherweise wird ein maximaler Betrag einer Änderung einzelner Gewichte des neuronalen Netzes derart vorgegeben, dass sich der Ausgangswert des neuronalen Netzes im Mittel nur geringfügig, beispielsweise um ca. 1 %, ändert. Dadurch ist es möglich, dass bei dem Gradientenverfahren eine bereits trainierte Funktionalität des neuronalen Netzes weitgehend erhalten bleibt und trotzdem neue Funktionalitäten des neuronalen Netzes durch Verändern der Gewichte erzeugt werden können.
  • Bei dem vorgeschlagenen Verfahren wird hingegen das weitere Übertragungsmodul hinzugefügt, wodurch es möglich ist, dass das neuronale Netz eine bereits trainierte Funktionalität verliert. Dies liegt daran, dass bei dem Hinzufügen des weiteren Übertragungsmoduls dessen Übertragungsverhalten, insbesondere dessen Gewicht, noch nicht trainiert ist, sondern bevorzugt zufällig initialisiert wird. Um die gelöschte Funktionalität mit einem möglichst geringen Trainingsaufwand wiederherzustellen, wird die folgende Weiterbildung des Verfahrens vorgeschlagen.
  • Vor dem Hinzufügen des weiteren Übertragungsmoduls wird ein zweiter Satz von Eingabevektoren erzeugt. Das Neuronale Netz erzeugt für jeden der Eingabevektoren des zweiten Satzes zumindest einen Ausgabewert, wobei die Ausgabewerte zu einem zweiten Satz von Ausgabewerten zusammengefasst werden. Das neuronale Netz wird nach dem Hinzufügen des weiteren Übertragungsmoduls mit dem zweiten Satz von Eingabevektoren und dem zweiten Satz der Ausgabewerte trainiert.
  • Im Gegensatz zu dem oben beschriebenen Training, bei welchem das neuronale Netz mit Ausgabewerten, die den einzelnen Sollwerten entsprechen, trainiert wird, wird bei dieser Ausgestaltung des Verfahrens bewusst der zweite Satz von Eingabevektoren und der zweite Satz der Ausgabewerte verwendet, die das neuronale Netz vor dem Hinzufügen des weiteren Übertragungsmoduls erzeugt. Die Werte des zweiten Satzes der Ausgabewerte weichen in der Regel zwar von den Sollwerten ab, jedoch kann durch diese spezielle Ausgestaltung des Verfahrens das neuronale Netz nach dem Hinzufügen des weiteren Übertragungsmoduls sehr schnell die gelöschte Funktionalität wieder erreichen.
  • Der zweite Satz von Eingabevektoren wird vorteilhaft maschinell erzeugt. Dadurch kann der zweite Satz eine Anzahl an Vektoren im Vergleich zu einer Anzahl an Vektoren, die durch Messdaten gewonnen werden können, umfassen, die deutlich höher ist, beispielweise einhundert Mal höher. Wird der zweite Satz von Eingabevektoren erzeugt, so kann eine beliebig genaue Approximation des Verhaltens, das das neuronale Netz vor dem Hinzufügen des weiteren Übertragungsmoduls simuliert, durchgeführt werden. Somit ist es möglich, dass nach dem Hinzufügen des weiteren Übertragungsmoduls das neuronale Netz die verlorene Funktion schnell wieder ausführen kann.
  • Eine weitere vorteilhafte Weiterbildung des Verfahrens sieht vor, dass das Gradientenverfahren in einem fünften Schritt erneut durchgeführt wird. Dabei werden das erste und das weitere Übertragungsmodul verändert und ein Vergleich zwischen einer ersten Leistung des neuronalen Netzes vor dem Hinzufügen des weiteren Übertragungsmoduls und einer weiteren Leistung durchgeführt, die das neuronale Netz hat, nachdem das Gradientenverfahren erneut durchgeführt wurde. Ein Ergebnis des Vergleiches zusammen mit zumindest einer Information darüber, wie das weitere Übertragungsmodul hinzugefügt wurde, wird in Form eines Datenpaars abgespeichert.
  • Die Information, wie das weitere Übertragungsmodul hinzugefügt wurde, kann beispielsweise den ersten Satz von Eingabevektoren, aktuelle Werte der Parameter des neuronalen Netzes, wie zum Beispiel die Werte der Gewichte, und/oder einen Ort, an dem das neue Neuron im neuronalen Netz hinzugefügt wurde, umfassen. Mithilfe des Datenpaares oder weiterer derartig erzeugter Datenpaare können ähnliche Situationen beim Training des neuronalen Netzes miteinander verglichen werden. Beispielsweise kann, je nachdem, wo ein lokales Minimum vermutet wird, oder je nachdem, bei welchen präsentierten Eingabevektoren das lokale Minimum erreicht wird, entschieden werden, wie das weitere Übertragungsmodul hinzugefügt wird. Beispielsweise kann entschieden werden, ob und/oder wo mit dem weiteren Übertragungsmodul ein weiteres neues Neuron oder eine weitere verdeckte Schicht hinzugefügt wird oder nicht.
  • Bevorzugt kann für verschiedene mit dem neuronalen Netz zu modellierende Problemstellungen eine selbe initiale Netztopologie, d. h. eine vorgegebene Anzahl von verdeckten Schichten und Anzahl von Neuronen in der jeweiligen verdeckten Schicht, verwendet werden. Mit Hilfe von mehreren vergangenen abgespeicherten Ergebnissen von Vergleichen der Leistung des neuronalen Netzes zusammen mit den jeweiligen Informationen darüber, wie die weiteren Übertragungsmodule hinzugefügt wurden, kann, ausgehend von der initialen Netztopologie, das neuronale Netz verändert werden. Dies hat den Vorteil, dass die initiale Netztopologie nicht an eine neue Problemstellung angepasst werden muss.
  • Vorteilhafterweise werden die Schritte zwei, drei und fünf mehrmals durchgeführt und mehrere Datenpaare in einer Datenbank abgespeichert. Mithilfe der Datenbank kann eine Abbildung bestimmt werden, mit welcher eine Leistungsverbesserung des neuronalen Netzes in Abhängigkeit einer Art, wie ein neues Übertragungsmodul hinzugefügt wird, approximiert werden kann. Dadurch kann mit der Abbildung ein intelligentes Hinzufügen des weiteren Übertragungsmoduls realisiert werden. Ein einzelnes in der Datenbank abgespeichertes Datenpaar kann als ein Muster betrachtet werden. Mit der Abbildung kann beispielsweis anhand eines weiteren aktuell identifizierten Minimums der Fehlerfunktion und einer möglichen Art, wie ein neues weiteres Übertragungsmodul hinzugefügt werden kann, abgeschätzt werden, wie hoch eine mögliche Leistungsverbesserung des neuronalen Netzes sein kann. Hierzu kann die Abbildung ein zusätzliches neuronales Netz aufweisen, mit dem zu denen in der Datenbank gespeicherten ähnliche Muster erkannt werden können.
  • Zur Lösung der Aufgabe wird weiterhin ein Fahrzeugsystem mit einem Steuergerät, zumindest einer mit dem Steuergerät steuerbaren Komponente eines Fahrzeugs, einem Sensor, einem neuronalen Netz und einem Trainingsmodul zum Trainieren des neuronalen Netzes vorgeschlagen. Das neuronale Netz kann in Abhängigkeit von mit dem Sensor erfassten Daten Werte für das Steuergerät zum Steuern der Komponente berechnen. Das Trainingsmodul und das neuronale Netz sind derart eingerichtet, dass mithilfe des Trainingsmoduls ein Gradientenverfahren zur Veränderung zumindest eines ersten Übertragungsmoduls, mit dem ein mit einem ersten Neuron des neuronalen Netzes erzeugtes Signal veränderbar ist und an ein zweites Neuron des neuronalen Netzes gesendet werden kann, durchführbar ist. Des Weiteren ist in Abhängigkeit eines Verlaufes des Gradientenverfahrens mithilfe des Trainingsmoduls zu dem neuronalen Netz zumindest ein weiteres Übertragungsmodul hinzufügbar, mit dem ein mit einem dritten Neuron des neuronalen Netzes erzeugtes Signal veränderbar ist und an ein viertes Neuron des neuronalen Netzes gesendet werden kann. Das Trainingsmodul ist bevorzugt derart eingerichtet, dass mit dem Trainingsmodul alle oben beschriebenen Varianten des Verfahrens zur Veränderung des neuronalen Netzes durchgeführt werden können.
  • Weitere Vorteile, Merkmale und Einzelheiten der Erfindung ergeben sich aus der nachfolgenden Beschreibung sowie anhand der Figuren. Dabei bezeichnet ein mehrfach verwendetes Bezugszeichen dieselbe Komponente. Die Figuren zeigen in:
    • 1 eine schematische Ansicht eines Fahrzeugsystems mit einem Steuergerät, einem neuronalen Netz, einem Trainingsmodul und einer Komponente eines Fahrzeugs;
    • 2 eine schematische Ansicht des neuronalen Netzes aus 1 vor einem Hinzufügen eines weiteren Übertragungsmoduls;
    • 3 einzelne Schritte eines Verfahrens zur Steuerung der Komponente aus 1 mithilfe des Steuergerätes, des neuronalen Netzes und des Trainingsmoduls aus 1,
    • 4 eine schematische Ansicht des neuronalen Netzes aus 1 nach einem Hinzufügen eines weiteren Übertragungsmoduls gemäß einer ersten Variante;
    • 5 eine schematische Ansicht des neuronalen Netzes aus 1 nach einem Hinzufügen eines weiteren Übertragungsmoduls gemäß einer zweiten Variante;
    • 6 eine schematische Ansicht des neuronalen Netzes aus 1 nach einem Hinzufügen eines weiteren Übertragungsmoduls gemäß einer dritten Variante.
  • 1 zeigt ein Fahrzeugsystem 1 mit einem Steuergerät 2, zumindest einer mit dem Steuergerät 2 steuerbaren Komponente 3 eines Fahrzeugs 4, einem Sensor 5, einem neuronalen Netz 6 und einem Trainingsmodul 7 zum Trainieren des neuronalen Netzes 6. Das neuronale Netz 6 kann in Abhängigkeit von mit dem Sensor 5 erfassten Daten Werte für das Steuergerät 2 zum Steuern der Komponente 3 berechnen. Die Komponente 3 kann beispielsweise ein Antiblockiersystem und der Sensor 5 als ein Raddrehzahlsensor ausgebildet sein.
  • 2 zeigt eine schematische Ansicht des neuronalen Netzes 6, wie es beispielsweise auf einem Prozessor des Steuergerätes 2 nachgebildet werden kann, wenn der Prozessor ein in dem Steuergerät 2 abgespeichertes Programm zur Simulation des neuronalen Netzes 6 ausführt.
  • Das neuronale Netz 6 hat zumindest eine Eingabeschicht 11 mit Neuronen 111 , 112 , 11i , 11n wobei an jedes der Neuronen 111 , 112 , 11i , 11n jeweils ein Eingangsdatum, wie z. B. die entsprechenden Daten e1 , e2 , ei und en , gesendet werden kann. Dabei bilden alle an die Neuronen 111 , 112 , 11i , 11n gleichzeitig gesendeten Eingangsdaten e1 , e2 , ei und en einen Eingabevektor 13. In einer einfachen Ausgestaltung des neuronalen Netzes 6 leiten die Neuronen der Eingabeschicht 11 die Werte e1 , e2 , ei , en des Eingabevektors 13 unverändert an Übertragungsmodule, die die Neuronen 111 , 112 , 11i , 11n jeweils mit Neuronen einer ersten verdeckten Schicht 14 des Netzes 6 verbinden, weiter.
  • Die erste verdeckte Schicht 14 des neuronalen Netzes 6 hat in dem in 2 gezeigten Beispiel ein erstes Neuron 141 , ein zweites Neuron 142 und ein drittes Neuron 143 . Das erste Neuron 141 weist einen ersten Eingang 151 , einen zweiten Eingang 152 , einen i-ten Eingang 15i bis hin zu einem n-ten Eingang 15n und eine Aktivierungsfunktion 16, wie zum Beispiel eine Tangens-hyperbolicus-Funktion, sowie einen Ausgang 17 auf.
  • Die Übertragungsmodule sind derart nummeriert, dass ein erster Index beschreibt, von welchem Neuron der Eingabeschicht das Übertragungsmodul einen ersten Wert einliest, und ein zweiter Index dasjenige Neuron beschreibt, an das das Übertragungsmodul einen aus dem ersten Wert mithilfe des entsprechenden Übertragungsmoduls errechneten zweiten Wert hinsendet.
  • Beispielsweise liest ein erstes Übertragungsmodul 1211 einen von einem ersten Neuron 111 der Eingabeschicht 11 weitergeleiteten Wert e1 ein, verändert diesen, vorzugsweise mit Hilfe einer Multiplikation eines einzelnen Faktors, im Folgenden Gewicht genannt, und leitet ein Ergebnis dieser Multiplikation an einen ersten Eingang 151 des ersten Neurons 141 der ersten verdeckten Schicht 14 weiter. Entsprechend empfängt das erste Neuron 141 der ersten verdeckten Schicht 14 jeweilige weitere Eingangswerte, die mit Hilfe der entsprechenden Übertragungsmodule 1221 , 12i1 und 12n1 an die entsprechenden Eingänge 152 , 15i und 15n gesendet werden.
  • Die empfangenen Eingangswerte werden aufsummiert und an einen Eingang der Aktivierungsfunktion 16 geleitet. Mit Hilfe der Aktivierungsfunktion 16 kann ein Ausgangswert des ersten Neurons 141 berechnet werden und an den Ausgang 17 des ersten Neurons 141 geleitet werden. In gleicher Weise können mit Hilfe des zweiten Neurons 142 und des dritten Neurons 143 der ersten verdeckten Schicht 14 jeweils ein Ausgangswert des zweiten Neurons 142 und des dritten Neurons 143 berechnet werden.
  • Die mit den Neuronen 141, 142 , 143 berechneten Eingangswerte werden mit Hilfe weiterer Übertragungsmodule 181 , 182 und 183 verändert und an jeweils einen Eingang eines ersten Neurons 19 einer Ausgabeschicht 20 des neuronalen Netzes 6 gesendet. Wie die Neuronen der ersten verdeckten Schicht 14 hat das erste Neuron 19 der Ausgabeschicht 20 ebenfalls eine Aktivierungsfunktion 21 und einen Ausgang 22. Der Ausgang 22 gibt einen mit Hilfe der Aktivierungsfunktion 21 errechneten Ausgangswert 23 aus, wobei der Ausgangswert 23 der Ausgangswert des neuronalen Netzes 6 ist.
  • Das in 2 dargestellte neuronale Netz 6 stellt eine sehr einfache Ausgestaltung des neuronalen Netzes, wie es für das vorgeschlagene Verfahren verwendet werden kann, vor. Hierbei können beispielsweise sämtliche Neuronen der ersten verdeckten Schicht 14 und das erste Neuron 19 der Ausgabeschicht 20 identisch aufgebaut sein und die gleichen Funktionen wie das erste Neuron 141 der ersten verdeckten Schicht 14 haben.
  • Für komplexe Anwendungen jedoch hat ein komplexeres neuronales Netz zur praktischen Umsetzung des vorgeschlagenen Verfahrens deutlich mehr Neuronen in der ersten verdeckten Schicht 14 und kann zudem eine weitere zweite, dritte oder mehr verdeckte Schichten mit jeweils einer Vielzahl von Neuronen aufweisen. Wird das Verfahren mit dem komplexen neuronalen Netz durchgeführt, werden Ausgangswerte der Neuronen der ersten verdeckten Schicht 14 mit Hilfe von Übertragungsmodulen verändert und anschließend nicht an das erste Neuron 19 der Ausgabeschicht 20 sondern an Neuronen der zweiten verdeckten Schicht gesendet.
  • Das Trainingsmodul 7 und das neuronale Netz 6 sind derart eingerichtet, dass mit Hilfe des Trainingsmoduls 7 ein Gradientenverfahren zur Veränderung zumindest eines ersten Übertragungsmoduls, wie beispielsweise des ersten Übertragungsmoduls 1211 , mit dem ein mit dem ersten Neuron 111 der Eingabeschicht 11 erzeugtes Signal veränderbar ist und an ein zweites Neuron, wie beispielsweise das erste Neuron 141 der ersten verdeckten Schicht 14, gesendet werden kann, durchführbar ist. Des Weiteren ist mithilfe des Trainingsmoduls 7 in Abhängigkeit eines Ergebnisses einer Überwachung des Gradientenverfahrens zu dem neuronalen Netz 6 zumindest ein weiteres Übertragungsmodul hinzufügbar, mit dem ein mit einem dritten Neuron, wie beispielsweise dem dritten Neuron 143 der ersten verdeckten Schicht 14, erzeugtes Signal veränderbar ist und an ein viertes Neuron, wie beispielsweise das zweite Neuron 142 der ersten verdeckten Schicht 14, gesendet werden kann.
  • 3 zeigt einzelne Schritte des vorgeschlagenen Verfahrens zur Steuerung der Komponente 3 des Fahrzeugs 4 mit Hilfe des Steuergerätes 2, des neuronalen Netzes 6 und des Trainingsmoduls 7 zum Minimieren einer Fehlerfunktion des neuronalen Netzes 6. In einem ersten Schritt 31 wird ein Gradientenverfahren mit Hilfe des Trainingsmoduls 7 zur Veränderung zumindest des ersten Übertragungsmoduls 1211 , das ein mit dem ersten Neuron 111 des neuronalen Netzes 6 erzeugtes Signal verändert und an ein zweites Neuron 141 des neuronalen Netzes 6 sendet, durchgeführt. Beispielsweise kann bei einer Durchführung des Gradientenverfahrens das Gewicht des ersten Übertragungsmoduls 1211 verändert werden.
  • In einem zweiten Schritt 32 wird das Gradientenverfahren überwacht. In einem dritten Schritt 33 wird zumindest ein weiteres Übertragungsmodul hinzugefügt, das ein mit einem dritten Neuron des Netzes 6 erzeugtes Signal verändert und an ein viertes Neuron des Netzes 6 sendet. Das Hinzufügen des weiteren Übertragungsmoduls erfolgt in Abhängigkeit von einem Ergebnis der Überwachung. In einem vierten 34 Schritt wird mit Hilfe des Steuergerätes 2 in Abhängigkeit von zumindest einem mit Hilfe des neuronalen Netzes 6 bestimmten Ausgangswert 23 die Komponente 3 gesteuert. Zur Berechnung des Ausgangswertes 23 wird zumindest ein verarbeiteter Sensorwert, wie beispielsweise die Werte e1 , e2 , ei und en , des Sensors 5 des Fahrzeugs 4 an zumindest einen Eingang des neuronalen Netzes 6 weitergeleitet. Der Eingang des Netzes 6 wird durch die Neuronen der Eingabeschicht 11 gebildet.
  • 4, 5 und 6 zeigen jeweils unterschiedliche Zustände des neuronalen Netzes 6, nachdem das weitere Übertragungsmodul hinzugefügt wurde. Die unterschiedlichen Zustände resultieren daher, dass das weitere Übertragungsmodul auf unterschiedliche Arten hinzugefügt werden kann.
  • 4 zeigt einen Zustand des Netzes 6 nachdem das weitere Übertragungsmodul gemäß einer ersten Variante des Verfahrens hinzugefügt wurde. Bei dieser Variante sind das dritte Neuron, hier das Neuron 143 , und vierte Neuron, hier das Neuron 142 , bereits bestehende Neuronen des neuronalen Netzes 6. Das weitere Übertragungsmodul ist ein Übertragungsmodul 41, das einen Ausgang des dritten Neurons 143 mit einem neu hinzugefügten Eingang des vierten Neurons 142 verbindet. Der neu hinzugefügte Eingang arbeitet wie die in 2 gezeigten Eingänge 151 , 152 , 15i und 15n des Neurons 141 .
  • 5 zeigt das neuronale Netz 6 in einem Zustand, nachdem das weitere Übertragungsmodul gemäß einer zweiten Variante dem Netz 6 hinzugefügt wurde. Das weitere Übertragungsmodul ist als Übertragungsmoduls 184 bezeichnet. Zusätzlich wird bei der zweiten Variante ein neues Neuron 144 in der ersten verdeckten Schicht 14 dem Netz 6 hinzugefügt. Das Übertragungsmodul 184 verbindet einen Ausgang 51 des neuen Neurons 144 mit einem neu hinzugefügten Eingang 52 des ersten Neurons 19 der Ausgangsschicht 20. Das neue Neuron 144 hat eine Aktivierungsfunktion 53 und einen ersten Eingang 54, einen zweiten Eingang 55 und einen dritten Eingang 56. Bei der zweiten Variante entspricht das erste Neuron 19 der Ausgangsschicht 20 dem vierten Neuron und das neue Neuron 144 dem dritten Neuron.
  • Zusätzlich zu dem weiteren Übertragungsmodul 184 wurden mehrere weitere Übertragungsmodule, wie das Übertragungsmodul 1224 , 12i4 und 12n4 , dem neuronalen Netz 6 hinzugefügt. Das jeweilige Übertragungsmodul 1224 , 12i4 , 12n4 verändert entsprechend einen Ausgangswert des zweiten Neurons 112 , des i-ten Neurons 11i bzw. des n-ten Neurons 11n der Eingabeschicht 11 zu einem entsprechenden Ausgangswert des jeweiligen Übertragungsmoduls 1224 , 12i4 , 12n4 und leitet diesen entsprechend an den ersten Eingang 54, den zweiten Eingang 55 bzw. den dritten Eingang 56 des neu hinzugefügten Neurons 144 weiter. Das neu hinzugefügte Neuron 144 funktioniert in gleicher Weise wie das erste, zweite und dritte Neuron 141 , 142 , 143 der ersten verdeckten Schicht 14 und das erste Neuron 19 der Ausgabeschicht 20. Dies bedeutet, dass die mit Hilfe der Eingänge 54, 55, 56 eingelesenen Werte zusammenaddiert werden und als Eingangswert der Aktivierungsfunktion 53 benutzt werden, um einen Ausgangswert zu erzeugen, der an den Ausgang 51 gesendet wird.
  • 6 zeigt einen Zustand des Netzes 6, nachdem das weitere Übertragungsmodul gemäß einer dritten Variante hinzugefügt wurde. Das weitere Übertragungsmodul ist bei dieser Variante in Form eines Übertragungsmoduls 9011 ausgebildet. Zusätzlich werden bei der dritten Variante ein erstes neues Neuron 61 und ein zweites neues Neuron 71 dem Netz 6 hinzugefügt. Das Übertragungsmodul 9011 verändert einen Ausgangswert des ersten neuen Neurons 61 und sendet diesen an einen ersten Eingang 91 des ersten Neurons 19 der Ausgabeschicht 20. In diesem Beispiel entspricht das erste neue Neuron 61 dem dritten Neuron und das erste Neuron 19 der Ausgabeschicht 20 dem vierten Neuron. Das erste neue Neuron 61 wird zusammen mit dem zweiten neuen Neuron 71 derart hinzugefügt, dass eine weitere verdeckte Schicht 93 des neuronalen Netzes 6 erzeugt wird. Zusätzlich zu dem weiteren Übertragungsmodul 9011 werden mehrere weitere Übertragungsmodule, wie die Übertragungsmodule 8011 , 8021 , 8031 , 8012 , 8022 und 8032 dem neuronalen Netz 6 hinzugefügt.
  • Die Übertragungsmodule 80ij übertragen entsprechend ihrer Nomenklatur einen Ausgangswert eines i-ten Neurons der ersten verdeckten Schicht 14 an einen Eingang des j-ten Neurons der weiteren verdeckten Schicht 93. Die neu hinzugefügten Neuronen 61, 71 funktionieren in gleicher Art und Weise wie die Neuronen 141 , 142 , 143 der ersten verdeckten Schicht 14. Ebenfalls wird das Übertragungsmodul 9021 dem neuronalen Netz 6 hinzugefügt, welches einen Ausgangswert des zweiten neuen Neurons 71 verändert und an einen zweiten Eingang 92 des ersten Neurons 19 der Ausgabeschicht 20 weiterleitet. Bei dieser Ausgestaltung des Verfahrens werden ebenfalls vor dem Hinzufügen des weiteren Übertragungsmoduls 9011 existierende Übertragungsmodule 181 , 182 , 183 des Netzes 6 gelöscht. Zusätzlich wird eine Anzahl von Eingängen des ersten Neurons 19 der Ausgabeschicht 20 von drei auf zwei reduziert.
  • Durch ein Löschen der existierenden Übertragungsmodule 181 , 182 , 183 kann das neuronale Netz 6 Teile seiner bis vor dem Hinzufügen des weiteren Übertragungsmoduls trainierten Funktionalität verlieren. Damit diese verlorenen Teile der Funktionalität leicht dem neuronalen Netz 6 nach dem Hinzufügen der weiteren Übertragungsfunktion antrainiert werden können, werden vorteilhaft vor dem Hinzufügen des weiteren Übertragungsmoduls ein zweiter Satz von Eingabevektoren und mit Hilfe des neuronalen Netzes 6 für jeden der Eingabevektoren ein entsprechender Ausgabewert 23 erzeugt. Die derart erzeugten Ausgabewerte werden zu einem zweiten Satz von Ausgabewerten zusammengefasst und das neuronale Netz 6 nach dem Hinzufügen des weiteren Übertragungsmoduls mit dem zweiten Satz von Eingabevektoren und dem zweiten Satz der Ausgabewerte trainiert. Der erzeugte zweite Satz von Eingabevektoren kann dabei unabhängig von Messdaten sein, die zur Modellierung eines Verhaltens des Fahrzeugsystems 1 mit Hilfe des Sensors 5 gewonnen wurden.
  • Um zu entscheiden, ob das weitere Übertragungsmodul hinzugefügt werden soll, wird das Gradientenverfahren überwacht. Eine Überwachung des Gradientenverfahrens erfolgt bevorzugt derart, dass ein lokales Minimum der Fehlerfunktion des neuronalen Netzes 6 identifiziert und nach einem Identifizieren des lokalen Minimums das weitere Übertragungsmodul hinzugefügt wird. Eine Identifizierung des lokalen Minimums kann, wie oben beschrieben, erfolgen. Des Weiteren kann, wie oben beschrieben, ein Vergleich zwischen einer ersten Leistung des neuronalen Netzes 6 vor dem Hinzufügen des weiteren Übertragungsmoduls und einer weiteren Leistung durchgeführt werden, die das neuronale Netz 6 hat, nachdem das Gradientenverfahren in einem in 3 gezeigten fünften Schritt 35 mit dem hinzugefügten weiteren Übertragungsmodul erneut durchgeführt wurde.
  • Ein Ergebnis dieses Vergleiches wird vorzugsweise zusammen mit einer Information darüber, wie das weitere Übertragungsmodul hinzugefügt wurde, beispielsweise nach der oben beschriebenen ersten, zweiten oder dritten Variante, in Form eines Datenpaars 101 auf einem Speicher 102 des Steuergerätes 2 abgespeichert. Das Datenpaar 101 weist vorzugsweise einen ersten Wert 103 auf, der eine Differenz zwischen der weiteren Leistung und der ersten Leistung des neuronalen Netzes 6 sein kann, und einen zweiten Wert 104, der beispielsweise in Form eines Binärcodes ausgebildet sein kann.
  • Der Binärcode kann beispielsweise Informationen umfassen, ob ein neues Neuron in der ersten verdeckten Schicht 14, ein und/oder zwei neue Neuronen in der weiteren verdeckten Schicht 93 und ob das weitere Übertragungsmodul zwischen bereits in dem neuronalen Netz 6 vorhandenen Neuronen hinzugefügt wurde, ohne dass ein neues Neuron dem neuronalen Netz 6 hinzugefügt wurde. Bezüglich der letzten Information kann der Binärcode ebenfalls eine Information umfassen, welches das dritte bzw. vierte Neuron ist und wo das dritte bzw. vierte Neuron in dem neuronalen Netz 6 angeordnet ist.
  • Mit Hilfe der Datenbank 102 kann nach einem mehrmaligen Durchführen der Schritte 32, 33 und 35 anhand mehrerer in der Datenbank 102 gespeicherter Datenpaare 105 eine Abbildung bestimmt werden, mit welcher eine Leistungsverbesserung des neuronalen Netzes 6 in Abhängigkeit von einer Art, wie ein neues Übertragungsmodul hinzugefügt wird, approximiert werden kann.
  • 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 2016/0349330 A1 [0002]

Claims (10)

  1. Verfahren zur Steuerung einer Komponente (3) eines Fahrzeugs (4) mithilfe eines Steuergerätes (2), eines neuronalen Netzes (6) und eines Trainingsmoduls (7) zum Minimieren einer Fehlerfunktion des neuronalen Netzes (6) mit den folgenden Schritten: - Durchführen zumindest eines Gradientenverfahrens mithilfe des Trainingsmoduls (7) in einem ersten Schritt zur Veränderung zumindest eines ersten Übertragungsmoduls (1211), das ein mit einem ersten Neuron (111) des neuronalen Netzes (6) erzeugtes Signal verändert und an ein zweites Neuron (141) des neuronalen Netzes (6) sendet, - Überwachung des Gradientenverfahrens in einem zweiten Schritt, - Hinzufügen zumindest eines weiteren Übertragungsmoduls (41; 184; 9011), das ein mit einem dritten Neuron (143; 144; 61) des neuronalen Netzes (6) erzeugtes Signal verändert und an ein viertes Neuron (142; 19; 19) des neuronalen Netzes (6) sendet, in Abhängigkeit eines Ergebnisses der Überwachung in einem dritten Schritt, - Steuerung der Komponente (3) mithilfe des Steuergerätes (2) in Abhängigkeit zumindest eines mithilfe des neuronalen Netzes (6) bestimmten Ausgangswertes (23) in einem vierten Schritt, wobei zumindest ein Sensorwert zumindest eines Sensors des Fahrzeugs (4) an zumindest einen Eingang des neuronalen Netzes (6) weitergeleitet wird.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass in dem dritten Schritt dem Neuronalen Netz (6) ein neues Neuron (144; 61, 71) hinzugefügt wird und das neue Neuron das dritte Neuron ist.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Überwachung derart durchgeführt wird, dass ein lokales Minimum der Fehlerfunktion identifiziert wird und nach einem Identifizieren des lokalen Minimums das weitere Übertragungsmodul (41; 184; 9011) hinzugefügt wird.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass ein erster Satz von Eingabevektoren ermittelt wird, mit denen Werte in einer vorgegebenen Umgebung des lokalen Minimums erreicht werden können, und in Abhängigkeit des ersten Satzes das weitere Übertragungsmodul (41; 184; 9011) hinzugefügt wird.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass ein fünftes Neuron bestimmt wird, welches bei einem Anlegen aller Eingabevektoren des ersten Satzes an Neuronen (111, 112, 11i, 11n) einer Eingabeschicht (11) des neuronalen Netzes (6) am häufigsten aktiviert wird, und das weitere Übertragungsmodul (41; 184; 9011) nach dem Hinzufügen des weiteren Übertragungsmoduls (41; 184; 9011) einen Eingangswert des fünften Neurons erzeugt.
  6. Verfahren nach einem der Ansprüche 2 bis 5, dadurch gekennzeichnet, dass durch das Hinzufügen des neuen Neurons (184; 9011) eine weitere verdeckte Schicht (93) des neuronalen Netzes (6) erzeugt wird.
  7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass vor dem Hinzufügen des weiteren Übertragungsmoduls (41; 184; 9011) ein zweiter Satz von Eingabevektoren erzeugt wird und das Neuronale Netz (6) für jeden der Eingabevektoren des zweiten Satzes zumindest einen Ausgabewert (23) erzeugt und die Ausgabewerte zu einem zweiten Satz von Ausgabewerten zusammengefasst werden und das neuronale Netz (6) nach dem Hinzufügen des weiteren Übertragungsmoduls (41; 184; 9011) mit dem zweiten Satz von Eingabevektoren und dem zweiten Satz der Ausgabewerte trainiert wird.
  8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Gradientenverfahren in einem fünften Schritt erneut durchgeführt wird, wobei das erste und das weitere Übertragungsmodul verändert werden und ein Vergleich zwischen einer ersten Leistung des neuronalen Netzes (6) vor dem Hinzufügen des weiteren Übertragungsmoduls und einer weiteren Leistung, die das neuronale Netz (6) hat, nachdem das Gradientenverfahren erneut durchgeführt wurde, durchgeführt wird, und ein Ergebnis des Vergleiches zusammen mit zumindest einer Information darüber, wie das weitere Übertragungsmodul (41; 184; 9011) hinzugefügt wurde, in Form eines Datenpaars (101) abgespeichert werden.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die Schritte zwei, drei und fünf mehrmals durchgeführt werden und mehrere Datenpaare (105) in einer Datenbank (102) abgespeichert werden und mithilfe der Datenbank (102) eine Abbildung bestimmt wird, mit welcher eine Leistungsverbesserung des neuronalen Netzes (6) in Abhängigkeit einer Art, wie ein neues Übertragungsmodul hinzugefügt wird, approximiert werden kann.
  10. Fahrzeugsystem mit einem Steuergerät (2), zumindest einer mit dem Steuergerät (2) steuerbaren Komponente (3) eines Fahrzeugs (4), einem Sensor, einem neuronalen Netz (6), einem Trainingsmodul (7) zum Trainieren des neuronalen Netzes (6), wobei das neuronale Netz (6) in Abhängigkeit von mit dem Sensor erfassten Daten Werte für das Steuergerät (2) zum Steuern der Komponente (3) berechnen kann und das Trainingsmodul (7) und das neuronale Netz (6) derart eingerichtet sind, dass mithilfe des Trainingsmoduls (7) ein Gradientenverfahren zur Veränderung zumindest eines ersten Übertragungsmoduls, mit dem ein mit einem ersten Neuron des neuronalen Netzes (6) erzeugtes Signal veränderbar ist und an ein zweites Neuron des neuronalen Netzes (6) gesendet werden kann, durchführbar ist und in Abhängigkeit eines Verlaufes des Gradientenverfahrens zu dem neuronalen Netz (6) zumindest ein weiteres Übertragungsmodul (41; 184; 9011) hinzufügbar ist, mit dem ein mit einem dritten Neuron des neuronalen Netzes (6) erzeugtes Signal veränderbar ist und an ein viertes Neuron des neuronalen Netzes (6) gesendet werden kann.
DE102019113958.9A 2018-05-28 2019-05-24 Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente Pending DE102019113958A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102018112718.9 2018-05-28
DE102018112718.9A DE102018112718A1 (de) 2018-05-28 2018-05-28 Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente

Publications (1)

Publication Number Publication Date
DE102019113958A1 true DE102019113958A1 (de) 2019-07-18

Family

ID=62716944

Family Applications (2)

Application Number Title Priority Date Filing Date
DE102018112718.9A Withdrawn DE102018112718A1 (de) 2018-05-28 2018-05-28 Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente
DE102019113958.9A Pending DE102019113958A1 (de) 2018-05-28 2019-05-24 Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE102018112718.9A Withdrawn DE102018112718A1 (de) 2018-05-28 2018-05-28 Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente

Country Status (1)

Country Link
DE (2) DE102018112718A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020212946A1 (de) * 2020-10-14 2022-04-14 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zur Steuerung eines Drehmoments zumindest eines Rades

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160349330A1 (en) 2015-06-01 2016-12-01 Verizon Patent And Licensing Inc. Systems and methods for determining vehicle battery health

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160349330A1 (en) 2015-06-01 2016-12-01 Verizon Patent And Licensing Inc. Systems and methods for determining vehicle battery health

Also Published As

Publication number Publication date
DE102018112718A1 (de) 2018-07-19

Similar Documents

Publication Publication Date Title
DE102018109835A1 (de) Verfahren und Vorrichtung zum Ermitteln einer Netzkonfiguration eines neuronalen Netzes
DE102019124018A1 (de) Verfahren zum Optimieren von Tests von Regelsystemen für automatisierte Fahrdynamiksysteme
DE102018220865A1 (de) Verfahren zum Trainieren wenigstens eines Algorithmus für ein Steuergerät eines Kraftfahrzeugs, Computerprogrammprodukt sowie Kraftfahrzeug
DE102017218851A1 (de) Verfahren, Vorrichtung und Computerprogramm zur Erstellung eines tiefen neuronalen Netzes
EP3393875B1 (de) Verfahren zum verbesserten erkennen von objekten durch ein fahrerassistenzsystem
WO2021058223A1 (de) Verfahren zur effizienten, simulativen applikation automatisierter fahrfunktionen
DE102019218613A1 (de) Objektklassifizierungsverfahren, Objektklassifizierungsschaltung, Kraftfahrzeug
EP3782081B1 (de) Verfahren zur erzeugung eines testdatensatzes, verfahren zum testen, verfahren zum betreiben eines systems, vorrichtung, steuerungssystem, computerprogrammprodukt, computerlesbares medium, erzeugung und verwendung
DE102019105850A1 (de) Verfahren zur Erzeugung eines reduzierten neuronalen Netzes für ein Steuergerät eines Fahrzeuges mithilfe von Eigenvektoren
EP3748453B1 (de) Verfahren und vorrichtung zum automatischen ausführen einer steuerfunktion eines fahrzeugs
DE10201018A1 (de) Neuronales Netz zur Modellierung eines physikalischen Systems sowie Verfahren zur Bildung eines solchen neuronalen Netzes
DE102019113958A1 (de) Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente
DE102020105783A1 (de) Verfahren zur Erzeugung eines reduzierten neuronalen Netzes
DE102013206291A1 (de) Verfahren und Vorrichtung zum Erstellen eines nicht parametrischen, datenbasierten Funktionsmodells
EP0956531B1 (de) Verfahren und vorrichtung zur transformation einer zur nachbildung eines technischen prozesses dienenden fuzzy-logik in ein neuronales netz
DE102018129871A1 (de) Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem
DE102021133977A1 (de) Verfahren und System zur Klassifikation von Szenarien eines virtuellen Tests sowie Trainingsverfahren
DE102020210700A1 (de) Flexiblerer iterativer Betrieb künstlicher neuronaler Netzwerke
DE102019216184A1 (de) Verfahren zum Robustifizieren eines Neuronalen Netzes gegen adversariale Störungen
DE102019130484A1 (de) Verfahren und Vorrichtung zum Anlernen eines Ensembles von neuronalen Netzen
DE102018112929A1 (de) Verfahren zur Validierung eines Fahrerassistenzsystems mithilfe von weiteren generierten Testeingangsdatensätzen
DE102020213830A1 (de) Verfahren und System zur Bereitstellung einer Diagnoseinformation
DE102020006267A1 (de) Verfahren zum Erzeugen eines Verhaltensmodells für eine Kraftfahrzeugflotte mittels einer kraftfahrzeugexternen elektronischen Recheneinrichtung, sowie kraftfahrzeugexterne elektronische Recheneinrichtung
DE102021214552A1 (de) Verfahren zum Evaluieren eines trainierten tiefen neuronalen Netz
DE102022201853A1 (de) Erkennung kritischer Verkehrssituationen mit Petri-Netzen

Legal Events

Date Code Title Description
R084 Declaration of willingness to licence
R230 Request for early publication