DE202021103700U1 - Device for generating an artificial neural network - Google Patents

Device for generating an artificial neural network Download PDF

Info

Publication number
DE202021103700U1
DE202021103700U1 DE202021103700.8U DE202021103700U DE202021103700U1 DE 202021103700 U1 DE202021103700 U1 DE 202021103700U1 DE 202021103700 U DE202021103700 U DE 202021103700U DE 202021103700 U1 DE202021103700 U1 DE 202021103700U1
Authority
DE
Germany
Prior art keywords
architecture
hyperparameter
artificial neural
neural network
pairs
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.)
Active
Application number
DE202021103700.8U
Other languages
German (de)
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.)
Albert Ludwigs Universitaet Freiburg Koerpers De
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Albert Ludwigs Universitaet Freiburg
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, Albert Ludwigs Universitaet Freiburg filed Critical Robert Bosch GmbH
Priority to DE202021103700.8U priority Critical patent/DE202021103700U1/en
Publication of DE202021103700U1 publication Critical patent/DE202021103700U1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

Vorrichtung zum Erzeugen eines künstlichen neuronalen Netzes, wobei die Vorrichtung ein maschinenlesbares Speichermedium umfasst, auf dem Befehle gespeichert sind, die beim Ausführen durch einen Computer bewirkten, dass der Computer ein Verfahren (1) mit folgenden Schritte ausführt:
- Für eine erste Anzahl an Paaren von je einer Architektur und einem Hyperparameter aus einer Menge an möglichen Architektur-Hyperparameter-Paaren, jeweils Trainieren eines künstlichen neuronalen Netzes basierend auf der entsprechenden Architektur, dem entsprechenden Hyperparameter und basierend auf Trainingsdaten (2);
- Für jedes Paar von einer Architektur und einem Hyperparameter der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, jeweils Evaluieren einer Performanz des entsprechenden künstlichen neuronalen Netzes (3);
- Auswählen eines weiteren Paares von einer Architektur und einem Hyperparameter aus der Menge an möglichen Architektur-Hyperparameter-Paaren, für welches bisher noch kein künstliches neuronales Netz trainiert wurde, und welches in Bezug auf die Performanz als optimaler als die basierend auf den Paaren von einer Architektur und einem Hyperparameter der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter trainierten künstlichen neuronalen Netze erscheint, basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, einem Kern für die Architektursuche und einem Kern für die Hyperparameteroptimierung (4); und
- Trainieren eines künstlichen neuronalen Netzes basierend auf der Architektur und dem Hyperparameter gemäß dem weiteren Paar von einer Architektur und einem Hyperparameter und den Trainingsdaten (5).

Figure DE202021103700U1_0000
Apparatus for generating an artificial neural network, the apparatus comprising a machine-readable storage medium on which instructions are stored which, when executed by a computer, cause the computer to carry out a method (1) with the following steps:
- For a first number of pairs of one architecture and one hyperparameter from a set of possible architecture-hyperparameter pairs, each training of an artificial neural network based on the corresponding architecture, the corresponding hyperparameter and based on training data (2);
- For each pair of one architecture and one hyperparameter of the first number of pairs of one architecture and one hyperparameter each, evaluating a performance of the corresponding artificial neural network (3);
- Selecting a further pair of an architecture and a hyperparameter from the set of possible architecture-hyperparameter pairs for which no artificial neural network has yet been trained and which is more optimal in terms of performance than that based on the pairs of one Architecture and a hyperparameter of the first number of pairs of one architecture and one hyperparameter trained artificial neural networks appear, based on the performances of the artificial neural networks of the first number of pairs of one architecture and one hyperparameter, one core for the architecture search and one Core for hyperparameter optimization (4); and
- Training an artificial neural network based on the architecture and the hyperparameter according to the further pair of an architecture and a hyperparameter and the training data (5).
Figure DE202021103700U1_0000

Description

Die Erfindung betrifft eine Vorrichtung zum Erzeugen eines künstlichen neuronalen Netzes, mit welchem ein künstliches neuronales Netz mit erhöhter Performanz erzeugt beziehungsweise trainiert werden kann und mit welchem gleichzeitig Computerressourcen beim Erzeugen beziehungsweise Trainieren des künstlichen neuronalen Netzes eingespart werden können.The invention relates to a device for generating an artificial neural network, with which an artificial neural network can be generated or trained with increased performance and with which at the same time computer resources can be saved when generating or training the artificial neural network.

Algorithmen zum maschinellen Lernen 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.Machine learning algorithms are based on the fact that statistical methods are used to train a data processing system in such a way that it can perform a specific task without it being originally programmed explicitly for this purpose. The goal of machine learning is to construct algorithms that can learn from data and make predictions. These algorithms create mathematical models that can be used, for example, to classify data.

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.An example of such machine learning algorithms are artificial neural networks. Such artificial neural networks are based on biological neurons and make it possible to learn an unknown system behavior from existing training data and then to apply the learned system behavior to unknown input variables. The neural network consists of layers with idealized neurons, which are connected to one another in different ways according to a topology of the network. The first layer, which is also referred to as the input layer, detects and transmits the input values, the number of neurons in the input layer corresponding to the number of input signals that are to be processed. The last layer is also referred to as the output layer and has as many neurons as the output values are to be provided. In addition, there is at least one intermediate layer between the input layer and the output layer, which is often also referred to as a hidden layer, the number of intermediate layers and the number and / or type of neurons in these layers depending on the specific task performed by the neuronal Network is to be solved is.

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.The development of the architecture of the artificial neural network, i.e. the determination of the appearance of the network or the number of layers in the network and the determination of the number and / or the type of neurons in the individual layers is usually very complex, in particular in terms of resource consumption. In order to optimize the development of the architecture, the Neural Architecture Search (NAS) was developed, which automatically develops optimal architectures for specific problems. The NAS algorithm initially compiles an architecture for the artificial neural network from various modules and configurations, which is then trained with a set of training data, and the results obtained are then evaluated with regard to performance. Based on this evaluation, a new architecture, which is likely to be more optimal with regard to performance, can then be determined, which is then in turn trained based on the training data, and the results obtained are then again evaluated with regard to performance. These steps can be repeated until no further improvement can be achieved by changing the architecture.

Einen weiteren Optimierungsansatz für neuronale Netze stellt die Hyperparameteroptimierung dar. Als Hyperparameter wird dabei ein Parameter bezeichnet, der zur Steuerung des Trainingsalgorithmus verwendet wird und dessen Wert im Gegensatz zu anderen Parametern vor dem eigentlichen Training des Modells festgelegt werden muss. Durch eine derartige Hyperparameteroptimierung kann die Genauigkeit des künstlichen neuronalen Netzes optimiert werden. Da derartige Hyperparameteroptimierungen jedoch wiederum sehr aufwendig sind, insbesondere im Hinblick auf den Ressourcenverbrauch, wurden wiederum Verfahren zur automatisierten Optimierung der Hyperparameter entwickelt. Dabei werden Trainingsprozess und Modellarchitektur als Black Box angesehen, die mit einer spezifischen Hyperparameter-Konfiguration ausgeführt wird und die resultierende Modellgenauigkeit ausgibt. Um die Anzahl der Trainingsdurchläufe zu minimieren, werden typischerweise stochastische Methoden verwendet, welche versuchen, gleichzeitig den Parameterraum zu erkunden und sich iterativ einem Optimum zu nähern.Another optimization approach for neural networks is hyperparameter optimization. Hyperparameter is a parameter that is used to control the training algorithm and whose value, in contrast to other parameters, must be determined before the actual training of the model. Such a hyperparameter optimization can optimize the accuracy of the artificial neural network. However, since hyperparameter optimizations of this type are again very complex, in particular with regard to the consumption of resources, methods for the automated optimization of the hyperparameters have again been developed. The training process and model architecture are viewed as a black box that is executed with a specific hyper-parameter configuration and outputs the resulting model accuracy. In order to minimize the number of training runs, stochastic methods are typically used, which try to explore the parameter space at the same time and to iteratively approach an optimum.

Insbesondere die Performance eines Deep Learning Netzwerkes hängt dabei sowohl von der gewählten Architektur als auch den entsprechenden Hyperparametern ab. Als nachteilig erweist sich hierbei jedoch, dass bei Verfahren zum Erzeugen beziehungsweise Optimieren von künstlichen neuronalen Netzen für gewöhnlich nicht gleichzeitig der NAS-Algorithmus und die Hyperparameteroptimierung in einem Verfahren berücksichtigt werden.In particular, the performance of a deep learning network depends on both the architecture selected and the corresponding hyperparameters. However, it has proven to be disadvantageous here that in methods for generating or optimizing artificial neural networks, the NAS algorithm and the hyperparameter optimization are usually not taken into account in one method at the same time.

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.From the pamphlet DE 10 2019 214 625 A1 a method for creating an artificial neural network is known. The method includes providing a plurality of different data sets, initializing a plurality of hyperparameters, learning the artificial neural network, and evaluating what has been learned artificial neural network, an optimization of the hyperparameters depending on the evaluation and a new learning of the artificial neural network using the optimized hyperparameters.

Der Erfindung liegt somit die Aufgabe zugrunde, ein verbessertes Verfahren zum Erzeugen eines künstlichen neuronalen Netzes anzugeben.The invention is therefore based on the object of specifying an improved method for generating an artificial neural network.

Diese Aufgabe wird mit einem Verfahren zum Erzeugen eines künstlichen neuronalen Netzes gemäß den Merkmalen des Patentanspruchs 1 gelöst.This object is achieved with a method for generating an artificial neural network according to the features of claim 1.

Weiter wird diese Aufgabe gelöst durch ein Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes mit den Merkmalen des Anspruchs 7.This object is also achieved by a control device for generating an artificial neural network with the features of claim 7.

Vorteilhafte Ausführungsformen und Weiterbildungen ergeben sich aus den Unteransprüchen sowie aus der Beschreibung unter Bezugnahme auf die Figuren.Advantageous embodiments and developments emerge from the subclaims and from the description with reference to the figures.

