DE102018129871A1 - Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem - Google Patents

Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem Download PDF

Info

Publication number
DE102018129871A1
DE102018129871A1 DE102018129871.4A DE102018129871A DE102018129871A1 DE 102018129871 A1 DE102018129871 A1 DE 102018129871A1 DE 102018129871 A DE102018129871 A DE 102018129871A DE 102018129871 A1 DE102018129871 A1 DE 102018129871A1
Authority
DE
Germany
Prior art keywords
training
data
classes
neural network
fine
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
DE102018129871.4A
Other languages
English (en)
Inventor
Mohammed Abdou
Mahmoud Elkhateeb
Ibrahim Sobh
Ahmad El-Sallab
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.)
Valeo Schalter und Sensoren GmbH
Original Assignee
Valeo Schalter und Sensoren 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 Valeo Schalter und Sensoren GmbH filed Critical Valeo Schalter und Sensoren GmbH
Priority to DE102018129871.4A priority Critical patent/DE102018129871A1/de
Publication of DE102018129871A1 publication Critical patent/DE102018129871A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Abstract

Die vorliegende Erfindung betrifft ein Verfahren zum Trainieren eines tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten für Anwendungen in einem Fahrunterstützungssystem eines Fahrzeugs unter Verwendung eines Satzes von Trainingsdaten mit Umgebungsinformation, mit den Schritten des Bereitstellens eines tiefen konvolutionellen neuronalen Netzwerks, Bereitstellen eines Satzes von Trainingsdaten mit Umgebungsinformation mit feinkörnigen Klassen und grobkörnigen Klassen, wobei den feinkörnigen Klassen und den grobkörnigen Klassen Ground-Truth-Label zugeordnet sind, Modifizieren des Satzes von Trainingsdaten derart, dass nur feinkörnige Klassen erhalten werden, Ausführen eines Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks unter der Steuerung von selbstinkrementellem Transferlernen, wobei der Satz von Trainingsdaten durch eine gewichtete Kreuzentropie-Verlustfunktion trainiert wird, und Speichern der Modelldaten des Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks. Die vorliegende Erfindung betrifft auch eine Datenverarbeitungsvorrichtung zum Ausführen des obigen Verfahrens, ein Computerprogrammprodukt, das Anweisungen enthält, die, wenn das Computerprogrammprodukt durch die Datenverarbeitungsvorrichtung ausgeführt wird, veranlassen, dass die Datenverarbeitungsvorrichtung die Schritte des Verfahrens ausführt, und ein Fahrunterstützungssystem zum Ausführen jedes der Verfahrensschritte.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Trainieren eines tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem eines Fahrzeugs. Die vorliegende Erfindung betrifft auch eine Datenverarbeitungsvorrichtung. Weiterhin betrifft die vorliegende Erfindung ein Computerprogrammprodukt. Die vorliegende Erfindung betrifft darüber hinaus auch ein Fahrunterstützungssystem eines Fahrzeugs zum Ausführen des vorstehenden Verfahrens.
  • Autonomes und semi-autonomes Fahren werden in der Automobilindustrie immer wichtiger. Prototypen für autonomes Fahren sind bereits entwickelt und werden getestet, teilweise sogar unter realen Fahrsituationen. Autonomes Fahren wird als eine bahnbrechende Technologie im Automobilsektor betrachtet.
  • Autonomes und semi-autonomes Fahren basiert auf der Kenntnis der Umgebung des Fahrzeugs. Basierend auf dieser Kenntnis kann das Fahrunterstützungssystem z.B. Gefahren für das Fahrzeug oder Dritte erkennen und auf eine geeignete Weise agieren, um derartige gefährlichen Fahrsituationen aufzulösen. Daher werden verschiedenartige Umgebungssensoren in Fahrzeugen eingesetzt, um die Umgebung des Fahrzeugs zu überwachen. Solche Umgebungssensoren können eine beliebige Kombination von Sensoren unter Ultraschallsensoren, Sensoren auf LiDAR-Basis, Radarsensoren und optischen Kameras aufweisen.
  • Das Verarbeiten von Sensordaten von Umgebungssensoren, insbesondere von Sensordaten auf LiDAR-Basis, die einen ganzen Satz von 3D-Punkten enthalten, ist eine große Herausforderung. Riesige Datenmengen müssen in Echtzeit verarbeitet werden, um die Umgebung des Fahrzeugs zuverlässig zu erfassen. Die Ressourcen des Fahrzeugs zum Verarbeiten der Daten sind jedoch in Bezug auf den Platz zum Unterbringen von Verarbeitungsvorrichtungen und in Bezug auf die verfügbare elektrische Leistung begrenzt. Selbst wenn die technischen Probleme behoben würden, bleibt der Preis der Ressourcen eingeschränkt, um Fahrzeuge zu einem erschwinglichen Preis anbieten zu können.
  • Das Endziel von Computer Vision besteht darin, Computern beizubringen, Bilder zu sehen und zu verstehen, ähnlich wie es Menschen tun. Insbesondere ist das Szenenverständnis eines der wichtigsten Kern- und Grundprobleme vieler Anwendungen, wie beispielsweise autonomes Fahren, Robotik und Augmented Reality.
  • Der maschinelle Lernansatz wurde in jüngster Zeit erfolgreich zum Lösen zahlreicher Probleme im Zusammenhang mit dem Verständnis von Bildern verwendet. Maschinelles Lernen ist nützlich für die Klassifizierung von Daten in einem Datensatz. Es werden Klassifizierer verwendet, um Datensätze gemäß Klassenbezeichnungen zu klassifizieren, wobei die Klassifizierer eine gute Leistung erbringen, wenn der Datensatz ausgewogen ist. Ein Datensatz wird als unausgewogen bezeichnet, wenn er wesentlich mehr Proben aus einer Klasse, die Majoritätsklasse genannt wird, enthält als aus der anderen Klasse, die als Minoritätsklasse bezeichnet wird. Es ist bekannt, dass das Problem der Klassenunausgewogenheit die Lernleistung von Klassifizierungsalgorithmen behindert. Verschiedene Realwelt-Klassifizierungsaufgaben, wie beispielsweise das Verständnis von Bildern, leiden unter diesem Phänomen. Die Klassifizierung unausgewogener Datensätze wird als wichtiges und schwieriges Problem beim maschinellen Lernen und bei der Klassifizierung erkannt.
  • Standardklassifizierer funktionieren mit unausgewogenen Datensätzen nicht gut, hauptsächlich, weil sie versuchen, die Gesamtfehler der Falschklassifizierung zu reduzieren und daher die Majoritätsklasse besser kennenlernen als die Minoritätsklasse. Demzufolge ist die Fähigkeit des Klassifizierers, Testproben von der Minoritätsklasse zu identifizieren, schlecht. Rauschen in den Daten hat daher für Proben aus der Minoritätsklasse einen weitaus größeren Einfluss auf die Klassifizierungsleistung. Wenn die Minoritätsklasse sehr wenig Datenpunkte enthält, ist es außerdem schwieriger, eine generalisierbare Klassifizierungsgrenze zwischen den Klassen zu erhalten.
  • Es sind verschiedene Techniken entwickelt worden, um unausgewogene Datensätze beim maschinellen Lernen zu handhaben. Die drei breiten Klassen von Techniken, die für die Klassifizierung unausgewogener Daten entwickelt wurden, umfassen probenbasierte Vorverarbeitungstechniken, kostensensitives Lernen und kernelbasierte Methoden.
  • Ein leistungsfähiges Mittel zum Verarbeiten von Bilddaten sind neuronale Netzwerke. Anwendungen neuronaler Netzwerke zur Bildverarbeitung basieren typischerweise auf konvolutionellen neuronalen Netzwerken und insbesondere auf tiefen konvolutionellen neuronalen Netzwerken. Die Verwendung solcher Netzwerktypen hat vielversprechende Ergebnisse zu einem erschwinglichen Preis gezeigt.
  • Ein künstliches neuronales Netzwerk, das eine miteinander verbundene Gruppe künstlicher Neuronen (z.B. Neuronenmodelle) aufweisen kann, ist eine Recheneinrichtung oder stellt ein Verfahren dar, das durch eine Recheneinrichtung ausgeführt werden soll.
  • Konvolutionelle neuronale Netzwerke sind eine Art künstliches neuronales Feedforward-Netzwerk. Konvolutionelle neuronale Netzwerke können Ansammlungen von Neuronen enthalten, die jeweils ein rezeptives Feld aufweisen und gemeinsam einen Eingaberaum kacheln. Konvolutionelle neuronale Netzwerke (CNNs) haben zahlreiche Anwendungen. Insbesondere sind CNNs auf dem Gebiet der Mustererkennung und -klassifizierung weit verbreitet verwendet worden.
  • Bei der Nutzung tiefer konvolutioneller neuronaler Netzwerke stellen sich bei der Entwicklung geeigneter Strukturen neuronaler Netzwerke, insbesondere bei der Entwicklung von Grund auf, einige Fragen. Diese beinhalteten, um nur einige zu nennen, eine Definition eines geeigneten neuronalen Netzwerktyps, das Bestimmen einer Anzahl und einer Position von Eingaben, das Bestimmen einer Anzahl verborgener Schichten (Hidden Layers), die im Fall eines tiefen konvolutionellen neuronalen Netzwerks verwendet werden sollen, und das Bestimmen einer Anzahl erforderlicher Ausgabeneuronen. Diese Fragen sind wichtig, da im Falle eines zu großen/zu kleinen neuronalen Netzwerks das neuronale Netzwerk möglicherweise die Bilddaten über- bzw. unterbestimmen könnte. Infolgedessen würde das neuronale Netzwerk nicht in geeigneter Weise lernen anhand bereitgestellter Trainingsdaten geeignet zu generalisieren. In solchen Fällen kann, auch wenn der Fehler bei den Trainingsdaten auf einen sehr kleinen Wert unterdrückt wird, der Fehler zu groß sein, wenn dem neuronalen Netzwerk neue Bilddaten, d.h. von den zuvor zum Trainieren des neuronalen Netzwerks verwendeten Trainingsdaten verschiedene Bilddaten, präsentiert werden. In diesem Fall hat das neuronale Netzwerk die Trainingsdaten gespeichert, aber es hat nicht gelernt, anhand der bereitgestellten Trainingsdaten zu generalisieren, was für derartige neue Situationen mit neuen Bilddaten aber nötig wäre. Aufgrund dessen ist bei der Verwendung derartiger neuronaler Netzwerke ein geeignetes Training mit geeigneten Trainingsdaten extrem wichtig, die auf verschiedene neuronale Netzwerke angewendet werden können, um die Leistungsfähigkeit der verschiedenen neuronalen Netzwerke zu bewerten und miteinander zu vergleichen.
  • Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Verfahren zum Trainieren eines tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten für Anwendungen in einem Fahrunterstützungssystem eines Fahrzeugs unter Verwendung eines Satzes von Trainingsdaten, die Umgebungsinformation enthalten, eine Datenverarbeitungsvorrichtung zum Ausführen des oben beschriebenen Verfahrens und ein Fahrunterstützungssystem anzugeben, die ein effizientes Training eines tiefen konvolutionellen neuronalen Netzwerks und eine Verbesserung der Leistungsfähigkeit bei Anwendung des tiefen konvolutionellen neuronalen Netzwerks ermöglichen, selbst bei unausgewogenen Sätzen von Trainingsdaten.
  • Die Lösung dieser Aufgabe erfolgt durch die unabhängigen Ansprüche. Vorteilhafte Ausgestaltungen sind in den Unteransprüchen angegeben.
  • Insbesondere ist durch die vorliegenden Erfindung ein Verfahren zum Trainieren eines tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten für Anwendungen in einem Fahrunterstützungssystem eines Fahrzeugs unter Verwendung eines Satzes von Trainingsdaten angegeben, die Umgebungsinformation enthalten, mit den Schritten: Bereitstellen eines tiefen konvolutionellen neuronalen Netzwerks, Bereitstellen eines Satzes von Trainingsdaten, die Umgebungsinformation mit feinkörnigen Klassen und grobkörnigen Klassen enthalten, wobei den feinkörnigen Klassen und den grobkörnigen Klassen Ground-Truth-Label zugeordnet sind, Modifizieren des Satzes von Trainingsdaten derart, dass sie nur feinkörnige Klassen aufweisen, und Ausführen eines Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks unter der Steuerung des selbstinkrementellen Transferlernens, wobei der Satz von Trainingsdaten durch eine gewichtete Kreuzentropie-Verlustfunktion trainiert wird. Gemäß einer modifizierten Ausführungsform wird der Satz von Trainingsdaten mit einer gewichteten Kreuzentropie-Verlustfunktion gemäß der Gleichung G e w i c h t e t e r   V e r l u s t = i N ω i L i  log ( S i )
    Figure DE102018129871A1_0001
    trainiert, wobei
    • N eine Anzahl feinkörniger Klassen ist,
    • Li eine durch die Softmax-Schicht ausgegebene vorhergesagte Wahrscheinlichkeit ist,
    • Si ein One-Hot-Encoded Ground-Truth-Label ist, und
    • ωi eine Gewichtung pro feinkörniger Klasse ist, und
    wobei die Modelldaten des Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks gespeichert werden.
  • Durch die Erfindung ist eine einfache, aber effiziente Verbesserung für tiefe konvolutionelle neuronale Netzwerke (Deep Convolutional Network, DCNN) angegeben, insbesondere zum Trainieren eines tiefen neuronalen Netzwerks unter der Steuerung von selbstinkrementellem Transferlernen. Inkrementelle Verfahren bieten Lösungen zum sequenziellen Verarbeiten der Lerndaten unter Verwendung von Teilmengen des Trainingsdatensatzes.
  • Eine inkrementelle Technik ist so definiert, dass sie in der Lage ist, zusätzliche Information von neuen Daten zu lernen. Sie erfordert keinen Zugriff auf die Originaldaten, die zum Trainieren der vorhandenen Klassifizierer verwendet werden (um die Speicherauslastung zu begrenzen), behält das zuvor erworbene Wissen und ist in der Lage, neue Klassen aufzunehmen, die möglicherweise mit neuen Daten eingeführt werden. Beim typischen Transferlernen werden die Daten einer Quellaufgabe verwendet, um die Zielaufgabe zu trainieren, indem von der Quellaufgabe erworbenes Vorwissen auf die Zielaufgabe übertragen wird. Beispielsweise kann ein gut trainiertes Netzwerk zum Klassifizieren inhaltsreicher Bilder für eine andere Aufgabe genutzt werden, die mit dem Bildklassifizierungsziel in Beziehung steht. Normalerweise wird ein bezüglich einer Quellaufgabe vortrainiertes Netzwerk für eine andere Zielaufgabe verwendet, indem die Parameter der unteren Schichten, die die allgemeineren Schichten sind, eingefroren werden und nur einige obere Schichten, die die spezifischeren Schichten sind, fein abgestimmt werden. Transferlernen kann als die Aufgabe beschrieben werden, das in einer oder in mehreren Anwendungen erlernte Wissen zu bewahren und anzuwenden, um eine effektive Hypothese (Modell) für eine neue Anwendung effizient zu entwickeln. Selbstinkrementelles Transferlernen ist nun Lernen von der gleichen Aufgabe.
  • Es wird ein Satz Trainingsdaten mit Umgebungsinformation mit feinkörnigen Klassen und grobkörnigen Klassen bereitgestellt, wobei den feinkörnigen Klassen und den grobkörnigen Klassen Ground-Truth-Label zugeordnet sind.
  • Feinkörnige Klassen sind die nicht-dominanten Klassen, die nur einige Punkte enthalten, die vom Klassenobjekt erhalten werden. Grobkörnige Klassen sind die dominanten Klassen, die eine relativ große Anzahl von Punkten enthalten, die vom Klassenobjekt erhalten werden.
  • Der Schritt zum Modifizieren des Satzes von Trainingsdaten derart, dass sie nur feinkörnige Klassen enthalten, bezieht sich darauf, zunächst mit den feinkörnigen Klassen zu beginnen, um in den anschließenden Lernphasen von diesen Modelldaten zu profitieren.
  • Die Wahl der Optimierungsalgorithmen und Verlustfunktionen kann für ein tiefes Lernmodell eine große Rolle beim Erzeugen optimaler und schnellerer Ergebnisse spielen. Kreuzentropie gibt die Differenz zwischen dem, was das Modell als Ausgabeverteilung voraussetzt, und dem an, was die ursprüngliche Verteilung wirklich ist. Kreuzentropieverlust ist eine Verlustfunktion, die den natürlichen Logarithmus verwendet. Dies trägt dazu bei, das Training für neuronale Netzwerke im Vergleich zum quadratischen Verlust zu beschleunigen.
  • Die normale Kreuzentropie-Verlustfunktion V e r l u s t = i N L i  log ( S i )
    Figure DE102018129871A1_0002
    pönalisiert die Falschklassifizierung für alle Klassen gleichermaßen. Erfindungsgemäß wird die gewichtete Kreuzentropie-Verlustfunktion verwendet, um die Falschklassifizierung feinkörniger Klassen stärker als diejenige grobkörniger Klassen zu pönalisieren.
  • Grundidee der Erfindung ist es daher, sowohl den gewichteten Verlust pro Klasse als auch das selbstinkrementelle Transferlernen zu integrieren, um die Klassifizierung für alle feinkörnigen und grobkörnigen Klassen zu verbessern. Damit wird eine neue, verallgemeinerte, flexible und natürliche Methodik für Datensätze mit unausgewogenen Klassen vorgeschlagen, die sowohl eine Klassengewichtung als auch das inkrementelle Hinzufügen von Klassen aufweist.
  • Das mit dem vorgeschlagenen Verfahren trainierte neuronale Netzwerk ist ein tiefes konvolutionelles neuronales Netzwerk (Deep Convolutional Neural Network, DCNN) zum Verarbeiten von Bilddaten. DCNNs sind eine besondere Implementierung allgemeinerer konvolutioneller neuronaler Netzwerke (CNNs). CNNs weisen eine Eingabe- und eine Ausgabeschicht sowie mehrere verborgene Schichten auf. Die verborgenen Schichten eines CNN bestehen typischerweise aus konvolutionellen Schichten, Pooling-Schichten, Fully-Connected-Schichten und Normalisierungsschichten. Die konvolutionellen Schichten wenden eine Faltungsoperation auf die Eingabe an, wobei das Ergebnis an die nächste Schicht übergeben wird. Die Faltung emuliert die Antwort eines einzelnen Neurons auf visuelle Reize.
  • Solche DCNNs werden im Zusammenhang mit Fahranwendungen in Fahrzeugen immer mehr verwendet. Daher werden die DCNNs z.B. in Fahrunterstützungssystemen von Fahrzeugen eingesetzt. Die Fahrunterstützungssysteme umfassen Fahrerassistenzsysteme, die einen menschlichen Fahrer des Fahrzeugs in verschiedenen Fahrsituationen unterstützen, und Systeme, die autonomes Fahren des Fahrzeugs durch Bereitstellen einer Eingabe für einen zuverlässigen Umgang mit unterschiedlichen Verkehrssituationen unterstützen.
  • Durch die vorliegende Erfindung ist auch eine Datenverarbeitungsvorrichtung zum Ausführen des obigen Verfahrens angegeben.
  • Durch die vorliegende Erfindung ist ferner ein Computerprogrammprodukt angegeben, das Anweisungen enthält, die, wenn das Computerprogrammprodukt durch die Datenverarbeitungsvorrichtung ausgeführt wird, veranlassen, dass die Datenverarbeitungsvorrichtung die Schritte des obigen Verfahrens ausführt.
  • Durch die vorliegende Erfindung ist außerdem ein Fahrunterstützungssystem zum Ausführen des vorstehenden Verfahrens angegeben.
  • Gemäß einer modifizierten Ausführungsform der Erfindung weist der Schritt zum Modifizieren des Satzes von Trainingsdaten zum Erhalten nur feinkörniger Klassen den Schritt zum Ändern der Ground-Truth-Label der grobkörnigen Klassen auf, derart, dass diese keine Objektklassen sind.
  • Gemäß einer weiteren modifizierten Ausführungsform der Erfindung weist der Schritt zum Ausführen eines Trainingsschritts des konvolutionellen neuronalen Netzwerks unter der Steuerung des selbstinkrementellen Transferlernens den Schritt zum Berechnen der Gewichte ωi auf der Grundlage der Häufigkeit jeder feinkörnigen Klasse in dem Satz von Trainingsdaten entsprechend der Anzahl an Punktdatensätzen dieser Klasse in Bezug auf die gesamten Trainingsdaten auf. Gemäß einer modifizierten Ausführungsform werden die Gewichte ωi gemäß der Gleichung G e w i c h t   d e r   K l a s s e   ( i ) = log ( 1 + P u n k t e   d e r   K l a s s e   ( i ) P u n k t e   d e r    g e s a m t e n   K l a s s e n + ε ) 1
    Figure DE102018129871A1_0003
    berechnet, wobei ε eine kleine Zahl ist.
  • Gemäß einer modifizierten Ausführungsform der Erfindung weist der Schritt zum Bereitstellen eines Satzes von Trainingsdaten, der Umgebungsinformation mit feinkörnigen Klassen und grobkörnigen Klassen enthält, den Schritt zum Bereitstellen von Sensordaten als Trainingsdaten von mindestens einem Umgebungssensor auf. Umgebungssensoren, die in Fahrzeugen zum Erfassen der Fahrzeugumgebung verwendet werden, sind z.B. Radar-, LiDAR-, Kamera- und Ultraschallsensoren.
  • Gemäß einer weiteren modifizierten Ausführungsform der Erfindung weist der Schritt zum Trainieren des tiefen konvolutionellen neuronalen Netzwerks ferner die Schritte zum Modifizieren des Trainingsdatensatzes, um zusätzlich zu den vorherigen feinkörnigen Klassen eine der grobkörnigen Klassen hinzuzufügen, Trainieren des gleichen Modells mittels Laden des Datenmodells des Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks, bis ein stabiles Modell vorliegt, das in der Lage ist, diese Klassen zu erfassen, und Wiederholen der Trainingsschritte auf, bis ein Modell für die gesamten Klassen erhalten wird. Das Modell ist aufgebaut auf kontinuierlichem Lernen, das mit den feinkörnigen Klassen startet und das gelernte Modell speichert, um in den nächsten Lernphasen von diesem Modell zu profitieren. Anschließend wird eine grobkörnige Klasse nach der anderen hinzugefügt, bis ein hinreichendes Modell sowohl für feinkörnige als auch für grobkörnige Klassen erhalten wird.
  • Gemäß einer modifizierten Ausführungsform der Erfindung weist der Schritt zum Ausführen eines Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks unter der Steuerung des selbstinkrementellen Transferlernens den Schritt zum Trainieren des Modells unter Verwendung der feinkörnigen Klassen auf, bis ein stabiles Modell erhalten wird, das in der Lage ist, die feinkörnigen Klassen zu erfassen.
  • Gemäß einer anderen modifizierten Ausführungsform der Erfindung wird das Verfahren als lokales Verfahren implementiert, das im Fahrunterstützungssystem implementiert wird.
  • Gemäß einer modifizierten Ausführungsform der Erfindung weist der Schritt zum Bereitstellen eines Satzes von Trainingsdaten mit Umgebungsinformation mit feinkörnigen Klassen und grobkörnigen Klassen das Bereitstellen des Satzes von Trainingsdaten unter Verwendung mindestens eines mit dem Fahrunterstützungssystem verbundenen Umgebungssensors auf. Der Umgebungssensor kann mehrere Sensoren aufweisen, insbesondere einen Strahlungssensor (Radar/LiDAR/Ultraschall) und einen Kamerasensor (Monokamera/Stereokamera).
  • Gemäß einer weiteren modifizierten Ausführungsform der Erfindung weist der Schritt zum Bereitstellen des Satzes von Trainingsdaten unter Verwendung mindestens eines mit dem Fahrunterstützungssystem verbundenen Umgebungssensors den Schritt zum Bereitstellen des Satzes von Trainingsdaten unter Verwendung mindestens eines LiDAR-Sensors auf, der mit dem Fahrunterstützungssystem verbunden ist. Der Zweck des letzteren besteht darin, einen genauen Abstand zwischen dem Sensor und einem Ziel zu messen. Bei autonomen Fahrzeugen liefert er die Abstandsinformation der Hindernisse in der Umgebung in Bezug auf die Fahrzeugposition. Die neuesten LiDAR-Sensoren können eine dichte 3D-Punktwolke erzeugen. Mit der vorliegenden Erfindung kann die komplette 3-D-Punktwolke etikettiert werden, so dass die erwartete Ausgabe eine Punktfür-Punkt-Etikettierung der 3-D-Punktwolkendaten ist. LiDAR-Daten werden zum Erzeugen von Bereichsvorschlägen durch Verarbeiten der durch sie bereitgestellten dreidimensionalen Punktwolke genutzt.
  • Diese und andere Aspekte der Erfindung werden unter Bezug auf die nachfolgend beschriebenen Ausführungsformen ersichtlich und erläutert. Einzelne Merkmale, die in den Ausführungsformen angegeben sind, können für sich alleine oder in Kombination einen Aspekt der vorliegenden Erfindung bilden. Merkmale der verschiedenen Ausführungsformen können von einer Ausführungsform auf eine andere Ausführungsform übertragen werden.
  • Es zeigen:
    • 1 eine Darstellung eines bekannten Trainingsverfahrens für ein neuronales Netzwerk;
    • 2 ein Diagramm von selbstinkrementellem Transferlernen für inkrementelle Datensätze basierend auf Klassen für verschiedene Trainingsphasen; und
    • 3 ein Ablaufdiagramm eines Verfahrens zum Trainieren eines tiefen konvolutionellen neuronalen Netzwerks (Deep Convolutional Neural Network, DCNN) zum Verarbeiten von Bilddaten zur Anwendung in einem Fahrunterstützungssystem eines Fahrzeugs gemäß einer ersten bevorzugten Ausführungsform.
  • 1 zeigt eine Darstellung eines bekannten Verfahrens zum Trainieren eines neuronalen Netzwerks unter Verwendung von Transferlernen. Während beim herkömmlichen maschinellen Lernen der gleiche Merkmalsraum oder die gleiche Merkmalsverteilung sowohl für die Trainings- als auch für die Testdaten vorausgesetzt wird, können diese beim Transferlernen unterschiedlich sein. Bei typischem Transferlernen werden die Daten der Quellaufgabe 1 verwendet, um die Zielaufgabe 2 zu trainieren, indem von der Quellaufgabe 1 erworbenes Vorwissen auf die Zielaufgabe 2 übertragen wird. Beispielsweise kann ein gut trainiertes Netzwerk zum Klassifizieren inhaltsreicher Bilder für eine andere Zielaufgabe verwendet werden, die mit Bildklassifizierung in Beziehung steht. Normalerweise wird ein für eine Quellaufgabe 1 vortrainiertes Netzwerk für eine andere Zielaufgabe 2 verwendet, indem die Parameter der unteren Schichten 4, welche allgemeinere Schichten sind, eingefroren werden und nur einige obere Schichten 3, die spezifischer sind, fein abgestimmt werden. Transferlernen kann als Aufgabe zum Bewahren und Anwenden des in einer oder in mehreren Aufgaben gelernten Wissens zum effizienten Entwickeln einer effektiven Modellhypothese für eine neue Aufgabe beschrieben werden.
  • 2 zeigt ein Diagramm zum selbstinkrementellen Transferlernen für inkrementelle Datensätze basierend auf Klassen für verschiedene Trainingsphasen. Typisches Transferlernen wird normalerweise verwendet, um das Wissen, das durch eine Quellaufgabe erlernt wurde, zum Unterstützen des Lernens einer anderen Zielaufgabe zu nutzen. 2 zeigt inkrementelles Transferlernen, das Lernen von der gleichen Aufgabe und die Fähigkeit bezeichnet, das in der Vergangenheit erworbene Wissen zum Lernen neuer Aufgaben vorteilhaft zu nutzen, wobei ωi die Gewichtung pro Klasse bezeichnet und ω1 > ω2 > ω3 > ω4 > ω5 ist. Der Vorteil des selbstinkrementellen Transferlernens besteht darin, dass sowohl feinkörnige als auch grobkörnige Klassen erfasst und korrekt klassifiziert werden können.
  • 3 zeigt ein Ablaufdiagramm eines Verfahrens zum Trainieren eines tiefen konvolutionellen neuronalen Netzwerks (DCNN) zum Verarbeiten von Bilddaten zur Anwendung in einem Fahrunterstützungssystem eines Fahrzeugs gemäß einer ersten bevorzugten Ausführungsform. Das mit dem vorgeschlagenen Verfahren trainierte neuronale Netzwerk ist ein tiefes konvolutionelles neuronales Netzwerk (DCNN) zum Verarbeiten von Bilddaten. Das DCNN ist eine besondere Implementierung eines konvolutionellen neuronalen Netzwerks (CNN), das eine Eingabe- und eine Ausgabeschicht zusammen mit mehreren verborgenen Schichten aufweist, die zwischen der Eingabeschicht und der Ausgabeschicht angeordnet sind. Die verborgenen Schichten eines CNN umfassen typischerweise konvolutionelle Schichten, Pooling-Schichten, Fully-Connected-Schichten und Normalisierungsschichten. Die konvolutionellen Schichten wenden eine Faltungsoperation auf die Eingabe an, wobei das Ergebnis an die nächste Schicht übergeben wird. Die Faltung emuliert die Antwort eines einzelnen Neurons auf visuelle Reize.
  • Das DCNN wird in der Fahranwendung in einem Fahrzeug verwendet. Daher werden die DCNNs in einem Fahrunterstützungssystem des Fahrzeugs eingesetzt. Das Fahrunterstützungssystem ist ein System, das einen menschlichen Fahrer des Fahrzeugs in verschiedenen Fahrsituationen unterstützt, oder ein System, welches autonomes Fahren des Fahrzeugs durch Eingabe von Information unterstützt, um mit unterschiedlichen Verkehrssituationen zuverlässig umzugehen.
  • Das Verfahren beginnt mit Schritt S100. Schritt S100 bezieht sich auf das Bereitstellen eines Satzes von Trainingsdaten mit Umgebungsinformation mit feinkörnigen Klassen und grobkörnigen Klassen, wobei die feinkörnigen Klassen und die grobkörnigen Klassen mit Ground-Truth-Label versehen sind. Dieser Satz von Trainingsdaten können z.B. 3D-Punktwolkendaten sein, die von einem LiDAR-Sensor eines Fahrzeugs bereitgestellt werden. Der Satz von Trainingsdaten besteht aus feinkörnigen und grobkörnigen Klassen. Feinkörnige Klassen sind die nicht-dominanten Klassen, die nur eine geringe Anzahl von Punkten enthalten, die vom Klassenobjekt erhalten werden. Grobkörnige Klassen sind die dominanten Klassen, die eine relativ große Anzahl von Punkten enthalten, die vom Klassenobjekt erhalten werden.
  • In Schritt S110 wird der Satz von Trainingsdaten so modifiziert, dass er nur die feinkörnigen Klassen enthält. Dies geschieht durch Ändern der Ground-Truth-Label der grobkörnigen Klassen, derart, dass sie keine Objektklasse sind.
  • In Schritt S120 besteht der Satz von Trainingsdaten nur aus feinkörnigen Klassen. Dieser Satz von Trainingsdaten wird zum Trainieren des tiefen konvolutionellen neuronalen Netzwerks verwendet.
  • Schritt S130 bezieht sich auf das Ausführen eines Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks unter der Steuerung des selbstinkrementellen Transferlernens, wobei der Satz von Trainingsdaten durch eine gewichtete Kreuzentropie-Verlustfunktion gemäß der Gleichung G e w i c h t e t e r   V e r l u s t = i N ω i L i  log ( S i )
    Figure DE102018129871A1_0004
    trainiert wird, wobei N eine Anzahl feinkörniger Klassen, Li eine von der Softmax-Schicht ausgegebene vorhergesagte Wahrscheinlichkeit, Si ein One-Hot-Encoded Ground-Truth-Label und ωi ein Gewicht pro feinkörnige Klasse ist. Ferner weist in Schritt S130 das Ausführen eines Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks unter der Steuerung des selbstinkrementellen Transferlernens den Schritt zum Berechnen von Gewichten ωi basierend auf der Häufigkeit jeder Klasse in dem Satz von Trainingsdaten gemäß der Anzahl an Punktdatensätzen dieser Klasse in Bezug auf die Gesamtzahl an Punktdatensätzen in den Trainingsdaten gemäß der Gleichung G e w i c h t u n g   d e r   K l a s s e   ( i ) = log ( 1 + P u n k t e   d e r   K l a s s e   ( i ) P u n k t e   d e r    g e s a m t e n   K l a s s e n + ε ) 1
    Figure DE102018129871A1_0005
    auf, wobei ε eine kleine Zahl ist. Das neuronale Netzwerk wird nur unter Verwendung der feinkörnigen Klassen trainiert, bis ein stabiles Modell vorliegt, das in der Lage ist, diese Klassen zu erfassen.
  • Schritt S140 bezieht sich auf das Speichern der Modelldaten des Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks, wie sie nach dem ersten Trainingsschritt erhalten wurden. Die Modelldaten sind die vortrainierten individuellen Modelldaten des tiefen konvolutionellen neuronalen Netzwerks.
  • Schritt S150 bezieht sich auf das Modifizieren des Satzes von Trainingsdaten, um zusätzlich zu den vorherigen feinkörnigen Klassen eine der grobkörnigen Klassen hinzuzufügen.
  • In Schritt S160 besteht der Satz von Trainingsdaten aus feinkörnigen Klassen mit einer grobkörnigen Klasse. Dieser Satz von Trainingsdaten wird in Schritt S170 verwendet, um das gleiche Modell durch Laden der in Schritt S140 gespeicherten vortrainierten individuellen Modelldaten zu trainieren, bis ein stabiles Modell vorliegt, das in der Lage ist, die Klassen zu erfassen. Im Allgemeinen gelten die gleichen Prinzipien, die oben in Bezug auf das Ausführen des ersten Trainingsschritts S130 erörtert wurden, auch für das Ausführung des zweiten Trainingsschritts S170.
  • Schritt S180 bezieht sich auf das Speichern der Modelldaten des Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks, wie sie nach dem zweiten Trainingsschritt erhalten wurden.
  • Bezugszeichenliste
  • 1
    Quellaufgabe
    2
    Zielaufgabe
    3
    Obere Schicht
    4
    Untere Schichten

