DE102022206892A1 - Method for determining an optimal architecture of an artificial neural network - Google Patents
Method for determining an optimal architecture of an artificial neural network Download PDFInfo
- Publication number
- DE102022206892A1 DE102022206892A1 DE102022206892.0A DE102022206892A DE102022206892A1 DE 102022206892 A1 DE102022206892 A1 DE 102022206892A1 DE 102022206892 A DE102022206892 A DE 102022206892A DE 102022206892 A1 DE102022206892 A1 DE 102022206892A1
- Authority
- DE
- Germany
- Prior art keywords
- architecture
- neural network
- artificial neural
- optimal
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 143
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000012549 training Methods 0.000 claims description 51
- 238000004422 calculation algorithm Methods 0.000 claims description 40
- 230000006870 function Effects 0.000 claims description 17
- 238000010801 machine learning Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 9
- 210000002569 neuron Anatomy 0.000 description 15
- 230000008569 process Effects 0.000 description 11
- 230000008901 benefit Effects 0.000 description 9
- 238000011161 development Methods 0.000 description 6
- 230000018109 developmental process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 4
- 230000001537 neural effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
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)
- Feedback Control In General (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes, wobei das Verfahren folgende Schritte aufweist: Für jede Architektur aus einer Menge an möglichen Architekturen des künstlichen neuronalen Netzes, jeweils Bestimmen einer Unsicherheit für die entsprechende Architektur durch Bestimmen einer Ähnlichkeit der entsprechenden Architektur zu wenigstens einer bekannten Architektur (2); und Bestimmen einer für das künstliche neuronale Netz optimalen Architektur aus der Menge an möglichen Architekturen unter Verwendung einer Nutzenfunktion basierend auf den Unsicherheiten der Architekturen aus der Menge an möglichen Architekturen (3).The invention relates to a method for determining an optimal architecture of an artificial neural network, the method having the following steps: For each architecture from a set of possible architectures of the artificial neural network, determining an uncertainty for the corresponding architecture by determining a similarity of the corresponding one Architecture to at least one known architecture (2); and determining an optimal architecture for the artificial neural network from the set of possible architectures using a utility function based on the uncertainties of the architectures from the set of possible architectures (3).
Description
Die Erfindung betrifft ein Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes, mit welchem schnell und mit geringem Ressourcenverbrauch eine optimale Architektur für ein künstliches neuronales Netz bestimmt werden kann.The invention relates to a method for determining an optimal architecture of an artificial neural network, with which an optimal architecture for an artificial neural network can be determined quickly and with little resource consumption.
Algorithmen des maschinellen Lernens basieren darauf, dass Verfahren der Statistik verwendet werden, um eine Datenverarbeitungsanlage derart zu trainieren, dass diese eine bestimmte Aufgabe ausführen kann, ohne dass diese ursprünglich explizit hierzu programmiert wurde. Das Ziel des maschinellen Lernens besteht dabei darin, Algorithmen zu konstruieren, die aus Daten lernen und Vorhersagen treffen können. Diese Algorithmen erstellen mathematische Modelle, mit denen beispielsweise Daten klassifiziert werden können.Machine learning algorithms are based on the fact that statistical methods are used to train a data processing system so that it can carry out a specific task without it having originally been explicitly programmed 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 künstliche 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 allow unknown system behavior to be learned from existing training data and then the learned system behavior to be applied to unknown input variables. The neural network consists of layers with idealized neurons, which are connected to each other in different ways according to a topology of the network. The first layer, which is also referred to as the input layer, records and transmits the input values, whereby the number of neurons in the input layer corresponds to the number of input signals that are to be processed. The last layer is also called the output layer and has as many neurons as the number of output values to be provided. Between the input layer and the output layer there is also at least one intermediate layer, which is often referred to as a hidden layer, whereby the number of intermediate layers and the number and/or type of neurons in these layers depend on the specific task carried out by the artificial neural network is to be solved.
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.However, the development of the architecture of the artificial neural network, that is to say the determination of the appearance of the network or the number of layers in the network as well as the determination of the number and/or type of neurons in the individual layers, is usually very complex, especially 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 first puts together an architecture for the artificial neural network from various building blocks 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 that is likely to be more optimal in terms of performance can then be determined, which in turn is then trained based on the training data, and the results obtained are then evaluated again with regard to performance. These steps can be repeated until no further improvement can be achieved through changes to the architecture.
Aus der Druckschrift
Der Erfindung liegt somit die Aufgabe zugrunde, ein verbessertes Verfahren zum Bestimmer einer optimalen Architektur eines künstlichen neuronalen Netzes anzugeben.The invention is therefore based on the object of specifying an improved method for determining an optimal architecture of an artificial neural network.
Die Aufgabe wird gelöst durch ein Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes gemäß den Merkmalen des Patentanspruchs 1.The task is solved by a method for determining an optimal architecture of an artificial neural network according to the features of patent claim 1.
Die Aufgabe wird zudem auch gelöst durch ein Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes gemäß den Merkmalen des Patentanspruchs 7.The task is also solved by a control device for determining an optimal architecture of an artificial neural network according to the features of patent claim 7.
Offenbarung der ErfindungDisclosure of the invention
Gemäß einer Ausführungsform der Erfindung wird diese Aufgabe gelöst durch ein Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes, wobei für jede Architektur aus einer Menge an möglichen Architekturen des neuronalen Netzes, jeweils eine Unsicherheit für die entsprechende Architektur durch Bestimmen einer Ähnlichkeit der Architektur zu wenigstens einer bekannten Architektur bestimmt wird, und wobei eine für das künstliche neuronale Netz optimale Architektur aus der Menge an möglichen Architekturen unter Verwendung einer Nutzenfunktion basierend auf den Unsicherheiten der Architekturen aus der Menge an möglichen Architekturen bestimmt wird.According to one embodiment of the invention, this object is achieved by a method for determining an optimal architecture of an artificial neural network, for each architecture from a set of possible architectures of the neural network, an uncertainty for the corresponding architecture is determined by determining a similarity of the architecture to at least one known architecture, and wherein an architecture that is optimal for the artificial neural network from the set of possible architectures using a utility function based on the uncertainties of the architectures is determined from the set of possible architectures.
Unter Architektur beziehungsweise Architektur eines künstlichen neuronalen Netzes, welches trainiert ist, eine bestimmte Aufgabe zu lösen, wird dabei die Struktur beziehungsweise das strukturelle Erscheinungsbild des künstlichen neuronalen Netzes verstanden, welches beispielsweise auf der Anzahl der Schichten in dem künstlichen neuronalen Netz und/oder der Anzahl und/oder des Typs der Neuronen in den einzelnen Schichten basiert.The term architecture or architecture of an artificial neural network, which is trained to solve a specific task, is understood to mean the structure or the structural appearance of the artificial neural network, which is based, for example, on the number of layers in the artificial neural network and / or the number and/or the type of neurons in the individual layers.
Unter Menge an möglichen Architekturen des neuronalen Netzes wird weiter die Menge beziehungsweise Gesamtheit aller möglichen Strukturen beziehungsweise strukturellen Erscheinungsbilder des künstlichen neuronalen Netzes verstanden.The set of possible architectures of the neural network is further understood to mean the set or totality of all possible structures or structural appearances of the artificial neural network.
Unter bekannter Architektur wird zudem eine Architektur verstanden, basierend auf welcher bereits ein künstliches neuronales Netz trainiert und ausgewertet wurde, wobei das künstliche neuronale Netz dabei trainiert wurde, zumindest eine ähnliche Aufgabe wie das zu trainierende künstliche neuronale Netz zu lösen.Known architecture is also understood to mean an architecture based on which an artificial neural network has already been trained and evaluated, the artificial neural network being trained to solve at least a similar task to the artificial neural network to be trained.
Unter Unsicherheit wird ferner ein Wert beziehungsweise eine Variable verstanden, welcher beziehungsweise welche die Güte der Ähnlichkeit zwischen wenigstens zwei Architekturen angibt, das heißt wieviel Informationsgehalt der entsprechenden Ähnlichkeit zugrunde liegt bzw. wie ähnlich die wenigstens zwei Architekturen sind.Uncertainty is also understood to mean a value or a variable which indicates the quality of the similarity between at least two architectures, i.e. how much information content the corresponding similarity is based on or how similar the at least two architectures are.
Eine Nutzen- beziehungsweise Utility-Funktion ist weiter eine mathematische Funktion beziehungsweise mathematische Gleichung, welche den Nutzen darstellt, welcher erhalten wird, wenn ein neuronales Netz basierend auf einer bestimmten Architektur trainiert wird.A utility function is also a mathematical function or mathematical equation that represents the utility obtained when a neural network is trained based on a particular architecture.
Dass dabei für jede Architektur aus einer Menge an möglichen Architekturen des künstlichen neuronalen Netzes jeweils eine Ähnlichkeit der Architektur zu wenigstens einer bekannten Architektur bestimmt wird hat den Vorteil, dass für jeden Teil beziehungsweise Aspekt der einzelnen Architekturen jeweils geprüft werden kann, ob dieser bekannt oder unbekannt, das heißt mit einer gewissen Unsicherheit verbunden ist, wobei die Unsicherheit für eine Architektur die Unsicherheiten aller Teile beziehungsweise Aspekte der entsprechenden Architektur umfassen kann, und wobei ein Aspekt beispielsweise die Anzahl der Schichten oder die Anzahl von Neuronen in einzelnen Schichten sein kann.The fact that for each architecture from a set of possible architectures of the artificial neural network a similarity of the architecture to at least one known architecture is determined has the advantage that for each part or aspect of the individual architectures it can be checked whether it is known or unknown , that is, is associated with a certain uncertainty, where the uncertainty for an architecture can include the uncertainties of all parts or aspects of the corresponding architecture, and where an aspect can be, for example, the number of layers or the number of neurons in individual layers.
Dies hat den Vorteil, dass das Verfahren verglichen mit bekannten Verfahren zum Bestimmen einer optimalen Architektur, welche auf lediglich einem Parameter bezüglich der Genauigkeit einzelner Architekturen basieren, effizienter und robuster ist.This has the advantage that the method is more efficient and robust compared to known methods for determining an optimal architecture, which are based on only one parameter regarding the accuracy of individual architectures.
Dadurch, dass das Verfahren effizienter und robuster ist, kann die insgesamt optimalste Architektur zudem schneller gefunden werden beziehungsweise konfiguriert das Verfahren schneller. Da das Verfahren zudem auf einfachen, gebräuchlichen Algorithmen beziehungsweise Funktionen basiert, kann diese optimale Architektur zudem mit vergleichsweise wenig Computerressourcen, beispielsweise vergleichsweise wenig Speicher- und/oder Prozessorkapazitäten bestimmt werden. Insbesondere kann die optimale Architektur dabei auch auf Steuergeräten, welche vergleichsweise wenig Ressourcen aufweisen, beispielsweise einem Steuergerät eines autonom fahrenden Kraftfahrzeuges bestimmt werden.Because the process is more efficient and robust, the most optimal architecture can be found more quickly and the process can be configured more quickly. Since the method is also based on simple, common algorithms or functions, this optimal architecture can also be determined with comparatively few computer resources, for example comparatively little memory and/or processor capacity. In particular, the optimal architecture can also be determined on control devices that have comparatively few resources, for example a control device of an autonomous motor vehicle.
Insgesamt wird somit ein verbessertes Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes angegeben.Overall, an improved method for determining an optimal architecture of an artificial neural network is thus specified.
Dabei kann der Schritt des, für jede Architektur aus einer Menge an möglichen Architekturen des neuronalen Netzes, jeweiligen Bestimmens einer Unsicherheit für die entsprechende Architektur durch Bestimmen einer Ähnlichkeit der entsprechenden Architektur zu wenigstens einer bekannten Architektur weiter ein Anwenden eines Algorithmus des maschinellen Lernens, welcher trainiert ist, Architekturen mit ähnlicher Performanz zu identifizieren, aufweisen.The step of, for each architecture from a set of possible architectures of the neural network, determining an uncertainty for the corresponding architecture by determining a similarity of the corresponding architecture to at least one known architecture can further involve applying a machine learning algorithm that trains is to identify architectures with similar performance.
Unter Performanz wird hierbei weiter die Leistungsfähigkeit der entsprechenden Architektur insgesamt verstanden.Performance is understood to mean the overall performance of the corresponding architecture.
Dass der Algorithmus des maschinellen Lernens dabei trainiert ist, Architekturen mit einer ähnlichen Performanz zu identifizieren, bedeutet dabei insbesondere, dass der Algorithmus des maschinellen Lernens trainiert ist, bei der Bestimmung der Unsicherheit einer Architektur nicht nur jeweils die Unsicherheiten einzelner Aspekte der entsprechenden Architektur, sondern auch Abhängigkeiten beziehungsweise Interaktionen zwischen einzelnen dieser Aspekte zu berücksichtigten. Insgesamt kann somit die Bestimmung der optimalen Architektur des neuronalen Netzes noch weiter optimiert werden.The fact that the machine learning algorithm is trained to identify architectures with a similar performance means in particular that the machine learning algorithm is trained to determine the uncertainty of an architecture not only the uncertainties of individual aspects of the corresponding architecture, but also Dependencies or interactions between individual aspects must also be taken into account. Overall, the determination of the optimal architecture of the neural network can be further optimized.
Weiter kann der Schritt des, für jede Architektur aus einer Menge an möglichen Architekturen des neuronalen Netzes, , jeweiligen Bestimmens einer Unsicherheit für die entsprechende Architektur durch Bestimmen einer Ähnlichkeit der entsprechenden Architektur zu wenigstens einer bekannten Architektur ein Anwenden eines Meta-Learning-Algorithmus aufweisen.Furthermore, the step of, for each architecture from a set of possible architectures of the neural network, determining an uncertainty for the corresponding architecture by determining a similarity of the corresponding architecture to at least one known architecture can include applying a meta-learning algorithm.
Unter einem Meta-Learning-Algorithmus wird dabei ein Algorithmus verstanden, welcher ausgebildet ist, Vorhersagen bezüglich anderer, bereits trainierter künstlicher neuronaler Netze, welche trainiert sind, zumindest eine ähnliche Aufgabe wie das zu trainierende künstliche neuronale Netz zu lösen, bei der Bestimmung der optimalen Architektur zu berücksichtigen.A meta-learning algorithm is understood to be an algorithm that is designed to make predictions regarding other, already trained artificial neural networks that are trained to solve at least a similar task to the artificial neural network to be trained, when determining the optimal ones Architecture to be taken into account.
Dass bei der Bestimmung der optimalen Architektur bereits bekannte Daten berücksichtigt werden, hat den Vorteil, dass die zum Auffinden der optimalen Architektur benötigte Zeit weiter verkürzt und die hierzu benötigten Computerressourcen weiter verringert werden können.The fact that already known data is taken into account when determining the optimal architecture has the advantage that the time required to find the optimal architecture can be further shortened and the computer resources required for this can be further reduced.
Mit einer weiteren Ausführungsform der Erfindung wird auch ein Verfahren zum Trainieren eines künstlichen neuronalen Netzes angegeben, wobei das Verfahren ein Bereitstellen von Trainingsdaten, ein Bereitstellen einer optimalen Architektur für das künstliche neuronale Netz, wobei die optimale Architektur durch ein obenstehend beschriebenes Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes bestimmt wird, und ein Trainieren des künstlichen neuronalen Netzes basierend auf den Trainingsdaten und der optimalen Architektur für das künstliche neuronale Netz aufweist.A further embodiment of the invention also specifies a method for training an artificial neural network, the method comprising providing training data, providing an optimal architecture for the artificial neural network, the optimal architecture being determined by a method described above for determining an optimal one Architecture of an artificial neural network is determined, and training the artificial neural network based on the training data and the optimal architecture for the artificial neural network.
Somit wird ein Verfahren zum Trainieren eines künstlichen neuronalen Netzes angegeben, welches auf einer durch ein verbessertes Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes bestimmten optimalen Architektur basiert. Insbesondere ist das Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes dabei verglichen mit bekannten Verfahren zum Bestimmen einer optimalen Architektur, welche auf lediglich einem Parameter bezüglich der Genauigkeit einzelner Architekturen basieren, effizienter und robuster. Dadurch, dass das Verfahren effizienter und robuster ist, kann die insgesamt optimalste Architektur zudem schneller gefunden werden beziehungsweise konfiguriert das Verfahren schneller. Da das Verfahren zudem auf einfachen, gebräuchlichen Algorithmen beziehungsweise Funktionen basiert, kann diese optimale Architektur zudem mit vergleichsweise wenig Computerressourcen, beispielsweise vergleichsweise wenig Speicher- und/oder Prozessorkapazitäten bestimmt werden. Insbesondere kann die optimale Architektur dabei auch auf Steuergeräten, welche vergleichsweise wenig Ressourcen aufweisen, beispielsweise einem Steuergerät eines autonom fahrenden Kraftfahrzeuges bestimmt werden.Thus, a method for training an artificial neural network is provided, which is based on an optimal architecture determined by an improved method for determining an optimal architecture of an artificial neural network. In particular, the method for determining an optimal architecture of an artificial neural network is more efficient and robust compared to known methods for determining an optimal architecture, which are based on only one parameter regarding the accuracy of individual architectures. Because the process is more efficient and robust, the most optimal architecture can be found more quickly and the process can be configured more quickly. Since the method is also based on simple, common algorithms or functions, this optimal architecture can also be determined with comparatively few computer resources, for example comparatively little memory and/or processor capacity. In particular, the optimal architecture can also be determined on control devices that have comparatively few resources, for example a control device of an autonomous motor vehicle.
Die Trainingsdaten können dabei ferner Sensordaten aufweisen.The training data can also include sensor data.
Ein Sensor, welcher auch als Detektor, (Messgrößen- oder Mess-)Aufnehmer oder (Mess-) Fühler bezeichnet wird, ist ein technisches Bauteil, das bestimmte physikalische oder chemische Eigenschaften und/oder die stoffliche Beschaffenheit seiner Umgebung qualitativ oder als Messgröße quantitativ erfassen kann.A sensor, which is also referred to as a detector, (measurement or measuring) sensor or (measuring) sensor, is a technical component that records certain physical or chemical properties and/or the material properties of its environment qualitatively or quantitatively as a measured variable can.
Folglich können Gegebenheiten außerhalb der eigentlichen Datenverarbeitungsanlage, auf welcher das Trainieren des neuronalen Netzes ausgeführt wird, berücksichtigt werden und in das Verfahren mit einfließen.Consequently, circumstances outside the actual data processing system on which the training of the neural network is carried out can be taken into account and incorporated into the method.
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 zum Trainieren eines neuronalen Netzes trainiert wurde.A further embodiment of the invention also provides a method for classifying image data, wherein image data is classified using an artificial neural network, and wherein the artificial neural network was trained using a method for training a neural network 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-level Merkmale konzentriert, zu analysieren.In particular, the method can be used to classify image data, in particular digital image data, based on low-level features, for example 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 künstlichen neuronalen Netz basiert, das basierend auf einer durch ein verbessertes Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes bestimmten optimalen Architektur trainiert wurde. Insbesondere ist das Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes dabei verglichen mit bekannten Verfahren zum Bestimmen einer optimalen Architektur, welche auf lediglich einem Parameter bezüglich der Genauigkeit einzelner Architekturen basieren, effizienter und robuster. Dadurch, dass das Verfahren effizienter und robuster ist, kann die insgesamt optimalste Architektur zudem schneller gefunden werden beziehungsweise konfiguriert das Verfahren schneller. Da das Verfahren zudem auf einfachen, gebräuchlichen Algorithmen beziehungsweise Funktionen basiert, kann diese optimale Architektur zudem mit vergleichsweise wenig Computerressourcen, beispielsweise vergleichsweise wenig Speicher- und/oder Prozessorkapazitäten bestimmt werden. Insbesondere kann die optimale Architektur dabei auch auf Steuergeräten, welche vergleichsweise wenig Ressourcen aufweisen, beispielsweise einem Steuergerät eines autonom fahrenden Kraftfahrzeuges bestimmt werden.Overall, a method for classifying image data is therefore specified, which is based on an artificial neural network that has been trained based on an optimal architecture determined by an improved method for determining an optimal architecture of an artificial neural network. In particular, the method for determining an optimal architecture of an artificial neural network is more efficient and robust compared to known methods for determining an optimal architecture, which are based on only one parameter regarding the accuracy of individual architectures. Because the process is more efficient and robust, the most optimal architecture can be found more quickly and the process can be configured more quickly. Since the procedure is also based on simple, common ones Based on algorithms or functions, this optimal architecture can also be determined with comparatively few computer resources, for example comparatively little memory and/or processor capacity. In particular, the optimal architecture can also be determined on control devices that have comparatively few resources, for example a control device of an autonomous motor vehicle.
Mit einer weiteren Ausführungsform der Erfindung wird weiter auch ein Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes, wobei das Steuergerät eine erste Bestimmungseinheit, welche ausgebildet ist, für jede Architektur aus einer Menge an möglichen Architekturen des künstlichen neuronalen Netzes jeweils eine Unsicherheit für die entsprechende Architektur durch Bestimmen einer Ähnlichkeit der entsprechenden Architektur zu wenigstens einer bekannten Architektur zu bestimmen, und eine zweite Bestimmungseinheit, welche ausgebildet ist, eine für das künstliche neuronale Netz optimale Architektur aus der Menge an möglichen Architekturen unter Verwendung einer Nutzenfunktion basierend auf den Unsicherheiten der Architekturen aus der Menge an möglichen Architekturen zu bestimmen.With a further embodiment of the invention, a control device for determining an optimal architecture of an artificial neural network is also provided, the control device having a first determination unit which is designed to determine an uncertainty for each architecture from a set of possible architectures of the artificial neural network to determine a corresponding architecture by determining a similarity of the corresponding architecture to at least one known architecture, and a second determination unit which is designed to determine an architecture that is optimal for the artificial neural network from the set of possible architectures using a utility function based on the uncertainties of the architectures from the set of possible architectures.
Somit wird ein verbessertes Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes angegeben. Insbesondere wird ein Steuergerät angegeben, welches derart ausgebildet ist, dass die Bestimmung der optimalen Architektur verglichen mit bekannten Verfahren zum Bestimmen einer optimalen Architektur, welche auf lediglich einem Parameter bezüglich der Genauigkeit einzelner Architekturen basieren, effizienter und robuster ist. Dadurch, dass die Bestimmung der optimalen Architektur effizienter und robuster ist, kann die insgesamt optimalste Architektur zudem schneller gefunden werden beziehungsweise konfiguriert das Verfahren schneller. Da die Bestimmung der optimalen Architektur zudem auf einfachen, gebräuchlichen Algorithmen beziehungsweise Funktionen basiert, kann diese optimale Architektur zudem mit vergleichsweise wenig Computerressourcen, beispielsweise vergleichsweise wenig Speicher- und/oder Prozessorkapazitäten bestimmt werden. Insbesondere kann die optimale Architektur dabei auch auf Steuergeräten, welche vergleichsweise wenig Ressourcen aufweisen, beispielsweise einem Steuergerät eines autonom fahrenden Kraftfahrzeuges bestimmt werden.An improved control device for determining an optimal architecture of an artificial neural network is thus specified. In particular, a control device is specified which is designed such that the determination of the optimal architecture is more efficient and robust compared to known methods for determining an optimal architecture, which are based on only one parameter regarding the accuracy of individual architectures. Because the determination of the optimal architecture is more efficient and robust, the overall most optimal architecture can also be found more quickly or the process can be configured more quickly. Since the determination of the optimal architecture is also based on simple, common algorithms or functions, this optimal architecture can also be determined with comparatively few computer resources, for example comparatively little memory and/or processor capacity. In particular, the optimal architecture can also be determined on control devices that have comparatively few resources, for example a control device of an autonomous motor vehicle.
Dabei kann die erste Bestimmungseinheit ausgebildet sein, für jede Architektur aus der Menge an möglichen Architekturen die Unsicherheit der entsprechenden Architektur durch Anwenden eines Algorithmus des maschinellen Lernens, welcher trainiert ist, Architekturen mit ähnlicher Performanz zu identifizieren, zu bestimmen. Dass der Algorithmus des maschinellen Lernens dabei trainiert ist, Architekturen mit einer ähnlichen Performanz zu identifizieren, bedeutet dabei wiederum insbesondere, dass der Algorithmus des maschinellen Lernens trainiert ist, bei der Bestimmung der Unsicherheit einer Architektur nicht nur jeweils die Unsicherheiten einzelner Aspekte der entsprechenden Architektur sondern auch Abhängigkeiten beziehungsweise Interaktionen zwischen einzelnen dieser Aspekte zu berücksichtigten. Insgesamt kann somit die Bestimmung der optimalen Architektur des neuronalen Netzes noch weiter optimiert werden.The first determination unit can be designed to determine the uncertainty of the corresponding architecture for each architecture from the set of possible architectures by using a machine learning algorithm that is trained to identify architectures with similar performance. The fact that the machine learning algorithm is trained to identify architectures with a similar performance means in particular that the machine learning algorithm is trained to determine the uncertainty of an architecture not only the uncertainties of individual aspects of the corresponding architecture but also Dependencies or interactions between individual aspects must also be taken into account. Overall, the determination of the optimal architecture of the neural network can be further optimized.
Zudem kann die erste Bestimmungseinheit auch ausgebildet sein, für jede Architektur aus der Menge an möglichen Architekturen die Unsicherheit der entsprechenden Architektur basierend auf einem Meta-Learning-Algorithmus zu bestimmen. Dass bei der Bestimmung der optimalen Architektur bereits bekannte Daten berücksichtigt werden, hat den Vorteil, dass die zum Auffinden der optimalen Architektur benötigte Zeit weiter verkürzt und die hierzu benötigten Computerressourcen weiter verringert werden können.In addition, the first determination unit can also be designed to determine the uncertainty of the corresponding architecture for each architecture from the set of possible architectures based on a meta-learning algorithm. The fact that already known data is taken into account when determining the optimal architecture has the advantage that the time required to find the optimal architecture can be further shortened and the computer resources required for this can be further reduced.
Mit einer weiteren Ausführungsform der Erfindung wird außerdem auch ein Steuergerät zum Trainieren eines künstlichen neuronalen Netzes angegeben, wobei das Steuergerät eine erste Bereitstellungseinheit, welche ausgebildet ist, Trainingsdaten bereitzustellen, eine zweite Bereitstellungseinheit, welche ausgebildet ist, eine optimale Architektur für das künstliche neuronale Netz bereitzustellen, wobei die optimale Architektur durch ein obenstehend beschriebenes Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes bestimmt wurde, und eine Trainingseinheit, welche ausgebildet ist, das künstliche neuronale Netz basierend auf den Trainingsdaten und der optimalen Architektur für das künstliche neuronale Netz zu trainieren, aufweist.With a further embodiment of the invention, a control device for training an artificial neural network is also specified, wherein the control device has a first provision unit, which is designed to provide training data, a second provision unit, which is designed to provide an optimal architecture for the artificial neural network , wherein the optimal architecture was determined by a control device described above for determining an optimal architecture of an artificial neural network, and a training unit which is designed to train the artificial neural network based on the training data and the optimal architecture for the artificial neural network, having.
Somit wird ein Steuergerät zum Trainieren eines künstlichen neuronalen Netzes angegeben, welches auf einer durch ein verbessertes Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes bestimmten optimalen Architektur basiert. Insbesondere ist die Bestimmung der optimalen Architektur durch das Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes dabei verglichen mit bekannten Verfahren zum Bestimmen einer optimalen Architektur, welche auf lediglich einem Parameter bezüglich der Genauigkeit einzelner Architekturen basieren, effizienter und robuster. Dadurch, dass die Bestimmung der optimalen Architektur effizienter und robuster ist, kann die insgesamt optimalste Architektur zudem schneller gefunden werden beziehungsweise konfiguriert das Verfahren schneller. Da die Bestimmung der optimalen Architektur zudem auf einfachen, gebräuchlichen Algorithmen beziehungsweise Funktionen basiert, kann diese optimale Architektur zudem mit vergleichsweise wenig Computerressourcen, beispielsweise vergleichsweise wenig Speicher- und/oder Prozessorkapazitäten bestimmt werden. Insbesondere kann die optimale Architektur dabei auch auf Steuergeräten, welche vergleichsweise wenig Ressourcen aufweisen, beispielsweise einem Steuergerät eines autonom fahrenden Kraftfahrzeuges bestimmt werdenA control device for training an artificial neural network is thus specified, which is based on an optimal architecture determined by an improved control device for determining an optimal architecture of an artificial neural network. In particular, the determination of the optimal architecture by the control device for determining an optimal architecture of an artificial neural network is more efficient and robust compared to known methods for determining an optimal architecture, which are based on only one parameter regarding the accuracy of individual architectures. By making the determination of the optimal architecture more efficient and robust, the overall most optimal one can be achieved Architecture can also be found more quickly and the process can be configured more quickly. Since the determination of the optimal architecture is also based on simple, common algorithms or functions, this optimal architecture can also be determined with comparatively few computer resources, for example comparatively little memory and/or processor capacity. In particular, the optimal architecture can also be determined on control devices that have comparatively few resources, for example a control device of an autonomous motor vehicle
Die Trainingsdaten können dabei ferner wiederum Sensordaten aufweisen. Folglich können Gegebenheiten außerhalb der eigentlichen Datenverarbeitungsanlage, auf welcher das Trainieren des künstlichen neuronalen Netzes ausgeführt wird, berücksichtigt werden und in das Verfahren mit einfließen.The training data can also include sensor data. Consequently, circumstances outside the actual data processing system on which the training of the artificial neural network is carried out can be taken into account and incorporated into the method.
Mit einer weiteren Ausführungsform der Erfindung wird ferner auch ein Steuergerät zum Klassifizieren von Bilddaten angegeben, wobei das Steuergerät eine Bereitstellungseinheit, welche ausgebildet ist, ein trainiertes künstliches neuronales Netz bereitzustellen, wobei das künstliche neuronale Netz durch ein obenstehend beschriebenes Steuergerät zum Trainieren eines künstlichen neuronalen Netzes trainiert wurde, und eine Steuereinheit, welche ausgebildet ist, Bilddaten basierend auf dem künstlichen neuronalen Netz zu klassifizieren, aufweist.With a further embodiment of the invention, a control device for classifying image data is also specified, wherein the control device is a provision unit which is designed to provide a trained artificial neural network, the artificial neural network being controlled by a control device described above for training an artificial neural network was trained, and has a control unit which is designed to classify image data based on the artificial neural network.
Insbesondere kann das Steuergerät dabei wiederum 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-level Merkmale konzentriert, zu analysieren.In particular, the control device can in turn be used to classify image data, in particular digital image data, based on low-level features, for example 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 Steuergerät zum Klassifizieren von Bilddaten angegeben, welches auf einem neuronalen Netz basiert, das basierend auf einer durch ein verbessertes Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes bestimmten optimalen Architektur trainiert wurde. Insbesondere ist die Bestimmung der optimalen Architektur durch das Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes dabei verglichen mit bekannten Verfahren zum Bestimmen einer optimalen Architektur, welche auf lediglich einem Parameter bezüglich der Genauigkeit einzelner Architekturen basieren, effizienter und robuster. Dadurch, dass die Bestimmung der optimalen Architektur effizienter und robuster ist, kann die insgesamt optimalste Architektur zudem schneller gefunden werden beziehungsweise konfiguriert das Verfahren schneller. Da die Bestimmung der optimalen Architektur zudem auf einfachen, gebräuchlichen Algorithmen beziehungsweise Funktionen basiert, kann diese optimale Architektur zudem mit vergleichsweise wenig Computerressourcen, beispielsweise vergleichsweise wenig Speicher- und/oder Prozessorkapazitäten bestimmt werden. Insbesondere kann die optimale Architektur dabei auch auf Steuergeräten, welche vergleichsweise wenig Ressourcen aufweisen, beispielsweise einem Steuergerät eines autonom fahrenden Kraftfahrzeuges bestimmt werden.Overall, a control device for classifying image data is thus specified, which is based on a neural network that was trained based on an optimal architecture determined by an improved control device for determining an optimal architecture of an artificial neural network. In particular, the determination of the optimal architecture by the control device for determining an optimal architecture of an artificial neural network is more efficient and robust compared to known methods for determining an optimal architecture, which are based on only one parameter regarding the accuracy of individual architectures. Because the determination of the optimal architecture is more efficient and robust, the overall most optimal architecture can also be found more quickly or the process can be configured more quickly. Since the determination of the optimal architecture is also based on simple, common algorithms or functions, this optimal architecture can also be determined with comparatively few computer resources, for example comparatively little memory and/or processor capacity. In particular, the optimal architecture can also be determined on control devices that have comparatively few resources, for example a control device of an autonomous motor vehicle.
Mit einer weiteren Ausführungsform der Erfindung wird zudem auch ein Computerprogramm mit Programmcode, um ein obenstehend beschriebenes Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird, angegeben.A further embodiment of the invention also provides a computer program with program code for carrying out a method described above for determining an optimal architecture of an artificial neural network when the computer program is executed on a computer.
Mit einer weiteren Ausführungsform der Erfindung wird außerdem auch ein computerlesbarer Datenträger mit Programmcode eines Computerprogramms, um ein obenstehend beschriebenes Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird, angegeben.A further embodiment of the invention also provides a computer-readable data carrier with program code of a computer program in order to carry out a method described above for determining an optimal architecture of an artificial neural network when the computer program is executed on a computer.
Das Computerprogramm und der computerlesbare Datenträger haben dabei jeweils den Vorteil, dass diese ausgebildet sind, ein verbessertes Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes auszuführen. Insbesondere hat das Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes den Vorteil, dass das Verfahren verglichen mit bekannten Verfahren zum Bestimmen einer optimalen Architektur, welche auf lediglich einem Parameter bezüglich der Genauigkeit einzelner Architekturen basieren, effizienter und robuster ist. Dadurch, dass das Verfahren effizienter und robuster ist, kann die insgesamt optimalste Architektur zudem schneller gefunden werden beziehungsweise konfiguriert das Verfahren schneller. Da das Verfahren zudem auf einfachen, gebräuchlichen Algorithmen beziehungsweise Funktionen basiert, kann diese optimale Architektur zudem mit vergleichsweise wenig Computerressourcen, beispielsweise vergleichsweise wenig Speicher- und/oder Prozessorkapazitäten bestimmt werden. Insbesondere kann die optimale Architektur dabei auch auf Steuergeräten, welche vergleichsweise wenig Ressourcen aufweisen, beispielsweise einem Steuergerät eines autonom fahrenden Kraftfahrzeuges bestimmt werden.The computer program and the computer-readable data carrier each have the advantage that they are designed to carry out an improved method for determining an optimal architecture of an artificial neural network. In particular, the method for determining an optimal architecture of an artificial neural network has the advantage that the method is more efficient and robust compared to known methods for determining an optimal architecture, which are based on only one parameter regarding the accuracy of individual architectures. Because the process is more efficient and robust, the most optimal architecture can be found more quickly and the process can be configured more quickly. Since the method is also based on simple, common algorithms or functions, this optimal architecture can also be determined with comparatively few computer resources, for example comparatively little memory and/or processor capacity. In particular, the optimal architecture can also be determined on control devices that have comparatively few resources, for example a control device of an autonomously driving motor vehicle.
Zusammenfassend ist festzustellen, dass mit der vorliegenden Erfindung ein Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes angegeben wird, mit welchem schnell und mit geringem Ressourcenverbrauch eine optimale Architektur für ein künstliches neuronales Netz bestimmt werden kann.In summary, it should be noted that the present invention provides a method for determining an optimal architecture of an artificial neural network, with which an optimal architecture for an artificial neural network can be determined quickly and with low resource consumption.
Die beschriebenen Ausgestaltungen und Weiterbildungen lassen sich beliebig miteinander kombinieren.The configurations and further 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 Merkmalen der Erfindung.Further possible refinements, further developments and implementations of the invention also include combinations of features of the invention described previously or below with regard to the exemplary embodiments that are not explicitly mentioned.
Kurze Beschreibung der ZeichnungenBrief description of the drawings
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 further understanding of embodiments of the invention. They illustrate embodiments and, in connection 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 arise with regard to the drawings. The illustrated elements of the drawings are not necessarily shown to scale to one another.
Es zeigen:
-
1 ein Flussidagramm eines Verfahrens zum Trainieren eines künstlichen neuronalen Netzes gemäß Ausführungsformen der Erfindung; und -
2 ein schematisches Blockschaltbild eines Systems zum Trainieren eines künstlichen neuronalen Netzes gemäß Ausführungsformen der Erfindung.
-
1 a flowchart of a method for training an artificial neural network according to embodiments of the invention; and -
2 a schematic block diagram of a system for training an artificial neural network 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 numerals designate the same or functionally identical elements, parts or components, unless otherwise stated.
Algorithmen des maschinellen Lernens basieren darauf, dass Verfahren der Statistik verwendet werden, um eine Datenverarbeitungsanlage derart zu trainieren, dass diese eine bestimmte Aufgabe ausführen kann, ohne dass diese ursprünglich explizit hierzu programmiert wurde. Das Ziel des maschinellen Lernens besteht dabei darin, Algorithmen zu konstruieren, die aus Daten lernen und Vorhersagen treffen können. Diese Algorithmen erstellen mathematische Modelle, mit denen beispielsweise Daten klassifiziert werden können.Machine learning algorithms are based on the fact that statistical methods are used to train a data processing system so that it can carry out a specific task without it having originally been explicitly programmed 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 künstliche 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 allow unknown system behavior to be learned from existing training data and then the learned system behavior to be applied to unknown input variables. The neural network consists of layers with idealized neurons, which are connected to each other in different ways according to a topology of the network. The first layer, which is also referred to as the input layer, records and transmits the input values, whereby the number of neurons in the input layer corresponds to the number of input signals that are to be processed. The last layer is also called the output layer and has as many neurons as the number of output values to be provided. Between the input layer and the output layer there is also at least one intermediate layer, which is often referred to as a hidden layer, whereby the number of intermediate layers and the number and/or type of neurons in these layers depend on the specific task carried out by the artificial neural network is to be solved.
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.However, the development of the architecture of the artificial neural network, that is to say the determination of the appearance of the network or the number of layers in the network as well as the determination of the number and/or type of neurons in the individual layers, is usually very complex, especially 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 first puts together an architecture for the artificial neural network from various building blocks 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 that is likely to be more optimal in terms of performance can then be determined, which in turn is then trained based on the training data, and the results obtained are then evaluated again with regard to performance. These steps can be repeated as often as necessary until No improvement can be achieved through changes to the architecture.
Dass dabei für jede Architektur aus einer Menge an möglichen Architekturen des neuronalen Netzes jeweils eine Ähnlichkeit der Architektur zu wenigstens einer bekannten Architektur bestimmt wird hat den Vorteil, dass für jeden Teil beziehungsweise Aspekt der einzelnen Architekturen jeweils geprüft werden kann, ob dieser bekannt oder unbekannt, das heißt mit einer gewissen Unsicherheit verbunden ist, wobei die Unsicherheit für eine Architektur die Unsicherheiten aller Teile beziehungsweise Aspekte der entsprechenden Architektur umfassen kann, wobei ein Aspekt beispielsweise die Anzahl der Schichten oder die Anzahl von Neuronen in einzelnen Schichten sein kann.The fact that for each architecture from a set of possible architectures of the neural network a similarity of the architecture to at least one known architecture is determined has the advantage that for each part or aspect of the individual architectures it can be checked whether it is known or unknown. that is, is associated with a certain uncertainty, whereby the uncertainty for an architecture can include the uncertainties of all parts or aspects of the corresponding architecture, whereby an aspect can be, for example, the number of layers or the number of neurons in individual layers.
Dies hat den Vorteil, dass das Verfahren verglichen mit bekannten Verfahren zum Bestimmen einer optimalen Architektur, welche auf lediglich einem Parameter bezüglich der Genauigkeit einzelner Architekturen basieren, effizienter und robuster ist.This has the advantage that the method is more efficient and robust compared to known methods for determining an optimal architecture, which are based on only one parameter regarding the accuracy of individual architectures.
Dadurch, dass das Verfahren 1 effizienter und robuster ist, kann die insgesamt optimalste Architektur zudem schneller gefunden werden beziehungsweise konfiguriert das Verfahren 1 schneller. Da das Verfahren 1 zudem auf einfachen, gebräuchlichen Algorithmen beziehungsweise Funktionen basiert, kann diese optimale Architektur mit vergleichsweise wenig Computerressourcen, beispielsweise vergleichsweise wenig Speicher- und/oder Prozessorkapazitäten bestimmt werden. Insbesondere kann die optimale Architektur dabei auch auf Steuergeräten, welche vergleichsweise wenig Ressourcen aufweisen, beispielsweise einem Steuergerät eines autonom fahrenden Kraftfahrzeuges bestimmt werden.Because method 1 is more efficient and robust, the overall most optimal architecture can also be found more quickly and method 1 can be configured more quickly. Since method 1 is also based on simple, common algorithms or functions, this optimal architecture can be determined with comparatively few computer resources, for example comparatively little memory and/or processor capacity. In particular, the optimal architecture can also be determined on control devices that have comparatively few resources, for example a control device of an autonomous motor vehicle.
Insgesamt wird somit ein verbessertes Verfahren zum Bestimmen einer optimalen Architektur eines neuronalen Netzes angegeben.Overall, an improved method for determining an optimal architecture of a neural network is thus specified.
Insbesondere zeigt
Die Ähnlichkeit kann dabei insbesondere durch Anwendung einer Kernel Funktion, beispielsweise einem Gauss-Kernel wie einem Squared Exponential Kernel oder einem Matern-Kernel bestimmt werden.The similarity can be determined in particular by using a kernel function, for example a Gaussian kernel such as a squared exponential kernel or a Matern kernel.
Gemäß den Ausführungsformen der
Bei dem Algorithmus des maschinellen Lernens kann es sich dabei insbesondere um ein trainierbares künstliches neuronales Netz handeln, wobei die Ähnlichkeit insbesondere durch Anwendung eines durch einen Deep-Kernel-Learning-Algorithmus trainierten Kernel, beispielsweise einem tiefen beziehungsweise deep Gauss-Kernel bestimmt werden kann.The machine learning algorithm can in particular be a trainable artificial neural network, wherein the similarity can be determined in particular by using a kernel trained by a deep kernel learning algorithm, for example a deep Gaussian kernel.
Gemäß den Ausführungsformen der
Insbesondere kann dabei ein tiefer beziehungsweise deep Gauss-Kernel basierend auf Eigenschaften beziehungsweise Meta-Features des die entsprechende Architektur beschreibenden Datensatzes konditioniert werden.In particular, a deep Gaussian kernel can be conditioned based on properties or meta-features of the data set describing the corresponding architecture.
Wie
Dabei kann das Verfahren 1 gegebenenfalls wiederholt ausgeführt werden, bis sich keine Verbesserung mehr einstellt und eine insgesamt optimalste Architektur gefunden wurde.If necessary, procedure 1 can be carried out repeatedly until there are no verbs The solution is set more and an overall most optimal architecture has been found.
Bei den Trainingsdaten kann es sich zudem insbesondere wiederum um Sensordaten handeln.The training data can also in particular be sensor data.
Dabei kann das künstliche neuronale Netz in Schritt 5 insbesondere basierend auf entsprechenden gelabelten Vergleichsdaten trainiert werden, Bilddaten zu klassifizieren. Ferner kann das künstliche neuronale Netz aber beispielsweise auch trainiert werden, um eine Funktion eines autonom fahrenden Kraftfahrzeuges zu steuern, wobei das autonom fahrende Kraftfahrzeug anschließend basierend auf dem entsprechend trainierten künstlichen neuronalen Netz gesteuert werden kann.The artificial neural network can be trained in step 5 to classify image data, in particular based on corresponding labeled comparison data. Furthermore, the artificial neural network can also be trained, for example, to control a function of an autonomously driving motor vehicle, wherein the autonomously driving motor vehicle can then be controlled based on the correspondingly trained artificial neural network.
Wie
Gemäß den Ausführungsformen der
Die erste Bestimmungseinheit und die zweite Bestimmungseinheit können dabei jeweils beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The first determination unit and the second determination unit can each be implemented, for example, based on a code stored in a memory and executable by a processor.
Gemäß den Ausführungsformen der
Gemäß den Ausführungsformen der
Wie
Bei der ersten Bereitstellungseinheit kann es sich dabei insbesondere um einen Empfänger handeln, welcher ausgebildet ist, Sensordaten zu empfangen. Bei der zweiten Bereitstellungseinheit kann es sich dabei auch um einen Empfänger handeln. Die Trainingseinheit kann ferner beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The first provision unit can in particular be a receiver which is designed to receive sensor data. The second provision unit can also be a recipient. The training unit can also be implemented, for example, based on code stored in a memory and executable by a processor.
Bei den Trainingsdaten handelt es sich ferner wiederum um Sensordaten.The training data is also sensor data.
Zudem ist das Steuergerät zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes 11 ausgebildet, ein obenstehend beschriebenes Verfahren zum Bestimmen einer optimalen Architektur eines künstlichen neuronalen Netzes auszuführen und ist das Steuergerät zum Trainieren eines künstlichen neuronalen Netzes ausgebildet, ein obenstehend beschriebenes Verfahren zum Trainieren eines künstlichen neuronalen Netzes auszuführen.In addition, the control device for determining an optimal architecture of an artificial
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 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 PatentliteraturCited patent literature
- EP 3629246 A1 [0005]EP 3629246 A1 [0005]
Claims (14)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022206892.0A DE102022206892A1 (en) | 2022-07-06 | 2022-07-06 | Method for determining an optimal architecture of an artificial neural network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022206892.0A DE102022206892A1 (en) | 2022-07-06 | 2022-07-06 | Method for determining an optimal architecture of an artificial neural network |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022206892A1 true DE102022206892A1 (en) | 2024-01-11 |
Family
ID=89386996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022206892.0A Pending DE102022206892A1 (en) | 2022-07-06 | 2022-07-06 | Method for determining an optimal architecture of an artificial neural network |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102022206892A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3629246A1 (en) | 2018-09-27 | 2020-04-01 | Swisscom AG | Systems and methods for neural architecture search |
-
2022
- 2022-07-06 DE DE102022206892.0A patent/DE102022206892A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3629246A1 (en) | 2018-09-27 | 2020-04-01 | Swisscom AG | Systems and methods for neural architecture search |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112017005651T5 (en) | Device for classifying data | |
DE102019124018A1 (en) | Method for optimizing tests of control systems for automated vehicle dynamics systems | |
DE102018220941A1 (en) | Evaluation of measured variables with AI modules taking into account measurement uncertainties | |
DE102019217300A1 (en) | Method for training an artificial neural network, computer program, storage medium, device, artificial neural network and application of the artificial neural network | |
DE102021204040A1 (en) | Method, device and computer program for creating training data in the vehicle | |
EP3973466A1 (en) | Method for making a neural network more robust in a function-specific manner | |
DE102022206892A1 (en) | Method for determining an optimal architecture of an artificial neural network | |
DE102022208384A1 (en) | Method for determining a quality condition of a test object | |
DE102019213061A1 (en) | Classification of AI modules | |
DE202022103792U1 (en) | Device for determining an optimal architecture of an artificial neural network | |
DE102019207575A1 (en) | Method for assessing a function-specific robustness of a neural network | |
DE102021133977A1 (en) | Method and system for classifying virtual test scenarios and training methods | |
DE102022207072A1 (en) | Method for determining an optimal architecture of an artificial neural network | |
DE102023200400A1 (en) | Method for training an autoencoder | |
DE102021207275A1 (en) | Method for creating an artificial neural network | |
DE102023204300A1 (en) | Method for determining an optimal architecture of an artificial neural network | |
DE202021103700U1 (en) | Device for generating an artificial neural network | |
DE102022212902A1 (en) | Method for training an artificial neural network | |
DE102022209787A1 (en) | Method for training a Generative Adversarial Network | |
DE102022212455A1 (en) | Method for training a machine learning algorithm | |
DE102021210322A1 (en) | Method for generating a data set for training and/or testing a machine learning algorithm based on an ensemble of data filters | |
DE112010005924T5 (en) | Method and system for passing changes to a master unit to duplicates | |
DE102021207274A1 (en) | Method for training a neural network ensemble | |
DE102023203998A1 (en) | Method for verifying a machine learning algorithm | |
DE102023201104A1 (en) | Method for generating additional training data for training a machine learning algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R012 | Request for examination validly filed |