Offenbarung der ErfindungDisclosure of the invention

Gemäß einer Ausführungsform der Erfindung wird diese Aufgabe gelöst durch ein Verfahren zum Erzeugen eines künstlichen neuronalen Netzes, wobei, für eine erste Anzahl an Paaren von jeweils einer Architektur und einem Hyperparameteraus einer Menge an möglichen Architektur-Hyperparameter-Paaren, jeweils ein künstliches neuronales Netz basierend auf der entsprechenden Architektur, dem entsprechenden Hyperparameter und basierend auf Trainingsdaten trainiert wird, wobei, für jedes Paar der ersten Anzahl an Architektur-Hyperparameter-Paaren, jeweils eine Performanz des entsprechenden künstlichen neuronalen Netzes evaluiert wird, wobei basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Architektur-Hyperparameter-Paarem, einem Kern für die Architektursuche und einem Kern für die Hyperparameteroptimierung ein weiteres Paar von einer Architektur und einem Hyperparameter aus der Menge an möglichen Architektur-Hyperparameter-Paaren ausgewählt wird, für welche bisher noch kein künstliches neuronales Netz trainiert wurde, und welche in Bezug auf die Performanz als optimaler als die basierend auf den Paaren von jeweils einer Architektur und einem Hyperparameter der ersten Anzahl an Architektur-Hyperparameter-Paaren trainierten künstlichen neuronalen Netze erscheint, und wobei ein künstliches neuronales Netz basierend auf dem weiteren Paar von einer Architektur und einem Hyperparameter und den Trainingsdaten trainiert wird.According to one embodiment of the invention, this object is achieved by a method for generating an artificial neural network, wherein an artificial neural network is based in each case for a first number of pairs of one architecture and one hyperparameter from a set of possible architecture-hyperparameter pairs training is carried out on the corresponding architecture, the corresponding hyperparameter and based on training data, with a performance of the corresponding artificial neural network being evaluated for each pair of the first number of architecture-hyperparameter pairs, based on the performances of the artificial neural networks of the first number of architecture-hyperparameter pairs, a core for the architecture search and a core for the hyperparameter optimization, a further pair of an architecture and a hyperparameter is selected from the set of possible architecture-hyperparameter pairs for which bish he has not yet trained an artificial neural network, and which appears to be more optimal in terms of performance than the artificial neural networks trained based on the pairs of one architecture and a hyperparameter of the first number of architecture-hyperparameter pairs, and an artificial neural network neural network is trained based on the further pair of an architecture and a hyperparameter and the training data.

Unter Menge an möglichen Architektur-Hyperparameter-Parametern wird hierbei die Gesamtheit aller möglichen Kombinationen von je einer Architektur und einem Hyperparameter verstanden. Die erste Anzahl an Architektur-Hyperparameter-Paaren kann dabei größer oder gleich eins sein.The set of possible architecture hyperparameter parameters is understood here to mean the totality of all possible combinations of one architecture and one hyperparameter. The first number of architecture hyperparameter pairs can be greater than or equal to one.

Unter Performanz wird hierbei weiter die Leistungsfähigkeit des entsprechenden künstlichen neuronalen Netzes verstanden.In this context, performance is also understood to mean the performance of the corresponding artificial neural network.

Als Kern für die Architektursuche wird weiter ein mathematisches Maß verstanden, welches die Ähnlichkeit zwischen einzelnen Architekturen beschreibt. Dieser Kern kann dabei insbesondere dazu genutzt werden, um basierend auf bereits bekannten Architekturen und deren Performanz abzuschätzen, wie gut noch nicht evaluierte Architekturen sind.The core of the architecture search is also understood to be a mathematical measure that describes the similarity between individual architectures. This core can be used in particular to estimate, based on already known architectures and their performance, how good architectures that have not yet been evaluated are.

Als Kern für die Hyperparameteroptimierung wird zudem ein mathematisches Verfahren verstanden, welches die Ähnlichkeit zwischen zwei Hyperparametern beschreibt. Dieser Kern kann dabei insbesondere dazu genutzt werden, um basierend auf bereits bekannten Hyperparametern und deren Performanz abzuschätzen, wie gut noch nicht evaluierte Hyperparameter sind.A mathematical method that describes the similarity between two hyperparameters is also understood as the core of the hyperparameter optimization. This core can be used in particular to estimate, based on already known hyperparameters and their performance, how good hyperparameters that have not yet been evaluated are.

Insgesamt wird somit ein verbessertes Verfahren zum Erzeugen eines künstlichen neuronalen Netzes angegeben, bei welchem gleichzeitig der NAS-Algorithmus und die Hyperparameteroptimierung berücksichtigt wird. Folglich kann der Zeitraum bis hin zur Entwicklung des schlussendlich optimalen künstlichen neuronalen Netzes verkürzt werden und gleichzeitig der hierzu nötige Ressourcenverbrauch erheblich verringert werden, so dass das schlussendlich optimale künstliche neuronale Netz auch auf Steuergeräten mit vergleichsweise geringen Speicher- und Rechenkapazitäten entwickelt werden kann.Overall, an improved method for generating an artificial neural network is thus specified, in which the NAS algorithm and the hyperparameter optimization are taken into account at the same time. As a result, the period up to the development of the ultimately optimal artificial neural network can be shortened and, at the same time, the required resource consumption can be significantly reduced, so that the ultimately optimal artificial neural network can also be developed on control devices with comparatively low storage and computing capacities.

Das Verfahren kann dabei ferner beispielsweise so oft wiederholt ausgeführt werden, bis keine Verbesserung mehr durch Veränderungen der Architektur und/oder der Hyperparameter erzielbar ist.The method can furthermore be carried out repeatedly, for example, until no further improvement can be achieved through changes in the architecture and / or the hyperparameters.

Das Auswählen eines weiteren Paares von einer Architektur und einem Hyperparameter kann dabei zusätzlich auch basierend auf einem Vorhersagemodell erfolgen. Insbesondere kann dabei basierend auf bereits bekannten und evaluierten Architekturen und Hyperparametern ein probabilistisches Modell beziehungsweise ein Algorithmus des maschinellen Lernens trainiert werden, welcher ausgibt, wie gut noch nicht evaluierte Architekturen und Hyperparameter sind. Hierdurch kann der Ressourcenverbrauch bei der Auswahl des weiteren Paares von einer Architektur und einem Hyperparameter weiter verkleinert werden bei gleichzeitig hoher Genauigkeit bei der Auswahl des Weiteren, nützlichen Paares von einer Architektur und einem Hyperparameter.The selection of a further pair of an architecture and a hyperparameter can additionally also take place based on a prediction model. In particular, a probabilistic model or a machine learning algorithm can be trained based on already known and evaluated architectures and hyperparameters, which outputs how good architectures and hyperparameters that have not yet been evaluated are. As a result, the resource consumption in the selection of the further pair of an architecture and a hyperparameter can be further reduced while at the same time high accuracy in the selection of the further, useful pair of an architecture and a hyperparameter.

In einer Ausführungsform weist das Verfahren weiter ein Auswählen wenigstens einer Fidelity, welche zum Optimieren eines trainierten künstlichen neuronalen Netzes verwendet werden soll, aus einer Menge an Fidelitys beziehungsweise eines Wertes für die wenigstens eine Fidelity derart, dass beim Optimieren der Nutzen optimiert und gleichzeitig die Kosten minimiert werden, und ein Optimieren des trainierten künstlichen neuronalen Netzes basierend auf einem Algorithmus, welcher die wenigstens eine ausgewählte Fidelity nutzt, auf.In one embodiment, the method further comprises selecting at least one fidelity, which is to be used to optimize a trained artificial neural network, from a set of fidelities or a value for the at least one fidelity in such a way that optimizing the benefit and at the same time the costs are minimized, and an optimization of the trained artificial neural network based on an algorithm which uses the at least one selected fidelity.

Unter Fidelity werden hierbei Parameter beziehungsweise Prozesse verstanden, basierend auf welchen ein künstliches neuronales Netz mit geringen Computerressourcen schnell optimiert werden kann, wobei derartige Prozesse jedoch auch die Ungenauigkeit des künstlichen neuronalen Netzes beeinflussen. Bei einem trainierten künstlichen neuronalen Netz handelt es sich dabei insbesondere um ein, wie obenstehend angegeben, auf Basis eines Paares von einer Architektur und einem Hyperparameter aus der Menge an möglichen Architektur-Hyperparameter-Paaren trainiertem künstlichen neuronalen Netz, beispielsweise um ein in Hinblick auf die Performanz optimales künstliches neuronales Netz.In this context, fidelity is understood to mean parameters or processes on the basis of which an artificial neural network with low computer resources can be quickly optimized, but such processes also affect the inaccuracy of the artificial neural network. A trained artificial neural network is in particular an artificial neural network, as stated above, based on a pair of an architecture and a hyperparameter from the set of possible architecture-hyperparameter pairs, for example an artificial neural network with regard to the Performance optimal artificial neural network.

Bei dem Algorithmus, welcher die wenigstens eine Fidelity nutzt, handelt es sich ferner um einen Algorithmus, welcher mehrere Fidelity-Parameter nutzen kann, um das künstliche neuronale Netz weiter zu optimieren.The algorithm that uses the at least one fidelity is also an algorithm that can use several fidelity parameters in order to further optimize the artificial neural network.

Somit können auf das trainierte künstliche neuronale Netz mehrere Fidelity-Parameter gleichzeitig angewendet und die Vorteile der einzelnen Fidelitys gleichzeitig ausgenutzt werden und kann insbesondere der Ressourcenverbrauch beim Optimieren des künstlichen neuronalen Netzes weiter minimiert werden. Dabei können die einzelnen ausgenutzten Fidelitys insbesondere derart ausgewählt werden, dass die basierend auf den einzelnen Fidelitys jeweils erzielten kleinen Genauigkeiten in einer guten Genauigkeit des insgesamt optimierten künstlichen neuronalen Netzes resultieren, wobei Ungenauigkeiten kaum noch ins Gewicht fallen, bei gleichzeitig geringen Kosten beziehungsweise einem geringen Ressourcenverbrauch.Thus, several fidelity parameters can be applied simultaneously to the trained artificial neural network and the advantages of the individual fidelities can be exploited at the same time and, in particular, the consumption of resources when optimizing the artificial neural network can be further minimized. The individual fidelities used can be selected in such a way that the small accuracies achieved in each case based on the individual fidelities result in good accuracy of the overall optimized artificial neural network, with inaccuracies hardly being significant, with low costs or low resource consumption at the same time .

