-
Technisches Gebiet
-
Die vorliegende Offenbarung betrifft Verfahren und Systeme zur Erkennung und Mitigation von Störungen eines Maschinen-Lernsystems zur Umfeldkontrolle, insbesondere von Maschinen-Lernsystemen zur Umfeldkontrolle von zumindest teilautonom operierenden Fahrzeugen.
-
Hintergrund
-
Maschinen-Lernsysteme zur Umfeldkontrolle werden im immer stärkeren Maße in verschiedenen Anwendungsgebieten eingesetzt. Zum Beispiel kommen solche Systeme (wie Systeme zum maschinellen Sehen) in autonomen Fahrzeugen zum Einsatz. Dabei wird ein Umfeld eines Fahrzeugs mittels des Maschinen-Lernsystems zur Umfeldkontrolle überwacht. Wie leicht ersichtlich ist, kann eine Fehleinschätzung des Maschinen-Lernsystems erhebliche Konsequenzen haben. Ähnliches gilt in anderen Einsatzgebieten von Maschinen-Lernsystemen zur Umfeldkontrolle, insbesondere, wenn diese in hoch-automatisierte Systemumgebungen eingebettet sind. Eine Ursache von Fehleinschätzungen können Störungen wie beispielsweise sogenannte Adversarial Attacks (zu Deutsch „feindliche Angriffe“, in der Folge wird der gebräuchliche Englische Begriff verwendet werden) sein. Im Rahmen einer Adversarial Attack versucht ein Angreifer, das Maschinen-Lernsystem zur Umfeldkontrolle durch bewusste Veränderung seiner Eingangsdaten zu Täuschen. Zum Beispiel kann dies durch Manipulation des Umfelds, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht (wie das Überkleben eines Straßenschilds oder das Anbringen falscher Fahrbahnmarkierungen), geschehen. In einigen Verfahren des Stands der Technik wird das Maschinen-Lernsystem zur Umfeldkontrolle darauf ausgelegt, die Störung selbst zu erkennen (z.B. als solche zu klassifizieren). Das kann in manchen Fällen aufwändige Hardware benötigen, den Spielraum bezüglich der Auslegung der Abwehr reduzieren und/oder nur eingeschränkt wirksam sein. Daher ist es erstrebenswert, die Verfahren zur Erkennung einer Störung eines Maschinen-Lernsystems zur Umfeldkontrolle zu verbessern.
-
Zusammenfassung der Erfindung
-
Ein erster allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein Computer-basiertes Verfahren zur Erkennung einer Störung eines Maschinen-Lernsystems zur Umfeldkontrolle. Das Verfahren umfasst Empfangen von Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder Daten aus einem Umfeldmodell des Maschinen-Lernsystems zur Umfeldkontrolle, Empfangen von Kontextinformationen von einer oder mehreren externen Datenquellen, wobei die Kontextinformationen das Umfeld, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht, beschreiben und Entscheiden, ob eine Störung vorliegt anhand der Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder der Daten aus dem Umfeldmodell sowie der Kontextinformationen. Falls eine Störung vorliegt, umfasst das Verfahren Auslösen einer Reaktion auf die Störung.
-
Ein zweiter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein System zur Erkennung einer Störung eines Maschinen-Lernsystems zur Umfeldkontrolle, das dazu ausgelegt ist, die Verfahren gemäß dem ersten allgemeinen Aspekt auszuführen.
-
Die Techniken gemäß dem ersten und zweiten allgemeinen Aspekt der vorliegenden Offenbarung können einen oder mehrere Vorteile haben.
-
Erstens kann durch die Verwendung von Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder Daten aus einem Umfeldmodell des Maschinen-Lernsystems zur Umfeldkontrolle sowie von Kontextinformationen die Erkennung von Störungen (insbesondere Adversarial Attacks) zuverlässiger sein als in manchen Verfahren des Stands der Technik. So können mit manchen Verfahren des Stands der Technik, die innerhalb eines Maschinen-Lernsystem zur Umfeldkontrolle (z.B. in einem neuronalen Netz eines Bildklassifikators) stattfinden, bestimmte Störungen wie Adversarial Attacks nur schwer erkannt werden (die schließlich gerade dafür ausgelegt sind, das Maschinen-Lernsystem zu täuschen). Die Techniken der vorliegenden Offenbarung nutzen innerhalb eines Maschinen-Lernsystem zur Umfeldkontrolle nicht zur Verfügung stehende Datenquellen, was das Erkennen von Störungen erleichtern kann.
-
Zweitens und als Folge dessen kann durch das Einbeziehen einer Vielzahl von externen Quellen die Wahrscheinlichkeit einer fehlerhaften Erkennung einer Störung („falschpositives Ergebnis“) reduziert werden. Bei der internen Erkennung in einigen Maschinen-Lernsystemen zur Umfeldkontrolle kann eine konservative Auslegung zur sicheren Erkennung von Störungen zu einer höheren Anzahl von falschpositiven Ergebnissen führen.
-
Drittens kann durch die Verwendung eines externen Systems zur Erkennung von Störungen eine Komplexität und damit eine Fehleranfälligkeit und ein Preis eines Maschinen-Lernsystems zur Umfeldkontrolle (einschließlich des externen Systems zur Erkennung von Störungen) niedriger sein als in Lösungen, in denen die Störungen in dem Maschinen-Lernsystem zur Umfeldkontrolle selbst detektiert werden sollen. So kann ein einzelnes System zur Erkennung einer Störung in einer Vorrichtung (z.B. einem Fahrzeug) mehrere Maschinen-Lernsysteme zur Umfeldkontrolle bedienen.
-
Figurenliste
-
- 1 zeigt schematisch eine Störung in Form einer Adversarial Attack auf ein zumindest teilautonomes Fahrzeug;
- 2 ist ein Flussdiagramm, dass Schritte der Verfahren der vorliegenden Offenbarung zeigt;
- 3 illustriert ein beispielhaftes System zur Erkennung einer Störung der vorliegenden Offenbarung.
-
Ausführliche Beschreibung
-
In 1 zeigt schematisch eine Störung eines zumindest teilautonomes Fahrzeugs 100 (z.B. ein autonomes Fahrzeug der Level 3 bis 5). In der Folge werden die Techniken der vorliegenden Offenbarung anhand von Beispielen mit zumindest teilautonomen Fahrzeugen erläutert. Die Techniken der vorliegenden Offenbarung sind aber nicht auf dieses spezielle Anwendungsgebiet beschränkt. Weitere Anwendungsgebiete werden weiter unten aufgeführt.
-
Das zumindest teilautonomes Fahrzeug 100 enthält ein Maschinen-Lernsystem zur Umfeldkontrolle 200 (z.B. ein Maschinen-Lernsystem zum maschinellen Sehen). Das Maschinen-Lernsystem zur Umfeldkontrolle 200 kann mir ein oder mehreren Sensoren 300 gekoppelt sein und von diesen mit Eingangsdaten gespeist werden. Die Sensoren 300 können Sensordaten bezüglich des Umfelds, das das Maschinen-Lernsystem zur Umfeldkontrolle 200 überwacht, liefern. Die Sensoren können insbesondere Kamera-basierte Sensoren (für den sichtbaren und/oder infraroten Wellenlängenbereich, z.B. eine Wärmebildkamera), Radar-Sensoren, Lidar-Sensoren oder Ultraschallsensoren sein. Zusätzlich oder alternativ können die Eingangsdaten Bilddaten (z.B. Video-Bilddaten oder Einzelbild-Daten) sein. Das Maschinen-Lernsystem zur Umfeldkontrolle 200 kann einen oder mehrere Klassifikatoren zur Beurteilung des Umfeldes umfassen (z.B. einen Klassifikator basierend auf einem oder mehreren neuronalen Netzen). Das Maschinen-Lernsystem zur Umfeldkontrolle 200 kann einen Bildklassifikator zur Verarbeitung von Bilddaten umfassen. Allerdings können auch nicht Bilddaten-basierte Maschinen-Lernsystem zur Umfeldkontrolle 200 eingesetzt werden.
-
Im Beispiel der 1 besteht eine Störung in dem Aufbringen einer falschen Markierung 500 auf einer Fahrbahn. Die Idee hinter dieser Störung ist, dass das Maschinen-Lernsystem zur Umfeldkontrolle 200 des zumindest teilautonomen Fahrzeugs 100 die falsche Markierung 500 als echte Markierung interpretiert und somit das zumindest teilautonomes Fahrzeugs 100 entsprechend gesteuert wird. Beispielsweise könnte das des zumindest teilautonome Fahrzeug 100 im Rahmen eines Raubüberfalls an einer falschen Haltelinie zum Stehen gebracht werden, um in der Folge die Insassen auszurauben.
-
Die Verfahren oder Systeme dieser Offenbarung können zum Erkennen verschiedener Arten on Störungen eingesetzt werden. Eine Störung kann eine zufällige Veränderung eines Umfelds, das das Maschinen-Lernsystem zur Umfeldkontrolle 200 überwacht und/oder eines Eingangssignals des Maschinen-Lernsystems zur Umfeldkontrolle 200 umfassen (eine Veränderung des Umfelds wird sich natürlich auch auf ein Eingangssignal auswirken). Die Störung des Maschinen-Lernsystems zur Umfeldkontrolle 200 kann beispielweise eine Adversarial Attack sein. Wie erwähnt basiert eine Adversarial Attack auf dem Einspeisen eines speziell erzeugten Eingangs-Signals (auch als „Adversarial Example“ bezeichnet) in das Maschinen-Lernsystem zur Umfeldkontrolle (z.B. ein künstliches neuronales Netzwerk), welches dieses täuschen und z.B. eine Fehlklassifikation erzeugen soll. Die Manipulation kann so vorgenommen werden, dass ein menschlicher Beobachter diese nicht bemerkt oder nicht als solche erkennt. Beispiele für Adversarial Attacks sind das Verändern des Umfelds, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht (z.B. mittels Anbringens, Veränderns, Entfernens und/oder Verdeckens von für die Umfeldkontrolle relevanten Elementen wie den Markierungen in 1). In anderen Beispielen können ein oder mehrere Sensoren 300, die mit dem Maschinen-Lernsystem zur Umfeldkontrolle 200 gekoppelt sind, manipuliert oder mit einem manipulierten Signal beaufschlagt werden. Andere Störungen als Adversarial Attacks können ebenfalls erkannt werden (zusätzlich oder alternativ). Zum Beispiel kann eine Störung eine zufällige Veränderung eines Umfelds und/oder eines Eingangssignals umfassen.
-
In dem Beispiel in 1 ist das Maschinen-Lernsystem zur Umfeldkontrolle 200 in dem zumindest teilautonomes Fahrzeug 100 angeordnet (also in einer Vorrichtung, deren Umfeld überwacht werden soll). In anderen Beispielen kann das Maschinen-Lernsystem zur Umfeldkontrolle 200 außerhalb der Vorrichtung, deren Umfeld überwacht werden soll, angeordnet sein, oder auf die Vorrichtung und die Umgebung verteilt sein.
-
Gemäß einem Beispiel der Techniken der vorliegenden Offenbarung ist in dem zumindest teilautonomen Fahrzeug 100 ein System zur Erkennung einer Störung 600 angeordnet. Das System zur Erkennung einer Störung 600 ist dazu ausgelegt, Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle 200 und/oder Daten aus einem Umfeldmodell (nicht dargestellt) zu empfangen. Zusätzlich ist das System zur Erkennung einer Störung 600 dazu ausgelegt, Kontextinformationen von einer oder mehreren externen Datenquellen 700a,b zu empfangen.
-
„Kontextinformationen“ beschreiben ein aktuelles Umfeld, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht. Der Begriff „Kontextinformationen“ wird in der vorliegenden Offenbarung in Abgrenzung von den Eingangsdaten des Maschinen-Lernsystems zur Umfeldkontrolle benutzt (d.h., Eingangsdaten des Maschinen-Lernsystems zur Umfeldkontrolle sind keine Kontextinformationen). In manchen Beispielen können die Kontextinformationen eine Eigenschaft des Umfelds oder bestimmte Aspekte des Umfelds beschreiben. Zusätzlich oder alternativ können die Kontextinformationen Angaben zu Elementen und/oder Ereignissen enthalten, die sich im Umfeld befinden oder darin stattfinden. Kontextinformationen können das Ergebnis eines Verarbeitungs- und/oder Interpretationsprozesses sein (z.B. ein Klassifikationsergebnis eines anderen Maschinen-Lernsystems oder eines menschlichen Klassifikators).
-
In manchen Beispielen enthalten die Kontextinformationen Kartendaten des Umfelds. „Kartendaten“ sind in der vorliegenden Offenbarung alle Daten, in denen bestimmte Informationen mit einer Ortsinformation (z.B. Weltkoordinaten) verbunden sind. Es ist möglich, aber nicht notwendig, dass die Kartendaten auch als Karte darstellbar gespeichert sind. So können Kartendaten ein oder mehrere Tupel von Koordinaten sein, an denen sich ein bestimmtes Element (z.B. ein Verkehrsweg, eine Markierung oder ein Verkehrsleitelement wie ein Schild). befindet oder ein bestimmtes Ereignis stattgefunden hat (z.B. eine Adversarial Attack).
-
Die Kartendaten können lokal auf einer Vorrichtung abgelegt sein, in der das Maschinen-Lernsystem zur Umfeldkontrolle 200 eingesetzt wird (dessen Umfeld das Maschinen-Lernsystem zur Umfeldkontrolle 200 überwacht). In anderen Beispielen können die Kartendaten auf einer entfernten Vorrichtung, die mit der Vorrichtung, in der das Maschinen-Lernsystem zur Umfeldkontrolle eingesetzt wird, über ein Netzwerk verbunden ist, abgelegt sein.
-
Zusätzlich oder alternativ können die Kontextinformationen Informationen zu bekannten oder vermuteten Störungen (z.B. Adversarial Attacks) im Umfeld, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht, umfassen. In manchen Beispielen kann zusätzlich eine Konfidenzbewertung für die bekannten oder vermuteten Störungen (z.B. Adversarial Attacks) vorhanden sein. Zum Beispiel können die Informationen zu bekannten oder vermuteten Störungen an einer zentralen Stelle (z.B. in einer Datenbank) gesammelt sein (in manchen Beispielen in der Form von Kartendaten oder in Verbindung mit Kartendaten). Die Informationen können dann von der zentralen Stelle abgefragt werden und beispielsweise in eine lokale Karte der Vorrichtung (z.B. des teilautonomen Fahrzeugs 100) integriert werden.
-
Zusätzlich oder alternativ können die Kontextinformationen Sensordaten eines Sensors umfassen, der das Umfeld überwacht. Das kann insbesondere ein Sensor sein, der nicht von dem Maschinen-Lernsystem zur Umfeldkontrolle verwendet wird. In Beispielen kann der Sensor in einer anderen Vorrichtung als der Vorrichtung, in der das Maschinen-Lernsystem zur Umfeldkontrolle eingesetzt wird, enthalten sein (z.B. in einem weiteren Fahrzeug oder einem Teil der Infrastruktur, durch die sich das Fahrzeug 100 bewegt).
-
Die externen Datenquellen können externe Datenquellen bezüglich des Maschinen-Lernsystems zur Umfeldkontrolle 200 sein. In anderen Worten, eine externe Datenquelle kann jede Datenquelle sein außer das Maschinen-Lernsystem zur Umfeldkontrolle 200 selbst (einschließlich seiner Eingangsdaten). Es ist nicht notwendig, dass die externen Datenquellen 700a,b auch außerhalb einer Vorrichtung (in 1 dem zumindest teilautonomen Fahrzeug 100), in der das Maschinen-Lernsystem zur Umfeldkontrolle 200 eingesetzt ist, angeordnet sind. Zum Beispiel kann eine externe Datenquellen 700a eine (elektronische) Karte sein, die in einem weiteren System des zumindest teilautonomen Fahrzeugs 100 abgelegt ist. Weitere Beispiele für externe Datenquellen werden in der Folge beschrieben.
-
In manchen Beispielen können externe Datenquellen weitere Vorrichtungen sein, die Kontextinformationen zum Umfeld, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht, erheben und/oder sammeln. Zum Beispiel kann eine externe Datenquelle ein weiteres zumindest teilautonomes Fahrzeug oder eine Infrastrukturkomponente oder eine beliebige andere Vorrichtung sein, die sich im Umfeld, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht, befindet oder bewegt oder auf dieses Zugriff hat (z.B. ein Smartphone eines Verkehrsteilnehmers) In manchen Beispielen kann eine externe Datenquelle ein weiteres Maschinen-Lernsystem zur Umfeldkontrolle umfassen (z.B. in einem weiteren zumindest teilautonomen Fahrzeug oder in einer Infrastrukturkomponente).
-
In 2 ist ein Flussdiagramm, dass Schritte der Verfahren zur Erkennung einer Störung (z.B. Adversarial Attack) eines Maschinen-Lernsystems zur Umfeldkontrolle der vorliegenden Offenbarung zeigt, zu sehen. Die Verfahren der vorliegenden Offenbarung sind computer-basierte Verfahren, d.h., sie werden auf einem geeigneten Computer-System ausgeführt (im Wesentlichen oder sogar vollständig automatisch, d.h., ohne Interaktion eines Benutzers).
-
Das Verfahren umfasst das Empfangen 202 von Daten aus dem Maschinen-Lernsystem 200 zur Umfeldkontrolle und/oder Daten aus einem Umfeldmodell des Maschinen-Lernsystem zur Umfeldkontrolle 200. Zudem umfasst das Verfahren das Empfangen 204 von Kontextinformationen von einer oder mehreren externen Datenquellen 700a,b und das Entscheiden 206, ob eine Störung vorliegt anhand der Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder Daten aus dem Umfeldmodell sowie der Kontextinformationen, und, falls eine Störung vorliegt, Auslösen 208 einer Reaktion auf die Störung.
-
Jeder dieser Schritte und mögliche Ausgestaltungen werden in der Folge genauer erläutert.
Das Entscheiden 206 kann Abgleichen der Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder Daten aus dem Umfeldmodell und der Kontextinformationen umfassen. Zum Beispiel kann ein Klassifikationsergebnis des Maschinen-Lernsystems zur Umfeldkontrolle mit einer entsprechenden Kontextinformation abgeglichen werden. Im Beispiel von 1 kann das Maschinen-Lernsystem zur Umfeldkontrolle 200 als Ergebnis eines Klassifikationsvorgangs die Markierung 500 erkennen (oder ein sonstiges Element in dem Umfeld). Nun kann ein Abgleich mit Kartendaten aus der externen Datenquelle 700a,b erfolgen (in der die Position von bekannten Markierungen oder anderen Elementen enthalten sein kann). Es kann angenommen werden, dass eine Störung vorliegt, wenn das Abgleichen ergibt, dass die Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder die Daten aus einem Umfeldmodell und die Kontextinformation in Bezug auf ein oder mehrere Parameter nicht übereinstimmen. Beispielsweise kann in den Kartendaten keine Markierung an der Stelle, wo die Markierung 500 erkannt wurde, verzeichnet sein.
-
In anderen Beispielen (oder zusätzlich) kann der Schritt des Entscheidens Auslesen von Informationen zu bekannten oder vermuteten Störungen im Umfeld, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht, umfassen (die beispielsweise in einer Karte abgelegt sein können). Zusätzlich kann eine Konfidenzbewertung für die bekannten oder vermuteten Störungen ausgelesen werden. Die Information und die optionale Konfidenzbewertung kann in den Entscheidungsprozess einfließen (z.B. je höher eine Konfidenzbewertung ist, desto eher wird das Vorliegen einer Störung bestätigt).
-
In wiederum anderen Beispielen kann das Entscheiden die Verwendung eines weiteren Maschinen-Lernmoduls zur Analyse der Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder der Daten aus dem Umfeldmodell und/oder eine regelbasierte Prüfung der Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder der Daten aus dem Umfeldmodell umfassen.
-
Zum Beispiel kann das weitere Maschinen-Lernmodul (z.B. ein oder mehrere neuronale Netzwerke) auf das Erkennen bekannter Muster von Störungen trainiert sein (z.B. ein dediziertes Maschinen-Lernmodul zum Erkennen der Störungen).
-
In einem Beispiel kann das weitere Maschinen-Lernmodul Eingangsdaten des Maschinen-Lernsystems zur Umfeldkontrolle 200 als Eingangsdaten empfangen (z.B. Sensordaten oder Bilddaten wie weiter oben diskutiert) und entscheiden, ob eine Störung vorliegt (z.B., das Anbringen, Entfernen und/oder Verdecken von für die Umfeldkontrolle relevanten Elementen). Alternativ oder zusätzlich kann das weitere Maschinen-Lernmodul Daten aus Verarbeitungsstufen des Maschinen-Lernsystems zur Umfeldkontrolle 200 empfangen. Zum Beispiel kann das Maschinen-Lernsystem zur Umfeldkontrolle 200 verschiedene Sensormodalitäten (z.B. zwei oder mehr von einem Kamera-basierten Sensor, einem Lidar-Sensor und/oder einem Radar-Sensor) aufweisen. Eingangsdaten jedes der verschiedenen Sensormodalitäten können in dem Maschinen-Lernsystems zur Umfeldkontrolle 200 zunächst separat verarbeitet (in einer ersten Verarbeitungsstufe) und danach fusioniert werden (in einer zweiten Verarbeitungsstufe). Das weitere Maschinen-Lernmodul kann die separat verarbeiteten Daten eines oder mehrerer der Sensormodalitäten empfangen und entscheiden, ob eine Störung vorliegt. Z.B. kann das weitere Maschinen-Lernmodul Zusammenhänge zwischen den verarbeiteten Signalen verschiedener Sensor-Modalitäten erkennen, die auf eine Störung hinweisen (beispielsweise zur Unterscheidung der Reflexionseigenschaften eines echten Elements im Umfeld von denen eines gefälschten und/oder manipulierten Elements). Weiter zusätzlich oder alternativ kann das weitere Maschinen-Lernmodul Ausgangsdaten des Maschinen-Lernsystems zur Umfeldkontrolle 200 und/oder Daten aus dem Umfeldmodell des Maschinen-Lernsystems zur Umfeldkontrolle 200 empfangen und entscheiden, ob eine Störung vorliegt. Z.B. kann ein nicht plausibles Klassifikationsergebnis erkannt werden (beispielsweise ein Element in dem Umfeld mit nicht plausiblen Charakteristika oder nicht plausiblen Verhalten, wie ein Element mit einer nicht verwendeten Beschriftung oder unphysikalischen Verhalten bei Aufnahme aus verschiedenen Richtungen und/oder unter verschiedenen Winkeln).
-
Neben oder anstatt eines weiteren Maschinen-Lernmoduls kann auch ein regelbasiertes Modul die oben beschriebenen Daten empfangen und basierend auf einem Satz von Regeln entscheiden, ob eine Störung vorliegt. Beispielsweise kann eine regelbasierte Plausibilitätsprüfung durchgeführt werden.
-
Das Entscheiden 206, ob eine Störung vorliegt, kann verschiedene Ergebnisse zeitigen. In manchen Beispielen kann das System zur Erkennung einer Störung 600 dafür ausgelegt sein, eine binäre Entscheidung zu treffen, ob eine Störung (z.B. eine Adversarial Attack) vorliegt. Das kann für eine oder eine Mehrzahl von Typen von Störungen separat erfolgen. In anderen Beispielen kann eine Wahrscheinlichkeit, dass eine Störung vorliegt, ermittelt werden. Das kann wiederum für eine oder eine Mehrzahl von Typen von Störungen separat erfolgen. In beiden Fällen können nach der Durchführung eines der oben beschriebenen Schritte eine Wahrscheinlichkeit oder ein anderer Bewertungsparameter erhöht oder erniedrigt werden, je nachdem ob Anzeichen einer Störung erkennt wird, oder nicht. Im Fall einer binären Entscheidung kann das Vorliegen einer Störung festgestellt werden, wenn ein Bewertungsparameter einen gewissen Schwellwert übersteigt (oder unterschreitet).
-
Die oben beschriebenen Schritte zum Entscheiden, ob eine Störung vorliegt, können auch in beliebiger Weise kombiniert werden. In dieser Art kann das Entscheiden in mehreren Stufen erfolgen. Zum Beispiel können in einem oder mehreren ersten Schritten die Daten und Kontextinformationen verarbeitet werden, die innerhalb einer Vorrichtung (z.B. einem Fahrzeug) vorliegen (z.B. Kartendaten und/oder Daten aus dem Maschinen-Lernsystem zur Umfeldkontrolle und/oder Daten aus dem Umfeldmodell des Maschinen-Lernsystems zur Umfeldkontrolle). Dann können in weiteren Schritten Kontextinformationen von externen Quellen außerhalb der Vorrichtung (z.B. anderen Fahrzeugen oder Verkehrsteilnehmern, Infrastruktur-Elementen oder entfernten Datenbanken) empfangen und verarbeitet werden. Der erste Schritt kann zur Einschätzung der Wahrscheinlichkeit einer Störung dienen, während der zweite Schritt zur Plausibilisierung nur durchgeführt werden kann, wenn eine Wahrscheinlichkeit einer Störung über einer bestimmten Wahrscheinlichkeit liegt (ist die Wahrscheinlichkeit nach dem ersten Schritt zu niedrig, kann das System entscheiden, dass keine Störung vorliegt).
-
Wenn das Vorliegen einer Störung festgestellt wurde, kann eine Bewertung der Situation erfolgen.
-
Dieser Schritt kann zum Beispiel eine Kritikalitätsbewertung der Störung umfassen (z.B., ob die Störung kritisch für den Betrieb des zumindest teilautonomen Fahrzeugs und/oder für die Sicherheit seiner Insassen ist). In anderen Beispielen kann der Schritt eine Konfidenzbewertung der Wahrscheinlichkeit einer Störung umfassen. Eine Reaktion auf das Vorliegen einer Störung kann unter Berücksichtigung der Kritikalitätsbewertung und/oder Konfidenzbewertung ausgewählt werden. Zum Beispiel kann zwischen einer Störung, die die Betriebssicherheit des Fahrzeugs gefährdet (und z.B. einen Unfall provozieren könnte) und einer Störung, die die Sicherheit der Insassen oder der Fracht gefährdet (und z.B. das Fahrzeug zwecks Ausraubens der Insassen zum Stehen bringt) unterschieden werden und entsprechende Mitigationsverfahren (die im nächsten Abschnitt genauer beschrieben werden) ausgewählt werden.
-
In Reaktion auf das Vorliegen einer Störung können eines oder mehrere Mitigationsverfahren zur Abwehr der Störung durchgeführt werden.
-
In manchen Beispielen kann ein Mitigationsverfahren zur Abwehr der Störung Anpassen einer Auswahl und/oder Gewichtung von mit dem Maschinen-Lernsystem zur Umfeldkontrolle gekoppelten Sensoren umfassen. Zum Beispiel kann ein bestimmter Sensor, der von der Störung (besonders) betroffen ist, zeitweise deaktiviert werden oder seine Eingangsdaten nicht durch das Maschinen-Lernsystem zur Umfeldkontrolle 200 berücksichtigt werden. Alternativ oder zusätzlich kann eine Konfiguration eines besonders betroffenen Sensors geändert werden, um die Störung abzuwehren. In wieder anderen Beispielen kann von einer ersten Gruppe von Sensoren (z.B. ein oder mehreren Kamera-basierten Sensoren) auf eine zweite Gruppe von Sensoren (z.B. ein Lidar- und/oder Radar-Sensor) umgeschaltet werden, um die Störung abzuwehren.
-
In anderen Beispielen oder zusätzlich kann eine Anpassung des Umfeldmodells des Maschinen-Lernsystems zur Umfeldkontrolle erfolgen. Beispielsweise kann ein fehlerhaft erkanntes oder manipuliertes Element des Umfelds nicht in dieses übernommen werden oder durch ein anderes Element ersetzt werden (z.B. eine fehlerhaft erkannte Geschwindigkeitsbegrenzung durch eine korrekte Geschwindigkeitsbegrenzung).
-
In anderen Beispielen oder zusätzlich können ein oder mehrere Betriebsparameter des Maschinen-Lernsystems zur Umfeldkontrolle oder einer Vorrichtung, zu deren Steuerung und/oder Überwachung das Maschinen-Lernsystem zur Umfeldkontrolle eingesetzt wird, angepasst werden. Das kann zum Beispiel eine Verhaltensanpassung des Maschinen-Lernsystems zur Umfeldkontrolle oder einer Vorrichtung, zu dessen Steuerung und/oder Überwachung das Maschinen-Lernsystem zur Umfeldkontrolle eingesetzt wird, sein. Im Beispiel eines zumindest teilautonomen Fahrzeugs kann eine Verhaltensanpassung eine Geschwindigkeitsanpassung (z.B. eine Bremsung) oder das Durchführen eines bestimmten Fahrmanövers umfassen. In weiteren Beispielen kann die Verhaltensanpassung eine Routenanpassung (z.B. in einer zufälligen Weise) umfassen. Letzteres kann passieren, wenn ein die Sicherheit der Insassen des Fahrzeugs betreffender Angriff erkannt wird.
-
In wieder anderen Beispielen können ein oder mehrere empfohlene Mitigationsmaßnahmen einer externen Instanz („Notfallplan“) ausgeführt werden.
-
Alternativ oder zusätzlich können in Reaktion auf das Vorliegen einer Störung Erzeugen einer Warnung vor der Störung erfolgen.
-
In manchen Beispielen kann die Warnung das Alarmieren einer externen Instanz bezüglich des Vorliegens einer Störung umfassen (zum Beispiel das Alarmieren eines Sicherheitsdienstleisters oder von behördlichen Sicherheitsorganen). Dieses Alarmieren kann mittels eines geeigneten Kommunikationskanals erfolgen (z.B. eines Mobilfunkkanals oder eines anderen drahtlosen Netzwerks).
-
Zusätzlich oder alternativ kann eine Warnung der Umwelt des Maschinen-Lernsystems zur Umfeldkontrolle erfolgen. Im Falle, dass das Maschinen-Lernsystem zur Umfeldkontrolle in einem Fahrzeug eingesetzt wird, kann die Warnung an andere Fahrzeuge, Verkehrsteilnehmer und/oder Infrastruktur-Komponenten übermittelt werden. Wieder kann diese Warnung mittels eines geeigneten Kommunikationskanals erfolgen (z.B. eines Mobilfunkkanals oder eines anderen drahtlosen Netzwerks). In einem Beispiel können Fahrzeuge in der Umgebung des Fahrzeugs, das die Störung erkannt hat, gewarnt werden (z.B. entgegenkommende Fahrzeuge). Wie oben beschrieben stellt eine Warnung vor einer Störung eine Kontextinformation dar, die von einem System zur Erkennung einer Störung empfangen (z.B. von anderen Fahrzeugen, Verkehrsteilnehmern, Infrastruktur-Komponenten und/oder zentralen Stellen) werden kann und gemäß den Techniken der vorliegenden Offenbarung (wiederum) zum Erkennen von Störungen eingesetzt werden kann.
-
Zusätzlich oder alternativ kann eine Warnung eines Benutzers einer Vorrichtung, deren Umfeld das Maschinen-Lernsystem zur Umfeldkontrolle überwacht, erfolgen. Beispielsweise kann ein Bediener, Fahrer und/oder Passagier der Vorrichtung gewarnt werden. In teilautonomen Fahrzeugen kann der Fahrer und/oder Passagier aufgefordert werden, die Steuerung zu übernehmen und/oder andere Sicherheitsroutinen durchzuführen.
-
Zusätzlich oder alternativ können Informationen zum Vorliegen einer Störung an eine zentrale Stelle übermittelt werden (optional mit weiteren Informationen wie Position, Informationen zum Typ der Störung, und/oder Konfidenzinformation zu dem Erkennen der Störung). Die Informationen können der zentralen Stelle mittels eines geeigneten Kommunikationskanals übermittelt werden (z.B. eines Mobilfunkkanals oder eines anderen drahtlosen Netzwerks). Die Informationen können dann wiederum anderen Vorrichtungen (z.B. anderen Fahrzeugen) zum Zwecke des Entscheidens über das Vorliegen einer Störung zur Verfügung gestellt werden.
-
Weiter alternativ oder zusätzlich kann in Reaktion auf das Vorliegen einer Störung Plausibilisieren (bzw. Verwerfen) des Vorliegens der Störung erfolgen Wie bereits weiter oben beschrieben, können dazu die erläuterten Schritte zum Entscheiden, ob eine Störung vorliegt, ebenfalls eingesetzt werden.
-
In manchen Beispielen umfasst das Plausibilisieren des Vorliegens der Störung das Plausibilisieren mittels einer externen Datenquelle (z.B., einer Datenquelle, die mit der Vorrichtung, in der das Maschinen-Lernsystem zur Umfeldkontrolle 200 eingesetzt wird, über einen Kommunikationskanal verbunden ist).
-
In manchen Fällen kann das Plausibilisieren eine Anfrage einer Aktualisierung von Kontextinfomation, insbesondere Kartendaten umfassen. Die aktualisierten Kontextinformationen, insbesondere Kartendaten können dann von einem externen Anbieter zur Verfügung gestellt werden (z.B., ein OEM, eine Behörde oder ein Kartenanbieter). In manchen Beispielen kann die Aktualisierung aktualisierte Informationen zu bekannten oder vermuteten Störungen im Umfeld, das das Maschinen-Lernsystem zur Umfeldkontrolle überwacht, umfassen. Die aktualisierten Kontextinfomation, insbesondere Kartendaten, können mit einem der hierin beschriebenen Techniken zum Plausibilisieren (oder Verwerfen) des Vorliegens der Störungen verwendet werden.
-
Alternativ oder zusätzlich kann das Plausibilisieren die Kommunikation mit einer außerhalb einer Vorrichtung, in der das Maschinen-Lernsystem zur Umfeldkontrolle eingesetzt ist, liegenden weiteren Vorrichtung umfassen. Diese weitere Vorrichtung kann eine Infrastruktur-Komponente sein (z.B. ein Teil eines intelligenten Verkehrsleitsystems oder anderer Infrastruktur-Komponenten). Das Plausibilisieren kann das Empfangen von weiteren Kontextinformtionen von der Infrastruktur-Komponente (die dann wie hierin beschrieben verarbeitet werden kann zur Plausibilisierung des Vorliegens einer Störung) oder eine direkte Bestätigung der Störung durch die Infrastruktur-Komponente umfassen. In gleicher Weise können andere Vorrichtung als Infrastruktur-Komponente in den Prozess eingebunden werden (z.B. andere Fahrzeuge, andere Verkehrsteilnehmer, und/oder entfernte Datenbanken).
-
Neben den Vorgängen in der Vorrichtung, in der das Maschinen-Lernsystem zur Umfeldkontrolle eingesetzt ist (dessen Umfeld das Maschinen-Lernsystem zur Umfeldkontrolle also überwacht), sind in 2 auch Vorgänge in dem Maschinen-Lernsystem zur Umfeldkontrolle (in der linken Spalte) und einer externen Datenquelle (in der rechten Spalte) illustriert. Das Maschinen-Lernsystem zur Umfeldkontrolle kann das Umfeld mittels einer oder mehrerer Sensoren beobachten 302. Die Sensordaten können als Eingangsdaten einem Modell des Maschinen-Lernsystems zur Umfeldkontrolle zur Verfügung gestellt werden und in diesem zur Einschätzung des Umfelds verarbeitet 304 werden (z.B. mittels einer oder mehrerer neuronaler Netze). Wie oben beschreiben werden Daten des Maschinen-Lernsystems zur Umfeldkontrolle dem System zur Erkennung einer Störung zur Verfügung gestellt 306. Das Maschinen-Lernsystem zur Umfeldkontrolle kann weiterhin ein Umfeldmodell basierend auf der Einschätzung des Umfelds erstellen und/oder modifizieren 308. Die externe Quelle kann in manchen Fällen eine Datenbank sein, die Kontextinformationen enthält. Im in 2 gezeigten Fall weist die externe Datenquelle ebenfalls ein System zur Beurteilung des Umfelds auf (z.B. eine weiteres Maschinen-Lernsystem zur Umfeldkontrolle mit gekoppelten Sensoren). In diesem Fall können Sensordaten des Umfelds erhoben werden 310, mittels geeigneter Bewertungsschritte verarbeitet werden 312 und als Kontextinformationen abgespeichert 314 und/oder dem System zur Erkennung einer Störung zur Verfügung gestellt 316 werden.
-
3 illustriert ein beispielhaftes System zur Erkennung einer Störung 800 der vorliegenden Offenbarung.
-
Im Allgemeinen kann das System zur Erkennung einer Störung eines Maschinen-Lernsystems zur Umfeldkontrolle dazu ausgelegt sein, die hierin beschriebenen Verfahren auszuführen. Jede dazu geeignete Hardware, Software oder Kombination aus beiden kann zu diesem Zweck eingesetzt werden. In manchen Beispielen enthält das System zur Erkennung einer Störung einen Speicher, der entsprechende Instruktionen zur Ausführung der hierin beschriebenen Verfahren enthält und einen oder mehrere Prozessoren, die die Instruktionen ausführen. Das System zur Erkennung einer Störung kann lokal in einer Vorrichtung, in der das Maschinen-Lernsystem zur Umfeldkontrolle 200 eingesetzt wird, angeordnet sein (z.B. in einem zumindest teilautonomen Fahrzeug). In anderen Beispielen kann das System zur Erkennung einer Störung entfernt von einer Vorrichtung, in der das Maschinen-Lernsystem zur Umfeldkontrolle 200 eingesetzt wird, angeordnet sein (und gegebenenfalls über ein Netzwerk mit der Vorrichtung und/oder dem Maschinen-Lernsystem zur Umfeldkontrolle 200 kommunizieren). Das System zur Erkennung einer Störung kann über dedizierte Hardware verfügen, in ein übergeordnetes System integriert sein oder über mehrere Orte verteilt sein.
-
Im Allgemeinen richtet sich die vorliegende Offenbarung auch auf eine Vorrichtung (z.B. ein zumindest teilautonomes Fahrzeug), dass ein Maschinen-Lernsystem zur Umfeldkontrolle; und ein System zur Erkennung einer Störung (wie hierin beschrieben) enthält. Das System zur Erkennung einer Störung dazu ausgelegt ist, eine Störung auf das Maschinen-Lernsystem zur Umfeldkontrolle zu detektieren.
-
Im Allgemeinen richtet sich die vorliegende Offenbarung auch auf ein Computerprogramm, welches eingerichtet ist, alle Schritte der Verfahren der vorliegenden Offenbarung auszuführen. Im Allgemeinen richtet sich die vorliegende Offenbarung auch auf ein maschinenlesbares Speichermedium (z.B. einen FLASH-Speicher oder ein anderes tragbares Speichermedium), auf dem das Computerprogramm gespeichert ist, oder eine Signalfolge, die das Computerprogramm codiert.
-
Zurückkommend auf 3 ist das System zur Erkennung einer Störung 800 mit verschiedenen externen Datenquellen verbunden, um entsprechende Kontextinformationen zu empfangen Diese externen Datenquellen umfassen eine zentrale Stelle 810, die Kontextinformationen bezüglich von bekannten oder vermuteten Störungen zur Verfügung stellt. Diese Kontextinformationen können in einer dynamischen Karte 820 (d.h. eine Karte, die regelmäßig (kontinuierlich) von außen auf den neusten Stand gebracht wird) gespeichert und/oder direkt von dem System zur Erkennung einer Störung 800 verarbeitet werden. Zusätzlich kann das System zur Erkennung einer Störung 800 auf eine statische Karte 830 (z.B. eine im Fahrzeug hinterlegte Karte) zugreifen, um weitere Kontextinformationen zu erlangen. Neben den Kontextinformationen greift das System zur Erkennung einer Störung 800 auf Sensoren 840, die auch Eingangsdaten für ein Maschinen-Lernsystem zur Umfeldkontrolle (nicht in 3 gezeigt) liefern, zu. Im Beispiel von 3 umfassen die Sensoren 840 einen Kamera-basierten Sensor, einen Radar-Sensor und einen Lidar-Sensor. Neben den Sensoren greift das System zur Erkennung einer Störung 800 auf ein Umfeldmodell 850 der Vorrichtung 860, in der das Maschinen-Lernsystem zur Umfeldkontrolle eingesetzt wird, zu. Die verfügbaren Daten werden in dem System zur Erkennung einer Störung 800 wie in der vorliegenden Offenbarung beschrieben verarbeitet, um zu entscheiden, ob eine Störung vorliegt. Das System zur Erkennung einer Störung 800 kann je nach Ausgang der Entscheidung Mitigationsverfahren einleiten (z.B. durch Anpassung des Umfeldmodells 850 und/oder der Anpassung eines Verhaltens der Vorrichtung 860). Zusätzlich kann das Ergebnis der Entscheidung an die zentrale Stelle 810 zurückgespeist werden.
-
Im Allgemeinen können die Datenquellen der vorliegenden Offenbarung regelmäßig (d.h. kontinuierlich) auf den neusten Stand gebracht werden. Das trifft insbesondere für Datenquellen, die in der Vorrichtung (z.B. einem Fahrzeug) angeordnet sind, in der das Maschinen-Lernsystem zur Umfeldkontrolle 200 eingesetzt wird (z.B. Kartendaten). Der Vorgang des auf den neusten Stand Bringens kann ein Update über einen geeigneten Kommunikationskanal umfassen (z.B. einen drahtlosen Kommunikationskanal, ggf. im Betrieb des Fahrzeugs).
-
In der vorhergehenden Diskussion wurde häufig das Beispiel eines zumindest teilautonomen Fahrzeugs (insbesondere eines autonomen Fahrzeugs) zur Erläuterung der Techniken der vorliegenden Offenbarung herangezogen. Das Fahrzeug kann zum Beispiel ein Automobil, ein Bus, ein Lastkraftwagen, ein Schiff oder Boot, ein Flugzeug (inklusive Hubschrauber und Weltraumfahrzeuge), ein Zug, eine Straßenbahn oder ein Motorrad sein.
-
Die Techniken der vorliegenden Offenbarung sind jedoch nicht auf diese Anwendungsfälle beschränkt, sondern können für sämtliche Vorrichtungen, in denen Maschinen-Lernsystem zur Umfeldkontrolle zu finden sind, zum Einsatz kommen (es sei denn, ein entsprechender Aspekt der Offenbarung ist dediziert nur für zumindest teilautonome Fahrzeuge anwendbar).
-
Neben zumindest teilautonomen Fahrzeugen können Techniken der vorliegenden Offenbarung zum Beispiel zur Erkennung von Störungen eines Maschinen-Lernsystems zur Umfeldkontrolle in anderen Transportmitteln (für Passagiere und/oder Fracht) eingesetzt werden.
-
In anderen Beispielen können die Techniken der vorliegenden Offenbarung zum Beispiel zur Erkennung von Störungen eines Maschinen-Lernsystems zur Umfeldkontrolle in Robotik-Vorrichtungen eingesetzt werden (beispielsweise in Industrierobotern, Erkundungsrobotern, Haushalts- und/oder Werkzeugrobotern).
-
In anderen Fällen können die Techniken der vorliegenden Offenbarung zum Beispiel zur Erkennung von Störungen eines Maschinen-Lernsystems zur Umfeldkontrolle in Vorrichtungen zur Überwachung eingesetzt werden. Diese Vorrichtungen zur Überwachung können zum Beispiel zur Überwachung von Verkehrssituationen, Anlagen oder Maschinen (z.B. Vorrichtungen zur Inspektion, Prozessüberwachung, und/oder zur Bereitstellung von Sicherheitsfunktionen) und für Sicherheitsanwendungen (z.B. zur Überwachung von Objekten oder öffentlichen oder privaten Räumen) eingesetzt werden.
-
Zum Beispiel können die Techniken der vorliegenden Offenbarung zum Beispiel zur Erkennung von Störungen von Maschinen-Lernsystemen zur Umfeldkontrolle in Vorrichtungen zur Überwachung und/oder Leiten von Verkehrsströmen (z.B. Infrastrukturkomponenten). Das können beispielsweise kamera-basierte Maschinen-Lernsystem zur Umfeldkontrolle sein.