DE102020103274A1 - Method and device for generating training data for teaching a neural network - Google Patents
Method and device for generating training data for teaching a neural network Download PDFInfo
- Publication number
- DE102020103274A1 DE102020103274A1 DE102020103274.9A DE102020103274A DE102020103274A1 DE 102020103274 A1 DE102020103274 A1 DE 102020103274A1 DE 102020103274 A DE102020103274 A DE 102020103274A DE 102020103274 A1 DE102020103274 A1 DE 102020103274A1
- Authority
- DE
- Germany
- Prior art keywords
- synthetic
- data sample
- gan
- real
- weighting function
- 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
-
- 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/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
Es wird eine Vorrichtung zur Bereitstellung von Trainingsdaten zum Anlernen eines neuronalen Netzes für eine bestimmte Aufgabe beschrieben. Die Vorrichtung ist eingerichtet, auf Basis einer synthetischen Menge von synthetischen Daten-Stichproben, die eine Ursprungs-Wahrscheinlichkeitsverteilung aufweisen, und auf Basis einer realen Menge von realen Daten-Stichproben, die eine Ziel-Wahrscheinlichkeitsverteilung aufweisen, eine Gewichtungsfunktion zu ermitteln. Die Vorrichtung ist ferner eingerichtet, unter Berücksichtigung der ermittelten Gewichtungsfunktion ein Generative Adversarial Network, kurz GAN, anzulernen, wobei das GAN ein Generator-Netzwerk umfasst. Die Trainingsdaten können dann anhand des angelernten Generator-Netzwerks ermittelt werden.A device for providing training data for teaching a neural network for a specific task is described. The device is set up to determine a weighting function on the basis of a synthetic set of synthetic data samples that have an original probability distribution and on the basis of a real set of real data samples that have a target probability distribution. The device is also set up, taking into account the determined weighting function, to learn a Generative Adversarial Network, GAN for short, the GAN comprising a generator network. The training data can then be determined using the trained generator network.
Description
Die Erfindung betrifft eine Vorrichtung und ein entsprechendes Verfahren zur Erzeugung von Trainingsdaten zum Anlernen eines neuronalen Netzes.The invention relates to a device and a corresponding method for generating training data for teaching a neural network.
Ein zumindest teilweise automatisiert fahrendes (Kraft-) Fahrzeug (z.B. ein Personenkraftwagen, ein Lastkraftwagen oder ein Bus) 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 (motor) vehicle (e.g. a passenger car, a truck or a bus) can be set up to evaluate sensor data from one or more environment sensors of the vehicle (e.g. an image camera, a lidar sensor, a radar sensor, etc.), e.g. to detect one or more objects around 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. Das Anlernen von neuronalen Netzen für unterschiedliche Aufgaben, z.B. für das Erkennen von unterschiedlichen Typen von Objekten, ist typischerweise mit einem relativ hohen Aufwand verbunden, insbesondere in Bezug auf die Bereitstellung von gelabelten Trainingsdaten, etwa gelabelten Bildern, für die unterschiedlichen Aufgaben.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 learning of neural networks for different tasks, e.g. for the recognition of different types of objects, is typically associated with a relatively high effort, especially with regard to the provision of labeled training data, such as labeled images, for the different tasks.
Ein Ansatz zur Bereitstellung von gelabelten Trainingsdaten ist das Generieren von synthetischen Trainingsdaten, z.B. von gelabelten synthetischen Bildern, mittels einer Computeranimation. Es hat sich jedoch gezeigt, dass ein auf Basis von synthetischen Trainingsdaten angelerntes neuronales Netz bei Verwendung mit realen Daten (insbesondere mit realen Bildern) eine begrenzte Zuverlässigkeit, z.B. eine relativ geringe Objekterkennungsrate, aufweist.One approach to providing labeled training data is to generate synthetic training data, e.g. labeled synthetic images, by means of computer animation. However, it has been shown that a neural network learned on the basis of synthetic training data has a limited reliability, e.g. a relatively low object recognition rate, when used with real data (in particular with real images).
Das vorliegende Dokument befasst sich mit der technischen Aufgabe, synthetisch generierte Trainingsdaten zum Anlernen eines neuronalen Netzes (z.B. für die Aufgabe der Objekterkennung) bereitzustellen, das auch bei Anwendung auf reale Daten eine hohe Zuverlässigkeit aufweist.The present document deals with the technical task of providing synthetically generated training data for learning a neural network (e.g. for the task of object recognition), which is also highly reliable when applied to real data.
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) zur Bereitstellung von Trainingsdaten zum Anlernen eines neuronalen Netzes für eine bestimmte Aufgabe beschrieben. Das für die bestimmte Aufgabe angelernte neuronale Netz kann z.B. für eine Objektklassifizierung, eine Objekterkennung und/oder eine Objektsegmentierung (innerhalb von Bildern) ausgebildet sein. Mit anderen Worten, die bestimmte Aufgabe kann Objektklassifizierung, Objekterkennung und/oder Objektsegmentierung (innerhalb von ein oder mehreren Bildern) sein.According to one aspect, a device (e.g. a computer or a server) for providing training data for training a neural network for a specific task is described. The neural network learned for the specific task can be designed, for example, for object classification, object recognition and / or object segmentation (within images). In other words, the particular task can be object classification, object recognition and / or object segmentation (within one or more images).
Die Vorrichtung ist eingerichtet, auf Basis einer synthetischen Menge von synthetischen Daten-Stichproben, die eine Ursprungs-Wahrscheinlichkeitsverteilung aufweisen, und auf Basis einer realen Menge von realen Daten-Stichproben, die eine Ziel-Wahrscheinlichkeitsverteilung aufweisen, eine Gewichtungsfunktion zu ermitteln. Die synthetische Menge und/oder die reale Menge können dabei jeweils 100 oder mehr, oder 1000 oder mehr, oder 10000 oder mehr Stichproben umfassen. Eine synthetische Daten-Stichprobe und/oder eine reale Daten-Stichprobe können dabei jeweils ein Bild, insbesondere jeweils ein gelabeltes Bild, umfassen bzw. sein. Eine synthetische Daten-Stichprobe kann z.B. anhand einer Computersimulation bzw. einer Computeranimation generiert worden sein. Eine reale Daten-Stichprobe kann z.B. durch einen Umfeldsensor, insbesondere durch eine Kamera, (eines Fahrzeugs) erfasst worden sein.The device is set up to determine a weighting function on the basis of a synthetic set of synthetic data samples that have an original probability distribution and on the basis of a real set of real data samples that have a target probability distribution. The synthetic amount and / or the real amount can each comprise 100 or more, or 1000 or more, or 10,000 or more samples. A synthetic data sample and / or a real data sample can each include or be an image, in particular a labeled image. A synthetic data sample can, for example, have been generated using a computer simulation or a computer animation. A real data sample can, for example, have been recorded by an environment sensor, in particular by a camera (of a vehicle).
Die Gewichtungsfunktion kann derart ermittelt werden, dass die Gewichtungsfunktion für eine synthetische Daten-Stichprobe aus der synthetischen Menge anzeigt, wie nah die synthetische Daten-Stichprobe im Sinne eines (symmetrischen und/oder asymmetrischen) Abstandsmaßes an der Ziel-Wahrscheinlichkeitsverteilung ist bzw. liegt, und/oder wie gut die synthetische Daten-Stichprobe im Sinne des Abstandsmaßes zu der Ziel-Wahrscheinlichkeitsverteilung passt. Das Abstandsmaß kann z.B. ein Maß für eine Divergenz umfassen bzw. sein (insbesondere für eine Kullback-Leibler-Divergenz).The weighting function can be determined in such a way that the weighting function for a synthetic data sample from the synthetic set indicates how close the synthetic data sample is to the target in terms of a (symmetrical and / or asymmetrical) distance measure. The probability distribution is or is, and / or how well the synthetic data sample fits the target probability distribution in the sense of the distance measure. The distance measure can, for example, comprise or be a measure for a divergence (in particular for a Kullback-Leibler divergence).
Die Gewichtungsfunktion kann insbesondere derart ermittelt werden, dass die Gewichtungsfunktion für jede der synthetischen Daten-Stichproben aus der synthetischen Menge jeweils einen Gewichtungswert anzeigt. Dabei kann der Gewichtungswert für eine synthetische Daten-Stichprobe anzeigen, wie nah die synthetische Daten-Stichprobe im Sinne des Abstandsmaßes an der Ziel-Wahrscheinlichkeitsverteilung ist bzw. liegt, und/oder wie gut die synthetische Daten-Stichprobe im Sinne des Abstandsmaßes zu der Ziel-Wahrscheinlichkeitsverteilung passt. Dabei kann ein relativ hoher Gewichtungswert anzeigen, dass die synthetische Daten-Stichprobe relativ nah an der Ziel-Wahrscheinlichkeitsverteilung liegt und/oder relativ gut zu der Ziel-Wahrscheinlichkeitsverteilung passt. Andererseits kann ein relativ niedriger Gewichtungswert anzeigen, dass die synthetische Daten-Stichprobe relativ weit entfernt von der Ziel-Wahrscheinlichkeitsverteilung liegt und/oder relativ schlecht zu der Ziel-Wahrscheinlichkeitsverteilung passt. Die Gewichtungsfunktion kann z.B. auf Gewichtungswerte zwischen Null und Eins normiert sein.The weighting function can in particular be determined in such a way that the weighting function displays a weighting value for each of the synthetic data samples from the synthetic set. The weighting value for a synthetic data sample can indicate how close the synthetic data sample is or is to the target probability distribution in terms of the distance measure, and / or how good the synthetic data sample is in terms of the distance measure to the target - Probability distribution fits. A relatively high weighting value can indicate that the synthetic data sample is relatively close to the target probability distribution and / or fits relatively well with the target probability distribution. On the other hand, a relatively low weighting value can indicate that the synthetic data sample is relatively far removed from the target probability distribution and / or fits the target probability distribution relatively poorly. The weighting function can, for example, be normalized to weighting values between zero and one.
Die Gewichtungsfunktion kann insbesondere derart ermittelt werden, dass die Gewichtungsfunktion eine Approximation des Verhältnisses der Dichtefunktion der Ziel-Wahrscheinlichkeitsverteilung zu der Dichtefunktion der Ursprungs-Wahrscheinlichkeitsverteilung ist bzw. darstellt. So kann ein Generative Adversarial Network, kurz GAN, bereitgestellt werden, das die Semantik der synthetischen Daten-Stichproben in besonders zuverlässiger Weise beibehält.The weighting function can in particular be determined in such a way that the weighting function is or represents an approximation of the ratio of the density function of the target probability distribution to the density function of the original probability distribution. In this way, a Generative Adversarial Network, or GAN for short, can be provided which maintains the semantics of the synthetic data samples in a particularly reliable manner.
Die Vorrichtung kann eingerichtet sein, die Gewichtungsfunktion mittels einer Kullback-Leibler importance estimation procedure, kurz KLIEP, Methode zu ermitteln. Das Abstandsmaß kann in diesem Fall einen Kullback-Leibler-Abstand bzw. eine Kullback-Leibler-Divergenz umfassen oder ein Kullback-Leibler-Abstand bzw. eine Kullback-Leibler-Divergenz sein. So können eine besonders präzise Approximation des Verhältnisses der Dichtefunktionen und somit eine besonders präzise Gewichtungsfunktion bereitgestellt werden.The device can be set up to determine the weighting function by means of a Kullback-Leibler importance estimation procedure, or KLIEP for short, method. In this case, the distance measure can comprise a Kullback-Leibler distance or a Kullback-Leibler divergence or a Kullback-Leibler distance or a Kullback-Leibler divergence. A particularly precise approximation of the ratio of the density functions and thus a particularly precise weighting function can thus be provided.
Alternativ oder ergänzend kann die Vorrichtung eingerichtet sein, die Gewichtungsfunktion auf Basis einer gewichteten Summe von Basisfunktionen zu ermitteln. Dabei können die Basisfunktionen radial basis function, kurz RBF, Kerne umfassen. Des Weiteren können die Basisfunktionen von den realen Daten-Stichproben aus der realen Menge abhängen. So können eine besonders präzise Approximation des Verhältnisses der Dichtefunktionen und somit eine besonders präzise Gewichtungsfunktion bereitgestellt werden.As an alternative or in addition, the device can be set up to determine the weighting function on the basis of a weighted sum of basic functions. The basic functions can include radial basis function, RBF for short, cores. Furthermore, the basic functions can depend on the real data samples from the real set. A particularly precise approximation of the ratio of the density functions and thus a particularly precise weighting function can thus be provided.
Die Vorrichtung ist ferner eingerichtet, unter Berücksichtigung der ermittelten Gewichtungsfunktion ein GAN anzulernen. Dabei umfasst das GAN ein Generator-Netzwerk, das ausgebildet ist, auf Basis einer synthetischen Daten-Stichprobe jeweils eine entsprechende angepasste Daten-Stichprobe zu ermitteln. Des Weiteren umfasst das GAN ferner ein Diskriminator-Netzwerk, das ausgebildet ist, eine von dem Generator-Netzwerk aus einer synthetischen Daten-Stichprobe generierte angepasste Daten-Stichprobe und eine reale Daten-Stichprobe aus der realen Menge (paarweise) zu analysieren, und eine Entscheidung für oder gegen die angepasste Daten-Stichprobe zu treffen. Dabei kann insbesondere eine Entscheidung darüber getroffen werden, ob die angepasste Daten-Stichprobe oder die reale Daten-Stichprobe eine Stichprobe aus der Ziel-Wahrscheinlichkeitsverteilung ist. Das GAN kann derart angelernt werden, dass das Diskriminator-Netzwerk (genau) in 50% der Fälle für die jeweils angepasste Daten-Stichprobe und/oder (genau) in 50% der Fälle gegen die jeweils angepasste Daten-Stichprobe entscheidet.The device is also set up to learn a GAN, taking into account the weighting function determined. The GAN includes a generator network which is designed to determine a corresponding adapted data sample on the basis of a synthetic data sample. Furthermore, the GAN further comprises a discriminator network which is designed to analyze an adapted data sample generated by the generator network from a synthetic data sample and a real data sample from the real set (in pairs), and a To make a decision for or against the adapted data sample. In particular, a decision can be made as to whether the adapted data sample or the real data sample is a sample from the target probability distribution. The GAN can be learned in such a way that the discriminator network decides (exactly) in 50% of the cases for the respectively adjusted data sample and / or (exactly) in 50% of the cases against the respectively adjusted data sample.
Die Vorrichtung kann eingerichtet sein, eine Fehlerfunktion zum Anlernen des GANs auf Basis der Gewichtungsfunktion zu ermitteln. Insbesondere kann die Vorrichtung eingerichtet sein, einen Fehlerterm der Fehlerfunktion für eine synthetische Daten-Stichprobe mit dem Gewichtungswert der Gewichtungsfunktion für die synthetische Daten-Stichprobe zu gewichten. Der Fehlerterm der Fehlerfunktion für die synthetische Daten-Stichprobe kann dabei davon abhängen, ob sich das Diskriminator-Netzwerk des GANs bei der Analyse der entsprechenden angepassten Daten-Stichprobe und einer realen Daten-Stichprobe aus der realen Menge für die angepassten Daten-Stichprobe entscheidet oder nicht. Alternativ oder ergänzend kann die Fehlerfunktion von dem Erwartungswert der Entscheidungen des Diskriminator-Netzwerks für die synthetischen Daten-Stichproben aus der synthetischen Menge, insbesondere von einem mit der Gewichtungsfunktion gewichteten Erwartungswert der Entscheidungen des Diskriminator-Netzwerks für die synthetischen Daten-Stichproben aus der synthetischen Menge, abhängen.The device can be set up to determine an error function for teaching the GAN on the basis of the weighting function. In particular, the device can be set up to weight an error term of the error function for a synthetic data sample with the weighting value of the weighting function for the synthetic data sample. The error term of the error function for the synthetic data sample can depend on whether the discriminator network of the GAN decides in favor of the adjusted data sample when analyzing the corresponding adjusted data sample and a real data sample from the real quantity Not. Alternatively or additionally, the error function can be derived from the expected value of the decisions of the discriminator network for the synthetic data samples from the synthetic set, in particular from an expected value of the decisions of the discriminator network weighted with the weighting function for the synthetic data samples from the synthetic set , depend.
Durch die Gewichtung der Fehlerfunktion kann in effizienter Weise bewirkt werden, dass das GAN verstärkt auf Basis der synthetischen Daten-Stichproben angelernt wird, die bereits relativ gut zu der Ziel-Wahrscheinlichkeitsverteilung passen (und somit nur relativ wenig angepasst werden müssen). Als Folge daraus kann das Ausmaß der semantischen Veränderungen, die von dem Generator-Netzwerk des GANs bewirkt werden, reduziert werden.By weighting the error function, it can be achieved in an efficient manner that the GAN is increasingly trained on the basis of the synthetic data samples, which already fit relatively well with the target probability distribution (and therefore only need to be adapted relatively little). As a result, the extent of the semantic changes caused by the generator network of the GAN can be reduced.
Die Vorrichtung kann ferner eingerichtet sein, die Trainingsdaten anhand des Generator-Netzwerks des GANs zu ermitteln. Insbesondere kann die Vorrichtung eingerichtet sein, anhand des Generator-Netzwerks für jede synthetische Daten-Stichprobe aus der synthetischen Menge jeweils eine angepasste Daten-Stichprobe als Teil der Trainingsdaten für das neuronale Netz zu ermitteln. Das neuronale Netz kann dann in präziser Weise anhand der ermittelten Trainingsdaten angelernt werden. So können die Objekterkennung in einem Fahrzeug verbessert und basierend darauf die automatisierte Längs- und/oder Querführung des Fahrzeugs verbessert werden.The device can also be set up to determine the training data on the basis of the generator network of the GAN. In particular, the device can be set up to use the generator network to determine an adapted data sample from the synthetic set as part of the training data for the neural network for each synthetic data sample. The neural network can then be learned in a precise manner on the basis of the training data determined. Object recognition in a vehicle can thus be improved and, based on this, the automated longitudinal and / or lateral guidance of the vehicle can be improved.
Die Vorrichtung kann eingerichtet sein, auf Basis der synthetischen Menge von synthetischen Daten-Stichproben und auf Basis der realen Menge von realen Daten-Stichproben eine inverse Gewichtungsfunktion zu ermitteln. Die inverse Gewichtungsfunktion kann für eine reale Daten-Stichprobe aus der realen Menge anzeigen, wie nah die reale Daten-Stichprobe im Sinne eines Abstandsmaßes an der Ursprungs-Wahrscheinlichkeitsverteilung ist bzw. liegt und/oder wie gut die reale Daten-Stichprobe zu der Ursprungs-Wahrscheinlichkeitsverteilung passt.The device can be set up to determine an inverse weighting function on the basis of the synthetic amount of synthetic data samples and on the basis of the real amount of real data samples. For a real data sample from the real set, the inverse weighting function can show how close the real data sample is or is to the original probability distribution in the sense of a distance measure and / or how well the real data sample is to the original Probability distribution fits.
Des Weiteren kann die Vorrichtung eingerichtet sein, unter Berücksichtigung der ermittelten inversen Gewichtungsfunktion und gemeinsam mit dem GAN ein inverses GAN anzulernen. Dabei kann das inverse GAN ein inverses Generator-Netzwerk umfassen, das ausgebildet ist, auf Basis einer realen Daten-Stichprobe eine entsprechende invers angepasste Daten-Stichprobe zu ermitteln.Furthermore, the device can be set up to learn an inverse GAN, taking into account the ascertained inverse weighting function and together with the GAN. The inverse GAN can include an inverse generator network which is designed to determine a corresponding inversely adapted data sample on the basis of a real data sample.
In einem bevorzugten Beispiel können das GAN und das inverse GAN mittels einer gemeinsamen Fehlerfunktion angelernt werden, wobei die gemeinsame Fehlerfunktion von der Gewichtungsfunktion und von der inversen Gewichtungsfunktion abhängt. Die Fehlerfunktion kann dabei einen ersten Fehlerterm umfassen, der von einer Entscheidung des Diskriminator-Netzwerks des GANs abhängt, und einen zweiten Fehlerterm umfassen, der von einer Entscheidung des inversen Diskriminator-Netzwerks des inversen GANs abhängt. Der erste Fehlerterm kann dann mit der Gewichtungsfunktion gewichtet werden und der zweite Fehlerterm kann mit der inversen Gewichtungsfunktion gewichtet werden.In a preferred example, the GAN and the inverse GAN can be learned by means of a common error function, the common error function depending on the weighting function and on the inverse weighting function. The error function can include a first error term that depends on a decision by the discriminator network of the GAN, and a second error term that depends on a decision by the inverse discriminator network of the inverse GAN. The first error term can then be weighted with the weighting function and the second error term can be weighted with the inverse weighting function.
Durch das gleichzeitige Anlernen eines GANs und eines inversen GANs können die Robustheit des angelernten GANs und damit die Güte der bereitgestellten Trainingsdaten und damit die Güte des angelernten neuronalen Netzes erhöht werden.By learning a GAN and an inverse GAN at the same time, the robustness of the learned GAN and thus the quality of the training data provided and thus the quality of the learned neural network can be increased.
Gemäß einem weiteren Aspekt wird ein (Computer-implementiertes) Verfahren zur Bereitstellung und/oder zur Ermittlung von Trainingsdaten zum Anlernen eines neuronalen Netzes für eine bestimmte Aufgabe beschrieben. Das Verfahren umfasst das Ermitteln einer Gewichtungsfunktion, auf Basis einer synthetischen Menge von synthetischen Daten-Stichproben, die eine Ursprungs-Wahrscheinlichkeitsverteilung aufweisen, und auf Basis einer realen Menge von realen Daten-Stichproben, die eine Ziel-Wahrscheinlichkeitsverteilung aufweisen. Das Verfahren umfasst ferner das Anlernen eines GANs unter Berücksichtigung der ermittelten Gewichtungsfunktion. Des Weiteren umfasst das Verfahren das Ermitteln der Trainingsdaten anhand des Generator-Netzwerks des angelernten GANs.According to a further aspect, a (computer-implemented) method for providing and / or determining training data for teaching a neural network for a specific task is described. The method comprises determining a weighting function based on a synthetic set of synthetic data samples that have an original probability distribution and based on a real set of real data samples that have a target probability distribution. The method further comprises the training of a GAN taking into account the weighting function determined. The method also includes determining the training data using the generator network of the trained GAN.
Gemäß einem weiteren Aspekt wird ein Software (SW) Programm beschrieben. Das SW Programm kann eingerichtet werden, um auf einem Prozessor ausgeführt zu werden, und um dadurch das in diesem Dokument beschriebene 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 and thereby to execute the method 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 das in diesem Dokument beschriebene 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 the method 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 j egliche 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; -
3 ein beispielhaftes Generative Adversarial Network (GAN); und -
4 ein Ablaufdiagramm eines beispielhaften Verfahrens zur Bereitstellung von Trainingsdaten zum Anlernen eines neuronalen Netzes.
-
1 exemplary components of a vehicle; -
2a an exemplary neural network; -
2 B an exemplary neuron; -
3 an exemplary Generative Adversarial Network (GAN); and -
4th a flowchart of an exemplary method for providing training data for teaching a neural network.
Wie eingangs dargelegt, befasst sich das vorliegende Dokument mit der effizienten Bereitstellung von Trainingsdaten zum Anlernen eines neuronalen Netzes für eine bestimmte Zielaufgabe. Beispielhafte Aufgaben eines neuronalen Netzes sind: die Klassifizierung, die Objekterkennung und/oder die Segmentierung.As stated at the beginning, the present document deals with the efficient provision of training data for teaching a neural network for a specific target task. Exemplary tasks of a neural network are: classification, object recognition and / or segmentation.
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
Die Anzahl von Daten-Stichproben in einer Trainingsmenge, z.B. die Anzahl von gelabelten Bildern einer Kamera, die für das Anlernen eines neuronalen Netzes
Die Daten-Stichproben eines Trainings-Datensatzes können synthetisch generiert werden. Beispielsweise können als Daten-Stichproben synthetische Bilder mittels einer Computeranimation generiert werden. Das Labeln der synthetischen Bilder kann dann jeweils automatisch im Rahmen der Computeranimation erfolgen. Es hat sich jedoch gezeigt, dass ein neuronales Netz
Eine synthetische Menge
Zum Anlernen des GANs
Andererseits wird zum Anlernen des Generator-Netzwerkes
Ein von dem Generator-Netzwerk
Wie weiter oben dargelegt, weisen die synthetischen Daten-Stichproben
In diesem Dokument wird ein Verfahren beschrieben, das es ermöglicht, ein GAN
- a) eine gewünschte Ziel-Wahrscheinlichkeitsverteilung Pr(x) aufweisen (die durch die
reale Menge 320 beschrieben wird); und - b) keine (wesentlichen) semantischen Veränderungen gegenüber den entsprechenden synthetischen Daten-
Stichproben 311 aufweisen.
- a) have a desired target probability distribution P r (x) (that by the
real quantity 320 is described); and - b) no (significant) semantic changes compared to the corresponding
synthetic data samples 311 exhibit.
Zu diesem Zweck kann eine Gewichtungsfunktion ω (x) bereitgestellt, insbesondere approximiert, werden. Die Gewichtungsfunktion kann dabei für eine synthetische Daten-Stichprobe
Die Gewichtungsfunktion kann von der Wahrscheinlichkeitsdichtefunktion ps(x) der synthetischen Daten-Stichproben
Zur Approximation der Gewichtungsfunktion kann die Kullback-Leibler Importance Estimation Procedure (KLIEP) Methode verwendet werden. Dabei kann die Gewichtungsfunktion durch eine gewichtete Summe von Basisfunktionen φi(x) approximiert werden, z.B. als
Beim Anlernen des GANs
Als Fehlerfunktion beim Anlernen des GANs
Zur Erhöhung der Robustheit des GANs
Als gemeinsame Fehlerfunktion zum Anlernen der Netzwerke beider GANs kann die folgende Fehlerfunktion verwendet werden
Dabei ist ψ(x) eine inverse Gewichtungsfunktion für das inverse GAN, mit dem das inverse Verhältnis der Dichtefunktion, d.h.
Das Verfahren
Dabei kann die Gewichtungsfunktion ω̂(x) für eine synthetische Daten-Stichprobe
Das Verfahren
Außerdem umfasst das Verfahren
Durch die in diesem Dokument beschriebenen Maßnahmen können in effizienter Weise Trainingsdaten bereitgestellt werden, mit denen ein neuronales Netz
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 (14)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102020103274.9A DE102020103274A1 (en) | 2020-02-10 | 2020-02-10 | Method and device for generating training data for teaching a neural network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102020103274.9A DE102020103274A1 (en) | 2020-02-10 | 2020-02-10 | Method and device for generating training data for teaching a neural network |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102020103274A1 true DE102020103274A1 (en) | 2021-08-12 |
Family
ID=76968422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102020103274.9A Pending DE102020103274A1 (en) | 2020-02-10 | 2020-02-10 | Method and device for generating training data for teaching a neural network |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102020103274A1 (en) |
-
2020
- 2020-02-10 DE DE102020103274.9A patent/DE102020103274A1/en active Pending
Non-Patent Citations (3)
Title |
---|
DIESENDRUCK, M. [et al.]: Importance weighted generative networks. In: arXiv [online], Juni 2020.URL: https://arxiv.org/abs/1806.02512v2[abgerufen am 20.01.2021] |
PANTAZIS, Y. [et al.]: Training generative adversarial networks with weights. In: 2019 27th European Signal Processing Conference (EUSIPCO), IEEE, 2019.URL: https://ieeexplore.ieee.org/iel7/8893974/8902336/08902934.pdf[abgerufen am 20.01.2021] |
SAVKIN, A. [et al.]: Sampling/importance resampling for semantically consistent synthetic to real image domain adaptation in urban traffic scenes. In: 2019 IEEE Intelligent Vehicles Symposium (IV), IEEE, 2019, S. 1061-1068.URL: https://ieeexplore.ieee.org/iel7/8792328/8813768/08814168.pdf [abgerufen am 19.01.2021] |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102018200724A1 (en) | Method and device for improving the robustness against "Adversarial Examples" | |
DE102018218586A1 (en) | Method, device and computer program for generating robust automatic learning systems and testing trained automatic learning systems | |
DE102018128289A1 (en) | METHOD AND DEVICE FOR AUTONOMOUS SYSTEM PERFORMANCE AND CLASSIFICATION | |
DE102019209644A1 (en) | Method for training a neural network | |
WO2020260016A1 (en) | Method and apparatus for training a machine learning system | |
DE102019114737A1 (en) | Method and device for predicting the behavior of a road user | |
DE102020103274A1 (en) | Method and device for generating training data for teaching a neural network | |
EP3857455A1 (en) | Machine learning system and a method, a computer program and a device for creating the machine learning system | |
DE102018215288A1 (en) | Method and processing unit for tracking an object | |
DE102022201679A1 (en) | Method and device for training a neural network | |
DE102021133977A1 (en) | Method and system for classifying virtual test scenarios and training methods | |
DE102021212277A1 (en) | Method and device for reinforcement learning | |
DE102019207911A1 (en) | Method, device and computer program for predicting a learning curve | |
DE102021202813A1 (en) | Method, device and computer program for an uncertainty assessment of an image classification | |
DE102020213253A1 (en) | COMPUTER-IMPLEMENTED CONSISTENT CLASSIFICATION PROCEDURES | |
DE102020101248A1 (en) | Method and device for relearning a neural network | |
DE102021124204A1 (en) | Method and device for estimating the resource expenditure of a neural network | |
DE102021124649A1 (en) | Method and device for generating images using scene graphs | |
DE102020203135A1 (en) | Procedure for quality assurance of an example-based system | |
DE202019103046U1 (en) | Device for predicting a learning curve | |
DE102019130484A1 (en) | Method and device for training an ensemble of neural networks | |
DE102016200854B4 (en) | Method and arithmetic unit for dimensioning a classifier | |
DE102021124203A1 (en) | Method and device for training a neural network with quantized parameters | |
DE202023102037U1 (en) | Device for optimizing a hyperparameter space with at least two hyperparameters of a machine learning algorithm | |
DE102021108934A1 (en) | Method and system for providing a function using a machine-learned processing unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06K0009620000 Ipc: G06V0030190000 |