Dabei kann die Menge an Fidelitys eine Trainingszeitoptimierung, eine Optimierung einer sich immer wiederholenden Subkomponente und eine Architektursuche beziehungsweise Architekturoptimierung umfassen.The set of fidelitys can include a training time optimization, an optimization of a repetitive subcomponent and an architecture search or architecture optimization.

Unter Trainingszeitoptimierung wird hierbei verstanden, dass die Zeit beziehungsweise Epochen, während welcher das künstliche neuronale Netz trainiert wird, optimiert, insbesondere verkürzt wird, wodurch der Ressourcenverbrauch beim Trainieren des künstlichen neuronalen Netzes minimiert wird und gleichzeitig vergleichsweise schnell ein trainiertes künstliches neuronales Netz zur Verfügung steht.Training time optimization is understood here to mean that the time or epoch during which the artificial neural network is trained is optimized, in particular shortened, whereby the consumption of resources when training the artificial neural network is minimized and, at the same time, a trained artificial neural network is available comparatively quickly .

Unter einer sich wiederholenden Subkomponente wird hierbei eine Komponente beziehungsweise Zelle des künstlichen neuronalen Netzes verstanden, welche sich mehrmals wiederholt und welche insbesondere immer wieder verwendet werden kann. Die Subkomponente kann dabei beispielsweise mehrmals übereinander gestapelt werden um ein ganzes neuronales Netz zu ergeben. Dabei ist es einfacher, einzelne Komponenten beziehungsweise Zellen eines künstlichen neuronalen Netzes zu optimieren, als das komplette künstliche neuronale Netz. Zudem kann dies wiederum mit einem vergleichsweise geringen Ressourcenverbrauch erfolgen.A repeating subcomponent is understood here to be a component or cell of the artificial neural network which is repeated several times and which, in particular, can be used over and over again. The subcomponent can, for example, be stacked several times on top of one another to produce an entire neural network. It is easier to optimize individual components or cells of an artificial neural network than the entire artificial neural network. In addition, this can in turn be done with a comparatively low consumption of resources.

Insgesamt kann ein basierend auf einem Architektur-Hyperparameter-Paar trainiertes künstliches neuronales Netzes basierend auf einer oder mehreren Fidelitys weiter optimiert werden, wobei die einzelnen Fidelitys derart ausgewählt werden können, dass der Nutzen optimiert und gleichzeitig die Kosten minimiert werden, und wobei es sich bei einer angewendeten Fidelity auch um eine Architektursuche beziehungsweise Architekturoptimierung, das heißt dem Auswählen beziehungsweise dem Ermitteln einer für die Performanz optimaleren Architektur handeln kann.Overall, an artificial neural network trained on the basis of an architecture hyperparameter pair can be further optimized based on one or more fidelities, wherein the individual fidelities can be selected in such a way that the benefits are optimized and at the same time the costs are minimized, and with an applied fidelity can also be about an architecture search or architecture optimization, i.e. the selection or determination of an architecture that is more optimal for the performance.

Dabei, dass die Menge an Fidelitys eine Trainingszeitoptimierung, eine Optimierung einer sich wiederholenden Subkomponente und eine Architektursuche umfasst, handelt es sich jedoch nur um eine beispielhafte Ausführungsform. Vielmehr kann die Menge an Fidelitys auch andere Fidelity-Parameter beziehungsweise Prozesse umfassen.The fact that the set of fidelitys comprises a training time optimization, an optimization of a repeating subcomponent and an architecture search is only an exemplary embodiment, however. Rather, the set of fidelitys can also include other fidelity parameters or processes.

Die Trainingsdaten können ferner Sensordaten aufweisen, so dass auch Gegebenheiten außerhalb einer die entsprechenden Trainingsprozesse ausführenden Datenverarbeitungsanlage berücksichtigt werden. Bei den Sensoren kann es sich dabei insbesondere um in ein autonom fahrendes Kraftfahrzeug integrierte Sensoren handeln und/oder um an einem autonom fahrenden Kraftfahrzeug angebrachte Sensoren.The training data can also have sensor data, so that conditions outside of a data processing system executing the corresponding training processes are also taken into account. The sensors can in particular be sensors integrated in an autonomously driving motor vehicle and / or sensors attached to an autonomously driving motor vehicle.

Mit einer weiteren Ausführungsform der Erfindung wird ferner auch ein Verfahren zum Klassifizieren von Bilddaten angegeben, wobei Bilddaten unter Verwendung eines künstlichen neuronalen Netzes klassifiziert werden, und wobei das künstliche neuronale Netz unter Verwendung eines obenstehend beschriebenen Verfahrens erzeugt wurde.A further embodiment of the invention also specifies a method for classifying image data, with image data being classified using an artificial neural network, and with the artificial neural network being generated using a method described above.

Insbesondere kann das Verfahren dabei verwendet werden, um Bilddaten, insbesondere digitale Bilddaten auf der Grundlage von Low-level-Merkmalen, beispielsweise Kanten oder Pixelattributen, zu klassifizieren. Dabei kann weiter ein Bildverarbeitungsalgorithmus verwendet werden, um ein Klassifizierungsergebnis, welches sich auf entsprechende Low-Ievel Merkmale konzentriert, zu analysieren.In particular, the method can be used to convert image data, in particular digital image data on the basis of low-level To classify features such as edges or pixel attributes. An image processing algorithm can also be used to analyze a classification result that focuses on corresponding low-level features.

Insgesamt wird somit ein Verfahren zum Klassifizieren von Bilddaten angegeben, welches auf einem verbesserten Verfahren zum Erzeugen eines künstlichen neuronalen Netzes basiert, bei welchem gleichzeitig der NAS-Algorithmus und die Hyperparameteroptimierung berücksichtigt wird. Folglich kann der Zeitraum bis hin zur Entwicklung des schlussendlich optimalen künstlichen neuronalen Netzes verkürzt werden und der hierzu nötige Ressourcenverbrauch erheblich verringert werden, so dass das schlussendlich optimale künstliche neuronale Netz auch auf Steuergeräten mit vergleichsweise geringen Speicher- und Rechenkapazitäten entwickelt werden kann.Overall, a method for classifying image data is thus specified, which is based on an improved method for generating an artificial neural network, in which the NAS algorithm and the hyperparameter optimization are taken into account at the same time. As a result, the period up to the development of the ultimately optimal artificial neural network can be shortened and the resource consumption required for this can be reduced considerably, so that the ultimately optimal artificial neural network can also be developed on control units with comparatively low storage and computing capacities.

Mit einer weiteren Ausführungsform der Erfindung wird weiter auch ein Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes angegeben, wobei das Steuergerät eine erste Trainingseinheit, welche ausgebildet ist, für eine erste Anzahl an Paaren von je einer Architektur und einem Hyperparameter aus einer Menge an möglichen Architektur-Hyperparameter-Paaren jeweils ein künstliches neuronales Netz basierend auf der entsprechenden Architektur, dem entsprechenden Hyperparameter und Trainingsdaten zu trainieren, eine Evaluierungseinheit, welche ausgebildet ist, für jedes Paar von je einer Architektur und einem Hyperparameter der ersten Anzahl an Architektur-Hyperparameter-Paaren, jeweils eine Performanz des entsprechenden künstlichen neuronalen Netzes zu evaluieren, eine Auswahleinheit, welche ausgebildet ist, ein weiteres Paar von einer Architektur und einem Hyperparameter aus der Menge an möglichen Architektur-Hyperparameter-Paaren, für welche bisher noch kein künstliches neuronales Netz trainiert wurde, und welche in Bezug auf die Performanz als optimaler als die basierend auf den Architektur-Hyperparameter-Paaren der ersten Anzahl an Architektur-Hyperparameter-Paaren trainierten künstlichen neuronalen Netze erscheint, basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Architektur-Hyperparameter-Paaren, einem Kern für die Architektursuche und einem Kern für die Hyperparameteroptimierung auszuwählen, und eine zweite Trainingseinheit, welche ausgebildet ist, ein künstliches neuronales Netz basierend auf dem weiteren Paar von einer Architektur und einem Hyperparameter und den Trainingsdaten zu trainieren, aufweist.A further embodiment of the invention also specifies a control device for generating an artificial neural network, the control device having a first training unit which is designed for a first number of pairs of an architecture and a hyperparameter from a set of possible architecture Hyperparameter pairs each train an artificial neural network based on the corresponding architecture, the corresponding hyperparameter and training data, an evaluation unit which is designed for each pair of one architecture and one hyperparameter of the first number of architecture-hyperparameter pairs, respectively to evaluate a performance of the corresponding artificial neural network, a selection unit which is designed, a further pair of an architecture and a hyperparameter from the set of possible architecture-hyperparameter pairs for which no artificial neural Ne tz was trained, and which appears to be more optimal in terms of performance than the artificial neural networks trained based on the architecture-hyperparameter pairs of the first number of architecture-hyperparameter pairs, based on the performances of the artificial neural networks of the first number Select architecture-hyperparameter pairs, a core for the architecture search and a core for the hyperparameter optimization, and a second training unit which is designed to train an artificial neural network based on the further pair of an architecture and a hyperparameter and the training data .

