DE102021204550A1 - Method for generating at least one data set for training a machine learning algorithm - Google Patents
Method for generating at least one data set for training a machine learning algorithm Download PDFInfo
- Publication number
- DE102021204550A1 DE102021204550A1 DE102021204550.2A DE102021204550A DE102021204550A1 DE 102021204550 A1 DE102021204550 A1 DE 102021204550A1 DE 102021204550 A DE102021204550 A DE 102021204550A DE 102021204550 A1 DE102021204550 A1 DE 102021204550A1
- Authority
- DE
- Germany
- Prior art keywords
- data set
- machine learning
- training
- learning algorithm
- classes
- 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
- G06N20/00—Machine learning
-
- 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/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens, wobei das Verfahren folgende Schritte aufweist: Bereitstellen eines ersten Datensatzes, wobei wenigstens zwei Klassen in dem ersten Datensatz vorkommen, und wobei der erste Datensatz eine Mehrzahl von basierend auf den wenigstens zwei Klassen klassifizierten Stichproben aufweist (3); Für jede der wenigstens zwei Klassen, Schätzen einer klassenspezifischen Wahrscheinlichkeit, wobei die klassenspezifische Wahrscheinlichkeit jeweils angibt, mit welcher Wahrscheinlichkeit es sich bei der entsprechenden Klasse um eine Mehrheitsklasse handelt (4); Erzeugen wenigstens eines weiteren Datensatzes aus dem ersten Datensatz durch Modifizieren von in dem ersten Datensatz enthaltenen Stichproben derart, dass in einzelnen in dem ersten Datensatz enthaltenen Stichproben zufällig Regionen, welche Klassen, welche eine höhere klassenspezifische Wahrscheinlichkeit als andere Klassen aufweisen, repräsentieren, ausgeschnitten werden (5); und Bereitstellen des wenigstens einen weiteren Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens (6).The invention relates to a method for generating at least one data set for training a machine learning algorithm, the method having the following steps: providing a first data set, wherein at least two classes occur in the first data set, and wherein the first data set contains a plurality of based on the has at least two classes of classified samples (3); For each of the at least two classes, estimating a class-specific probability, the class-specific probability in each case indicating the probability with which the corresponding class is a majority class (4); Generating at least one further data set from the first data set by modifying samples contained in the first data set in such a way that individual samples contained in the first data set are randomly cut out from regions which represent classes which have a higher class-specific probability than other classes ( 5); and providing the at least one further data set for training a machine learning algorithm (6).
Description
Die Erfindung betrifft ein Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens und insbesondere ein Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens mit welchem wenigstens ein entsprechender Trainingsdatensatz derart erzeugt werden kann, dass auf einer unausgewogenen Klassifizierung innerhalb des Datensatzes basierende Probleme vermieden werden.The invention relates to a method for generating at least one data set for training a machine learning algorithm and in particular a method for generating at least one data set for training a machine learning algorithm with which at least one corresponding training data set can be generated in such a way that an unbalanced classification within the data set is based based problems are avoided.
Algorithmen maschinellen Lernens basieren darauf, dass Verfahren der Statistik verwendet werden, um eine Datenverarbeitungsanlage derart zu trainieren, dass diese eine bestimmte Aufgabe ausführen kann, ohne dass diese ursprünglich explizit hierzu programmiert wurde. Das Ziel des maschinellen Lernens besteht dabei darin, Algorithmen zu konstruieren, die aus Daten lernen und Vorhersagen treffen können. Diese Algorithmen erstellen mathematische Modelle, mit denen beispielsweise Daten klassifiziert werden können.Machine learning algorithms are based on the fact that statistical methods are used to train a data processing system in such a way that it can perform a specific task without originally being programmed explicitly for this purpose. The goal of machine learning is to construct algorithms that can learn from data and make predictions. These algorithms create mathematical models that can be used, for example, to classify data.
Viele Algorithmen maschinellen Lernens basieren dabei weiter auf einer Klassifizierung, das heißt einem Einteilen von Objekten oder Situationen in Klassen, das heißt einzelne Gruppen beziehungsweise Kategorien. Beispielsweise kann dabei zwischen Regionen beziehungsweise Bereichen in durch einen Algorithmus maschinellen Lernens, beispielsweise einem Algorithmus zum Detektieren von Fußgängern, zu verarbeitenden Daten, welche Straßen repräsentieren, und Regionen beziehungsweise Bereichen in den Daten, welche Personen repräsentieren, unterschieden werden. Bei den Regionen kann es sich dabei beispielsweise um einzelne, in den Daten enthaltene Boxen oder Pixel handeln.Many machine learning algorithms are also based on classification, i.e. dividing objects or situations into classes, i.e. individual groups or categories. For example, a distinction can be made between regions or areas in data to be processed by a machine learning algorithm, for example an algorithm for detecting pedestrians, which represent streets, and regions or areas in the data which represent people. The regions can be, for example, individual boxes or pixels contained in the data.
Dabei kann es jedoch dazu kommen, dass die einzelnen Klassen in Trainingsdatensätzen, basierend auf welchen der Algorithmus maschinellen Lernens trainiert wird, mit einer unterschiedlichen Häufigkeit vorkommen, das heißt die Klasseneinteilung in den Trainingsdaten stark verzerrt ist. Eine derartige unausgewogene Klassifizierung beziehungsweise ein derartiges Klassenungleichgewicht kann jedoch dazu führen, dass eine Klasse von einem trainierten Algorithmus maschinellen Lernens anschließend nicht oder nur ungenau beziehungsweise mit einer hohen Fehlerquote erfasst wird, obwohl der trainierte Algorithmus maschinellen Lernens an sich ein hohes Maß an Genauigkeit aufweist.In this case, however, it can happen that the individual classes in the training data sets, on the basis of which the machine learning algorithm is trained, occur with a different frequency, ie the classification of classes in the training data is highly distorted. However, such an unbalanced classification or such a class imbalance can result in a class then not being recorded by a trained machine learning algorithm, or only inaccurately or with a high error rate, although the trained machine learning algorithm itself has a high degree of accuracy.
Diesbezüglich wurde vorgeschlagen, Trainingsdatensätze, basierend auf welchen Algorithmen des maschinellen Lernens trainiert werden, derart zu bearbeiten, dass Stichproben in einem Trainingsdatensatz, welche Minderheitsklassen, das heißt weniger häufig vorkommende Klassen, repräsentieren, dupliziert werden, das heißt dass diese in dem entsprechenden Trainingsdatensatz mehrfach vorkommen (Überabtastung), oder dass Stichproben in einem Trainingsdatensatz, welche Mehrheitsklassen, das heißt häufig vorkommende Klassen, repräsentieren, aus dem Trainingsdatensatz gelöscht werden (Unterabtastung). Beispielsweise bei einer derartigen Unterabtastung erweist es sich jedoch als nachteilig, dass mit dem Löschen von Stichproben wiederum auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht werden. Eine derartige Überabtastung wiederum hat den Nachteil, dass es dazukommen kann, dass die Häufigkeit, mit welcher eine derartige Minderheitsklasse in einem entsprechenden Trainingsdatensatz schlussendlich vorkommt, verglichen mit einer zugrundeliegenden tatsächlichen Realität wiederum signifikant erhöht sein kann, was ebenfalls zu Ungenauigkeiten bei einer anschließenden Anwendung des Algorithmus maschinellen Lernens führen kann. Zudem sind Situationen denkbar, in denen eine derartige Überabtastung zwar zu einer Erhöhung der Anzahl an Stichproben führt, nicht jedoch die Variabilität der Stichproben. Beispielsweise sind Situationen denkbar, in denen derselbe Fußgänger in zwanzig Stichproben enthalten ist, wohingegen jedoch zwanzig Stichproben mit jeweils unterschiedlichen Fußgängern von Vorteil wären.In this regard, it has been proposed to process training data sets, based on which machine learning algorithms are trained, in such a way that samples in a training data set that represent minority classes, i.e. less frequently occurring classes, are duplicated, i.e. they are duplicated in the corresponding training data set occur (oversampling), or that samples in a training data set, which represent majority classes, ie frequently occurring classes, are deleted from the training data set (undersampling). However, with such an undersampling, for example, it proves to be disadvantageous that with the deletion of samples, data or information relating to the relevant samples contained or represented in these minority classes or information contained in these samples relating to a background is also deleted. Such oversampling, in turn, has the disadvantage that the frequency with which such a minority class finally occurs in a corresponding training data set can again be significantly increased compared to an underlying actual reality, which also leads to inaccuracies in a subsequent application of the machine learning algorithm. In addition, situations are conceivable in which such oversampling leads to an increase in the number of samples, but not the variability of the samples. For example, situations are conceivable in which the same pedestrian is included in twenty samples, whereas twenty samples, each with different pedestrians, would be advantageous.
Aus der Druckschrift
Der Erfindung liegt somit die Aufgabe zugrunde, ein verbessertes Verfahren zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens anzugeben.The invention is therefore based on the object of specifying an improved method for generating a data record for training a machine learning algorithm.
Die Aufgabe wird mit einem Verfahren zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens gemäß den Merkmalen des Patentanspruchs 1 gelöst.The object is achieved with a method for generating a data set for training a machine learning algorithm according to the features of patent claim 1 .
Weiter wird die Aufgabe mit einem Computerprogramm mit den Merkmalen des Patentanspruchs 7 und einem computerlesbaren Datenträger mit den Merkmalen des Patentanspruchs 8 gelöst.The object is also achieved with a computer program having the features of patent claim 7 and a computer-readable data carrier having the features of patent claim 8 .
Ferner wird die Aufgabe auch durch ein Steuergerät zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens gemäß dem Patentanspruch 9 gelöst.Furthermore, the object is also achieved by a control device for generating a data set for training a machine learning algorithm according to patent claim 9 .
Vorteilhafte Ausführungsformen und Weiterbildungen ergeben sich aus den Unteransprüchen sowie aus der Beschreibung unter Bezugnahme auf die Figuren.Advantageous embodiments and developments result from the dependent claims and from the description with reference to the figures.
Offenbarung der ErfindungDisclosure of Invention
Gemäß einer Ausführungsform der Erfindung wird diese Aufgabe gelöst durch ein Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens, wobei zunächst ein erster Datensatz bereitgestellt wird, wobei wenigstens zwei Klassen in dem ersten Datensatz vorkommen, und wobei der erste Datensatz eine Mehrzahl von basierend auf den wenigstens zwei Klassen klassifizierten Stichproben aufweist. Für jede der wenigstens zwei Klassen wird dann eine klassenspezifische Wahrscheinlichkeit geschätzt, wobei die klassenspezifische Wahrscheinlichkeit jeweils angibt, mit welcher Wahrscheinlichkeit es sich bei der entsprechenden Klasse um eine Mehrheitsklasse handelt. Weiter wird wenigstens ein weiterer Datensatz aus dem ersten Datensatz durch Modifizieren von in dem ersten Datensatz enthaltenen Stichproben derart, dass in einzelnen in dem ersten Datensatz enthaltenen Stichproben zufällig Regionen, welche Klassen, welche eine höhere klassenspezifische Wahrscheinlichkeit als andere Klassen aufweisen, repräsentieren, ausgeschnitten werden, erzeugt, und der wenigstens eine weitere Datensatz zum Trainieren eines Algorithmus maschinellen Lernens bereitgestellt.According to one embodiment of the invention, this object is achieved by a method for generating at least one data set for training a machine learning algorithm, wherein first a first data set is provided, wherein at least two classes occur in the first data set, and wherein the first data set contains a plurality of based on the samples classified at least two classes. A class-specific probability is then estimated for each of the at least two classes, the class-specific probability in each case indicating the probability with which the corresponding class is a majority class. Furthermore, at least one further data set is cut out of the first data set by modifying samples contained in the first data set in such a way that individual samples contained in the first data set randomly contain regions that represent classes that have a higher class-specific probability than other classes , Generated, and provided at least one further data set for training a machine learning algorithm.
Unter Datensatz wird hierbei ein Satz beziehungsweise eine Menge von Daten verstanden, basierend auf welchem der Algorithmus maschinellen Lernens trainiert werden kann. Die Elemente dieses Datensatzes beziehungsweise dieser Menge werden dabei als Samples beziehungsweise Stichproben bezeichnet.A data set is understood to mean a set or a quantity of data on the basis of which the machine learning algorithm can be trained. The elements of this data set or this set are referred to as samples or spot checks.
Unter Mehrheitsklasse wird wiederum eine Klasse beziehungsweise Art oder Kategorie von Objekten verstanden, welche in dem Datensatz überrepräsentiert ist, das heißt häufiger als andere Klassen vorkommt.Majority class is in turn understood as meaning a class or type or category of objects which is over-represented in the data set, ie occurs more frequently than other classes.
Unter Region wird ferner ein Bereich innerhalb einer Stichprobe, in welchem Merkmale einer bestimmten Klasse repräsentiert werden, verstanden, beispielsweise einzelne Boxen in Stichproben oder einzelne Pixel in Bilddaten. Dass dabei entsprechende Regionen in einzelnen Stichproben ausgeschnitten werden bedeutet dabei, dass entsprechende Regionen zum Erzeugen des wenigstens einen Datensatzes aus zumindest einem Teil der in dem ersten Datensatz enthaltenen Stichproben, insbesondere zufällig ausgewählten Stichproben, entfernt werden, das heißt diese in dem wenigstens einen Datensatz entsprechend ignoriert werden.A region is also understood to mean an area within a sample in which features of a specific class are represented, for example individual boxes in samples or individual pixels in image data. The fact that corresponding regions are cut out in individual samples means that corresponding regions for generating the at least one data set are removed from at least some of the samples contained in the first data set, in particular randomly selected samples, i.e. these are removed in the at least one data set accordingly be ignored.
Dies resultiert jedoch wiederum in einer Annäherung beziehungsweise Angleichung der einzelnen in dem ersten Datensatz enthaltenen Klassen, sodass auf Mehrheits- beziehungsweise Minderheitsklassen basierende Probleme beim Erzeugen des Trainingsdatensatzes vermieden werden. Dass dabei jedoch die einzelnen Stichproben nicht komplett gelöscht werden, sondern nur einzelne Regionen beziehungsweise Bereiche innerhalb dieser Stichproben hat zudem den Vorteil, dass nicht gleichzeitig auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht werden, gleichzeitig einzelne Minderheitsklassen in den Stichproben jedoch auch nicht überrepräsentiert sind. Insgesamt wird somit ein verbessertes Verfahren zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens angegeben.However, this in turn results in an approximation or adjustment of the individual classes contained in the first data set, so that problems based on majority or minority classes are avoided when generating the training data set. However, the fact that the individual samples are not completely deleted, but only individual regions or areas within these samples, also has the advantage that data or information regarding the minority classes contained in the corresponding samples or represented in these or information contained in these samples regarding of a background can be deleted, but at the same time individual minority classes are not over-represented in the samples. Overall, an improved method for generating a data set for training a machine learning algorithm is thus specified.
Ferner kann die Anzahl von Stichproben, welche erforderlich sind, um einen Algorithmus maschinellen Lernens derart zu trainieren, um eine Aufgabe, beispielsweise eine Steuerung von sicherheitskritischen Funktionen, mit hoher Genauigkeit vornehmen zu können, reduziert werden, was in einem reduzierten Speicherbedarf zum Speichern eines entsprechenden Trainingsdatensatzes resultiert.Furthermore, the number of samples required to train a machine learning algorithm in such a way that it can perform a task, for example control of safety-critical functions, with high accuracy can be reduced, which results in a reduced memory requirement for storing a corresponding Training data set results.
Dabei kann die Genauigkeit des Verfahrens erhöht beziehungsweise optimiert werden, indem der wenigstens eine weitere Datensatz derart erzeugt wird, dass nach dem Ignorieren von Regionen, welche Klassen, welche eine höhere klassenspezifische Wahrscheinlichkeit als andere Klassen aufweisen, in einzelnen in dem ersten Datensatz enthaltenen Stichproben, alle Klassen in dem wenigstens einen weiteren Datensatz möglichst dieselbe Häufigkeit aufweisen. The accuracy of the method can be increased or optimized in that the at least one further data set is generated in such a way that after ignoring regions which classes which have a higher class-specific probability than other classes in individual random samples contained in the first data set, all classes in the at least one further data set have the same frequency as far as possible.
Die klassenspezifischen Wahrscheinlichkeiten können weiter jeweils basierend auf einer relativen Häufigkeit, welche angibt, wie häufig die entsprechende Klasse insgesamt in dem ersten Datensatz vertreten ist, und/oder basierend auf während eines Trainierens des Algorithmus maschinellen Lernens gewonnen Erfahrungswerten geschätzt werden.The class-specific probabilities can also be based on a relative frequency, which indicates how often the corresponding class is represented overall in the first data set, and/or based on during a Training the machine learning algorithm can be estimated based on empirical values gained.
Unter relativer Häufigkeit, welche angibt, wie häufig die entsprechende Klasse insgesamt in dem ersten Datensatz vertreten ist, wird hierbei das Verhältnis aus der Summe der Anzahl der jeweils in den einzelnen, in dem ersten Datensatz enthaltenen Stichproben, enthaltenen Regionen, welche die entsprechende Klasse repräsentieren zu der Summe der Anzahl aller jeweils in den einzelnen Stichproben enthaltenen Regionen verstanden. Hierdurch kann die Klassenverteilung optimal ausgehend von und basierend auf der Klassenverteilung innerhalb der vorliegenden Stichproben, das heißt der in dem ersten Datensatz enthaltenen Stichproben angepasst werden.Relative frequency, which indicates how often the corresponding class is represented overall in the first data set, is the ratio of the sum of the number of regions contained in the individual samples contained in the first data set, which represent the corresponding class to the sum of the number of all regions included in each sample. As a result, the class distribution can be optimally adjusted starting from and based on the class distribution within the available samples, ie the samples contained in the first data set.
Unter während eines Trainierens des Algorithmus maschinellen Lernens zuvor gewonnen Erfahrungswerten werden zudem während zurückliegenden Trainingssequenzen gemessene beziehungsweise gewonnene Informationen, beispielsweise über die Häufigkeit einzelner Klassen in zuvor verwendeten Trainingsdatensätzen, verstanden, sodass direkt auf vorliegende Gegebenheiten reagiert, das heißt der Trainingsdatensatz an die vorliegenden Gegebenheiten angepasst werden kann.Empirical values previously obtained during training of the machine learning algorithm are also understood to mean information measured or obtained during previous training sequences, for example about the frequency of individual classes in previously used training data sets, so that there is a direct reaction to existing conditions, i.e. the training data set is adapted to the existing conditions can be.
Ferner können die klassenspezifischen Wahrscheinlichkeiten aber auch jeweils durch einen entsprechenden Fachmann beziehungsweise Experten festgelegt beziehungsweise geschätzt werden.Furthermore, the class-specific probabilities can also be determined or estimated in each case by a corresponding specialist or expert.
Mit einer weiteren Ausführungsform der Erfindung wird auch ein Verfahren zum Trainieren eines Algorithmus maschinellen Lernens angegeben, wobei der Algorithmus maschinellen Lernens basierend auf einem durch ein obenstehend beschriebenes Verfahren zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens erzeugten Datensatz trainiert wird.A further embodiment of the invention also specifies a method for training a machine learning algorithm, the machine learning algorithm being trained on the basis of a data set generated by a method described above for generating a data set for training a machine learning algorithm.
Ein derartiges Verfahren hat den Vorteil, dass der Algorithmus maschinellen Lernens basierend auf einem verbesserten Trainingsdatensatz trainiert wird. Insbesondere ist der Trainingsdatensatz dabei derart erzeugt, dass zu einer Annäherung beziehungsweise Angleichung der einzelnen in einem ursprünglichen ersten Datensatz enthaltenen Klassen kommt, sodass auf Mehrheits- beziehungsweise Minderheitsklassen basierende Probleme beim Erzeugen des Trainingsdatensatzes und beim anschließenden Trainieren des Algorithmus maschinellen Lernens vermieden werden. Dass beim Erzeugen des Trainingsdatensatzes jedoch einzelne Stichproben nicht komplett gelöscht werden, sondern nur einzelne Regionen beziehungsweise Bereiche innerhalb dieser Stichproben hat zudem den Vorteil, dass nicht gleichzeitig auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht werden, gleichzeitig einzelne Minderheitsklassen in den Stichproben jedoch auch nicht überrepräsentiert sind.Such a method has the advantage that the machine learning algorithm is trained based on an improved training data set. In particular, the training data set is generated in such a way that the individual classes contained in an original first data set are approximated or adjusted so that problems based on majority or minority classes are avoided when generating the training data set and during the subsequent training of the machine learning algorithm. However, the fact that individual samples are not completely deleted when the training data set is generated, but only individual regions or areas within these samples, also has the advantage that data or information regarding the minority classes contained or represented in the corresponding samples or contained in these samples is not simultaneously available Information regarding a background is deleted, but at the same time individual minority classes are not over-represented in the samples.
Dabei kann der Algorithmus maschinellen Lernens in mehreren Trainingsepochen trainiert werden, wobei für jede Trainingsepoche ein Datensatz erzeugt wird, und wobei der Algorithmus maschinellen Lernens während jeder der Trainingsepochen jeweils basierend auf dem für die entsprechende Trainingsepoche erzeugten Datensatz trainiert wird.The machine learning algorithm can be trained in a plurality of training epochs, with a data set being generated for each training epoch, and with the machine learning algorithm being trained during each of the training epochs based on the data set generated for the corresponding training epoch.
Unter Trainingsepoche wird hierbei ein Trainingszyklus verstanden.A training epoch is understood here as meaning a training cycle.
Somit kann das Ausschneiden beziehungsweise das Erzeugen eines weiteren Datensatzes einmal in jedem Trainingszyklus beziehungsweise separat für jeden Trainingszyklus erfolgen, wodurch die Genauigkeit des Verfahrens noch weiter erhöht werden kann.The cutting out or the generation of a further data set can thus take place once in each training cycle or separately for each training cycle, as a result of which the accuracy of the method can be increased even further.
Bei dem Algorithmus maschinellen Lernens kann es sich dabei beispielsweise um einen Algorithmus zur Bildklassifikation oder einen Algorithmus zur Objektklassifikation handeln. Insbesondere kann dabei basierend auf dem erzeugten Trainingsdatensatz Einfluss auf eine an das Trainieren anschließende Klassifizierung durch den Algorithmus maschinellen Lernens genommen werden und insbesondere eine anschließende Klassifizierung durch den Algorithmus maschinellen Lernens optimiert werden.The machine learning algorithm can be an algorithm for image classification or an algorithm for object classification, for example. In particular, based on the generated training data record, a classification by the machine learning algorithm that follows the training can be influenced, and in particular a subsequent classification by the machine learning algorithm can be optimized.
Mit einer weiteren Ausführungsform der Erfindung wird ferner auch ein Verfahren zum Klassifizieren von Bilddaten angegeben, wobei Bilddaten unter Verwendung eines Algorithmus maschinellen Lernens klassifiziert werden, und wobei der Algorithmus maschinellen Lernens unter Verwendung eines obenstehend beschriebenen Verfahrens trainiert wurde.A further embodiment of the invention also specifies a method for classifying image data, image data being classified using a machine learning algorithm, and the machine learning algorithm having been trained using a method described above.
Insbesondere kann das Verfahren dabei verwendet werden, um Bilddaten, insbesondere digitale Bilddaten auf der Grundlage von Low-level-Merkmalen, beispielsweise Kanten oder Pixelattributen, zu klassifizieren. Dabei kann weiter ein Bildverarbeitungsalgorithmus verwendet werden, um ein Klassifizierungsergebnis, welches sich auf entsprechende Low-level Merkmale konzentriert, zu analysieren.In particular, the method can be used to classify image data, in particular digital image data, on the basis of low-level features, for example edges or pixel attributes. An image processing algorithm can also be used to analyze a classification result that focuses on corresponding low-level features.
Somit wird ein Verfahren zum Klassifizieren von Bilddaten angegeben, welches auf einem Algorithmus maschinellen Lernens basiert, der auf einem verbesserten Trainingsdatensatz trainiert wurde. Insbesondere wurde der Trainingsdatensatz dabei derart erzeugt, dass zu einer Annäherung beziehungsweise Angleichung der einzelnen in einem ursprünglichen ersten Datensatz enthaltenen Klassen kommt, sodass auf Mehrheits- beziehungsweise Minderheitsklassen basierende Probleme beim Erzeugen des Trainingsdatensatzes und beim anschließenden Trainieren des Algorithmus maschinellen Lernens vermieden werden. Dass beim Erzeugen des Trainingsdatensatzes jedoch einzelne Stichproben nicht komplett gelöscht wurden, sondern nur einzelne Regionen beziehungsweise Bereiche innerhalb dieser Stichproben, hat zudem den Vorteil, dass nicht gleichzeitig auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht wurden, gleichzeitig einzelne Minderheitsklassen in den Stichproben jedoch auch nicht überrepräsentiert sind. A method for classifying image data is thus specified, which is based on a machine learning algorithm that was trained on an improved training data set. In particular, the training data set was generated in such a way that the individual classes contained in an original first data set are approximated or adjusted, so that problems based on majority or minority classes when generating the training data set and during the subsequent training of the machine learning algorithm are avoided. However, the fact that individual samples were not completely deleted when the training data set was generated, but only individual regions or areas within these samples, also has the advantage that data or information regarding the minority classes contained in or represented in these samples or in these samples is not simultaneously deleted contained information regarding a background has been deleted, but at the same time individual minority classes are not over-represented in the samples.
Mit einer weiteren Ausführungsform wird zudem auch ein Computerprogramm mit Programmcode, um ein obenstehend beschriebenes Verfahren auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird, angegeben.A further embodiment also specifies a computer program with program code in order to carry out a method described above when the computer program is run on a computer.
Weiter wird mit einer weiteren Ausführungsform der Erfindung auch ein computerlesbarer Datenträger mit Programmcode eines Computerprogramms um ein obenstehend beschriebenes Verfahren auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird, angegeben.Furthermore, a further embodiment of the invention also specifies a computer-readable data carrier with program code of a computer program for executing a method described above when the computer program is executed on a computer.
Ein derartiges Computerprogramm beziehungsweise ein derartiger computerlesbarer Datenträger haben jeweils den Vorteil, dass mit diesen jeweils ein verbessertes Verfahren zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens beziehungsweise ein Verfahren zum Trainieren eines Algorithmus maschinellen Lernens basierend auf einem derartigen verbesserten Datensatz angegeben wird. Insbesondere kann dabei der Trainingsdatensatz derart erzeugt werden, dass es zu einer Annäherung beziehungsweise Angleichung der einzelnen in dem ursprünglichen ersten Datensatz enthaltenen Klassen kommt, sodass auf Mehrheits- beziehungsweise Minderheitsklassen basierende Probleme beim Erzeugen des Trainingsdatensatzes vermieden werden können. Dass dabei jedoch die einzelnen Stichproben nicht komplett gelöscht werden, sondern nur einzelne Regionen beziehungsweise Bereiche innerhalb dieser Stichproben, hat zudem den Vorteil, dass nicht gleichzeitig auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht werden, gleichzeitig einzelne Minderheitsklassen in den Stichproben jedoch auch nicht überrepräsentiert sind.Such a computer program or such a computer-readable data carrier each have the advantage that they specify an improved method for generating a data set for training a machine learning algorithm or a method for training a machine learning algorithm based on such an improved data set. In particular, the training data set can be generated in such a way that the individual classes contained in the original first data set are approximated or adjusted so that problems based on majority or minority classes can be avoided when generating the training data set. However, the fact that the individual samples are not completely deleted, but only individual regions or areas within these samples, also has the advantage that data or information regarding the minority classes contained or represented in these samples or information contained in these samples is not simultaneously deleted be deleted with regard to a background, but at the same time individual minority classes are not over-represented in the samples.
Mit einer weiteren Ausführungsform der Erfindung wird auch ein Steuergerät zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens angegeben, wobei das Steuergerät eine erste Bereitstellungseinheit, welche ausgebildet ist, einen ersten Datensatz bereitzustellen, wobei wenigstens zwei Klassen in dem ersten Datensatz vorkommen, und wobei der erste Datensatz eine Mehrzahl von basierend auf den wenigstens zwei Klassen klassifizierten Stichproben aufweist, eine Schätzeinheit, welche ausgebildet ist, für jede der wenigstens zwei Klassen jeweils eine klassenspezifische Wahrscheinlichkeit zu schätzen, wobei die klassenspezifische Wahrscheinlichkeit jeweils angibt, mit welcher Wahrscheinlichkeit es sich bei der entsprechenden Klasse um eine Mehrheitsklasse handelt, eine Erzeugungseinheit, welche ausgebildet ist, wenigstens einen weiteren Datensatz aus dem ersten Datensatz durch Modifizieren von in dem ersten Datensatz enthaltenen Daten derart, dass in einzelnen in dem ersten Datensatz enthaltenen Stichproben zufällig Regionen, welche Klassen, welche eine höhere klassenspezifische Wahrscheinlichkeit als andere Klassen aufweisen, repräsentieren, ausgeschnitten werden, zu erzeugen, und eine zweite Bereitstellungseinheit, welche ausgebildet ist, den wenigstens einen weiteren Datensatz zum Trainieren eines Algorithmus maschinellen Lernens bereitzustellen, aufweist.A further embodiment of the invention also specifies a control unit for generating at least one data set for training a machine learning algorithm, the control unit having a first provision unit which is designed to provide a first data set, with at least two classes occurring in the first data set, and wherein the first data set has a plurality of random samples classified based on the at least two classes, an estimation unit which is designed to estimate a class-specific probability for each of the at least two classes, the class-specific probability in each case indicating the probability of the corresponding class is a majority class, a generating unit which is designed to generate at least one further data set from the first data set by modifying data contained in the first data set such that in a individual random samples contained in the first data set to generate random regions which represent classes which have a higher class-specific probability than other classes, and a second provision unit which is designed to machine the at least one further data set for training an algorithm provide learning has.
Ein derartiges Steuergerät hat den Vorteil, dass dieses derart ausgebildet ist, dass mit diesen ein verbesserter Datensatz zum Trainieren eines Algorithmus maschinellen Lernens erzeugt werden kann. Insbesondere ist das Steuergerät dabei ausgebildet ist, dass ein Trainingsdatensatz derart erzeugt werden kann, dass es zu einer Annäherung beziehungsweise Angleichung der einzelnen in dem ursprünglichen ersten Datensatz enthaltenen Klassen kommt, sodass auf Mehrheits- beziehungsweise Minderheitsklassen basierende Probleme beim Erzeugen des Trainingsdatensatzes vermieden werden können. Dass das Steuergerät dabei ausgebildet ist, einzelne Stichproben nicht komplett zu löschen, sondern nur einzelne Regionen beziehungsweise Bereiche innerhalb dieser Stichproben, hat zudem den Vorteil, dass nicht gleichzeitig auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht werden, gleichzeitig einzelne Minderheitsklassen in den Stichproben jedoch auch nicht überrepräsentiert sind.Such a control device has the advantage that it is designed in such a way that it can be used to generate an improved data record for training a machine learning algorithm. In particular, the control unit is designed such that a training data set can be generated in such a way that the individual classes contained in the original first data set are approximated or adjusted, so that problems based on majority or minority classes can be avoided when generating the training data set. The fact that the control unit is designed not to delete individual samples completely, but only individual regions or areas within these samples, also has the advantage that data or information regarding the minority groups contained in the corresponding samples or represented in them is not simultaneously deleted or information regarding a background contained in these samples is deleted, but at the same time individual minority classes are not over-represented in the samples.
Ferner ist das Steuergerät weiter ausgebildet, dass die Anzahl von Stichproben, welche erforderlich sind, um einen Algorithmus maschinellen Lernens derart zu trainieren, um eine Aufgabe, beispielsweise eine Steuerung von sicherheitskritischen Funktionen, mit hoher Genauigkeit vornehmen zu können, reduziert werden kann, was in einem reduzierten Speicherbedarf zum Speichern eines entsprechenden Trainingsdatensatzes resultiert.Furthermore, the control unit is further developed such that the number of random samples required to train a machine learning algorithm in such a way that it can carry out a task, for example control of safety-critical functions, with high accuracy can be reduced, which in a reduced memory requirement for storing a corresponding training data set results.
Dabei kann die Erzeugungseinheit ausgebildet sein, den wenigstens einen weiteren Datensatz durch Ausschneiden beziehungsweise Ignorieren von Regionen, welche Klassen, welche eine höhere klassenspezifische Wahrscheinlichkeit als andere Klassen aufweisen, repräsentieren in einzelnen in dem ersten Datensatz enthaltenen Stichproben derart, dass alle Klassen in dem wenigstens einen weiteren Datensatz möglichst dieselbe Häufigkeit aufweisen, zu erzeugen. Hierdurch kann das Erzeugen des wenigstens einen Datensatzes beziehungsweise des Trainingsdatensatzes weiter optimiert werden.The generation unit can be configured to generate the at least one additional data set by cutting out or ignoring regions that represent classes that have a higher class-specific probability than other classes in individual samples contained in the first data set in such a way that all classes in the at least one further data set have the same frequency as possible. As a result, the generation of the at least one data set or the training data set can be further optimized.
Zudem kann die Schätzeinheit ausgebildet sein, die klassenspezifische Wahrscheinlichkeit jeweils basierend auf einer relativen Häufigkeit, welche angibt, wie häufig die entsprechende Klasse insgesamt in dem ersten Datensatz vertreten ist, und/oder basierend auf während eines Trainierens des Algorithmus maschinellen Lernens zuvor gewonnen Erfahrungswerten zu schätzen.In addition, the estimation unit can be designed to estimate the class-specific probability based on a relative frequency, which indicates how often the corresponding class is represented overall in the first data set, and/or based on empirical values previously obtained during training of the machine learning algorithm .
Somit kann die Schätzeinheit beziehungsweise die Steuereinheit insgesamt ausgebildet sein, die Klassenverteilung optimal ausgehend von und basierend auf der Klassenverteilung innerhalb der vorliegenden Stichproben, das heißt der in dem ersten Datensatz enthaltenen Stichproben anzupassen. Ferner kann die Schätzeinheit aber auch derart ausgebildet sein, dass direkt auf vorliegende Gegebenheiten reagiert, das heißt der Trainingsdatensatz an die vorliegenden Gegebenheiten angepasst werden kann. Ferner können die klassenspezifischen Wahrscheinlichkeiten aber auch jeweils durch einen entsprechenden Fachmann beziehungsweise Experten festgelegt beziehungsweise geschätzt werden.The estimation unit or the control unit can thus be designed overall to optimally adapt the class distribution based on the class distribution within the available samples, ie the samples contained in the first data set. Furthermore, the estimation unit can also be designed in such a way that it reacts directly to existing conditions, ie the training data record can be adapted to the existing conditions. Furthermore, the class-specific probabilities can also be determined or estimated in each case by a corresponding specialist or expert.
Mit einer weiteren Ausführungsform der Erfindung wird auch ein Steuergerät zum Trainieren eines Algorithmus maschinellen Lernens angegeben, wobei das Steuergerät ausgebildet ist, den Algorithmus maschinellen Lernens basierend auf einem durch ein obenstehend beschriebenes Steuergerät zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens erzeugten Datensatz zu trainieren.A further embodiment of the invention also specifies a control unit for training a machine learning algorithm, the control unit being designed to train the machine learning algorithm based on a data set generated by a control unit described above for generating a data set for training a machine learning algorithm .
Ein derartiges Steuergerät hat den Vorteil, dass dieses ausgebildet ist, den Algorithmus maschinellen Lernens basierend auf einem verbesserten Trainingsdatensatz zu trainieren. Insbesondere ist das Steuergerät dabei ausgebildet, den Algorithmus maschinellen Lernens basierend auf einem Trainingsdatensatz, welcher derart erzeugt ist, dass zu einer Annäherung beziehungsweise Angleichung der einzelnen in einem ursprünglichen ersten Datensatz enthaltenen Klassen kommt, sodass auf Mehrheits- beziehungsweise Minderheitsklassen basierende Probleme beim Erzeugen des Trainingsdatensatzes und beim anschließenden Trainieren des Algorithmus maschinellen Lernens vermieden werden, zu trainieren. Dass beim Erzeugen des Trainingsdatensatzes jedoch einzelne Stichproben nicht komplett gelöscht werden, sondern nur einzelne Regionen beziehungsweise Bereiche innerhalb dieser Stichproben hat zudem den Vorteil, dass nicht gleichzeitig auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht werden, gleichzeitig einzelne Minderheitsklassen in den Stichproben jedoch auch nicht überrepräsentiert sind.Such a control device has the advantage that it is designed to train the machine learning algorithm based on an improved training data set. In particular, the control unit is designed to use the machine learning algorithm based on a training data set, which is generated in such a way that the individual classes contained in an original first data set are approximated or adjusted, so that problems based on majority or minority classes are encountered when generating the training data set and avoid training when subsequently training the machine learning algorithm. However, the fact that individual samples are not completely deleted when the training data set is generated, but only individual regions or areas within these samples, also has the advantage that data or information regarding the minority classes contained or represented in the corresponding samples or contained in these samples is not simultaneously available Information regarding a background is deleted, but at the same time individual minority classes are not over-represented in the samples.
Das Steuergerät kann dabei ausgebildet sein, den Algorithmus maschinellen Lernens in mehreren Trainingsepochen zu trainieren, wobei für jede Trainingsepoche ein Datensatz erzeugt wird, und wobei das Steuergerät ausgebildet ist, den Algorithmus maschinellen Lernens während jeder der Trainingsepochen jeweils basierend auf dem für die entsprechende Trainingsepoche erzeugten Datensatz zu trainieren. Hierdurch kann die Genauigkeit beim Trainieren des Algorithmus maschinellen Lernens noch weiter erhöht werden.The control unit can be designed to train the machine learning algorithm in a plurality of training epochs, with a data set being generated for each training epoch, and the control unit being designed to train the machine learning algorithm during each of the training epochs based on the data generated for the corresponding training epoch train data set. This can further increase the accuracy when training the machine learning algorithm.
Bei dem Algorithmus maschinellen Lernens kann es sich dabei beispielsweise um einen Algorithmus zur Bildklassifikation oder einen Algorithmus zur Objektklassifikation handeln. Insbesondere kann dabei basierend auf dem erzeugten Trainingsdatensatz Einfluss auf eine an das Trainieren anschließende Klassifizierung durch den Algorithmus maschinellen Lernens genommen werden und insbesondere eine anschließende Klassifizierung durch den Algorithmus maschinellen Lernens optimiert werden.The machine learning algorithm can be an algorithm for image classification or an algorithm for object classification, for example. In particular, based on the generated training data record, a classification by the machine learning algorithm that follows the training can be influenced, and in particular a subsequent classification by the machine learning algorithm can be optimized.
Mit einer weiteren Ausführungsform der Erfindung wird ferner auch ein Steuergerät zum Klassifizieren von Bilddaten angegeben, wobei das Steuergerät ausgebildet ist, Bilddaten unter Verwendung eines Algorithmus maschinellen Lernens zu klassifizieren, und wobei der Algorithmus maschinellen Lernens unter Verwendung eines obenstehend beschriebenen Steuergeräts trainiert wurde.A further embodiment of the invention also specifies a control unit for classifying image data, the control unit being designed to classify image data using a machine learning algorithm classify, and wherein the machine learning algorithm was trained using a controller described above.
Insbesondere kann das Steuergerät dabei verwendet werden, um Bilddaten, insbesondere digitale Bilddaten auf der Grundlage von Low-level-Merkmalen, beispielsweise Kanten oder Pixelattributen, zu klassifizieren. Dabei kann weiter ein Bildverarbeitungsalgorithmus verwendet werden, um ein Klassifizierungsergebnis, welches sich auf entsprechende Low-level Merkmale konzentriert, zu analysieren.In particular, the control device can be used to classify image data, in particular digital image data, on the basis of low-level features, for example edges or pixel attributes. An image processing algorithm can also be used to analyze a classification result that focuses on corresponding low-level features.
Somit wird ein Steuergerät zum Klassifizieren von Bilddaten angegeben, welches auf einem Algorithmus maschinellen Lernens basiert, der auf einem verbesserten Trainingsdatensatz trainiert wurde. Insbesondere wurde der Trainingsdatensatz dabei derart erzeugt, dass zu einer Annäherung beziehungsweise Angleichung der einzelnen in einem ursprünglichen ersten Datensatz enthaltenen Klassen kommt, sodass auf Mehrheits- beziehungsweise Minderheitsklassen basierende Probleme beim Erzeugen des Trainingsdatensatzes und beim anschließenden Trainieren des Algorithmus maschinellen Lernens vermieden werden. Dass beim Erzeugen des Trainingsdatensatzes jedoch einzelne Stichproben nicht komplett gelöscht wurden, sondern nur einzelne Regionen beziehungsweise Bereiche innerhalb dieser Stichproben, hat zudem den Vorteil, dass nicht gleichzeitig auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht wurden, gleichzeitig einzelne Minderheitsklassen in den Stichproben jedoch auch nicht überrepräsentiert sind. A control device for classifying image data is thus specified, which is based on a machine learning algorithm that was trained on an improved training data set. In particular, the training data set was generated in such a way that the individual classes contained in an original first data set are approximated or adjusted, so that problems based on majority or minority classes when generating the training data set and during the subsequent training of the machine learning algorithm are avoided. However, the fact that individual samples were not completely deleted when the training data set was generated, but only individual regions or areas within these samples, also has the advantage that data or information regarding the minority classes contained in or represented in these samples or in these samples is not simultaneously deleted contained information regarding a background has been deleted, but at the same time individual minority classes are not over-represented in the samples.
Zusammenfassend ist festzustellen, dass mit der vorliegenden Erfindung ein verbessertes Verfahren zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens angegeben wird.In summary, it can be stated that the present invention provides an improved method for generating a data set for training a machine learning algorithm.
Insbesondere wird ein Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens angegeben, welches in einer Annäherung beziehungsweise Angleichung der einzelnen in einem ursprünglichen ersten Datensatz enthaltenen Klassen resultiert, sodass auf Mehrheits- beziehungsweise Minderheitsklassen basierende Probleme beim Erzeugen des Trainingsdatensatzes vermieden werden. Dass dabei jedoch die einzelnen Stichproben nicht komplett gelöscht werden, sondern nur einzelne Regionen beziehungsweise Bereiche innerhalb dieser Stichproben hat zudem den Vorteil, dass nicht gleichzeitig auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht werden, gleichzeitig einzelne Minderheitsklassen in den Stichproben jedoch auch nicht überrepräsentiert sind.In particular, a method for generating at least one data set for training a machine learning algorithm is specified, which results in an approximation or adjustment of the individual classes contained in an original first data set, so that problems based on majority or minority classes when generating the training data set are avoided. However, the fact that the individual samples are not completely deleted, but only individual regions or areas within these samples, also has the advantage that data or information regarding the minority classes contained in the corresponding samples or represented in these or information contained in these samples regarding of a background can be deleted, but at the same time individual minority classes are not over-represented in the samples.
Die beschriebenen Ausgestaltungen und Weiterbildungen lassen sich beliebig miteinander kombinieren.The configurations and developments described can be combined with one another as desired.
Weitere mögliche Ausgestaltungen, Weiterbildungen und Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale der Erfindung.Further possible configurations, developments and implementations of the invention also include combinations of features of the invention described above or below with regard to the exemplary embodiments that are not explicitly mentioned.
Figurenlistecharacter list
Die beiliegenden Zeichnungen sollen ein weiteres Verständnis der Ausführungsformen der Erfindung vermitteln. Sie veranschaulichen Ausführungsformen und dienen im Zusammenhang mit der Beschreibung der Erklärung von Prinzipien und Konzepten der Erfindung.The accompanying drawings are provided to provide a further understanding of embodiments of the invention. They illustrate embodiments and, together with the description, serve to explain principles and concepts of the invention.
Andere Ausführungsformen und viele der genannten Vorteile ergeben sich im Hinblick auf die Zeichnungen. Die dargestellten Elemente der Zeichnungen sind nicht notwendigerweise maßstabsgetreu zueinander gezeigt.Other embodiments and many of the foregoing advantages will become apparent by reference to the drawings. The illustrated elements of the drawings are not necessarily shown to scale with respect to one another.
Es zeigen:
-
1 ein Flussdiagramm eines Verfahrens zum Trainieren eines Algorithmus maschinellen Lernens gemäß Ausführungsformen der Erfindung. -
2 ein Blockschaltbild eines Steuergeräts zum Trainieren eines Algorithmus maschinellen Lernens gemäß Ausführungsformen der Erfindung.
-
1 12 is a flow chart of a method for training a machine learning algorithm according to embodiments of the invention. -
2 a block diagram of a control device for training a machine learning algorithm according to embodiments of the invention.
In den Figuren der Zeichnungen bezeichnen gleiche Bezugszeichen gleiche oder funktionsgleiche Elemente, Bauteile oder Komponenten, soweit nichts Gegenteiliges angegeben ist.In the figures of the drawings, the same reference symbols designate the same or functionally identical elements, parts or components, unless otherwise stated.
Algorithmen maschinellen Lernens basieren darauf, dass Verfahren der Statistik verwendet werden, um eine Datenverarbeitungsanlage derart zu trainieren, dass diese eine bestimmte Aufgabe ausführen kann, ohne dass diese ursprünglich explizit hierzu programmiert wurde. Das Ziel des maschinellen Lernens besteht dabei darin, Algorithmen zu konstruieren, die aus Daten lernen und Vorhersagen treffen können. Diese Algorithmen erstellen mathematische Modelle, mit denen beispielsweise Daten klassifiziert werden können.Machine learning algorithms are based on statistical methods being used to train a data processing system in such a way that it performs a specific task can lead to this without being originally programmed explicitly for this purpose. The goal of machine learning is to construct algorithms that can learn from data and make predictions. These algorithms create mathematical models that can be used, for example, to classify data.
Viele Algorithmen maschinellen Lernens basieren dabei weiter auf einer Klassifizierung, das heißt einem Einteilen von Objekten oder Situationen in Klassen, das heißt einzelne Gruppen beziehungsweise Kategorien. Beispielsweise kann dabei zwischen Regionen beziehungsweise Bereichen in durch einen Algorithmus maschinellen Lernens, beispielsweise einem Algorithmus zum Detektieren von Fußgängern, zu verarbeitenden Daten, welche Straßen repräsentieren, und Regionen beziehungsweise Bereichen in den Daten, welche Personen repräsentieren, unterschieden werden. Bei den Regionen kann es sich dabei beispielsweise um einzelne, in den Daten enthaltene Boxen oder Pixel handeln.Many machine learning algorithms are also based on classification, i.e. dividing objects or situations into classes, i.e. individual groups or categories. For example, a distinction can be made between regions or areas in data to be processed by a machine learning algorithm, for example an algorithm for detecting pedestrians, which represent streets, and regions or areas in the data which represent people. The regions can be, for example, individual boxes or pixels contained in the data.
Dabei kann es jedoch dazu kommen, dass die einzelnen Klassen in Trainingsdatensätzen, basierend auf welchen der Algorithmus maschinellen Lernens trainiert wird, mit einer unterschiedlichen Häufigkeit vorkommen, das heißt die Klasseneinteilung in den Trainingsdaten stark verzerrt ist. Eine derartige unausgewogene Klassifizierung beziehungsweise ein derartiges Klassenungleichgewicht kann jedoch dazu führen, dass eine Klasse von einem trainierten Algorithmus maschinellen Lernens anschließend nicht oder nur ungenau beziehungsweise mit einer hohen Fehlerquote erfasst wird, obwohl der trainierte Algorithmus maschinellen Lernens an sich ein hohes Maß an Genauigkeit aufweist.In this case, however, it can happen that the individual classes in the training data sets, on the basis of which the machine learning algorithm is trained, occur with a different frequency, ie the classification of classes in the training data is highly distorted. However, such an unbalanced classification or such a class imbalance can result in a class then not being recorded by a trained machine learning algorithm, or only inaccurately or with a high error rate, although the trained machine learning algorithm itself has a high degree of accuracy.
Diesbezüglich wurde vorgeschlagen, Trainingsdatensätze, basierend auf welchen Algorithmen des maschinellen Lernens trainiert werden, derart zu bearbeiten, dass Stichproben in einem Trainingsdatensatz, welche Minderheitsklassen, das heißt weniger häufig vorkommende Klassen, repräsentieren, dupliziert werden, das heißt dass diese in dem entsprechenden Trainingsdatensatz mehrfach vorkommen (Überabtastung), oder dass Stichproben in einem Trainingsdatensatz, welche Mehrheitsklassen, das heißt häufig vorkommende Klassen, repräsentieren, aus dem Trainingsdatensatz gelöscht werden (Unterabtastung). Beispielsweise bei einer derartigen Unterabtastung erweist es sich jedoch als nachteilig, dass mit dem Löschen von Stichproben wiederum auch Daten beziehungsweise Informationen bezüglich in den entsprechenden Stichproben enthaltenen beziehungsweise in diesen repräsentierten Minderheitsklassen oder in diesen Stichproben enthaltene Informationen bezüglich eines Hintergrundes gelöscht werden. Eine derartige Überabtastung wiederum hat den Nachteil, dass es dazukommen kann, dass die Häufigkeit, mit welcher eine derartige Minderheitsklasse in einem entsprechenden Trainingsdatensatz schlussendlich vorkommt, verglichen mit einer zugrundeliegenden tatsächlichen Realität wiederum signifikant erhöht sein kann, was ebenfalls zu Ungenauigkeiten bei einer anschließenden Anwendung des Algorithmus maschinellen Lernens führen kann. Zudem sind Situationen denkbar, in denen eine derartige Überabtastung zwar zu einer Erhöhung der Anzahl an Stichproben führt, nicht jedoch die Variabilität der Stichproben. Beispielsweise sind Situationen denkbar, in denen derselbe Fußgänger in zwanzig Stichproben enthalten ist, wohingegen jedoch zwanzig Stichproben mit jeweils unterschiedlichen Fußgängern von Vorteil wären.In this regard, it has been proposed to process training data sets, based on which machine learning algorithms are trained, in such a way that samples in a training data set that represent minority classes, i.e. less frequently occurring classes, are duplicated, i.e. they are duplicated in the corresponding training data set occur (oversampling), or that samples in a training data set, which represent majority classes, ie frequently occurring classes, are deleted from the training data set (undersampling). However, with such an undersampling, for example, it proves to be disadvantageous that with the deletion of samples, data or information relating to the relevant samples contained or represented in these minority classes or information contained in these samples relating to a background is also deleted. Such oversampling, in turn, has the disadvantage that the frequency with which such a minority class finally occurs in a corresponding training data set can again be significantly increased compared to an underlying actual reality, which also leads to inaccuracies in a subsequent application of the machine learning algorithm. In addition, situations are conceivable in which such oversampling leads to an increase in the number of samples, but not the variability of the samples. For example, situations are conceivable in which the same pedestrian is included in twenty samples, whereas twenty samples, each with different pedestrians, would be advantageous.
Gemäß den Ausführungsformen der
Wie
Gemäß den Ausführungsformen der
Gemäß den Ausführungsformen der
Zudem weist der Schritt 5 des Erzeugens des wenigstens einen Datensatzes durch Modifizieren von in dem ersten Datensatz enthaltenen Stichproben gemäß den Ausführungsformen der
Die einzelnen Regionen beziehungsweise Bereiche können dabei dadurch ausgeschnitten beziehungsweise beim Erzeugen des Trainingsdatensatzes ignoriert werden, indem entsprechenden Verlustfunktionen für diese Regionen beziehungsweise Bereiche auf null gesetzt werden.The individual regions or areas can thereby be cut out or ignored when generating the training data set by setting the corresponding loss functions for these regions or areas to zero.
Die klassenspezifische Wahrscheinlichkeit wird dabei jeweils basierend auf einer relativen Häufigkeit, welche angibt, wie häufig die entsprechende Klasse insgesamt in dem ersten Datensatz vertreten ist, geschätzt. Insbesondere können dabei die zunächst die Häufigkeiten beziehungsweise Anzahlen bestimmt werden, mit welchen die einzelnen Klassen repräsentierenden Regionen jeweils in der Gesamtzahl aller in den Stichproben enthaltenen Regionen insgesamt vorkommt, wobei die einzelnen klassenspezifischen Wahrscheinlichkeiten, das heißt die einzelnen relativen Häufigkeiten dann anschließend basierend auf entsprechenden Transformationen der Häufigkeiten bestimmt werden kann.In this case, the class-specific probability is estimated in each case based on a relative frequency, which indicates how often the corresponding class is represented overall in the first data set. In particular, the frequencies or numbers with which the regions representing the individual classes occur in the total number of all regions contained in the random samples can first be determined, with the individual class-specific probabilities, i.e. the individual relative frequencies then then being based on corresponding transformations of frequencies can be determined.
Ferner können die einzelnen klassenspezifischen Wahrscheinlichkeiten aber auch basierend auf während eines Trainierens des Algorithmus maschinellen Lernens zuvor gewonnen Erfahrungswerten geschätzt werden, beispielsweise basierend auf der Performance eines entsprechenden naiven Prädikators. Ferner ist es aber auch möglich, dass die einzelnen klassenspezifischen Wahrscheinlichkeiten durch einen Fachmann beziehungsweise Experten geschätzt beziehungsweise festgelegt werden.Furthermore, the individual class-specific probabilities can also be estimated based on empirical values previously obtained during training of the machine learning algorithm, for example based on the performance of a corresponding naive predictor. However, it is also possible for the individual class-specific probabilities to be estimated or specified by a specialist or expert.
Die klassenspezifische Wahrscheinlichkeit, welche jeweils zwischen 0 und 1 liegt, gibt dabei an, inwieweit eine Klasse beziehungsweise Regionen oder Bereiche, beispielsweise Boxen oder Pixel, welche diese Klasse repräsentieren, beim Erzeugen des wenigstens einen Datensatzes beziehungsweise des Trainingsdatensatzes ausgeschnitten beziehungsweise ignoriert werden.The class-specific probability, which is between 0 and 1, indicates to what extent a class or regions or areas, for example boxes or pixels, which represent this class, are cut out or ignored when generating the at least one data set or the training data set.
Gemäß den Ausführungsformen der
Bei dem Algorithmus maschinellen Lernens kann es sich ferner um einen Algorithmus zur Bildklassifikation handeln, wobei anschließend Bilddaten unter Verwendung eines erfindungsgemäß trainierten Algorithmus maschinellen Lernens klassifiziert werden können.The machine learning algorithm can also be an algorithm for image classification, in which case image data can then be classified using a machine learning algorithm trained according to the invention.
Ferner kann es sich bei dem Algorithmus aber auch um einen Algorithmus zur Objektklassifikation handeln. Bei entsprechenden, durch den Algorithmus maschinellen Lernens kann es sich ferner beispielsweise um Kamera-, Radar oder LIDAR-Daten handeln.Furthermore, the algorithm can also be an algorithm for object classification. Corresponding machine learning algorithms can also be camera, radar or LIDAR data, for example.
Wie
Die Trainingseinheit kann dabei beispielsweise basierend auf in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The training unit can be implemented, for example, based on code stored in a memory and executable by a processor.
Gemäß den Ausführungsformen der
Bei dem ersten Datensatz handelt es sich dabei insbesondere um in einem Speicher 17 hinterlegte, ursprünglich bereitgestellte Daten beziehungsweise Stichproben zum Trainieren des Algorithmus maschinellen Lernens, wobei das Steuergerät 12 zum Erzeugen eines Datensatzes zum Trainieren des Algorithmus maschinellen Lernens ausgebildet ist, die in dem Speicher 17 hinterlegten Daten derart zu verarbeiten, dass ein schlussendlich zum Trainieren des Algorithmus maschinellen Lernens verwendeter Datensatz eine möglichst ausgeglichene Klassenverteilung aufweist.The first data set is, in particular, originally provided data or samples stored in a
Die Schätzeinheit und die Erzeugungseinheit können dabei jeweils beispielsweise wiederum basierend auf in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden. Bei der zweiten Bereitstellungseinheit kann es sich ferner um einen Transmitter handeln, welcher ausgebildet ist, den erzeugten wenigstens einen Datensatz beziehungsweise schlussendlichen Datensatz an die Trainingseinheit zu übermitteln.The estimation unit and the generation unit can each be implemented based on code stored in a memory and executable by a processor. The second provision unit can also be a transmitter which is designed to transmit the generated at least one data set or final data set to the training unit.
Gemäß den Ausführungsformen der
Gemäß den Ausführungsformen der
Zudem ist das Steuergerät 10 ausgebildet, den Algorithmus maschinellen Lernens in mehreren Trainingsepochen zu trainieren, wobei für jede Trainingsepoche ein Datensatz erzeugt wird, und wobei das Steuergerät 10 ausgebildet ist, den Algorithmus maschinellen Lernens während jeder der Trainingsepochen jeweils basierend auf dem für die entsprechende Trainingsepoche erzeugten Datensatz zu trainieren.In addition,
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturPatent Literature Cited
- US 2013/0097103 A1 [0006]US 2013/0097103 A1 [0006]
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021204550.2A DE102021204550A1 (en) | 2021-05-05 | 2021-05-05 | Method for generating at least one data set for training a machine learning algorithm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021204550.2A DE102021204550A1 (en) | 2021-05-05 | 2021-05-05 | Method for generating at least one data set for training a machine learning algorithm |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102021204550A1 true DE102021204550A1 (en) | 2022-11-10 |
Family
ID=83692489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102021204550.2A Pending DE102021204550A1 (en) | 2021-05-05 | 2021-05-05 | Method for generating at least one data set for training a machine learning algorithm |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102021204550A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220374410A1 (en) * | 2021-05-12 | 2022-11-24 | International Business Machines Corporation | Dataset balancing via quality-controlled sample generation |
DE102022213969A1 (en) | 2022-12-20 | 2024-06-20 | Zf Friedrichshafen Ag | Procedure for generating a training data set |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097103A1 (en) | 2011-10-14 | 2013-04-18 | International Business Machines Corporation | Techniques for Generating Balanced and Class-Independent Training Data From Unlabeled Data Set |
-
2021
- 2021-05-05 DE DE102021204550.2A patent/DE102021204550A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097103A1 (en) | 2011-10-14 | 2013-04-18 | International Business Machines Corporation | Techniques for Generating Balanced and Class-Independent Training Data From Unlabeled Data Set |
Non-Patent Citations (3)
Title |
---|
GUIDOTTI, Riccardo, et al. A survey of methods for explaining black box models. ACM computing surveys (CSUR), 2018, 51. Jg., Nr. 5, S. 1-42. DOI: https://doi.org/10.1145/3236009 |
JESMEEN, Z. H. M., et al. AUTO-CDD: automatic cleaning dirty data using machine learning techniques. Telkomnika, 2019, 17. Jg., Nr. 4, S. 2076-2086. |
JOHNSON, Justin M.; KHOSHGOFTAAR, Taghi M. Survey on deep learning with class imbalance. Journal of Big Data, 2019, 6. Jg., Nr. 1, S. 1-54. DOI: https://doi.org/10.1186/s40537-019-0192-5 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220374410A1 (en) * | 2021-05-12 | 2022-11-24 | International Business Machines Corporation | Dataset balancing via quality-controlled sample generation |
US11797516B2 (en) * | 2021-05-12 | 2023-10-24 | International Business Machines Corporation | Dataset balancing via quality-controlled sample generation |
DE102022213969A1 (en) | 2022-12-20 | 2024-06-20 | Zf Friedrichshafen Ag | Procedure for generating a training data set |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19535084A1 (en) | Dynamic optimisation of business processes managed by computer system | |
DE102021204550A1 (en) | Method for generating at least one data set for training a machine learning algorithm | |
DE102019124018A1 (en) | Method for optimizing tests of control systems for automated vehicle dynamics systems | |
DE102022119975A1 (en) | COMBINED TDECQ MEASUREMENT AND TRANSMITTER TUNING USING MACHINE LEARNING | |
DE102012223587B4 (en) | Method for testing an application | |
EP2433185B1 (en) | Apparatus and method for editing a process simulation database for a process | |
DE102018220701A1 (en) | Discretization of numerical values with adaptive accuracy | |
DE102017124058A1 (en) | IDENTIFYING CONTACTS USING LANGUAGE IDENTIFICATION | |
DE102015205720A1 (en) | System for analyzing unclassified motor vehicle error data | |
DE10222700A1 (en) | System optimization method for optimization of a complex technical system, e.g. optimization of motor vehicle bodywork design parameters, whereby successive approximation models are generated until sufficient accuracy is obtained | |
CH695402A5 (en) | A method for determining a characteristic data set for a sound signal. | |
EP2642749B1 (en) | Device and method for optimising the determination of pick-up areas | |
DE10325513B4 (en) | Method and apparatus for creating a behavioral aspect of a formal verification circuit | |
EP3716058A1 (en) | Method for operating a device with a new program code | |
DE102019217951A1 (en) | Method and apparatus for determining a domain distance between at least two data domains | |
DE102019123763A1 (en) | VERIFICATION DEVICE | |
DE102014103768A1 (en) | Method for compression of observations of a plurality of test procedures | |
DE102021204343A1 (en) | Controller for generating training data for training a machine learning algorithm | |
DE112010005924T5 (en) | Method and system for passing changes to a master unit to duplicates | |
DE102022212902A1 (en) | Method for training an artificial neural network | |
DE102022203834A1 (en) | Method for training a machine learning algorithm taking into account at least one inequality condition | |
DE202021102338U1 (en) | Control unit for generating training data for training a machine learning algorithm | |
DE202022102072U1 (en) | Device for training a machine learning algorithm taking into account at least one inequality condition | |
DE102022115101A1 (en) | AUTOMATED DESIGN OF ARTIFICIAL NEURAL NETWORK ARCHITECTURES | |
DE102023003193A1 (en) | System and method for the design of structural elements of a vehicle using generative adversarial networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R012 | Request for examination validly filed | ||
R016 | Response to examination communication |