Claims (12)

  1. Verfahren zum Trainieren eines tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten für Anwendungen in einem Fahrunterstützungssystem eines Fahrzeugs unter Verwendung eines Satzes von Trainingsdaten mit Umgebungsinformation, mit den Schritten: Bereitstellen eines tiefen konvolutionellen neuronalen Netzwerks; Bereitstellen eines Satzes von Trainingsdaten mit Umgebungsinformation mit feinkörnigen Klassen und grobkörnige Klassen, wobei den feinkörnigen Klassen und grobkörnigen Klassen Ground-Truth-Label zugeordnet sind; Modifizieren des Satzes von Trainingsdaten derart, dass er nur feinkörnige Klassen enthält; Ausführen eines Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks unter der Steuerung von selbstinkrementellem Transferlernen, wobei der Satz von Trainingsdaten mit einer gewichteten Kreuzentropie-Verlustfunktion trainiert wird; und Speichern der Modelldaten des Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Schritt zum Modifizieren des Satzes von Trainingsdaten derart, dass er nur feinkörnige Klassen enthält, den Schritt zum Ändern der Ground-Truth-Label der grobkörnigen Klassen derart aufweist, dass sie keine Objektklassen darstellen.
  3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Schritt zum Ausführen eines Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks unter der Steuerung des selbstinkrementellen Transferlernens den Schritt zum Berechnen der Gewichte ωi basierend auf der Häufigkeit jeder feinkörnigen Klasse in dem Satz von Trainingsdaten gemäß der Anzahl von Punktdatensätzen dieser Klasse in Bezug auf die Gesamtzahl an Punktdatensätzen in den Trainingsdaten aufweist.
  4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Schritt zum Bereitstellen eines Satzes von Trainingsdaten mit Umgebungsinformation mit feinkörnigen Klassen und grobkörnigen Klassen den Schritt zum Bereitstellen von Sensordaten als Trainingsdaten von mindestens einem Umgebungssensor aufweist.
  5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Schritt zum Trainieren des tiefen konvolutionellen neuronalen Netzwerks ferner die Schritte aufweist: Modifizieren des Trainingsdatensatzes zum Hinzufügen einer der grobkörnigen Klassen zusätzlich zu den vorherigen feinkörnigen Klassen; Trainieren des gleichen Models mittels Laden der Modelldaten des Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks, bis ein stabiles Modell vorliegt, das in der Lage ist, diese Klassen zu erfassen; und Wiederholen der Trainingsschritte, bis ein Modell für die gesamten Klassen erhalten wird.
  6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Schritt zum Ausführen eines Trainingsschritts des tiefen konvolutionellen neuronalen Netzwerks unter der Steuerung des selbstinkrementellen Transferlernens den Schritt zum Trainieren des Modells unter Verwendung der feinkörnigen Klassen aufweist, bis ein stabiles Modell vorliegt, das in der Lage ist, die feinkörnigen Klassen zu erfassen.
  7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren als ein lokales Verfahren im Fahrunterstützungssystem implementiert wird.
  8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass der Schritt zum Bereitstellen eines Satzes von Trainingsdaten mit Umgebungsinformation mit feinkörnigen Klassen und grobkörnigen Klassen den Schritt zum Bereitstellen eines Satzes von Trainingsdaten unter Verwendung mindestens eines mit dem Fahrunterstützungssystem verbundenen Umgebungssensors aufweist.
  9. Verfahren nach dem Anspruch 8, dadurch gekennzeichnet, dass der Schritt zum Bereitstellen des Satzes von Trainingsdaten unter Verwendung mindestens eines mit dem Fahrunterstützungssystem verbundenen Umgebungssensors den Schritt zum Bereitstellen des Satzes von Trainingsdaten unter Verwendung mindestens eines mit dem Fahrunterstützungssystem verbundenen LiDAR-Sensors aufweist.
  10. Datenverarbeitungsvorrichtung zum Ausführen des Verfahrens nach einem der vorhergehenden Verfahrensansprüche 1 bis 9.
  11. Computerprogrammprodukt mit Anweisungen, die, wenn das Computerprogrammprodukt durch die Datenverarbeitungsvorrichtung ausgeführt wird, bewirken, dass die Datenverarbeitungsvorrichtung die Schritte der Verfahrensansprüche 1 bis 9 ausführt.
  12. Fahrunterstützungssystem zum Ausführen eines Verfahrens nach einem der vorhergehenden Verfahrensansprüche 1 bis 9.