Insgesamt wird somit ein verbessertes Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes angegeben, welches ausgebildet ist, gleichzeitig den NAS-Algorithmus und die Hyperparameteroptimierung zu berücksichtigen. Folglich kann der Zeitraum bis hin zur Entwicklung des schlussendlich optimalen künstlichen neuronalen Netzes verkürzt werden und gleichzeitig der hierzu nötige Ressourcenverbrauch erheblich verringert werden, so dass es sich bei dem Steuergerät auch um ein Steuergerät mit vergleichsweise geringen Speicher- und Rechenkapazitäten handeln kann.Overall, an improved control device for generating an artificial neural network is thus specified, which is designed to take into account the NAS algorithm and the hyperparameter optimization at the same time. As a result, the period up to the development of the ultimately optimal artificial neural network can be shortened and, at the same time, the resource consumption required for this can be reduced considerably, so that the control device can also be a control device with comparatively low storage and computing capacities.

Das Steuergerät kann dabei wiederum derart ausgebildet sein, dass die entsprechende Optimierung derart oft wiederholt wird, bis keine Verbesserung mehr durch Veränderungen der Architektur und/oder der Hyperparameter erzielbar ist.The control device can in turn be designed in such a way that the corresponding optimization is repeated so often until no further improvement can be achieved through changes in the architecture and / or the hyperparameters.

Weiter kann die die Auswahleinheit ausgebildet sein, die weitere Architektur basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Architekturen, einem Kern für die Architektursuche, einem Kern für die Hyperparameteroptimierung unter Verwendung eines Vorhersagemodells auszuwählen. Hierdurch kann der Ressourcenverbrauch bei der Auswahl des weiteren Paares von einer Architektur und einem Hyperparameter weiter verkleinert werden bei gleichzeitig hoher Genauigkeit bei der Auswahl des Weiteren, nützlichen Paares von einer Architektur und einem Hyperparameter.Furthermore, the selection unit can be designed to select the further architecture based on the performances of the artificial neural networks of the first number of architectures, a core for the architecture search, a core for the hyperparameter optimization using a prediction model. As a result, the resource consumption in the selection of the further pair of an architecture and a hyperparameter can be further reduced while at the same time high accuracy in the selection of the further, useful pair of an architecture and a hyperparameter.

In einer Ausführungsform weist das Steuergerät weiter eine zweite Auswahleinheit, welche ausgebildet ist, wenigstens eine Fidelity, welche zum Optimieren eines trainierten künstlichen neuronalen Netzes verwendet werden soll, aus einer Menge an Fidelitys beziehungsweise eines Wertes für die wenigstens eine Fidelity derart auszuwählen, dass beim beziehungsweise während der Optimierung der Nutzen optimiert und gleichzeitig die Kosten minimiert werden, und eine Optimierungseinheit, welche ausgebildet ist, das trainierte künstliche neuronale Netz basierend auf einem Algorithmus, welcher die wenigstens eine ausgewählten Fidelity nutzt, zu optimieren.In one embodiment, the control device furthermore has a second selection unit which is designed to select at least one fidelity, which is to be used to optimize a trained artificial neural network, from a set of fidelities or a value for the at least one fidelity in such a way that at or during the optimization the benefits are optimized and at the same time the costs are minimized, and an optimization unit which is designed to optimize the trained artificial neural network based on an algorithm which uses the at least one selected fidelity.

Das Steuergerät kann zudem auch derart ausgebildet sein, dass ein basierend auf einem Architektur-Hyperparameter-Paar trainiertes künstliches neuronales Netz basierend auf einer oder mehreren Fidelitys weiter optimiert werden kann, wobei die einzelnen Fidelitys derart ausgewählt werden können, dass der Nutzen optimiert und gleichzeitig die Kosten minimiert werden.The control device can also be designed in such a way that an artificial neural network trained based on an architecture hyperparameter pair can be further optimized based on one or more fidelities, the individual fidelities being able to be selected in such a way that the benefit is optimized and at the same time the Costs are minimized.

Die Menge an Fidelitys kann dabei wiederum eine Trainingszeitoptimierung, eine Optimierung einer sich immer wiederholenden Subkomponente und eine Architektursuche beziehungsweise Architekturoptimierung umfassen.The amount of fidelity can in turn be an optimization of the training time, an optimization of one itself repeating subcomponents and an architecture search or architecture optimization.

Dabei, dass die Menge an Fidelitys eine Trainingszeitoptimierung, eine Optimierung einer sich wiederholenden Subkomponente und eine Architektursuche umfasst, handelt es sich jedoch nur um eine beispielhafte Ausführungsform. Vielmehr kann die Menge an Fidelitys auch andere Fidelity-Parameter beziehungsweise Prozesse umfassen.The fact that the set of fidelitys comprises a training time optimization, an optimization of a repeating subcomponent and an architecture search is only an exemplary embodiment, however. Rather, the set of fidelitys can also include other fidelity parameters or processes.

Auch können die die Trainingsdaten wiederum Sensordaten aufweisen, so dass auch Gegebenheiten außerhalb des Steuergerätes berücksichtigt werden. Bei den Sensoren kann es sich dabei insbesondere um in ein autonom fahrendes Kraftfahrzeug integrierte Sensoren handeln und/oder um an einem autonom fahrenden Kraftfahrzeug angebrachte Sensoren.The training data can also have sensor data, so that conditions outside the control device are also taken into account. The sensors can in particular be sensors integrated in an autonomously driving motor vehicle and / or sensors attached to an autonomously driving motor vehicle.

Mit einer weiteren Ausführungsform der Erfindung wird zudem auch ein Steuergerät zum Klassifizieren von Bilddaten angegeben, wobei das Steuergerät eine Empfangseinheit, welche ausgebildet ist, ein durch ein obenstehend beschriebenes Steuergerät bereitgestelltes künstliches neuronales Netz zu empfangen, und eine Steuereinheit, welche ausgebildet ist, Bilddaten basierend auf dem künstlichen neuronalen Netz zu klassifizieren, aufweist.A further embodiment of the invention also specifies a control device for classifying image data, the control device having a receiving unit which is designed to receive an artificial neural network provided by a control device described above, and a control unit which is designed to be based on image data to classify on the artificial neural network.

Somit wird ein verbessertes Steuergerät zum Klassifizieren von Bilddaten angegeben, welches auf einem verbesserten Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes basiert, welches ausgebildet ist, gleichzeitig den NAS-Algorithmus und die Hyperparameteroptimierung zu berücksichtigen. Folglich kann der Zeitraum bis hin zur Entwicklung des schlussendlich optimalen künstlichen neuronalen Netzes verkürzt werden und gleichzeitig der hierzu nötige Ressourcenverbrauch erheblich verringert werden, so dass das schlussendlich optimale künstliche neuronale Netz auch auf Steuergeräten mit vergleichsweise geringen Speicher- und Rechenkapazitäten entwickelt werden kann.Thus, an improved control device for classifying image data is specified, which is based on an improved control device for generating an artificial neural network, which is designed to take into account the NAS algorithm and the hyperparameter optimization at the same time. As a result, the period up to the development of the ultimately optimal artificial neural network can be shortened and, at the same time, the required resource consumption can be significantly reduced, so that the ultimately optimal artificial neural network can also be developed on control devices with comparatively low storage and computing capacities.

Mit einer weiteren Ausführungsform der Erfindung wird außerdem auch ein System zum Klassifizieren von Bilddaten angegeben, wobei das System ein obenstehend beschriebenes Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes und ein obenstehend beschriebenes Steuergerät zum Klassifizieren von Bilddaten aufweist, wobei das Steuergerät zum Klassifizieren von Bilddaten ausgebildet ist, Bilddaten basierend auf einem durch das Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes erzeugten künstlichen neuronalen Netz zu klassifizieren.A further embodiment of the invention also specifies a system for classifying image data, the system having a control device as described above for generating an artificial neural network and a control device as described above for classifying image data, the control device being designed to classify image data To classify image data based on an artificial neural network generated by the control device for generating an artificial neural network.

Somit wird ein verbessertes System zum Klassifizieren von Bilddaten angegeben, welches ein verbessertes Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes aufweist, welches ausgebildet ist, gleichzeitig den NAS-Algorithmus und die Hyperparameteroptimierung zu berücksichtigen. Folglich kann der Zeitraum bis hin zur Entwicklung des schlussendlich optimalen künstlichen neuronalen Netzes verkürzt werden und gleichzeitig der hierzu nötige Ressourcenverbrauch erheblich verringert werden, so dass das schlussendlich optimale künstliche neuronale Netz auch auf Steuergeräten mit vergleichsweise geringen Speicher- und Rechenkapazitäten entwickelt werden kann.Thus, an improved system for classifying image data is specified, which has an improved control device for generating an artificial neural network which is designed to take into account the NAS algorithm and the hyperparameter optimization at the same time. As a result, the period up to the development of the ultimately optimal artificial neural network can be shortened and, at the same time, the required resource consumption can be significantly reduced, so that the ultimately optimal artificial neural network can also be developed on control devices with comparatively low storage and computing capacities.

Mit einer weiteren Ausführungsform der Erfindung wird ferner auch ein Kraftfahrzeug angegeben, welches ein derartiges verbessertes System aufweist.A further embodiment of the invention also specifies a motor vehicle which has such an improved system.

Somit wird ein Kraftfahrzeug mit einem verbesserten System zum Klassifizieren von Bilddaten angegeben, welches ein verbessertes Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes aufweist, das ausgebildet ist, gleichzeitig den NAS-Algorithmus und die Hyperparameteroptimierung zu berücksichtigen. Folglich kann der Zeitraum bis hin zur Entwicklung des schlussendlich optimalen künstlichen neuronalen Netzes verkürzt werden und gleichzeitig der hierzu nötige Ressourcenverbrauch erheblich verringert werden, so dass das schlussendlich optimale künstliche neuronale Netz auch auf Steuergeräten mit vergleichsweise geringen Speicher- und Rechenkapazitäten entwickelt werden kann.Thus, a motor vehicle with an improved system for classifying image data is specified, which has an improved control device for generating an artificial neural network which is designed to take into account the NAS algorithm and the hyperparameter optimization at the same time. As a result, the period up to the development of the ultimately optimal artificial neural network can be shortened and, at the same time, the required resource consumption can be significantly reduced, so that the ultimately optimal artificial neural network can also be developed on control devices with comparatively low storage and computing capacities.

