-
Die Erfindung betrifft ein Verfahren zum Erstellen eines maschinellen Lernsystems unter Verwendung eines Architekturmodells, insbesondere eines „One-shot Modells“, mit inital gleich wahrscheinlichen Pfaden, ein Computerprogramm und ein maschinenlesbares Speichermedium.
-
Stand der Technik
-
Das Ziel von Architektursuche für neuronale Netzwerke ist es für einen vorgegebenen Datensatz vollautomatisch eine gute Netzwerkarchitektur im Sinne einer Leistungskennzahl/Metrik zu finden.
-
Um die automatische Architektursuche recheneffizient zu gestalten, können sich verschiedene Architekturen in dem Suchraum die Gewichte ihrer Operationen teilen, wie z.B. bei einem One-Shot NAS Modell, gezeigt durch Pham, H., Guan, M. Y., Zoph, B., Le, Q. V., & Dean, J. (2018). Efficient neural architecture search via parameter sharing. arXiv preprint arXiv:1802.03268.
-
Das One-Shot Modell wird dabei typischerweise als gerichteter Graph konstruiert, bei dem die Knoten Daten darstellen und die Kanten Operationen, welche eine Berechnungsvorschrift darstellen die den Eingangsknoten der Kante in den Ausgangsknoten überführen. Der Suchraum besteht dabei aus Subgraphen (z.B. Pfade) in dem One-Shot Modell. Da das One-Shot Modell sehr groß sein kann, können einzelne Architekturen aus dem One-Shot Modell für das Training gezogen werden, wie z. B. gezeigt durch Cai, H., Zhu, L., & Han, S. (2018). Proxylessnas: Direct neural architecture search on target task and hardware. arXiv preprint arXiv:1812.00332. Dies geschieht typischerweise in dem ein einzelner Pfad von einem festgelegten Eingangsknoten zu einem Ausgangsknoten des Netzwerkes gezogen wird, wie z.B. gezeigt durch Guo, Z., Zhang, X., Mu, H., Heng, W., Liu, Z., Wei, Y., & Sun, J. (2019). Single path one-shot neural architecture search with uniform sampling. arXiv preprint arXiv:1904.00420.
-
Dabei wird typischerweise eine Wahrscheinlichkeitsverteilung über die ausgehenden Kanten eines Knotens definiert und mit gleichen Wahrscheinlichkeiten für alle Kanten initialisiert, wie z.B. gezeigt durch Guo et al. (2019)
-
Vorteile der Erfindung
-
Wie oben beschrieben, werden aus einem One-Shot Modell Pfade zwischen Eingangs- und Ausgangsknoten gezogen. Dazu wird für jeden Knoten eine Wahrscheinlichkeitsverteilung über die ausgehenden Kanten definiert. Die Erfinder schlagen vor, Wahrscheinlichkeiten der ausgehenden Kanten nicht für jede Kante gleich zu wählen, sondern so, dass jeder mögliche Pfad durch das One-Shot Modell die gleiche Wahrscheinlichkeit aufweist. Es kann also gesagt werden, dass die Wahrscheinlichkeitsverteilungen der Kanten derart initialisiert werden, dass alle Pfade von Eingangsknoten zum Ausgangsknoten die gleiche Wahrscheinlichkeit aufweisen, gezogen zu werden.
-
Die Erfindung erlaubt es Pfade aus einem One-Shot Modell zu ziehen ohne implizite Bevorzugung einzelner Pfade. Dadurch werden alle Architekturen des Suchraums initial gleich oft gezogen und der Suchraum unvoreingenommen exploriert. Dies hat den Vorteil, dass schlussendlich überlegenere Architekturen gefunden werden können, die bei gewöhnlicher Initialisierung der Kanten nicht aufgefunden werden würden.
-
Offenbarung der Erfindung
-
In einem ersten Aspekt betrifft die Erfindung ein computerimplementiertes Verfahren zum Erstellen eines maschinellen Lernsystems, welche vorzugsweise für Bildverarbeitung verwendet werden können.
-
Das Verfahren umfasst zumindest folgende Schritte:
- Bereitstellen eines gerichteten Graphen mit einem Eingangs- und Ausgangsknoten, welche über eine Mehrzahl von Kanten und Knoten verbunden sind. Jeder Kante ist jeweils eine Wahrscheinlichkeit zugeordnet, welche charakterisiert mit welcher Wahrscheinlichkeit die Kante aus allen ausgehenden Kanten von einem Knoten gezogen wird. Die Wahrscheinlichkeiten werden initial auf einen Wert gesetzt, sodass jeder Pfad ausgehend vom Eingangsknoten bis zum Ausgangsknoten mit gleicher Wahrscheinlichkeit gezogen wird. Daraufhin folgt ein zufälliges Ziehen einer Mehrzahl von Pfaden durch den Graphen und Anlernen der den Pfaden korrespondierenden maschinellen Lernsysteme. Beim Anlernen werden Parameter des maschinellen Lernsystems und die Wahrscheinlichkeiten der Kanten des Pfades angepasst, sodass eine Kostenfunktion optimiert wird.
-
Daraufhin folgt ein Ziehen eines Pfades abhängig von den angepassten Wahrscheinlichkeiten. Vorzugsweise wird hier der Pfad mit der höchsten Wahrscheinlichkeit ausgewählt. Die Wahrscheinlichkeit eines Pfades ist gegeben durch das Produkt der Wahrscheinlichkeit all seiner Kanten. Danach folgt ein Erstellen des diesem Pfad korrespondierende zugehörige maschinelle Lernsystem.
-
Alternativ kann das Ziehen des Pfades im letzten Schritt, insbesondere nachdem das Optimieren der Kostenfunktion abgeschlossen wurde, zufällig erfolgen oder es können gezielt den Kanten mit den höchsten Wahrscheinlichkeiten bis zum Ausgangsknoten gefolgt werden, um den Pfad zu erhalten.
-
Weiterhin wird vorgeschlagen, dass beim Ziehen des Pfades der Pfad iterativ erstellt wird, wobei an jedem Knoten die nachfolgende Kante zufällig aus der möglichen nachfolgenden Kanten, die mit diesem Knoten verbunden sind, abhängig von deren zugeordneten Wahrscheinlichkeit ausgewählt werden.
-
Vorzugsweise ist das maschinelle Lernsystem ein künstliches neuronales Netz, welches zur Segmentierung und Objektdetektion in Bildern eingerichtet sein kann.
-
In einem weiteren Aspekt der Erfindung wird vorgeschlagen, dass das maschinelle Lernsystem angelernt wird, um abhängig von einer erfassten Sensorgröße eines Sensors eine Ausgangsgröße ermittelt, die daraufhin zum Ermitteln einer Steuergröße mittels einer Steuereinheit verwendet werden kann. Dabei kann das maschinelle Lernsystem für eine Objektdetektion angelernt worden sein und abhängig von einem detektierten Objekt mittels des maschinellen Lernsystem kann dann die Steuergröße ermittelt werden.
-
Die Steuergröße kann zum Steuern eines Aktors eines technischen Systems verwendet werden. Das technische System kann zum Beispiel eine zumindest teilautonome Maschine, ein zumindest teilautonomes Fahrzeug, ein Roboter, ein Werkzeug, eine Werkmaschine oder ein Flugobjekt wie eine Drohne sein. Die Eingangsgröße kann bspw. abhängig von erfassten Sensordaten ermittelt und dem maschinellen Lernsystem bereitgestellt werden. Die Sensordaten können von einem Sensor, wie z.B. einer Kamera, des technischen Systems erfasst oder alternativ von extern empfangen werden.
-
In weiteren Aspekten betrifft die Erfindung ein Computerprogramm, das eingerichtet, die obigen Verfahren auszuführen und ein maschinenlesbares Speichermedium, auf dem dieses Computerprogramm gespeichert ist.
-
Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. In den Zeichnungen zeigen:
- 1 schematisch einen gerichteten azyklischeren Multigraphen mit Standardinitialisierung;
- 2 schematische Darstellung eines Flussdiagramms zur Initialisierung von Kanten;
- 3 schematische Darstellung eines Aktor-Steuerungssystems;
- 4 ein Ausführungsbeispiel zur Steuerung eines wenigstens teilautonomen Roboters;
- 5 schematisch ein Ausführungsbeispiel zur Steuerung eines Fertigungssystems;
- 6 schematisch ein Ausführungsbeispiel zur Steuerung eines Zugangssystems;
- 7 schematisch ein Ausführungsbeispiel zur Steuerung eines Überwachungssystems;
- 8 schematisch ein Ausführungsbeispiel zur Steuerung eines persönlichen Assistenten;
- 9 schematisch ein Ausführungsbeispiel zur Steuerung eines medizinisch bildgebenden Systems;
- 10 einen möglichen Aufbau einer Trainingsvorrichtung;
-
Um gute Architekturen von tiefen neuronale Netzwerke für einen vorgegebenen Datensatz zu finden, können automatische Methoden zur Architektursuche angewandt werden, sogenannte Neural Architecture Search-Methoden. Dazu wird ein Suchraum von möglichen Architekturen neuronaler Netzwerke explizit oder implizit definiert.
-
Im Folgenden soll zur Beschreibung eines Suchraums den Begriff Operation, was eine Berechnungsvorschrift beschreibt, die ein oder mehrere n-dimensionale Inputdatentensoren in ein oder mehrere Outputdatentensoren überführt, und dabei adaptierbare Parameter haben kann. Als Operationen werden in der Bildverarbeiten z.B. häufig Faltungen mit verschiedenen Kernel-Größen und unterschiedliche Arten von Faltungen (reguläre Faltung, depthwise-separabel Faltung) und Pooling-Operationen verwendet.
-
Ferner soll im Folgenden ein Berechnungsgraph (das sogenannte One-Shot Modell) definiert wird, welcher alle Architekturen in dem Suchraum als Subgraphen enthält. Da das One-Shot Modell sehr groß sein kann, können einzelne Architekturen aus dem One-Shot Modell für das Training gezogen werden. Dies geschieht typischerweise in den einzelnen Pfaden von einem festgelegten Eingangsknoten zu einem festgelegten Ausgangsknoten des Netzwerkes gezogen werden.
-
Im einfachsten Fall, wenn der Berechnungsgraph aus einer Kette von Knoten besteht, die jeweils über verschiedene Operationen verbunden sein können, genügt es, für jeweils zwei aufeinander folgende Knoten die Operation zu ziehen welche sie verbindet.
-
Falls das One-Shot Modell allgemeiner ein gerichteter Graph ist, kann ein Pfad iterativ gezogen werden, in dem bei dem Input begonnen wird, dann der nächste Knoten und die verbindende Operation gezogen wird, und dieses Vorgehen dann iterative bis zum Zielknoten fortgesetzt wird.
-
Das One-Shot Modell mit Ziehen kann dann trainiert werden, indem für jeden Mini-Batch eine Architektur gezogen wird und die Gewichte der Operationen in der gezogenen Architektur mittels eines Standard-Gradientenschrittverfahrens angepasst werden. Das Finden der besten Architektur kann entweder als separater Schritt nach dem Training der Gewichte stattfinden, oder abwechseln mit dem Training der Gewichte durchgeführt werden.
-
Für die automatische Architektursuche soll nun ein gerichteter azyklischer Multigraphen mit Knoten n
i und Kanten
von n
i zu n
j, wobei k die Multiplizität der Kanten beschreibt, betrachtet werden. Zusätzlich hat der Graph einen Eingangsknoten n
0 und einem Ausgangsknoten n
L und eine Topologie, so dass alle Pfade, die am Eingangsknoten starten zum Ausgangsknoten führen. Ausgehend vom Ausgangsknoten n
L kann nun iterativ für jeden Knoten die Anzahl der Pfade N zum Ausgangsknoten bestimmt werden:
wobei
die Anzahl der Kanten zwischen den Knoten n
i und n
j ist. Insbesondere ist N(n
0) die Gesamtzahl der Pfade im dem Graph.
-
Wird nun für jede Kante die Wahrscheinlichkeit festgelegt:
so gilt für alle ausgehenden Pfade von einem Knoten n
i:
d.h.
definierteine Wahrscheinlichkeitsverteilung über die ausgehenden Kanten von n
i. Außerdem gilt für die Wahrscheinlichkeit eines Pfades g welcher aus den Kanten
besteht berechnet sich aus dem Produkt der Wahrscheinlichkeiten aller Kanten in dem Pfad zu:
d.h. alle Pfade besitzen dieselbe Wahrscheinlichkeit.
-
Dies ist in 1 schematisch veranschaulicht. 1 zeigt einen ersten gerichteten azyklischen Multigraphen (10) mit einer minimalen Anzahl von Knoten (100) mit der Standardinitialisierung. D.h. alle ausgehenden Kanten von einem Knoten weißen die gleiche Wahrscheinlichkeit von 0.5 oder 1 auf. In diesem Fall hat der Pfad vom Eingang nach unten führt eine höhere Wahrscheinlichkeit von 0.5 als die beiden Pfade die vom Eingang zum oberen Knoten führen, die jeweils eine Wahrscheinlichkeit von 0.25 aufweisen. Der zweit gerichtete azyklische Multigraph (11) mit einer minimalen Anzahl von Knoten (100) hat die oben vorgeschlagene Initialisierung, welche dafür sorgt, dass alle Pfade die gleiche Wahrscheinlichkeit haben.
-
2 zeigt schematisch ein Flussdiagramm (20) des Verfahrens zur Initialisierung der Kanten eines gerichteten azyklischen Multigraphen und zur Architektursuche mit diesem Multigraphen.
-
Die automatische Architektursuche kann dann wie folgt durchgeführt werden. Die automatische Architektursuche benötigt zuerst die Erstellung eines Suchraums (S21), welcher hier in der Form eines One-Shot Modells gegeben sein kann. Das One-Shot Modell ist dabei ein Multigraph wie oben beschrieben. Vor dem Training werden die Wahrscheinlichkeiten wie in (Gl. 3). beschrieben initialisiert (S22). Dadurch haben alle Pfade in dem One-Shot Modell die gleiche Wahrscheinlichkeit gezogen zu werden.
-
Anschließend kann jede Form der Architektursuche verwendet werden, welche Pfade aus einem One-Shot Modell zieht (S23).
-
Im nachfolgenden Schritt (S24) werden dann die gezogenen maschinellen Lernsysteme, die den Pfaden entsprechen, trainiert und auch die Wahrscheinlichkeiten abhängig von dem Training angepasst.
-
Es sei angemerkt, dass Optimierung nicht nur bezüglich der Genauigkeit, sondern auch für spezielle Hardware (z.B. Hardwarebeschleuniger) geschehen kann. Bspw. indem beim Training die Kostenfunktion einen weiteren Term enthält, der die Kosten zum Ausführen des maschinellen Lernsystems mit seiner Konfiguration auf der Hardware charakterisiert.
-
Die Schritte S23 und S24 können mehrmals hintereinander wiederholt werden. Anschließend kann basierend auf dem Multigraphen ein finaler Pfad gezogen werden und ein korrespondierendes maschinelles Lernsystem gemäß diesem Pfad initialisiert werden.
-
Vorzugsweise ist das maschinelle Lernsystem ein künstliches neuronales Netz 60 (abgebildet in 3) und wird im nachfolgenden erläutert verwendet.
-
3 zeigt einen Aktor 10 in seiner Umgebung 20 in Interaktion mit einem Steuerungssystem 40. In vorzugsweise regelmäßigen zeitlichen Abständen wird die Umgebung 20 in einem Sensor 30, insbesondere einem bildgebenden Sensor wie einem Videosensor, erfasst, der auch durch eine Mehrzahl von Sensoren gegeben sein kann, beispielsweise eine Stereokamera. Auch andere bildgebende Sensoren sind denkbar, wie beispielsweise Radar, Ultraschall oder Lidar. Auch eine Wärmebildkamera ist denkbar. Das Sensorsignal S - bzw. im Fall mehrerer Sensoren je ein Sensorsignal S - des Sensors 30 wird an das Steuerungssystem 40 übermittelt. Das Steuerungssystem 40 empfängt somit eine Folge von Sensorsignalen S. Das Steuerungssystem 40 ermittelt hieraus Ansteuersignale A, welche an den Aktor 10 übertragen werden.
-
Das Steuerungssystem 40 empfängt die Folge von Sensorsignalen S des Sensors 30 in einer optionalen Empfangseinheit 50, die die Folge von Sensorsignalen S in eine Folge von Eingangsbildern x umwandelt (alternativ kann auch unmittelbar je das Sensorsignal S als Eingangsbild x übernommen werden). Das Eingangsbild x kann beispielsweise ein Ausschnitt oder eine Weiterverarbeitung des Sensorsignals S sein. Das Eingangsbild x umfasst einzelne Frames einer Videoaufzeichnung. Mit anderen Worten wird Eingangsbild x abhängig von Sensorsignal S ermittelt. Die Folge von Eingangsbildern x wird einem maschinellen Lernsystem, im Ausführungsbeispiel einem künstlichen neuronalen Netz 60, zugeführt.
-
Das künstliche neuronale Netz 60 wird vorzugsweise parametriert durch Parameter φ, die in einem Parameterspeicher P hinterlegt sind und von diesem bereitgestellt werden.
-
Das künstliche neuronale Netz 60 ermittelt aus den Eingangsbildern x Ausgangsgrößen y. Diese Ausgangsgrößen y können insbesondere eine Klassifikation und semantische Segmentierung der Eingangsbilder x umfassen. Ausgangsgrößen y werden einer optionalen Umformeinheit 80 zugeführt, die hieraus Ansteuersignale A ermittelt, welche dem Aktor 10 zugeführt werden, um den Aktor 10 entsprechend anzusteuern. Ausgangsgröße y umfasst Informationen über Objekte, die der Sensor 30 erfasst hat.
-
Das Überwachungssignal d charakterisiert, ob das neuronale Netz 60 die Ausgangsgrößen y zuverlässig ermittelt, oder nicht. Wenn das Überwachungssignal d eine Unzuverlässigkeit charakterisiert, kann beispielsweise vorgesehen sein, dass das Ansteuersignal A entsprechend eines abgesicherten Betriebsmodus ermittelt wird (während es andernfalls in einem normalen Betriebsmodus ermittelt wird). Der abgesicherte Betriebsmodus kann beispielsweise beinhalten, dass eine Dynamik des Aktors 10 reduziert wird, oder dass Funktionalitäten zur Ansteuerung des Aktors 10 ausgeschaltet.
-
Der Aktor 10 empfängt die Ansteuersignale A, wird entsprechend angesteuert und führt eine entsprechende Aktion aus. Der Aktor 10 kann hierbei eine (nicht notwendigerweise baulich integrierte) Ansteuerlogik umfassen, welches aus dem Ansteuersignal A ein zweites Ansteuersignal ermittelt, mit dem dann der Aktor 10 angesteuert wird.
-
In weiteren Ausführungsformen umfasst das Steuerungssystem 40 den Sensor 30. In noch weiteren Ausführungsformen umfasst das Steuerungssystem 40 alternativ oder zusätzlich auch den Aktor 10.
-
In weiteren bevorzugten Ausführungsformen umfasst das Steuerungssystem 40 eine Ein- oder Mehrzahl von Prozessoren 45 und wenigstens ein maschinenlesbares Speichermedium 46, auf den Anweisungen gespeichert sind, die dann, wenn sie auf den Prozessoren 45 ausgeführt werden, das Steuerungssystem 40 veranlassen, das erfindungsgemäße Verfahren auszuführen.
-
In alternativen Ausführungsformen ist alternativ oder zusätzlich zum Aktor 10 eine Anzeigeeinheit 10a vorgesehen.
-
4 zeigt, wie das Steuerungssystem 40 zur Steuerung eines wenigstens teilautonomen Roboters, hier eines wenigstens teilautonomen Kraftfahrzeugs 100, eingesetzt werden kann.
-
Bei dem Sensor 30 kann es sich beispielsweise um einen vorzugsweise im Kraftfahrzeug 100 angeordneten Videosensor handeln.
-
Das künstliche neuronale Netz 60 ist eingerichtet, aus den Eingangsbildern x Objekte sicher zu identifizieren.
-
Bei dem vorzugsweise im Kraftfahrzeug 100 angeordneten Aktor 10 kann es sich beispielsweise um eine Bremse, einen Antrieb oder eine Lenkung des Kraftfahrzeugs 100 handeln. Das Ansteuersignal A kann dann derart ermittelt werden, dass der Aktor oder die Aktoren 10 derart angesteuert wird, dass das Kraftfahrzeug 100 beispielsweise eine Kollision mit den vom künstlichen neuronalen Netz 60 sicher identifizierten Objekte verhindert, insbesondere, wenn es sich um Objekte bestimmter Klassen, z.B. um Fußgänger, handelt.
-
Alternativ kann es sich bei dem wenigstens teilautonomen Roboter auch um einen anderen mobilen Roboter (nicht abgebildet) handeln, beispielsweise um einen solchen, der sich durch Fliegen, Schwimmen, Tauchen oder Schreiten fortbewegt. Bei dem mobilen Roboter kann es sich beispielsweise auch um einen wenigstens teilautonomen Rasenmäher oder einen wenigstens teilautonomen Putzroboter handeln. Auch in diesen Fällen kann das Ansteuersignal A derart ermittelt werden, dass Antrieb und/oder Lenkung des mobilen Roboters derart angesteuert werden, dass der wenigstens teilautonome Roboter beispielsweise eine Kollision mit vom künstlichen neuronalen Netz 60 identifizierten Objekten verhindert.
-
Alternativ oder zusätzlich kann mit dem Ansteuersignal A die Anzeigeeinheit 10a angesteuert werden, und beispielsweise die ermittelten sicheren Bereiche dargestellt werden. Auch ist es beispielsweise beim einem Kraftfahrzeug 100 mit nicht automatisierter Lenkung möglich, dass die Anzeigeeinheit 10a mit dem Ansteuersignal A derart angesteuert wird, dass sie ein optisches oder akustisches Warnsignal ausgibt, wenn ermittelt wird, dass das Kraftfahrzeug 100 droht, mit einem der sicher identifizierten Objekte zu kollidieren.
-
5 zeigt ein Ausführungsbeispiel, in dem das Steuerungssystem 40 zur Ansteuerung einer Fertigungsmaschine 11 eines Fertigungssystems 200 verwendet wird, indem ein diese Fertigungsmaschine 11 steuernder Aktor 10 angesteuert wird. Bei der Fertigungsmaschine 11 kann es sich beispielsweise um eine Maschine zum Stanzen, Sägen, Bohren und/oder Schneiden handeln.
-
Bei dem Sensor 30 kann es sich dann beispielsweise um einen optischen Sensor handeln, der z.B. Eigenschaften von Fertigungserzeugnissen 12a, 12b erfasst. Es ist möglich, dass diese Fertigungserzeugnisse 12a, 12b beweglich sind. Es ist möglich, dass der die Fertigungsmaschine 11 steuernde Aktor 10 abhängig von einer Zuordnung der erfassten Fertigungserzeugnisse 12a, 12b angesteuert wird, damit die Fertigungsmaschine 11 entsprechend einen nachfolgenden Bearbeitungsschritt des richtigen der Fertigungserzeugnisses 12a, 12b ausführt. Es ist auch möglich, dass durch Identifikation der richtigen Eigenschaften desselben der Fertigungserzeugnisse 12a, 12b (d.h. ohne eine Fehlzuordnung) die Fertigungsmaschine 11 entsprechend den gleichen Fertigungsschritt für eine Bearbeitung eines nachfolgenden Fertigungserzeugnisses anpasst.
-
6 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines Zugangssystems 300 eingesetzt wird. Das Zugangssystem 300 kann eine physische Zugangskontrolle, beispielsweise eine Tür 401 umfassen. Videosensor 30 ist eingerichtet ist, eine Person zu erfassen. Mittels des Objektidentifikationssystem 60 kann dieses erfasste Bild interpretiert werden. Sind mehrere Personen gleichzeitig erfasst, kann durch eine Zuordnung der Personen (also der Objekte) zueinander beispielweise die Identität der Personen besonders zuverlässig ermittelt werden, beispielsweise durch eine Analyse ihrer Bewegungen. Der Aktor 10 kann ein Schloss sein, dass abhängig vom Ansteuersignal A die Zugangskontrolle freigibt, oder nicht, beispielsweise die Tür 401 öffnet, oder nicht. Hierzu kann das Ansteuersignal A abhängig von der der Interpretation des Objektidentifikationssystem 60 gewählt werden, beispielsweise abhängig von der ermittelten Identität der Person. An Stelle der physischen Zugangskontrolle kann auch eine logische Zugangskontrolle vorgesehen sein.
-
7 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines Überwachungssystems 400 verwendet wird. Von dem in 5 dargestellten Ausführungsbeispiel unterscheidet sich dieses Ausführungsbeispiel dadurch, dass an Stelle des Aktors 10 die Anzeigeeinheit 10a vorgesehen ist, die vom Steuerungssystem 40 angesteuert wird. Beispielsweise kann vom künstlichen neuronalen Netz 60 zuverlässig eine Identität der vom Videosensor 30 aufgenommenen Gegenstände ermittelt werden, um abhängig davon z.B. darauf zu schließen, welche verdächtig werden, und das Ansteuersignal A dann derart gewählt werden, dass dieser Gegenstand von der Anzeigeeinheit 10a farblich hervorgehoben dargestellt wird.
-
8 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines persönlichen Assistenten 250 eingesetzt wird. Der Sensor 30 ist bevorzugt ein optischer Sensor, der Bilder einer Geste eines Nutzers 249 empfängt.
-
Abhängig von den Signalen des Sensors 30 ermittelt das Steuerungssystem 40 ein Ansteuersignal A des persönlichen Assistenten 250, beispielsweise, indem das neuronale Netz eine Gestenerkennung durchführt. Dem persönlichen Assistenten 250 wird dann dieses ermittelte Ansteuersignal A übermittelt und er somit entsprechend angesteuert. Dieses ermittelte Ansteuersignal A ist kann insbesondere derart gewählt werden, dass es einer vermuteten gewünschten Ansteuerung durch den Nutzer 249 entspricht. Diese vermutete gewünschte Ansteuerung kann abhängig von der vom künstlichen neuronalen Netz 60 erkannten Geste ermittelt werden. Das Steuerungssystem 40 kann dann abhängig von der vermuteten gewünschten Ansteuerung das Ansteuersignal A zur Übermittlung an den persönlichen Assistenten 250 wählen und/oder das Ansteuersignal A zur Übermittlung an den persönlichen Assistenten entsprechend der vermuteten gewünschten Ansteuerung 250 wählen.
-
Diese entsprechende Ansteuerung kann beispielsweise beinhalten, dass der persönliche Assistent 250 Informationen aus einer Datenbank abruft und sie für den Nutzer 249 rezipierbar wiedergibt.
-
Anstelle des persönlichen Assistenten 250 kann auch ein Haushaltsgerät (nicht abgebildet), insbesondere eine Waschmaschine, ein Herd, ein Backofen, eine Mikrowelle oder eine Spülmaschine vorgesehen sein, um entsprechend angesteuert zu werden.
-
9 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines medizinischen bildgebenden System 500, beispielsweise eines MRT-, Röntgen- oder Ultraschallgeräts, verwendet wird. Der Sensor 30 kann beispielsweise durch einen bildgebenden Sensor gegeben sein, durch das Steuerungssystem 40 wird die Anzeigeeinheit 10a angesteuert. Beispielsweise kann vom neuronalen Netz 60 ermittelt werden, ob ein vom bildgebenden Sensor aufgenommener Bereich auffällig ist, und das Ansteuersignal A dann derart gewählt werden, dass dieser Bereich von der Anzeigeeinheit 10a farblich hervorgehoben dargestellt wird.
-
10 zeigt eine beispielhafte zweite Trainingsvorrichtung 140 zum eines gezogenen maschinellen Lernsystems aus dem Multigraphen Trainieren des neuronalen Netzes 60. Trainingsvorrichtung 140 umfasst einen Bereitsteller 71, der Eingangsbilder x und Soll-Ausgangsgrößen ys, beispielsweise Soll-Klassifikationen, bereitstellt. Eingangsbild x wird dem zu trainierenden künstlichen neuronalen Netz 60 zugeführt, das hieraus Ausgangsgrößen y ermittelt. Ausgangsgrößen y und Soll-Ausgangsgrößen ys werden einem Vergleicher 75 zugeführt, der hieraus abhängig von einer Übereinstimmung den jeweiligen Ausgangsgrößen y und Soll-Ausgangsgrößen ys neue Parameter Φ' ermittelt, die dem Parameterspeicher P übermittelt werden und dort Parameter Φ ersetzen.
-
Die vom Trainingssystem 140 ausgeführten Verfahren können als Computerprogramm implementiert auf einem maschinenlesbaren Speichermedium 147 hinterlegt sein und von einem Prozessor 148 ausgeführt werden.
-
Selbstverständlich müssen nicht ganze Bilder klassifiziert werden. Es ist möglich, dass mit einem Detektionsalgorithmus z.B. Bildausschnitte als Objekte klassifiziert werden, dass diese Bildausschnitte dann ausgeschnitten werden, ggf. ein neuer Bildausschnitt erzeugt wird und an Stelle des ausgeschnittenen Bildausschnitts in das zugehörige Bild eingesetzt wird.
-
Der Begriff „Computer“ umfasst beliebige Geräte zur Abarbeitung vorgebbarer Rechenvorschriften. Diese Rechenvorschriften können in Form von Software vorliegen, oder in Form von Hardware, oder auch in einer Mischform aus Software und Hardware.