DE102022207072A1 - Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes - Google Patents

Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes Download PDF

Info

Publication number
DE102022207072A1
DE102022207072A1 DE102022207072.0A DE102022207072A DE102022207072A1 DE 102022207072 A1 DE102022207072 A1 DE 102022207072A1 DE 102022207072 A DE102022207072 A DE 102022207072A DE 102022207072 A1 DE102022207072 A1 DE 102022207072A1
Authority
DE
Germany
Prior art keywords
neural network
artificial neural
trajectory
determining
directed graph
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
DE102022207072.0A
Other languages
English (en)
Inventor
Jan Hendrik Metzen
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 DE102022207072.0A priority Critical patent/DE102022207072A1/de
Priority to US18/348,148 priority patent/US20240013026A1/en
Priority to CN202310841187.7A priority patent/CN117391215A/zh
Priority to JP2023112838A priority patent/JP2024009787A/ja
Publication of DE102022207072A1 publication Critical patent/DE102022207072A1/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
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural 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/092Reinforcement learning
    • 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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Landscapes

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

Abstract

Die Erfindung betrifft ein Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes, wobei das Verfahren (1) folgende Schritte aufweist: Ermitteln der optimalen Architektur des künstlichen neuronale Netzes (6) durch wiederholtes Ermitteln einer Trajektorie von dem Anfangsknoten zu einem Endknoten basierend auf der festgelegten Strategie (7), Bestimmen einer Belohnung für die ermittelte Trajektorie (8), Bestimmen einer Kostenfunktion für die ermittelte Trajektorie basierend auf der ermittelten Belohnung für die Trajektorie und der den Kanten entlang der Trajektorie zugeordneten Flüssen (9), und jeweiliges Aktualisieren der den Kanten entlang der Trajektorie zugeordneten Flüssen basierend auf der Kostenfunktion (10), bis eine ermittelte Trajektorie eine Abbruchkriterium für die Architektursuche erfüllt, wobei die Trajektorie, die das Abbruchkriterium erfüllt, die optimale Architektur repräsentiert.

