-
Die vorliegende Erfindung betrifft die Erzeugung von Trainingsdaten für Systeme, die aus der physikalischen Beobachtung von Bereichen Entscheidungen für das Verhalten von Fahrzeugen und anderen technischen Systemen ableiten.
-
Stand der Technik
-
Damit sich ein Fahrzeug zumindest teilweise automatisiert im Straßenverkehr bewegen kann, ist es erforderlich, das Umfeld des Fahrzeugs zu erfassen und Gegenmaßnahmen einzuleiten, falls eine Kollision mit einem Objekt im Umfeld des Fahrzeugs droht. Auch die Erstellung einer Umfeld-Repräsentation und Lokalisierung sind für sicheres automatisiertes Fahren notwendig.
-
Um aus der physikalischen Beobachtung des Fahrzeugumfelds Entscheidungen bezüglich des weiteren Verhaltens des eigenen Fahrzeugs ableiten zu können, kommen vielfach Machine Learning-Module zum Einsatz. Analog einem menschlichen Fahrer, der bis zum Erwerb der Fahrerlaubnis typischerweise weniger als 100 Stunden fährt und weniger als 1000 km zurücklegt, können Machine Learning-Module das aus einem begrenzten Vorrat an Trainingsdaten geschöpfte Wissen auch auf eine Vielzahl weiterer Situationen verallgemeinern, die nicht Gegenstand des Trainings waren.
-
Da es keine einzige physikalische Abbildungsmodalität gibt, die unter allen nur denkbaren Umständen qualitativ hochwertige Messdaten liefert und eine eindeutige Entscheidung für das weitere Verhalten ermöglicht, ist es vorteilhaft, an ein und demselben Fahrzeug mehrere Abbildungsmodalitäten vorzusehen.
-
Offenbarung der Erfindung
-
Im Rahmen der Erfindung wurde ein Verfahren zum Trainieren eines Generators für synthetische Messdaten entwickelt. Der Generator ist dazu da, reale oder simulierte physikalische Messdaten, die sich auf die Beobachtung eines ersten Bereichs mit einer ersten physikalischen Beobachtungsmodalität Mod_A beziehen, in synthetische Messdaten umzuwandeln. Die mit der ersten Modalität Mod_A aufgenommenen Messdaten gehören einem ersten Raum X an, der durch die erste Modalität Mod_A definiert wird, d.h., sie „leben“ in diesem ersten Raum X. Diese synthetischen Messdaten beziehen sich auf die Beobachtung eines zweiten Bereichs, der den ersten Bereich zumindest teilweise überlappt, mit einer zweiten physikalischen Beobachtungsmodalität Mod_B. Die synthetischen Messdaten gehören einem zweiten Raum Y an, der durch die zweite Modalität Mod_B definiert wird, d.h., sie „leben“ in diesem zweiten Raum Y. In diesem Sinne wird die Formulierung „leben in einem bestimmten Raum“ auch im Folgenden verwendet.
-
Als Beobachtungsmodalitäten sind insbesondere solche Modalitäten geeignet, die jeweils Signale liefern, aus denen das Vorhandensein und/oder die Art von im Umfeld eines Fahrzeugs vorhandenen Objekten geschlossen werden kann. Die Beobachtungsmodalitäten können insbesondere beispielsweise auf unterschiedlichen physikalischen Kontrastmechanismen beruhen und sich somit dahingehend ergänzen, dass die Lücken, die in der mit nur einer Modalität durchgeführten Beobachtung verbleiben, durch eine oder mehrere weitere Modalitäten geschlossen werden.
-
Dies bedingt zugleich, dass die mit den Modalitäten Mod_A und Mod_B beobachteten Bereiche in der Regel nicht völlig deckungsgleich sein werden, da jede Modalität ihre Stärken und Schwächen hat. Insbesondere werden die Auflösungen und Reichweiten der Modalitäten Mod_A und Mod_B nicht gleich sein.
-
Alle real mit den Modalitäten Mod_A und Mod_B aufgenommenen Messdaten können in beliebiger Weise vorprozessiert werden. Beispielsweise kann aus einem Videobild der optische Fluss berechnet werden. Beispielsweise kann aus Radardaten ein „synthetic aperture radar“-Bild erzeugt werden.
-
Die hauptsächliche Nutzanwendung der mit dem Generator zu erzeugenden synthetischen Messdaten liegt darin, den Gesamtaufwand an Ressourcen für das Training von Machine Learning-Modulen, die mit mehreren Modalitäten Mod_A und Mod_B erfasste physikalische Messdaten verarbeiten, zu reduzieren. Ein erheblicher Teil dieses Gesamtaufwands steckt in der Beschaffung der Trainingsdaten. So wird beispielsweise menschliche Arbeitskraft eingesetzt, um Messfahrzeuge, die mit Kameras und/oder anderen Sensoren bestückt sind, durch den Verkehr zu bewegen und eine Menge von Verkehrssituationen mit hinreichender Variabilität zu erfassen. Sehr häufig tritt nun eine Situation ein, in der man bereits Trainingsdaten hat, die sich auf eine erste Beobachtungsmodalität Mod_A beziehen, aber das Machine Learning Modul dafür trainieren möchte, mit einer zweiten Beobachtungsmodalität Mod_B, oder auch mit einer Fusion der beiden Beobachtungsmodalitäten Mod_A und Mod_B, gewonnene Trainingsdaten zu verarbeiten. Beispielsweise kann beim Test eines kamerabasierten Systems für die Erkennung von Objekten im Fahrzeugumfeld zu Tage treten, dass in bestimmten Situationen die Bildqualität zu schlecht ist, und es kann der Wunsch aufkommen, dem System nun auch die Erkennung der Objekte aus Radardaten beizubringen. Ebenso kann der Wunsch aufkommen, ein ausschließlich auf der Basis von Radardaten arbeitendes System zu trainieren, obwohl bislang nur Trainingsdaten für ein kamerabasiertes System erfasst wurden. Bislang konnte in derartigen Situationen aus einer bereits vorhandenen großen Menge Kamerabilder kein Kapital geschlagen werden. Genau hierfür eröffnet das Trainingsverfahren für den Generator einen Weg.
-
Im Rahmen dieses Trainingsverfahrens wird dem Generator mindestens ein Ist-Signal zugeführt, das reale oder simulierte physikalische Messdaten aus mindestens einer Beobachtung des ersten Bereichs umfasst. Das Verhalten dieses Generators ist durch mindestens einen Satz trainierbarer Parameter charakterisiert. Wenn also im nächsten Schritt das Ist-Signal von dem Generator in ein transformiertes Signal übersetzt wird, das die zugehörigen synthetischen Messdaten repräsentiert und somit im Raum der mit der zweiten Beobachtungsmodalität Mod_B aufgenommenen physikalischen Messdaten lebt, dann geschieht dies nach Maßgabe der trainierbaren Parameter.
-
Es wird mit einer Kostenfunktion bewertet, inwieweit das transformierte Signal mit einem oder mehreren Soll-Signalen in Einklang steht. Dabei ist mindestens ein Soll-Signal aus realen oder simulierten Messdaten der zweiten physikalischen Beobachtungsmodalität Mod_B gebildet, die sich auf die durch das Ist-Signal repräsentierte Situation beziehen. Die trainierbaren Parameter, die das Verhalten des Generators charakterisieren, werden optimiert mit dem Ziel, transformierte Signale zu erhalten, die durch die Kostenfunktion besser bewertet werden.
-
Nach Abschluss dieses Trainings hat der Generator also eine Abbildung aus dem Raum X der physikalischen Messdaten, die durch Beobachtung mit der ersten physikalischen Beobachtungsmodalität Mod_A gewonnen wurden, einerseits und dem Raum Y der simulierten Messdaten, die den mit der zweiten physikalischen Beobachtungsmodalität Mod_B gewonnenen Messdaten gleichwertig sind, andererseits gelernt. Damit kann ein großer Vorrat an physikalischen Messdaten, die mit der ersten physikalischen Beobachtungsmodalität im Raum X aufgenommen wurden, genutzt werden, um an neue Trainingsdaten zu gelangen, die im Raum Y der mit der Modalität Mod_B gewonnenen Messdaten leben. Die Beschaffung neuer Trainingsdaten im Raum Y stellt dann also nur noch in einem geringeren Maße als bisher einen Engpass für das Training des Machine Learning-Moduls auf den Zweck dar, die im Rahmen der jeweiligen Anwendung gesuchten Schlüsse nicht mehr nur auf der Basis von mit der Modalität Mod_A gewonnenen Messdaten, sondern auch auf der Basis von mit der Modalität Mod_B gewonnenen Messdaten zu ziehen. Es kann also beispielsweise eine Erkennung von Objekten mit einem Machine Learning-Modul nicht mehr nur auf der Basis von Bildern, sondern alternativ oder auch in Kombination hierzu beispielsweise auf der Basis von Radardaten trainiert werden.
-
Die mit den physikalischen Beobachtungsmodalitäten Mod_A und Mod_B erzeugten Messdaten leben typischerweise in sehr verschiedenen Räumen, deren Dimensionen auch jeweils eine ganz andere semantische bzw. physikalische Bedeutung haben. So liegt beispielsweise ein Bild meistens als Sammlung von Pixeln vor, die jeweils Intensitäts- und/oder Farbwerte zu bestimmten Orten angeben. Radardaten liegen hingegen beispielsweise als Radarspektrum oder als Sammlung von Reflexen vor, denen beispielsweise jeweils eine Richtung in Form eines oder mehrerer Winkel, eine Entfernung, eine Intensität sowie optional auch eine Geschwindigkeit zugeordnet sein können. Auch ist beispielsweise die Reichweite eines Radars wesentlich größer als die einer Kamera, während andererseits die Winkelauflösung kleiner ist als bei einer Kamera. Umso überraschender ist es, dass die teilweise Überlappung der mit den beiden Modalitäten beobachteten Bereiche bereits ausreicht, damit der Generator die Übersetzung zwischen diesen sehr verschiedenen Räumen lernen kann.
-
Die Prüfung, inwieweit das transformierte Signal mit einem oder mehreren Soll-Signalen in Einklang steht, kann in vielfältiger Weise erfolgen. Beispielsweise kann die Kostenfunktion bewerten, inwieweit Lern-Ist-Signale aus einer vorgegebenen Quelle durch den Generator jeweils auf ein hierzu passendes, vorgegebenes Soll-Signal abgebildet werden. Eine solche Zuordnung durch den Generator ist aber keine zwingende Voraussetzung dafür, dass die vom Generator erzeugten synthetischen Messdaten gleichwertig mit durch tatsächliche Beobachtung mit der zweiten physikalischen Beobachtungsmodalität Mod_B erhaltenen physikalischen Messdaten für das weitere Training des Machine Learning-Moduls genutzt werden können. Vielmehr genügt es hierfür beispielsweise auch, wenn die synthetischen Messdaten nicht von den im gleichen Raum Y lebenden, mit der Modalität Mod_B erhaltenen Messdaten unterscheidbar sind.
-
Daher enthält in einer besonders vorteilhaften Ausgestaltung die Kostenfunktion einen GAN-Term, der umso bessere Werte annimmt, je ununterscheidbar das transformierte Signal nach Maßgabe eines Diskriminatormoduls von einer vorgegebenen Menge Soll-Signale ist. Das Diskriminatormodul wird zusätzlich darauf trainiert, transformierte Signale von Soll-Signalen zu unterscheiden.
-
Der Generator G ist in dieser Ausgestaltung in ein „conditional generative adversarial network“, kurz „conditional GAN“, eingebettet. Der Generator G erhält Ist-Signale x, sowie optional auch aus einer (beispielsweise normalverteilten) mehrdimensionalen Zufallsvariablen gezogene Samples z, als Eingabe und versucht, aus jedem Ist-Signal x ein transformiertes Signale y' zu erzeugen, das möglichst ununterscheidbar von einem zugeordneten Soll-Signal y ist. In diesem Kontext bedeutet „conditional“, dass der Generator G die Eingabe x (optional mit Samples z) auf eine Ausgabe G(x,z)=:y' abbildet, die sich auf die gleiche Szenerie bezieht. Es werden also nicht beispielsweise alle Ist-Signale x auf ein und dieselbe Ausgabe y', die am schwierigsten von einer gegebenen Menge Soll-Signale y zu unterscheiden ist, abgebildet. Das Diskriminatormodul D wird nur während des Trainings benötigt und kommt bei der späteren Erzeugung von Trainingsdaten mit dem Generator G, oder bei der noch späteren Verwendung dieser Trainingsdaten zum Training des eigentlichen Machine Learning-Moduls für die vorgesehene Anwendung, nicht mehr zum Einsatz.
-
Der GAN-Term kann beispielsweise folgende Form L
cGAN(G, D) annehmen:
Hierin bezeichnet E
x,y den Erwartungswert („sample mean“) über Paare von x und y. Entsprechend bezeichnet E
x,z den Erwartungswert über Paare von x und z. Der Generator G ist bestrebt, L
cGAN(G, D) zu minimieren, während der Diskriminator D bestrebt ist, L
cGAN(G, D) zu maximieren. Der optimale Generator G* ist dann die Lösung des Optimierungsproblems
Dabei bezeichnet
die Maximierung von L
cGAN(G, D) über die Parameter des Diskriminators D. Dementsprechend bezeichnet
die Minimierung über die Parameter des Generators G.
-
In einer weiteren besonders vorteilhaften Ausgestaltung enthält die Kostenfunktion zusätzlich einen Ähnlichkeits-Term, der umso bessere Werte annimmt, je ähnlicher das transformierte Signal nach Maßgabe einer vorgegebenen Metrik zu den Soll-Signalen ist. Dies wirkt noch stärker einer eventuellen Tendenz des Generators entgegen, die Ununterscheidbarkeit rein anhand eines zahlenmäßigen Kriteriums zu optimieren und hierfür „einfache Wege“ zu suchen, die im Hinblick auf die vorgesehene Anwendung nicht zielführend sind. Ist beispielsweise eine bestimmte Art von Objekt besonders schwierig von einer Darstellung in Form eines optischen Bildes in eine Darstellung in Form von Radardaten umzuwandeln, so kann sich der Generator nicht einfach einen besseren Wert von L
cGAN(G, D) „erschleichen“, indem er dieses schwierige Objekt einfach verschwinden lässt. Dies wird durch den Ähnlichkeits-Term vereitelt. Ein Beispiel für einen Ähnlichkeits-Term ist
Hierbei kann prinzipiell auch jede andere Metrik als die L1-Metrik verwendet werden.
-
In einer weiteren vorteilhaften Ausgestaltung enthält die Kostenfunktion zusätzlich einen Anwendungs-Term, der wünschenswerte Eigenschaften des transformierten Signals als solches für die beabsichtigte Anwendung misst. Dieser Anwendungs-Term wird auch als „Perceptual Loss“ LP(G) bezeichnet. Der Anwendungs-Term ist nicht darauf eingeschränkt, dass er nur vom Endergebnis der Übersetzung abhängen muss. Vielmehr kann er beispielsweise auch von Zwischenergebnissen der Übersetzung abhängen. Wenn der Generator etwa ein mehrschichtiges neuronales Netzwerk enthält, so können die Zwischenergebnisse auch auf den versteckten Schichten (hidden layers) zwischen der Eingabeschicht und der Ausgabeschicht entnommen werden.
-
Der Anwendungs-Term kann beispielsweise messen, ob die durch das transformierte Signal repräsentierte Szenerie im Sinne der jeweiligen Anwendung plausibel ist. So wird beispielsweise ein transformiertes Signal, gemäß dem ein Auto dreimal so hoch oder so breit ist wie üblich oder sich innerorts mit annähernd Schallgeschwindigkeit bewegt, verworfen. Alternativ oder in Kombination hierzu kann beispielsweise auch im Anwendungs-Term ein Vergleich mit Soll-Signalen auf einer abstrakten Ebene stecken. So kann beispielsweise eine Repräsentation, die ein Autoencoder oder ein anderes KNN aus dem transformierten Signal erzeugt, mit Repräsentationen verglichen werden, die das gleiche KNN aus Soll-Signalen erzeugt.
-
Mit dem Ähnlichkeits-Term und dem Anwendungs-Term lässt sich das Optimierungsproblem insgesamt beispielsweise schreiben als
Hierin sind λ und γ Hyperparameter, welche die verschiedenen Kostenfunktionsterme gewichten.
-
In einer weiteren besonders vorteilhaften Ausgestaltung wird ein Rück-Generatormodul darauf trainiert, transformierte Signale in Signale von der Art des Ist-Signals zurückzuübersetzen. Das heißt, die zurückübersetzten Ist-Signale leben im gleichen Raum wie die ursprünglichen Ist-Signale. Die Kostenfunktion enthält dann zusätzlich einen Rück-GAN-Term. Dieser Rück-GAN-Term nimmt umso bessere Werte an, je ununterscheidbarer die zurückübersetzten Signale nach Maßgabe eines weiteren Diskriminatormoduls von den Ist-Signalen sind.
-
Das weitere Diskriminatormodul wird darauf trainiert, die zurückübersetzten Signale von den Ist-Signalen zu unterscheiden. Zusätzlich enthält die Kostenfunktion noch einen Konsistenzterm. Dieser Konsistenzterm ist ein Maß dafür, inwieweit Ist-Signale bei Übersetzung durch das Generatormodul und Rückübersetzung durch das Rück-Generatormodul identisch reproduziert werden.
-
Bei einem Training dieser Art ist die Architektur, in die der Generator eingebunden ist, von einem „conditional GAN“ zu einem CycleGAN erweitert. Der wesentliche Vorteil ist, dass die Soll-Signale sich nicht mehr auf die gleichen Szenerien beziehen müssen wie die Ist-Signale bzw. Ist-Darstellungen. Es ist die große Stärke von CycleGANs, dass sie Daten zwischen Domänen übersetzen können, die jeweils durch ungepaarte Mengen von Beispielen charakterisiert sind.
-
Dies kann das Training erheblich vereinfachen und verbilligen, insbesondere dann, wenn der Generator das Ist-Signal nicht nur in den Raum Y der mit der zweiten physikalischen Beobachtungsmodalität Mod_B aufgenommenen Messdaten, sondern auch noch in zu weiteren Beobachtungsmodalitäten gehörende Räume übersetzen soll. Je mehr Modalitäten berücksichtigt werden sollen, desto schwieriger wird es, die gleiche Szenerie mit allen Modalitäten aufzunehmen. Auch wird beispielsweise ein zuvor mit der ersten physikalischen Beobachtungsmodalität Mod_A, etwa einer Kamera, aufgenommener Vorrat an Daten nicht plötzlich für weitere Trainings des Generators „entwertet“, wenn sich an der aufgenommenen Szenerie etwas geändert hat. So kann sich beispielsweise das Straßenbild nachhaltig dahingehend geändert haben, dass nach den ursprünglichen Kameraaufnahmen eine Straße auf einer längeren Strecke mit einem anders texturierten Flüsterasphalt belegt wurde oder dass eine Spur auf einer längeren Strecke in optisch auffälliger Weise als „Umweltspur“ markiert wurde. Je größer das Gebiet ist, in dem die Daten aufgenommen wurden, desto schwieriger ist es, über derartige Änderungen Buch zu führen.
-
Weiterhin können die mit der ersten physikalischen Beobachtungsmodalität Mod_A aufgenommenen Daten auch dann noch in vollem Umfang weitergenutzt werden, wenn der für die physikalische Datenaufnahme mit der zweiten Beobachtungsmodalität Mod_B verwendete Sensor gewechselt wird. Beispielsweise kann ein zunächst für Tests verwendeter Radarsensor sich später als nicht tauglich oder als zu teuer für den Serieneinsatz im Fahrzeug erweisen. Nach dem Tausch des Radarsensors genügt es, mit diesem neuen Radarsensor neue Radarsignale im Raum Y aufzunehmen. Es ist aus diesem Anlass jedoch nicht notwendig, mit der ebenfalls installierten Kamera neue Bilder im Raum X aufzunehmen.
-
Das CycleGAN lernt wie das „conditional GAN“ eine Abbildung G vom Raum X, in dem die Ist-Signale leben, in den Raum Y, in dem die erzeugten synthetischen Messdaten y leben. Zusätzlich wird die umgekehrte Abbildung F vom Raum Y in den Raum X gelernt. Es wird ein erster Diskriminator D
x gelernt, der versucht, zwischen generierten Daten F(y) und realen Ist-Signalen x zu unterscheiden. Es wird ein zweiter Diskriminator D
y gelernt, der versucht, zwischen generierten Daten G(x) und realen Soll-Signalen y zu unterscheiden. Dies lässt sich beispielsweise ausdrücken in den Kostenfunktionstermen
und
Hierin sind z
1 und z
2 Samples von Zufallsvariablen Z
1 und Z
2. Die Verwendung der Zufallsvariablen Z
1 und Z
2 ist optional.
-
Ein beispielhafter Konsistenzterm, der die Einhaltung der Konsistenzbedingungen F(G(x)) ≈ x und G(F(y)) ≈ y überwacht, ist
-
Die gesamte Kostenfunktion für das CycleGAN lässt sich dann beispielsweise schreiben als
-
Auch diese Kostenfunktion lässt sich analog zum „conditional GAN“ (cGAN) erweitern um einen Anwendungs-Term LP, der nun sowohl von G als auch von F abhängt: Lp= L(G, F). Dieser Term kann beispielsweise mit Gewicht y addiert werden.
-
Ebenso können der Kostenfunktion für das CycleGAN Ähnlichkeits-Terme hinzugefügt werden. Im Unterschied zum cGAN gibt es nun zwei Terme für die beiden Generatoren G und F:
und
Diese Terme können beispielsweise mit Gewicht µ addiert werden.
-
In einer weiteren besonders vorteilhaften Ausgestaltung werden Hyperparameter, die die relative Gewichtung von Termen in der Kostenfunktion untereinander festlegen, nach einem vorgegebenen Optimierungskriterium optimiert. Diese Hyperparameter repräsentieren weitere Freiheitsgrade, mit denen der Generator an die konkrete Aufgabe anpassbar ist. Beispielsweise kann ein von mehreren Hyperparametern aufgespannter Suchraum in einem vorgegebenen Raster abgesucht werden. Dies setzt nicht voraus, dass das Optimierungskriterium in stetiger Weise von den Hyperparametern abhängt.
-
Wie zuvor anhand der Formeln erläutert, umfasst in einer weiteren besonders vorteilhaften Ausgestaltung mindestens ein Ist-Signal sowohl reale oder simulierte physikalische Messdaten der ersten physikalischen Beobachtungsmodalität Mod_A als auch ein aus einer Zufallsvariablen gezogenes Sample. Das Sample kann beispielsweise zu den Messdaten addiert werden. Ein auf diese Weise zugegebenes Rauschen hat eine doppelte Wirkung: Zum einen können aus einem vorgegebenen Vorrat an Ist-Signalen viele weitere Varianten erzeugt werden, um die Variabilität des Trainings zu erhöhen. Zum anderen können auch weitere Features im latenten Raum gelernt werden.
-
In einer weiteren besonders vorteilhaften Ausgestaltung wird ein Ist-Signal gewählt, das mindestens einem Anteil der realen oder simulierten physikalischen Messdaten der ersten physikalischen Beobachtungsmodalität Mod_A mindestens ein Ist-Label zuordnet.
-
Ein Label kann den Messdaten eine beliebige Aussage zuordnen, die aus einer beliebigen Quelle stammt. Im Kontext einer Klassifikationsaufgabe kann das Label beispielsweise eine Klasse eines Objekts, auf das die Messdaten hinweisen, repräsentieren. Im Kontext einer Regressionsaufgabe kann das Label beispielsweise einen Regressionswert, der sich auf ein durch die Messdaten angezeigtes Objekt bezieht, repräsentieren. Der Regressionswert kann beispielsweise ein Abstand, eine Ausdehnung oder eine Orientierung eines Objekts sein. Mit Labels versehene („gelabelte“) Daten werden häufig beim überwachten Training von Machine Learning-Modulen verwendet. In diesem Kontext repräsentiert ein Label häufig eine Aussage, die ein Machine Learning-Modul nach absolviertem Training aus den gelabelten Daten, wie etwa realen oder simulierten physikalischen Messdaten der ersten physikalischen Beobachtungsmodalität Mod_A, ableiten soll.
-
Beispielsweise kann das mit der Erhebung physikalischer Messdaten der Modalität Mod_A letztendlich verfolgte Ziel sein, mit einem Machine Learning-Modul Objekte, auf deren Vorhandensein diese Messdaten hindeuten, zu klassifizieren. Das Label kann dann beispielsweise zu einem realen oder simulierten Bild eines Fahrzeugumfelds angeben, welche Objekte, wie etwa Fahrbahnbegrenzungen, Verkehrszeichen oder andere Verkehrsteilnehmer, in der im Bild wiedergegebenen Szenerie vorhanden sind. Mit einer vorgegebenen Menge von Bildern und zugehörigen Labels kann das Machine Learning-Modul dann dazu trainiert werden, auch in Bildern von unbekannten Situationen die enthaltenen Objekte richtig zu erkennen.
-
Als eine mögliche Umsetzung können die Ist-Signale der Mod_A mit einem weiteren Kanal ergänzt werden, der die Labelinformation beinhaltet. Beispielsweise können bei einem Videobild die Labels als semantische Segmentierung pro Pixel hinzugefügt werden. Für ein Radarspektrum (z.B. in Abstands-Geschwindigkeitsbild) wäre es entsprechend als ein zusätzlicher Kanal pro (mehrdimensionale) FFT-bin. Bei punktförmigen Radardaten (Reflexpunkte) kann das Label als zusätzliches Attribut pro Reflexpunkt hinzugefügt werden. Dabei kann das Label nicht nur eine Klasse, sondern auch ein oder mehrere Regressionswerte beinhalten (z.B. Abstand, Ausdehnung, Orientierung eines Objektes) - ein Kanal pro Regressionswert. Dies ist besonders in Konfigurationen vorteilhaft, wenn eine Modalität zur besonders genauen Schätzung eines solchen Parameters in der Lage ist. Beispielhaft kann ein Radar den Abstand eines Objekts direkt messen, und dies auf den Pixelraum eines Videobilds übertragen. Die gelabelten Daten können für weitere Machine Learning Algorithmen benutzt werden.
-
Die Zuordnung von Labels zu realen oder simulierten physikalischen Messdaten erfordert in vielen Fällen menschliche Arbeit und kann daher einen großen Teil der Gesamtkosten eines Systems, das beispielsweise mit einem Machine Learning-Modul Objekte klassifiziert, beanspruchen. Es wurde nun erkannt, dass das zuvor beschriebene Trainingsverfahren den Generator nicht nur dazu befähigt, die realen oder simulierten physikalischen Messdaten der ersten Modalität Mod_A im Raum X in synthetische Messdaten der zweiten Modalität Mod_B im Raum Y zu übersetzen. Vielmehr kann auch die im Ist-Signal enthaltene Zuordnung der Labels zu den realen oder simulierten physikalischen Messdaten in vielfältiger Weise zumindest teilweise mit in den Raum Y überführt werden, so dass die Investition in das Labeln im Raum X auch bei der späteren Verarbeitung von Messdaten der zweiten Modalität Mod_B im Raum Y weitergenutzt werden kann.
-
So wird beim Training des Generators in einer weiteren besonders vorteilhaften Ausgestaltung ein Soll-Signal gewählt, das mindestens einem Anteil der realen oder simulierten physikalischen Messdaten der zweiten physikalischen Beobachtungsmodalität Mod_B mindestens ein Soll-Label zuordnet. Das heißt, das Trainingsverfahren geht davon aus, dass sowohl die Trainingsdaten im Raum X als auch die Trainingsdaten im Raum Y gelabelt sind.
-
Beispielsweise können die realen oder simulierten physikalischen Messdaten der zweiten Modalität Mod_B Radardaten beinhalten, also Informationen, die Radarreflexe charakterisieren. Die Labels können dann beispielsweise Objekte angeben, die in der mit den Radarreflexen dargestellten Szenerie vorhanden sind. Wird ein Machine Learning-Modul mit diesen Trainingsdaten im Raum Y trainiert, so kann es auch zu unbekannten Konstellationen von Radarreflexen ermitteln, auf welche Objekte die Radarreflexe hinweisen. Dies ist im weitesten Sinne eine Klassifikationsaufgabe.
-
Die Ist-Labels, die in dem Ist-Signal enthalten sind, werden von dem Generator in transformierte Labels übersetzt, die im Raum der Soll-Labels leben. Die Kostenfunktion, mit der der Generator trainiert wird, enthält nun einen Label-Term, der umso bessere Werte annimmt, je besser die generierten Labels mit den Soll-Labels in Einklang stehen.
-
Somit lernt der Generator auf der Basis gelabelter Trainingsdaten im Raum X und gelabelter Trainingsdaten im Raum Y, aus gelabelten realen oder simulierten Messdaten der ersten Modalität Mod_A im Raum X gelabelte synthetische Messdaten der zweiten Modalität Mod_B im Raum Y zu erzeugen.
-
Die konkrete Form des Label-Terms in der Kostenfunktion kann beispielsweise von der Aufgabe abhängen, auf die ein Machine Learning-Modul mit den vom Generator erzeugten synthetischen Messdaten trainiert werden soll. Für Klassifikationsaufgaben ist beispielsweise eine pixelweise Kreuzentropie verwendbar. Für Regressionsaufgaben ist beispielsweise der mittlere quadratische Fehler verwendbar.
-
Der Generator kann beispielsweise ein künstliches neuronales Netzwerk, KNN, umfassen und/oder sein. Dieses KNN weist eine Vielzahl von Neuronen und/oder anderen Verarbeitungseinheiten auf. Die Neuronen und/oder anderen Verarbeitungseinheiten summieren ihre jeweiligen Eingaben nach Maßgabe der trainierbaren Parameter des Generators gewichtet und bilden ihre Ausgabe durch Anwendung einer nichtlinearen Aktivierungsfunktion auf das Ergebnis dieser gewichteten Summierung.
-
Besonders vorteilhaft nimmt hier die Anzahl der Neuronen und/oder sonstigen Verarbeitungseinheiten je Schicht in einer ersten Schichtfolge monoton ab und in einer zweiten Schichtfolge monoton zu. Dadurch bildet sich zwischen dem Ende der ersten Schichtfolge und dem Beginn der zweiten Schichtfolge ein „Flaschenhals“, in dem ein Zwischenergebnis mit einer im Vergleich zu den eingegebenen Ist-Signalen deutlich verminderten Dimensionalität existiert. Dieser „Flaschenhals“ ermöglicht es dem KNN, relevante Features zu lernen und zu komprimieren. Damit kann eine bessere Performance erreicht und der Rechenaufwand verringert werden.
-
In einer weiteren besonders vorteilhaften Ausgestaltung weist das KNN mindestens eine Direktverbindung zwischen einer ersten Schicht aus der ersten Schichtfolge und einer zweiten Schicht aus der zweiten Schichtfolge auf. Auf diese Weise können bestimmte Informationen selektiv an dem besagten „Flaschenhals“ vorbei geleitet werden, so dass der Informationsgehalt in den transformierten Signalen insgesamt erhöht ist. Unter einer Direktverbindung wird also insbesondere eine Verbindung verstanden, die mindestens eine Schicht aus der ersten und/oder zweiten Schichtfolge, die ansonsten durchlaufen werden müsste, umgeht.
-
Wenn der Generator erst einmal trainiert ist, ist der Endzustand in dem Parametersatz mit den Parametern, die sein Verhalten charakterisieren, verkörpert. Bei einem KNN können diese Parameter beispielsweise Gewichte umfassen, mit denen die einem Neuron, bzw. einer sonstigen Verarbeitungseinheit, zugeführten Eingaben zu einer Aktivierung dieses Neurons, bzw. dieser Verarbeitungseinheit, verrechnet werden. Dieser Parametersatz ermöglicht es, den Generator ohne weiteres Training beliebig zu vervielfältigen, und ist daher ein eigenständig verkaufbares Produkt.
-
Die Erfindung bezieht sich auch auf ein Verfahren zum Betreiben des Generators, mit dem aus gelabelten realen oder simulierten physikalischen Messdaten der ersten Beobachtungsmodalität Mod_A im Raum X synthetische Messdaten der zweiten Beobachtungsmodalität Mod_B im Raum Y erzeugt und anschließend gelabelt werden können.
-
Bei diesem Verfahren wird mindestens ein ist-Signal mit realen oder simulierten physikalischen Messdaten der ersten physikalischen Beobachtungsmodalität Mod_A mit dem Generator zu mindestens einem transformierten Signal übersetzt. Für dieses transformiertes Signal werden quantitative Beiträge ermittelt, die verschiedene Anteile der realen oder simulierten physikalischen Messdaten der ersten physikalischen Beobachtungsmodalität Mod_A zu diesem transformierten Signal leisten, ermittelt. Diese Anteile können beliebig granular sein, bis hinunter zu einzelnen mit der ersten Modalität Mod_A durchgeführten Beobachtungen, wie etwa Bildaufnahmen oder Teilen hiervon.
-
Zu diesen verschiedenen Anteilen werden jeweils Ist-Labels ermittelt. Diese Ist-Labels können beispielsweise identisch zu Ist-Labels sein, die beim Training des Generators nach dem zuvor beschriebenen Verfahren vorgelegen haben. Dies ist jedoch nicht zwingend erforderlich. Es ist nicht einmal zwingend erforderlich, dass beim Training des Generators überhaupt Ist-Labels vorgelegen haben. Wichtig ist nur, dass zu dem Zeitpunkt, zu dem die Anteile der realen oder simulierten physikalischen Messdaten und ihre quantitativen Beiträge zum transformierten Signal identifiziert sind, Ist-Labels für diese Anteile verfügbar sind.
-
Aus den quantitativen Beiträgen in Verbindung mit den Ist-Labels wird mindestens ein Label für das transformierte Signal ermittelt.
-
Die Logik hierhinter ist, dass auf Grund der zumindest teilweisen Überlappung der mit den beiden Modalitäten Mod_A und Mod_B beobachteten Bereiche die gleichen Merkmale von in diesen Bereichen vorhandenen Objekten jeweils besonders wichtige Beiträge zu den mit beiden Modalitäten Mod_A und Mod_B gemachten Beobachtungen leisten. Wenn also in der mit der ersten Modalität Mod_A gemachten Beobachtung einerseits und in der mit der zweiten Modalität Mod_B gemachten Beobachtung andererseits bestimmte Merkmale jeweils hervorstechen, ist davon auszugehen, dass diese von ein und demselben Objekt herrühren. Ist für dieses Objekt nun im Raum X, in dem die Beobachtung mit Modalität Mod_A gemacht wurde, ein Label bekannt, so kann dies auf die entsprechende Beobachtung im Raum Y übertragen werden.
-
Beispielsweise fällt ein Stoppschild in einem Kamerabild als eine achteckige rote Fläche mit weißer Schrift auf. Wenn dieses Kamerabild von dem Generator in Radardaten übersetzt wird, dann werden diese Radardaten ebenfalls zumindest zum Teil durch Reflexe geprägt sein, die einem achteckigen Objekt zuzuordnen sind. Dies lässt sich in den Raum X, in dem das Kamerabild aufgenommen wurde, zurückverfolgen, so dass das dort vergebene Label „Stoppschild“ sich auf das im synthetischen Radarbild zu Tage tretende achteckige Objekt übertragen lässt.
-
Wie zuvor beschrieben, kann der Generator insbesondere ein KNN mit einer Vielzahl von Neuronen und/oder anderen Verarbeitungseinheiten aufweisen und/oder sein. Die Neuronen und/oder anderen Verarbeitungseinheiten können insbesondere so verschaltet sein, dass sie ihre jeweiligen Eingaben nach Maßgabe der trainierbaren Parameter des Generators gewichtet summieren und ihre Ausgabe durch Anwendung einer nichtlinearen Aktivierungsfunktion auf das Ergebnis dieser gewichteten Summierung bilden. In dieser Konfiguration kann in einer besonders vorteilhaften Ausgestaltung ausgehend von dem transformierten Signal unter Heranziehung der Architektur des KNN ermittelt werden, inwieweit Anteile der realen oder simulierten physikalischen Messdaten der ersten physikalischen Beobachtungsmodalität Mod_A zum Ausschlag mindestens einer Aktivierungsfunktion beigetragen haben. Hierzu kann beispielsweise eine Rückpropagation durch das KNN genutzt werden. Auf diese Weise kann die Verbindung zwischen quantitativen Beiträgen zum transformierten Signal und vorhandenen Labels hergestellt werden.
-
Dabei kann durchaus der Fall eintreten, dass das transformierte Signal mehrere prominente Merkmale enthält, die auf Messdaten mit unterschiedlichen Labels (etwa Kamerabilder, die unterschiedliche Verkehrszeichen zeigen) zurückführen. Ein Label für ein transformiertes Signal, das eine Klasse repräsentiert, kann dann vorteilhaft ermittelt werden, indem unter Ist-Labels, die ebenfalls Klassen repräsentieren, eine Mehrheitsabstimmung ermittelt wird. Ein Label für ein transformiertes Signal, das sich auf einen Regressionswert bezieht, kann anhand einer zusammenfassenden Funktion von Ist-Labels, die sich ebenfalls auf Regressionswerte beziehen, ermittelt werden. Die zusammenfassende Funktion kann beispielsweise einen Mittelwert oder Median bilden.
-
Ausgehend von einem fertig trainierten Generator sowie Ist-Labels für bestimmte reale oder simulierte physikalische Messdaten der Abbildungsmodalität Mod_A im Raum X ist es mit einem weiteren von der Erfindung bereitgestellten Verfahren möglich, reale mit der zweiten physikalischen Beobachtungsmodalität Mod_B im Raum Y erhaltene physikalische Messdaten mit Labels zu versehen. Dabei werden vorteilhaft Messdaten in den Räumen X und Y genutzt, die sich auf gleiche Zeitpunkte beziehen, also beispielsweise gleichzeitig physikalisch aufgenommen wurden. Auf diese Weise kann sichergestellt werden, dass sich die Messdaten auf die gleiche Szenerie ohne zwischenzeitliche Änderungen beziehen.
-
Bei diesem Verfahren wird mindestens ein Ist-Signal mit realen oder simulierten physikalischen Messdaten der ersten physikalischen Beobachtungsmodalität Mod_A, für die mindestens ein Ist-Label zur Verfügung steht, mit dem Generator zu mindestens einem transformierten Signal übersetzt.
-
Es wird mindestens ein Label für das transformierte Signal zur Verfügung gestellt. Dieses Label kann beispielsweise von einem Generator, der das Labeln mitgelernt hat, gleich zusammen mit dem transformierten Signal erzeugt werden. Das Label kann aber auch beispielsweise mit dem zuvor beschriebenen Verfahren zum Betreiben des Generators nachträglich hinzugefügt werden.
-
Das transformierte Signal wird mit mindestens einem weiteren Signal verglichen, welches reale oder simulierte physikalischen Messdaten der zweiten physikalischen Beobachtungsmodalität Mod_B umfasst. Aus dem Label für das transformierte Signal in Verbindung mit dem Ergebnis des Vergleichs wird mindestens ein Label für das weitere Signal, und/oder ein räumlicher Versatz zwischen den beiden physikalischen Beobachtungsmodalitäten Mod_A und Mod_B, ermittelt.
-
Wenn also beispielsweise ein mit der zweiten physikalischen Beobachtungsmodalität Mod_B real aufgenommenes Signal dem transformierten Signal ähnelt, das für ein Objekt mit bekanntem Label erhalten wurde, dann lässt sich hieraus folgern, dass das mit der Modalität Mod_B real aufgenommene Signal vom ebendiesem Objekt herrührt, und ihm kann das bekannte Label zugeordnet werden. Ein Machine Learning-Modul kann dann mit realen, mit der Modalität Mod_B aufgenommenen Messdaten trainiert werden unter Nutzung von Labels, die aus der Modalität Mod_A übernommen wurden. Die Nutzung realer Messdaten an Stelle der mit dem Generator erzeugten synthetischen Messdaten hat den Vorteil, dass eventuelle Artefakte, die bei der Erzeugung synthetischer Messdaten entstehen können, nicht auf das nachgeschaltete Training des Machine Learning-Moduls für die letztendliche Anwendung durchschlagen.
-
Sei beispielsweise x ein Ist-Signal, das im Raum X der von der Modalität Mod_A gelieferten Messdaten lebt und für das ein Ist-Label bekannt ist. Der Generator übersetzt x in ein transformiertes Signal y', das im Raum Y der von der Modalität Mod_B gelieferten Messdaten lebt. Indem für x mindestens ein Label verfügbar ist, ist dann auch für y' ein Label verfügbar. Sei y nun das real mit der Modalität Mod_B real aufgenommene weitere Signal. Je nach Ausführung kann es möglich sein, die Labels von y' direkt auf y zu übertragen. In Allgemeinen wird dabei ein zusätzlicher Schritt zur Bestimmung des Versatzes zwischen den synthetischen y' und realen y Darstellungen benötigt. Dies kann z.B. durch einen Vergleich der Daten y' und y (auch über mehrere Messungen hinweg), beispielsweise mit einem Korrelationsmaß, bestimmt werden. Unter Berücksichtigung dieses Versatzes können die Label der y' auf y übertragen werden.
-
Im Allgemeinen können nicht alle Daten in Y gelabelt werden, da die gemäß den beiden Modalitäten Mod_X und Mod_Y genutzten Sensoren unterschiedliche Reichweiten, Auflösungen, usw. aufweisen. Beispielsweise hat eine Kamera deutlich kleinere Reichweite als ein Radar. Hingegen hat ein Radar eine niedrigere Winkelauflösung, d.h. zwei nah beieinander stehende Objekte können nicht getrennt werden. Auch Verdeckungsfälle können von Radar oft aufgelöst werden, während ein Videosensor nur das vordere Objekt erfasst. Damit ist die Übertragung der Label nicht auf den gesamten Raum der Mod_B sondern nur auf bestimmte, überlappende Bereiche der Modalitäten möglich.
-
Der Ansatz hat den Vorteil, dass keine explizite gemeinsame Koordinatendarstellung oder Transformation zwischen Mod_A und Mod_B nötig ist. Die Koordinatentransformation wird implizit beim Training mitgelernt. Solche Koordinatentransformationen sind im Allgemeinen nicht trivial; z.B. misst eine Videokamera im Pixelraum, während ein Radar im Abstands- und Winkelraum misst. Hinzu kommt, dass eine Videokamera keine radiale Relativgeschwindigkeiten der Objekte messen kann, welches ein wichtiger Bestandteil der Radarmessung ist.
-
Die Ermittlung des Versatzes kann auch für sich genommen genutzt werden, um die Beobachtungsmodalitäten Mod_A und Mod_B zu kalibrieren, d.h., nachteilige Effekte eines räumlichen Versatzes zwischen diesen Modalitäten Mod_A und Mod_B zu bekämpfen.
-
Sind beispielsweise mehrere Sensoren in einem Fahrzeug verbaut, so ist die Kalibrierung der Sensoren zueinander (extrinsische Kalibrierung) im Allgemeinen nicht genau bekannt und muss erst aufwendig vermessen werden. Die Kenntnis der Kalibrierung der Sensoren ist essentiell, um ein Umfeldmodell aus verschiedenen Sensoren aufzubauen. Wünschenswert ist es, die extrinsische Kalibrierung automatisch online, d.h. nach dem Einbau der Sensoren, zu bestimmen.
-
Zur Erstellung der Trainingsdaten werden Modalitäten Mod_A und Mod_B in einem Versuchsfahrzeug eingebaut und genau zueinander vermessen, so dass die extrinsische Kalibrierung bekannt ist. Der Generator wird wie zuvor beschrieben trainiert, um aus Daten X der Mod_A Daten Y_der Mod_B zu erzeugen.
-
In der Anwendung werden dieselben Modalitäten Mod_A und Mod_B in das Fahrzeug eingebaut, die genaue Kalibrierung der verwendeten Sensoren zueinander ist aber unbekannt. Zur Unterscheidung zu den im Training verwendeten Modalitäten, werden diese mit Mod_A2 und Mod_B2 bezeichnet. Beispielsweise kann der Video- oder Radarsensor leicht versetzt oder leicht verdreht eingebaut sein. Es werden aufgenommene Daten x_2 der Mod_A2 als Eingang für den trainierten Generator verwendet, um Daten y_2' der Mod_B2 zu erzeugen. Die Daten y_2' entsprechen der Kalibrierung der Trainingsdaten, welche genau vermessen wurde, da der Generator diese Transformation mitgelernt hat.
-
Über das oben beschriebene Verfahren kann der Versatz zwischen den synthetischen Daten y_2' und den gemessenen Daten y_2 der Mod_B2 bestimmt werden. Wird dieser Versatz zu der vermessenen Kalibrierung addiert, so ist nun die Kalibrierung der ungenau eingebauten Modalitäten Mod_A2 und Mod_B2 zueinander bekannt.
-
Die Erfindung stellt auch ein weiteres Verfahren bereit. Dieses Verfahren umfasst die komplette Wirkkette vom Training des Generators bis zur Ansteuerung eines technischen Systems.
-
Bei diesem Verfahren wird ein Generator trainiert wie zuvor beschrieben. Mit dem trainierten Generator wird aus einem Ist-Signal mit realen oder simulierten Messdaten einer ersten Beobachtungsmodalität Mod_A mindestens ein synthetisches Signal einer zweiten Beobachtungsmodalität Mod_B erzeugt. Mit dem synthetischen Signal wird ein Machine Learning-Modul trainiert.
-
Mit mindestens einem Sensor werden physikalische Messdaten der zweiten Beobachtungsmodalität Mod_B aus dem Umfeld eines Fahrzeugs aufgenommen. Das trainierte Machine Learning-Modul wird betrieben, indem es die vom Sensor gelieferten physikalischen Messdaten als Eingabe erhält und auf mindestens eine Klasse, und/oder auf mindestens einen Regressionswert abbildet. Aus der Klasse, und/oder aus dem Regressionswert wird ein Ansteuersignal ermittelt. Das Fahrzeug wird mit dem Ansteuersignal angesteuert.
-
Das Bilden des Ansteuersignals kann hierbei insbesondere eine Prüfung umfassen, ob auf Grund des Ergebnisses des Auswertens in Verbindung mit der gegenwärtigen oder geplanten Trajektorie des eigenen Fahrzeugs zu besorgen ist, dass die Trajektorie eines Objekts im Umfeld des eigenen Fahrzeugs diese gegenwärtige oder geplante Trajektorie des eigenen Fahrzeugs schneidet. Wenn dies der Fall ist, kann das Ansteuersignal insbesondere darauf gerichtet sein, die Trajektorie des eigenen Fahrzeugs so abzuändern, dass sie von der Trajektorie des erkannten Objekts nicht mehr geschnitten wird.
-
Die Verfahren können 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 ausgeführt werden, den oder die Computer dazu veranlassen, eines der beschriebenen 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.
-
Ebenso bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger und/oder auf ein Downloadprodukt mit dem Parametersatz, und/oder 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.
-
Weiterhin kann ein Computer mit dem Parametersatz, Computerprogramm, mit dem maschinenlesbaren Datenträger bzw. mit dem Downloadprodukt ausgerüstet sein.
-
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 Trainingsverfahrens 100;
- 2 Beispielhaftes neuronales Netzwerk 14 für die Verwendung in dem Generator 1;
- 3 Veranschaulichung, wie das Übersetzen von Ist-Labels 11a zu transformierten Labels 21a trainiert werden kann;
- 4 Ausführungsbeispiel des Verfahrens 200 zum Betreiben des Generators 1;
- 5 Veranschaulichung des in 4 gezeigten Verfahrens;
- 6 Ausführungsbeispiel des Verfahrens 300 zum Betreiben des Generators 1;
- 7 Veranschaulichung des in 6 gezeigten Verfahrens;
- 8 Ausführungsbeispiel des Verfahrens 400 mit kompletter Wirkkette.
-
1 ist ein Ablaufdiagramm eines Ausführungsbeispiels des Trainingsverfahrens 100. Das Verfahren 100 geht davon aus, dass mit einer ersten physikalischen Beobachtungsmodalität Mod_A ein Bereich 10 beobachtbar ist. Zugleich ist mit einer zweiten physikalischen Beobachtungsmodalität Mod_B ein Bereich 20 beobachtbar, der den Bereich 10 überlappt. Durch reale oder simulierte Beobachtung des Bereichs 10 sind physikalische Messdaten 10a erhältlich. Durch reale oder simulierte Beobachtung des Bereichs 20 sind physikalische Messdaten 20a erhältlich.
-
In Schritt 105 wird ein Generator 1 mit einem künstlichen neuronalen Netzwerk, KNN 1, gewählt. In Schritt 110 wird dem Generator 1 ein Ist-Signal mit realen oder simulierten Messdaten 10a der Modalität Mod_A zugeführt, wobei dieses Ist-Signal 11 gemäß Block 111 mit einem oder mehreren Labels 11a versehen werden kann. Das Ist-Signal 11 kann zusätzlich zu den realen oder simulierten Messdaten 10a der Modalität Mod_A beispielsweise Metadaten enthalten, die zusammen mit den Messdaten 10a erhoben wurden. Derartige Metadaten können beispielsweise Einstellungen oder Parameter des verwendeten Messinstruments, etwa einer Kamera oder eines Radargeräts, umfassen.
-
In Schritt 120 wird das Ist-Signal mit dem Generator 1 in ein transformiertes Signal 21 übersetzt. Sofern Labels 11a vorhanden sind, können diese vom Generator 1 in transformierte Labels 21a übersetzt werden. In Schritt 130 wird nach Maßgabe einer Kostenfunktion 13 geprüft, inwieweit das transformierte Signal 21 mit mindestens einem Soll-Signal 21' in Einklang steht. In Schritt 140 werden trainierbare Parameter 1a, die das Verhalten des Generators 1 charakterisieren, dahingehend optimiert, dass für die dann erhaltenen transformierten Signale 21 die Bewertung 130a durch die Kostenfunktion 13 voraussichtlich besser ausfällt.
-
Innerhalb des Kastens 13 ist beispielhaft eingezeichnet, wie die Bewertung 130a ermittelt werden kann. Gemäß Block 131 wird mindestens ein Soll-Signal 21' gewählt, das mit einem Label 21a' versehen ist. Somit kann die Kostenfunktion 13 einen Vergleich zwischen den transformierten Labels 21a und den Soll-Labels 21' beinhalten.
-
Gemäß Block 141 wird neben dem Generator 1 gleichzeitig auch ein Diskriminatormodul darauf trainiert, transformierte Signale 21 von Soll-Signalen 21' zu unterscheiden, um damit wiederum zusätzliche Anreize für Fortschritte beim Training des Generators 1 zu schaffen.
-
Die Parameter 1a, die am Ende des Trainings entstehen, legen den trainierten Zustand 1* des Generators 1 fest.
-
2 zeigt schematisch ein beispielhaftes KNN 14, das in dem Generator 1 verwendbar ist. Das KNN 14 besteht in diesem Beispiel aus sieben Schichten 15a-15g, die jeweils Neuronen oder andere Verarbeitungseinheiten 16 umfassen. Dabei bilden die Schichten 15a-15c eine erste Schichtfolge 17a, in der die Anzahl der Neuronen 16 je Schicht 15a-15c monoton abnimmt. Die Schichten 15e-15g bilden eine zweite Schichtfolge 17b, in der die Anzahl der Neuronen 16 je Schicht 15e-15g monoton zunimmt. Dazwischen liegt die Schicht 15d, in der eine maximal komprimierte Repräsentation der Ist-Signale 11 vorliegt. Das KNN 14 enthält zusätzlich drei Direktverbindungen 18a-18c zwischen Schichten 15a-15c aus der ersten Schichtfolge 17a und Schichten 15e-15g aus der zweiten Schichtfolge 17b, die in dem in 3 gezeigten Beispiel jeweils gleiche Anzahlen von Neuronen 16 aufweisen.
-
3 veranschaulicht schematisch, wie der Generator 1 darauf trainiert werden kann, aus im Raum X der Beobachtungen mit der Modalität Mod_A vorhandenen Labels 11a neue Labels 21a im Raum Y der Beobachtungen mit der Modalität Mod_B zu generieren.
-
In dem in 3 gezeigten Beispiel leben im Raum X Kamerabilder mit einem kartesischen Koordinatensystem in den Koordinaten a und b. Beispielhaft sind ein Fußgänger 51 und ein fremdes Fahrzeug 52 als Beobachtungen 10a im Umfeld 50a eines in 3 nicht eingezeichneten eigenen Fahrzeugs 50 dargestellt. Die Information, dass es sich um einen Fußgänger 51 bzw. um ein Fahrzeug 52 handelt, bildet das jeweilige Label IIa.
-
Wenn die gleiche Szenerie mit Radar als Modalität Mod_B beobachtet wird, sind die Beobachtungen 20a beispielsweise die in 3 gezeichneten Radarspektren, oder alternativ oder auch in Kombination hierzu beispielsweise Radarreflexe. Die Radarspektren leben im Raum Y in den Koordinaten ϑ (Winkel) und r (Entfernung). Ihnen kann als jeweiliges Soll-Label 21a' wiederum die Information zugeordnet werden, dass sie sich auf einen Fußgänger 51, bzw. auf ein Fahrzeug 52, beziehen.
-
Gemäß Schritt 120 des Verfahrens 100 werden die Ist-Labels 11a in transformierte Labels 21a im Raum Y übersetzt. Wie zuvor beschrieben, kann die Kostenfunktion 13 daraufhin prüfen, inwieweit die transformierten Labels 21a mit den Soll-Labels 21a' übereinstimmen. In der in 3 gezeigten Momentaufnahme ist diese Übereinstimmung noch sehr schlecht. Die Kostenfunktion 13 ist dann eine treibende Kraft für eine Optimierung der Parameter 1a des Generators mit dem Ziel, die Übereinstimmung zu verbessern.
-
4 ist ein Ablaufdiagramm eines Ausführungsbeispiels des Verfahrens 200 zum Betreiben des Generators 1, 1*. In Schritt 205 wird ein Generator 1 gewählt, der ein KNN 14 enthält. In Schritt 210 wird mit dem Generator 1, 1* mindestens ein Ist-Signal 11 in ein transformiertes Signal 21 übersetzt.
-
In Schritt 220 werden quantitative Beiträge 22a-22c ermittelt, die verschiedene Anteile 12a-12c der im Ist-Signal enthaltenen realen oder simulierten physikalischen Messdaten 10a der Modalität Mod_A zu dem transformierten Signal 21 leisten. Zu den verschiedenen Anteilen 12a-12c werden in Schritt 230 Ist-Labels 12a*-12c* ermittelt. Aus den Beiträgen 22a-22c und den Ist-Labels 12a*-12c* wird in Schritt 240 mindestens ein Label 21* für das transformierte Signal 21 ermittelt.
-
Innerhalb des Kastens 240 sind beispielhaft zwei Möglichkeiten eingezeichnet, wie das Label 21* ermittelt werden kann. Gemäß Block 241 können mehrere Ist-Labels 12a*-12c*, die Klassen repräsentieren, durch eine Mehrheitsabstimmung über diese Klassen zusammengeführt werden. Gemäß Block 242 können mehrere Ist-Labels 12a*-12c*, die sich auf Regressionswerte beziehen, durch eine zusammenfassende Funktion zusammengeführt werden.
-
Das Verfahren 200 ist in 5 näher veranschaulicht. Die Räume X und Y sind die gleichen wie in 3, und es sind auch die gleichen Objekte vorhanden. Im Unterschied zu 3 wird jedoch davon ausgegangen, dass im Raum Y keine Soll-Labels 21' für die Beobachtungen 20a im transformierten Signal 21 verfügbar sind.
-
Um die Beobachtungen 20a im transformierten Signal 21 zu labeln, werden quantitative Beiträge 22a-22c ermittelt, die Anteile 12a-12c der Messdaten 10a im Raum X zu den Beobachtungen 20a beigesteuert haben. Die Anteile 12a-12c sind in der in 5 gewählten Darstellung Gebiete. Gemäß Schritt 221 des Verfahrens 200 wird die Architektur des KNN 14 herangezogen, beispielsweise im Wege der Rückpropagation durch das KNN 14, um die Beiträge 22a-22c und die Anteile 12a-12c zu ermitteln.
-
Wenn, wie in 5 dargestellt, diese Gebiete in X gelabelte Objekte 51, 52 enthalten, dann können diese Ist-Labels 12a*-12c* herangezogen werden, um ein Label 21* für das transformierte Signal 21 zu ermitteln. In der in 5 dargestellten Situation umfasst jeder der Anteile 12a-12c nur ein einziges gelabeltes Objekt 51 bzw. 52, so dass das jeweilige Label unmittelbar als Label 21* für das transformierte Signal 21 festgelegt werden kann.
-
6 zeigt ein Ausführungsbeispiel des Verfahrens 300 zum Betreiben des Generators 1. In Schritt 310 wird ein mit einem Ist-Label 11a versehenes Ist-Signal 11 mit Beobachtungen 10a der ersten Modalität Mod_A durch den Generator 1, 1* zu einem transformierten Signal 21 übersetzt. In Schritt 315 wird mindestens ein Label 21a, 21* für das transformierte Signal 21 ermittelt, was unmittelbar bei der Erzeugung des transformierten Signals 21 durch einen labelnden Generator 1 (Label 21a) oder auch beispielsweise nachträglich mit dem zuvor beschriebenen Verfahren 200 (Label 21*) erledigt werden kann. In Schritt 320 wird das transformierte Signal im Raum Y der Modalität Mod_B mit einem weiteren Signal 21b verglichen, das reale oder simulierte Messdaten 20a der Modalität Mod_B umfasst. Analog zum Signal 11 kann das Signal 21b zusätzlich zu den Messdaten 20a beispielsweise Metadaten umfassen, die zusammen mit den Messdaten 20a erhoben wurden. Aus dem Label 21* für das transformierte Signal 21 in Verbindung mit dem Ergebnis 320a des Vergleichs 320 wird in Schritt 330 ein Label 21b* für das weitere Signal 21b, und/oder ein räumlicher Versatz Δ zwischen den Beobachtungsmodalitäten Mod_A und Mod_B, ausgewertet.
-
7 veranschaulicht das in 6 gezeigte Verfahren. Zur besseren Verständlichkeit ist hier, im Unterschied zu den 3 und 5, der Raum Y, in dem die transformierten Signale 21 leben, ein kartesischer Raum in den Koordinaten a und b.
-
In dem in 7 gezeigten Beispiel sind die als Rechteck und als Kreis eingezeichneten transformierten Signale 21, für die jeweils Labels 21* ermittelt wurden, recht ähnlich zu den weiteren Signalen 21b, die durch Messung im Raum Y erhalten wurden. Hieraus kann in den Schritten 320 und 330 des Verfahrens 300 jeweils der Schluss gezogen werden, dass die weiteren Signale 21b sich jeweils auf die gleichen Objekte beziehen wie die transformierten synthetischen Signale 21. Dementsprechend können als Labels 21b* für diese weiteren Signale 21b wiederum die Labels 21* der transformierten Signale 21 übernommen werden. Zugleich lässt sich auf diesem Wege der räumliche Versatz Δ zwischen der Beobachtungsmodalität Mod_A, auf deren Basis die transformierten Signale 21 erhalten wurden, und der Beobachtungsmodalität Mod_B, mit der die weiteren Signale 21b erhalten wurden, ermitteln.
-
Die Labels 21* der transformierten Signale 21 basieren auf den ursprünglichen Ist-Labels 11a aus dem Raum X. Diese sind in 7 der Übersichtlichkeit halber nicht eingezeichnet.
-
8 zeigt ein Ausführungsbeispiel des Verfahrens 400 mit der kompletten Wirkkette vom Training des Generators 1 bis zur Ansteuerung eines Fahrzeugs 50.
-
In Schritt 410 wird der Generator 1 mit dem zuvor beschriebenen Verfahren 100 trainiert und erreicht dadurch seinen trainierten Zustand 1*. In Schritt 420 wird mit dem trainierten Generator 1* ein Ist-Signal 11 mit realen oder simulierten Messdaten 10a der Modalität Mod_A im Raum X in ein synthetisches (transformiertes) Signal 21 der Modalität Mod_B im Raum Y übersetzt. In Schritt 430 wird auf der Basis des synthetischen Signals 21 ein Machine Learning-Modul 3 trainiert und erreicht dadurch seinen trainierten Stand 3*. Parallel hierzu werden in Schritt 440 mit mindestens einem Sensor 4 physikalische Messdaten 20a der zweiten Beobachtungsmodalität aus dem Umfeld 50a des Fahrzeugs 50 aufgenommen.
-
In Schritt 450 wird das trainierte Machine Learning-Modul 3* betrieben, indem es gemäß Block 451 die Messdaten 20a als Eingabe erhält und diese Messdaten 20 gemäß Block 452 auf mindestens eine Klasse 450a, und/oder auf mindestens einen Regressionswert 450b, abbildet. In Schritt 460 wird aus der Klasse 450a, und/oder aus dem Regressionswert 450b, ein Ansteuersignal 360a ermittelt. In Schritt 470 wird das Fahrzeug 50 mit dem Ansteuersignal 460a angesteuert.