DE102022207726A1 - Weitertrainieren neuronaler Netzwerke für die Auswertung von Messdaten - Google Patents

Weitertrainieren neuronaler Netzwerke für die Auswertung von Messdaten Download PDF

Info

Publication number
DE102022207726A1
DE102022207726A1 DE102022207726.1A DE102022207726A DE102022207726A1 DE 102022207726 A1 DE102022207726 A1 DE 102022207726A1 DE 102022207726 A DE102022207726 A DE 102022207726A DE 102022207726 A1 DE102022207726 A1 DE 102022207726A1
Authority
DE
Germany
Prior art keywords
training examples
neural network
training
subset
previous
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
DE102022207726.1A
Other languages
English (en)
Inventor
Frank Schmidt
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102022207726.1A priority Critical patent/DE102022207726A1/de
Priority to US18/357,326 priority patent/US20240037392A1/en
Priority to CN202310926787.3A priority patent/CN117475251A/zh
Priority to JP2023121613A priority patent/JP2024019093A/ja
Publication of DE102022207726A1 publication Critical patent/DE102022207726A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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/09Supervised learning
    • 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
    • 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/045Combinations of 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/047Probabilistic or stochastic 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/0475Generative networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)

Abstract

Verfahren (100) zum Weitertrainieren eines neuronalen Netzwerks (1) für die Verarbeitung von Messdaten (2), das mit Trainings-Beispielen (2a) aus einer Menge M trainiert wurde, wobei diese Trainings-Beispiele (2a) jeweils mit Soll-Ausgaben (3a) des neuronalen Netzwerks (1) gelabelt sind, mit den Schritten:• es wird ein Batch B neuer Trainings-Beispiele (2a') bereitgestellt (110), die ebenfalls mit Soll-Ausgaben (3a') des neuronalen Netzwerks (1) gelabelt sind;• es wird eine Teilmenge D ⊆ M der bisherigen Trainings-Beispiele 2a bereitgestellt (120);• sowohl die neuen Trainings-Beispiele (2a') aus dem Batch B als auch die bisherigen Trainings-Beispiele (2a) aus der Teilmenge D werden mit dem neuronalen Netzwerk (1) jeweils zu Ausgaben (3', 3) verarbeitet (130);• die Abweichungen der Ausgaben (3', 3) von den jeweiligen Soll-Ausgaben (3a', 3a) werden mit einer vorgegebenen Kostenfunktion (4) bewertet (140);• Parameter (1a), die das Verhalten des neuronalen Netzwerks (1) charakterisieren, werden optimiert (150) mit dem Ziel, dass bei weiterer Verarbeitung von bisherigen und neuen Trainings-Beispielen (2a, 2a') die Bewertung (4a) durch die Kostenfunktion (4)◯ bezüglich neuer Trainings-Beispiele (2a') aus dem Batch B verbessert wird und◯ bezüglich bisheriger Trainings-Beispiele (2a) aus der Teilmenge D nicht verschlechtert wird.