Bei dem Kraftfahrzeug kann es sich dabei insbesondere um ein autonom fahrendes Kraftfahrzeug handeln, wobei beispielsweise Helligkeitsbeziehungsweise Farbinformationen über Fahrzeugleuchten von sich in einer Umgebung des autonom fahrenden Kraftfahrzeuges befindlichen weiteren Kraftfahrzeugen erfasst werden, die erfassten Informationen unter Verwendung eines basierend auf während zurückliegender Fahrten mit dem autonom fahrenden Kraftfahrzeug gesammelten Helligkeits- beziehungsweise Farbinformationen über Fahrzeugleuchten von weiteren Kraftfahrzeugen trainierten künstlichen neuronalen Netzes ausgewertet werden und basierend auf der Auswertung entsprechende Aktionen, beispielsweise sicherheitsgerichtete Aktionen initiiert werden können.The motor vehicle can in particular be an autonomously driving motor vehicle, with for example brightness or color information about vehicle lights of other motor vehicles in the vicinity of the autonomously driving motor vehicle being recorded, the recorded information using a based on during previous trips with the autonomous When the motor vehicle is moving, the brightness or color information collected via vehicle lights from other motor vehicles can be evaluated using an artificial neural network trained and, based on the evaluation, appropriate actions, for example safety-related actions, can be initiated.

Zusammenfassend ist festzustellen, dass mit der vorliegenden Erfindung ein verbessertes Verfahren zum Erzeugen eines künstlichen neuronalen Netzes angegeben wird.In summary, it can be stated that the present invention provides an improved method for generating an artificial neural network.

Die beschriebenen Ausgestaltungen und Weiterbildungen lassen sich beliebig miteinander kombinieren.The refinements and developments described can be combined with one another as desired.

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 Merkmale der Erfindung.Further possible refinements, developments and implementations of the invention also include combinations not explicitly mentioned above or below with regard to FIG Embodiments described features of the invention.

FigurenlisteFigure list

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.The accompanying drawings are intended to provide a further understanding of the embodiments of the invention. They illustrate embodiments and, in conjunction with the description, serve to explain principles and concepts of the invention.

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.Other embodiments and many of the advantages mentioned emerge with a view to the drawings. The elements shown in the drawings are not necessarily shown true to scale with respect to one another.

Es zeigen:

  • 1 ein Flussdiagramm eines Verfahrens zum Erzeugen eines künstlichen neuronalen Netzes gemäß Ausführungsformen der Erfindung; und
  • 2 ein Blockschaltbild eines Systems zum Klassifizieren von Bilddaten gemäß Ausführungsformen der Erfindung.
Show it:
  • 1 a flow diagram of a method for generating an artificial neural network according to embodiments of the invention; and
  • 2 a block diagram of a system for classifying image data according to embodiments of the invention.

In den Figuren der Zeichnungen bezeichnen gleiche Bezugszeichen gleiche oder funktionsgleiche Elemente, Bauteile oder Komponenten, soweit nichts Gegenteiliges angegeben ist.In the figures of the drawings, the same reference symbols denote the same or functionally identical elements, parts or components, unless stated otherwise.

1 zeigt ein Flussdiagramm eines Verfahrens 1 zum Erzeugen eines künstlichen neuronalen Netzes gemäß Ausführungsformen der Erfindung 1 shows a flow diagram of a method 1 for generating an artificial neural network according to embodiments of the invention

Algorithmen zum maschinellen Lernen 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.Machine learning algorithms are based on the fact that statistical methods are used to train a data processing system in such a way that it can perform a specific task without it being originally programmed explicitly for this purpose. The goal of machine learning is to construct algorithms that can learn from data and make predictions. These algorithms create mathematical models that can be used, for example, to classify data.

Ein Beispiel für derartige Algorithmen des maschinellen Lernens sind künstliche neuronale Netze. Ein künstliches neuronales Netz ist in der Lage, Korrelationen zwischen Eingangsgrößen und Ausgangsgrößen auch bei Vorliegen von Nichtlinearitäten verbessert zu modellieren und gleichzeitig den notwenigen Rechenaufwand gering zu halten. Zudem muss im System selber kein besonderes Modellwissen vorhanden sein und kann trotzdem eine zuverlässige Bestimmung der Ausgangsgröße erfolgen, da sämtliche Korrelationen im Rahmen einer Trainingsphase angelernt werden können.An example of such machine learning algorithms are artificial neural networks. An artificial neural network is able to model correlations between input variables and output variables in an improved manner, even when nonlinearities are present, and at the same time to keep the necessary computational effort low. In addition, no special model knowledge has to be present in the system itself and the output variable can still be reliably determined, since all correlations can be learned in the course of a training phase.

Ein derartiges künstliches neuronales Netz orientiert sich dabei an biologischen neuronalen Netzen und erlaubt 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 der Neuronen in diesen Schichten abhängig von der konkreten Aufgabe, welche durch das neuronale Netz gelöst werden soll, ist.Such an artificial neural network is based on biological neural networks and makes it possible to learn an unknown system behavior from existing training data and then to apply the learned system behavior to unknown input variables. The neural network consists of layers with idealized neurons, which are connected to one another in different ways according to a topology of the network. The first layer, which is also referred to as the input layer, detects and transmits the input values, the number of neurons in the input layer corresponding to the number of input signals that are to be processed. The last layer is also referred to as the output layer and has as many neurons as the output values are to be provided. Between the input layer and the output layer there is also at least one intermediate layer, which is often also referred to as a hidden layer, the number of intermediate layers and the number of neurons in these layers depending on the specific task that is to be solved by the neural network, is.

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.The development of the architecture of the artificial neural network, i.e. the determination of the appearance of the network or the number of layers in the network and the determination of the number and / or the type of neurons in the individual layers is usually very complex, in particular in terms of resource consumption. In order to optimize the development of the architecture, the Neural Architecture Search (NAS) was developed, which automatically develops optimal architectures for specific problems. The NAS algorithm initially compiles an architecture for the artificial neural network from various modules and configurations, which is then trained with a set of training data, and the results obtained are then evaluated with regard to performance. Based on this evaluation, a new architecture, which is likely to be more optimal with regard to performance, can then be determined, which is then in turn trained based on the training data, and the results obtained are then again evaluated with regard to performance. These steps can be repeated until no further improvement can be achieved by changing the architecture.

Einen weiteren Optimierungsansatz für neuronale Netze stellt die Hyperparameteroptimierung dar. Als Hyperparameter wird dabei ein Parameter bezeichnet, der zur Steuerung des Trainingsalgorithmus verwendet wird und dessen Wert im Gegensatz zu anderen Parametern vor dem eigentlichen Training des Modells festgelegt werden muss. Die Hyperparameter können dabei zum Beispiel eine Stapelgröße, eine Kostenfunktion, beispielsweise eine Kreuzentropie, charakterisieren, eine Anzahl von Epochen und/oder eine Lernrate umfassen. Durch eine derartige Hyperparameteroptimierung kann die Genauigkeit des künstlichen neuronalen Netzes optimiert werden. Da derartige Hyperparameteroptimierungen jedoch wiederum sehr aufwendig sind, insbesondere im Hinblick auf den Ressourcenverbrauch, wurden wiederum Verfahren zur automatisierten Optimierung der Hyperparameter entwickelt. Dabei werden Trainingsprozess und Modellarchitektur als Black Box angesehen, die mit einer spezifischen Hyperparameter-Konfiguration ausgeführt wird und die resultierende Modellgenauigkeit ausgibt. Um die Anzahl der Trainingsdurchläufe zu minimieren, werden typischerweise stochastische Methoden verwendet, welche versuchen, gleichzeitig den Parameterraum zu erkunden und sich iterativ einem Optimum zu nähern.Hyperparameter optimization represents another optimization approach for neural networks. Hyperparameter is a parameter that is used to control the training algorithm and its value in In contrast to other parameters, the model must be set before the actual training. The hyperparameters can characterize, for example, a stack size, a cost function, for example a cross entropy, a number of epochs and / or a learning rate. Such a hyperparameter optimization can optimize the accuracy of the artificial neural network. However, since hyperparameter optimizations of this type are again very complex, in particular with regard to the consumption of resources, methods for the automated optimization of the hyperparameters have again been developed. The training process and model architecture are viewed as a black box that is executed with a specific hyper-parameter configuration and outputs the resulting model accuracy. In order to minimize the number of training runs, stochastic methods are typically used, which try to explore the parameter space at the same time and to iteratively approach an optimum.

Als nachteilig erweist sich hierbei jedoch, dass bei derartigen Verfahren für gewöhnlich nicht gleichzeitig der NAS-Algorithmus und die Hyperparameteroptimierung in einem Verfahren berücksichtigt werden.However, it has proven to be disadvantageous here that in such methods the NAS algorithm and the hyperparameter optimization are usually not taken into account in one method at the same time.