Description

  • Die Erfindung betrifft ein Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes, mit welchem Ressourcen bei der Ermittlung der optimalen Architektur eingespart werden können, und mit welchem gleichzeitig auch die Genauigkeit bei der Ermittlung der optimalen Architektur erhöht werden kann.
  • Algorithmen des maschinellen Lernens basieren darauf, dass Verfahren der Statistik verwendet werden, um eine Datenverarbeitungsanlage derart zu trainieren, dass diese eine bestimmte Aufgabe ausführen kann, ohne dass diese ursprünglich explizit hierzu programmiert wurde. Das Ziel des maschinellen Lernens besteht dabei darin, Algorithmen zu konstruieren, die aus Daten lernen und Vorhersagen treffen können. Diese Algorithmen erstellen mathematische Modelle, mit denen beispielsweise Daten klassifiziert werden können.
  • Ein Beispiel für derartige Algorithmen des maschinellen Lernens sind künstliche neuronale Netze. Derartige künstliche neuronale Netze orientieren sich an biologischen Neuronen und erlauben es, ein unbekanntes Systemverhalten aus vorhandenen Trainingsdaten anzulernen und anschließend das angelernte Systemverhalten auch auf unbekannte Eingangsgrößen anzuwenden. Dabei besteht das neuronale Netz aus Schichten mit idealisierten Neuronen, welche gemäß einer Topologie des Netzes in unterschiedlicher Weise miteinander verbunden sind. Die erste Schicht, welche auch als Eingangsschicht bezeichnet wird, erfasst und überträgt dabei die Eingangswerte, wobei die Anzahl der Neuronen in der Eingangsschicht der Anzahl an Eingangssignalen, welche verarbeitet werden sollen, entspricht. Die letzte Schicht wird auch als Ausgangsschicht bezeichnet und weist genauso viele Neuronen auf, wie Ausgabewerte bereitgestellt werden sollen. Zwischen der Eingangsschicht und der Ausgangsschicht befindet sich zudem wenigstens eine Zwischenschicht, welche oftmals auch als verborgene Schicht bezeichnet wird, wobei die Anzahl der Zwischenschichten und die Anzahl und/oder der Typ der Neuronen in diesen Schichten abhängig von der konkreten Aufgabe, welche durch das neuronale Netz gelöst werden soll, ist.
  • Die Entwicklung der Architektur des künstlichen neuronalen Netzes, das heißt die Bestimmung des Erscheinungsbildes des Netzes beziehungsweise der Anzahl der Schichten in dem Netz sowie die Bestimmung der Anzahl und/oder des Typs der Neuronen in den einzelnen Schichten ist dabei für gewöhnlich jedoch sehr aufwendig, insbesondere im Hinblick auf den Ressourcenverbrauch. Um die Entwicklung der Architektur zu optimieren, wurde dabei die Neural Architektur Search (NAS) entwickelt, welche automatisiert optimale Architekturen für spezifische Problemstellungen entwickelt. Der NAS-Algorithmus stellt dabei zunächst aus verschiedenen Bausteinen und Konfigurationen eine Architektur für das künstliche neuronale Netz zusammen, welche anschließend mit einem Satz Trainingsdaten trainiert wird, und wobei erhaltene Ergebnisse anschließend im Hinblick auf die Performanz evaluiert werden. Basierend auf dieser Bewertung kann anschließend eine neue, im Hinblick auf die Performanz voraussichtlich optimalere Architektur ermittelt werden, welche anschließend wiederum basierend auf den Trainingsdaten trainiert wird, und wobei die erhaltenen Ergebnisse anschließend wiederum im Hinblick auf die Performanz evaluiert werden. Diese Schritte können dabei so oft wiederholt werden, bis keine Verbesserung mehr durch Veränderungen der Architektur erzielbar ist, wobei für gewöhnlich gradientenbasierte Verfahren zum Ermitteln der optimaleren Architektur verwendet werden.
  • Insbesondere die Performance eines künstlichen neuronalen Netzes hängt dabei unter anderem von der gewählten Architektur ab. Als nachteilig erweist sich hierbei jedoch, dass es für gewöhnlich schwierig ist, eine tatsächlich optimale Architektur für das künstliche neuronale Netz zu bestimmen, wobei die Bestimmung der optimalen Architektur für gewöhnlich trotz allem mit einem hohen Ressourcenverbrauch verbunden ist.
  • Aus der Druckschrift DE 10 2019 214 625 A1 ist ein Verfahren zum Erstellen eines künstlichen neuronalen Netzes bekannt. Das Verfahren umfasst dabei ein Bereitstellen einer Mehrzahl von unterschiedlichen Datensätzen, ein Initialisieren einer Mehrzahl von Hyperparametern, ein Anlernen des künstlichen neuronalen Netzes, ein Auswerten des angelernten künstlichen neuronalen Netzes, ein Optimieren der Hyperparameter abhängig von der Auswertung und ein erneutes Anlernen des künstlichen neuronalen Netzes unter Verwendung der optimierten Hyperparameter.
  • Der Erfindung liegt somit die Aufgabe zugrunde, ein verbessertes Verfahren zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz anzugeben.
  • Die Aufgabe wird gelöst durch ein Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes gemäß den Merkmalen des Patentanspruchs 1.
  • Die Aufgabe wird zudem auch gelöst durch ein System zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes gemäß den Merkmalen des Patentanspruchs 7.
  • Offenbarung der Erfindung
  • Gemäß einer Ausführungsform der Erfindung wird diese Aufgabe gelöst durch ein Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes, wobei das Verfahren ein Bereitstellen einer Menge an möglichen Architekturen des künstlichen neuronalen Netzes, ein Darstellen der Menge an möglichen Architekturen des künstlichen neuronalen Netzes in einem gerichteten Graphen, wobei die Knoten des gerichteten Graphen jeweils eine Teilmenge von einer der möglichen Architekturen symbolisieren, wobei ein Anfangsknoten eine Eingabeschicht symbolisiert, wobei Endknoten des gerichteten Graphens jeweils eine, eine Ausgabeschicht aufweisende Teilmenge symbolisieren, und wobei die Kanten des gerichteten Graphen mögliche Verknüpfungen zwischen den Teilmengen symbolisieren, für jede Kante des gerichteten Graphens ein Zuordnen eines Flusses zu der entsprechenden Kante, ein Festlegen einer Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen, und ein Ermitteln der optimalen Architektur des künstlichen neuronale Netzes durch wiederholtes Ermitteln einer Trajektorie von dem Anfangsknoten zu einem Endknoten basierend auf der festgelegten Strategie, Bestimmen einer Belohnung für die ermittelte Trajektorie, Bestimmen einer Kostenfunktion für die ermittelte Trajektorie basierend auf der ermittelten Belohnung für die Trajektorie und der den Kanten entlang der Trajektorie zugeordneten Flüssen, und jeweiliges Aktualisieren der den Kanten entlang der Trajektorie zugeordneten Flüssen basierend auf der Kostenfunktion, aufweist, wobei die Schritte des Ermittelns einer Trajektorie, des Bestimmens einer Belohnung, des Bestimmens einer Kostenfunktion und des Aktualisierens der Flüsse solange wiederholt werden, bis eine ermittelte Trajektorie eine Abbruchkriterium für die Architektursuche erfüllt, und wobei die Trajektorie, die das Abbruchkriterium erfüllt, die optimale Architektur repräsentiert.
  • Unter einer Menge an möglichen Architekturen wird hierbei eine Mehrzahl an möglichen Architekturen des künstlichen neuronalen Netzes beziehungsweise ein entsprechender Suchraum verstanden.
  • Ein gerichteter Graph ist zudem ein Graph, welcher Knoten und einzelne Knoten verbindende Kanten aufweist, wobei es sich bei den Kanten um gerichtete Kanten, das heißt Kanten, welche nur in eine Richtung durchlaufen werden können, handelt.
  • Dass jeder Knoten des gerichteten Graphen eine Teilmenge von einer der möglichen Architekturen symbolisiert, bedeutet dabei, dass jeder Knoten eine Teilmenge von wenigstens einer der möglichen Architekturen des künstlichen neuronalen Netzes symbolisiert, wobei jeder Knoten eine andere Teilmenge symbolisieren kann, und wobei die Teilmengen so auf die einzelnen Knoten des gerichteten Graphen verteilt sein können, dass insgesamt alle möglichen Architekturen des künstlichen neuronalen Netzes in dem gerichteten Graphen enthalten beziehungsweise dargestellt sind. Die Teilmengen umfassen beziehungsweise kennzeichnen dabei jeweils wenigstens eine Schicht der entsprechenden möglichen Architektur.
  • Unter Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen wird weiter ein Plan beziehungsweise eine Vorgabe verstanden, basierend auf welchem beziehungsweise welcher einzelne Knoten des gerichteten Graphens ausgewählt werden, um die Trajektorie zu erhalten.
  • Als Trajektorie wird dabei insbesondere ein zusammenhängender Pfad zwischen dem Anfangsknoten und einem der Endknoten bezeichnet.
  • Unter Belohnung beziehungsweise Reward wird weiter ein durch Auswerten der durch die entsprechende Trajektorie repräsentierten Architektur bestimmbarer Wert einer durch die entsprechende Architektur erreichbaren Verbesserung verstanden.
  • Unter Kostenfunktion beziehungsweise Loss wird ferner ein Verlust beziehungsweise ein Fehler zwischen einer basierend auf den, den Kanten entlang der Trajektorie zugeordneten Flüssen erwarteten Belohnung für die ermittelte Trajektorie und der bestimmten tatsächlichen Belohnung für die Trajektorie verstanden.
  • Unter Abbruchkriterium für die Architektursuche wird außerdem ein vorab festgelegtes Kriterium angegeben, wobei die Ermittlung der optimalen Architektur beendet wird, falls eine ermittelte Architektur beziehungsweise eine durch eine ermittelte Trajektorie repräsentierte Architektur das Abbruchkriterium erfüllt.
  • Dass die Architektur dabei durch die ermittelte Trajektorie repräsentiert wird bedeutet, dass die Architektur durch entsprechendes Verknüpfen der durch die Knoten entlang der ermittelten Trajektorie symbolisierten Teilmengen gebildet wird.
  • Dass erfindungsgemäße Verfahren unterscheidet sich von bekannten, gewöhnlichen Verfahren zur Ermittlung einer optimalen Architektur eines künstlichen neuronalen Netzes somit dadurch, dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden. Zudem unterscheidet sich das erfindungsgemäße Verfahren von bekannten, gewöhnlichen Verfahren zur Ermittlung einer optimalen Architektur eines künstlichen neuronalen Netzes dadurch, dass nicht beispielsweise Gradienten zur Bestimmung einer optimaleren Architektur geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden.
  • Dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden hat dabei den Vorteil, dass die Genauigkeit bei der Ermittlung der optimalen Architektur und insbesondere auch die Wahrscheinlichkeit dafür, dass die tatsächlich optimale Architektur gefunden werden kann, erhöht werden kann.
  • Dass nicht Gradienten geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden, hat zudem den Vorteil, dass dies beispielsweise weniger anfällig für Rauschen ist und insgesamt weniger Iterationen zur Ermittlung der optimalen Architektur erforderlich sind, wodurch zur Ermittlung der optimalen Architektur erforderliche Ressourcen, beispielsweise Speicher- und/oder Prozessorkapazitäten, eingespart werden können.
  • Insgesamt wird somit ein verbessertes Verfahren zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz angegeben.
  • Dabei kann die Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen derart festgelegt werden, dass diese für jeden Knoten des gerichteten Graphens eine Wahrscheinlichkeit dafür, dass die zu ermittelnde Trajektorie durch den entsprechenden Knoten des gerichteten Graphens läuft, angibt, wobei die Wahrscheinlichkeit jeweils proportional zu dem einer zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, und wobei die Trajektorie durch jeweiliges Auswählen der Kante mit der höchsten Wahrscheinlichkeit und/oder proportional zur Wahrscheinlichkeit ermittelt wird.
  • Dass die Wahrscheinlichkeit jeweils proportional zu dem einer zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, bedeutet dabei, dass die Wahrscheinlichkeit umso höher ist, je größer der der zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordnete Fluss ist.
  • Dass jeweils die Kante mit der höchsten Wahrscheinlichkeit ausgewählt wird, bedeutet ferner, dass die Trajektorie dadurch ermittelt wird, dass jeweils die von einem Knoten entlang der Trajektorie aus- beziehungsweise abgehende Kante mit dem höchsten Wahrscheinlichkeitswert beziehungsweise dem höchsten zugeordneten Fluss als Teil der Trajektorie ausgewählt wird
  • Alternativ kann beispielsweise die Kante proportional zur Wahrscheinlichkeit ausgewählt werden.
  • Somit kann die Strategie eine Wahrscheinlichkeitsverteilung wiedergeben beziehungsweise auf dieser basieren, so dass die Ermittlung der optimalen Architektur und insbesondere die Anpassung der Flüsse auf einfache Art und Weise durch im Zusammenhang mit künstlichen neuronalen Netzen bekannten Funktionen erfolgen kann, ohne dass aufwendige und ressourcenintensive Anpassungen vonnöten wären.
  • Dabei, dass die Strategie für jeden Knoten des gerichteten Graphens eine Wahrscheinlichkeit dafür, dass die zu ermittelnde Trajektorie durch den entsprechenden Knoten des gerichteten Graphens läuft, angibt, wobei die Wahrscheinlichkeit jeweils proportional zu dem einer zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, und wobei die Trajektorie durch jeweiliges Auswählen der Kante mit der höchsten Wahrscheinlichkeit ermittelt wird, handelt es sich jedoch nur um eine bevorzugte Ausführungsform. So kann die Strategie zusätzlich beispielsweise auch vorgeben, dass zu bestimmten Zeitpunkten auch von den vorgegebenen Wahrscheinlichkeiten abgewichen und anderen Kanten gefolgt werden kann, wodurch das Verfahren schneller konvergieren kann, insbesondere falls die initiale Zuordnung der Flüsse zu den Kanten zufällig erfolgt ist.
  • In einer Ausführungsform wird die Belohnung für die Trajektorie basierend auf Hardwaregegebenheiten wenigstens einer Zielkomponente bestimmt.
  • Unter Zielkomponente wird dabei ein Server oder Client, auf dem ein entsprechend trainiertes künstliches neuronales Netz anschließend angewendet wird, verstanden.
  • Unter Hardwaregegebenheiten der wenigstens einen Zielkomponente werden weiter Informationen über die, insbesondere zur Anwendung des künstlichen neuronalen Netzes zur Verfügung stehenden Ressourcen der wenigstens einen Zielkomponente, beispielsweise Speicher- und/oder Prozessorkapazitäten verstanden.
  • Somit werden Gegebenheiten der Datenverarbeitungsanlage, auf welcher das entsprechend trainierte künstliche neuronale Netz anschließend angewendet wird, bei der Ermittlung der optimalen Architektur des künstlichen neuronalen Netzes berücksichtigt.
  • Mit einer weiteren Ausführungsform der Erfindung wird auch ein Verfahren zum Trainieren eines künstlichen neuronalen Netzes angegeben, wobei das Verfahren ein Bereitstellen von Trainingsdaten zum Trainieren des künstlichen neuronalen Netzes, ein Bereitstellen einer optimalen Architektur für das künstliche neuronale Netz, wobei die optimale Architektur durch ein obenstehend beschriebenes Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes ermittelt wurde, und ein Trainieren des künstlichen neuronalen Netzes basierend auf den Trainingsdaten und der optimalen Architektur aufweist.
  • Somit wird ein Verfahren zum Trainieren eines künstlichen neuronalen Netzes angegeben, welches auf einer durch ein verbessertes Verfahren zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz ermittelten, optimalen Architektur basiert. Dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden hat dabei den Vorteil, dass die Genauigkeit bei der Ermittlung der optimalen Architektur und insbesondere auch die Wahrscheinlichkeit dafür, dass die tatsächlich optimale Architektur gefunden werden kann, erhöht werden kann. Dass nicht Gradienten geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden, hat zudem den Vorteil, dass dies beispielsweise weniger anfällig für Rauschen ist und insgesamt weniger Iterationen zur Ermittlung der optimalen Architektur erforderlich sind, wodurch zur Ermittlung der optimalen Architektur erforderliche Ressourcen, beispielsweise Speicher- und/oder Prozessorkapazitäten, eingespart werden können.
  • Die Trainingsdaten können dabei Sensordaten aufweisen.
  • Ein Sensor, welcher auch als Detektor, (Messgrößen- oder Mess-)Aufnehmer oder (Mess-) Fühler bezeichnet wird, ist ein technisches Bauteil, das bestimmte physikalische oder chemische Eigenschaften und/oder die stoffliche Beschaffenheit seiner Umgebung qualitativ oder als Messgröße quantitativ erfassen kann.
  • Somit können auf einfache Art und Weise Gegebenheiten außerhalb der eigentlichen Datenverarbeitungsanlage, auf welcher das Verfahren ausgeführt wird, erfasst und beim Trainieren des künstlichen neuronalen Netzes berücksichtigt werden.
  • Mit einer weiteren Ausführungsform der Erfindung wird weiter auch ein Verfahren zum Steuern eines steuerbaren Systems basierend auf einem künstlichen neuronalen Netz angegeben, wobei das Verfahren ein Bereitstellen eines künstlichen neuronalen Netzes, welches trainiert ist, dass steuerbare System zu steuern, wobei das künstliche neuronale Netz durch ein obenstehend beschriebenes Verfahren zum Trainieren eines künstlichen neuronalen Netzes trainiert wurde, und ein Steuern des steuerbaren Systems basierend auf dem bereitgestellten künstlichen neuronalen Netz aufweist.
  • Bei dem steuerbaren System kann es sich dabei insbesondere um ein Robotiksystem handeln, wobei es sich bei dem Robotiksystem beispielsweise um ein eingebettetes System eines Kraftfahrzeuges und/oder eine Kraftfahrzeugfunktion handeln kann.
  • Somit wird ein Verfahren zum Steuern eines steuerbaren Systems basierend auf einem künstlichen neuronalen Netz angegeben, wobei das künstliche neuronale Netz auf einer durch ein verbessertes Verfahren zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz ermittelten, optimalen Architektur basiert. Dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden hat dabei den Vorteil, dass die Genauigkeit bei der Ermittlung der optimalen Architektur und insbesondere auch die Wahrscheinlichkeit dafür, dass die tatsächlich optimale Architektur gefunden werden kann, erhöht werden kann. Dass nicht Gradienten geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden, hat zudem den Vorteil, dass dies beispielsweise weniger anfällig für Rauschen ist und insgesamt weniger Iterationen zur Ermittlung der optimalen Architektur erforderlich sind, wodurch zur Ermittlung der optimalen Architektur erforderliche Ressourcen, beispielsweise Speicher- und/oder Prozessorkapazitäten, eingespart werden können.
  • Mit einer weiteren Ausführungsform der Erfindung wird zudem auch System zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes angegeben, wobei das System eine Bereitstellungseinheit, welche ausgebildet ist, eine Menge an möglichen Architekturen des künstlichen neuronalen Netzes bereitzustellen, eine Abbildungseinheit, welche ausgebildet ist, die Menge an möglichen Architekturen des künstlichen neuronalen Netzes auf einen gerichteten Graphen abzubilden, wobei die Knoten des gerichteten Graphen jeweils eine Teilmenge von einer der möglichen Architekturen symbolisieren, wobei ein Anfangsknoten eine Eingabeschicht symbolisiert, wobei Endknoten des gerichteten Graphens jeweils eine, eine Ausgabeschicht aufweisende Teilmenge symbolisieren, und wobei die Kanten des gerichteten Graphens jeweils mögliche Verknüpfungen zwischen den Teilmengen symbolisieren, eine Zuordnungseinheit, welche ausgebildet ist, für jede Kante des gerichteten Graphens jeweils einen Fluss zu der entsprechenden Kante zuzuordnen, eine Festlegungseinheit, welche ausgebildet ist, eine Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen festzulegen, und eine Ermittlungseinheit, welche ausgebildet ist, die optimale Architektur des künstlichen neuronale Netzes zu ermitteln durch wiederholtes Ermitteln einer Trajektorie von dem Anfangsknoten zu einem Endknoten basierend auf der festgelegten Strategie, Bestimmen einer Belohnung für die ermittelte Trajektorie, Bestimmen einer Kostenfunktion für die ermittelte Trajektorie basierend auf der ermittelten Belohnung für die Trajektorie und der den Kanten entlang der Trajektorie zugeordneten Flüssen, und jeweiliges Aktualisieren der den Kanten entlang der Trajektorie zugeordneten Flüssen basierend auf der Kostenfunktion, wobei die Schritte des Ermittelns einer Trajektorie, des Bestimmens einer Belohnung, des Bestimmens einer Kostenfunktion und des Aktualisierens der Flüsse solange wiederholt werden, bis eine ermittelte Trajektorie eine Abbruchkriterium für die Architektursuche erfüllt, und wobei die Trajektorie, die das Abbruchkriterium erfüllt, die optimale Architektur repräsentiert, aufweist.
  • Somit wird ein verbessertes System zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz angegeben. Dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden hat dabei den Vorteil, dass die Genauigkeit bei der Ermittlung der optimalen Architektur und insbesondere auch die Wahrscheinlichkeit dafür, dass die tatsächlich optimale Architektur gefunden werden kann, erhöht werden kann. Dass nicht Gradienten geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden, hat zudem den Vorteil, dass dies beispielsweise weniger anfällig für Rauschen ist und insgesamt weniger Iterationen zur Ermittlung der optimalen Architektur erforderlich sind, wodurch zur Ermittlung der optimalen Architektur erforderliche Ressourcen, beispielsweise Speicher- und/oder Prozessorkapazitäten, eingespart werden können.
  • Dabei kann die Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen für jeden Knoten des gerichteten Graphens eine Wahrscheinlichkeit dafür, dass die zu ermittelnde Trajektorie durch den entsprechenden Knoten des gerichteten Graphens läuft, angeben, wobei die Wahrscheinlichkeit jeweils proportional zu dem einer zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, und wobei die Ermittlungseinheit ausgebildet ist, die Trajektorie durch jeweiliges Auswählen der Kante mit der höchsten Wahrscheinlichkeit zu ermitteln. Somit kann die Strategie eine Wahrscheinlichkeitsverteilung wiedergeben beziehungsweise auf dieser basieren, so dass die Ermittlung der optimalen Architektur und insbesondere die Anpassung der Flüsse auf einfache Art und Weise durch im Zusammenhang mit künstlichen neuronalen Netzen bekannten Funktionen erfolgen kann, ohne dass aufwendige und ressourcenintensive Anpassungen vonnöten wären.
  • Dabei, dass die Strategie für jeden Knoten des gerichteten Graphens eine Wahrscheinlichkeit dafür, dass die zu ermittelnde Trajektorie durch den entsprechenden Knoten des gerichteten Graphens läuft, angibt, wobei die Wahrscheinlichkeit jeweils proportional zu dem einer zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, und wobei die Ermittlungseinheit ausgebildet ist, die Trajektorie durch jeweiliges Auswählen der Kante mit der höchsten Wahrscheinlichkeit zu ermitteln, handelt es sich jedoch nur um eine bevorzugte Ausführungsform. So kann die Strategie zusätzlich beispielsweise auch vorgeben, dass zu bestimmten Zeitpunkten auch von den vorgegebenen Wahrscheinlichkeiten abgewichen und anderen Kanten gefolgt werden kann, wodurch das Verfahren schneller konvergieren kann, insbesondere falls die initiale Zuordnung der Flüsse zu den Kanten zufällig erfolgt ist.
  • In einer Ausführungsform ist die Ermittlungseinheit zudem ausgebildet, die Belohnung für die Trajektorie basierend auf Hardwaregegebenheiten wenigstens einer Zielkomponente zu bestimmen. Somit werden Gegebenheiten der Datenverarbeitungsanlage, auf welcher das entsprechend trainierte künstliche neuronale Netz anschließend angewendet wird, bei der Ermittlung der optimalen Architektur des künstlichen neuronalen Netzes berücksichtigt.
  • Mit einer weiteren Ausführungsform der Erfindung wird außerdem auch ein System zum Trainieren eines künstlichen neuronalen Netzes angegeben, wobei das System eine erste Bereitstellungseinheit, welche ausgebildet ist, Trainingsdaten zum Trainieren des künstlichen neuronalen Netzes bereitzustellen, eine zweite Bereitstellungseinheit, welche ausgebildet ist, eine optimale Architektur für das künstliche neuronale Netz bereitzustellen, wobei die optimale Architektur durch ein obenstehend beschriebenes System zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz ermittelt wurde, und eine Trainingseinheit, welche ausgebildet ist, das künstliche neuronale Netz basierend auf den Trainingsdaten und er optimalen Architektur zu trainieren, aufweist.
  • Somit wird ein System zum Trainieren eines künstlichen neuronalen Netzes angegeben, welches auf einer durch ein verbessertes System zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz ermittelten, optimalen Architektur basiert. Dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden hat dabei den Vorteil, dass die Genauigkeit bei der Ermittlung der optimalen Architektur und insbesondere auch die Wahrscheinlichkeit dafür, dass die tatsächlich optimale Architektur gefunden werden kann, erhöht werden kann. Dass nicht Gradienten geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden, hat zudem den Vorteil, dass dies beispielsweise weniger anfällig für Rauschen ist und insgesamt weniger Iterationen zur Ermittlung der optimalen Architektur erforderlich sind, wodurch zur Ermittlung der optimalen Architektur erforderliche Ressourcen, beispielsweise Speicher- und/oder Prozessorkapazitäten, eingespart werden können.
  • Die Trainingsdaten können dabei wiederum Sensordaten aufweisen. Somit können auf einfache Art und Weise Gegebenheiten außerhalb der eigentlichen Datenverarbeitungsanlage, auf welcher das Verfahren ausgeführt wird, erfasst und beim Trainieren des künstlichen neuronalen Netzes berücksichtigt werden.
  • Mit einer weiteren Ausführungsform der Erfindung wird außerdem auch ein System zum Steuern eines steuerbaren Systems basierend auf einem künstlichen neuronalen Netz angegeben, wobei das System eine Bereitstellungseinheit, welche ausgebildet ist, ein künstliches neuronales Netz, welches trainiert ist, dass steuerbare System zu steuern, wobei das künstliche neuronale Netz durch ein obenstehend beschriebenes System zum Trainieren eines künstlichen neuronalen Netzes trainiert wurde, und eine Steuereinheit, welche ausgebildet ist, das steuerbare System basierend auf dem bereitgestellten künstlichen neuronalen Netz zu steuern, aufweist.
  • Somit wird ein System zum Steuern eines steuerbaren Systems basierend auf einem künstlichen neuronalen Netz angegeben, wobei das künstliche neuronale Netz auf einer durch ein verbessertes System zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz ermittelten, optimalen Architektur basiert. Dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden hat dabei den Vorteil, dass die Genauigkeit bei der Ermittlung der optimalen Architektur und insbesondere auch die Wahrscheinlichkeit dafür, dass die tatsächlich optimale Architektur gefunden werden kann, erhöht werden kann. Dass nicht Gradienten geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden, hat zudem den Vorteil, dass dies beispielsweise weniger anfällig für Rauschen ist und insgesamt weniger Iterationen zur Ermittlung der optimalen Architektur erforderlich sind, wodurch zur Ermittlung der optimalen Architektur erforderliche Ressourcen, beispielsweise Speicher- und/oder Prozessorkapazitäten, eingespart werden können.
  • Mit einer weiteren Ausführungsform der Erfindung wird ferner auch ein Computerprogramm mit Programmcode, um ein obenstehend beschriebenes Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird, angegeben.
  • Mit einer weiteren Ausführungsform der Erfindung wird zudem auch ein computerlesbarer Datenträger mit Programmcode eines Computerprogramms um ein obenstehend beschriebenes Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird, angegeben.
  • Das Computerprogramm und der computerlesbare Datenträger haben dabei jeweils den Vorteil, dass diese ausgebildet sind, ein verbessertes Verfahren zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz auszuführen. Dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden hat dabei den Vorteil, dass die Genauigkeit bei der Ermittlung der optimalen Architektur und insbesondere auch die Wahrscheinlichkeit dafür, dass die tatsächlich optimale Architektur gefunden werden kann, erhöht werden kann. Dass nicht Gradienten geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden, hat zudem den Vorteil, dass dies beispielsweise weniger anfällig für Rauschen ist und insgesamt weniger Iterationen zur Ermittlung der optimalen Architektur erforderlich sind, wodurch zur Ermittlung der optimalen Architektur erforderliche Ressourcen, beispielsweise Speicher- und/oder Prozessorkapazitäten, eingespart werden können.
  • Zusammenfassend ist festzustellen, dass mit der vorliegenden Erfindung ein Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes angegeben wird, mit welchem Ressourcen bei der Ermittlung der optimalen Architektur eingespart werden können und mit welchem gleichzeitig auch die Genauigkeit bei der Ermittlung der optimalen Architektur erhöht werden kann.
  • Die beschriebenen Ausgestaltungen und Weiterbildungen lassen sich beliebig miteinander kombinieren.
  • Weitere mögliche Ausgestaltungen, Weiterbildungen und Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmalen der Erfindung.
  • Kurze Beschreibung der Zeichnungen
  • Die beiliegenden Zeichnungen sollen ein weiteres Verständnis der Ausführungsformen der Erfindung vermitteln. Sie veranschaulichen Ausführungsformen und dienen im Zusammenhang mit der Beschreibung der Erklärung von Prinzipien und Konzepten der Erfindung.
  • Andere Ausführungsformen und viele der genannten Vorteile ergeben sich im Hinblick auf die Zeichnungen. Die dargestellten Elemente der Zeichnungen sind nicht notwendigerweise maßstabsgetreu zueinander gezeigt.
  • Es zeigen:
    • 1 ein Flussdiagramm eines Verfahrens zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes gemäß Ausführungsformen der Erfindung; und
    • 2 ein schematisches Blockschaltbild eines Systems zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes gemäß Ausführungsformen der Erfindung.
  • In den Figuren der Zeichnungen bezeichnen gleiche Bezugszeichen gleiche oder funktionsgleiche Elemente, Bauteile oder Komponenten, soweit nichts Gegenteiliges angegeben ist.
  • 1 zeigt ein Flussdiagramm eines Verfahrens zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes 1 gemäß Ausführungsformen der Erfindung.
  • Unter Neural Architecture Search (NAS) wird allgemein ein Verfahren zur automatisierten Entwicklung einer optimalen Architektur künstlicher neuronaler Netzwerke für eine vorgegebene Problemstellung verstanden. Diese macht das aufwendige manuelle Design künstlicher neuronaler Netzwerke überflüssig und ist ein Teilbereich des automatisierten maschinellen Lernens.
  • Skalierbare Neural Architecture Search Verfahren sind dabei gradientenbasierte Verfahren. Dabei wird aus allen möglichen, in einem Suchraum enthaltenen Architekturen für das künstliche neuronale Netz ein Supergraph gebildet, wobei die einzelnen möglichen Architekturen Teilgraphen des Supergraphen sind. Die Knoten des Supergraphen symbolisieren dabei jeweils eine Teilmenge von einer der möglichen Architekturen, wobei ein Knoten jeweils insbesondere genau eine mögliche Schicht des künstlichen neuronalen Netzes symbolisieren kann, wobei ein Anfangsknoten eine Eingabeschicht des künstlichen neuronalen Netzes symbolisiert, wobei Endknoten des gerichteten Graphens jeweils eine Teilmenge von einer der möglichen Architekturen, welche eine Ausgabeschicht aufweist, symbolisieren, und wobei die Kanten mögliche Verknüpfungen zwischen den Teilmengen symbolisieren, wobei jeder Kante jeweils basierend auf einer Strategie für die Auswahl von Knoten ein Parameter zugeordnet ist. Weiter wird versucht, eine Architektur basierend auf dem Supergraphen zu finden, für welche eine Belohnung beziehungsweise ein Ertrag maximal ist, wobei ein Gradientenabstiegsverfahren zur Bestimmung der optimalen Architektur für das künstliche neuronale Netz verwendet wird.
  • 1 zeigt dabei ein Verfahren 1, welches einen Schritt 2 eines Bereitstellens einer Menge an möglichen Architekturen des künstlichen neuronalen Netzes, beziehungsweises eines entsprechenden Suchraumes, einen Schritt 3 eines Darstellens der Menge an möglichen Architekturen des künstlichen neuronalen Netzes in einem gerichteten Graphen, wobei die Knoten des gerichteten Graphen jeweils eine Teilmenge von einer der möglichen Architekturen symbolisieren, wobei ein Anfangsknoten eine Eingabeschicht symbolisiert, wobei Endknoten des gerichteten Graphens jeweils eine, eine Ausgabeschicht aufweisende Teilmenge symbolisieren, und wobei die Kanten des gerichteten Graphen mögliche Verknüpfungen zwischen den Teilmengen symbolisieren, einen Schritt 4 eines, für jede Kante des gerichteten Graphens, Zuordnens eines Flusses zu der entsprechenden Kante, einen Schritt 5 eines Festlegens einer Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen, und einen Schritt 6 eines Ermittelns der optimalen Architektur des künstlichen neuronale Netzes durch wiederholtes Ermitteln einer Trajektorie von dem Anfangsknoten zu einem Endknoten basierend auf der festgelegten Strategie 7, Bestimmen einer Belohnung für die ermittelte Trajektorie 8, Bestimmen einer Kostenfunktion für die ermittelte Trajektorie basierend auf der ermittelten Belohnung für die Trajektorie und der den Kanten entlang der Trajektorie zugeordneten Flüssen 9, und jeweiliges Aktualisieren der den Kanten entlang der Trajektorie zugeordneten Flüssen basierend auf der Kostenfunktion 10, aufweist, wobei in einem Schritt 11 überprüft wird, ob eine so ermittelte Trajektorie ein Abbruchkriterium für die Architektursuche erfüllt, wobei die Schritte des Ermittelns einer Trajektorie 7, des Bestimmens einer Belohnung 8, des Bestimmens einer Kostenfunktion 9 und des Aktualisierens der Flüsse wiederholt werden, bis eine ermittelte Trajektorie das Abbruchkriterium erfüllt, falls die so ermittelte Trajektorie das Abbruchkriterium nicht erfüllt, und wobei, falls in Schritt 11 ermittelt wird, dass die so ermittelte Trajektorie das Abbruchkriterium erfüllt, die Trajektorie, die das Abbruchkriterium erfüllt, die optimale Architektur repräsentiert, wobei die optimale Architektur in einem Schritt 12 ausgegeben und zum Trainieren des künstlichen neuronalen Netzes bereitgestellt wird.
  • Dass nicht die Belohnung selber optimiert wird, sondern potentielle Architekturen jeweils basierend auf den diesen Architekturen zugeordneten Belohnungen überprüft beziehungsweise abgefragt werden hat dabei den Vorteil, dass die Genauigkeit bei der Ermittlung der optimalen Architektur und insbesondere auch die Wahrscheinlichkeit dafür, dass die tatsächlich optimale Architektur gefunden werden kann, erhöht werden kann.
  • Dass nicht Gradienten geschätzt werden, sondern den einzelnen Kanten des gerichteten Graphens beziehungsweise Zuordnungen zwischen Teilmengen der möglichen Architekturen des künstlichen neuronalen Netzes zugeordnete Flüsse beziehungsweise Werte optimiert und an die tatsächlichen Gegebenheiten angepasst werden, hat zudem den Vorteil, dass dies beispielsweise weniger anfällig für Rauschen ist und insgesamt weniger Iterationen zur Ermittlung der optimalen Architektur erforderlich sind, wodurch zur Ermittlung der optimalen Architektur erforderliche Ressourcen, beispielsweise Speicher- und/oder Prozessorkapazitäten, eingespart werden können.
  • Insgesamt wird somit ein verbessertes Verfahren zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz 1 angegeben.
  • Insbesondere zeigt 1 dabei ein Verfahren 1, welches anstelle eines gradientenbasierten Ansatzes auf der Anwendung von Flussverfahren basiert.
  • Die Menge an möglichen Architekturen und somit auch der gerichtete Graph beziehungsweise Supergraph kann dabei auf gelabelten Trainingsdaten basieren, beispielsweise gelabelten Sensordaten zum Trainieren des künstlichen neuronalen Netzes.
  • Gemäß den Ausführungsformen der 1 symbolisiert ferner jeder Knoten in dem gerichteten Graphen genau eine mögliche Schicht des künstlichen neuronalen Netzes. Basierend auf dem dargestellten Verfahren 1 kann die Architektur dabei insbesondere sequentiell aufgebaut werden, das heißt jede Schicht einzeln ausgewählt werden, beziehungsweise jeweils einzeln bestimmt werden, welche Schicht zu welcher Zeit eingefügt werden soll. Hierzu können die Verknüpfungen des gerichteten Graphens insbesondere auf einem vorgegebenen Satz an Aktionen, welche die Auswahl einzelner Kanten des gerichteten Graphen betreffen, vorgegeben sein.
  • Der Schritt 8 des Bestimmens einer Belohnung für die ermittelte Trajektorie kann ferner beispielsweise wiederum dadurch erfolgen, dass die durch die ermittelte Trajektorie repräsentierte Architektur basierend auf den gelabelten Trainingsdaten trainiert wird, wobei die erhaltenen Ergebnisse anschließend validiert beziehungsweise im Hinblick auf die Performanz evaluiert werden.
  • Die Kostenfunktion in Schritt 9 kann zudem beispielsweise durch Bestimmen eines Flow Matching Objektives bestimmt werden. Ferner kann die Kostenfunktion aber beispielsweise auch durch Bestimmen einer Detailed Balance Objective and Backward Policy oder eines Trajectory Balance Objective bestimmt werden.
  • Der Schritt 10 des jeweiligen Aktualisierens der den Kanten entlang der Trajektorie zugeordneten Flüssen basierend auf der Kostenfunktion kann ferner ein Anwenden eines Backtracking-Algorithmus aufweisen.
  • Das Abbruchkriterium kann zudem derart gewählt werden, dass das Verfahren 1 mit Schritt 11 fortfährt, sobald eine für eine ermittelte Trajektorie ermittelte Belohnung innerhalb eines vorgegebenen Zielbereichs für die Belohnung liegt.
  • Die initialen Flusswerte können dabei ferner zufällig gewählt werden.
  • Ferner kann die Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen auf den Flusswerten basieren.
  • Gemäß den Ausführungsformen der 1 gibt die Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen für jeden Knoten des gerichteten Graphens dabei insbesondere eine Wahrscheinlichkeit dafür, dass die zu ermittelnde Trajektorie durch den entsprechenden Knoten des gerichteten Graphens läuft, an, wobei die Wahrscheinlichkeit jeweils proportional zu dem einer von einem zuvor ausgewählten Knoten zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, und wobei die Trajektorie durch jeweiliges Auswählen der Kante mit der höchsten Wahrscheinlichkeit und/oder proportional zur Wahrscheinlichkeit ermittelt wird.
  • Die Strategie gibt dabei zudem vor, dass zu bestimmten Zeitpunkten zusätzlich auch von den vorgegebenen Wahrscheinlichkeiten abgewichen und anderen Kanten gefolgt werden kann.
  • Gemäß den Ausführungsformen der 1 wird die Belohnung für die Trajektorie ferner auch basierend auf Hardwaregegebenheiten wenigstens einer Zielkomponente bestimmt. Beispielsweise können die Hardwareanforderungen dabei jeweils bei der Bestimmung der Performanz eines basierend auf der durch die Trajektorie repräsentierten Architektur und Trainingsdaten trainierten künstlichen neuronalen Netzes miteinfließen, wobei die Hardwareeigenschaften mit einem Gewichtungsfaktor versehen werden können, und wobei der Fokus umso mehr auf den Hardwareanforderungen liegt, je größer dieser Gewichtungsfaktor gewählt ist.
  • Eine durch das Verfahren 1 ermittelte optimale Architektur kann anschließend zum Trainieren eines entsprechenden künstlichen neuronalen Netzes basierend auf entsprechenden gelabelten Trainingsdaten herangezogen werden.
  • Insbesondere kann dabei ein künstliches neuronales Netz zum Steuern eines steuerbaren Systems trainiert und anschließend zum Steuern des steuerbaren Systems verwendet werden, wobei es sich bei dem steuerbaren System beispielsweise um eingebettetes System eines Kraftfahrzeuges oder Funktionen eines autonom fahrenden Kraftfahrzeuges handeln kann.
  • Ferner kann dabei aber auch ein künstliches neuronales Netz zum Klassifizieren von Bilddaten trainiert werden, insbesondere digitalen Bilddaten auf der Grundlage von Low-level-Merkmalen, beispielsweise Kanten oder Pixelattributen. Dabei kann weiter ein Bildverarbeitungsalgorithmus verwendet werden, um ein Klassifizierungsergebnis, welches sich auf entsprechende Low-level Merkmale konzentriert, zu analysieren.
  • 2 zeigt ein schematisches Blockschaltbild eines Systems zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes 20 gemäß Ausführungsformen der Erfindung.
  • Gemäß den Ausführungsformen der 2 weist das System 20 dabei eine Bereitstellungseinheit 21, welche ausgebildet ist, eine Menge an möglichen Architekturen des künstlichen neuronalen Netzes bereitzustellen, eine Abbildungseinheit 22, welche ausgebildet ist, die Menge an möglichen Architekturen des künstlichen neuronalen Netzes auf einen gerichteten Graphen abzubilden, wobei die Knoten des gerichteten Graphen jeweils eine Teilmenge von einer der möglichen Architekturen symbolisieren, wobei ein Anfangsknoten eine Eingabeschicht symbolisiert, wobei Endknoten des gerichteten Graphens jeweils eine, eine Ausgabeschicht aufweisende Teilmenge symbolisieren, und wobei die Kanten des gerichteten Graphen mögliche Verknüpfungen zwischen den Teilmengen symbolisieren, eine Zuordnungseinheit 23, welche ausgebildet ist, für jede Kante des gerichteten Graphens jeweils einen Fluss zu der entsprechenden Kante zuzuordnen, eine Festlegungseinheit 24, welche ausgebildet ist, eine Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen festzulegen, und eine Ermittlungseinheit 25, welche ausgebildet ist, die optimale Architektur des künstlichen neuronale Netzes zu ermitteln durch wiederholtes Ermitteln einer Trajektorie von dem Anfangsknoten zu einem Endknoten basierend auf der festgelegten Strategie, Bestimmen einer Belohnung für die ermittelte Trajektorie, Bestimmen einer Kostenfunktion für die ermittelte Trajektorie basierend auf der ermittelten Belohnung für die Trajektorie und der den Kanten entlang der Trajektorie zugeordneten Flüssen, und jeweiliges Aktualisieren der den Kanten entlang der Trajektorie zugeordneten Flüssen basierend auf der Kostenfunktion, wobei die Schritte des Ermittelns einer Trajektorie, des Bestimmens einer Belohnung, des Bestimmens einer Kostenfunktion und des Aktualisierens der Flüsse solange wiederholt werden, bis eine ermittelte Trajektorie eine Abbruchkriterium für die Architektursuche erfüllt, und wobei die Trajektorie, die das Abbruchkriterium erfüllt, die optimale Architektur repräsentiert, aufweist.
  • Bei der Bereitstellungseinheit kann es sich dabei insbesondere um einen Empfänger, welcher ausgebildet ist, entsprechende Daten zu empfangen, handeln. Die Abbildungseinheit, die Zuordnungseinheit, die Festlegungseinheit und die Ermittlungseinheit können ferner jeweils beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.
  • Dabei gibt die Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen für jeden Knoten des gerichteten Graphens wiederum eine Wahrscheinlichkeit dafür, dass die zu ermittelnde Trajektorie durch den entsprechenden Knoten des gerichteten Graphens läuft, an, wobei die Wahrscheinlichkeit jeweils proportional zu dem einer zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, und wobei die Ermittlungseinheit ausgebildet ist, die Trajektorie durch jeweiliges Auswählen der Kante mit der höchsten Wahrscheinlichkeit zu ermitteln.
  • Gemäß den Ausführungsformen der 2 ist die Ermittlungseinheit 25 zudem wiederum ausgebildet, die Belohnung für die Trajektorie basierend auf Hardwaregegebenheiten wenigstens einer Zielkomponente zu bestimmen.
  • Ferner kann das System 20 insbesondere ausgebildet sein, ein obenstehend beschriebenes Verfahren zur Ermittlung einer optimalen Architektur eines künstlichen neuronalen Netzes auszuführen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • DE 102019214625 A1 [0006]

