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

Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems Download PDF

Info

Publication number
DE102021208453A1
DE102021208453A1 DE102021208453.2A DE102021208453A DE102021208453A1 DE 102021208453 A1 DE102021208453 A1 DE 102021208453A1 DE 102021208453 A DE102021208453 A DE 102021208453A DE 102021208453 A1 DE102021208453 A1 DE 102021208453A1
Authority
DE
Germany
Prior art keywords
probability
distribution
quantities
entropy
target
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
DE102021208453.2A
Other languages
English (en)
Inventor
Jan Hendrik Metzen
Benedikt Sebastian Staffler
David Stoeckel
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 DE102021208453.2A priority Critical patent/DE102021208453A1/de
Priority to US17/873,107 priority patent/US20230040014A1/en
Priority to CN202210926729.6A priority patent/CN115705500A/zh
Publication of DE102021208453A1 publication Critical patent/DE102021208453A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/29Graphical models, e.g. Bayesian networks
    • 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/0985Hyperparameter optimisation; Meta-learning; Learning-to-learn
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Analysis (AREA)

Abstract

Verfahren zum Erstellen eines maschinellen Lernsystems, umfassend folgende Schritte: Bereitstellen eines gerichteten Graphen mit einem Eingangs- und Ausgangsknoten, wobei jeder Kante jeweils eine Wahrscheinlichkeit zugeordnet ist, welche charakterisiert mit welcher Wahrscheinlichkeit eine Kante gezogen wird. Die Wahrscheinlichkeiten werden abhängig von einem Ausprägungsgrad einer Exploration der Architekturen des gerichteten Graphen vor einem zufälligen Ziehen der Architekturen manipuliert.