Gemäß den Ausführungsformen der 1 weist das Verfahren 1 dabei einen Schritt 2 eines Trainierens jeweils eines künstliches neuronalen Netzes für eine erste Anzahl an Paaren von je einer Architektur und einem Hyperparameter aus einer Menge an möglichen Architektur-Hyperparameter-Paaren basierend auf der entsprechenden Architektur, dem entsprechenden Hyperparameter und basierend auf Trainingsdaten und einen Schritt 3 eines Evaluierens jeweils eine Performanz des entsprechenden künstlichen neuronalen Netzes für jedes Paar von je einer Architektur und einem Hyperparameter der ersten Anzahl an Architektur-Hyperparameter-Paaren auf, wobei basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Architektur-Hyperparameter-Paaren, einem Kern für die Architektursuche und einem Kern für die Hyperparameteroptimierung in einem Schritt 4 eine weiteres Paar von einer Architektur und einem Hyperparameter aus der Menge an möglichen Architektur-Hyperparameter-Paaren ausgewählt wird, für welche bisher noch kein künstliches neuronales Netz trainiert wurde, und welche in Bezug auf die Performanz als optimaler als die basierend auf den Paaren von je einer Architektur und einem Hyperparameter der ersten Anzahl an Architektur-Hyperparameter-Paaren trainierten künstlichen neuronalen Netze erscheint, und wobei in einem Schritt 5 ein künstliches neuronales Netz basierend auf der Architektur und dem Hyperparameter des weiteren Paares von einer Architektur und einem Hyperparameter und den Trainingsdaten trainiert wird.According to the embodiments of 1 instructs the procedure 1 taking one step 2 training a respective artificial neural network for a first number of pairs of one architecture and one hyperparameter from a set of possible architecture-hyperparameter pairs based on the corresponding architecture, the corresponding hyperparameter and based on training data and one step 3 evaluating a performance of the corresponding artificial neural network for each pair of one architecture and one hyperparameter of the first number of architecture-hyperparameter pairs, based on the performances of the artificial neural networks of the first number of architecture-hyperparameter pairs, a core for the architecture search and a core for the hyperparameter optimization in one step 4th another pair of an architecture and a hyperparameter is selected from the set of possible architecture-hyperparameter pairs for which no artificial neural network has yet been trained, and which are more optimal in terms of performance than those based on the pairs of each an architecture and a hyperparameter of the first number of architecture-hyperparameter pairs trained artificial neural networks appears, and wherein in one step 5 an artificial neural network is trained based on the architecture and the hyperparameter of the further pair of an architecture and a hyperparameter and the training data.

Somit wird ein verbessertes Verfahren zum Erzeugen eines künstlichen neuronalen Netzes angegeben, bei welchem gleichzeitig der NAS-Algorithmus und die Hyperparameteroptimierung berücksichtigt wird. Folglich kann der Zeitraum bis hin zur Entwicklung des schlussendlich optimalen künstlichen neuronalen Netzes verkürzt werden und gleichzeitig der hierzu nötige Ressourcenverbrauch erheblich verringert werden, so dass das schlussendlich optimale künstliche neuronale Netz auch auf Steuergeräten mit vergleichsweise geringen Speicher- und Rechenkapazitäten entwickelt werden kann.Thus, an improved method for generating an artificial neural network is specified, in which the NAS algorithm and the hyperparameter optimization are taken into account at the same time. As a result, the period up to the development of the ultimately optimal artificial neural network can be shortened and, at the same time, the required resource consumption can be significantly reduced, so that the ultimately optimal artificial neural network can also be developed on control devices with comparatively low storage and computing capacities.

Bei dem für die Architektursuche kann es sich dabei beispielsweise um einen Weisfeiler-Lehmann Kernel und bei dem Kern für die Hyperparameteroptimierung beispielsweise um einen Matern- Kernel handeln. Dabei können die beiden kerne multipliziert werden, um ein gemeinsames Kernel zu bilden, das heißt einen verbesserten Prädiktor für die Architektursuche.The one for the architecture search can be a Weisfeiler-Lehmann kernel, for example, and the core for the hyperparameter optimization can be a Matern kernel, for example. The two kernels can be multiplied to form a common kernel, i.e. an improved predictor for the architecture search.

Gemäß den Ausführungsformen der 1 erfolgt das das Auswählen eines weiteren Paares von einer Architektur und einem Hyperparameter weiter basierend auf einem Vorhersagemodell. Beispielsweise kann mittels Bayesian Optimization die Architektur optimiert werden, wobei basierend auf bereits gemessenen Architekturen vorhergesagt werden kann, welche Performanzen noch nicht evaluierte Architekturen haben, und wobei ein probabilistisches Modell gebildet wird, welches angibt, wie gut noch nicht evaluierte Architekturen sind.According to the embodiments of 1 the selection of a further pair of an architecture and a hyperparameter is carried out further based on a prediction model. For example, the architecture can be optimized by means of Bayesian Optimization, whereby, based on architectures that have already been measured, it can be predicted which performances have not yet been evaluated architectures, and a probabilistic model is formed which indicates how good architectures that have not yet been evaluated are.

Wie 1 zeigt, weist das Verfahren 1 weiter einen Schritt 6 eines Auswählens wenigstens einer Fidelity, welche zum Optimieren eines trainierten künstlichen neuronalen Netzes verwendet werden soll, aus einer Menge an Fidelitys beziehungsweise eines Wertes für die wenigstens eine Fidelity derart, dass beim Optimieren der Nutzen optimiert und gleichzeitig die Kosten minimiert werden, und einen Schritt 7 eines Optimierens des trainierten künstlichen neuronalen Netzes basierend auf einem Algorithmus, welcher die wenigstens eine ausgewählten Fidelity nutzt, auf.As 1 shows instructs the procedure 1 one step further 6th selecting at least one fidelity, which is to be used to optimize a trained artificial neural network, from a set of fidelities or a value for the at least one fidelity in such a way that the optimization optimizes the benefit and at the same time minimizes the costs, and one step 7th of optimizing the trained artificial neural network based on an algorithm that uses the at least one selected fidelity.

Bei dem Algorithmus kann es sich dabei beispielsweise um einen Bi-Objective Cultural Algorithm (BOCA) handeln, welcher mehrere Fidelity-Parameter gleichzeitig ausnutzen und den gesamten Ressourcenverbrauch minimieren kann. Der Algorithmus kann dabei weiter derart ausgewählt sein, dass Fidelitys, welche eine zu große Ungenauigkeit aufweisen, unberücksichtigt bleiben.The algorithm can be, for example, a Bi-Objective Cultural Algorithm (BOCA), which can use several fidelity parameters at the same time and minimize the total consumption of resources. The algorithm can further be selected in such a way that fidelities which have too great an inaccuracy are not taken into account.

Gemäß den Ausführungsformen der 1 umfasst die Menge an Fidelitys dabei eine Trainingszeitoptimierung, eine Optimierung einer sich immer wiederholenden Subkomponente und eine Architektursuche beziehungsweise Architekturoptimierung. Insbesondere kann hierbei BOCA mit dem Weisfeiler-Lehmann Kernel kombiniert werden.According to the embodiments of 1 The set of fidelitys includes a training time optimization, an optimization of a recurring subcomponent and an architecture search or architecture optimization. In particular, BOCA can be combined with the Weisfeiler-Lehmann kernel.

Zudem handelt es sich bei den Trainingsdaten um Sensordaten und insbesondere um von Sensoren eines autonom fahrenden Kraftfahrzeuges erfassten Daten.In addition, the training data is sensor data and, in particular, data recorded by sensors of an autonomously driving motor vehicle.

2 zeigt ein Blockschaltbild eines Systems 10 zum Klassifizieren von Bilddaten gemäß Ausführungsformen der Erfindung. 2 shows a block diagram of a system 10 for classifying image data according to embodiments of the invention.

Wie 2 zeigt, weist das System 10 dabei ein Steuergerät 11 zum Erzeugen eines künstlichen neuronalen Netzes und ein Steuergerät 12 zum Klassifizieren von Bilddaten auf, wobei das Steuergerät 12 zum Klassifizieren von Bilddaten ausgebildet ist, Bilddaten basierend auf einem durch das Steuergerät 11 zum Erzeugen eines künstlichen neuronalen Netzes erzeugten künstlichen neuronalen Netz zu klassifizieren. Das erzeugte künstliche neuronale Netz kann dabei drahtgebunden oder drahtlos an das Steuergerät 12 zum Klassifizieren von Bilddaten übermittelt werden.As 2 shows, instructs the system 10 thereby a control unit 11 for generating an artificial neural network and a control unit 12th to classify image data, the control unit 12th is designed to classify image data, image data based on a by the control device 11 to classify artificial neural network generated for generating an artificial neural network. The generated artificial neural network can be wired or wireless to the control unit 12th to classify image data.

Wie weiter zu erkennen ist, weist das Steuergerät 11 zum Trainieren eines künstlichen Netzes dabei eine Empfangseinheit 13 zum Empfangen von Trainingsdaten, beispielsweise von durch Sensoren eines autonom fahrenden Kraftfahrzeuges erfasste Daten, eine erste Trainingseinheit 14, welche ausgebildet ist, für eine erste Anzahl an Paaren von je einer Architektur und einem Hyperparameter aus einer Menge an möglichen Architektur-Hyperparameter-Paaren jeweils ein künstliches neuronales Netz basierend auf der entsprechenden Architektur, dem entsprechenden Hyperparameter und den Trainingsdaten zu trainieren, eine Evaluierungseinheit 15, welche ausgebildet ist, für jedes Paar von einem Architektur und einem Hyperparameter der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, jeweils eine Performanz des entsprechenden künstlichen neuronalen Netzes zu evaluieren, eine Auswahleinheit 16, welche ausgebildet ist, ein weiteres Paar von einer Architektur und einem Hyperparameter aus der Menge an möglichen Architektur-Hyperparameter-Paaren, für welche bisher noch kein künstliches neuronales Netz trainiert wurde, und welche in Bezug auf die Performanz als optimaler als die basierend auf den Paaren von einer Architektur und einem Hyperparameter der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter trainierten künstlichen neuronalen Netze erscheint, basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, einem Kern für die Architektursuche und einem Kern für die Hyperparameteroptimierung auszuwählen, und eine zweite Trainingseinheit 17, welche ausgebildet ist, ein künstliches neuronales Netz basierend auf der Architektur und dem Hyperparameter des weiteren Paares von einer Architektur und einem Hyperparameter und den Trainingsdaten zu trainieren, aufweist.As can also be seen, the control unit 11 a receiving unit for training an artificial network 13th for receiving training data, for example data recorded by sensors of an autonomously driving motor vehicle, a first training unit 14th which is designed to train an artificial neural network based on the corresponding architecture, the corresponding hyperparameter and the training data for a first number of pairs of one architecture and one hyperparameter from a set of possible architecture-hyperparameter pairs, an evaluation unit 15th which is designed to evaluate a performance of the corresponding artificial neural network for each pair of an architecture and a hyperparameter of the first number of pairs of each architecture and a hyperparameter, a selection unit 16 , which is designed, a further pair of an architecture and a hyperparameter from the set of possible architecture-hyperparameter pairs for which no artificial neural network has yet been trained, and which are more optimal in terms of performance than those based on the Pairs of one architecture and one hyperparameter of the first number of pairs of each architecture and one hyperparameter trained artificial neural networks appear, based on the performances of the artificial neural networks of the first number of pairs of each one architecture and one hyperparameter, a core for the Architectural search and select a core for hyperparameter optimization, and a second training session 17th which is designed to train an artificial neural network based on the architecture and the hyperparameter of the further pair of an architecture and a hyperparameter and the training data.