Description

  • Die vorliegende Erfindung betrifft das Weitertrainieren bereits trainierter neuronaler Netzwerke, die die beispielsweise für die Klassifikation von Bildern oder anderen Messdaten im Hinblick auf das Vorhandensein bestimmter Typen von Objekten genutzt werden können.
  • Stand der Technik
  • Neuronale Netzwerke, die beispielsweise Bilder oder andere Messdaten im Hinblick auf das Vorhandensein bestimmter Objekte klassifizieren, werden typischerweise überwacht auf einer großen Menge von Trainings-Beispielen trainiert, die mit Soll-pAusgaben gelabelt sind. Nach Abschluss des Trainings wird erwartet, dass das neuronale Netzwerk auch für im Training ungesehenen Bildern bzw. Messdaten die im Hinblick auf die konkrete gestellte Aufgabe richtige Ausgabe liefert.
  • Hierbei kann im Nachhinein die Notwendigkeit entstehen, dieses Training zu erweitern. Beispielsweise benötigt ein System zur Erkennung von Verkehrszeichen nach der Einführung eines neuen Verkehrszeichens durch den Gesetzgeber ein Update, damit es auch dieses neue Verkehrszeichen sicher erkennt.
  • Offenbarung der Erfindung
  • Im Rahmen der Erfindung wurde ein Verfahren zum Weitertrainieren eines neuronalen Netzwerks für die Verarbeitung von Messdaten entwickelt. Das Verfahren geht von der Situation aus, dass das neuronale Netzwerk mit Trainings-Beispielen aus einer Menge M trainiert wurde, wobei diese Trainings-Beispiele jeweils Soll-Ausgaben des neuronalen Netzwerks gelabelt sind.
  • Im Rahmen des Verfahrens wird ein Batch B neuer Trainings-Beispiele bereitgestellt, die ebenfalls mit Soll-Ausgaben des neuronalen Netzwerks gelabelt sind. Weiterhin wird eine Teilmenge D ⊆ M der bisherigen Trainings-Beispiele bereitgestellt.
  • In diesem Zusammenhang sind mit einem generativen Modell, etwa einem Generative Adversarial Network, GAN, generierte Trainings-Beispiele den tatsächlich beim bisherigen Training verwendeten Trainings-Beispielen gleichgestellt. Es ist also möglich, statt dieser bisherigen Trainings-Beispiele selbst das generative Modell abzuspeichern, mit dem derartige Trainings-Beispiele erzeugt werden können. Die generierten Trainings-Beispiele gehören der gleichen Domäne an wie die zuvor tatsächlich verwendeten Trainings-Beispiele, und dies ist für ihre Wirkung im hier vorgeschlagenen Verfahren maßgeblich.
  • Sowohl die neuen Trainings-Beispiele aus dem Batch B als auch die bisherigen Trainings-Beispiele aus der Teilmenge D werden mit dem neuronalen Netzwerk jeweils zu Ausgaben verarbeitet. Die Abweichungen dieser Ausgaben von den jeweiligen Soll-Ausgaben werden mit einer vorgegebenen Kostenfunktion bewertet.
  • Parameter, die das Verhalten des neuronalen Netzwerks charakterisieren, werden optimiert mit dem Ziel, dass bei weiterer Verarbeitung von bisherigen und neuen Trainings-Beispielen die Bewertung durch die Kostenfunktion
    • • bezüglich neuer Trainings-Beispiele aus dem Batch B verbessert wird und
    • • bezüglich bisheriger Trainings-Beispiele aus der Teilmenge D nicht verschlechtert wird.
  • Die Parameter können insbesondere beispielsweise Gewichte umfassen, mit denen Eingaben, die einem Neuron oder einer anderen Verarbeitungseinheit des neuronalen Netzwerks zugeführt werden, gewichtet summiert werden.
  • Ein Weitertraining in dieser Weise vergrößert die Domäne, auf der das neuronale Netzwerk trainiert ist, von der ursprünglichen Menge M von Trainings-Beispielen um den neuen Batch B, ohne dass hierfür der große Rechenaufwand für ein vollständiges neues Training auf der Vereinigungsmenge M u B der Trainings-Beispiele nötig ist.
  • Weiterhin ist auch kein Zugriff auf die vollständige Menge M der ursprünglichen Trainingsdaten notwendig, sondern nur eine vergleichsweise kleine Teilmenge D, die idealerweise ein repräsentativer Querschnitt der Menge M sein sollte. Diese kleine Teilmenge D kann auch beispielsweise in dem beschränkten Speicherplatz eines Steuergeräts oder Embedded-Systems an Bord eines Fahrzeugs abgelegt werden. Hingegen wäre es nicht praktikabel, dort beispielsweise die während mehrerer tausend Stunden an Testfahrten aufgenommenen Trainings-Bilder für ein System zur Erkennung von Objekten abzulegen. Selbst wenn der erforderliche Speicherplatz irgendwie bereitgestellt werden könnte, würde der Hersteller des Systems, der das ursprüngliche Training vorgenommen hat, die vollständige Menge M der Trainings-Beispiele nicht unkontrolliert aus der Hand geben. Gelabelte Trainings-Beispiele sind sehr teuer zu beschaffen, so dass ein Konkurrent, der die vollständige Menge M der Trainings-Beispiele in die Hand bekommt, einen erheblichen Anteil der Entwicklungskosten für ein eigenes System sparen könnte.
  • Wenn hingegen das Weitertraining beispielsweise „as a service“ durchgeführt wird, etwa in einer Cloud, dann gibt es keine Begrenzung hinsichtlich des Speicherplatzes. Auch müssen die Trainings-Beispiele dann nicht aus der Hand gegeben werden. Es spricht in diesem Fall also nichts dagegen, die vollständige Menge M der Trainings-Beispiele als Teilmenge D zu wählen.
  • Dabei sichert die Prüfung, ob die Bewertung der Kostenfunktion sich bezüglich der bisherigen Trainings-Beispiele aus der Teilmenge D durch das Weitertrainieren verschlechtert, das neuronale Netzwerk gegen das sogenannte „katastrophale Vergessen“ ab. Das aus dem Batch B neu gelernte Wissen kommt somit additiv zu dem bisherigen Wissen aus der Menge M hinzu und ersetzt es nicht. Dies ist besonders wichtig für Anwendungen beispielsweise in Fahrzeugen, in denen das korrekte Verhalten des neuronalen Netzwerks in bestimmten Situationen für eine Zulassung zum Straßenverkehr zertifiziert werden muss. Die Betriebserlaubnis für Änderungen kann dann, analog zu sonstigen Änderungen an zugelassenen Fahrzeugen, daran gebunden sein, dass das Verhalten sich durch die Änderung allenfalls verbessert, jedoch keinesfalls verschlechtert.
  • In einer besonders vorteilhaften Ausgestaltung wird ein erster Gradient G0 des Erwartungswerts der Kostenfunktion für die bisherigen Trainings-Beispiele aus der Teilmenge D nach den Parametern ermittelt, etwa nach der Formel G 0 = P E ( x , y ) D [ L ( ƒ ( x ) , y ) ] .
    Figure DE102022207726A1_0001
    Hierin sind P die zu optimierenden Parameter, E ist der Erwartungswert, x ist ein Trainings-Beispiel, y ist die Soll-Ausgabe zu diesem Trainings-Beispiel x, L ist die Kostenfunktion, und f(x) ist die Ausgabe des neuronalen Netzwerks für das Trainings-Beispiel x.
  • Weiterhin wird auch ein zweiter Gradient G1 des Erwartungswerts der Kostenfunktion für die neuen Trainings-Beispiele aus dem Batch B nach den Parametern ermittelt, etwa nach der Formel G 1 = P E ( x , y ) B [ L ( ƒ ( x ) , y ) ] .
    Figure DE102022207726A1_0002
    Aus diesen beiden Gradienten G0 und G1 ein Gradient g ermittelt wird, entlang dessen die Parameter im nächsten Trainingsschritt verändert werden. Auf diese Weise lässt sich genau kontrollieren, welche Wirkung diese beabsichtigte Änderung im nächsten Trainingsschritt bezüglich des Lernens neuen Wissens einerseits und bezüglich möglichem „katastrophalem Vergessen“ bisherigen Wissens andererseits hat.
  • Besonders vorteilhaft kann der Gradient g als Projektion von G1 auf ein orthogonales Komplement G 0 *
    Figure DE102022207726A1_0003
    von G0 ermittelt werden, etwa gemäß der Formel g = G 1 G 0 , G 1 G 0 2 G 0 .
    Figure DE102022207726A1_0004
    Dann hat der Gradient g keine Komponente entlang von G0. Es tritt also keinesfalls eine Verschlechterung in Bezug auf die bisherigen Trainings-Beispiele aus der Teilmenge D ein. Für die Einhaltung dieser Randbedingung wird erforderlichenfalls auch Trainingsfortschritt in Bezug auf die neuen Trainings-Beispiele aus dem Batch B zurückgestellt.
  • Die Berechnung der Gradienten kann für alle Parameter gleichzeitig vorgenommen werden, aber auch beispielsweise sukzessive für die Parameter der verschiedenen Schichten, in denen das neuronale Netzwerk organisiert ist.
  • In einer weiteren besonders vorteilhaften Ausgestaltung wird in Antwort darauf, dass eine Verschlechterung der Bewertung durch die Kostenfunktion bezüglich bisheriger Trainings-Beispiele aus der Teilmenge D einen vorgegebenen Schwellwert überschreitet, das Weitertrainieren abgebrochen. Die Verschlechterung kann beispielsweise in Form des Erwartungswerts E ( x , y ) D [ L ( ƒ ( x ) , y ) ]
    Figure DE102022207726A1_0005
    der Kostenfunktion bezüglich der bisherigen Trainings-Beispiele aus der Teilmenge D gemessen werden. Dieses Maß lässt sich auch nicht dadurch „täuschen“, dass es in jedem Trainingsschritt immer nur kleine Verschlechterungen gibt. Das Ansammeln solcher kleinen Verschlechterungen wird zuverlässig registriert.
  • Das bedeutet, dass sich die Möglichkeit zum Weitertrainieren des neuronalen Netzwerks 1 „verbrauchen“ bzw. „erschöpfen“ kann, analog dazu, dass beim Brückenbau ein Träger ausgehend von einem Pfeiler nur über eine bestimmte Entfernung frei in der Luft hängen kann, bevor er sich durchbiegt. Wenn eine gewisse Menge an neuen Trainings-Beispielen zur Verfügung steht, ist es im Hinblick auf dieses „Verbrauchen/Erschöpfen“ besser, all diese neuen Trainings-Beispiele in einem einzigen Batch B zu präsentieren, als sie auf mehrere Batches B aufzuteilen.
  • Für die Überwachung des Weitertrainierens kann besonders vorteilhaft die gleiche Kostenfunktion verwendet werden, die für das ursprüngliche Training des neuronalen Netzwerks auf den Trainings-Beispielen aus der Menge M verwendet wurde. Es kann dann am genauesten gemessen werden, inwieweit das Verhalten des weitertrainierten Netzwerks in Bezug auf die bisherigen Trainings-Beispiele aus der Teilmenge D noch dem ursprünglich trainierten Verhalten entspricht. Sollte jedoch diese Kostenfunktion nicht zur Verfügung stehen, kann auch jede andere geeignete Kostenfunktion verwendet werden.
  • In einer weiteren besonders vorteilhaften Ausgestaltung wird ein neuronales Netzwerk gewählt, das als Klassifikator für Messdaten, insbesondere für Bilder, in Klassen einer vorgegebenen Klassifikation ausgebildet ist. Gerade in derartigen Anwendungen entsteht häufig im Nachhinein nach einem Training in Bezug auf eine große Anzahl Klassen noch der Bedarf, die Erkennung einiger weniger weiterer Klassen hinzuzufügen. Weiterhin gibt es wenig konkurrierende Wechselwirkungen zwischen den Aufgaben, Merkmale in Bezug auf verschiedene Klassen zu erkennen. Das heißt, die Verbesserung der Erkennung in Bezug auf eine Klasse geht nicht auf Kosten der Erkennung in Bezug auf andere Klassen.
  • Das neuronale Netzwerk kann dann insbesondere beispielsweise
    • • einen Merkmalsextraktor, der eine Eingabe des neuronalen Netzwerks in eine Merkmalskarte überführt, die als Vektor mit K Elementen darstellbar ist, und
    • • einen Klassifikationskopf, der die Merkmalskarte durch Anwenden einer k × K-Matrix A, sowie optional eines k-dimensionalen Bias-Vektors b, auf einen Vektor mit k Klassifikations-Scores bezüglich k verfügbarer Klassen als Ausgabe des neuronalen Netzwerks abbildet,
    umfassen. Ein Netzwerk mit dieser Architektur lässt sich besonders gut und organisch auf zusätzliche Klassen erweitern.
  • Es kann insbesondere beispielsweise in Antwort darauf, dass mindestens ein neues Trainings-Beispiel im Batch B mit einer Soll-Ausgabe gelabelt ist, die keiner der k verfügbaren Klassen entspricht,
    • • die Matrix A um eine weitere k + 1-te Zeile erweitert werden, die mit dem Mittel der bereits vorhandenen k Zeilen belegt ist, und
    • • sofern vorhanden, der Bias-Vektor b um eine k + 1-te Komponente erweitert werden, die mit dem Mittel der bereits vorhandenen k Komponenten belegt ist.
  • Der Softmax-Score für diese neue Klasse ist dann exp ( 1 k i = 1 k x k ) exp ( 1 k i = 1 k x k ) + i = 1 k exp ( x k ) = [ 1 + i = 1 k exp ( x k ) exp ( 1 k i = 1 k x k ) ] 1 1 k + 1
    Figure DE102022207726A1_0006
    auf Grund der Jensen'schen Ungleichung. Das bedeutet, dass ohne weiteres Training die neue Klasse nur einen Klassifikations-Score bekommt, der maximal so groß ist wie es beim zufälligen Ziehen einer Klasse aus allen k + 1 verfügbaren Klassen zu erwarten wäre. Somit kann die Erkennung der k + 1-ten Klasse hinzugefügt werden, ohne das Verhalten des Klassifikators in Bezug auf die k bereits existierenden Klassen zu ändern. Es wird keine neue Information ins System eingebracht, die de facto gar nicht da ist.
  • In einer weiteren besonders vorteilhaften Ausgestaltung wird die Teilmenge D ⊆ M so ausgewählt, dass sie für die Klassen der vorgegebenen Klassifikation im Wesentlichen gleiche Anzahlen bisheriger Trainings-Beispiele enthält. Sie stellt dann einen repräsentativen Querschnitt der ursprünglichen Menge M von Trainings-Beispielen dar. Das heißt, dass das Verhalten des neuronalen Netzwerks auf der Teilmenge D mit hoher Wahrscheinlichkeit eine taugliche Vorhersage für das Verhalten auf der ursprünglichen Menge M von Trainings-Beispielen ist.
  • Die Klassen können insbesondere beispielsweise Verkehrsteilnehmer, Fahrbahnen, Fahrbahnbegrenzungen, Verkehrszeichen, Hindernisse und/oder andere für das Führen eines Fahrzeugs verkehrsrelevanter Objekte repräsentieren. Gerade bei Verkehrszeichen und Verkehrsteilnehmern gibt es häufiger Neuerungen, die Gegenstand eines Weitertrainings sein können. So ist beispielsweise vor wenigen Jahren mit den Elektrokleinstfahrzeugen („E-Scooter") eine völlig neue Fahrzeuggattung geschaffen worden.
  • Die beim Weitertrainieren erhaltenen neuen Werte der Parameter, die das Verhalten des neuronalen Netzwerks charakterisieren, können beispielsweise bei einer zentralen Entität gesammelt werden und als Grundlage für ein später zu veröffentlichendes allgemeines Update des neuronalen Netzwerks dienen. Es können insbesondere beispielsweise Werte der Parameter von einer Vielzahl von Nutzern eingesammelt werden. Hierbei bleibt die Privatsphäre der Nutzer gewahrt, weil die Parameter keine Rückschlüsse auf die neuen Trainings-Beispiele im Batch B zulassen.
  • Als Messdaten können insbesondere beispielsweise Bilder, Audiosignale, Zeitreihen von Messwerten, Radar-Daten und/oder Lidar-Daten gewählt werden. Gerade diese Datenarten sind sehr vielschichtig in dem Sinne, dass sie Aussagen in Bezug auf viele mögliche Klassen enthalten können.
  • Eine weitere wichtige Anwendung des Weitertrainierens ist die optische Qualitätskontrolle, beispielsweise von in Serie gefertigten Bauteilen. Hier kann das Weitertrainieren beispielsweise genutzt werden, um den Prozess auf neue Bauteile und/oder neue Bedingungen einzustellen.
  • In einer weiteren besonders vorteilhaften Ausgestaltung werden dem weitertrainierten neuronalen Netzwerk Messdaten zugeführt, so dass das weitertrainierte neuronale Netzwerk Ausgaben erzeugt. Aus diesen Ausgaben wird ein Ansteuersignal gebildet. Ein Fahrzeug, ein Fahrassistenzsystem, ein System zur Qualitätskontrolle, ein System zur Überwachung von Bereichen, und/oder ein System zur medizinischen Bildgebung, wird mit diesem Ansteuersignal angesteuert. Auf Grund der besseren Fähigkeit des neuronalen Netzwerks, in der um den Batch B erweiterten Domäne der Trainings-Beispiele zu arbeiten und ausgehend hiervon zu generalisieren, ist dann die Wahrscheinlichkeit erhöht, dass die Reaktion des jeweils angesteuerten Systems der mit den Messdaten erfassten Situation angemessen ist.
  • Das Verfahren kann insbesondere ganz oder teilweise computerimplementiert sein. Daher bezieht sich die Erfindung auch auf ein Computerprogramm mit maschinenlesbaren Anweisungen, die, wenn sie auf einem oder mehreren Computern und/oder Compute-Instanzen ausgeführt werden, den oder die Computer und/oder Compute-Instanzen dazu veranlassen, das beschriebene Verfahren auszuführen. In diesem Sinne sind auch Steuergeräte für Fahrzeuge und Embedded-Systeme für technische Geräte, die ebenfalls in der Lage sind, maschinenlesbare Anweisungen auszuführen, als Computer anzusehen. Beispiele für Compute-Instanzen sind virtuelle Maschinen, Container oder serverlose Ausführungsumgebungen für die Ausführung maschinenlesbarer Anweisungen in einer Cloud.
  • Ebenso bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger und/oder auf ein Downloadprodukt mit dem Computerprogramm. Ein Downloadprodukt ist ein über ein Datennetzwerk übertragbares, d.h. von einem Benutzer des Datennetzwerks downloadbares, digitales Produkt, das beispielsweise in einem Online-Shop zum sofortigen Download feilgeboten werden kann.
  • Weitere, die Erfindung verbessernde Maßnahmen werden nachstehend gemeinsam mit der Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung anhand von Figuren näher dargestellt.
  • Ausführungsbeispiele
  • Es zeigt:
    • 1 Ausführungsbeispiel des Verfahrens 100 zum Weitertrainieren eines neuronalen Netzwerks 1;
    • 2 Veranschaulichung der Bildung eines Gradienten g, entlang dessen die Parameter 1a ohne Verschlechterung in Bezug auf bisherige Trainings-Beispiele 2a geändert werden können.
  • 1 ist ein schematisches Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 1 zum Weitertrainieren eines neuronalen Netzwerks 1 für die Verarbeitung von Messdaten 2. Dieses neuronale Netzwerk 1 ist bereits mit Trainings-Beispielen 2a aus einer Menge M trainiert, wobei diese Trainings-Beispiele 2a jeweils mit Soll-Ausgaben 3a des neuronalen Netzwerks 1 gelabelt sind.
  • In Schritt 105 wird ein neuronales Netzwerk 1 gewählt, das als Klassifikator für Messdaten (2), insbesondere für Bilder, in Klassen einer vorgegebenen Klassifikation ausgebildet ist.
  • Gemäß Block 105a kann ein solches Netzwerk 1 insbesondere
    • • einen Merkmalsextraktor, der eine Eingabe 2 des neuronalen Netzwerks 1 in eine Merkmalskarte überführt, die als Vektor mit K Elementen darstellbar ist, und
    • • einen Klassifikationskopf, der die Merkmalskarte durch Anwenden einer k × K-Matrix A, sowie optional eines k-dimensionalen Bias-Vektors b, auf einen Vektor mit k Klassifikations-Scores bezüglich k verfügbarer Klassen als Ausgabe 3 abbildet,
    umfassen.
  • In Schritt 110 wird ein Batch B neuer Trainings-Beispiele 2a' bereitgestellt, die ebenfalls mit Soll-Ausgaben 3a' des neuronalen Netzwerks 1 gelabelt sind.
  • Gemäß Block 111 kann in Antwort darauf, dass mindestens ein neues Trainings-Beispiel 2a' im Batch B mit einer Soll-Ausgabe 3a' gelabelt ist, die keiner der k verfügbaren Klassen entspricht (Wahrheitswert 1),
    • • die Matrix A gemäß Block 112 um eine weitere k + 1-te Zeile erweitert werden, die mit dem Mittel der bereits vorhandenen k Zeilen belegt ist, und
    • • gemäß Block 113 der Bias-Vektor b, sofern vorhanden, um eine k + 1-te Komponente erweitert werden, die mit dem Mittel der bereits vorhandenen k Komponenten belegt ist.
  • In Schritt 120 wird eine Teilmenge D ⊆ M der bisherigen Trainings-Beispiele 2a bereitgestellt.
  • In Schritt 130 werden sowohl die neuen Trainings-Beispiele 2a' aus dem Batch B als auch die bisherigen Trainings-Beispiele 2a aus der Teilmenge D mit dem neuronalen Netzwerk 1 jeweils zu Ausgaben 3', 3 verarbeitet.
  • In Schritt 140 werden die Abweichungen der Ausgaben 3', 3 von den jeweiligen Soll-Ausgaben 3a', 3a mit einer vorgegebenen Kostenfunktion 4 bewertet. Das Ergebnis ist eine Bewertung 4a.
  • Hierbei kann insbesondere beispielsweise gemäß Block 141 die Kostenfunktion 4, die für das ursprüngliche Training des neuronalen Netzwerks 1 auf den Trainings-Beispielen 2a aus der Menge M verwendet wurde, auch für das Weitertraining verwendet werden.
  • In Schritt 150 werden Parameter 1a, die das Verhalten des neuronalen Netzwerks 1 charakterisieren, optimiert mit dem Ziel, dass bei weiterer Verarbeitung von bisherigen und neuen Trainings-Beispielen 2a, 2a' die Bewertung 4a durch die Kostenfunktion 4
    • • bezüglich neuer Trainings-Beispiele 2a' aus dem Batch B verbessert wird und
    • • bezüglich bisheriger Trainings-Beispiele 2a aus der Teilmenge D nicht verschlechtert wird.
  • Der fertig optimierte Zustand der Parameter 1a ist mit dem Bezugszeichen 1a* bezeichnet. Dementsprechend ist der weitertrainierte Zustand des neuronalen Netzwerks 1 mit dem Bezugszeichen 1* bezeichnet.
  • Gemäß Block 151 kann ein erster Gradient G0 des Erwartungswerts der Kostenfunktion 4 für die bisherigen Trainings-Beispiele 2a aus der Teilmenge D nach den Parametern 1a ermittelt werden.
  • Gemäß Block 152 kann dann ein zweiter Gradient G1 des Erwartungswerts der Kostenfunktion 4 für die neuen Trainings-Beispiele 2a' aus dem Batch B nach den Parametern 1a ermittelt werden.
  • Gemäß Block 153 kann aus den Gradienten G0 und G1 ein Gradient g ermittelt werden, entlang dessen die Parameter 1a im nächsten Trainingsschritt verändert werden.
  • Gemäß Block 154 kann geprüft werden, ob eine Verschlechterung der Bewertung 4a durch die Kostenfunktion 4 bezüglich bisheriger Trainings-Beispiele 2a aus der Teilmenge D einen vorgegebenen Schwellwert 5 überschreitet. Wenn dies der Fall ist (Wahrheitswert 1), kann gemäß Block 155 das Weitertrainieren abgebrochen werden.
  • In Schritt 160 werden dem weitertrainierten neuronalen Netzwerk 1* Messdaten 2 zugeführt, so dass das weitertrainierte neuronale Netzwerk 1* Ausgaben 3 erzeugt.
  • In Schritt 170 wird aus den Ausgaben 3 des neuronalen Netzwerks 1 ein Ansteuersignal 170a gebildet.
  • In Schritt 180 wird ein Fahrzeug 50, ein Fahrassistenzsystem 60, ein System 70 zur Qualitätskontrolle, ein System 80 zur Überwachung von Bereichen, und/oder ein System 90 zur medizinischen Bildgebung, mit dem Ansteuersignal 170a angesteuert.
  • 2 veranschaulicht in vereinfachter zweidimensionaler Darstellung, wie ein Gradient g, entlang dessen die Parameter 1a ohne Verschlechterung in Bezug auf bisherige Trainings-Beispiele 2a geändert werden können, erhalten werden kann.
  • Der Gradient G0 des Erwartungswerts der Kostenfunktion 4 für die bisherigen Trainings-Beispiele 2a aus der Teilmenge D nach den Parametern 1a gibt an, in welcher Richtung die Parameter 1a geändert werden müssen, um die Bewertung 4a durch die Kostenfunktion 4 bezüglich der bisherigen Trainings-Beispiele 2a aus der Teilmenge D zu ändern. Da eine solche Veränderung unerwünscht ist, wird das orthogonale Komplement G 0 *
    Figure DE102022207726A1_0007
    zu G0 gebildet. Entlang dieses orthogonalen Komplements G 0 *
    Figure DE102022207726A1_0008
    können die Parameter 1a geändert werden, ohne besagte unerwünschte Veränderung vorzunehmen. Der gesuchte Gradient g verläuft also entlang G 0 * .
    Figure DE102022207726A1_0009
  • Der Betrag von g ergibt sich aus einem zweiten Gradienten G1 des Erwartungswerts der Kostenfunktion 4 für die neuen Trainings-Beispiele 2a' aus dem Batch B nach den Parametern 1a. Hierzu wird der Gradient G1 auf G 0 *
    Figure DE102022207726A1_0010
    projiziert.

Claims (15)

  1. Verfahren (100) zum Weitertrainieren eines neuronalen Netzwerks (1) für die Verarbeitung von Messdaten (2), das mit Trainings-Beispielen (2a) aus einer Menge M trainiert wurde, wobei diese Trainings-Beispiele (2a) jeweils mit Soll-Ausgaben (3a) des neuronalen Netzwerks (1) gelabelt sind, mit den Schritten: • es wird ein Batch B neuer Trainings-Beispiele (2a') bereitgestellt (110), die ebenfalls mit Soll-Ausgaben (3a') des neuronalen Netzwerks (1) gelabelt sind; • es wird eine Teilmenge D ⊆ M der bisherigen Trainings-Beispiele 2a bereitgestellt (120); • sowohl die neuen Trainings-Beispiele (2a') aus dem Batch B als auch die bisherigen Trainings-Beispiele (2a) aus der Teilmenge D werden mit dem neuronalen Netzwerk (1) jeweils zu Ausgaben (3', 3) verarbeitet (130); • die Abweichungen der Ausgaben (3', 3) von den jeweiligen Soll-Ausgaben (3a', 3a) werden mit einer vorgegebenen Kostenfunktion (4) bewertet (140); • Parameter (1a), die das Verhalten des neuronalen Netzwerks (1) charakterisieren, werden optimiert (150) mit dem Ziel, dass bei weiterer Verarbeitung von bisherigen und neuen Trainings-Beispielen (2a, 2a') die Bewertung (4a) durch die Kostenfunktion (4) ◯ bezüglich neuer Trainings-Beispiele (2a') aus dem Batch B verbessert wird und ◯ bezüglich bisheriger Trainings-Beispiele (2a) aus der Teilmenge D nicht verschlechtert wird.
  2. Verfahren (100) nach Anspruch 1, wobei • ein erster Gradient G0 des Erwartungswerts der Kostenfunktion (4) für die bisherigen Trainings-Beispiele (2a) aus der Teilmenge D nach den Parametern (1a) ermittelt wird (151), • ein zweiter Gradient G1 des Erwartungswerts der Kostenfunktion (4) für die neuen Trainings-Beispiele (2a') aus dem Batch B nach den Parametern (1a) ermittelt wird (152), und • aus den Gradienten G0 und G1 ein Gradient g ermittelt wird (153), entlang dessen die Parameter (1a) verändert werden.
  3. Verfahren (100) nach Anspruch 2, wobei der Gradient g als Projektion von G1 auf ein orthogonales Komplement G 0 *
    Figure DE102022207726A1_0011
    von G0 ermittelt wird (153a).
  4. Verfahren (100) nach einem der Ansprüche 1 bis 3, wobei in Antwort darauf, dass eine Verschlechterung der Bewertung (4a) durch die Kostenfunktion (4) bezüglich bisheriger Trainings-Beispiele (2a) aus der Teilmenge D einen vorgegebenen Schwellwert (5) überschreitet (154), das Weitertrainieren abgebrochen wird (155).
  5. Verfahren (100) nach einem der Ansprüche 1 bis 4, wobei die Kostenfunktion (4), die für das ursprüngliche Training des neuronalen Netzwerks (1) auf den Trainings-Beispielen (2a) aus der Menge M verwendet wurde, auch für das Weitertraining verwendet wird (141).
  6. Verfahren (100) nach einem der Ansprüche 1 bis 5, wobei ein neuronales Netzwerk (1) gewählt wird (105), das als Klassifikator für Messdaten (2), insbesondere für Bilder, in Klassen einer vorgegebenen Klassifikation ausgebildet ist.
  7. Verfahren (100) nach Anspruch 6, wobei das neuronale Netzwerk (1) • einen Merkmalsextraktor, der eine Eingabe (2) des neuronalen Netzwerks (1) in eine Merkmalskarte überführt, die als Vektor mit K Elementen darstellbar ist, und • einen Klassifikationskopf, der die Merkmalskarte durch Anwenden einer k × K-Matrix A, sowie optional eines k-dimensionalen Bias-Vektors b, auf einen Vektor mit k Klassifikations-Scores bezüglich k verfügbarer Klassen als Ausgabe (3) abbildet, umfasst (105a).
  8. Verfahren (100) nach Anspruch 7, wobei in Antwort darauf, dass mindestens ein neues Trainings-Beispiel (2a') im Batch B mit einer Soll-Ausgabe (3a') gelabelt ist (111), die keiner der k verfügbaren Klassen entspricht, • die Matrix A um eine weitere k + 1-te Zeile erweitert wird (112), die mit dem Mittel der bereits vorhandenen k Zeilen belegt ist, und • sofern vorhanden, der Bias-Vektor b um eine k + 1-te Komponente erweitert wird (113), die mit dem Mittel der bereits vorhandenen k Komponenten belegt ist.
  9. Verfahren (100) nach einem der Ansprüche 6 bis 8, wobei die Teilmenge D ⊆ M so ausgewählt wird, dass sie für die Klassen der vorgegebenen Klassifikation im Wesentlichen gleiche Anzahlen bisheriger Trainings-Beispiele (2a) enthält.
  10. Verfahren (100) nach einem der Ansprüche 6 bis 9, wobei die Klassen Verkehrsteilnehmer, Fahrbahnen, Fahrbahnbegrenzungen, Verkehrszeichen, Hindernisse und/oder andere für das Führen eines Fahrzeugs verkehrsrelevanter Objekte repräsentieren.
  11. Verfahren (100) nach einem der Ansprüche 1 bis 10, wobei Bilder, Audiosignale, Zeitreihen von Messwerten, Radar-Daten und/oder Lidar-Daten als Messdaten (2) gewählt werden.
  12. Verfahren (100) nach einem der Ansprüche 1 bis 11, wobei • dem weitertrainierten neuronalen Netzwerk (1*) Messdaten (2) zugeführt werden (160), so dass das weitertrainierte neuronale Netzwerk (1*) Ausgaben (3) erzeugt; • aus den Ausgaben (3) des neuronalen Netzwerks (1) ein Ansteuersignal (170a) gebildet wird (170); und • ein Fahrzeug (50), ein Fahrassistenzsystem (60), ein System (70) zur Qualitätskontrolle, ein System (80) zur Überwachung von Bereichen, und/oder ein System (90) zur medizinischen Bildgebung, mit dem Ansteuersignal (170a) angesteuert wird (180).
  13. Computerprogramm, enthaltend maschinenlesbare Anweisungen, die, wenn sie auf einem oder mehreren Computern und/oder Compute-Instanzen ausgeführt werden, den oder die Computer und/oder Compute-Instanzen dazu veranlassen, das Verfahren (100) nach einem der Ansprüche 1 bis 12 auszuführen.
  14. Maschinenlesbarer Datenträger mit dem Computerprogramm nach Anspruch 13.
  15. Ein oder mehrere Computer und/oder Compute-Instanzen mit dem Computerprogramm nach Anspruch 13, und/oder mit dem maschinenlesbaren Datenträger nach Anspruch 14.
DE102022207726.1A 2022-07-27 2022-07-27 Weitertrainieren neuronaler Netzwerke für die Auswertung von Messdaten Pending DE102022207726A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102022207726.1A DE102022207726A1 (de) 2022-07-27 2022-07-27 Weitertrainieren neuronaler Netzwerke für die Auswertung von Messdaten
US18/357,326 US20240037392A1 (en) 2022-07-27 2023-07-24 Further training of neural networks for the evaluation of measurement data
CN202310926787.3A CN117475251A (zh) 2022-07-27 2023-07-26 进一步训练神经网络以评估测量数据
JP2023121613A JP2024019093A (ja) 2022-07-27 2023-07-26 測定データを評価するためのニューラルネットワークのさらなるトレーニング

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022207726.1A DE102022207726A1 (de) 2022-07-27 2022-07-27 Weitertrainieren neuronaler Netzwerke für die Auswertung von Messdaten

Publications (1)

Publication Number Publication Date
DE102022207726A1 true DE102022207726A1 (de) 2024-02-01

Family

ID=89508304

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022207726.1A Pending DE102022207726A1 (de) 2022-07-27 2022-07-27 Weitertrainieren neuronaler Netzwerke für die Auswertung von Messdaten

Country Status (4)

Country Link
US (1) US20240037392A1 (de)
JP (1) JP2024019093A (de)
CN (1) CN117475251A (de)
DE (1) DE102022207726A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019215120A1 (de) 2018-12-19 2020-06-25 Robert Bosch Gmbh Verfahren und Vorrichtung zum Klassifizieren von Sensordaten und zum Ermitteln eines Ansteuersignals zum Ansteuern eines Aktors

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019215120A1 (de) 2018-12-19 2020-06-25 Robert Bosch Gmbh Verfahren und Vorrichtung zum Klassifizieren von Sensordaten und zum Ermitteln eines Ansteuersignals zum Ansteuern eines Aktors

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ODSC - Open Data Science: Using the CNN Architecture in Image Processing. 16.01.2020. URL: https://odsc.medium.com/using-the-cnn-architecture-in-image-processing-65b9eb032bdc, Archiviert in archive.org am 21.06.2022 [abgerufen am 09.03.2023]
SHEIKH, Rasha [et al.]: Gradient and log-based active learning for semantic segmen-tation of crop and weed for agricultural robots. In: 2020 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2020. S. 1350-1356

Also Published As

Publication number Publication date
US20240037392A1 (en) 2024-02-01
CN117475251A (zh) 2024-01-30
JP2024019093A (ja) 2024-02-08

Similar Documents

Publication Publication Date Title
DE102018128289B4 (de) Verfahren und vorrichtung für eine autonome systemleistung und zur einstufung
DE102019204139A1 (de) Training für künstliche neuronale Netzwerke mit besserer Ausnutzung der Lern-Datensätze
DE102018220941A1 (de) Auswertung von Messgrößen mit KI-Modulen unter Berücksichtigung von Messunsicherheiten
DE102021000291A1 (de) Verfahren zum von Testszenarios für ADAS
DE102011088805A1 (de) Verfahren zum Entwickeln und/oder Testen eines Fahrerassistenzsystems
AT523850B1 (de) Computergestütztes Verfahren und Vorrichtung zur wahrscheinlichkeitsbasierten Geschwindigkeitsprognose für Fahrzeuge
WO2020178009A1 (de) Training neuronaler netzwerke für effizientes implementieren auf hardware
DE102022207726A1 (de) Weitertrainieren neuronaler Netzwerke für die Auswertung von Messdaten
DE102018129871A1 (de) Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem
EP4012611A1 (de) Bestimmung der für einen bildklassifikator entscheidungsrelevanten bildanteile durch zielgerichtetes abwandeln im latenten raum
DE102021133977A1 (de) Verfahren und System zur Klassifikation von Szenarien eines virtuellen Tests sowie Trainingsverfahren
DE102020214850A1 (de) Energie- und speichereffizientes Training neuronaler Netzwerke
WO2022043203A1 (de) Training eines generators zur erzeugung realistischer bilder mit einem semantisch segmentierenden diskriminator
DE102020205542A1 (de) Aufbereiten von Lern-Datensätzen mit verrauschten Labeln für Klassifikatoren
WO2021004741A1 (de) Robusteres training für künstliche neuronale netzwerke
DE102020207004A1 (de) Regularisiertes Training neuronaler Netzwerke
DE102020212005B4 (de) Verfahren zur Bestimmung der für einen Bildklassifikator entscheidungsrelevanten Bildanteile
DE102019130040A1 (de) Verfahren und System zum Prüfen einer automatisierten Fahrfunktion durch Reinforcement-Learning
EP4033452B1 (de) Domänenunabhängiges training von bildklassifikatoren
DE102021204960A1 (de) Numerisch stabileres Trainingsverfahren für Bildklassifikatoren
DE102020210712A1 (de) Erzeugung realistischer Bilder aus vorgegebenen semantischen Karten
DE102022208480A1 (de) Verfahren zum Evaluieren eines trainierten tiefen neuronalen Netzes
DE102022213485A1 (de) Föderiertes Training für ein neuronales Netzwerk mit geringerem Kommunikationsbedarf
DE102020214996A1 (de) Messung der Empfindlichkeit eines Bildklassifikators gegenüber Änderungen des Eingabe-Bildes
DE112022003908T5 (de) Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren, servervorrichtung, fahrzeugvorrichtung und informationsverarbeitungsprogramm

Legal Events

Date Code Title Description
R163 Identified publications notified