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 PDF

Info

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
Application number
DE102021204550.2A
Other languages
German (de)
Inventor
Tamas Kapelner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102021204550.2A priority Critical patent/DE102021204550A1/en
Publication of DE102021204550A1 publication Critical patent/DE102021204550A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/774Generating 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 US 2013/0097103 A1 ist ein Verfahren zum Erzeugen von Trainingssätzen für eine Vorhersagemodellierung bekannt, wobei ein unklassifizierter Datensatz bereitgestellt wird, ein kleiner anfänglicher Datensatz aus dem unklassifizierten Datensatz ausgewählt wird, der kleine anfängliche Datensatz klassifiziert wird, wobei ein Clustering-Prozess auf den klassifizierten kleinen anfänglichen Datensatz angewendet wird, um Datencluster zu erzeugen, und wobei Daten- beziehungsweise Stichproben jeweils aus jedem der Datencluster ausgewählt und als Trainingsdaten verwendet werden. Die Verfahrensschritte werden anschließend derart wiederholt, dass der kleine anfängliche Datensatz während jeder Wiederholung mehr Elemente aufweist.From the pamphlet U.S. 2013/0097103 A1 a method for generating training sets for predictive modeling is known, wherein an unclassified data set is provided, a small initial data set is selected from the unclassified data set, the small initial data set is classified, a clustering process is applied to the classified small initial data set to generate data clusters, and wherein data or samples are respectively selected from each of the data clusters and used as training data. The method steps are then repeated such that the small initial data set has more elements during each iteration.

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.
Show it:
  • 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.

1 zeigt ein Flussdiagramm eines Verfahrens 1 zum Trainieren eines Algorithmus maschinellen Lernens gemäß Ausführungsformen der Erfindung. 1 FIG. 1 shows a flow diagram of a method 1 for training a machine learning algorithm according to embodiments of the invention.

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 1 wird dabei ein Verfahren 1 zum Trainieren eines Algorithmus maschinellen Lernens angegeben, wobei das Verfahren 1 einen Schritt 2 eines Trainierens eines Algorithmus maschinellen Lernens basierend auf einem durch ein erfindungsgemäßes Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens erzeugten Datensatz aufweist.According to the embodiments of 1 a method 1 for training a machine learning algorithm is specified, the method 1 having a step 2 of training a machine learning algorithm based on a data set generated by an inventive method for generating at least one data set for training a machine learning algorithm.

Wie 1 zeigt, weist das erfindungsgemäße Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens dabei zunächst einen Schritt 3 eines Bereitstellens eines ersten Datensatzes auf, 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 in einem Schritt 4 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 in einem Schritt 5 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 in einem Schritt 6 zum Trainieren eines Algorithmus maschinellen Lernens bereitgestellt.As 1 shows, the method according to the invention for generating at least one data set for training a machine learning algorithm initially has a step 3 of providing a first data set, with at least two classes occurring in the first data set, and with the first data set containing a plurality of based on the has at least two classes of classified samples. A class-specific probability is then estimated in a step 4 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, in a step 5, at least one further data set is obtained 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 randomly contain regions which classes which have a higher class-specific probability than other classes. represent, are cut out, generated, and the at least one further data set is provided in a step 6 for training a machine learning algorithm.

Gemäß den Ausführungsformen der 1 wird somit ein verbessertes Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens angegeben. Insbesondere wird der wenigstens eine Datensatz beziehungsweise Trainingsdatensatz derart erzeugt, dass es zu einer Annäherung beziehungsweise Angleichung der einzelnen in dem ersten Datensatz enthaltenen Klassen kommt, 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.According to the embodiments of 1 an improved method for generating at least one data set for training a machine learning algorithm is thus specified. In particular, the at least one data set or training data record is generated in such a way that the individual classes contained in the first data record are approximated or adjusted, so that problems based on majority or minority classes are avoided when generating the training data record. 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.

Gemäß den Ausführungsformen der 1 werden die Regionen beziehungsweise Bereiche, welche beim Erzeugen des wenigstens einen weiteren Datensatzes ignoriert werden, dabei, unter der Nebenbedingung, dass die einzelnen klassenspezifischen Wahrscheinlichkeiten beachtet werden, zufällig gewählt. Dies bedeutet, dass ein Bereich während einer Ausführung des Verfahrens ausgeschnitten beziehungsweise ignoriert werden können, während einer anderen Ausführung des Verfahrens jedoch nicht.According to the embodiments of 1 the regions or areas which are ignored when generating the at least one further data set are selected at random, with the secondary condition that the individual class-specific probabilities are taken into account. This means that a region can be clipped or ignored during one execution of the method, but not during another execution of the method.

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 1 dabei ein 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, auf.In addition, step 5 of generating the at least one data set by modifying samples contained in the first data set according to the embodiments of FIG 1 thereby cutting out or ignoring regions, which represent classes that have a higher class-specific probability than other classes, in individual samples contained in the first data set such that all classes in the at least one further data set have the same frequency as possible.

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 1 wird der Algorithmus maschinellen Lernens in mehreren Trainingsepochen trainiert, 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.According to the embodiments of 1 the machine learning algorithm is trained in a plurality of training epochs, a data set being generated for each training epoch, and the machine learning algorithm being trained during each of the training epochs based on the data set generated for the corresponding training epoch.

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.

2 zeigt ein Blockschaltbild eines Steuergeräts 10 zum Trainieren eines Algorithmus maschinellen Lernens gemäß Ausführungsformen der Erfindung. 2 10 shows a block diagram of a control device 10 for training a machine learning algorithm according to embodiments of the invention.

Wie 2 zeigt, weist das Steuergerät 10 dabei eine Trainingseinheit 11 zum Trainieren eines Algorithmus maschinellen Lernens sowie ein Steuergerät 12 zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens auf, wobei die Trainingseinheit 11 ausgebildet ist, einen durch das Steuergerät 12 erzeugten Datensatz zum Trainieren des Algorithmus maschinellen Lernens zu verwenden.As 2 shows, the control unit 10 has a training unit 11 for training a machine learning algorithm and a control unit 12 for generating at least one data set for training a machine learning algorithm, the training unit 11 trained det is to use a data set generated by the controller 12 to train the machine learning algorithm.

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 2 weist das Steuergerät 12 zum Erzeugen wenigstens eines Datensatzes zum Trainieren des Algorithmus maschinellen Lernens dabei eine erste Bereitstellungseinheit 13, 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 14, 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 15, 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 Regionen, welche Klassen, welche eine höhere klassenspezifische Wahrscheinlichkeit als andere Klassen aufweisen, repräsentiert sind, ausgeschnitten werden, zu erzeugen, und eine zweite Bereitstellungseinheit 16, welche ausgebildet ist, den wenigstens einen weiteren Datensatz zum Trainieren des Algorithmus maschinellen Lernens bereitzustellen, auf.According to the embodiments of 2 For generating at least one data set for training the machine learning algorithm, control unit 12 has a first provision unit 13, which is designed to provide a first data set, with at least two classes occurring in the first data set, and with the first data set having a plurality of based on has samples classified at least two classes, an estimation unit 14, 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 with which the corresponding class is a majority class, a generation unit 15, which is designed, at least one further data set from the first data set by modifying data contained in the first data set such that in individual samples contained in the first data set regions, which e classes that have a higher class-specific probability than other classes are represented, are cut out, and a second provision unit 16, which is designed to provide the at least one further data set for training the machine learning algorithm.

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 memory 17 for training the machine learning algorithm, wherein the control unit 12 is designed to generate a data set for training the machine learning algorithm, which is stored in the memory 17 to process the stored data in such a way that a data set that is ultimately used to train the machine learning algorithm has a class distribution that is as balanced as possible.

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 2 ist die Erzeugungseinheit 15 weiter ausgebildet, den wenigstens einen Datensatz durch Ausschneiden beziehungsweise Ignorieren von Regionen, welche Klassen, welche eine höhere klassenspezifische Wahrscheinlichkeit als andere Klassen aufweisen, 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.According to the embodiments of 2 the generation unit 15 is further developed to generate the at least one data set by cutting out or ignoring regions which contain classes that have a higher class-specific probability than other classes in individual samples contained in the first data set such that all classes in the at least one further data set have the same frequency as possible.

Gemäß den Ausführungsformen der 2 ist die Schätzeinheit 14 ferner ausgebildet, 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, zu schätzen. Ferner kann die Schätzeinheit aber auch ausgebildet sein, die klassenspezifischen Wahrscheinlichkeiten jeweils basierend auf während eines Trainierens des Algorithmus maschinellen Lernens zuvor gewonnen Erfahrungswerten zu schätzen. Ferner kann die Schätzeinheit zudem auch derart ausgebildet sein, dass die einzelnen klassenspezifischen Wahrscheinlichkeiten durch einen Fachmann beziehungsweise Experten vorgegeben werden, wobei die Schätzeinheit hierzu beispielsweise eine entsprechende Eingabeeinheit aufweisen kann.According to the embodiments of 2 the estimation unit 14 is also 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. Furthermore, the estimation unit can also be designed to estimate the class-specific probabilities based on empirical values previously obtained during training of the machine learning algorithm. Furthermore, the estimation unit can also be designed in such a way that the individual class-specific probabilities are specified by a person skilled in the art or an expert, with the estimation unit being able to have a corresponding input unit for this purpose, for example.

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, control unit 10 is designed to train the machine learning algorithm in a plurality of training epochs, with a data set being generated for each training epoch, and control unit 10 being designed to train the machine learning algorithm during each of the training epochs based on the data for the corresponding training epoch to train the generated data set.

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)

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 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).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 has a plurality of random samples classified based on the at least two classes (3); - Estimating a class-specific probability 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 (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 in individual samples contained in the data set random regions which represent classes which have a higher class-specific probability than other classes are cut out ( 5); and - Providing the at least one further data set for training a machine learning algorithm (6). Verfahren nach Anspruch 1, wobei der Schritt (5) des Erzeugens des wenigstens einen weiteren Datensatzes durch Modifizieren von in dem ersten Datensatz enthaltenen Stichproben ein Ausschneiden 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 dieselbe Häufigkeit aufweisen, aufweist.procedure after claim 1 , wherein the step (5) of generating the at least one further data set by modifying samples contained in the first data set involves cutting out regions which represent classes which have a higher class-specific probability than other classes, in individual ones contained in the first data set Samples such that all classes in the at least one other data set have the same frequency. Verfahren nach Anspruch 1 oder 2, wobei 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 geschätzt wird.procedure after claim 1 or 2 , wherein 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, and/or based on empirical values previously obtained during training of the machine learning algorithm. Verfahren zum Trainieren eines Algorithmus maschinellen Lernens, wobei der Algorithmus maschinellen Lernens basierend auf einem durch ein Verfahren zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens nach einem der Ansprüche 1 bis 3 erzeugten Datensatz trainiert wird.Method for training a machine learning algorithm, wherein the machine learning algorithm is based on a by a method for generating at least one data set for training a machine learning algorithm according to one of Claims 1 until 3 generated data set is trained. Verfahren nach Anspruch 4, wobei der Algorithmus maschinellen Lernens in mehreren Trainingsepochen trainiert wird, 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.procedure after claim 4 , wherein the machine learning algorithm is trained in a plurality of training epochs, a data set being generated for each training epoch, and wherein the machine learning algorithm is trained during each of the training epochs based on the data set generated for the corresponding training epoch. Verfahren nach Anspruch 4 oder 5, wobei es sich bei dem Algorithmus maschinellen Lernens um einen Algorithmus zur Bildklassifikation oder einen Algorithmus zur Objektklassifikation handelt.procedure after claim 4 or 5 , where the machine learning algorithm is an image classification algorithm or an object classification algorithm. Verfahren zum Klassifizieren von Bilddaten, wobei Bilddaten unter Verwendung eines Algorithmus maschinellen Lernens klassifiziert werden, und wobei der Algorithmus maschinellen Lernens unter Verwendung eines Verfahrens nach Anspruch 6 trainiert wurde.A method for classifying image data, wherein image data is classified using a machine learning algorithm, and wherein the machine learning algorithm is classified using a method according to claim 6 was trained. Computerprogramm mit Programmcode, um ein Verfahren nach einem der Ansprüche 1 bis 7 auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.Computer program with program code to implement a method according to one of Claims 1 until 7 to be executed when the computer program is run on a computer. Computerlesbarer Datenträger mit Programmcode eines Computerprogramms um ein Verfahren nach einem der Ansprüche 1 bis 7 auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.Computer-readable data medium with program code for a computer program for a method according to one of Claims 1 until 7 to be executed when the computer program is run on a computer. Steuergerät zum Erzeugen wenigstens eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens, wobei das Steuergerät (12) eine erste Bereitstellungseinheit (13), 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 (14), 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 (15), 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 (16), welche ausgebildet ist, den wenigstens einen weiteren Datensatz zum Trainieren eines Algorithmus maschinellen Lernens bereitzustellen, aufweist.Control unit for generating at least one data set for training a machine learning algorithm, the control unit (12) having a first provision unit (13) which is designed to provide a first data set, with at least two classes occurring in the first data set, and with the first data set has a plurality of random samples classified based on the at least two classes, an estimation unit (14) 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 (15) 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 in such a way that in individual samples contained in the first data set n random regions, which represent classes that have a higher class-specific probability than other classes, are cut out, and a second provision unit (16), which is designed to provide the at least one further data set for training a machine learning algorithm, having. Steuergerät nach Anspruch 10, wobei die Erzeugungseinheit (15) ausgebildet ist, den wenigstens einen weiteren Datensatz durch Ausschneiden 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 dieselbe Häufigkeit aufweisen, zu erzeugen.control unit claim 10 , wherein the generating unit (15) is designed to generate the at least one further data set by cutting out 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 to generate at least one further data set having the same frequency. Steuergerät nach Anspruch 9 oder 10, wobei die Schätzeinheit (14) ausgebildet ist, 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.control unit claim 9 or 10 , wherein the estimation unit (14) is designed to determine 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 previously obtained machine learning during training of the algorithm appreciate experience. Steuergerät zum Trainieren eines Algorithmus maschinellen Lernens, wobei das Steuergerät (10) ausgebildet ist, den Algorithmus maschinellen Lernens basierend auf einem durch ein Steuergerät (12) zum Erzeugen eines Datensatzes zum Trainieren eines Algorithmus maschinellen Lernens nach einem der Ansprüche 10 bis 12 erzeugten Datensatz zu trainieren.Control unit for training a machine learning algorithm, wherein the control unit (10) is designed to use the machine learning algorithm based on a by a control unit (12) for generating a data set for training a machine learning algorithm according to one of Claims 10 until 12 to train the generated data set. Steuergerät nach Anspruch 13, wobei das Steuergerät (10) ausgebildet ist, 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.control unit Claim 13 , wherein the control unit (10) is designed to train the machine learning algorithm in a plurality of training epochs, with a data set being generated for each training epoch, and wherein the control unit (10) is designed to train the machine learning algorithm during each of the training epochs based on to train with the data set generated for the corresponding training epoch. Steuergerät zum Klassifizieren von Bilddaten, wobei das Steuergerät ausgebildet ist, Bilddaten unter Verwendung eines Algorithmus maschinellen Lernens zu klassifizieren, und wobei der Algorithmus maschinellen Lernens unter Verwendung eines Steuergeräts nach Anspruch 13 oder 14 trainiert wurde.Control unit for classifying image data, wherein the control unit is designed to classify image data using a machine learning algorithm, and wherein the machine learning algorithm using a control unit Claim 13 or 14 was trained.
DE102021204550.2A 2021-05-05 2021-05-05 Method for generating at least one data set for training a machine learning algorithm Pending DE102021204550A1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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