Bei der Empfangseinheit kann es sich dabei beispielsweise um einen Receiver, welcher ausgebildet ist, durch einen Sensor erfasste Daten zu empfangen, handeln. Die erste Trainingseinheit, die Evaluierungseinheit, die Auswahleinheit und die zweite Trainingseinheit können ferner jeweils beispielsweise basierend auf in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The receiving unit can be, for example, a receiver which is designed to receive data recorded by a sensor. The first training unit, the evaluation unit, the selection unit and the second training unit can also each be implemented, for example, on the basis of code stored in a memory and executable by a processor.

Ferner kann die zweite Trainingseinheit auch in die erste Trainingseinheit integriert sein.Furthermore, the second training unit can also be integrated into the first training unit.

Gemäß den Ausführungsformen der 2 weist das Steuergerät 21 zum Trainieren eines künstlichen neuronalen Netzes weiter eine zweite Auswahleinheit 18, welche ausgebildet ist, wenigstens eine Fidelity, welche zum Optimieren eines trainierten neuronalen Netzes verwendet werden soll, aus einer Menge an Fidelitys beziehungsweise einen Wert für die wenigstens eine Fidelity derart auszuwählen, dass beim Optimieren der Nutzen optimiert und gleichzeitig die Kosten minimiert werden, und eine Optimierungseinheit 19, welche ausgebildet ist, das trainierte neuronale Netz basierend auf einem Algorithmus, welcher die wenigstens eine ausgewählten Fidelity nutzt, zu optimieren.According to the embodiments of 2 instructs the control unit 21 a second selection unit for training an artificial neural network 18th , which is designed to select at least one fidelity, which is to be used for optimizing a trained neural network, from a set of fidelities or a value for the at least one fidelity in such a way that the optimization optimizes the benefit and at the same time minimizes the costs, and an optimization unit 19th which is designed to optimize the trained neural network based on an algorithm that uses the at least one selected fidelity.

Die zweite Auswahleinheit und die Optimierungseinheit können dabei wiederum jeweils beispielsweise basierend auf in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The second selection unit and the optimization unit can in turn be implemented, for example, based on code stored in a memory and executable by a processor.

Das Steuergerät 12 zum Klassifizieren von Bilddaten weist zudem eine Empfangseinheit 20 zum Empfangen eines durch das Steuergerät 11 zum Erzeugen eines künstlichen neuronalen Netzes erzeugtes künstlichen neuronalen Netzes, insbesondere eines in Hinblick auf die Performance optimalen künstlichen neuronalen Netzes auf, sowie eine Steuereinheit 21, welche ausgebildet ist, Bilddaten basierend auf dem künstlichen neuronalen Netz zu klassifizieren, auf.The control unit 12th a receiving unit also has for the classification of image data 20th to receive a through the control unit 11 Artificial neural network generated for generating an artificial neural network, in particular an artificial neural network which is optimal in terms of performance, and a control unit 21 which is designed to classify image data based on the artificial neural network.

Die Steuereinheit kann dabei wiederum beispielsweise basierend auf in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The control unit can in turn be implemented, for example, based on code stored in a memory and executable by a processor.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE DESCRIPTION

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.This list of the documents listed by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent literature cited

  • DE 102019214625 A1 [0007]DE 102019214625 A1 [0007]

Claims (14)

Vorrichtung zum Erzeugen eines künstlichen neuronalen Netzes, wobei die Vorrichtung ein maschinenlesbares Speichermedium umfasst, auf dem Befehle gespeichert sind, die beim Ausführen durch einen Computer bewirkten, dass der Computer ein Verfahren (1) mit folgenden Schritte ausführt: - Für eine erste Anzahl an Paaren von je einer Architektur und einem Hyperparameter aus einer Menge an möglichen Architektur-Hyperparameter-Paaren, jeweils Trainieren eines künstlichen neuronalen Netzes basierend auf der entsprechenden Architektur, dem entsprechenden Hyperparameter und basierend auf Trainingsdaten (2); - Für jedes Paar von einer Architektur und einem Hyperparameter der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, jeweils Evaluieren einer Performanz des entsprechenden künstlichen neuronalen Netzes (3); - Auswählen eines weiteren Paares von einer Architektur und einem Hyperparameter aus der Menge an möglichen Architektur-Hyperparameter-Paaren, für welches bisher noch kein künstliches neuronales Netz trainiert wurde, und welches in Bezug auf die Performanz als optimaler als die basierend auf den Paaren von einer Architektur und einem Hyperparameter der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter trainierten künstlichen neuronalen Netze erscheint, basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, einem Kern für die Architektursuche und einem Kern für die Hyperparameteroptimierung (4); und - Trainieren eines künstlichen neuronalen Netzes basierend auf der Architektur und dem Hyperparameter gemäß dem weiteren Paar von einer Architektur und einem Hyperparameter und den Trainingsdaten (5). Apparatus for generating an artificial neural network, the apparatus comprising a machine-readable storage medium on which instructions are stored which, when executed by a computer, cause the computer to carry out a method (1) with the following steps: - For a first number of pairs of one architecture and one hyperparameter from a set of possible architecture-hyperparameter pairs, each training of an artificial neural network based on the corresponding architecture, the corresponding hyperparameter and based on training data (2); - For each pair of one architecture and one hyperparameter of the first number of pairs of one architecture and one hyperparameter each, evaluating a performance of the corresponding artificial neural network (3); - Selecting a further pair of an architecture and a hyperparameter from the set of possible architecture-hyperparameter pairs for which no artificial neural network has yet been trained and which is more optimal in terms of performance than that based on the pairs of one Architecture and a hyperparameter of the first number of pairs of one architecture and one hyperparameter trained artificial neural networks appear, based on the performances of the artificial neural networks of the first number of pairs of one architecture and one hyperparameter, one core for the architecture search and one Core for hyperparameter optimization (4); and - Training an artificial neural network based on the architecture and the hyperparameter according to the further pair of an architecture and a hyperparameter and the training data (5). Vorrichtung nach Anspruch 1, wobei die gespeicherten Befehle derart ausgebildet sind, dass das Verfahren, das der Computer ausführt, wenn diese Befehle auf dem Computer ausgeführt werden, derart abläuft, dass das Auswählen eines weiteren Paars von einer Architektur und einem Hyperparameter (4) basierend auf einem Vorhersagemodell erfolgt.Device according to Claim 1 , wherein the stored commands are designed such that the method that the computer executes when these commands are executed on the computer runs in such a way that the selection of a further pair of an architecture and a hyperparameter (4) is based on a prediction model . Vorrichtung nach Anspruch 1 oder 2, wobei die gespeicherten Befehle derart ausgebildet sind, dass das Verfahren, das der Computer ausführt, wenn diese Befehle auf dem Computer ausgeführt werden, derart abläuft, dass das Verfahren weiter folgenden Schritt aufweist: - Auswählen wenigstens einer Fidelity, welche zum Optimieren eines trainierten künstlichen neuronalen Netzes verwendet werden soll, aus einer Menge an Fidelitys derart, dass beim Optimieren der Nutzen optimiert und gleichzeitig die Kosten minimiert werden (5); und - Optimieren des trainierten künstlichen neuronalen Netzes basierend auf einem Algorithmus, welcher die wenigstens eine ausgewählten Fidelity nutzt (6).Device according to Claim 1 or 2 , the stored commands being designed in such a way that the method that the computer executes when these commands are executed on the computer runs in such a way that the method further comprises the following step: Selecting at least one fidelity which is used to optimize a trained artificial neural network is to be used, from a set of fidelitys in such a way that optimizing the benefits is optimized and at the same time the costs are minimized (5); and - optimizing the trained artificial neural network based on an algorithm which uses the at least one selected fidelity (6). Vorrichtung nach Anspruch 3, wobei die gespeicherten Befehle derart ausgebildet sind, dass das Verfahren, das der Computer ausführt, wenn diese Befehle auf dem Computer ausgeführt werden, derart abläuft, dass die Menge an Fidelitys eine Trainingszeitoptimierung, eine Optimierung einer sich immer wiederholenden Subkomponente und eine Architektursuche umfasst.Device according to Claim 3 , wherein the stored instructions are designed in such a way that the method that the computer executes when these instructions are executed on the computer runs in such a way that the set of fidelitys comprises a training time optimization, an optimization of a repetitive subcomponent and an architecture search. Vorrichtung nach einem der Ansprüche 1 bis 4, wobei die Trainingsdaten Sensordaten aufweisen.Device according to one of the Claims 1 until 4th , wherein the training data comprises sensor data. Vorrichtung zur Klassifizierung von Bilddaten, wobei die Bilddaten unter Verwendung eines künstlichen neuronalen Netzes klassifiziert werden, und wobei das künstliche neuronale Netz unter Verwendung der Vorrichtung zum Erzeugen eines künstlichen neuronalen Netzes nach einem der Ansprüche 1 bis 5 erzeugt wurde.Apparatus for classifying image data, wherein the image data are classified using an artificial neural network, and wherein the artificial neural network is classified using the apparatus for generating an artificial neural network according to one of the Claims 1 until 5 was generated. Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes, wobei das Steuergerät (11) eine erste Trainingseinheit (14), welche ausgebildet ist, für eine erste Anzahl an Paaren von je einer Architektur und einem Hyperparameter aus einer Menge an möglichen Architektur-Hyperparameter-Paaren jeweils ein künstliches neuronales Netz basierend auf der entsprechenden Architektur, dem entsprechenden Hyperparameter und Trainingsdaten zu trainieren, eine Evaluierungseinheit (15), welche ausgebildet ist, für jedes Paar von einer Architektur und einem Hyperparameter der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, jeweils eine Performanz des entsprechenden künstlichen neuronalen Netzes zu evaluieren, eine Auswahleinheit (16), welche ausgebildet ist, ein weiteres Paar von einer Architektur und einem Hyperparameter aus der Menge an möglichen Architektur-Hyperparameter-Paaren, für welches bisher noch kein künstliches neuronales Netz trainiert wurde, und welches in Bezug auf die Performanz als optimaler als die basierend auf den Paaren von einer Architektur und einem Hyperparameter der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter trainierten künstlichen neuronalen Netze erscheint, basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, einem Kern für die Architektursuche und einem Kern für die Hyperparameteroptimierung auszuwählen, und eine zweite Trainingseinheit (17), welche ausgebildet ist, ein künstliches neuronales Netz basierend auf der Architektur und dem Hyperparameter gemäß dem weiteren Paar von einer Architektur und einem Hyperparameter und den Trainingsdaten zu trainieren, aufweist.Control device for generating an artificial neural network, the control device (11) having a first training unit (14) which is designed for a first number of pairs of one architecture and one hyperparameter from a set of possible architecture-hyperparameter pairs To train an artificial neural network based on the corresponding architecture, the corresponding hyperparameters and training data, an evaluation unit (15) which is designed for each pair of an architecture and a hyperparameter of the first number of pairs of an architecture and a hyperparameter, respectively to evaluate a performance of the corresponding artificial neural network, a selection unit (16) which is designed, a further pair of an architecture and a hyperparameter from the set of possible architecture-hyperparameter pairs for which no artificial neural network has yet been trained , and which in Bezu g appears to be more optimal on the performance than that based on the pairs of an architecture and a hyperparameter of the first number of pairs of each architecture and a hyperparameter trained artificial neural networks, based on the performances of the artificial neural networks of the first number of pairs of to select an architecture and a hyperparameter, a core for the architecture search and a core for the hyperparameter optimization, and a second training unit (17) which is designed to be an artificial neural network based on the architecture and the hyperparameter according to the further pair of an architecture and to train a hyperparameter and the training data. Steuergerät nach Anspruch 7, wobei die Auswahleinheit ausgebildet ist, das weitere Paar von einer Architektur und einem Hyperparameter basierend auf den Performanzen der künstlichen neuronalen Netze der ersten Anzahl an Paaren von je einer Architektur und einem Hyperparameter, einem Kern für die Architektursuche und einem Kern für die Hyperparameteroptimierung unter Verwendung eines Vorhersagemodells auszuwählen.Control unit after Claim 7 , wherein the selection unit is designed to use the further pair of an architecture and a hyperparameter based on the performances of the artificial neural networks of the first number of pairs of an architecture and a hyperparameter, a core for the architecture search and a core for the hyperparameter optimization of a predictive model. Steuergerät nach Anspruch 7 oder 8, wobei das Steuergerät weiter eine zweite Auswahleinheit (18), welche ausgebildet ist, wenigstens eine Fidelity, welche zum Optimieren eines trainierten neuronalen Netzes verwendet werden soll, aus einer Menge an Fidelitys derart auszuwählen, dass beim Optimieren der Nutzen optimiert und gleichzeitig die Kosten minimiert werden, und eine Optimierungseinheit (19), welche ausgebildet ist, das trainierte künstliche neuronale Netz basierend auf einem Algorithmus, welcher die wenigstens eine ausgewählten Fidelity nutzt, zu optimieren.Control unit after Claim 7 or 8th , wherein the control device further comprises a second selection unit (18) which is designed to select at least one fidelity, which is to be used for optimizing a trained neural network, from a set of fidelities in such a way that optimization optimizes the benefit and at the same time minimizes the costs and an optimization unit (19) which is designed to optimize the trained artificial neural network based on an algorithm which uses the at least one selected fidelity. Steuergerät nach Anspruch 9, wobei die Menge an Fidelitys eine Trainingszeitoptimierung, eine Optimierung einer sich immer wiederholenden Subkomponente und eine Architektursuche umfasst.Control unit after Claim 9 , wherein the set of fidelitys comprises a training time optimization, an optimization of a recurring subcomponent, and an architecture search. Steuergerät nach einem der Ansprüche 7 bis 10, wobei die Trainingsdaten Sensordaten aufweisen.Control unit according to one of the Claims 7 until 10 , wherein the training data comprises sensor data. Steuergerät zum Klassifizieren von Bilddaten, wobei das Steuergerät (12) eine Empfangseinheit, welche ausgebildet ist, ein durch ein Steuergerät zum Erzeugen eines künstlichen neuronalen Netzes nach einem der Ansprüche 7 bis 11 bereitgestelltes künstliches neuronales Netz zu empfangen, und eine Steuereinheit (21), welche ausgebildet ist, Bilddaten basierend auf dem künstlichen neuronalen Netz zu klassifizieren, aufweist.Control device for classifying image data, wherein the control device (12) has a receiving unit which is designed to be used by a control device for generating an artificial neural network according to one of the Claims 7 until 11 provided artificial neural network, and a control unit (21) which is designed to classify image data based on the artificial neural network. System zum Klassifizieren von Bilddaten, wobei das System (10) ein Steuergerät (11) zum Erzeugen eines künstlichen neuronalen Netzes nach einem der Ansprüche 7 bis 11 und ein Steuergerät (12) zum Klassifizieren von Bilddaten nach Anspruch 12 aufweist, wobei das Steuergerät (12) zum Klassifizieren von Bilddaten ausgebildet ist, Bilddaten basierend auf einem durch das Steuergerät (11) zum Erzeugen eines künstlichen neuronalen Netzes erzeugten künstlichen neuronalen Netz zu klassifizieren.System for classifying image data, the system (10) having a control unit (11) for generating an artificial neural network according to one of the Claims 7 until 11 and a control unit (12) for classifying image data according to Claim 12 wherein the control device (12) for classifying image data is designed to classify image data based on an artificial neural network generated by the control device (11) for generating an artificial neural network. Kraftfahrzeug, wobei das Kraftfahrzeug ein System nach Anspruch 13 aufweist.Motor vehicle, the motor vehicle being a system according to Claim 13 having.
DE202021103700.8U 2021-07-09 2021-07-09 Device for generating an artificial neural network Active DE202021103700U1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE202021103700.8U DE202021103700U1 (en) 2021-07-09 2021-07-09 Device for generating an artificial neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE202021103700.8U DE202021103700U1 (en) 2021-07-09 2021-07-09 Device for generating an artificial neural network

Publications (1)

Publication Number Publication Date
DE202021103700U1 true DE202021103700U1 (en) 2021-07-28

Family

ID=77271160

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202021103700.8U Active DE202021103700U1 (en) 2021-07-09 2021-07-09 Device for generating an artificial neural network

Country Status (1)

Country Link
DE (1) DE202021103700U1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019214625A1 (en) 2019-09-25 2021-03-25 Albert-Ludwigs-Universität Freiburg Method, device and computer program for creating an artificial neural network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019214625A1 (en) 2019-09-25 2021-03-25 Albert-Ludwigs-Universität Freiburg Method, device and computer program for creating an artificial neural network

Similar Documents

Publication Publication Date Title
EP3785177B1 (en) Method and device for determining a network-configuration of a neural network
DE102017218889A1 (en) Unarmed parameterized AI module and method of operation
DE102017218851A1 (en) Method, device and computer program for creating a deep neural network
DE102019203634A1 (en) Method and device for controlling a robot
DE102021109382A1 (en) SYSTEM AND PROCEDURE OF A MONOTON NEURAL OPERATOR NETWORK TECHNICAL FIELD
DE102019210507A1 (en) Device and computer-implemented method for processing digital sensor data and training methods therefor
DE102021207613A1 (en) Process for quality assurance of a system
DE102017128082A1 (en) Meta-architecture design for a CNN network
EP3785178B1 (en) Method and device for determining a network-configuration of a neural network
DE202021103700U1 (en) Device for generating an artificial neural network
DE102021207275A1 (en) Method for creating an artificial neural network
DE102021212483A1 (en) Data processing device and method and program for deep learning of a neural network
DE102020210700A1 (en) More flexible iterative operation of artificial neural networks
DE102020211596A1 (en) Method for generating a trained neural convolution network with an invariant integration layer for classifying objects
DE202019105256U1 (en) Device for creating a machine learning system
DE202019103046U1 (en) Device for predicting a learning curve
DE202019103323U1 (en) Device for creating a machine learning system
DE102019207911A1 (en) Method, device and computer program for predicting a learning curve
DE202021103699U1 (en) Device for training a neural network ensemble
DE202019103233U1 (en) Device for setting a hyperparameter
DE102021207274A1 (en) Method for training a neural network ensemble
DE202022103792U1 (en) Device for determining an optimal architecture of an artificial neural network
DE102022207072A1 (en) Method for determining an optimal architecture of an artificial neural network
DE102022206892A1 (en) Method for determining an optimal architecture of an artificial neural network
DE102018209901A1 (en) Computing unit, method and computer program for multiplying at least two multiplicands

Legal Events

Date Code Title Description
R081 Change of applicant/patentee

Owner name: ROBERT BOSCH GESELLSCHAFT MIT BESCHRAENKTER HA, DE

Free format text: FORMER OWNER: ROBERT BOSCH GESELLSCHAFT MIT BESCHRAENKTER HAFTUNG, 70469 STUTTGART, DE

Owner name: ALBERT-LUDWIGS-UNIVERSITAET FREIBURG, KOERPERS, DE

Free format text: FORMER OWNER: ROBERT BOSCH GESELLSCHAFT MIT BESCHRAENKTER HAFTUNG, 70469 STUTTGART, DE

R207 Utility model specification