DE102019130484A1 - Method and device for training an ensemble of neural networks - Google Patents
Method and device for training an ensemble of neural networks Download PDFInfo
- Publication number
- DE102019130484A1 DE102019130484A1 DE102019130484.9A DE102019130484A DE102019130484A1 DE 102019130484 A1 DE102019130484 A1 DE 102019130484A1 DE 102019130484 A DE102019130484 A DE 102019130484A DE 102019130484 A1 DE102019130484 A1 DE 102019130484A1
- Authority
- DE
- Germany
- Prior art keywords
- function
- training
- networks
- network
- input data
- 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
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
-
- 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)
- 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)
- Image Analysis (AREA)
Abstract
Es wird eine Vorrichtung zum Anlernen eines Ensembles von N neuronalen Funktions-Netzen und eines neuronalen Verteil-Netzes beschrieben. Die N Funktions-Netze sind jeweils ausgebildet, für einen Eingangs-Datensatz Ausgangsdaten bereitzustellen. Das Verteil-Netz ist ausgebildet, für den Eingangs-Datensatz ein Funktions-Netz aus den N Funktions-Netzen auszuwählen, durch das der Eingangs-Datensatz verarbeitet werden soll, um Ausgangsdaten für die Ausgangsdaten des Ensembles von N Funktions-Netzen für den Eingangs-Datensatz bereitzustellen. Die Vorrichtung ist eingerichtet, in einer Epoche eines iterativen Lernalgorithmus, anhand des Verteil-Netzes ein oder mehrere Trainings-Datensätze auf N Teilgruppen für die entsprechenden N Funktions-Netze zu verteilen, sowie die N Funktions-Netze anhand der entsprechenden N Teilgruppen von Trainings-Datensätzen anzupassen. Des Weiteren ist die Vorrichtung eingerichtet, anhand der N angepassten Funktions-Netze Fehlerwerte für die ein oder mehreren Trainings-Datensätze zu ermitteln, und anhand der Fehlerwerte das Verteil-Netz anzupassen.A device for training an ensemble of N neural function networks and a neural distribution network is described. The N function networks are each designed to provide output data for an input data record. The distribution network is designed to select a function network from the N function networks for the input data record, through which the input data record is to be processed in order to generate output data for the output data of the ensemble of N function networks for the input Provide data record. The device is set up, in an epoch of an iterative learning algorithm, using the distribution network to distribute one or more training data sets to N subgroups for the corresponding N function networks, and the N function networks using the corresponding N subgroups of training Adjust records. Furthermore, the device is set up to determine error values for the one or more training data sets on the basis of the N adapted function networks, and to adapt the distribution network on the basis of the error values.
Description
Die Erfindung betrifft eine Vorrichtung und ein entsprechendes Verfahren zum Anlernen eines Ensembles von (tiefen) neuronalen Netzen für eine bestimmte Gesamtfunktion, insbesondere zur Objekterkennung und/oder zur Obj ektklassifizierung.The invention relates to a device and a corresponding method for teaching an ensemble of (deep) neural networks for a specific overall function, in particular for object recognition and / or for object classification.
Ein zumindest teilweise automatisiert fahrendes Fahrzeug kann eingerichtet sein, Sensordaten von ein oder mehreren Umfeldsensoren des Fahrzeugs (z.B. eine Bildkamera, ein Lidarsensor, ein Radarsensor, etc.) auszuwerten, z.B. um ein oder mehrere Objekte im Umfeld des Fahrzeugs zu detektieren. Das Fahrzeug kann dann in Abhängigkeit von den ein oder mehreren detektieren Objekten automatisiert längs- und/oder quergeführt werden.An at least partially automated vehicle can be set up to evaluate sensor data from one or more surroundings sensors of the vehicle (e.g. an image camera, a lidar sensor, a radar sensor, etc.), e.g. to detect one or more objects in the surroundings of the vehicle. The vehicle can then be automatically guided longitudinally and / or transversely as a function of the one or more detected objects.
Die Erkennung von Objekten auf Basis der Sensordaten von ein oder mehreren Umfeldsensoren kann anhand von spezifisch angelernten neuronalen Netzen, insbesondere sogenannten Deep Neural Networks, erfolgen. Dabei kann die Güte der Objekterkennung ggf. durch die Verwendung eines sogenannten Ensembles von mehreren neuronalen Netzen erhöht werden. Die einzelnen neuronalen Netze eines Ensembles können dabei auf spezifische Teilaufgaben der Objekterkennung spezialisiert sein. Die Ausgangswerte der einzelnen neuronalen Netze können in einem Aggregator zusammengefasst werden, um eine Gesamtauswertung der Sensordaten bereitzustellen.The detection of objects on the basis of the sensor data from one or more environment sensors can take place on the basis of specifically learned neural networks, in particular so-called deep neural networks. The quality of the object recognition can possibly be increased by using a so-called ensemble of several neural networks. The individual neural networks of an ensemble can be specialized in specific subtasks of object recognition. The output values of the individual neural networks can be combined in an aggregator in order to provide an overall evaluation of the sensor data.
Eine Herausforderung bei der Verwendung eines Ensembles von mehreren neuronalen Netzen ist die Zuweisung von Spezialisierungen zu den einzelnen neuronalen Netzen und das Anlernen der einzelnen neuronalen Netze für die jeweilige Spezialisierung. In diesem Zusammenhang werden häufig Heuristiken verwendet, die jedoch typischerweise nicht zu einer optimalen Aufgabenverteilung der einzelnen neuronalen Netze führen.A challenge when using an ensemble of several neural networks is the assignment of specializations to the individual neural networks and the training of the individual neural networks for the respective specialization. In this context, heuristics are often used, which, however, typically do not lead to an optimal distribution of tasks for the individual neural networks.
Das vorliegende Dokument befasst sich mit der technischen Aufgabe, ein Ensemble von mehreren neuronalen Netzen in automatischer und optimierter Weise für eine Gesamtaufgabe bzw. für eine Gesamtfunktion anzulernen. Mit anderen Worten, das vorliegende Dokument befasst sich mit der technischen Aufgabe, eine Gesamtfunktion in automatischer und optimierter Weise auf die einzelnen neuronalen Netze eines Ensembles aufzuteilen.The present document deals with the technical task of training an ensemble of several neural networks in an automatic and optimized manner for an overall task or for an overall function. In other words, the present document deals with the technical task of distributing an overall function in an automatic and optimized manner to the individual neural networks of an ensemble.
Die Aufgabe wird jeweils durch die unabhängigen Ansprüche gelöst. Vorteilhafte Ausführungsformen werden u.a. in den abhängigen Ansprüchen beschrieben. Es wird darauf hingewiesen, dass zusätzliche Merkmale eines von einem unabhängigen Patentanspruch abhängigen Patentanspruchs ohne die Merkmale des unabhängigen Patentanspruchs oder nur in Kombination mit einer Teilmenge der Merkmale des unabhängigen Patentanspruchs eine eigene und von der Kombination sämtlicher Merkmale des unabhängigen Patentanspruchs unabhängige Erfindung bilden können, die zum Gegenstand eines unabhängigen Anspruchs, einer Teilungsanmeldung oder einer Nachanmeldung gemacht werden kann. Dies gilt in gleicher Weise für in der Beschreibung beschriebene technische Lehren, die eine von den Merkmalen der unabhängigen Patentansprüche unabhängige Erfindung bilden können.The object is achieved in each case by the independent claims. Advantageous embodiments are described, inter alia, in the dependent claims. It is pointed out that additional features of a patent claim dependent on an independent patent claim without the features of the independent patent claim or only in combination with a subset of the features of the independent patent claim can form a separate invention independent of the combination of all features of the independent patent claim, which can be made the subject of an independent claim, a divisional application or a subsequent application. This applies equally to technical teachings described in the description, which can form an invention that is independent of the features of the independent patent claims.
Gemäß einem Aspekt wird eine Vorrichtung (z.B. ein Computer oder ein Server) zum Anlernen eines Ensembles von N (künstlichen) neuronalen Funktions-Netzen (bzw. Funktions-Netzwerken) und eines (künstlichen) neuronalen Verteil-Netzes (bzw. Verteil-Netzwerk) beschrieben. N ist dabei eine ganze Zahl größer als 1, insbesondere N>5 oder N>10. Die Funktionen-Netze und das Verteil-Netzes können auf Basis von Trainingsdaten mit einer Vielzahl von Trainings-Datensätzen angelernt werden, die eine bestimmte Gesamtfunktion beschreiben bzw. repräsentieren. Die einzelnen Trainings-Datensätze können dabei jeweils einen Trainings-Eingangs-Datensatz und Soll- bzw. Trainings-Ausgangsdaten umfassen, wobei die Soll- bzw. Trainings-Ausgangsdaten anzeigen, welches Ergebnis von dem antrainierten Ensemble von N neuronalen Funktions-Netze für den Trainings-Eingangs-Datensatz bereitgestellt werden soll, um die Gesamtfunktion zu realisieren.According to one aspect, a device (e.g. a computer or a server) for training an ensemble of N (artificial) neural function networks (or function networks) and an (artificial) neural distribution network (or distribution network) described. N is an integer greater than 1, in particular N> 5 or N> 10. The function networks and the distribution network can be learned on the basis of training data with a large number of training data sets that describe or represent a specific overall function. The individual training data sets can each include a training input data set and target or training output data, the target or training output data indicating which result of the trained ensemble of N neural function networks for the training -Input data record should be provided in order to realize the overall function.
Das Verteil-Netz kann angelernt werden, um einzelne Teilfunktionen der Gesamtfunktion auf einzelne Funktions-Netze zu verteilen. Die einzelnen Funktions-Netze können für die unterschiedlichen Teilfunktionen angelernt werden. Die einzelnen Teilfunktionen können dabei durch Teilmengen der Trainingsdaten beschrieben bzw. repräsentiert werden. Das Verteil-Netz kann somit angelernt werden, um die Vielzahl von Trainings-Datensätzen auf unterschiedliche Teilmengen für die unterschiedlichen Funktions-Netze aufzuteilen, so dass durch die unterschiedlichen Teilmengen unterschiedliche Teilfunktionen der Gesamtfunktion repräsentiert werden. Die einzelnen Trainings-Datensätze einer Teilmenge für ein Funktions-Netz können dabei jeweils einen Trainings-Eingangs-Datensatz und Soll-Ausgangsdaten umfassen, wobei die Soll-Ausgangsdaten anzeigen, welches Ergebnis von dem antrainierten Funktions-Netz für den Trainings-Eingangs-Datensatz bereitgestellt werden soll, um die Teilfunktion des Funktions-Netz zu realisieren.The distribution network can be trained in order to distribute individual partial functions of the overall function to individual functional networks. The individual function networks can be trained for the different sub-functions. The individual sub-functions can be described or represented by subsets of the training data. The distribution network can thus be trained in order to divide the large number of training data sets into different subsets for the different functional networks, so that different sub-functions of the overall function are represented by the different subsets. The individual training data records of a subset for a functional network can each include a training input data record and target output data, the target output data indicating which result is provided by the trained functional network for the training input data record should be in order to realize the partial function of the functional network.
Die N Funktions-Netze können jeweils ausgebildet sein und/oder strukturiert sein, für einen Eingangs-Datensatz (Ist-)Ausgangsdaten bereitzustellen. Die Ausgangsdaten können kann ein oder mehrere Ausgangswerte bzw. Datenelemente umfassen. Beispielsweise können die Ausgangsdaten ein oder mehrere Daten-Bits (ggf. auch nur ein einziges Daten-Bit) umfassen. Ein Funktions-Netz kann insbesondere ein Deep Neural Network bzw. ein tiefes neuronales Netz sein bzw. umfassen (z.B. mit mehr als 3 oder 5 oder 10 verdeckten Schichten). Der Eingangs-Datensatz kann z.B. ein Bild einer Kamera umfassen (z.B. eine Matrix mit Bildpixeln). Die Ausgangsdaten können ausgebildet sein, anzuzeigen, ob und ggf. wo sich in dem Bild ein Objekt eines bestimmten Objekt-Typs und/oder einer bestimmten Objekt-Größe befindet. Die einzelnen Funktions-Netze können ggf. auf unterschiedliche Objekt-Typen (z.B. Personenkraftwagen, Lastkraftwagen, Bus, Zweirad, Fußgänger, etc.) und/oder auf unterschiedliche Objekt-Größen (z.B. relativ klein, mittelgroß, groß) spezialisiert sein. Alternativ oder ergänzend können die einzelnen Funktions-Netze auf unterschiedliche Lichtverhältnisse spezialisiert sein, z.B. Tageslicht, Nacht, Tunnelsituation, Sonnenaufgang, Sonnenuntergang, relativ schwache Lichtverhältnisse, etc.The N function networks can each be designed and / or structured to provide (actual) output data for an input data set. The output data can comprise one or more output values or data elements. For example, the output data can be an or comprise several data bits (possibly also just a single data bit). A functional network can in particular be or comprise a deep neural network or a deep neural network (for example with more than 3 or 5 or 10 hidden layers). The input data record can include, for example, an image from a camera (for example a matrix with image pixels). The output data can be designed to indicate whether and, if applicable, where an object of a certain object type and / or a certain object size is located in the image. The individual functional networks can optionally be specialized in different object types (e.g. passenger cars, trucks, buses, two-wheelers, pedestrians, etc.) and / or in different object sizes (e.g. relatively small, medium-sized, large). As an alternative or in addition, the individual functional networks can be specialized in different lighting conditions, e.g. daylight, night, tunnel situation, sunrise, sunset, relatively weak lighting conditions, etc.
Die Vorrichtung kann eingerichtet sein, die N Funktions-Netze jeweils derart zu initialisieren, dass für einen Eingangs-Datensatz quasi-zufällige Ausgangsdaten bereitgestellt werden. Mit anderen Worten, Neuron-Parameter der einzelnen Funktions-Netze können ggf. quasi-zufällig initialisiert werden. Durch den in diesem Dokument beschriebenen iterativen Lernalgorithmus kann bewirkt werden, dass die einzelnen Funktions-Netze (Ist-) Ausgangsdaten bereitstellen, die zumindest im Mittel den durch die jeweilige Teilmenge der Trainingsdaten angezeigten Soll-Ausgangsdaten entsprechen und/oder angenähert sind.The device can be set up to initialize the N function networks in each case in such a way that quasi-random output data are provided for an input data record. In other words, neuron parameters of the individual function networks can optionally be initialized quasi-randomly. The iterative learning algorithm described in this document can cause the individual function networks to provide (actual) output data which, at least on average, correspond to and / or approximate the target output data indicated by the respective subset of the training data.
Des Weiteren kann die Vorrichtung eingerichtet sein, die N Funktions-Netze jeweils unterschiedlich (quasi-zufällig) zu initialisieren. Insbesondere können die Neuron-Parameter der einzelnen Funktions-Netze in unterschiedlicher Weise (quasi-zufällig) initialisiert werden. Alternativ oder ergänzend können die N Funktions-Netze derart initialisiert werden, dass für einen gleichen Eingangs-Datensatz von den N Funktions-Netzen N unterschiedliche Ausgangsdaten bereitgestellt werden. So kann die Güte der Konvergenz der N Funktions-Netze zu jeweils unterschiedlichen Spezialisierungen erhöht werden.Furthermore, the device can be set up to initialize the N function networks in each case differently (quasi-randomly). In particular, the neuron parameters of the individual function networks can be initialized in different ways (quasi-randomly). As an alternative or in addition, the N function networks can be initialized in such a way that N different output data are provided for the same input data record from the N function networks. In this way, the quality of the convergence of the N function networks to different specializations in each case can be increased.
Das Verteil-Netz kann ausgebildet sein, für den Eingangs-Datensatz zumindest oder genau ein Funktions-Netz aus den N Funktions-Netzen anzuzeigen bzw. auszuwählen, durch das der Eingangs-Datensatz verarbeitet werden soll, um Ausgangsdaten bereitzustellen. Die von dem ausgewählten Funktion-Netz bereitgestellten Ausgangsdaten können dann als Ausgangsdaten des Ensembles von N Funktions-Netzen für den Eingangs-Datensatz verwendet werden.
Das Verteil-Netz kann somit ausgebildet sein, für den Eingangs-Datensatz ein (ggf. genau ein) Funktions-Netz aus den N Funktions-Netzen auszuwählen, durch das der Eingangs-Datensatz (ggf. in exklusiver Weise) verarbeitet werden soll, um Ausgangsdaten für die Ausgangsdaten des Ensembles von N Funktions-Netzen für den Eingangs-Datensatz bereitzustellen.The distribution network can be designed to display or select for the input data record at least or precisely one function network from the N function networks through which the input data record is to be processed in order to provide output data. The output data provided by the selected function network can then be used as output data of the ensemble of N function networks for the input data set.
The distribution network can thus be designed to select one (possibly exactly one) function network from the N function networks for the input data record, through which the input data record is to be processed (possibly in an exclusive manner) in order to To provide output data for the output data of the ensemble of N function networks for the input data set.
Mit anderen Worten, das Verteil-Netz kann als Zuweisungsfunktion ausgebildet sein, die einen Eingangs-Datensatz einem (ggf. genau einem) Funktions-Netz zuweist. Die Zuweisung eines Eingangs-Datensatzes zu einem Funktions-Netz kann dabei als Aktion des Verteil-Netzes betrachtet werden. Das zugewiesene Funktions-Netz kann dann den Eingangs-Datensatz verarbeiten, um am Ausgang des zugewiesenen Funktions-Netzes Ausgangsdaten bereitzustellen. Diese Ausgangsdaten können dann (ggf. unverändert bzw. eins-zu-eins) als Ausgangsdaten des Ensembles der N Funktions-Netze verwendet werden. Das Ensemble von N Funktions-Netzen kann ggf. derart angelernt werden, dass ein Eingangs-Datensatz durch genau ein Funktions-Netz bearbeitet wird, um Ausgangsdaten für das gesamte Ensemble von N Funktions-Netz bereitzustellen. In other words, the distribution network can be designed as an assignment function which assigns an input data record to a (possibly exactly one) function network. The assignment of an input data record to a functional network can be viewed as an action of the distribution network. The assigned function network can then process the input data record in order to provide output data at the output of the assigned function network. This output data can then (possibly unchanged or one-to-one) be used as output data of the ensemble of the N function networks. The ensemble of N function networks can, if necessary, be trained in such a way that an input data record is processed by precisely one function network in order to provide output data for the entire ensemble of N function networks.
Die Vorrichtung kann eingerichtet sein, das Verteil-Netz derart zu initialisieren, dass für einen Eingangs-Datensatz quasi-zufällig ein Funktions-Netz angezeigt wird, durch das der Eingangs-Datensatz verarbeitet werden soll. Durch den in diesem Dokument beschriebenen Lernalgorithmus kann dann bewirkt werden, dass das Verteil-Netz Eingangs-Datensätze gemäß einer angelernten Aufteilung der Gesamtfunktion auf Teilfunktionen den unterschiedlichen Funktions-Netzen zuweist.The device can be set up to initialize the distribution network in such a way that a functional network through which the input data record is to be processed is displayed quasi-randomly for an input data record. The learning algorithm described in this document can then cause the distribution network to assign input data records to the different functional networks in accordance with a learned division of the overall function into sub-functions.
Mittels des iterativen Lernalgorithmus können somit die N Funktions-Netze und das Verteil-Netz derart auf Basis der Trainingsdaten angelernt werden, dass nach-und-nach einzelne Teilfunktionen der durch die Trainingsdaten angezeigten Gesamtfunktion durch das Verteil-Netz den einzelnen Funktions-Netzen zugewiesen werden. Das Verteil-Netz kann dabei nach-und-nach angelernt werden, die für die jeweilige Teilfunktion relevanten Trainings-Datensätze dem jeweiligen Funktions-Netz zuzuweisen, um die Spezialisierung des Funktions-Netzes für diese Teilfunktion weiter zu verbessern.Using the iterative learning algorithm, the N function networks and the distribution network can thus be trained on the basis of the training data in such a way that individual sub-functions of the overall function indicated by the training data are gradually assigned to the individual function networks by the distribution network . The distribution network can be gradually trained to assign the training data records relevant for the respective sub-function to the respective function network in order to further improve the specialization of the function network for this sub-function.
Insbesondere kann die Vorrichtung eingerichtet sein, in einer Epoche bzw. in einer Iteration des iterativen Lernalgorithmus, anhand des Verteil-Netzes ein oder mehrere (insbesondere T) Trainings-Datensätze aus den Trainingsdaten auf N Teilgruppen bzw. Teilmengen für die N Funktions-Netze zu verteilen. Dabei ist T eine ganze Zahl größer oder gleich 1, insbesondere T>=8, T>=128, T>=512, oder T>=1024. Insbesondere ist T typischerweise wesentlich größer als N (z.B. um den Faktor 10 oder mehr). Das Verteilen der ein oder mehreren Trainings-Datensätze kann derart erfolgen, dass ein Trainings-Datensatz jeweils nur einem Teil der N Teilgruppen (ggf. nur genau einer Teilgruppe) zugewiesen wird. Falls T kleiner als N sein sollte, so kann ggf. einer Teilgruppe kein Trainings-Datensatz zugewiesen werden. Ggf. kann somit eine Teilgruppe leer sein. Typischerweise ist jedoch T deutlich größer als N, so dass jede der N Teilgruppen typischerweise zumindest einen der T Trainings-Datensätze umfasst.In particular, the device can be set up, in an epoch or in an iteration of the iterative learning algorithm, based on the distribution network, one or more (in particular T) training data sets from the training data to N subgroups or subsets for the N function networks to distribute. T is an integer greater than or equal to 1, in particular T> = 8, T> = 128, T> = 512, or T> = 1024. In particular, T is typical much larger than N (e.g. by a factor of 10 or more). The distribution of the one or more training data records can take place in such a way that a training data record is assigned to only one part of the N subgroups (possibly only exactly one subgroup). If T should be less than N, no training data set can be assigned to a subgroup. If necessary, a subgroup can therefore be empty. Typically, however, T is significantly greater than N, so that each of the N subgroups typically comprises at least one of the T training data sets.
Eine Epoche des Lernalgorithmus kann eine Phase des Lernalgorithmus sein, in dem alle verfügbaren Trainings-Datensätze zumindest einmal verwendet werden, um das Ensemble von N Funktions-Netzen anzulernen. In einer nachfolgenden Epoche können dann die verfügbaren Trainings-Datensätze erneut verwendet werden, um das Ensemble von N Funktions-Netzen weiter anzupassen, bis ein Konvergenzkriterium erfüllt ist. In jeder Epoche können die Trainings-Datensätze ggf. für zumindest bzw. genau eine Anpassung der Neuron-Parameter der Funktions-Netze und/oder des Verteil-Netzes verwendet werden.An epoch of the learning algorithm can be a phase of the learning algorithm in which all available training data sets are used at least once in order to train the ensemble of N function networks. In a subsequent epoch, the available training data sets can then be used again in order to further adapt the ensemble of N function networks until a convergence criterion is met. In each epoch, the training data sets can optionally be used for at least or precisely one adaptation of the neuron parameters of the functional networks and / or the distribution network.
Die Vorrichtung kann ferner eingerichtet sein, in der Epoche des iterativen Lernalgorithmus, die N Funktions-Netze anhand der entsprechenden N Teilgruppen bzw. Teilmengen von Trainings-Datensätzen anzupassen und/oder anzulernen. Mit anderen Worten, jedes einzelnen Funktions-Netz kann (ggf. ausschließlich) mit den Trainings-Datensätzen aus der entsprechenden Teilgruppe von Trainings-Datensätzen angepasst bzw. angelernt werden. Mit noch anderen Worten, die einzelnen Funktions-Netze können jeweils selektiv mit der jeweils zugewiesenen Teilgruppe von Trainings-Datensätzen angepasst und/oder angelernt werden.The device can also be set up, in the epoch of the iterative learning algorithm, to adapt and / or to learn the N function networks on the basis of the corresponding N subgroups or subsets of training data sets. In other words, each individual functional network can (if necessary exclusively) be adapted or learned using the training data records from the corresponding subgroup of training data records. In still other words, the individual function networks can each be selectively adapted and / or learned with the respectively assigned subgroup of training data sets.
Beim Anpassen bzw. Anlernen eines Funktions-Netzes können die einzelnen Neuron-Parameter der Neuronen des Funktions-Netzes angepasst werden. Insbesondere kann die Vorrichtung eingerichtet sein, ein Funktions-Netz auf Basis der dem Funktions-Netz zugewiesenen Teilgruppe von Trainings-Datensätzen anzupassen, um im Mittel die Abweichung der für die Trainings-Datensätze aus der Teilgruppe ermittelten Ist-Ausgangsdaten von den in den Trainings-Datensätzen der Teilgruppe angezeigten Soll-Ausgangsdaten zu reduzieren.When adapting or learning a function network, the individual neuron parameters of the neurons of the function network can be adapted. In particular, the device can be set up to adapt a function network on the basis of the subgroup of training data sets assigned to the function network in order to average the deviation of the actual output data determined for the training data sets from the subgroup from the training data. Data records of the subgroup displayed target output data.
Durch das Anpassen eines Funktions-Netzes wird das Funktions-Netz an die Teilfunktion angepasst, die durch die Teilgruppe von Trainings-Datensätzen beschrieben wird, die dem Funktions-Netz durch das Verteil-Netz zugewiesen wurden. Es kann somit eine Spezialisierung der einzelnen Funktions-Netze erfolgen. Es kann somit ein überwachtes Lernen der einzelnen Funktions-Netze anhand der jeweils zugewiesenen Teilgruppe von Trainings-Datensätzen erfolgen.By adapting a function network, the function network is adapted to the sub-function that is described by the subgroup of training data records that have been assigned to the function network by the distribution network. A specialization of the individual functional networks can thus take place. A monitored learning of the individual function networks can thus take place on the basis of the respectively assigned subgroup of training data sets.
Die Vorrichtung kann ferner eingerichtet sein, anhand der N angepassten Funktions-Netze Fehlerwerte für die ein oder mehreren Trainings-Datensätze (insbesondere T Fehlerwerte für die T Trainings-Datensätze) zu ermitteln. Wie bereits oben dargelegt, umfasst ein Trainings-Datensatz typischerweise einen Trainings-Eingangs-Datensatz und Soll-Ausgangsdaten für den Trainings-Eingangs-Datensatz (als sogenannte „Ground Truth“). Die Soll-Ausgangsdaten können die Ausgangsdaten anzeigen, die durch das angelernte Ensemble von N Funktions-Netzen für den Trainings-Eingangs-Datensatz bereitgestellt werden sollten (nach erfolgreichem Anlernen des Ensembles von N Funktions-Netzen).The device can also be set up to determine error values for the one or more training data sets (in particular T error values for the T training data sets) on the basis of the N adapted function networks. As already explained above, a training data record typically comprises a training input data record and target output data for the training input data record (as so-called “ground truth”). The target output data can display the output data that should be provided by the trained ensemble of N function networks for the training input data set (after the ensemble of N function networks has been successfully trained).
Die Vorrichtung kann eingerichtet sein, anhand des angepassten Funktions-Netzes, dem der Trainings-Datensatz zugewiesen wurde, Ist-Ausgangsdaten zu ermitteln. Der Fehlerwert für den Trainings-Datensatz kann dann auf Basis der Ist-Ausgangsdaten und auf Basis der Soll-Ausgangsdaten, insbesondere auf Basis der Differenz der Ist-Ausgangsdaten und der Soll-Ausgangsdaten, ermittelt werden.The device can be set up to determine actual output data on the basis of the adapted function network to which the training data set was assigned. The error value for the training data set can then be determined on the basis of the actual output data and on the basis of the target output data, in particular on the basis of the difference between the actual output data and the target output data.
Des Weiteren kann die Vorrichtung eingerichtet sein, anhand der Fehlerwerte für die ein oder mehreren Trainings-Datensätze (insbesondere anhand der T Fehlerwerte für die T Trainings-Datensätze) das Verteil-Netz anzupassen. Die Fehlerwerte können als Indiz dafür betrachtet werden, wie gut die durch die Trainings-Datensätze angezeigte Gesamtfunktion durch das Ensemble von N Funktions-Netzes gelöst bzw. bereitgestellt wird. Das Verteil-Netz kann anpasst werden, um (zumindest im Mittel) die Fehlerwerte, insbesondere die T Fehlerwerte, zu reduzieren. Das Verteil-Netz kann dabei mittels Reinforcement Learning, insbesondere mittels Deep Q-Learning bzw. mittels eines Deep Q Networks (DQN), angepasst werden. Dabei können Belohnungen für das Reinforcement Learning auf Basis der Fehlerwerte, insbesondere auf Basis der T Fehlerwerte, ermittelt werden.Furthermore, the device can be set up to adapt the distribution network using the error values for the one or more training data sets (in particular using the T error values for the T training data sets). The error values can be viewed as an indication of how well the overall function indicated by the training data sets is solved or provided by the ensemble of N function networks. The distribution network can be adapted in order to reduce (at least on average) the error values, in particular the T error values. The distribution network can be adapted by means of reinforcement learning, in particular by means of deep Q learning or by means of a deep Q network (DQN). In this case, rewards for reinforcement learning can be determined on the basis of the error values, in particular on the basis of the T error values.
Die Vorrichtung ermöglicht es somit, ein Verteil-Netz und ein Ensemble von N Funktions-Netzen in automatischer Weise (ohne Verwendung einer Heuristik) derart anzulernen, dass eine Gesamtfunktion in optimierter Weise auf N Teilfunktionen aufgeteilt wird, die durch die einzelnen Funktions-Netze bereitgestellt werden. So kann die Güte einer durch mehrere neuronale Netze bereitgestellten Gesamtfunktion erhöht werden. Des Weiteren kann so die Rechenkomplexität zur Bereitstellung der Gesamtfunktion reduziert werden (da für einen Eingangs-Datensatz immer nur ein Funktions-Netz aktiv sein muss).The device thus enables a distribution network and an ensemble of N function networks to be trained automatically (without using a heuristic) in such a way that an overall function is divided in an optimized manner into N sub-functions that are provided by the individual function networks become. In this way, the quality of an overall function provided by several neural networks can be increased. Furthermore, the computational complexity for providing the overall function can be reduced in this way (since only one functional network has to be active for an input data record).
Bei dem in diesem Dokument beschriebenen Lernalgorithmus erfolgt ein gegenseitiges Lernen der Verteil-Netzes von den Fehlerwerten, die durch die Funktions-Netze bereitgestellt werden, und ein Lernen der Funktions-Netze, durch die Anpassung der Trainings-Datensätze, die den einzelnen Funktions-Netzen durch das angepasste Verteil-Netz zugewiesen werden. Durch dieses gegenseitige Lernen der Verteil-Netzes und der Funktions-Netze kann nach-und-nach die Güte der Gesamtfunktion erhöht werden.In the learning algorithm described in this document, the distribution network learns from each other about the error values provided by the function networks, and the function networks learn by adapting the training data sets for the individual function networks can be assigned by the adapted distribution network. This mutual learning of the distribution network and the functional networks can gradually increase the quality of the overall function.
Wie bereits oben dargelegt, umfassen die ein oder mehreren (insbesondere die T) Trainings-Datensätze typischerweise jeweils einen Trainings-Eingangs-Datensatz. Der Trainings-Eingangs-Datensatz eines Trainings-Datensatzes und das Funktions-Netz, dem der Trainings-Datensatz zugewiesen wurde, (bzw. die dem Funktions-Netz entsprechende Zuweisungsaktion) können als ein Zustands-Aktions-Paar betrachtet werden.As already explained above, the one or more (in particular the T) training data records typically each comprise a training input data record. The training input data record of a training data record and the function network to which the training data record was assigned (or the assignment action corresponding to the function network) can be viewed as a state-action pair.
Die Vorrichtung kann eingerichtet sein, auf Basis der T Zustands-Aktions-Paare und der entsprechenden T Fehlerwerte ein neuronales Q-Netz als Approximation für eine Q-Funktion (im Sinne von Reinforcement Learning) anzupassen. Die Q-Funktion bzw. das Q-Netz können dabei für eine Vielzahl von Zustands-Aktions-Paaren eine entsprechende Vielzahl von zu erwartenden Belohnungen anzeigen. Es kann somit iterativ ein Q-Netz angepasst und/oder angelernt werden. Das angepasste Verteil-Netz kann dann auf Basis des angepassten Q-Netzes ermittelt werden. Insbesondere kann sich das Verteil-Netz aus dem Q-Netz ergeben, indem auf Basis des Q-Netzes für einen Eingangs-Datensatz die (Zuweisungs-)Aktion ermittelt wird, durch die die von dem Q-Netz angezeigte Belohnung vergrößert, insbesondere maximiert, wird. Das Verteil-Netz kann somit Teil der Q-Netzes sein.The device can be set up to adapt a neural Q network as an approximation for a Q function (in the sense of reinforcement learning) on the basis of the T state-action pairs and the corresponding T error values. The Q function or the Q network can display a corresponding number of expected rewards for a large number of status-action pairs. A Q network can thus be iteratively adapted and / or learned. The adapted distribution network can then be determined on the basis of the adapted Q network. In particular, the distribution network can result from the Q network in that, on the basis of the Q network, the (assignment) action is determined for an input data record, through which the reward displayed by the Q network is increased, in particular maximized, becomes. The distribution network can thus be part of the Q network.
Durch das iterative Anlernen eines Q-Netzes bzw. einer entsprechenden Q-Funktion kann die Güte des angelernten Ensembles von Funktions-Netzen weiter erhöht werden.By iterative learning of a Q network or a corresponding Q function, the quality of the learned ensemble of functional networks can be increased further.
Die Vorrichtung kann eingerichtet sein, eine Vielzahl von Epochen des Lernalgorithmus bis Erreichen eines Abbruchkriteriums zu wiederholen. Dabei kann die Zuweisung der einzelnen Trainings-Datensätzen zu den unterschiedlichen Funktions-Netzen in unterschiedlichen Epochen unterschiedlich sein (aufgrund der Anpassung des Verteil-Netzes). Typischerweise konvergiert jedoch das Zuweisungsverhalten des Verteil-Netzes mit steigender Anzahl von Epochen. Das Abbruchkriterium für den iterativen Lernalgorithmus kann eine maximale Anzahl von Epochen und/oder eine Konvergenz des Ensembles von N Funktions-Netzen und/oder des Verteil-Netzes umfassen. Es kann somit ein iteratives Anlernen des Ensembles von N Funktions-Netzen und des Verteil-Netzes erfolgen, um eine qualitativ hochwertige Gesamtfunktion bereitzustellen.The device can be set up to repeat a plurality of epochs of the learning algorithm until a termination criterion is reached. The assignment of the individual training data sets to the different functional networks can be different in different epochs (due to the adaptation of the distribution network). Typically, however, the allocation behavior of the distribution network converges with an increasing number of epochs. The termination criterion for the iterative learning algorithm can include a maximum number of epochs and / or a convergence of the ensemble of N function networks and / or the distribution network. Iterative learning of the ensemble of N function networks and the distribution network can thus take place in order to provide a high quality overall function.
Die Vorrichtung kann eingerichtet sein, in einer Epoche des Lernalgorithmus zumindest einen Teil der T Trainings-Datensätze zufällig jeweils einem der N Funktions-Netze zuzuweisen. Dabei kann der Anteil der T Trainings-Datensätze, die zufällig zugewiesen werden, mit steigender Anzahl der Epochen des Lernalgorithmus reduziert werden. So kann in zuverlässiger Weise bewirkt werden, dass in einer Anfangsphase des Lernalgorithmus für die N Funktions-Netze N unterschiedliche Teilfunktionen identifiziert werden können, und dass die N Funktions-Netze nach-und-nach für die unterschiedlichen Teilfunktionen angelernt werden können. Somit kann die Güte der bereitgestellten Gesamtfunktion weiter erhöht werden.The device can be set up to randomly assign at least some of the T training data records to one of the N function networks in an epoch of the learning algorithm. The proportion of T training data records that are randomly assigned can be reduced as the number of epochs of the learning algorithm increases. In this way, it can be ensured in a reliable manner that in an initial phase of the learning algorithm for the N function networks N different sub-functions can be identified, and that the N function networks can gradually be learned for the different sub-functions. The quality of the overall function provided can thus be further increased.
Die Vorrichtung kann eingerichtet sein, innerhalb einer Epoche des Lernalgorithmus, die N Funktions-Netze und das Verteil-Netz sequentiell auf Basis von jeweils unterschiedlichen Gruppen von Trainings-Datensätzen anzupassen. Insbesondere können sequentiell unterschiedliche Gruppen mit jeweils T Trainings-Datensätzen aus den Trainingsdaten gebildet und/oder bereitgestellt werden. So kann das Anlernen des Ensembles von Funktions-Netzen weiter verbessert werden.The device can be set up to adapt the N function networks and the distribution network sequentially on the basis of respectively different groups of training data sets within an epoch of the learning algorithm. In particular, different groups, each with T training data records, can be formed and / or provided sequentially from the training data. In this way, the learning of the ensemble of functional networks can be further improved.
Gemäß einem weiteren Aspekt wird eine Vorrichtung zur Ermittlung von Ausgangsdaten eines Ensembles von N neuronalen Funktions-Netzen für einen Eingangs-Datensatz beschrieben, wobei N eine ganze Zahl größer als 1 ist. Die Vorrichtung kann eingerichtet sein, den Eingangs-Datensatz auf Basis von Sensordaten von ein oder mehreren Sensoren (insbesondere Umfeldsensoren eines Fahrzeugs) zu ermitteln.According to a further aspect, a device for determining output data of an ensemble of N neural function networks for an input data record is described, where N is an integer greater than 1. The device can be set up to determine the input data record on the basis of sensor data from one or more sensors (in particular environment sensors of a vehicle).
Die Vorrichtung kann eingerichtet sein, den Eingangs-Datensatz mittels eines neuronalen Verteil-Netzes, einem, insbesondere genau einem, der N Funktions-Netze zuzuweisen. Dabei können das Ensemble von N Funktions-Netzen und/oder das Verteil-Netz mit der in diesem Dokument beschriebenen Vorrichtung angelernt worden sein.The device can be set up to assign the input data record by means of a neural distribution network to one, in particular precisely one, of the N function networks. The ensemble of N functional networks and / or the distribution network can have been trained with the device described in this document.
Die Vorrichtung kann ferner eingerichtet sein, anhand des zugewiesenen Funktions-Netzes Ausgangsdaten des zugewiesenen Funktions-Netzes für den Eingangs-Datensatz als Ausgangsdaten des Ensembles von N Funktions-Netzen zu ermitteln. Dabei können als Ausgangsdaten insbesondere Ausgangsdaten bereitgestellt werden, die ein Objekt innerhalb des Eingangs-Datensatzes anzeigen.The device can also be set up to use the assigned function network to determine output data of the assigned function network for the input data set as output data of the ensemble of N function networks. In particular, output data that indicate an object within the input data record can be provided as output data.
Durch die Verwendung eines Ensembles von N neuronalen Funktions-Netzen in Zusammenhang mit einem neuronalen Verteil-Netz kann in effizienter Weise durch Teilfunktionen der einzelnen Funktions-Netze eine qualitativ hochwertige Gesamtfunktion bereitgestellt werden.By using an ensemble of N neural function networks in context With a neural distribution network, a high quality overall function can be provided in an efficient manner through partial functions of the individual function networks.
Die Vorrichtung kann eingerichtet sein, auf Basis der Ausgangsdaten des Ensembles von N Funktions-Netzen zumindest eine Fahrzeugfunktion eines Fahrzeugs (z.B. zum automatisierten Fahren) bereitzustellen und/oder zu betreiben. So kann eine qualitativ hochwertige Fahrzeugfunktion bereitgestellt werden.The device can be set up to provide and / or operate at least one vehicle function of a vehicle (e.g. for automated driving) on the basis of the output data of the ensemble of N function networks. In this way, a high-quality vehicle function can be provided.
Gemäß einem weiteren Aspekt wird ein (Straßen-) Kraftfahrzeug (insbesondere ein Personenkraftwagen oder ein Lastkraftwagen oder ein Bus oder ein Motorrad) beschrieben, das zumindest eine der in diesem Dokument beschriebenen Vorrichtungen umfasst.According to a further aspect, a (road) motor vehicle (in particular a passenger car or a truck or a bus or a motorcycle) is described which comprises at least one of the devices described in this document.
Gemäß einem weiteren Aspekt wird ein (Computer-implementiertes) Verfahren zum Anlernen eines Ensembles von N neuronalen Funktions-Netzen und eines neuronalen Verteil-Netzes beschrieben. Die N Funktions-Netze sind jeweils ausgebildet und/oder strukturiert, für einen Eingangs-Datensatz Ausgangsdaten bereitzustellen. Das Verteil-Netz ist ausgebildet und/oder strukturiert, für den Eingangs-Datensatz zumindest (insbesondere genau) ein Funktions-Netz aus den N Funktions-Netzen anzuzeigen, durch das der Eingangs-Datensatz verarbeitet werden soll, um Ausgangsdaten als Basis für die Ausgangsdaten des Ensembles von N Funktions-Netzen für den Eingangs-Datensatz bereitzustellen.According to a further aspect, a (computer-implemented) method for training an ensemble of N neural function networks and a neural distribution network is described. The N function networks are each designed and / or structured to provide output data for an input data record. The distribution network is designed and / or structured to display at least (in particular precisely) one function network from the N function networks for the input data record, through which the input data record is to be processed in order to provide output data as a basis for the output data of the ensemble of N function networks for the input data set.
Das Verfahren umfasst (in einer Epoche eines iterativen Lernalgorithmus) das Verteilen von ein oder mehreren Trainings-Datensätzen auf N Teilgruppen für die entsprechenden N Funktions-Netze anhand des Verteil-Netzes, sowie das Anpassen bzw. Anlernen der N Funktions-Netze anhand der entsprechenden N Teilgruppen von Trainings-Datensätzen (wobei ein Funktions-Netz selektiv mit den ein oder mehreren Trainings-Datensätzen der entsprechenden Teilgruppe angepasst bzw. angelernt wird). Des Weiteren umfasst das Verfahren das Ermitteln von Fehlerwerten für die ein oder mehreren Trainings-Datensätze anhand der N angepassten Funktions-Netze, sowie das Anpassen des Verteil-Netzes anhand und/oder auf Basis der ermittelten Fehlerwerte.The method comprises (in an epoch of an iterative learning algorithm) the distribution of one or more training data sets to N subgroups for the corresponding N function networks using the distribution network, as well as adapting or learning the N function networks using the corresponding N subgroups of training data sets (with a function network being selectively adapted or learned using the one or more training data sets of the corresponding subgroup). Furthermore, the method includes the determination of error values for the one or more training data sets on the basis of the N adapted function networks, as well as the adaptation of the distribution network on the basis of and / or on the basis of the error values determined.
Gemäß einem weiteren Aspekt wird ein (Computer-implementiertes) Verfahren zur Ermittlung von Ausgangsdaten eines Ensembles von N neuronalen Funktions-Netzen für einen Eingangs-Datensatz beschrieben. Das Verfahren umfasst das Zuweisen des Eingangs-Datensatzes mittels eines neuronalen Verteil-Netzes zu einem, insbesondere zu genau einem, der N Funktions-Netze. Des Weiteren umfasst das Verfahren das Ermitteln, anhand des zugewiesenen Funktions-Netzes, von Ausgangsdaten des zugewiesenen Funktions-Netzes für den Eingangs-Datensatz als Ausgangsdaten des Ensembles von N Funktions-Netzen.According to a further aspect, a (computer-implemented) method for determining output data of an ensemble of N neural function networks for an input data set is described. The method comprises the assignment of the input data record by means of a neural distribution network to one, in particular to exactly one, of the N function networks. Furthermore, the method comprises determining, on the basis of the assigned function network, output data of the assigned function network for the input data set as output data of the ensemble of N function networks.
Gemäß einem weiteren Aspekt wird ein Software (SW) Programm beschrieben. Das SW Programm kann eingerichtet werden, um auf einem Prozessor (z.B. auf einem Steuergerät eines Fahrzeugs) ausgeführt zu werden, und um dadurch eines der in diesem Dokument beschriebenen Verfahren auszuführen.According to a further aspect, a software (SW) program is described. The software program can be set up to be executed on a processor (e.g. on a control unit of a vehicle) and thereby to execute one of the methods described in this document.
Gemäß einem weiteren Aspekt wird ein Speichermedium beschrieben. Das Speichermedium kann ein SW Programm umfassen, welches eingerichtet ist, um auf einem Prozessor ausgeführt zu werden, und um dadurch eines der in diesem Dokument beschriebenen Verfahren auszuführen.According to a further aspect, a storage medium is described. The storage medium can comprise a software program which is set up to be executed on a processor and thereby to execute one of the methods described in this document.
Es ist zu beachten, dass die in diesem Dokument beschriebenen Verfahren, Vorrichtungen und Systeme sowohl alleine, als auch in Kombination mit anderen in diesem Dokument beschriebenen Verfahren, Vorrichtungen und Systemen verwendet werden können. Des Weiteren können jegliche Aspekte der in diesem Dokument beschriebenen Verfahren, Vorrichtungen und Systemen in vielfältiger Weise miteinander kombiniert werden. Insbesondere können die Merkmale der Ansprüche in vielfältiger Weise miteinander kombiniert werden.It should be noted that the methods, devices and systems described in this document can be used both alone and in combination with other methods, devices and systems described in this document. Furthermore, any aspects of the methods, devices and systems described in this document can be combined with one another in diverse ways. In particular, the features of the claims can be combined with one another in diverse ways.
Im Weiteren wird die Erfindung anhand von Ausführungsbeispielen näher beschrieben. Dabei zeigen
-
1 beispielhafte Komponenten eines Fahrzeugs; -
2a ein beispielhaftes neuronales Netz; -
2b ein beispielhaftes Neuron; -
3a eine beispielhafte Vorrichtung zum Anlernen eines Ensembles von neuronalen Netzen; -
3b eine beispielhafte Vorrichtung zur Nutzung eines angelernten Ensembles von neuronalen Netzen; -
4a eine beispielhafte Vorrichtung zum Anlernen eines Verteil-Netzes und der Funktions-Netze eines Ensembles von neuronalen Netzen; -
4b eine beispielhafte Vorrichtung zur Nutzung eines angelernten Verteil-Netzes und eines Ensembles mit angelernten Funktions-Netzen; -
5a ein beispielhaftes Verfahren zum Anlernen eines Ensembles von neuronalen Funktions-Netzen; und -
5b ein beispielhaftes Verfahren zur Nutzung eines Ensembles von angelernten neuronalen Funktions-Netzen.
-
1 exemplary components of a vehicle; -
2a an exemplary neural network; -
2 B an exemplary neuron; -
3a an exemplary device for training an ensemble of neural networks; -
3b an exemplary device for using a trained ensemble of neural networks; -
4a an exemplary device for training a distribution network and the functional networks of an ensemble of neural networks; -
4b an exemplary device for using a trained distribution network and an ensemble with trained functional networks; -
5a an exemplary method for training an ensemble of neural function networks; and -
5b an exemplary method for using an ensemble of trained neural function networks.
Wie eingangs dargelegt, befasst sich das vorliegende Dokument mit dem Anlernen und dem Verwenden eines Ensembles von neuronalen Netzen, z.B. für die Erkennung von Objekten im Umfeld eines Fahrzeugs. In diesem Zusammenhang zeigt
Des Weiteren umfasst das Fahrzeug
Ferner umfasst das Fahrzeug
Eine Steuereinheit
Zur Erkennung eines Objekts auf Basis der Sensordaten von ein oder mehreren Umfeldsensoren
Das neuronale Netz
Ein Neuron
Das Anlernen eines neuronalen Netzes
In einer zweiten Phase der qten Epoche des Lernalgorithmus erfolgt eine Rückpropagation des Fehlers bzw. des Fehlerwertes von dem Ausgang zum Eingang des neuronalen Netzes, um schichtweise die Neuron-Parameter der Neuronen
Wie eingangs dargelegt, kann es vorteilhaft sein, für eine Gesamtaufgabe, z.B. für die Erkennung von Objekten aus unterschiedlichen Gruppen von Objekt-Typen, unterschiedliche neuronale Netze zu verwenden, die jeweils auf das Lösen einer Teilaufgabe spezialisiert sind. Beispielsweise kann für jede Gruppe von Objekt-Typen, etwa für die Gruppe der Fußgänger, für die Gruppe der Personenkraftwagen, für die Gruppe der Lastkraftwagen, für die Gruppe der Zweiräder, etc. ein spezifisch angelerntes neuronales Netz bereitgestellt werden. Die Gesamtaufgabe kann dann gemeinsam durch die unterschiedlichen neuronalen Netze, d.h. durch ein Ensemble von neuronalen Netzen, gelöst werden. Die einzelnen, für eine spezifische Teilaufgabe angelernten, neuronalen Netze werden in diesem Dokument auch als Funktions-Netze bezeichnet.As stated at the beginning, it can be advantageous to use different neural networks for an overall task, e.g. for the recognition of objects from different groups of object types, each of which specializes in solving a sub-task. For example, a specifically learned neural network can be provided for each group of object types, for example for the group of pedestrians, for the group of passenger cars, for the group of trucks, for the group of two-wheelers, etc. The overall task can then be solved jointly by the different neural networks, i.e. by an ensemble of neural networks. The individual neural networks trained for a specific subtask are also referred to in this document as functional networks.
Ein Trainings-Datensatz
Die Verteileinheit
Durch die Verwendung eines Ensembles
Eine Herausforderung bei der Verwendung eines Ensembles
Das Anlernen der Funktions-Netze
Nach der Verteilung der T Trainings-Datensätze
Als Ergebnis des (teilweisen) Anlernprozesses eines Funktions-Netzes
Zum Anlernen des Verteil-Netzes
Die einzelnen Zustands-Aktions-Belohnungs-Tupel (s, a, r) für die T Trainings-Datensätze
Ein Zustands-Aktions-Paar ergibt sich aus einer dem Verteil-Netz
Alternativ oder ergänzend kann direkt ein neuronales Netz, insbesondere ein DQN (Deep-Q Network), angelernt werden, dass ausgebildet ist, für einen bestimmten Zustand s die Aktion a auszugeben, durch die die (zukünftige, erwartete und/oder kumulierte) Belohnung R maximiert wird. Insbesondere kann ein neuronales Netz angelernt werden, dass π(s) approximiert.Alternatively or in addition, a neural network, in particular a DQN (Deep-Q Network), can be learned directly that is designed to output the action a for a specific state s, through which the (future, expected and / or cumulative) reward R is maximized. In particular, a neural network can be learned that approximates π (s).
Nach der Aktualisierung des Q-Netzes und/oder des Verteil-Netzes
Dieser Prozess kann wiederholt werden, bis alle Trainings-Datensätze
Die Verteilung der Trainings-Datensätze
Das Verteil-Netz
Ggf. kann während der Trainingsphase ein Trainings-Eingangs-Datensatz
Das Verfahren
Des Weiteren umfasst das Verfahren
Das Verfahren
Außerdem umfasst das Verfahren
Es sei darauf hingewiesen, dass wenn ein Trainings-Eingangs-Datensatz
Die Trainings-Datensätze
Das Verfahren
Des Weiteren umfasst das Verfahren
Durch die in diesem Dokument beschriebenen Maßnahmen kann ein Ensemble
Die vorliegende Erfindung ist nicht auf die gezeigten Ausführungsbeispiele beschränkt. Insbesondere ist zu beachten, dass die Beschreibung und die Figuren nur beispielhaft das Prinzip der vorgeschlagenen Verfahren, Vorrichtungen und Systeme veranschaulichen sollen.The present invention is not restricted to the exemplary embodiments shown. In particular, it should be noted that the description and the figures are only intended to illustrate the principle of the proposed methods, devices and systems by way of example.
Claims (16)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019130484.9A DE102019130484A1 (en) | 2019-11-12 | 2019-11-12 | Method and device for training an ensemble of neural networks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019130484.9A DE102019130484A1 (en) | 2019-11-12 | 2019-11-12 | Method and device for training an ensemble of neural networks |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102019130484A1 true DE102019130484A1 (en) | 2021-05-12 |
Family
ID=75584093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102019130484.9A Pending DE102019130484A1 (en) | 2019-11-12 | 2019-11-12 | Method and device for training an ensemble of neural networks |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102019130484A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114697200A (en) * | 2022-03-30 | 2022-07-01 | 合肥工业大学 | Protection device matching optimization method of 5G distribution network distributed protection system |
-
2019
- 2019-11-12 DE DE102019130484.9A patent/DE102019130484A1/en active Pending
Non-Patent Citations (2)
Title |
---|
ARULKUMARAN, Kai [et al.]: Deep reinforcement learning: A brief survey. IEEE Signal Processing Magazine, 2017, 34. Jg., Nr. 6, S. 26-38 * |
BYSTROV, Aleksandr [et al.]: Automotive surface identification system based on modular neural network architecture. In: 2017 18th International Radar Symposium (IRS). IEEE, 2017. S. 1-8 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114697200A (en) * | 2022-03-30 | 2022-07-01 | 合肥工业大学 | Protection device matching optimization method of 5G distribution network distributed protection system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102018128289A1 (en) | METHOD AND DEVICE FOR AUTONOMOUS SYSTEM PERFORMANCE AND CLASSIFICATION | |
WO2020187591A1 (en) | Method and device for controlling a robot | |
EP3857437A1 (en) | Method and device for analyzing a sensor data stream and method for guiding a vehicle | |
DE102018119467B4 (en) | METHOD OF PERFORMING AUTONOMOUS OPERATION OF A VEHICLE THROUGH DEEP SPATIAL-TEMPORAL LEARNING | |
DE102019111041A1 (en) | Method and device for determining an estimated value of the side slip angle of a vehicle | |
DE102019130484A1 (en) | Method and device for training an ensemble of neural networks | |
DE102019209463A1 (en) | Method for determining the trust value of an object of a class | |
DE102019208233A1 (en) | Method and device for automatically executing a control function of a vehicle | |
DE102020210376A1 (en) | Apparatus and method for controlling a hardware agent in a multiple hardware agent control situation | |
EP4049186A1 (en) | Method for making a neural network more robust against adversarial disruptions | |
DE102020127051A1 (en) | Method for determining safety-critical output values using a data analysis device for a technical entity | |
DE102020210700A1 (en) | More flexible iterative operation of artificial neural networks | |
WO2020207786A1 (en) | Method, device, and computer program for operating a deep neural network | |
DE102019213896A1 (en) | Incremental neural network with encoder-decoder structure | |
DE102019200828A1 (en) | Main object selection for an assistance function or automated driving function of a driver assistance or driving system of a motor vehicle | |
DE102018203137A1 (en) | Method, device and computer program for operating an at least partially autonomous vehicle | |
DE102021211909A1 (en) | Method of controlling an agent | |
EP4202779A1 (en) | Method and system for classification of scenarios of a virtual test and training method | |
WO2023222343A1 (en) | Method for controlling a robot device | |
DE102021132542A1 (en) | METHOD OF PROVIDING BIT FLIP ERRORS RESISTANT; PERTURBATION-RESISTANT AND COMPRESSED NEURAL NETWORK; COMPUTER PROGRAM; DRIVER ASSISTANCE SYSTEM | |
DE102019119739A1 (en) | Method and system for generating security-critical output values of an entity | |
DE102021124204A1 (en) | Method and device for estimating the resource expenditure of a neural network | |
DE102020101248A1 (en) | Method and device for relearning a neural network | |
WO2020169416A1 (en) | Quantised training of trainable modules | |
DE102020105485A1 (en) | Training local artificial neural networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified |