DE102020211714A1 - Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems - Google Patents

Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems Download PDF

Info

Publication number
DE102020211714A1
DE102020211714A1 DE102020211714.4A DE102020211714A DE102020211714A1 DE 102020211714 A1 DE102020211714 A1 DE 102020211714A1 DE 102020211714 A DE102020211714 A DE 102020211714A DE 102020211714 A1 DE102020211714 A1 DE 102020211714A1
Authority
DE
Germany
Prior art keywords
edges
machine learning
learning system
subgraph
drawn
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102020211714.4A
Other languages
English (en)
Inventor
Benedikt Sebastian Staffler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102020211714.4A priority Critical patent/DE102020211714A1/de
Publication of DE102020211714A1 publication Critical patent/DE102020211714A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

Verfahren zum Erstellen eines maschinellen Lernsystems, umfassend folgende Schritte: Bereitstellen eines gerichteten Graphen mit einem Eingangs- und Ausgangsknoten. Zufälliges Ziehen eines Subgraphen aus dem gerichteten Graphen (11) und Einrichten der Konten des gezogenen Subgraphen derart, dass diese eine Summe über die eingehenden Eingangsgrößen der in diesen Knoten eingehenden Kanten abhängig von einer Anzahl der eingehenden Kanten in diesen Knoten normalisiert als Eingangsgröße der nachfolgende verbundene Kanten ausgeben. Anlernen eines dem Subgraphen korrespondierenden maschinellen Lernsystem.

Description

  • Die Erfindung betrifft ein Verfahren zum Erstellen eines maschinellen Lernsystems unter Verwendung eines Architekturmodells, insbesondere eines „One-Shot Modells“, mit einer Normalisierung der Knoten, 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).
  • Die Erfinder betrachten Architekturen, deren Knoten mehrere eingehenden Kanten haben können, insbesondere Architekturen die aus mehreren Pfaden bestehen die sich an beliebigen Stellen wieder zusammenlaufen können wie sie häufig für Objekterkennung genutzt werden, oder Architekturen bei denen mehr als eine Operation zwischen zwei Knoten gezogen wird. Dabei geben Knoten mit mehreren eingehen Kanten typischerweise eine Überlagerung der Ausgangsgrößen ihrer eingehenden Kanten aus.
  • Vorteile der Erfindung
  • Die Erfinder schlagen vor, die Ausgangsgröße der Knoten, insbesondere die Summe aus den Ausgangsgrößen der Kanten, auf Basis der Anzahl der eingehenden Kanten zu normieren. Dies hat den Vorteil, eine konsistente Repräsentierung in einem Knoten bereitzustellen.
  • Die Verwendung der vorgeschlagenen Normalisierung stabilisiert das One-Shot Training für gezogene Architekturen, da die Repräsentierung die Anzahl der eingehenden Kanten für jeden Knoten berücksichtigt. Dies erlaubt ein gleichzeitiges Anlernen der Kanten, die in den gleichen Knoten eingehen.
  • 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 kann.
  • Das Verfahren umfasst folgende Schritte:
    • Bereitstellen eines gerichteten Graphen mit einem Eingangs- und Ausgangsknoten, welche über eine Mehrzahl von Kanten und Knoten verbunden sind, wobei jeder Kante jeweils eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert mit welcher Wahrscheinlichkeit die jeweilige Kante gezogen wird. Die Kanten charakterisieren Operationen des maschinellen Lernsystems. Daraufhin folgt ein zufälliges Ziehen eines Subgraphen (Architektur) aus dem gerichteten Graphen abhängig von den Wahrscheinlichkeiten der Kanten, Einrichten der Konten des gezogenen Subgraphen derart, dass diese eine Summe über eingehende Eingangsgrößen der in diesen Knoten eingehenden Kanten abhängig von einer Anzahl der eingehenden Kanten in diesen Knoten normalisiert als Eingangsgröße deren nachfolgenden verbunden Kanten ausgeben. Denkbar ist, dass statt der Summe der Mittelwert über die eingehenden Kanten genommen wird als einfachste und parameterfreie Normalisierung. Daraufhin folgt ein Anlernen eines dem Subgraphen korrespondierenden maschinellen Lernsystem, wobei beim Anlernen Parameter des maschinellen Lernsystems und die Wahrscheinlichkeiten der Kanten des Subgraphen angepasst werden, sodass eine Kostenfunktion optimiert wird. Daraufhin folgt ein Ziehen eines weiteren Subgraphen durch den gerichteten Graphen abhängig von den Wahrscheinlichkeiten der Kanten und Erstellen des diesem Subgraphen korrespondierende maschinelle Lernsystem.
  • Es wird vorgeschlagen, dass zumindest zwei eingehenden Kanten einer der Knoten mit unterschiedlichen Sensoren oder unterschiedlichen neuronalen Netzen verbunden sind. Dies erlaubt eine Sensorfusion.
  • Verfahren nach einem der vorhergehenden Ansprüche, wobei zusätzlich zu der Kostenfunktion, welche eine Bestrafung für ermittelte Ausgangsgrößen des maschinellen Lernsystems zu Trainingsausgangsgrößen charakterisiert, eine weitere Kostenfunktion vorhanden ist, die die verfügbaren Ressourcen einer Recheneinheit charakterisiert, auf welcher das erstellte maschinelle Lernsystem ausgeführt werden soll.
  • Vorzugsweise ist das maschinelle Lernsystem ein künstliches neuronales Netz, welches zur Klassifikation, insbesondere zur Segmentierung und/oder 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 Ausschnitte aus gerichteten azyklischeren Multigraphen;
    • 2 schematische Darstellung eines Flussdiagramms;
    • 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.
  • 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 Operationen 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 iterativ bis zum Zielknoten fortgesetzt wird. Eine Architektur mit verzweigten Pfaden kann beispielsweise erzeugt werden, indem mehrere Pfade durch das One-Shot Modell gezogen werden. In diesem Fall haben Knoten bei denen mehrere Pfade zusammenführen somit mehrere eingehende Kanten.
  • 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 ni und Kanten n i , j k
    Figure DE102020211714A1_0001
    von ni zu nj, wobei k die Multiplizität (also zum Beispiel unterschiedliche Operationen zwischen denselben Knoten) der Kanten beschreibt, betrachtet werden. Zusätzlich hat der Graph einen Eingangsknoten n0 und einem Ausgangsknoten nL und eine Topologie, so dass alle Pfade, die am Eingangsknoten starten zum Ausgangsknoten führen.
  • Zudem wird eine Möglichkeit vorausgesetzt, Architekturen aus dem One-Shot Modell zu ziehen, wobei Architekturen beliebige Subgraphen des One-Shot Modells sein können. Der Datentensor xk eines Knotens nk im One-Shot Modell mit eingehenden Kanten ei,i = 1, ..., N und zugehörigen Operation fei und Eingangsdaten xi berechnet sich bei Standard-Verfahren zu Architektursuche wie folgt: x k = i = 1 N ƒ e i ( x i )
    Figure DE102020211714A1_0002
  • Es wird vorgeschlagen, die Gleichung (Gl. 1) durch eine Normalisierung anzupassen: x k = 1 N i = 1 N ƒ e i ( x i )
    Figure DE102020211714A1_0003
    wobei N die Anzahl der eingehenden Kanten charakterisiert.
  • Es sei angemerkt, dass die eingehenden Kanten, über welche hier summiert wird, unterschiedliche Eingangsknoten haben können.
  • Dies ist in 1 schematisch veranschaulicht. 1 zeigt einen beispielhaft einen Ausschnitt (10) eines ersten gerichteten azyklischen Multigraphen, insbesondere One-Shot Modells, zwischen einem Knoten mit Eingangsgröße x, welcher über drei Operationen mit einem Knoten mit Eingangsgröße y verbunden ist. In vorhandenen Modell berechnet sich der Knoten (101) hier als Summe der Outputs über die Operationen gemäß (Gl. 1).
  • 1 zeigt ferner beispielhaft einen weiteren Ausschnitt (11) eines zweiten gerichteten azyklischen Multigraphen. Hierbei wird die vorgeschlagene Normalisierung gemäß (Gl. 2) für den Knoten (101) angewendet. In 1 ist diese Normalisierung durch das µ in dem Kreis (102) dargestellt. Da hier 3 aktive Kanten in den Knoten eingehen, wird N = 3 gewählt.
  • Wird nun aus dem zweiten gerichteten azyklischen Multigraphen (11) eine Architektur gezogen, wobei Operation 2 und Operation 3 ausgewählt wurden, ist die Kante, die die Operation 1 darstellt und in Knoten (101) endet, inaktiv. Mit der hier vorgeschlagenen Methode ergibt sich für N dann der Wert 2, da zwei eingehende Kanten aktiv sind. Es sei angemerkt, dass sich für diesen Fall für den ersten gerichteten azyklischen Multigraphen (10) gemäß (Gl. 1) die Summe der Ausgangsgrößen von Operation 2 und Operation 3 ergibt.
  • 2 zeigt schematisch ein Flussdiagramm (20) eines Verfahrens zur Architektursuche unter Verwendung der vorgeschlagenen Gleichung (Gl. 2).
  • Die Architektursuche kann dann wie folgt durchgeführt werden. Die 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.
  • Im darauffolgenden Schritt S22 wird aus dem One-Shot Modell ein Subgraph, insbesondere eine Architektur eines maschinellen Lernsystems gezogen.
  • Nach Schritt S22 folgt Schritt S23 hierin werden die Knoten der gezogenen Architektur derart eingerichtet, dass diese ihre Ausgangsgröße gemäß Gleichung (Gl. 2) ermitteln.
  • Im nachfolgenden Schritt (S24) werden dann die gezogenen maschinellen Lernsysteme, die den Subgraphen entsprechen, trainiert.
  • Es sei angemerkt, dass das Anlernen 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 Subgraph gezogen werden und ein korrespondierendes maschinelles Lernsystem gemäß diesem Subgraphen 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.

Claims (9)

  1. Computerimplementiertes Verfahren zum Erstellen eines maschinellen Lernsystem, umfassend folgende Schritte: Bereitstellen eines gerichteten Graphen (11) mit einem Eingangs- und Ausgangsknoten, welche über eine Mehrzahl von Kanten (100) und Knoten (101) verbunden sind, wobei jeder Kante jeweils eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert mit welcher Wahrscheinlichkeit die jeweilige Kante gezogen wird; Zufälliges Ziehen eines Subgraphen durch den gerichteten Graphen (11) abhängig von den Wahrscheinlichkeiten der Kanten, Einrichten der Konten des gezogenen Subgraphen derart, dass diese eine Summe über eingehende Eingangsgrößen der in diesen Knoten eingehenden Kanten abhängig von einer Anzahl der eingehenden Kanten in diesen Knoten normalisiert als Eingangsgröße deren nachfolgenden verbunden Kanten ausgeben; Anlernen eines dem Subgraphen erstellten korrespondierenden maschinellen Lernsystem, wobei beim Anlernen Parameter des maschinellen Lernsystems und die Wahrscheinlichkeiten der Kanten des Subgraphen angepasst werden, sodass eine Kostenfunktion optimiert wird; und Ziehen eines weiteren Subgraphen durch den gerichteten Graphen (11) abhängig von den Wahrscheinlichkeiten der Kanten und Erstellen des diesem Subgraphen korrespondierende maschinelle Lernsystem.
  2. Verfahren nach Anspruch 1, wobei beim zufälligen Ziehen eine Mehrzahl von Subgraphen durch den Graphen gezogen werden, wobei für jeden gezogenen Subgraphen die Normalisierung der Knoten separat durchgeführt wird.
  3. Verfahren nach Anspruch 1 oder 2, wobei das maschinelle Lernsystem ein neuronales Netz ist.
  4. Verfahren nach einem der vorhergehenden Ansprüche, wobei das maschinelle Lernsystem ein Bildklassifikator ist.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei die eingehenden Kanten des Knoten, welcher die Normalisierung durchführt, jeweils mit unterschiedlichen Sensoren oder unterschiedlichen neuronalen Netzen verbunden sind.
  6. Verfahren nach einem der vorhergehenden Ansprüche, wobei beim Anlernen eine zusätzliche Kostenfunktion verwendet wird, der die verfügbaren Ressourcen einer Recheneinheit charakterisiert, auf welcher das erstellte maschinelle Lernsystem ausgeführt werden soll.
  7. Computerprogramm, welches Befehle umfasst, welche eingerichtet sind, wenn diese auf einem Computer ausgeführt werden, den Computer veranlassen, das Verfahren nach einem der vorhergehenden Ansprüche auszuführen.
  8. Maschinenlesbares Speicherelement auf welchem das Computerprogramm nach Anspruch 7 hinterlegt ist.
  9. Vorrichtung, welche eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 6 auszuführen.
