-
Die Erfindung betrifft eine Vorrichtung zum Erzeugen eines manipulierten Datensignals, eine Vorrichtung zum Beurteilen einer Robustheit eines Aktorsteuerungssystems, ein Aktorsteuerungssystem, eine Vorrichtung zum Trainieren eines Aktorsteuerungssystems, und ein Aktorsteuerungssystem, das mit diesem Verfahren trainiert wurde.
-
Stand der Technik
-
Aus der
DE 10 2005 050 577 A1 ist ein neuronales Netz für eine Steuerungsvorrichtung bekannt. Die Erfindung prüft ein neuronales Netz 1 für eine Steuerungsvorrichtung. Das neuronale Netz weist eine Mehrzahl erster Neuronen N1, N2, ..., Nn in einer ersten Schicht und einem zweiten Neuron M in einer auf die erste Schicht folgenden zweiten Schicht auf. Aus einer vorgegebenen Mehrzahl von Testsignal-Kombinationen wird jede Testsignal-Kombination ausgewählt. Jede Testsignal-Kombination ordnet jedem ersten Neuron N1, N2, ..., Nn einen Test-Eingangssignalvektor ut1, ut2, ..., utk zu, welcher entweder ein Nullsignal ist oder das zugehöri-ge erste Neuron N1, N2, ..., Nn derart sättigt, dass das erste Neuron N1, N2, ..., Nn einen unteren Sättigungswert φmin ausgibt, oder das zugehörige erste Neuron N1, N2, ..., Nn derart sättigt, dass das erste Neuron N1, N2, ..., Nn einen oberen Sättigungswert ausgibt. Die Testsignal-Kombination wird an die ersten Neuronen N1, N2, ..., Nn angelegt und das Ausgangssignal p des zweiten Neurons M wird erfasst. Ein Teil-Prüfungssignal wird gespeichert, wenn das Ausgangs-signal p größer als ein vorgegebener Schwellwert ist. Ein positives Gesamt-Prüfsignal wird ausgegeben, nachdem jede der Testsignal-Kombinationen angelegt wird und wenn kein Teil-Prüfsignal gespeichert ist für die vorgegebene Mehrzahl der Testsignal-Kombinationen gespeichert wird
-
Vorteil der Erfindung
-
Das Verfahren mit den Merkmalen des unabhängigen Anspruch 1 hat demgegenüber dem Vorteil, dass es ermöglicht, semantische Segmentierungen, die mittels maschineller Lernverfahren ermittelt werden, besonders robust gegenüber Irreführungsbeispielen (engl. „Adversarial Examples”) zu machen. Adversarial Examples sind geringfügig manipulierte Eingangsdaten (die bei Bilddaten den unmanipulierten Eingangsdaten so ähnlich sind, dass sie für menschliche Experten praktisch nicht zu unterscheiden sind), die zu einer erheblichen Änderung der ermittelten semantischen Segmentierung führen können. Beispielsweise wäre es denkbar, dass ein bösartiger Angreifer ein solches Irreführungsbeispiel einsetzt, um einen autonomen Roboter in die Irre zu leiten, indem er beispielsweise eine semantische Segmentierung, die einen tatsächlich vorhanden Fluss als „Fluss” markiert, unterdrückt, was zu einer Gefährdung des autonomen Roboters, der seine Routenplanung basierend auf dieser semantischen Segmentierung durchführt, führen könnte. Mit dem erfindungsgemäßen Verfahren kann die Wirksamkeit solcher Angriffe reduziert werden.
-
Vorteilhafte Weiterbildungen sind Gegenstand der unabhängigen Ansprüche.
-
Offenbarung der Erfindung
-
In einem ersten Aspekt betrifft die Erfindung eine Vorrichtung zum Generieren eines manipulierten Datensignals zum Täuschen eines ersten maschinellen Lernsystems, welches eingerichtet ist, eine semantische Segmentierung eines empfangenen ein- oder mehrdimensionalen Datensignals zu ermitteln, wobei die Vorrichtung ein maschinenlesbares Speichermedium umfasst, auf dem Befehle gespeichert sind, die beim Ausführen durch einen Computer bewirken, dass der Computer ein Verfahren mit den folgenden Schritten ausführt:
- a) Ermitteln gewünschten semantischen Segmentierung des manipulierten Datensignals; und
- b) Generieren des manipulierten Datensignals, abhängig vom empfangenen Datensignal und der ermittelten gewünschten semantischen Segmentierung sowie einer geschätzten semantischen Segmentierung des manipulierten Datensignals.
-
Eine semantische Segmentierung des Datensignals bedeutet hierbei wie üblich, dass Bereichen des Datensignals ein semantischer Wert aus einer vorgegebenen Auswahl möglicher semantischer Werte zugeordnet wird.
-
Wird die semantische Segmentierung dieser Irreführungsbeispiele mit dem ersten maschinellen Lernsystem ermittelt, so ergibt sich abhängig von der gewünschten semantischen Segmentierung ein deutlicher Unterschied gegenüber der entsprechenden semantischen Segmentierung des jeweiligen entsprechenden unbeaufschlagten Datensignals.
-
Die geschätzte semantische Segmentierung kann hierbei durch das erste maschinelle Lernsystem ermittelt werden, oder durch eine Nachbildung des ersten maschinellen Lernsystems.
-
Die semantische Segmentierung erfolgt hierbei vorzugsweise „pixelweise”, d. h. die semantische Segmentierung hat die gleiche Dimensionalität wie das ein- oder mehrdimensionale Datensignal und weist vorzugsweise jedem Datenpunkt in dem ein- oder mehrdimensionalen Datensignal einen semantischen Wert zu.
-
Durch das Generieren derartig manipulierter Datensignale ist es insbesondere möglich, die Robustheit des ersten maschinellen Lernsystems zum semantischen Segmentieren gegen etwaige Angreifer zu verbessern und zuverlässig zu beurteilen.
-
In einer vorteilhaften Weiterbildung kann vorgesehen sein, dass die gewünschte semantische Segmentierung abhängig von einer geschätzten semantischen Segmentierung des empfangenen Datensignals gewählt werden.
-
Auf diese Weise können die gewünschten semantischen Segmentierungen mit besonders wenig Aufwand generiert werden, da eine tatsächliche „wahre” semantische Segmentierung der Datensignale des Trainings-Datensatzes nicht benötigt wird.
-
Ferner kann vorgesehen sein, dass die gewünschten semantischen Werte der gewünschten semantischen Segmentierung abhängig davon gewählt werden, ob die geschätzten semantischen Werte der geschätzten semantischen Segmentierung einen vorgebbaren Wert annehmen.
-
Auf diese Weise lassen sich besonders gut Angriffe nachbilden, die darauf abzielen, Information von Datenpunkten, deren semantischer Wert einen vorgebbaren Wert hat, zu unterdrücken.
-
Hierbei kann vorgesehen sein, dass die gewünschten semantischen Werte an einer Stelle, an der die geschätzten semantischen Werte den vorgebbaren Wert annehmen, durch einen Ersatzwert ersetzt werden. Der Ersatzwert ist hierbei ein anderer Wert als der geschätzte semantische Wert.
-
Vorteilhafterweise ist der Ersatzwert derjenige geschätzte semantische Wert an einer Ersatzstelle, die in der Nähe der Stelle ist. Die Ersatzstelle kann hierbei beispielsweise die am nächsten liegende Stelle sein, deren geschätzter semantischer Wert sich von dem vorgebbaren Wert unterscheidet.
-
In einem weiteren Aspekt kann vorgesehen sein, dass die gewünschten semantischen Werte gleich den geschätzten semantischen Werten gewählt werden, wenn die geschätzten semantischen Werte den vorgebbaren Wert nicht annehmen. D. h. an den Stellen, insbesondere an genau den Stellen, an denen die geschätzten semantischen Werte den vorgebbaren Wert nicht annehmen, werden die gewünschten semantischen Werte gleich den geschätzten semantischen Werten gewählt.
-
Mit jeder der beiden vorgenannten Maßnahmen ist es möglich, einen Angreifer nachzubilden, der die unterdrückten Datenpunkte besonders harmonisch in die semantische Segmentierung des Hintergrunds übergehen lässt, und damit einen besonders gezielten Angriff durchführt.
-
Dies kann dadurch geschehen, dass das Generieren des manipulierten Datensignals von einem Funktionswert einer Kostenfunktion des ersten maschinellen Lernsystems geschieht, den diese Kostenfunktion unter den so manipulierten Datensignalen und für die gewünschten semantischen Segmentierungen annimmt. D. h. die Kostenfunktion hat in üblicher Weise als Argumente den Ausgangswert (die ermittelte semantische Segmentierung) des ersten maschinellen Lernsystems, den dieses in Abhängigkeit seines Eingangssignals (dem Datensignal) ermittelt hat. Die Kostenfunktion hat ferner wie üblich eine gewünschte semantische Segmentierung (also gewünschte semantische Werte) als weiteres Argument. Es ist hier nun vorgesehen, dass als Eingangssignal das Datensignal durch das manipulierte Datensignal ersetzt wird.
-
Konkret kann das manipulierte Datensignal aus einer Menge erlaubter Datensignale derart ausgewählt wird, dass es die Kostenfunktion unter den so manipulierten Datensignalen für die gewünschten semantischen Werte numerisch minimiert. Eine solche numerische Minimierung kann beispielsweise durch ein iteratives Verfahren erfolgen, wobei das iterative Verfahren beendet wird, wenn eine vorgebbares Abbruchkriterium (beispielsweise nach einer vorgebbaren Anzahl Iterationsschritte) erreicht ist. Es versteht sich für den Fachmann, dass hierbei das theoretisch erreichbare Minimum üblicherweise nicht genau sondern lediglich näherungsweise erreicht sein wird.
-
In einer flexiblen Weiterbildung kann vorgesehen sein, dass die Kostenfunktion zwei Anteile umfasst, von denen einer den Anteil derjenigen Stellen an der Kostenfunktion charakterisiert, deren geschätzte semantische Werte den vorgebbaren Wert annehmen und der andere den Anteil derjenigen Stellen an der Kostenfunktion charakterisiert, deren geschätzte semantische Werte den vorgebbaren Wert nicht annehmen, wobei diese beiden Anteile vorgebbar gegeneinander gewichtet werden.
-
Auf diese Weise ist es auf besonders einfache Weise möglich, flexibel sowohl solche Angriffe nachzubilden, deren Ziel es ist, möglichst effizient Informationen von Datenpunkten, deren semantische Segmentierung einen vorgebbaren Wert hat, zu unterdrücken (dies kann geschehen, indem der erste Anteil hoch gewichtet wird), als auch solche Angriffe nachzubilden, deren Ziel es ist, den semantischen Hintergrund möglichst intakt zu lassen, um damit besonders schwer identifizierbar zu sein (dies kann geschehen, indem der zweite Anteil hoch gewichtet wird).
-
In einem weiteren Aspekt richtet sich die Erfindung auf solche Datensignale, die eine Folge von Zeitscheiben umfassen, wie beispielsweise Videosignale. Nun kann vorgesehen sein, dass die gewünschte semantische Segmentierung des Datensignals einer vorgebbaren Zeitscheibe abhängig von einer geschätzten semantischen Segmentierung des Datensignals einer weiteren Zeitscheibe gewählt wird, wobei die weitere Zeitscheibe zeitlich vor der vorgebbaren Zeitscheibe liegt. Dies kann in vorteilhafter Weise dazu dienen, einen Angreifer nachzubilden, der eine verdächtige Aktivität beispielsweise vor einer Videoüberwachung mit einer statischen Kamera verbergen möchte.
-
Dies kann in besonders einfacher Weise dadurch geschehen, dass die weitere Zeitscheibe fest gewählt wird und die gewünschte semantische Segmentierung des Datensignals zu jeder vorgebbaren Zeitscheibe, die zeitlich nach der weiteren Zeitscheibe liegt, gleich der geschätzten semantischen Segmentierung des Datensignals der weiteren Zeitscheibe gewählt wird.
-
In einem weiteren weiterbildenden Aspekt ist vorgesehen, die Erfindung zum Beurteilen einer Robustheit eines Aktorsteuerungssystems zum Ansteuern eines Aktors anzuwenden, welches ein erstes maschinelles Lernsystem umfasst, das eingerichtet ist, eine semantische Segmentierung eines empfangenen ein- oder mehrdimensionalen Datensignals zu ermitteln, das einen Zustands eines Aktorsystem umfassend den Aktor und eine Umgebung des Aktors charakterisiert,
wobei das Aktorsteuerungssystem eingerichtet ist, abhängig von der ermittelten semantischen Segmentierung ein Ansteuersignal zu ermitteln und den Aktor abhängig von dem ermittelten Ansteuersignal anzusteuern,
wobei ein manipuliertes Datensignal abhängig vom Datensignal mit einem der vorgenannten Verfahren ermittelt wird und ein zweites Ansteuersignal abhängig von einer ermittelten zweiten semantischen Segmentierung ermittelt wird, welche mittels des ersten maschinellen Lernsystems durch Austausch des Datensignals durch das manipulierte Datensignal ermittelt wird (d. h. dem ersten maschinellen Lernsystem wird das manipulierte Datensignal anstelle des Datensignals zugeführt). Hierbei wird dann abhängig von Ansteuersignal und auch abhängig vom zweiten Ansteuersignal entschieden, ob das Aktorsteuerungssystem robust ist, oder nicht.
-
Ein solches Verfahren kann insbesondere auch während des Betriebs des Aktorsteuerungssystems ablaufen, um fortlaufend oder in regelmäßigen Zeitintervallen zu beurteilen, ob sich das Aktorsteuerungssystem gegen einen etwaigen Angriff robust verhalten würde.
-
Hierauf aufbauend kann ein Betreiben eines Aktorsteuerungssystems zum Ansteuern eines Aktors vorgesehen werden, wobei wie oben beschrieben beurteilt wird, ob das Aktorsteuerungssystem robust ist, oder nicht, und das Aktorsteuerungssystem abhängig von der Beurteilung den Aktor ansteuert, wobei das Aktorsteuerungssystem insbesondere in einen abgesicherten Modus überführt werden kann, wenn die Beurteilung ergibt, dass das Aktorsteuerungssystem nicht robust ist.
-
In einem noch weiteren Aspekt betrifft die Erfindung das Trainieren eines Aktorsteuerungssystem welches insbesondere ein erstes maschinelle Lernsystems umfasst, das eingerichtet ist, eine semantische Segmentierung eines empfangenen ein- oder mehrdimensionalen Datensignals zu ermitteln das einen Zustands eines Agentensystems, insbesondere ein Aktorsystem umfassend einen Aktor und eine Umgebung des Aktors charakterisiert, wobei das Aktorsteuerungssystem ferner eingerichtet ist, einen Ausgabewerts eines zweiten maschinellen Lernsystems zu ermitteln, wobei der Ausgabewert eine Wahrscheinlichkeit charakterisiert, dass die semantische Segmentierung falsch ist, insbesondere, ob das Datensignal ein Irreführungsbeispiel ist, wobei ein Ansteuern des Aktors abhängig von der ermittelten semantischen Segmentierung erfolgen kann, und das Ansteuern des Aktors gemäß einer Fehlerabwehrreaktion erfolgen kann, wenn entschieden wurde, dass ein Fehler vorliegt.
-
Dieses Trainingsverfahren umfasst die folgenden Schritte:
- a) Auswahl einer Untermenge von Datensignalen aus einer Trainings-Menge für das zweite maschinelle Lernsystem, die Datensignale umfasst,
- b) Entscheiden, ob die Datensignale dieser Untermenge manipuliert werden sollen oder nicht,
- c) Sofern entschieden wurde, dass die Datensignale manipuliert werden sollen, Ermitteln manipulierter Datensignale abhängig von den jeweiligen Datensignalen mit einem der vorgenannten Verfahren und Ersetzen der Datensignale durch die jeweiligen ermittelten manipulierten Datensignale,
- d) Setzen eines gewünschten Ausgabewerts auf den Wert eines vorgebbaren ersten Zahlenwerts, wenn die Datensignale nicht manipuliert werden bzw. auf einen zweiten, vom ersten Zahlenwert verschiedenen vorgebbaren zweiten Zahlenwert, wenn die Datensignale manipuliert werden, und
- e) Trainieren der Parameter des zweiten maschinellen Lernsystems mit der (ggf. manipulierten) Untermenge von Beobachtungswerten und zugehörigen gewünschten Ausgabewerten.
-
Durch die Anpassung der Manipulation der Datensignale an die jeweiligen Datensignale kann mit diesem Trainingsverfahren eine Überanpassung des zweiten maschinellen Lernsystems besonders gut vermieden werden.
-
In einem noch weiteren Aspekt betrifft die Erfindung ein Aktorsteuerungssystem welches ein erstes maschinelles Lernsystem umfasst, das eingerichtet ist, eine semantische Segmentierung eines empfangenen ein- oder mehrdimensionalen Datensignals zu ermitteln und ein zweites maschinelles Lernsystem umfasst, das mit diesem Trainingsverfahren trainiert wurde.
-
Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. In den Zeichnungen zeigen:
-
1 schematisch eine Interaktion zwischen Aktor und Aktorsteuerungssystem;
-
2 schematisch eine Interaktion zwischen Trainingssystem und Aktorsteuerungssystem;
-
3 eine Ausführungsform eines Trainingsverfahrens;
-
4 Ausführungsformen des Verfahrens zum Ermitteln des manipulierten Datensignals;
-
5 eine Ausführungsform des Verfahrens zum Beurteilen der Robustheit des Aktorsteuerungssystems;
-
6 eine Ausführungsform des Verfahrens zum Betreiben des Aktorsteuerungssystems.
-
Beschreibung der Ausführungsbeispiele
-
1 zeigt einen Aktor 10 in seiner Umgebung 20 in Interaktion mit einem Aktorsteuerungssystem 40. Aktor 10 und Umgebung 20 werden gemeinschaftlich nachfolgend auch als Aktorsystem bezeichnet. Ein Zustand des Aktorsystems wird mit einem Sensor 30 erfasst, der auch durch eine Mehrzahl von Sensoren gegeben sein kann. Ein Ausgangssignal S des Sensors 30 wird an das Aktorsteuerungssystem 40 übermittelt. Das Aktorsteuerungssystem 40 ermittelt hieraus ein Ansteuersignal A, welches der Aktor 10 empfängt.
-
Bei dem Aktor 10 kann es sich beispielsweise um einen (teil-)autonomen Roboter, beispielsweise ein (teil-)autonomes Kraftfahrzeug handeln. Bei dem Sensor 30 kann es sich beispielsweise um einen oder mehrere Videosensoren und/oder einen oder mehrere Radarsensoren und/oder einen oder mehrere Ultraschallsensoren und/oder einen oder mehrere Positionssensoren (beispielsweise GPS) handeln. Alternativ oder zusätzlich kann der Sensor 30 auch ein Informationssystem umfassen, das eine Information über einen Zustand des Aktorsystems ermittelt, wie beispielsweise ein Wetterinformationssystem, das einen aktuellen oder zukünftigen Zustand des Wetters in der Umgebung 20 ermittelt.
-
In einem anderen Ausführungsbeispiel kann es sich bei dem Aktor 10 um einen Fertigungsroboter handeln, und bei dem Sensor 30 dann beispielsweise um einen optischen Sensor handeln, der Eigenschaften von Fertigungserzeugnissen des Fertigungsroboters erfasst.
-
In einem weiteren Ausführungsbeispiel kann es sich bei dem Aktor 10 um ein Freigabesystem handeln, welches eingerichtet ist, die Aktivität eines Geräts freizugeben oder nicht. Bei dem Sensor 30 kann es sich beispielsweise um einen optischen Sensor (beispielsweise zur Erfassung von Bild- oder Videodaten) handeln, der eingerichtet ist, ein Gesicht zu erfassen. Der Aktor 10 ermittelt abhängig vom Ansteuersignal A ein Freigabesignal, das benutzt werden kann, um abhängig vom Wert des Freigabesignals das Gerät freizugeben. Bei dem Gerät kann es sich beispielsweise um eine physische oder logische Zugangskontrolle handeln. Abhängig vom Wert des Ansteuersignals A kann die Zugangskontrolle dann vorsehen, dass Zugang gewährt wird, oder nicht.
-
Das Aktorsteuerungssystem 40 empfängt das Ausgangssignal S des Sensors in einer optionalen Empfangseinheit 50, die das Ausgangssignal S in ein Datensignal x umwandelt (alternativ kann auch unmittelbar das Ausgangssignal S als Datensignal x übernommen werden). Das Datensignal x kann beispielsweise ein Ausschnitt oder eine Weiterverarbeitung des Ausgangssignals S sein. Das Ausgangssignal x wird einem ersten maschinellen Lernsystem 60, beispielsweise einem neuronalen Netzwerk, zugeführt.
-
In einem im Folgenden beschriebenen bevorzugten Ausführungsbeispiel ist das Datensignal x ein zweidimensionales Bildsignal, dessen Pixel durch einen oder drei Zahlenwerte charakterisiert sind. Das Datensignal x kann aber auch ein anderes ein- oder mehrdimensionales Datensignal sein.
-
Das erste maschinelle Lernsystem 60 ermittelt aus dem Bildsignal x eine zugehörige semantische Segmentierung y_cls. Hierbei wird jedem Bereich des Bildsignals x ein semantischer Wert zugeordnet. Im Ausführungsbeispiel wird eine pixelweise Segmentierung durchgeführt, d. h. die semantische Segmentierung y_cls hat die gleiche Dimension wie das Datensignal x.
-
Hierbei kann die semantische Segmentierung y_cls Wahrscheinlichkeiten charakterisieren, dass dieser Pixel als einer semantischen Klasse (aus einer Mehrzahl semantischer Klassen) zugehörig klassifiziert wird. Die semantische Segmentierung y_cls kann für jeden Pixel beispielsweise eine vektorwertige Größe sein, die für jede der semantischen Klassen mittels einer zugeordneten Zahl im Werteintervall [0; 1] angibt, wie hoch die Wahrscheinlichkeit ist, dass dieser Pixel der jeweiligen semantischen Klasse zuzuordnen ist. Die semantische Segmentierung y_cls kann für jeden Pixel auch eine skalare Größe sein, beispielsweise ein Bezeichner derjenigen semantischen Klasse, deren oben beschriebene Wahrscheinlichkeit den größten Wert annimmt.
-
Das Aktorsteuerungssystem 40 umfasst ferner ein zweites maschinelles Lernsystem 70, beispielsweise ein neuronales Netzwerk. Das zweite maschinelle Lernsystem 70 empfängt ebenfalls das Bildsignal x und ermittelt hieraus einen Ausgabewert y_det, der beispielsweise eine Zahl im Wertebereich [0; 1] sein kann und eine Wahrscheinlichkeit charakterisieren kann, dass der Beobachtungswert B derart manipuliert wurde, dass die semantische Segmentierung y_cls die Bilddaten x nicht korrekt charakterisiert.
-
Im Ausführungsbeispiel wird dies dadurch erreicht, dass das zweite maschinelle Lernsystem 70 derart eingerichtet ist, dass der Ausgabewert y_det eine Wahrscheinlichkeit charakterisiert, dass es sich bei dem Bildsignal x um ein Irreführungsbeispiel handelt.
-
Semantische Segmentierung y_cls und Ausgabewert y_det werden einer Ausgabeeinheit 80 übermittelt, die hieraus das Ansteuersignal A ermittelt. Beispielsweise ist es möglich, dass die Ausgabeeinheit zunächst überprüft, ob der Ausgabewert y_det kleiner ist als ein vorgebbarer Schwellenwert. Ist dies der Fall, wird abhängig von der semantischen Segmentierung y_cls das Ansteuersignal A ermittelt. Dies ist der Normalfall. Wird hingegen ermittelt, dass der Ausgabewert y_det nicht kleiner ist als der vorgebbare Schwellenwert, so kann vorgesehen sein, dass das Ansteuersignal A derart ausgebildet ist, dass es den Aktor A in einen abgesicherten Modus überführt.
-
Das Aktorsteuerungssystem 40 umfasst in einer Ausführungsform einen Computer und ein maschinenlesbares Speichermedium (nicht dargestellt), auf dem ein Computerprogramm gespeichert ist, dass, wenn es vom Computer ausgeführt wird, diesen veranlasst, die beschriebenen Funktionalitäten des Aktorsteuerungssystems 40 auszuführen. Erstes maschinelles Lernsystem 60 und zweites maschinelles Lernsystem 70 können hier insbesondere als separate oder gemeinsame Computerprogramme implementiert sein.
-
2 illustriert die Interaktion zwischen einem Trainingssystem 90, dem ersten maschinellen Lernsystem 60 und dem zweiten maschinellen Lernsystem 70. Das Trainingssystem 90 hält einen Trainings-Datensatz vor, der Bildsignale x umfasst. Aus dem Trainings-Datensatz werden ein oder mehrere Bildsignale x ausgewählt und dem ersten maschinellen Lernsystem 60 zur Verfügung gestellt. Es kann sich hierbei um einzelne Bildsignale x handeln, also solche, die dem ersten maschinellen Lernsystem 60 auch bei Interaktion des Aktorsteuerungssystems 40 mit Aktor 10 und Sensor 30 zugeführt werden. Es kann sich aber auch um einen Stapel (engl. „batch”), also eine Mehrzahl von solchen Bilddaten x handeln.
-
Das erste maschinelle Lernsystem 60 ermittelt aus den ihm zugeführten Bilddaten x jeweils eine semantische Segmentierung y_cls. Ebenso ermittelt das zweite maschinelle Lernsystem 60 analog zu 1 einen Ausgabewert y_det. Semantische Segmentierung y_cls und Ausgabewert y_det werden wieder dem Trainingssystem 90 zugeführt. Das Trainingssystem 90 ermittelt hieraus ein Parameteranpassungssignal P, das kodiert, welche Parameter des zweiten maschinellen Lernsystems 70 wie ihren Wert ändern sollen. Diese gewünschte Anpassung erfolgt beispielsweise durch die Vorgabe gewünschter Werte für den Ausgabewert y_det und Backpropagation. Das Trainingssystem 90 führt zu diesem Zweck das Parameteranpassungssignal P einem Anpassungsblock 95 zu, der die Parameter im ersten maschinellen Lernsystem 60 und im zweiten maschinellen Lernsystem 70 entsprechend anpasst. Es ist hierbei möglich, dass nur die Parameter des ersten maschinellen Lernsystems 60 oder nur die Parameter des zweiten maschinellen Lernsystems 70 angepasst werden.
-
Trainingssystem 90 umfasst in einer Ausführungsform einen Computer und ein maschinenlesbares Speichermedium (nicht dargestellt), auf dem ein Computerprogramm gespeichert ist, das, wenn es vom Computer ausgeführt wird, diesen veranlasst, die beschriebenen Funktionalitäten des Lernsystems 90 auszuführen.
-
3 zeigt in einem Flussdiagramm eine Ausführungsform eines Verfahrens zum Trainieren der Parameter des zweiten maschinellen Lernsystems 70 durch das Trainingssystem 90.
-
Hierbei werden die Parameter des ersten maschinellen Lernsystems 60 eingefroren und die Parameter des zweiten maschinellen Lernsystems 60 trainiert.
-
Zunächst (1110) wird für jedes Bildsignal x, das in der ersten Trainingsphase dem ersten maschinellen Lernsystem 60 zugeführt wurde, entschieden, ob es manipuliert wird oder nicht. Dies kann beispielsweise zufällig mit einer vorgebbaren Wahrscheinlichkeit, beispielsweise 50%, erfolgen.
-
Anschließend (1120) werden die gewünschten zweiten Ausgabewerte y_det von Bildsignalen x, die manipuliert werden sollen, auf den Wert „1” gesetzt, ansonsten auf den Wert „0”.
-
Im folgenden Schritt 1130 wird zu den Bildsignalen x, die manipuliert werden sollen, jeweils ihre manipulierte Form xadv ermittelt. Das Verfahren zum Generieren der manipulierten Bildsignale xadv ist in 4 illustriert.
-
Dann (1140) werden Bildsignale x, die manipuliert werden sollen, durch ihre ermittelte manipulierte Form xadv ersetzt.
-
Im nun folgenden Schritt 1150 werden die trainierten Parameter des ersten maschinellen Lernsystems 60 eingefroren und die Parameter des zweiten maschinellen Lernsystems 70 trainiert.
-
Das Trainieren der Parameter erfolgt mittels der beschriebenen Kostenfunktion Jdet des zweiten maschinellen Lernsystems 70 und Backpropagation.
-
Damit endet die zweite Phase 1100.
-
4 zeigt in Flussdiagrammen Verfahren zum Generieren der manipulierten Bildsignale xadv 4a zeigt ein erstes solches Verfahren.
-
In einem ersten Schritt 2000 wird das Bildsignal x, zu dem das manipulierte Bildsignal xadv generiert werden soll, zur Verfügung gestellt.
-
Es folgt Schritt 2010, in dem mittels des ersten maschinellen Lernsystems 60 die zugehörige semantische Segmentierung y_cls ermittelt wird (anstelle des ersten maschinellen Lernsystems 60 kann ein gleichwertiges System angewendet werden). Diese semantische Segmentierung y_cls wird im Folgenden auch mit dem Symbol fθ(x) bezeichnet, wobei θ die Parameter des ersten maschinellen Lernsystems 60 bezeichnet und f die Abbildungsvorschrift bezeichnet, die das maschinelle Lernsystem 60 ausführt. Für jeden Punkt (i, j) wird also ein semantischer Wert ypredij = f(x) geschätzt. Die zugehörige geschätzte semantische Segmentierung wird auch mit dem Symbol ypred bezeichnet.
-
In Schritt 2020 wird eine vorgebbare Klasse o definiert, d. h. o ist ein vorgebbarer Wert, der einem der zulässigen semantischen Werte entspricht. Nun wir eine Vordergrund-Menge lo als die Menge all derjenigen Punkte (i, j) des Bildsignals x definiert, deren zugehörige geschätzte semantische Werte ypred ij diesen vorgebbaren Wert o annehmen. Es wird ferner eine Hintergrund-Menge lbg ermittelt, die all diejenigen Punkte umfasst, deren zugehörige geschätzte semantische Werte ypred ij diesen vorgebbaren Wert 0 nicht annehmen. Die Vereinigung aus Vordergrund-Menge lo und Hintergrund-Menge lbg wird auch als Gesamt-Menge l bezeichnet.
-
In Schritt
2030 wird für das Bildsignal x eine gewünschte semantische Segmentierung y
target ermittelt, deren zugehörige semantische Werte y
target ij für jeden Punkt (i, j), der in der Hintergrund-Menge l
bg enthalten ist, gleich dem entsprechenden geschätzten semantischen Wert y
pred ij gewählt wird. Ferner wird für jeden Punkt (i, j), der in der Vordergrund-Menge l
0 enthalten ist, ein Ersatzwert ermittelt. Hierzu wird zunächst eine Ersatzstelle (i', j') im Bildsignal x ermittelt, und zwar mittels
-
Als Ersatzwert wird dann der semantische Wert an dieser Ersatzstelle (i', j') gewählt. Dieser wird in der gewünschten semantischen Segmentierung ytarget für den Punkt (i, j) gewählt, also ytarget ij = ypred i'j'.
-
In einer alternativen Ausführungsform durchläuft das Verfahren an Stelle der Schritte 2000, 2010, 2020 und 2030 die alternativen Schritte 2001, 2011, 2021 und 2031. Diese alternative Ausführungsform kann bei Bildsignalen x angewandt werden, die aus mehreren Zeitscheiben t bestehen, wie beispielsweise Videosignalen, d. h. zu jeder Zeitscheibe t enthält das Bildsignal x ein dieser Zeitscheibe zugeordnetes Bildsignal xt.
-
Die alternative Ausführungsform beginnt in Schritt 2001, in dem für eine eine konkrete Zeitscheibe t das zu manipulierende Bildsignal xt zur Verfügung gestellt wird.
-
Dann (2011) wird eine weitere Zeitscheibe t0 vorgegeben und das zu dieser Zeitscheibe t0 gehörige Bildsignal xt0 wird zur Verfügung gestellt. Die zu diesem Bildsignal xt0 gehörige semantische Segmentierung ypred t0 wird analog zu Schritt 2010 als ypred t0 = fθ(xt0) ermittelt.
-
In Schritt 2021 wird für den Fall, dass die Zeitscheibe t zu einem späteren Zeitpunkt als die weitere Zeitscheibe t0 gehört die gewünschte semantische Segmentierung ytarget t = ypred t0 gesetzt.
-
In Schritt 2031 wird für den Fall, dass die Zeitscheibe t nicht zu einem späteren Zeitpunkt als die weitere Zeitscheibe t0 gehört, die gewünschte semantische Segmentierung ytarget t analog zu den Schritten 2000 bis 2030 ermittelt, wobei in den Schritten an Stelle des Bildsignals x das zur betrachteten Zeitscheibe t gehörige Bildsignal xt herangezogen wird.
-
Nun (2040) wird eine Datensignalstörung ξ(0) mit der Dimension des Bildsignals x mit ξ(0) = 0 initialisiert. Ein Zähler n wird auf den Wert n = 0 gesetzt Dann (2050) wird die Größe gradx(ξ(n)) = ∇xJ ω / ss(fθ(x + ξ(n)), ytarget) berechnet.
-
Die Größe J
ω ss bezeichnet eine gewichtete Kostenfunktion des ersten maschinellen Lernsystems (
60) gemäß
-
Hierbei ist Jcls eine Kostenfunktion des ersten maschinellen Lernsystems 60, beispielsweise eine Kreuzentropie.
-
Die Größe ω ist eine vorgebbare Größe, die im Wertebereich [0; 1] vorgegeben werden kann, beispielsweise auf den Wert 0,5.
-
Anschließend (2060) wird eine nächste Iteration der Datensignalstörung ξ(n+1) gemäß der Formel ξ(n+1) = Clipε{ξ(n) – αsgn(gradx(ξ(n)))} berechnet. Hierbei normiert die Funktion Clipε(x) Werte einer Variablen x auf eine ε-Kugel um den Ursprung. Die Norm kann hierbei eine L2-Norm sein, oder auch eine L∞-Norm. α wird auf einen vorgebbaren Wert festgelegt, beispielsweise α = 0,25. Der Wert der Variable n wird um 1 inkrementiert.
-
Nun (2070) wird überprüft, ob ein Konvergenzkriterium erfüllt ist. Beispielsweise kann geprüft werden, ob n einen vorgebbaren Grenzwert nmax überschritten hat, beispiels nmax = 10. Wenn nein, wird zu Schritt 2050 zurückverzweigt. Andernfalls wird in Schritt 2080 das manipulierte Bildsignal xadv abhängig von der Datensignalstörung ξ(n) und dem Bildsignal x zu xadv = x + ξ(n) ermittelt. Damit endet dieses Verfahren.
-
5 zeigt in einem Flussdiagramm ein Ausführungsbeispiel des Verfahrens zum Beurteilen der Robustheit des Aktorsteuerungssystems 40. In einem ersten Schritt 4000 wird ein Datensignal x empfangen. Anschließend (4010) ermittelt das Aktorsteuerungssystem 40 hieraus ein zugehöriges Ansteuersignal A, um den Aktor 10 anzusteuern. Dann (4020) wird mit einem der in 4 illustrierten Verfahren aus dem Datensignal x ein manipuliertes Datensignal xadv ermittelt. Dieses manipulierte Datensignal xadv wird ebenfalls dem ersten maschinellen Lernsystem 60 zugeführt und eine zweite semantische Segmentierung y_clsadv ermittelt. Analog zur Ermittlung des Ansteuersignals A wird aus der ermittelten zweiten semantischen Segmentierung y_clsadv ein zweites Ansteuersignal Aadv ermittelt. Nun (4030) wird die Differenz zwischen Ansteuersignal A und zweitem Ansteuersignal Aadv ermittelt und überprüft (4040), ob ein Betrag dieser Differenz einen vorgebbaren Grenzwert überschreitet. Ist dies der Fall (4050), wird entschieden, dass das Aktorsteuerungssystem 40 nicht robust ist, andernfalls (4060) wird entschieden, dass das Aktorsteuerungssystem 40 robust ist. Damit endet dieses Verfahren. Das Verfahren kann als Computerprogramm implementiert sein, auf dem Speichermedium des Aktorsteuerungssystems 40 gespeichert sein oder von diesem ausgeführt werden. Das Computerprogramm kann auch auf einem generischen Computer, der an das Aktorsteuerungssystem 40 ankoppelbar ist, gespeichert und von diesem ausführbar sein.
-
6 zeigt in einem Flussdiagramm ein Ausführungsbeispiel des Verfahrens zum Betreiben des Aktorsteuerungssystems. In einem ersten Schritt 5000 wird mit dem in 5 illustrierten Verfahren ermittelt, ob das Aktorsteuerungssystem 40 robust ist, oder nicht. In Schritt 5010 wird dann überprüft, ob entschieden wurde, dass das Aktorsteuerungssystem 40 robust ist. Ist dies der Fall (5020), wird das Aktorsteuerungssystem 40 normal betrieben und der Aktor 10 normal angesteuert. Ist dies nicht der Fall (5030) wird überprüft, das Aktorsteuerungssystem 40 in einen abgesicherten Modus überführt, in dem beispielsweise vorgesehen sein kann, dass ein Absolutbetrag des Ansteuersignals A auf Werte kleiner als eine Kritikalitätsgrenze begrenzt wird. Damit endet das Verfahren. Das Verfahren kann als Computerprogramm implementiert sein, auf dem Speichermedium des Aktorsteuerungssystems 40 gespeichert sein oder von diesem ausgeführt werden.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- DE 102005050577 A1 [0002]