DE102018129871.4A 2018-11-27 2018-11-27 Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem Pending DE102018129871A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102018129871.4A DE102018129871A1 (de) 2018-11-27 2018-11-27 Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018129871.4A DE102018129871A1 (de) 2018-11-27 2018-11-27 Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem

Publications (1)

Publication Number Publication Date
DE102018129871A1 true DE102018129871A1 (de) 2020-05-28

Family

ID=70545578

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018129871.4A Pending DE102018129871A1 (de) 2018-11-27 2018-11-27 Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem

Country Status (1)

Country Link
DE (1) DE102018129871A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111860638A (zh) * 2020-07-17 2020-10-30 湖南大学 基于不平衡数据深度信念网络的并行入侵检测方法和系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111860638A (zh) * 2020-07-17 2020-10-30 湖南大学 基于不平衡数据深度信念网络的并行入侵检测方法和系统

Similar Documents

Publication Publication Date Title
DE102018128289B4 (de) Verfahren und vorrichtung für eine autonome systemleistung und zur einstufung
EP3765927B1 (de) Verfahren zum erzeugen eines trainingsdatensatzes zum trainieren eines künstlichen-intelligenz-moduls für eine steuervorrichtung eines fahrzeugs
DE102018008685A1 (de) Verfahren zum Trainieren eines künstlichen neuronalen Netzes, künstliches neuronales Netz, Verwendung eines künstlichen neuronalen Netzes sowie entsprechendes Computerprogramm maschinenlesbares Speichermedium und entsprechende Vorrichtung
DE102019209644A1 (de) Verfahren zum Trainieren eines neuronalen Netzes
EP3785169A1 (de) Verfahren und vorrichtung zur umsetzung eines eingangsbildes einer ersten domäne in ein ausgangsbild einer zweiten domäne
DE102019214402A1 (de) Verfahren und vorrichtung zum verarbeiten von daten mittels eines neuronalen konvolutionsnetzwerks
DE102019209560A1 (de) Vorrichtung und Verfahren zum Trainieren eines neuronalen Netzwerks
DE102018220941A1 (de) Auswertung von Messgrößen mit KI-Modulen unter Berücksichtigung von Messunsicherheiten
DE102019105850A1 (de) Verfahren zur Erzeugung eines reduzierten neuronalen Netzes für ein Steuergerät eines Fahrzeuges mithilfe von Eigenvektoren
DE112021005568T5 (de) Datenverarbeitungsvorrichtung und Datenverarbeitungsverfahren
DE102018113621A1 (de) Verfahren zum Trainieren eines konvolutionellen neuronalen Netzwerks zum Verarbeiten von Bilddaten zur Anwendung in einem Fahrunterstützungssystem
DE102018129871A1 (de) Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem
DE102020122979A1 (de) Verfahren zum Bereitstellen eines komprimierten, robusten neuronalen Netzes und Assistenzeinrichtung
DE102020210376A1 (de) Vorrichtung und Verfahren zum Steuern eines Hardware-Agenten in einer Steuersituation mit mehreren Hardware-Agenten
DE102020208765A1 (de) Bildklassifikator mit variablen rezeptiven Feldern in Faltungsschichten
DE112020006532T5 (de) Computersystem und verfahren mit ende-zu-ende modellierung für einen simulierten verkehrsagenten in einer simulationsumgebung
DE102019217952A1 (de) Verfahren und Vorrichtung zum Bereitstellen eines Trainingsdatensatzes zum Trainieren einer KI-Funktion auf eine unbekannte Datendomäne
DE102018112718A1 (de) Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente
DE102021132025A1 (de) Verfahren zum Bestimmen ähnlicher Szenarien, Trainingsverfahren und Trainingssteuergerät
DE102021208722A1 (de) Konfigurieren eines neuronalen Netzwerks auf äquivariantes oder invariantes Verhalten
DE102021208472B3 (de) Computerimplementiertes Verfahren zum Trainieren eines Machine-Learning-Modells für ein Fahrzeug oder einen Roboter
DE102021133977A1 (de) Verfahren und System zur Klassifikation von Szenarien eines virtuellen Tests sowie Trainingsverfahren
EP4191469A1 (de) Verfahren zum bestimmen ähnlicher szenarien,trainingsverfahren und trainingssteuergerät
EP4202779A1 (de) Verfahren und system zur klassifikation von szenarien eines virtuellen tests sowie trainingsverfahren
DE202022105585U1 (de) Ein System zur Entwicklung eines einheitlichen neuronalen Faltungsnetzmodells für die intelligente Entscheidungsfindung

Legal Events

Date Code Title Description
R163 Identified publications notified