Description

  • Die Erfindung betrifft ein Verfahren zum Erstellen eines maschinellen Lernsystems unter Verwendung eines Graphen, der eine Vielzahl von möglichen Architekturen des maschinellen Lernsystems beschreibt, ein Computerprogramm und ein maschinenlesbares Speichermedium.
  • Stand der Technik
  • Das Ziel einer Architektursuche insbesondere für neuronale Netzwerke ist, eine möglichst gute Netzwerkarchitektur im Sinne einer Leistungskennzahl/Metrik für einen vorgegebenen Datensatz vollautomatisch 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 Daten des Eingangsknoten in Daten des 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.
  • Die Autoren Cai et al. offenbaren in ihrer Veröffentlichung ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware, online abrufbar: https://arxiv.org/abs/1812.00332, eine Architektursuche, welche Hardwareeigenschaften berücksichtigt.
  • Für die Auswahl einzelner Pfade, insbesondere deren korrespondierenden Architekturen, aus dem One-Shot-Modell werden Wahrscheinlichkeitsverteilung eingeführt, anhand deren die Pfade gezogen werden. Dies ermöglicht es, einzelne Architekturen aus dem One-Shot-Modell zu entnehmen. Die Parameter der Verteilung werden während der Architektursuche optimiert. Üblicherweise werden Wahrscheinlichkeitsverteilungen über ausgehenden Kanten der Knoten eingeführt. Diese Wahrscheinlichkeitsverteilungen sind typischerweise multinomiale Verteilung, die durch einen reellen Parametervektor (sogenannte Logits) parametrisiert wird, der auf einen Wahrscheinlichkeitsvektor üblicherweise unter Verwendung einer Softmax-Funktion normalisiert wird, d.h. die Einträge der Vektorsumme akkumulieren sich zum Wert Eins. Die Logits aller Wahrscheinlichkeitsverteilungen für jeden Knoten des Supermodels bilden dann einen Satz von Architekturparametern, der während der Architektursuche optimiert werden kann. Die Optimierung der Logits kann jedoch zu einer vorzeitigen Konvergenz im Architekturraum führen, was eine Erforschung neuartiger Architekturen in späteren Phasen des Suchprozesses nicht zulässt.
  • Vorteil der Erfindung
  • Es wird daher vorgeschlagen, anfänglich eine Exploration der Architekturen abhängig von einem Konvergenzfortschritt während der Architektursuche zu fördern. Dies hat den Vorteil, dass hiermit bessere Architekturen aufgefunden werden können.
  • Offenbarung der Erfindung
  • In einem ersten Aspekt betrifft die Erfindung ein computerimplementiertes Verfahren zum Erstellen eines maschinellen Lernsystems, welches vorzugsweise für eine Bildverarbeitung verwendet wird.
  • Das Verfahren umfasst zumindest folgende Schritte: Bereitstellen eines gerichteten Graphen mit einem oder mehreren Eingangs- und Ausgangsknoten, die über eine Mehrzahl von Kanten und Knoten verbunden sind. Der Graph, insbesondere das One-Shot Modell, beschreibt ein Supermodel umfassend eine Vielzahl von möglichen Architekturen des maschinellen Lernsystems. Einer Vielzahl der Kanten ist jeweils eine Größe (α) zugeordnet, welche charakterisiert mit welcher Wahrscheinlichkeit die jeweilige Kante gezogen werden kann. Alternativ können die Wahrscheinlichkeiten den Knoten zugeordnet werden. Die Größen (α) können Logits oder bereits die Wahrscheinlichkeiten sein. Die Logits können mittels einer Softmax-Funktion auf den Wertebereich zwischen Null und Eins abgebildet werden, wobei dann diese Abbildungen der Logits als Wahrscheinlichkeiten interpretiert werden oder diese Abbildungen eine multinomiale Wahrscheinlichkeitsverteilung beschreiben.
  • Die Wahrscheinlichkeit der jeweiligen Kante bezieht sich auf die möglichen Entscheidungen zu einem Entscheidungspunkt, insbesondere alle Kanten, die als mögliche Entscheidungen zu diesem Entscheidungspunkt zur Verfügung stehen. D.h. die Summe über die Wahrscheinlichkeiten der Kanten zum jeweiligen Entscheidungspunkt sollten akkumuliert den Wert Eins ergeben.
  • Daraufhin folgt ein zufälliges Ziehen einer Mehrzahl von Subgraphen durch den gerichteten Graphen abhängig von den Größen (α), insbesondere aus einer Wahrscheinlichkeitsverteilung, welche durch eine Ausgabe einer Softmax-Funktion angewendet auf die Logits definiert wird. Für das Ziehen werden jedoch die Größen (α) abhängig von einer Verteilung von Werten der Größen (α) in dem Graphen verändert. Mit anderen Worten kann gesagt werden, dass die Verteilung der Größen (α), insbesondere der Logits, eine Verteilung der Architekturen im Suchraum beschreibt. Und damit charakterisieren die Größen (α) eine Konzentration bzw. Häufigkeitsverteilung der Architekturen im Suchraum. Denn es hat sich herausgestellt, dass dieses Maß der Konzentration der Architekturen in einer aussagekräftigen Weise einen Grad einer Exploration des gerichteten Graphen beschreibt. Die Größen (α) beschreiben wie oben gesagt eine Verteilung über Architekturen in dem Suchraum. Während des Trainings wird effektiv die Verteilung so optimiert, dass gute Architekturen im Sinne eine Kostenfunktion, welche eine Zielaufgabe des maschinellen Lernsystems charakterisiert für die Architektursuche, eine höhere Wahrscheinlichkeit bekommen. Je nachdem wie uniform bzw. konzentriert diese Verteilung ist, werden beim Ziehen mehr oder weniger Architekturen exploriert. Daher wird vorgeschlagen, die Konvergenz abhängig von diesem Maß zu regulieren. Durch die Manipulation der Größen (α) wird erzielt, dass die Konvergenz der Architektursuche bei einer entsprechenden Veränderung der Größen (α) langsamer fortschreitet, wodurch effektiv eine verbesserte Exploration des Suchraums erzielt wird. D.h. die Konvergenz wird damit abhängig von der Exploration gesteuert. Die Veränderung der Größen (α) kann daher auch als eine Relaxation bezeichnet werden, welche die Entscheidungen streng nach den eigentlich zugewiesenen Wahrscheinlichkeiten beim Ziehen der Kanten aufweicht und dazu führt, dass die Konvergenz, insbesondere das Auffinden einer optimalen Architektur, vorzugsweise anfänglich mit einer kleineren Konvergenzrate fortschreitet.
  • Es sei angemerkt, dass das Ziehen eines Subgraphen iterativ erfolgen kann. Also ein schrittweises Erstellen eines Subgraphen durch ein nacheinander folgendes Ziehen der Kanten erfolgt, wobei an jedem erreichten Knoten des Subgraphen die nachfolgende Kante zufällig aus den möglichen nachfolgenden Kanten, die mit diesem Knoten verbunden sind, abhängig von deren zugeordneten Wahrscheinlichkeiten ausgewählt wird. Ferner sei angemerkt, dass ein Pfad als ein Subgraph des gerichteten Graphen verstanden kann werden, welcher eine Untermenge der Kanten und Knoten des gerichteten Graphen aufweist, und wobei dieser Subgraph den Eingangsknoten mit dem Ausgangsknoten des gerichteten Graphen verbindet.
  • Daraufhin folgt ein Anlernen der den gezogenen Subgraphen korrespondierenden maschinellen Lernsysteme. Beim Anlernen werden Parameter des maschinellen Lernsystems und die Größen (α) derart angepasst, sodass eine Kostenfunktion optimiert wird.
  • Daraufhin folgt ein letztes Ziehen eines Subgraphen abhängig von den angepassten Wahrscheinlichkeiten und Erstellen des diesem Subgraphen korrespondierenden maschinellen Lernsystems. Das letzte Ziehen des Subgraphen in dem letzten Schritt kann zufällig erfolgen oder es werden gezielt die Kanten mit den höchsten Wahrscheinlichkeiten gezogen.
  • Es wird vorgeschlagen, dass dann, wenn ein Maß der Verteilung der Werte der Größen (α) relativ zu einem Maß einer vorgegebenen Zielverteilung größer ist, die Größen (α) derart verändert werden, sodass die Kanten mit einer im Wesentlichen gleichen Wahrscheinlichkeit gezogen werden. Dies hat den Vorteil, dass weiterhin ein Explorieren des Graphen ermöglicht wird, auch wenn eine Konvergenz der Architektursuche einsetzt.
  • Weiterhin wird vorgeschlagen, dass die Veränderung der Größen (α) abhängig von einer Entropie der Wahrscheinlichkeitsverteilung der Architekturen im gerichteten Graphen und insbesondere einer Anzahl von bereits durchgeführten Anlernschritte erfolgt.
  • Unter der Entropie kann ein Maß für die Unordnung der Architekturen im Graphen verstanden werden, bzw. die Entropie kann als ein Maß einer Verteilung der Architekturen im Suchraum, welcher durch den Graphen definiert wird, aufgefasst werden. Für große Graphen kann die Entropie über Stichproben geschätzt werden. Die geschätzte Entropie kann über einen Erwartungswert über einen Logarithmus der Verteilungen der Pfade/Subgraphen in dem gerichteten Graphen ermittelt werden. Für große Graphen kann die Entropie mittels Monte Carlo Methoden, d.h. Anhang von Stichproben, geschätzt werden.
  • Weiterhin wird vorgeschlagen, dass dann, wenn die Entropie in dem Graphen kleiner als eine vorgegebene Zielentropie (Starget) ist, ein Parameter (T, ∈) durch welchen die Größen (α) verändert werden, derart verändert wird, dass dieser Parameter eine Veränderung der Größen (α) erwirkt, sodass die Wahrscheinlichkeiten eines Ziehens zu einem im Wesentlichen gleichwahrscheinlichen Ziehen der Kanten verlagert wird.
  • Vorzugsweise wird dann, wenn die ermittelte Entropie (Snew) größer als eine vorgegebene Zielentropie (Starget) ist, der Parameter (T, ∈), derart verändert, dass eine Veränderung der Größen (α) erwirkt wird, sodass die Wahrscheinlichkeiten, dass die jeweilige Kante gezogen werden, erhöht werden, bzw. die Größen derart verändert werden, dass sich die Relationen zwischen den Größen verstärken.
  • Dies hat den Vorteil, dass durch diese Veränderungen der Wahrscheinlichkeiten beim Ziehen auf eine besonderes einfache Weise derart regulierend in den Explorationsfortschritt eingegriffen wird, dass die Entropie Starget das Explorieren steuert und somit ein voreiliges Fixieren auf eine Untermenge der Architekturen aus dem Graphen vermieden wird.
  • Ferner wird vorgeschlagen, dass die Kostenfunktion eine erste Funktion aufweist, die eine Leistungsfähigkeit des maschinellen Lernsystems hinsichtlich dessen Performance bewertet, bspw. eine Genauigkeit einer Segmentierung, Objekterkennung oder ähnliches und optional eine zweite Funktion aufweist, welche abhängig von einer Länge des Subgraphen, bzw. einer Topologie oder Struktur des Subgraphen und den Operationen der Kanten eine Latenzzeit des maschinellen Lernsystems schätzt. Alternativ oder zusätzlich kann die zweite Funktion auch einen Computerressourcenverbrauch des maschinellen Lernsystems schätzen.
  • Vorzugsweise ist das erstellte maschinelle Lernsystem ein künstliches neuronales Netz, welches zur Segmentierung und Objektdetektion in Bildern eingerichtet sein kann.
  • Weiterhin wird vorgeschlagen, dass abhängig von einer Ausgabe des maschinellen Lernsystem ein technisches System angesteuert wird. Beispiele für das technische System sind in der nachfolgenden Figurenbeschreibung aufgezeigt.
  • In weiteren Aspekten betrifft die Erfindung ein Computerprogramm, das eingerichtet ist, 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 schematische Darstellung eines Flussdiagramms einer Ausführungsform der Erfindung;
    • 2 schematische Darstellung eines Aktor-Steuerungssystems;
    • 3 ein Ausführungsbeispiel zur Steuerung eines wenigstens teilautonomen Roboters;
    • 4 schematisch ein Ausführungsbeispiel zur Steuerung eines Fertigungssystems;
    • 5 schematisch ein Ausführungsbeispiel zur Steuerung eines Zugangssystems;
    • 6 schematisch ein Ausführungsbeispiel zur Steuerung eines Überwachungssystems;
    • 7 schematisch ein Ausführungsbeispiel zur Steuerung eines persönlichen Assistenten;
    • 8 schematisch ein Ausführungsbeispiel zur Steuerung eines medizinisch bildgebenden Systems;
    • 9 einen möglichen Aufbau einer Trainingsvorrichtung;
  • Um gute Architekturen von tiefen neuronalen Netzwerke für einen vorgegebenen Datensatz zu finden, können automatische Methoden zur Architektursuche angewandt werden, sogenannte Neural Architecture Search-Methoden (NAS). Dazu wird ein Suchraum von möglichen Architekturen neuronaler Netzwerke explizit oder implizit definiert.
  • Im Folgenden soll zur Beschreibung eines Suchraums ein Berechnungsgraph (das sogenannte One-Shot Modell) definiert werden, welcher eine Vielzahl von möglichen 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 z.B. in dem einzelne Pfade von einem festgelegten Eingangsknoten zu einem festgelegten Ausgangsknoten des Netzwerkes gezogen werden.
  • Im einfachsten Fall, wenn der Berechnungsgraph aus einer einfachen 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 beliebig gerichteter Graph ist, kann z.B. ein Pfad iterativ gezogen werden, in dem bei dem Input (Eingangsknoten) begonnen wird, dann der nächste Knoten und die verbindende Kante gezogen wird, wobei dieses Vorgehen iterativ bis zum Zielknoten fortgesetzt wird.
  • Der somit durch das Ziehen erhaltene Pfad, der ein Subgraph des gerichteten Graphen entsprechen kann, kann dann angelernt werden, indem für jeden Mini-Batch von Trainingsdaten 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 abwechselnd mit dem Training der Gewichte durchgeführt werden.
  • Um Architekturen aus einem One-Shot Modell zu ziehen, kann eine multinomiale Verteilungen über die unterschiedlichen diskreten Auswahlmöglichkeiten beim Ziehen eines Pfades/Subgraphen, also einer Architektur eines maschinellen Lernsystems, gegeben sein, die jeweils durch einen reellen Werte-Vektor namens Logits parametriert werden kann, der durch Anwendung einer softmax-Funktion auf einen Wahrscheinlichkeitsvektor normalisiert werden kann. Für eine diskrete Auswahl wird ein Logits-Vektor α = (α1, ..., αN) definiert, wobei αi ∈ R ein reeller Wert ist und N der Anzahl der möglichen Entscheidungen entspricht. Für NAS sind die Entscheidungen beispielsweise Entscheidungen, welche der Kanten oder Konnten als nächstes für den Pfad gezogen werden sollen.
  • Zum Ziehen wird der Logits-Vektor mit der Softmax-Funktion σ normalisiert, wobei sich die i-te Komponente berechnet: σi(α) = eαi/∑keαk , wodurch der Wahrscheinlichkeitsvektor p = σ(α) gegeben ist.
  • Dieser Wahrscheinlichkeitsvektor p wird verwendet, um eine Entscheidung aus einer multinomialen Verteilung zu ziehen. Eine Entscheidung könnte beispielsweise sein, zwischen den ausgehenden Kanten für einen Knoten im Graphen zu wählen. Das Ziehen eines vollständigen Pfades kann mehrere dieser Entscheidungen erfordern.
  • Eine Optimierung der Logits während des NAS-Vorgangs kann zu einer voreiligen Fixierung auf einen kleineren Suchraum hervorrufen, wodurch ggf. bessere Architekturen außerhalb dieses Suchraums nicht weiter exploriert werden.
  • In einer ersten Ausführungsform zum Überwinden der voreiligen Fixierung von NAS, wird eine sog. epsilon-greedy Exploration vorgeschlagen. Das heißt, mit einer Wahrscheinlichkeit von ε ∈ [0,1] wird eine Entscheidung nicht nach dem entsprechenden Logit, sondern aus einer gleichförmigen Verteilung gezogen. Somit kann z.B. an mehreren Stellen im Netzwerk die Entscheidung mit gleicher Wahrscheinlichkeit aus allen Optionen ausgewählt und nicht auf Basis der Wahrscheinlichkeitswerte, die aus dem entsprechenden Logits-Vektor abgeleitet werden. Die Wahrscheinlichkeit ε wird im Folgenden als Explorationswahrscheinlichkeit bezeichnet.
  • In einer zweiten Ausführungsform wird eine temperaturabhängige Skalierung der Logits vorgeschlagen. Dazu wird ein positive-reeller Parameter T eingeführt, der im Folgenden (Erkundungs-) Temperatur genannt wird. Die Logits werden dann abhängig von dieser Temperatur skaliert, bevor sie von der Softmax-Funktion normalisiert werden, d.h. die Normalisierung nimmt die Form an: p = σ ( α T ) .
    Figure DE102021208453A1_0001
  • Bei großen Werten von T werden alle Komponenten des Logit-Vektors nahe Null sein und die Verteilung wird somit im Wesentlichen gleichverteilt sein. Für T = 1 sind die Logit-Werte unverändert und das Ziehen abhängig von den Logits erfolgt aus der durch den Logit-Vektor definierten Verteilung. Für T → 0 nähert sich die Stichprobe der Berechnung des argmax des Logits-Vektors.
  • Während der Architektursuche wird die Explorationswahrscheinlichkeit oder die Explorationstemperatur abgekühlt, d.h. die Architektursuche wird langsam von einer breiten Erkundung des Suchraums am Anfang der Architektursuche zu einer fokussierten Suche vielversprechender Architekturen verlagert.
  • Ein simpler Abfall der Explorationswahrscheinlichkeit oder der Explorationstemperatur ist direkt implementierbar, erfordert wird jedoch eine Festlegung eines Anfangswertes der Explorationswahrscheinlichkeit/Temperatur sowie eines Zeitplans, welcher festlegt, wie stark der Abfall ausgeprägt sein soll. Es ist jedoch meist nicht klar, wie z. B. ein initialer Ausgangswert gewählt werden soll und wie schnell dieser abkühlen soll, da diese Werte meist anwendungsspezifisch sind.
  • Es wird daher vorgeschlagen, ein Hilfsmaß einzuführen, um zu approximieren, wie konzentriert die Architekturverteilung durch die Logits im Suchraum verteilt ist. Anhand dieses Hilfsmaß kann dann der initiale Ausgangswert der Explorationswahrscheinlichkeit und die Temperatur geschätzt werden. Ferner ermöglicht dieses Hilfsmaß zu steuern, wie ausgeprägt der Abfall erfolgen soll. Es hat sich herausgestellt, dass ein entropiebasiertes Hilfsmaß zu den besten Ergebnissen führt. Bevorzugt wird hierfür die Entropie des Suchraums verwendet.
  • Ein Zielkorridor oder ein Zielwert der Explorationswahrscheinlichkeit oder der Temperatur wird indirekt geplant, indem ein Zielkorridor oder Zielwert der Entropie bestimmt wird und dann mittels dieser Zielentropie (Starget) die Explorationswahrscheinlichkeit oder Temperatur entsprechend reguliert wird.
  • Jedoch kann es aufwändig sein, die Entropie eines großen Suchraums genau zu ermitteln, weshalb eine Schätzung der Entropie durch Stichproben durchgeführt werden kann. Ferner ist es typischerweise auch nicht möglich, die erforderliche Explorationswahrscheinlichkeit oder Explorationstemperatur direkt zu berechnen, um eine vorgegebene Entropie zu erreichen.
  • Daher wird zum Einstellen der Explorationswahrscheinlichkeit oder Temperatur folgendes Vorgehen vorgeschlagen, bis eine gewünschte Entropie erreicht ist:
    • Sei Starget die Zielentropie, welche der Suchraum aufweisen soll, d ∈ [0,1] ein Abklingfaktor und λ ∈ [0,1) ein Glättungsfaktor, smax ∈ N eine max. Anzahl von Schritten und κ eine kleine Konstante (z.B. κ = 10-5) und stepcount = 0. Bspw. kann initial T = 1 gewählt werden und es wird eine gemittelte Entropie des Suchraums Savg geschätzt, z.B. anhand einer geringen Anzahl von Stichproben (z.B. 25 Stichproben). Denkbar sind auch initial größere Werte für T.
  • Dann werden iterativ die folgenden Schritte durchgeführt, sodass basierend auf der Entropie des Suchraums eine Relaxierung der Logits bestimmt wird:
    1. 1. Bestimmen einer neuen Schätzung der Entropie Snew des Suchraums anhand einer vorgegebenen Anzahl von Stichproben (ggf. nur durch eine einzige Stichprobe);
    2. 2. Aktualisieren der Gesamtschätzung der Entropie abhängig von der neuen Schätzung der Entropie Snew, z.B. via einem gleitenden Mittelung: Savg ← exp(λ log(Savg) + (1 - λ)log(Snew + κ)));
    3. 3. Anpassen einer Abfallkonstante γ= 1 + dstepcount ;
    4. 4. Falls Starget > Savg dann wird die Temperatur abhängig von der Abfallkonstante γ angepasst: T ←T * γ, andernfalls: T ← T/γ;
    5. 5. Erhöhen des Zählers stepcount um den Wert Eins. Falls stepcount > smax wird das Verfahren beendet, andernfalls wird die nächste Iteration mit Schritt 1 begonnen.
  • Es sei angemerkt, dass auch andere gleitende Mittelungen in Schritt 2 verwendet werden könnten, z.B. wie ein exponentiell gleitender Durchschnitt oder ein einfacher gleitender Durchschnitt. Ferner sei angemerkt, dass auch andere adaptive Regelkreise in Schritt 4 verwendet werden könnten, um die Temperatur basierend auf der aktuellen Entropie-Schätzung anzupassen. Ferner sei angemerkt, dass auch komplexere Verfahren zur Bestimmung der Explorationswahrscheinlichkeit/-temperatur, die zu einer gewünschten Entropie führt, verwendet werden könnten. Ein Beispiel hierfür ist ein noisy-binary search Algorithmen (https://en.wikipedia.org/wiki/Binary_search_algorithm#Noisy_binary_search oder https://www.cs.cornell.edu/~rdk/papers/karpr2.pdf).
  • Die eben erläuterten Schritte 1 bis 4 können auch direkt dazu verwendet werden, um die Explorationswahrscheinlichkeit ε entsprechend anzupassen. Nämlich indem einfach die Temperatur T durch die Explorationswahrscheinlichkeit ∈ im obigen Algorithmus ersetzt wird und optional einen zusätzlichen Schritt eingeführt wird, der sicherstellt, dass ε ∈ [0,1] ist. Vorzugsweise wird die Explorationswahrscheinlichkeit ∈ initial auf einen großen Wert, wie 0.9 oder 1, gesetzt. Für den Fall, dass der Graph derart initialisiert ist, dass die Subgrahen zu Beginn mit gleicher Wahrscheinlichkeit gezogen werden, kann die Explorationswahrscheinlichkeit ∈ initial auf den Wert 0 gesetzt werden.
  • Die Zeitplanung der Erkundungswahrscheinlichkeit oder Temperatur funktioniert dann wie folgt. Die anfängliche Entropie der Architekturverteilung wird vor dem NAS-Lauf basierend auf z. B. 1000 Stichproben geschätzt und ein Zerfallsplan gewählt (z. B. exponentieller Zerfall). Jedes Mal, wenn der Planer (engl. Scheduler) aufgerufen wird, wird die neue Zielentropie Starget basierend auf der anfänglichen Entropie berechnet und der Planer bestimmt dann die erforderliche Explorationswahrscheinlichkeit oder Temperatur, wie oben beschrieben.
  • 1 zeigt schematisch zeigt schematisch ein Flussdiagramm (20) eines verbesserten Verfahrens zur Architektursuche mit einem One-Shot Modell.
  • Die automatische Architektursuche kann wie folgt durchgeführt werden. Die automatische Architektursuche benötigt zuerst ein Bereitstellen eines Suchraums (S21), welcher hier in der Form eines One-Shot Modells gegeben sein kann, wobei den Kanten die Logits (α) zugewiesen sind.
  • Im darauffolgenden Schritt S22 wird eine initiale Entropie vor Anwendung einer NAS-Methode basierend auf z. B. 1000 Stichproben von zufällig gezogenen Architekturen aus dem One-Shot Modell geschätzt und ein Zerfallsplan (engl. decay schedule) für den Planer gewählt (z. B. ein exponentieller Zerfall). Der Zerfallsplan ermittelt daraufhin abhängig von der anfänglichen Entropie eine erste Zielentropie Starget.
  • Nachdem Schritt S22 beendet wurde, folgt Schritt S23. Hierin wird gemäß der oben genannten Schritte 1 bis 5 die Temperatur oder die Explorationswahrscheinlichkeit ∈ angepasst.
  • Im darauffolgenden Schritt S24 wird mit der ermittelten Parametrisierung aus Schritt S23 ein NAS Durchlauf ausgeführt, also ein Ziehen von Subgraphen unter Verwendung der Relaxation der Wahrscheinlichkeitsverteilung p abhängig von dem ermittelten Parameter T oder ε , sowie dem Anlernen der zu den Subgraphen korrespondierenden maschinellen Lernsysteme, etc. Es sei angemerkt, dass eine Optimierung der Parameter und Wahrscheinlichkeiten beim 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.
  • Nachdem Schritt S24 beendet wurde, kann der Schritt S23 gefolgt von Schritt S24 mehrmals nacheinander wiederholt werden. Bei der Wiederholungen von Schritt S23 und S24 kann der Planer vorab aufgerufen werden, um basierend auf der anfänglichen Entropie und dem Zerfallsplan eine neue Zielentropie Starget zu bestimmen. Dann wird wie oben beschrieben S23 verwendet um T, ε anzupassen und dann erneut S24 durchgeführt.
  • Das Wiederhohlen der Schritte S23 und S24 kann z.B. dann abgebrochen werden, wenn der Zähler stepcount den Wert der max. Schritte erzielt hat. D.h. der Zähler stepcount wird innerhalb von S23 verwendet. Der Zähler stepcount wird bei jeder Wiederholung von S23 wieder anfänglich zurück auf 0 gesetzt.
  • Anschließend kann in Schritt S25 basierend auf dem Graph ein finaler Subgraph gezogen werden und ein korrespondierendes maschinelles Lernsystem gemäß diesem Subgraph initialisiert werden.
  • Vorzugsweise ist das erstelle maschinelle Lernsystem nach Schritt S25 ein künstliches neuronales Netz 60 (abgebildet in 2) und wird verwendet wie im nachfolgenden erläutert.
  • 2 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.
  • 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.
  • 3 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.
  • 4 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.
  • 5 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.
  • 6 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.
  • 7 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.
  • 8 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.
  • 9 zeigt eine beispielhafte Trainingsvorrichtung 140 zum Trainieren eines der gezogenen maschinellen Lernsystems, insbesondere des neuronalen Netzes 60, aus dem Graphen. Trainingsvorrichtung 140 umfasst einen Bereitsteller 71, der Eingangsgrößen x, wie z.B. Eingangsbilder, und Soll-Ausgangsgrößen ys, beispielsweise Soll-Klassifikationen, bereitstellt. Die Eingangsgröße 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 (10)

  1. Computerimplementiertes Verfahren (20) zum Erstellen eines maschinellen Lernsystems, umfassend folgende Schritte: Bereitstellen (S21) eines gerichteten Graphen mit einem oder mehreren Eingangs- und Ausgangsknoten, die über eine Mehrzahl von Kanten und Knoten verbunden sind, wobei den Kanten jeweils eine Größe (α) zugeordnet ist, welche charakterisiert mit welcher Wahrscheinlichkeit die jeweilige Kante gezogen wird; Zufälliges Ziehen (S22) einer Mehrzahl von Subgraphen durch den gerichteten Graphen abhängig von den Größen (α), wobei die Größen (α) abhängig von einer Verteilung von Werten der Größen (α) in dem Graphen verändert werden; Anlernen der des gezogenen Subgraphen korrespondierenden maschinellen Lernsysteme (S23), wobei beim Anlernen Parameter des maschinellen Lernsystems und die Größen (α) angepasst werden, sodass eine Kostenfunktion optimiert wird; und Ziehen (S24) eines Subgraphen abhängig von den angepassten Wahrscheinlichkeiten und Erstellen des diesem Subgraphen korrespondierenden maschinellen Lernsystems.
  2. Verfahren nach Anspruch 1, wobei dann, wenn ein Maß für die Verteilung der Werte der Größen (α) relativ zu einer vorgegebenen Zielmaß einer Zielverteilung größer ist, die Größen (α) derart verändert werden, sodass die Verteilung Kanten mit einer im Wesentlichen gleichen Wahrscheinlichkeit gezogen werden.
  3. Verfahren nach einem der Ansprüche 1 oder 2, wobei die Veränderung der Größen (α) abhängig von einer Entropie des gerichteten Graphen und insbesondere einer Anzahl von bereits durchgeführten Anlernschritte erfolgt.
  4. Verfahren nach Anspruch 3, wobei dann, wenn die Entropie (Snew) größer als eine vorgegebene Zielentropie (Starget) ist, ein Parameter (T, ∈) durch welchen die Größen (α) verändert werden, derart verändert wird, dass dieser Werte der Größen (α) verändert, sodass die Wahrscheinlichkeitsverteilung, welche die Größen (α) charakterisieren, eine geringere Ähnlichkeit mit einer einer uniformen Verteilung aufweist und insbesondere dann, wenn die ermittelte Entropie (Snew) kleiner als die vorgegebene Zielentropie (Starget) ist, der Parameter (T, ∈) derart verändert wird, dass dieser Werte der Größen (α) verändert, sodass die Wahrscheinlichkeitsverteilung welche die Größen (α) charakterisieren, im Wesentlichen eine uniformen Verteilung charakterisiert.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Veränderung der Größen (α) abhängig von einer Explorationswahrscheinlichkeit (∈) erfolgt, wobei die Explorationswahrscheinlichkeit charakterisiert, mit welcher Wahrscheinlichkeit die Kanten entweder abhängig von den der Kanten zugeordneten Größen (α) oder mit einer im Wesentlichen gleichen Wahrscheinlichkeit gezogen werden.
  6. Verfahren nach einem der Ansprüche 1 bis 4, wobei die Veränderung der Größen (α) mittels einer Temperaturskalierung (engl. temperature scaling) erfolgt.
  7. Verfahren nach Anspruch 6, wobei bei der Temperaturskalierung abhängig von einer Temperatur (T), welche abhängig von der Verteilung der Größen (α) verändert wird, die Größen (α) skaliert werden.
  8. 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.
  9. Maschinenlesbares Speicherelement auf welchem das Computerprogramm nach Anspruch 8 hinterlegt ist.
  10. Vorrichtung, welche eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 7 auszuführen.
DE102021208453.2A 2021-08-04 2021-08-04 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems Pending DE102021208453A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102021208453.2A DE102021208453A1 (de) 2021-08-04 2021-08-04 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
US17/873,107 US20230040014A1 (en) 2021-08-04 2022-07-25 Method and device for creating a machine learning system
CN202210926729.6A CN115705500A (zh) 2021-08-04 2022-08-03 用于创建机器学习系统的方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021208453.2A DE102021208453A1 (de) 2021-08-04 2021-08-04 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Publications (1)

Publication Number Publication Date
DE102021208453A1 true DE102021208453A1 (de) 2023-02-09

Family

ID=84975277

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021208453.2A Pending DE102021208453A1 (de) 2021-08-04 2021-08-04 Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems

Country Status (3)

Country Link
US (1) US20230040014A1 (de)
CN (1) CN115705500A (de)
DE (1) DE102021208453A1 (de)

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CAI, Han ; ZHU, Ligeng ; HAN, Song: ProxylessNAS: Direct neural architecture search on target task and hardware. Version 1, 02-12-2018, S. 1-13, URL: https://arxiv.org/pdf/1812.00332v1 [abgerufen am 09-09-2021]
LIU, Hanxiao; SIMONYAN, Karen; YANG, Yimin: Darts: Differentiable architecture search. Version 2, 23-04-2019, S. 1-13, URL: https://arxiv.org/abs/1806.09055v2 [abgerufen am 22-03-2022]
XIE, Sirui [et al.]: SNAS: stochastic neural architecture search. Version 3, 01-04-2020, S. 1-17, URL: https://arxiv.org/abs/1812.09926v3 [abgerufen am 22-03-2022]

Also Published As

Publication number Publication date
CN115705500A (zh) 2023-02-17
US20230040014A1 (en) 2023-02-09

Similar Documents

Publication Publication Date Title
DE102019209565A1 (de) Verfahren und Vorrichtung zum Überprüfen der Robustheit eines künstlichen neuronalen Netzes
DE69815067T2 (de) Verfahren zur bestimmung modell-spezifischer faktoren für die mustererkennung im insbesonderen für sprachmuster
DE102020210352A1 (de) Verfahren und Vorrichtung zum Transferlernen zwischen modifizierten Aufgaben
DE202019105282U1 (de) Vorrichtung zum Optimieren eines System für das maschinelle Lernen
DE102020212515A1 (de) Verfahren und Vorrichtung zum Trainieren eines maschinellen Lernsystems
DE202020101012U1 (de) Vorrichtung zum Vorhersagen einer geeigneten Konfiguration eines maschinellen Lernsystems für einen Trainingsdatensatz
EP3435295A1 (de) Vorverarbeitung für einen klassifikationsalgorithmus
DE102019214625A1 (de) Verfahren, Vorrichtung und Computerprogramm zum Erstellen eines künstlichen neuronalen Netzes
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
DE102019210507A1 (de) Vorrichtung und computerimplementiertes Verfahren für die Verarbeitung digitaler Sensordaten und Trainingsverfahren dafür
DE202020104238U1 (de) Vorrichtung zum Lernen einer Strategie und Betreiben der Strategie
DE102020211262A1 (de) Verfahren und Vorrichtung zum Komprimieren eines neuronalen Netzes
DE102020208828A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
EP3857822A1 (de) Verfahren und vorrichtung zum ermitteln eines ansteuersignals
DE102021208453A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE202019105304U1 (de) Vorrichtung zum Erstellen eines künstlichen neuronalen Netzes
DE202021105192U1 (de) Vorrichtung zum maschinellen Lernen aus einer geringen Anzahl von Trainingsdatenbeispielen
DE102019202523A1 (de) Verfahren und Vorrichtung zum Betreiben eines Steuerungssystems
DE102020212514A1 (de) Verfahren zur Ermittlung eines Ausgabesignals mittels eines maschinellen Lernsystems
DE102020208309A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE102020216188A1 (de) Vorrichtung und Verfahren zum Trainieren eines Klassifizierers
WO2023006597A1 (de) Verfahren und vorrichtung zum erstellen eines maschinellen lernsystems
DE102020211714A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems
DE202019103046U1 (de) Vorrichtung zur Vorhersage einer Lernkurve
DE102021207937A1 (de) Verfahren und Vorrichtung zum Erstellen eines maschinellen Lernsystems mit einer Mehrzahl von Ausgängen

Legal Events

Date Code Title Description
R163 Identified publications notified