DE102019214546A1 - Computer-implemented method and device for optimizing an architecture of an artificial neural network - Google Patents
Computer-implemented method and device for optimizing an architecture of an artificial neural network Download PDFInfo
- Publication number
- DE102019214546A1 DE102019214546A1 DE102019214546.9A DE102019214546A DE102019214546A1 DE 102019214546 A1 DE102019214546 A1 DE 102019214546A1 DE 102019214546 A DE102019214546 A DE 102019214546A DE 102019214546 A1 DE102019214546 A1 DE 102019214546A1
- Authority
- DE
- Germany
- Prior art keywords
- neural network
- artificial neural
- architecture
- determined
- depending
- 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.)
- Granted
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 104
- 238000000034 method Methods 0.000 title claims abstract description 26
- 239000002346 layers by function Substances 0.000 claims abstract description 97
- 230000006870 function Effects 0.000 claims abstract description 54
- 239000010410 layer Substances 0.000 claims abstract description 51
- 230000015654 memory Effects 0.000 claims abstract description 48
- 210000002569 neuron Anatomy 0.000 claims abstract description 27
- 238000011176 pooling Methods 0.000 claims abstract description 17
- 230000004913 activation Effects 0.000 claims abstract description 16
- 230000035945 sensitivity Effects 0.000 claims abstract description 10
- 238000012549 training Methods 0.000 claims description 8
- 238000005259 measurement Methods 0.000 claims description 6
- 230000003287 optical effect Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims 4
- 238000001514 detection method Methods 0.000 claims 1
- 230000001133 acceleration Effects 0.000 abstract 1
- 238000004364 calculation method Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000005670 electromagnetic radiation Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000005070 sampling 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
- 238000012432 intermediate storage Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000004044 response Effects 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/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (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)
- Image Analysis (AREA)
Abstract
Vorrichtung und computerimplementiertes Verfahren zur Optimierung einer Architektur eines künstlichen neuronalen Netzwerks, wobei eine Architektur des künstlichen neuronalen Netzwerks vorgegeben wird, in der Rechenoperationen des künstlichen neuronalen Netzwerks in Funktions-Schichten zusammengefasst sind, wobei abhängig von der Architektur ein Kehrwert einer Anzahl von Neuronen des künstlichen neuronalen Netzwerks in einer Ausgangs-Schicht einer der Funktions-Schichten bestimmt wird (202), wobei für diese Funktions-Schicht abhängig von der Architektur ein Faktor abhängig von einer Fenstergröße eines Max-Pooling Fensters in einer der Funktions-Schicht nachfolgenden anderen der Funktions-Schichten bestimmt wird (204), wobei ein Maß für eine Empfindlichkeit der Architektur gegenüber Hardware-Speicherfehlern abhängig von einem Produkt des Kehrwerts mit dem Faktor bestimmt wird (208), wobei überprüft wird, ob das Maß einen Schwellwert unterschreitet (210) und wobei ein Hardware-Beschleuniger (106) mit Neuronen, Verbindungen zwischen Neuronen, Gewichten und/oder Aktivierungsfunktionen konfiguriert wird, die von der Architektur vorgegeben sind, wenn das Maß den Schwellwert unterschreitet (210) und wobei anderenfalls das Maß für eine andere Architektur bestimmt wird.Device and computer-implemented method for optimizing an architecture of an artificial neural network, an architecture of the artificial neural network being specified in which arithmetic operations of the artificial neural network are summarized in functional layers, with a reciprocal of a number of neurons of the artificial neural network depending on the architecture neural network in an output layer of one of the functional layers is determined (202), for this functional layer, depending on the architecture, a factor depending on a window size of a max-pooling window in one of the other functional layers following the functional layer. Layers is determined (204), a measure for a sensitivity of the architecture to hardware memory errors depending on a product of the reciprocal value with the factor is determined (208), it is checked whether the measure falls below a threshold value (210) and where a Hardware acceleration it (106) is configured with neurons, connections between neurons, weights and / or activation functions that are specified by the architecture if the measure falls below the threshold value (210) and otherwise the measure is determined for a different architecture.
Description
Stand der TechnikState of the art
Die Erfindung geht aus von einer Vorrichtung und einem Verfahren zur Optimierung einer Architektur eines künstlichen neuronalen Netzwerks.The invention is based on a device and a method for optimizing an architecture of an artificial neural network.
Wünschenswert ist es, künstliche neuronale Netzwerke bereitzustellen, die insbesondere gegenüber zufälligen Hardware-Speicherfehlern robust sind. Zufällige Hardware-Speicherfehler sind beispielsweise Bit-Flip Fehler, die durch eine auf einen Speicher einwirkende elektromagnetische Strahlung ausgelöst werden. Eine Bewertung einer Architektur eines künstlichen neuronalen Netzwerks mit einer Vielzahl Neuronen gegenüber derartigen Fehlern ist jedoch schwer darzustellen.It is desirable to provide artificial neural networks that are particularly robust against random hardware memory errors. Random hardware memory errors are, for example, bit-flip errors that are triggered by electromagnetic radiation acting on a memory. However, an assessment of an architecture of an artificial neural network with a large number of neurons against such errors is difficult to represent.
Offenbarung der ErfindungDisclosure of the invention
Die Vorrichtung und das Verfahren gemäß der unabhängigen Ansprüche ermöglicht eine besonders gute Bewertung der Robustheit der Architektur künstlicher neuronaler Netzwerke gegenüber zufälligen Hardware-Speicherfehlern. Damit ist eine Optimierung einer Architektur des künstlichen neuronalen Netzwerks besonders effizient möglich.The device and the method according to the independent claims enable a particularly good assessment of the robustness of the architecture of artificial neural networks with respect to random hardware memory errors. Optimization of an architecture of the artificial neural network is thus possible in a particularly efficient manner.
In einem computerimplementierten Verfahren zur Optimierung einer Architektur eines künstlichen neuronalen Netzwerks wird eine Architektur des künstlichen neuronalen Netzwerks vorgegeben, in der Rechenoperationen des künstlichen neuronalen Netzwerks in Funktions-Schichten zusammengefasst sind, wobei abhängig von der Architektur ein Kehrwert einer Anzahl von Neuronen des künstlichen neuronalen Netzwerks in einer Ausgangs-Schicht einer der Funktions-Schichten bestimmt wird, wobei für diese Funktions-Schicht abhängig von der Architektur ein Faktor abhängig von einer Fenstergröße eines Max-Pooling Fensters in einer der Funktions-Schicht nachfolgenden anderen der Funktions-Schichten bestimmt wird, wobei ein Maß für eine Empfindlichkeit der Architektur gegenüber Hardware-Speicherfehlern abhängig von einem Produkt des Kehrwerts mit dem Faktor bestimmt wird, wobei überprüft wird, ob das Maß einen Schwellwert unterschreitet und wobei ein Hardware-Beschleuniger mit Neuronen, Verbindungen zwischen Neuronen, Gewichten und/oder Aktivierungsfunktionen konfiguriert wird, die von der Architektur vorgegeben sind, wenn das Maß den Schwellwert unterschreitet und wobei anderenfalls das Maß für eine andere Architektur bestimmt wird. Dieses Maß stellt eine Kenngröße für die Robustheit des künstlichen neuronalen Netzwerks dar. Eine Funktions-Schicht ist hier beispielsweise, anders als in typischen Deep Learning Software Tools, folgendermaßen definiert: Eine Funktions-Schicht beinhaltet alle Rechenoperationen die ein dedizierter Deep Neural Network Hardware-Beschleuniger nacheinander durchführen kann, bevor das Ergebnis in einer Output Feature Map für die Berechnung durch die nächste Funktions-Schicht in einem Speicher abgelegt wird. Die Rechenoperationen sind beispielsweise die Teilrechenoperationen für einen Convolutional-Layer, einen Pooling-Layer, eine batch normalization, oder eine activation function. Der Speicher ist im Beispiel ein Hardware-Speicher. Die letzte Teilrechenoperation der Funktions-Schicht liefert hierbei ein Ergebnis in der Ausgangs-Schicht. Für den Hardware-Speicher wird beispielsweise eine konstante und gleichverteilte Bit-Flip Wahrscheinlichkeit für den Hardware-Speichers zugrunde gelegt. Die Bit-Flip Wahrscheinlichkeit gibt an, mit welcher Wahrscheinlichkeit ein Bit im Speicher seinen Wert z.B. in Reaktion auf äußere Einflüsse ändert. Das Maß wird für eine Berechnung einer optimierten Architektur für ein künstliches neuronales Netzwerk eingesetzt. Dieses Maß stellt eine hinsichtlich der Rechenzeit und Rechenressourcen günstig auszuwertenden Kenngröße der Architektur dar. Die Kenngröße ermöglicht es, die Robustheit neuronaler Netze gegenüber Bit-Flip Fehlern zu bewerten und durch die diesbezügliche Optimierung der Architektur zu erhöhen. Um die Robustheit zu maximieren wird insbesondere die Fehlersensitivität der Architektur dadurch minimiert, dass der Schwellwert von der Architektur unterschritten wird, die im Speicher implementiert wird. Dadurch wird ein optimiertes künstliches neuronales Netzwerk automatisiert erzeugt.In a computer-implemented method for optimizing an architecture of an artificial neural network, an architecture of the artificial neural network is specified in which arithmetic operations of the artificial neural network are summarized in functional layers, a reciprocal of a number of neurons of the artificial neural network depending on the architecture one of the functional layers is determined in an output layer, a factor being determined for this functional layer depending on the architecture depending on a window size of a max-pooling window in one of the other functional layers following the functional layer, wherein a measure for a sensitivity of the architecture to hardware memory errors depending on a product of the reciprocal value with the factor is determined, whereby it is checked whether the measure falls below a threshold value and wherein a hardware accelerator with neurons, connections between Neurons, weights and / or activation functions is configured, which are specified by the architecture, if the measure falls below the threshold value and otherwise the measure is determined for a different architecture. This measure represents a parameter for the robustness of the artificial neural network. For example, a functional layer is defined as follows, unlike in typical deep learning software tools: A functional layer contains all computing operations that a dedicated deep neural network hardware accelerator can be carried out one after the other before the result is stored in an output feature map for calculation by the next functional layer in a memory. The arithmetic operations are, for example, the partial arithmetic operations for a convolutional layer, a pooling layer, a batch normalization, or an activation function. In the example, the memory is a hardware memory. The last sub-arithmetic operation of the functional layer provides a result in the output layer. For the hardware memory, for example, a constant and uniformly distributed bit flip probability is used as the basis for the hardware memory. The bit flip probability indicates the probability with which a bit in the memory changes its value, e.g. in response to external influences. The measure is used to calculate an optimized architecture for an artificial neural network. This measure represents a parameter of the architecture that can be evaluated favorably in terms of computing time and computing resources. The parameter makes it possible to evaluate the robustness of neural networks against bit-flip errors and to increase it by optimizing the architecture in this regard. In order to maximize the robustness, in particular the error sensitivity of the architecture is minimized in that the architecture that is implemented in the memory falls below the threshold value. This automatically generates an optimized artificial neural network.
In einem Aspekt wird der Faktor für die Funktions-Schicht abhängig von einem insbesondere arithmetischen Mittelwert der individuellen Fenstergrößen von Max-Pooling Fenstern für eine Mehrzahl der nachfolgenden anderen der Funktions-Schichten bestimmt. Dies ermöglicht eine besonders effiziente Berechnung für komplexere Architekturen.In one aspect, the factor for the functional layer is determined as a function of an in particular arithmetic mean value of the individual window sizes of max pooling windows for a plurality of the other subsequent functional layers. This enables a particularly efficient calculation for more complex architectures.
In einem Aspekt wird abhängig vom Maß eine Architektur für das künstliche neuronale Netzwerk aus einer Mehrzahl Architekturen für das künstliche neuronale Netzwerk ausgewählt. Das Maß kann beispielsweise in einer Kostenfunktion für ein Sampeln von Architekturen zur Bewertung eingesetzt werden, wobei die Architektur ausgewählt wird, die die Kostenfunktion minimiert.In one aspect, depending on the degree, an architecture for the artificial neural network is selected from a plurality of architectures for the artificial neural network. The measure can be used, for example, in a cost function for sampling architectures for evaluation, the architecture being selected which minimizes the cost function.
Bevorzugt wird eine Architektur für das künstliche neuronale Netzwerk bestimmt, die eine Kostenfunktion minimiert, wobei die Kostenfunktion abhängig vom Maß definiert ist.An architecture is preferably determined for the artificial neural network which minimizes a cost function, the cost function being defined as a function of the measure.
Vorzugweise ist die Kostenfunktion abhängig von einer Anzahl Rechenoperationen oder einer Anzahl benötigter Speichertransfers für eine Bestimmung eines Ergebnisses durch den Hardware-Beschleuniger
In einem Aspekt definiert die Architektur ein künstliches neuronales Netzwerk zur Erkennung oder Klassifikation von Objekten abhängig von Sensordaten, insbesondere von Videodaten, Daten zur optischen Abstands- oder Geschwindigkeitsmessung oder Radardaten, wobei abhängig von den Sensordaten eine Eingangsgröße für das künstliche neuronale Netzwerk bestimmt wird, wobei abhängig von einem Ausgangssignal des künstlichen neuronalen Netzwerks ein Ansteuersignal zum Ansteuern eines wenigstens teilautonomen Roboters, eines zumindest teilweise autonomen Fahrzeugs, eines Aktuators, einer Maschine, eines Haushaltsgeräts oder eines Heimwerkgeräts bestimmt wird.In one aspect, the architecture defines an artificial neural network for recognizing or classifying objects as a function of sensor data, in particular video data, data for optical distance or speed measurement or radar data, an input variable for the artificial neural network being determined as a function of the sensor data, whereby depending on an output signal of the artificial neural network, a control signal for controlling an at least partially autonomous robot, an at least partially autonomous vehicle, an actuator, a machine, a household appliance or a do-it-yourself device is determined.
In einem Aspekt definiert die Architektur ein künstliches neuronales Netzwerk zur Erkennung oder Klassifikation von Objekten abhängig von Sensordaten, insbesondere von Videodaten oder Radardaten, wobei abhängig von Sensordaten ein Eingangsgröße für das künstliche neuronale Netzwerk bestimmt wird, wobei abhängig von einem Ausgangssignal des künstlichen neuronalen Netzwerks eine Information über einen Fußgänger und/oder ein Verkehrsschild und/oder ein Fahrzeug und/oder deren Position relativ zueinander bestimmt wird.In one aspect, the architecture defines an artificial neural network for recognizing or classifying objects as a function of sensor data, in particular video data or radar data, an input variable for the artificial neural network being determined as a function of sensor data Information about a pedestrian and / or a traffic sign and / or a vehicle and / or their position relative to one another is determined.
In einem Aspekt definiert die Architektur ein künstliches neuronales Netzwerk zur Segmentierung von Sensordaten, insbesondere von Videodaten, von Daten zur optischen Abstands- oder Geschwindigkeitsmessung oder von Radardaten definiert, wobei abhängig von den Sensordaten eine Eingangsgröße für das künstliche neuronale Netzwerk bestimmt wird, wobei abhängig von einem Ausgangssignal des künstlichen neuronalen Netzwerks segmentierte Sensordaten bestimmt werden.In one aspect, the architecture defines an artificial neural network for segmenting sensor data, in particular video data, data for optical distance or speed measurement or radar data, an input variable for the artificial neural network being determined as a function of the sensor data, depending on segmented sensor data are determined from an output signal of the artificial neural network.
Vorzugsweise wird in einer ersten Phase eine Architektur für das künstliche neuronale Netzwerk bestimmt, für die das Maß den Schwellwert unterschreitet, wobei in einer zweiten Phase Trainingsdaten bereitgestellt werden und diese Architektur abhängig von den Trainingsdaten trainiert wird, und wobei in einer dritten Phase die Sensordaten mit dem so trainierten künstlichen neuronalen Netzwerk verarbeitet werden.In a first phase, an architecture for the artificial neural network is preferably determined for which the measure falls below the threshold value, with training data being provided in a second phase and this architecture being trained as a function of the training data, and with the sensor data in a third phase the artificial neural network trained in this way.
Eine Vorrichtung umfasst einen Prozessor und einen Speicher für ein künstliches neuronales Netzwerk, die ausgebildet sind, das Verfahren auszuführen.A device comprises a processor and a memory for an artificial neural network, which are designed to carry out the method.
Weitere vorteilhafte Ausführungsformen ergeben sich aus der folgenden Beschreibung und der Zeichnung. In der Zeichnung zeigt:
-
1 eine schematische Darstellung von Teilen einer Recheneinrichtung, -
2 Schritte in einem Verfahren für die Recheneinrichtung, -
3 ein Berechnungsschema für das Verfahren.
-
1 a schematic representation of parts of a computing device, -
2 Steps in a method for the computing device, -
3rd a calculation scheme for the process.
In
Die Vorrichtung
Der Speicher
Der Hardware-Beschleuniger
Ein Speicherzugriff für das Schreiben/Lesen von Eingangs- und Ausgangstensoren nicht notwendigerweise über den Prozessor
Der Sensor
Die Vorrichtung
Insbesondere wird eine Robustheit gegenüber zufälligen Hardware-Speicherfehlern, d. h. insbesondere Bit-Flip Fehlern, die im Speicher
Im Verfahren wird ein Maß fASI(N) für eine Empfindlichkeit einer Architektur des künstlichen neuronalen Netzwerks mit N Funktions-Schichten bestimmt. Eine niedrige Empfindlichkeit, insbesondere gegenüber den zufälligen Hardware-Speicherfehlern, insbesondere gegenüber den Bit-Flip Fehlern, die durch die auf den Speicher
Das künstliche neuronale Netzwerk umfasst im Beispiel wenigstens eine Funktions-Schicht l, die durch eine Vielzahl Rechenoperationen des künstlichen neuronalen Netzwerks definiert ist, die insbesondere von einem Hardware-Beschleuniger
Das Verfahren umfasst im Beispiel drei Phasen in denen das künstliche neuronale Netzwerk zuerst bestimmt, dann trainiert und anschließend verwendet wird. Diese drei Phasen können in der im Folgenden beschriebenen Reihenfolge oder unabhängig voneinander ausgeführt werden.In the example, the method comprises three phases in which the artificial neural network is first determined, then trained and then used. These three phases can be carried out in the order described below or independently of one another.
In einer ersten Phase wird in einem Schritt
In der ersten Phase wird in einem Schritt
Wenn das Ergebnis in der Ausgangs-Schicht der Funktions-Schicht l zur anschließenden Verarbeitung in einer Vielzahl der Funktions-Schicht l nachfolgenden Funktions-Schichten bestimmt ist, wird der Max-Pooling Faktor λ(l) abhängig von einem insbesondere arithmetischen Mittelwert bestimmt, der über individuelle Fenstergrößen der Max-Pooling Fenster für die Mehrzahl der nachfolgenden Funktions-Schichten definiert ist.If the result in the output layer of the
Wenn eine Vielzahl der Funktions-Schichten l vorgesehen ist, wird für jede der Schichten ein individueller Max-Pooling Faktor λ(l) bestimmt.If a multiplicity of the functional layers l is provided, an individual max-pooling factor λ (l) is determined for each of the layers.
In der ersten Phase kann in einem optionalen Schritt
Wenn eine Vielzahl der Funktions-Schichten l vorgesehen ist, wird für jede der Schichten ein individueller Faktor ζ(l) bestimmt. Für Funktions-Schichten l, die nicht in eine komponentenweise Addition eingehen, d.h. wenn keiner der nachfolgenden Funktions-Schichten eine komponentenweise Addition ausführt, ist dieser Faktor ζ(l) = 1.If a plurality of the functional layers l is provided, an individual factor ζ (l) is determined for each of the layers. For function layers l that are not included in a component-wise addition, ie if none of the following function layers carry out a component-wise addition, this factor is ζ (l) = 1.
In der ersten Phase wird in einem Schritt
Wenn eine Vielzahl der Funktions-Schichten l vorgesehen ist, wird das Maß fASI(N) abhängig von einer Summe einer Vielzahl der Produkte bestimmt, die für individuelle Funktions-Schichten l bestimmt werden.If a multiplicity of the
Für eine Anzahl N von Funktions-Schichten I wird das Maß fASI(N) beispielsweise bestimmt zu:
In einem Schritt
Beispielsweise wird für jede Architektur einer Vielzahl Architekturen für das künstliche neuronale Netzwerk ein individuelles Maß fASI(N) bestimmt. Der Speicher
Der Hardware-Beschleuniger
Das Maß fASI(N) wird beispielsweise als Kostenfunktion in einem Berechnungsschema für die Architektur künstlicher neuronaler Netzwerke eingesetzt. Ein Beispiel für ein derartiges Berechnungsschema ist in der vorveröffentlichten
Durch Variation der jeweiligen Parameter p wird das künstliche neuronale Netzwerk oder werden die Weiterbildungen des künstlichen neuronalen Netzwerks optimiert. Durch die sich dann ergebenden Maße fASI(N) wird in diesem Beispiel das künstliche neuronale Netzwerk beibehalten oder diejenige der Weiterbildungen des künstlichen neuronalen Netzwerks ausgewählt, deren Maß fASI(N) minimal im Vergleich zu den anderen Maßen fASI(N) ist. Dazu kann eine Topologie eines jeweiligen neuronalen Netzwerk N, beispielsweise ein Graph, der das künstliche neuronale Netzwerk N und die Parametrisierung seiner Schichten als Parameter p definiert, an eine Funktion zur Berechnung des Maßes fASI(N) übergeben werden. Als Rückgabewert liefert diese Funktion einen numerischen Wert der die Architektursensitivität angibt. Hohe Sensitivität entspricht in diesem Beispiel geringer Robustheit gegenüber Bit-Flip Fehlern. Dieser Wert wird in einem Beispiel für ein Sampling von Parent-Architekturen und Child-Architekturen sowie für eine Berechnung einer Pareto Front verwendet. Zusätzlich zum Maß fASI(N) können weitere Kostenfunktionen, welche z.B. eine Effizienz des neuronalen Netzwerks für einen gegebenen Hardware-Beschleuniger
Der Hardware-Beschleuniger
In einer zweiten Phase werden in einem Schritt
In einem ersten Aspekt definiert die Architektur beispielsweise ein künstliches neuronales Netzwerk zur Erkennung von Objekten abhängig von Sensordaten, insbesondere von Videodaten, Daten zur optischen Abstands- oder Geschwindigkeitsmessung oder Radardaten. In diesem Fall werden im Beispiel die Sensordaten als Trainingsdaten vorgegeben, eine Eingangsgröße für das künstliche neuronale Netzwerk abhängig von den Sensordaten bestimmt und das künstliche neuronale Netzwerk zur Erkennung der Objekte trainiert. Statt einer Erkennung von Objekten kann auch eine Klassifikation von Objekten vorgesehen sein.In a first aspect, the architecture defines, for example, an artificial neural network for recognizing objects as a function of sensor data, in particular video data, data for optical distance or speed measurement or radar data. In this case, in the example, the sensor data are specified as training data, an input variable for the artificial neural network is determined as a function of the sensor data, and the artificial neural network is trained to recognize the objects. Instead of a recognition of objects, a classification of objects can also be provided.
In einem zweiten Aspekt definiert die Architektur beispielsweise ein künstliches neuronales Netzwerk zur Segmentierung von Sensordaten, insbesondere von Videodaten, von Daten zur optischen Abstands- oder Geschwindigkeitsmessung oder von Radardaten. In diesem Fall werden im Beispiel die Sensordaten als Trainingsdaten vorgegeben, eine Eingangsgröße für das künstliche neuronale Netzwerk abhängig von den Sensordaten bestimmt und das künstliche neuronale Netzwerk zur Segmentierung der Sensordaten trainiert.In a second aspect, the architecture defines, for example, an artificial neural network for segmenting sensor data, in particular video data, data for optical distance or speed measurement or radar data. In this case, in the example, the sensor data are specified as training data, an input variable for the artificial neural network is determined as a function of the sensor data, and the artificial neural network is trained to segment the sensor data.
In einer dritten Phase werden in einem Schritt
Im ersten Aspekt kann vorgesehen sein, dass als Ausgabesignal abhängig von einem Ausgangssignal des künstlichen neuronalen Netzwerks ein Ansteuersignal zum Ansteuern eines wenigstens teilautonomen Roboters, eines zumindest teilweise autonomen Fahrzeugs, eines Aktuators, einer Maschine, eines Haushaltsgeräts oder eines Heimwerkgeräts bestimmt wird. Im ersten Aspekt kann vorgesehen sein, dass als Ausgabesignal abhängig von einem Ausgangssignal des künstlichen neuronalen Netzwerks eine Information über einen Fußgänger und/oder ein Verkehrsschild und/oder ein Fahrzeug und/oder deren Position relativ zueinander bestimmt wird.In the first aspect it can be provided that a control signal for controlling an at least partially autonomous robot, an at least partially autonomous vehicle, an actuator, a machine, a household appliance or a do-it-yourself device is determined as the output signal depending on an output signal of the artificial neural network. In the first aspect, it can be provided that information about a pedestrian and / or a traffic sign and / or a vehicle and / or their position relative to one another is determined as the output signal as a function of an output signal of the artificial neural network.
Im zweiten Aspekt werden als Ausgabesignal abhängig von einem Ausgangssignal des künstlichen neuronalen Netzwerks segmentierte Sensordaten bestimmt.In the second aspect, segmented sensor data are determined as an output signal as a function of an output signal of the artificial neural network.
In
Der ersten Funktions-Schicht
Der ersten Funktions-Schicht
Der verborgenen zweiten Funktions-Schicht
Der verborgenen dritten Funktions-Schicht
Der verborgenen vierten Funktions-Schicht
Der verborgenen Additions-Schicht
Der verborgenen sechsten Funktions-Schicht
Allgemein sind die Funktions-Schichten mit den Layer Indizes
Die folgende Tabelle gibt für jede der Schichten I einzeln die Werte für den Kehrwert
Der resultierende Wert des Maßes fASI(N) ist in diesem Beispiel fASI(N) = 0,7665.The resulting value of the measure f ASI (N) is f ASI (N) = 0.7665 in this example.
Das künstliche neuronale Netzwerk ist beispielweise ein deep neural network, das auf dem Hardware-Beschleuniger
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 102017219282 A1 [0038]DE 102017219282 A1 [0038]
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019214546.9A DE102019214546B4 (en) | 2019-09-24 | 2019-09-24 | Computer-implemented method and apparatus for optimizing an artificial neural network architecture |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019214546.9A DE102019214546B4 (en) | 2019-09-24 | 2019-09-24 | Computer-implemented method and apparatus for optimizing an artificial neural network architecture |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102019214546A1 true DE102019214546A1 (en) | 2021-03-25 |
DE102019214546B4 DE102019214546B4 (en) | 2023-01-05 |
Family
ID=74846418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102019214546.9A Active DE102019214546B4 (en) | 2019-09-24 | 2019-09-24 | Computer-implemented method and apparatus for optimizing an artificial neural network architecture |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102019214546B4 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021132542A1 (en) | 2021-12-09 | 2023-06-15 | Bayerische Motoren Werke Aktiengesellschaft | METHOD OF PROVIDING BIT FLIP ERRORS RESISTANT; PERTURBATION-RESISTANT AND COMPRESSED NEURAL NETWORK; COMPUTER PROGRAM; DRIVER ASSISTANCE SYSTEM |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017219282A1 (en) | 2017-10-26 | 2019-05-02 | Albert-Ludwigs-Universität Freiburg | Method and device for automatically generating an artificial neural network |
-
2019
- 2019-09-24 DE DE102019214546.9A patent/DE102019214546B4/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021132542A1 (en) | 2021-12-09 | 2023-06-15 | Bayerische Motoren Werke Aktiengesellschaft | METHOD OF PROVIDING BIT FLIP ERRORS RESISTANT; PERTURBATION-RESISTANT AND COMPRESSED NEURAL NETWORK; COMPUTER PROGRAM; DRIVER ASSISTANCE SYSTEM |
Also Published As
Publication number | Publication date |
---|---|
DE102019214546B4 (en) | 2023-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102018111905A1 (en) | Domain-specific language for generating recurrent neural network architectures | |
DE112019000739T5 (en) | TIME SERIES ACQUISITION FOR ANALYZING AND CORRECTING A SYSTEM STATUS | |
DE102017218889A1 (en) | Unarmed parameterized AI module and method of operation | |
EP3736817A1 (en) | Checking and / or improvement in the consistency of data codes in medical image processing | |
CN117075582A (en) | Industrial process generalized zero sample fault diagnosis method based on DSECMR-VAE | |
DE102023202593A1 (en) | Method and system for recommending modules for an engineering project | |
DE102018216078A1 (en) | Method and device for operating a control system | |
DE102015216953A1 (en) | Method and device for measuring a unit to be tested | |
DE102019214546B4 (en) | Computer-implemented method and apparatus for optimizing an artificial neural network architecture | |
DE102013206291A1 (en) | Method and apparatus for creating a non-parametric, data-based function model | |
DE102019207575A1 (en) | Method for assessing a function-specific robustness of a neural network | |
EP3857455A1 (en) | Machine learning system and a method, a computer program and a device for creating the machine learning system | |
DE102013225768A1 (en) | Method and apparatus for determining a LOLIMOT model | |
DE102021212483A1 (en) | Data processing device and method and program for deep learning of a neural network | |
DE102019220615A1 (en) | Method and device for recognizing and classifying objects | |
DE102019207573A1 (en) | Method for the function-specific robustification of a neural network | |
DE102019114049A1 (en) | Method for validating a driver assistance system using further generated test input data sets | |
DE102020132042A1 (en) | Method, system, test system and computer program product for the predictive determination of test results for a technical test object | |
DE102016113310A1 (en) | A method for evaluating statements of a plurality of sources about a plurality of facts | |
DE102023200301A1 (en) | Method and device for feature selection | |
DE102022120560A1 (en) | METHOD FOR CALIBRATION OF A TORQUE SENSOR SYSTEM FOR A TRANSMISSION | |
DE102021132542A1 (en) | METHOD OF PROVIDING BIT FLIP ERRORS RESISTANT; PERTURBATION-RESISTANT AND COMPRESSED NEURAL NETWORK; COMPUTER PROGRAM; DRIVER ASSISTANCE SYSTEM | |
DE102021207275A1 (en) | Method for creating an artificial neural network | |
DE102021125306A1 (en) | Method and device for providing a precise and robust neural network | |
DE202021103700U1 (en) | Device for generating an artificial neural network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R020 | Patent grant now final |