Claims (14)

  1. Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes, wobei das Verfahren (1) folgende Schritte aufweist: - Bereitstellen einer Menge an möglichen Architekturen des künstlichen neuronalen Netzes (2); - Abbilden der Menge an möglichen Architekturen des künstlichen neuronalen Netzes auf einen gerichteten Graphen, wobei die Knoten des gerichteten Graphen jeweils eine Teilmenge von einer der möglichen Architekturen symbolisieren, wobei ein Anfangsknoten eine Eingabeschicht symbolisiert, wobei Endknoten des gerichteten Graphens jeweils eine, eine Ausgabeschicht aufweisende Teilmenge symbolisieren, und wobei die Kanten des gerichteten Graphens jeweils mögliche Verknüpfungen zwischen den Teilmengen symbolisieren (5); - Für jede Kante des gerichteten Graphens, Zuordnen eines Flusses zu der entsprechenden Kante (4); - Festlegen einer Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen (5); und - Ermitteln der optimalen Architektur des künstlichen neuronale Netzes (6) durch wiederholtes Ermitteln einer Trajektorie von dem Anfangsknoten zu einem Endknoten basierend auf der festgelegten Strategie (7), Bestimmen einer Belohnung für die ermittelte Trajektorie (8), Bestimmen einer Kostenfunktion für die ermittelte Trajektorie basierend auf der ermittelten Belohnung für die Trajektorie und der den Kanten entlang der Trajektorie zugeordneten Flüssen (9), und jeweiliges Aktualisieren der den Kanten entlang der Trajektorie zugeordneten Flüssen basierend auf der Kostenfunktion (10), wobei die Schritte des Ermittelns einer Trajektorie (7), des Bestimmens einer Belohnung (8), des Bestimmens einer Kostenfunktion (9) und des Aktualisierens der Flüsse (10) solange wiederholt werden, bis eine ermittelte Trajektorie eine Abbruchkriterium für die Architektursuche erfüllt, und wobei die Trajektorie, die das Abbruchkriterium erfüllt, die optimale Architektur repräsentiert.
  2. Verfahren nach Anspruch 1, wobei die Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen für jeden Knoten des gerichteten Graphens eine Wahrscheinlichkeit dafür, dass die zu ermittelnde Trajektorie durch den entsprechenden Knoten des gerichteten Graphens läuft, angibt, wobei die Wahrscheinlichkeit jeweils proportional zu dem einer zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, und wobei die Trajektorie durch jeweiliges Auswählen der Kante mit der höchsten Wahrscheinlichkeit und/oder proportional zur Wahrscheinlichkeit ermittelt wird.
  3. Verfahren nach Anspruch 1 oder 2, wobei die Belohnung für die ermittelte Trajektorie basierend auf Hardwaregegebenheiten wenigstens einer Zielkomponente bestimmt wird.
  4. Verfahren zum Trainieren eines künstlichen neuronalen Netzes, wobei das Verfahren folgende Schritte aufweist: - Bereitstellen von Trainingsdaten zum Trainieren des künstlichen neuronalen Netzes; - Bereitstellen einer optimalen Architektur für das künstliche neuronale Netz, wobei die optimale Architektur durch ein Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes nach einem der Ansprüche 1 bis 3 ermittelt wurde; und - Trainieren des künstlichen neuronalen Netzes basierend auf den Trainingsdaten und der optimalen Architektur.
  5. Verfahren nach Anspruch 4, wobei die Trainingsdaten Sensordaten aufweisen.
  6. Verfahren zum Steuern eines steuerbaren Systems basierend auf einem künstlichen neuronalen Netz, wobei das Verfahren folgende Schritte aufweist: - Bereitstellen eines künstlichen neuronalen Netzes, welches trainiert ist, dass steuerbare System zu steuern, wobei das künstliche neuronale Netz durch ein Verfahren zum Trainieren eines künstlichen neuronalen Netzes nach Anspruch 4 oder 5 trainiert wurde; und - Steuern des steuerbaren Systems basierend auf dem bereitgestellten künstlichen neuronalen Netz.
  7. System zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes, wobei das System (20) eine Bereitstellungseinheit (21), welche ausgebildet ist, eine Menge an möglichen Architekturen des künstlichen neuronalen Netzes bereitzustellen, eine Abbildungseinheit (22), welche ausgebildet ist, die Menge an möglichen Architekturen des künstlichen neuronalen Netzes auf einen gerichteten Graphen abzubilden, wobei die Knoten des gerichteten Graphen jeweils eine Teilmenge von einer der möglichen Architekturen symbolisieren, wobei ein Anfangsknoten eine Eingabeschicht symbolisiert, wobei Endknoten des gerichteten Graphens jeweils eine, eine Ausgabeschicht aufweisende Teilmenge symbolisieren, und wobei die Kanten des gerichteten Graphens jeweils mögliche Verknüpfungen zwischen den Teilmengen symbolisieren, eine Zuordnungseinheit (23), welche ausgebildet ist, für jede Kante des gerichteten Graphens jeweils einen Fluss zu der entsprechenden Kante zuzuordnen, eine Festlegungseinheit (24), welche ausgebildet ist, eine Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen festzulegen, und eine Ermittlungseinheit (25), welche ausgebildet ist, die optimale Architektur des künstlichen neuronale Netzes zu ermitteln durch wiederholtes Ermitteln einer Trajektorie von dem Anfangsknoten zu einem Endknoten basierend auf der festgelegten Strategie, Bestimmen einer Belohnung für die ermittelte Trajektorie, Bestimmen einer Kostenfunktion für die ermittelte Trajektorie basierend auf der ermittelten Belohnung für die Trajektorie und der den Kanten entlang der Trajektorie zugeordneten Flüssen, und jeweiliges Aktualisieren der den Kanten entlang der Trajektorie zugeordneten Flüssen basierend auf der Kostenfunktion, wobei die Schritte des Ermittelns einer Trajektorie, des Bestimmens einer Belohnung, des Bestimmens einer Kostenfunktion und des Aktualisierens der Flüsse solange wiederholt werden, bis eine ermittelte Trajektorie eine Abbruchkriterium für die Architektursuche erfüllt, und wobei die Trajektorie, die das Abbruchkriterium erfüllt, die optimale Architektur repräsentiert, aufweist.
  8. System nach Anspruch 7, wobei die Strategie für das Ermitteln einer optimalen Architektur basierend auf dem gerichteten Graphen für jeden Knoten des gerichteten Graphens eine Wahrscheinlichkeit dafür, dass die zu ermittelnde Trajektorie durch den entsprechenden Knoten des gerichteten Graphens läuft, angibt, wobei die Wahrscheinlichkeit jeweils proportional zu dem einer zu dem entsprechenden Knoten hinführenden Kante des gerichteten Graphens zugeordneten Flusses ist, und wobei die Ermittlungseinheit (25) ausgebildet ist, die Trajektorie durch jeweiliges Auswählen der Kante mit der höchsten Wahrscheinlichkeit zu ermitteln.
  9. System nach Anspruch 7 oder 8, wobei die Ermittlungseinheit (25) ausgebildet ist, die Belohnung für die Trajektorie basierend auf Hardwaregegebenheiten wenigstens einer Zielkomponente zu bestimmen.
  10. System zum Trainieren eines künstlichen neuronalen Netzes, wobei das System eine erste Bereitstellungseinheit, welche ausgebildet ist, Trainingsdaten zum Trainieren des künstlichen neuronalen Netzes bereitzustellen, eine zweite Bereitstellungseinheit, welche ausgebildet ist, eine optimalen Architektur für das künstliche neuronale Netz bereitzustellen, wobei die optimale Architektur durch ein System zum Ermitteln einer optimalen Architektur für ein künstliches neuronales Netz nach einem der Ansprüche 7 bis 9 ermittelt wurde, und eine Trainingseinheit, welche ausgebildet ist, das künstliche neuronale Netz basierend auf den Trainingsdaten und der optimalen Architektur zu trainieren, aufweist.
  11. System nach Anspruch 10, wobei die Trainingsdaten Sensordaten aufweisen.
  12. System zum Steuern eines steuerbaren Systems basierend auf einem künstlichen neuronalen Netz, wobei das System eine Bereitstellungseinheit, welche ausgebildet ist, ein künstliches neuronales Netz, welches trainiert ist, dass steuerbare System zu steuern, wobei das künstliche neuronale Netz durch ein System zum Trainieren eines künstlichen neuronalen Netzes nach Anspruch 10 oder 11 trainiert wurde, und eine Steuereinheit, welche ausgebildet ist, das steuerbare System basierend auf dem bereitgestellten künstlichen neuronalen Netz zu steuern, aufweist.
  13. Computerprogramm mit Programmcode, um ein Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes nach einem der Ansprüche 1 bis 3 auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.
  14. Computerlesbarer Datenträger mit Programmcode eines Computerprogramms, um ein Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes nach einem der Ansprüche 1 bis 3 auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.
DE102022207072.0A 2022-07-11 2022-07-11 Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes Pending DE102022207072A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102022207072.0A DE102022207072A1 (de) 2022-07-11 2022-07-11 Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes
US18/348,148 US20240013026A1 (en) 2022-07-11 2023-07-06 Method for ascertaining an optimal architecture of an artificial neural network
CN202310841187.7A CN117391215A (zh) 2022-07-11 2023-07-10 用于确定人工神经网络的最佳架构的方法
JP2023112838A JP2024009787A (ja) 2022-07-11 2023-07-10 人工ニューラルネットワークの最適なアーキテクチャを特定するための方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022207072.0A DE102022207072A1 (de) 2022-07-11 2022-07-11 Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes

Publications (1)

Publication Number Publication Date
DE102022207072A1 true DE102022207072A1 (de) 2024-01-11

Family

ID=89387079

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022207072.0A Pending DE102022207072A1 (de) 2022-07-11 2022-07-11 Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes

Country Status (4)

Country Link
US (1) US20240013026A1 (de)
JP (1) JP2024009787A (de)
CN (1) CN117391215A (de)
DE (1) DE102022207072A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019214625A1 (de) 2019-09-25 2021-03-25 Albert-Ludwigs-Universität Freiburg Verfahren, Vorrichtung und Computerprogramm zum Erstellen eines künstlichen neuronalen Netzes

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019214625A1 (de) 2019-09-25 2021-03-25 Albert-Ludwigs-Universität Freiburg Verfahren, Vorrichtung und Computerprogramm zum Erstellen eines künstlichen neuronalen Netzes

Also Published As

Publication number Publication date
US20240013026A1 (en) 2024-01-11
CN117391215A (zh) 2024-01-12
JP2024009787A (ja) 2024-01-23

Similar Documents

Publication Publication Date Title
DE102018109835A1 (de) Verfahren und Vorrichtung zum Ermitteln einer Netzkonfiguration eines neuronalen Netzes
DE102019124018A1 (de) Verfahren zum Optimieren von Tests von Regelsystemen für automatisierte Fahrdynamiksysteme
EP4193135A1 (de) Computerimplementiertes verfahren zum bereitstellen eines test-verlaufs zu testender verkehrsszenarien
DE102020120141A1 (de) Verfahren zum Optimieren von Tests von Regelsystemen für automatisierte Fahrdynamiksysteme mittels probabilistisch prädizierter Systemantworten
DE102018220941A1 (de) Auswertung von Messgrößen mit KI-Modulen unter Berücksichtigung von Messunsicherheiten
DE69802372T2 (de) Klassifizierungssystem und -verfahren mit N-Tuple- oder RAM-basiertem neuronalem Netzwerk
DE102022207072A1 (de) Verfahren zum Ermitteln einer optimalen Architektur eines künstlichen neuronalen Netzes
DE102017123205A1 (de) Konfiguration einer Kraftfahrzeug-Fahrerassistenzvorrichtung mit einem neuronalen Netzwerk im laufenden Betrieb
DE102022206892A1 (de) Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes
DE202022103792U1 (de) Vorrichtung zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes
DE102021207275A1 (de) Verfahren zum Erzeugen eines künstlichen neuronalen Netzes
WO2020193481A1 (de) Verfahren und vorrichtung für training und herstellung eines künstlichen neuronalen netzes
DE202021103700U1 (de) Vorrichtung zum Erzeugen eines künstlichen neuronalen Netzes
DE102022212902A1 (de) Verfahren zum Trainieren eines künstlichen neuronalen Netzes
DE202019103233U1 (de) Vorrichtung zum Einstellen eines Hyperparameters
DE102019131639B4 (de) System zum Bereitstellen eines Erklärungsdatensatzes für ein KI-Modul
DE202021101979U1 (de) Vorrichtung zum Trainieren eines neuronalen Netzes
DE102021207274A1 (de) Verfahren zum Trainieren eines neuronalen Netz-Ensembles
DE102021109169A1 (de) Verfahren zum Trainieren eines neuronalen Netzes
DE102018203137A1 (de) Verfahren, Vorrichtung und Computerprogramm zum Betreiben eines zumindest teilautonomen Fahrzeugs
DE102022209787A1 (de) Verfahren zum Trainieren eines Generative Adversarial Network
DE102022212455A1 (de) Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens
DE102022205715A1 (de) Verfahren zum Bereitstellen von Trainingsdaten und Testdaten zum Trainieren eines Algorithmus des maschinellen Lernens
DE102021210322A1 (de) Verfahren zum Erzeugen eines Datensatzes zum Trainieren und/oder Testen eines Algorithmus des maschinellen Lernens basierend auf einem Ensemble an Datenfiltern
DE102023201104A1 (de) Verfahren zum Erzeugen von zusätzlichen Trainingsdaten zum Trainieren eines Algorithmus des maschinellen Lernens