DE102020211714.4A 2020-09-18 2020-09-18 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems Pending DE102020211714A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020211714.4A DE102020211714A1 (de) 2020-09-18 2020-09-18 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020211714.4A DE102020211714A1 (de) 2020-09-18 2020-09-18 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Publications (1)

Publication Number Publication Date
DE102020211714A1 true DE102020211714A1 (de) 2022-03-24

Family

ID=80473606

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020211714.4A Pending DE102020211714A1 (de) 2020-09-18 2020-09-18 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Country Status (1)

Country Link
DE (1) DE102020211714A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190042917A1 (en) 2018-06-21 2019-02-07 Intel Corporation Techniques for determining artificial neural network topologies
EP3629246A1 (de) 2018-09-27 2020-04-01 Swisscom AG Systeme und verfahren zur suche nach neuronalen architekturen

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190042917A1 (en) 2018-06-21 2019-02-07 Intel Corporation Techniques for determining artificial neural network topologies
EP3629246A1 (de) 2018-09-27 2020-04-01 Swisscom AG Systeme und verfahren zur suche nach neuronalen architekturen

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GUO, Zichao [u.a.]: Single path one-shot neural architecture search with uniform sampling. Version 3; arXiv:1904.00420v3. 08-07-2020. S. 1-14. URL: https://arxiv.org/pdf/1904.00420.pdf [abgerufen am 2021-04-15].

Similar Documents

Publication Publication Date Title
DE102019209565A1 (de) Verfahren und Vorrichtung zum Überprüfen der Robustheit eines künstlichen neuronalen Netzes
DE69730811T2 (de) Anlage zur Bilderkennung
EP3853778B1 (de) Verfahren und vorrichtung zum betreiben eines steuerungssystems
DE102020210352A1 (de) Verfahren und Vorrichtung zum Transferlernen zwischen modifizierten Aufgaben
DE102015114015A1 (de) Maschinelles lernen
DE202020101012U1 (de) Vorrichtung zum Vorhersagen einer geeigneten Konfiguration eines maschinellen Lernsystems für einen Trainingsdatensatz
DE202019105282U1 (de) Vorrichtung zum Optimieren eines System für das maschinelle Lernen
DE102020212515A1 (de) Verfahren und Vorrichtung zum Trainieren eines maschinellen Lernsystems
DE102021202813A1 (de) Verfahren, Vorrichtung und Computerprogramm für eine Unsicherheitsbewertung einer Bildklassifikation
DE102019209457A1 (de) Verfahren zum Trainieren eines künstlichen neuronalen Netzes, künstliches neuronales Netz, Verwendung eines künstlichen neuronalen Netzes sowie entsprechendes Computerprogramm, maschinenlesbares Speichermedium und entsprechende Vorrichtung
DE102020208828A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE102019209566A1 (de) Verfahren und Vorrichtung zum Trainieren eines maschinellen Lernsystems
EP3857822A1 (de) Verfahren und vorrichtung zum ermitteln eines ansteuersignals
DE102020216188A1 (de) Vorrichtung und Verfahren zum Trainieren eines Klassifizierers
WO2020173700A1 (de) Verfahren und vorrichtung zum betreiben eines steuerungssystems
WO2023016843A1 (de) Verfahren und vorrichtung zum automatisierten erstellen eines maschinellen lernsystems zur multi-sensor-datenfusion
DE102020208309A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE102020211714A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE102022206063A1 (de) System und verfahren zum vorschalten von robustifiziereren für vortrainierte modelle gegen feindliche angriffe
DE202020104005U1 (de) Vorrichtung zum Erstellen eines Systems zum automatisierten Erstellen von maschinellen Lernsystemen
DE102021204040A1 (de) Verfahren, Vorrichtung und Computerprogramm zur Erstellung von Trainingsdaten im Fahrzeug
DE102020212108A1 (de) Verfahren und Vorrichtung zum Anlernen eines maschinellen Lernsystems
DE102020212514A1 (de) Verfahren zur Ermittlung eines Ausgabesignals mittels eines maschinellen Lernsystems
EP3701428B1 (de) Verfahren und vorrichtung zum verbessern der robustheit eines maschinellen lernsystems
DE102021208197A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Legal Events

Date Code Title Description
R163 Identified publications notified