DE102019206050A1 - Selection of new unlabeled learning data sets for active learning - Google Patents
Selection of new unlabeled learning data sets for active learning Download PDFInfo
- Publication number
- DE102019206050A1 DE102019206050A1 DE102019206050.1A DE102019206050A DE102019206050A1 DE 102019206050 A1 DE102019206050 A1 DE 102019206050A1 DE 102019206050 A DE102019206050 A DE 102019206050A DE 102019206050 A1 DE102019206050 A1 DE 102019206050A1
- Authority
- DE
- Germany
- Prior art keywords
- learning data
- learning
- data sets
- variable values
- unlabeled
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Abstract
Verfahren zum Trainieren eines trainierbaren Moduls (1), mit den Schritten:• das trainierbare Modul (1) wird mit gelabelten Lern-Datensätzen (2*) trainiert (110), so dass deren Lern-Eingangsgrößenwerte (11a) auf die jeweils zugehörigen Lern-Ausgangsgrößenwerte (13a) abgebildet werden;• für mindestens einen zuvor ungelabelten Lern-Datensatz (2) aus einem Pool (2p) werden Lern-Ausgangsgrößenwerte (13a) angefordert (180), so dass dieser ungelabelte Lern-Datensatz (2) zu einem gelabelten Lern-Datensatz (2*) wird;• mit der solchermaßen erweiterten Menge gelabelter Lern-Datensätze (2*) wird zum Training (110) zurückverzweigt (190), wobei• Lern-Eingangsgrößenwerte (11a) mindestens eines Lern-Datensatzes (2, 2*), und/oder Validierungs-Eingangsgrößenwerte (11a*) mindestens eines Validierungs-Datensatzes (3), mehreren Abwandlungen (1a-1c) des trainierbaren Moduls (1) als Eingangsgrößen (11) zugeführt werden (120);• aus der Abweichung der Ausgangsgrößenwerte (13), in die die Abwandlungen (1a-1c) die Lern-Eingangsgrößenwerte (11a) jeweils übersetzen, voneinander ein Maß für die Unsicherheit (13b) dieser Ausgangsgrößenwerte (13) ermittelt wird (130); und• unter Heranziehung der Unsicherheit (13b) mindestens ein neuer ungelabelter Lern-Datensatz (2) für die Hinzufügung zum Pool (2p) ausgewählt wird (150, 160, 170).Verfahren (200) mit erweiterter Wirkkette bis zur Ansteuerung physikalische Systeme (50, 60, 70, 80).Method for training a trainable module (1), with the following steps: the trainable module (1) is trained (110) with labeled learning data sets (2 *), so that their learning input variable values (11a) are related to the respective learning -Output variable values (13a) are mapped; • for at least one previously unlabeled learning data set (2) from a pool (2p) learning output variable values (13a) are requested (180) so that this unlabeled learning data set (2) becomes a labeled learning data set (2 *); • with the set of labeled learning data sets (2 *) expanded in this way, it branches back (190) to training (110), where • learning input variable values (11a) at least one learning data set (2nd , 2 *), and / or validation input variable values (11a *) at least one validation data set (3), several modifications (1a-1c) of the trainable module (1) are supplied as input variables (11) (120); the deviation of the output variable values (13) into which the modifications (1a-1c) each translate the learning input variable values (11a), a measure of the uncertainty (13b) of these output variable values (13) is determined (130) from one another; and • using the uncertainty (13b), at least one new unlabeled learning data record (2) is selected (150, 160, 170) for addition to the pool (2p). Method (200) with extended functional chain up to the control of physical systems ( 50, 60, 70, 80).
Description
Die vorliegende Erfindung betrifft das Training trainierbarer Module, wie sie beispielsweise für Klassifikationsaufgaben, bei der Qualitätskontrolle und/oder bei der Objekterkennung beim zumindest teilweise automatisierten Fahren eingesetzt werden.The present invention relates to the training of trainable modules, such as those used, for example, for classification tasks, for quality control and / or for object recognition in at least partially automated driving.
Stand der TechnikState of the art
Trainierbare Module, wie beispielsweise künstliche neuronale Netzwerke, können mit einer endlichen Anzahl von Situationen trainiert werden und die hieraus gewonnen Erkenntnisse auf einen großen Kreis von unbekannten Situationen verallgemeinern. So kann beispielsweise ein Objekterkennungssystem für ein zumindest teilweise automatisiert fahrendes Fahrzeug anhand einer endlichen Zahl von Verkehrssituationen so trainiert werden, dass es anschließend auch in unbekannten, nicht trainierten Situationen das gewünschte Verhalten zeigt. Ebenso kann beispielsweise ein System zur Qualitätskontrolle von in Serie hergestellten Produkten anhand einer endlichen Anzahl von Produkt-Beispielen lernen, wann Produkte als fehlerhaft einzustufen sind, und dies auch dann erkennen, wenn es sich anders manifestiert als in den Produkt-Beispielen.Trainable modules, such as artificial neural networks, can be trained with a finite number of situations and the knowledge gained therefrom can be generalized to a large group of unknown situations. For example, an object recognition system for an at least partially automated vehicle can be trained on the basis of a finite number of traffic situations in such a way that it then shows the desired behavior even in unknown, untrained situations. Likewise, for example, a system for quality control of mass-produced products can learn from a finite number of product examples when products are to be classified as defective, and can also recognize this if it manifests itself differently than in the product examples.
Beim Training eines trainierbaren Moduls ist es ein wesentlicher Treiber für die Kosten, die Lern-Datensätze, die beispielsweise Verkehrssituationen oder an Produkt-Beispielen erhobene Messdaten umfassen, mit der Schlussfolgerung, die das trainierbare Modul idealerweise hieraus ziehen sollte, zu labeln. Dies muss häufig manuell erfolgen. Daher startet das sogenannte aktive Lernen mit Lern-Datensätzen, von denen nur ein sehr kleiner Teil gelabelt ist. Das trainierbare Modul sucht sich dann immer wieder selbsttätig diejenigen Lern-Datensätze aus, die als nächstes gelabelt werden sollten, um mit insgesamt möglichst wenigen gelabelten Lern-Datensätzen einen maximalen Trainingsfortschritt zu erzielen.When training a trainable module, it is an essential driver of the costs to label the learning data sets, which include, for example, traffic situations or measurement data obtained from product examples, with the conclusion that the trainable module should ideally draw from this. This often has to be done manually. This is why so-called active learning starts with learning data sets, only a very small part of which is labeled. The trainable module then automatically selects those learning data sets that should be labeled next in order to achieve maximum training progress with as few labeled learning data sets as possible.
Offenbarung der ErfindungDisclosure of the invention
Im Rahmen der Erfindung wurde ein Verfahren zum Trainieren eines trainierbaren Moduls entwickelt. Das trainierbare Modul übersetzt eine oder mehrere Eingangsgrößen in eine oder mehrere Ausgangsgrößen.Within the scope of the invention, a method for training a trainable module was developed. The trainable module translates one or more input variables into one or more output variables.
Unter einem trainierbaren Modul wird insbesondere ein Modul angesehen, das eine mit anpassbaren Parametern parametrierte Funktion mit großer Kraft zur Verallgemeinerung verkörpert. Die Parameter können beim Training eines trainierbaren Moduls insbesondere dergestalt angepasst werden, dass bei Eingabe von Lern-Eingangsgrößenwerten in das Modul die zugehörigen Lern-Ausgangsgrößenwerte möglichst gut reproduziert werden. Das trainierbare Modul kann insbesondere ein künstliches neuronales Netzwerk, KNN, beinhalten, und/oder es kann ein KNN sein.A trainable module is viewed in particular as a module that embodies a function parameterized with adaptable parameters with great force for generalization. During the training of a trainable module, the parameters can in particular be adapted in such a way that when learning input variable values are entered into the module, the associated learning output variable values are reproduced as well as possible. The trainable module can in particular contain an artificial neural network, ANN, and / or it can be an ANN.
Das Training arbeitet mit aktivem Lernen. Es basiert daher auf zwei Arten von Lern-Datensätzen. Zum einen gibt es einen Pool von ungelabelten Lern-Datensätzen, die lediglich Lern-Eingangsgrößenwerte umfassen. Zum anderen gibt es gelabelte Lern-Datensätze, die sowohl Lern-Eingangsgrößenwerte als auch zugehörige Lern-Ausgangsgrößenwerte umfassen. Beim aktiven Lernen werden im Laufe des Trainings zunächst ungelabelte Lern-Datensätze aus dem Pool nachträglich gelabelt, nachdem erkannt wurde, dass gerade das Labeln dieser Lern-Datensätze einen Gewinn im Hinblick auf das Trainingsergebnis verspricht. Es können auch weitere ungelabelte Lern-Datensätze dem Pool hinzugefügt werden, um hierin nach Kandidaten zu suchen, die es sich in diesem Sinne zu labeln lohnt.The training works with active learning. It is therefore based on two types of learning data sets. On the one hand, there is a pool of unlabeled learning data sets that only contain learning input variable values. On the other hand, there are labeled learning data sets which include both learning input variable values and associated learning output variable values. During active learning, unlabeled learning data sets from the pool are initially labeled afterwards after it has been recognized that the labeling of these learning data sets promises a gain in terms of the training result. Further unlabeled learning data records can also be added to the pool in order to search for candidates who are worth labeling in this sense.
Dabei bezeichnet der Begriff „Lern-Datensatz“ nicht die Gesamtheit aller zur Verfügung stehender Lern-Daten. Ein ungelabelter Lern-Datensatzes umfasst eine oder mehreren Lern-Eingangsgrößenwerte, aus denen das trainierbare Modul einen oder mehrere Ausgangsgrößenwerte als Aussage generieren soll. The term “learning data set” does not refer to the entirety of all available learning data. An unlabeled learning data record comprises one or more learning input variable values from which the trainable module is to generate one or more output variable values as a statement.
Ein gelabelter Lern-Datensatz umfasst zusätzlich noch die Lern-Ausgangsgrößenwerte, auf die das trainierbare Modul den oder die Lern-Eingangsgrößenwerte abbilden soll, als Label. Bei einem für die Klassifikation und/oder Regression eingesetzten trainierbaren Modul kann ein ungelabelter Lern-Datensatz beispielsweise ein Bild als Matrix von Lern-Eingangsgrößenwerten umfassen. Wird dieser Lern-Datensatz gelabelt, kommen beispielsweise noch Werte, die das trainierbare Modul hieraus idealerweise in Form von Softmax-Scores generieren sollte, als Vektor von Lern-Ausgangsgrößenwerten hinzu.A labeled learning data record also includes the learning output variable values, onto which the trainable module is to map the learning input variable value or values, as a label. In the case of a trainable module used for classification and / or regression, an unlabeled learning data record can include, for example, an image as a matrix of learning input variable values. If this learning data set is labeled, values are added, for example, which the trainable module should ideally generate from this in the form of Softmax scores, as a vector of learning output variable values.
Bei den Validierungs-Datensätzen handelt es sich um Datensätze, die analog zu den Lern-Datensätzen eine Zuordnung von Validierungs-Eingangsgrößenwerten zu Validierungs-Ausgangsgrößenwerten als Soll-Ausgangsgrößenwerten beinhalten. Jedoch wird das trainierbare Modul bewusst nicht auf den Validierungs-Datensätzen trainiert. Daher misst die mit Hilfe der Validierungs-Datensätze ermittelte Genauigkeit die Fähigkeit des trainierbaren Moduls, das aus den Lern-Datensätzen gelernte Wissen zu verallgemeinern. Gute Werte für die Genauigkeit lassen sich also nicht durch bloßes „Auswendiglernen“ dieses Wissens „erschleichen“. Die Validierungs-Datensätze können sich weiterhin vorteilhaft dadurch auszeichnen, dass die Zuordnung der Validierungs-Ausgangsgrößenwerte zu den Validierungs-Eingangsgrößenwerten aus einer besonders zuverlässigen Quelle stammt. Die Validierungs-Datensätze können also insbesondere beispielsweise mit einer besonders zuverlässigen und dafür aufwändigen Methode, von einem besonders ausgewiesenen Experten für die jeweilige Anwendung, und/oder nach einem für die jeweilige Anwendung anerkannten „Goldstandard“, gelabelt sein. Der Aufwand pro Label ist also in der Regel bei den Validierungs-Datensätzen erheblich größer als bei den Lern-Datensätzen. Dementsprechend stehen typischerweise deutlich weniger Validierungs-Datensätze als Lern-Datensätze zur Verfügung.The validation data sets are data sets which, analogously to the learning data sets, contain an assignment of validation input variable values to validation output variable values as target output variable values. However, the trainable module is deliberately not trained on the validation data sets. Therefore, the accuracy determined with the aid of the validation data sets measures the ability of the trainable module to generalize the knowledge learned from the learning data sets. Good values for the accuracy cannot be “obtained” by mere “memorization” of this knowledge. The validation data records can also advantageously be characterized in that the assignment of the validation output variable values to the Validation input values come from a particularly reliable source. The validation data records can therefore be labeled in particular, for example, with a particularly reliable and therefore complex method, by a specially designated expert for the respective application, and / or according to a “gold standard” recognized for the respective application. The effort per label is therefore usually considerably greater for the validation data sets than for the learning data sets. Accordingly, there are typically significantly fewer validation data sets available than learning data sets.
Die Messdaten wurden durch einen physikalischen Messprozess, und/oder durch eine teilweise oder vollständige Simulation eines solchen Messprozesses, und/oder durch eine teilweise oder vollständige Simulation eines mit einem solchen Messprozess beobachtbaren technischen Systems, erhalten. Dies bringt es mit sich, dass die Messdaten mit Unsicherheiten und Unwägbarkeiten behaftet sind. Anders als bei rein synthetischen Daten steht also nicht von vornherein für alle Lern-Eingangsgrößenwerte auch gleich die zugehörigen Lern-Ausgangsgrößenwerte als Label bereit, sondern diese Labels müssen in einem je nach technischer Anwendung mehr oder weniger aufwändigen Prozess nachträglich ermittelt werden.The measurement data were obtained through a physical measurement process and / or through a partial or complete simulation of such a measurement process and / or through a partial or complete simulation of a technical system that can be observed with such a measurement process. This means that the measurement data are fraught with uncertainties and imponderables. In contrast to purely synthetic data, the associated learning output variable values are not available from the outset as labels for all learning input variable values, but these labels must be determined subsequently in a more or less complex process, depending on the technical application.
Im Rahmen des Verfahrens wird das trainierbare Modul mit den gelabelten Lern-Datensätzen trainiert, so dass die in diesen Lern-Datensätzen enthalten Lern-Eingangsgrößenwerte auf die jeweils zugehörigen Lern-Ausgangsgrößenwerte abgebildet werden. Für die Bewertung, inwieweit die Lern-Ausgangsgrößenwerte wie gewünscht reproduziert werden, kann ein beliebiges Fehlermaß zum Einsatz kommen, wie etwa die Kreuzentropie oder die Methode der kleinsten Fehlerquadratsumme.As part of the method, the trainable module is trained with the labeled learning data sets, so that the learning input variable values contained in these learning data sets are mapped to the respective associated learning output variable values. Any desired error measure can be used to assess the extent to which the learning output variable values are reproduced as desired, such as the cross entropy or the method of the smallest error sum of squares.
Das aktive Lernen sieht vor, dass ausgehend von einem bestimmten Trainingsstand des trainierbaren Moduls für mindestens einen zuvor ungelabelten Datensatz aus dem Pool Lern-Ausgangsgrößenwerte angefordert werden, so dass dieser vormals ungelabelte Lern-Datensatz zu einem gelabelten Lern-Datensatz wird. Dadurch wird die Menge gelabelter Lern-Datensätze erweitert, und zugleich scheidet der frisch gelabelte Lern-Datensatz aus dem Pool der ungelabelten Lern-Datensätze aus.Active learning provides that, based on a specific training level of the trainable module, learning output variable values are requested for at least one previously unlabeled data set from the pool, so that this previously unlabeled learning data set becomes a labeled learning data set. As a result, the amount of labeled learning data sets is expanded, and at the same time the freshly labeled learning data set is eliminated from the pool of unlabeled learning data sets.
Hierbei ist unter „anfordern“ jede Möglichkeit der Beschaffung von Lern-Ausgangsgrößenwerten als Label zu verstehen. Es kann beispielsweise ein Bediener zur Eingabe derartiger Label über eine lokale oder entfernte Eingabeeinrichtung aufgefordert werden. Es kann auch beispielsweise ein physikalischer Messvorgang ausgelöst werden, der das Label als Ergebnis liefert. Das Label kann auch beispielsweise aus einer Cloud abgerufen werden.Here, “request” is to be understood as any possibility of obtaining learning output values as a label. For example, an operator can be requested to enter such labels via a local or remote input device. For example, a physical measurement process can also be triggered, which delivers the label as a result. The label can also be called up from a cloud, for example.
In diesen Prozess wird nun dahingehend eingegriffen, dass auf der Basis des aktuellen Trainingsstands des trainierbaren Moduls die Beschaffung von Nachschub an ungelabelten Lern-Datensätzen für den Pool gezielt gesteuert wird. Speziell werden ungelabelte Lern-Datensätze gesucht, unter denen sich mit erhöhter Wahrscheinlichkeit aussichtsreiche Kandidaten für das Labeln befinden. This process is now intervened in such a way that, on the basis of the current training status of the trainable module, the procurement of replenishment of unlabeled learning data sets for the pool is specifically controlled. In particular, unlabeled learning data sets are sought, among which there are more likely promising candidates for labeling.
Der Trainingsstand beim aktiven Lernen setzt sich zusammen aus der Anzahl der auch „acquisition steps“ genannten Iterationen, die sich in der Anzahl der gelabelten Lern-Datensätze unterscheiden, und den einzelnen Epochen innerhalb einer solchen Iteration. Es wird also von Iteration zu Iteration die Menge der gelabelten Lern-Datensätze vergrößert, und innerhalb der Iteration wird mit den jeweils vorhandenen gelabelten Lern-Datensätzen Epoche für Epoche trainiert. Somit bilden die Iterationen („acquisition steps“) eine Grobeinteilung des Trainingsstandes, während die Epochen eine Feineinteilung des Trainingsstandes bilden.The level of training in active learning is made up of the number of iterations, also known as “acquisition steps”, which differ in the number of labeled learning data sets, and the individual epochs within such an iteration. The amount of labeled learning data sets is thus increased from iteration to iteration, and within the iteration, training is carried out epoch by epoch with the respective existing labeled learning data sets. Thus the iterations (“acquisition steps”) form a rough division of the training level, while the epochs form a fine division of the training level.
Es werden Lern-Eingangsgrößenwerte mindestens eines gelabelten oder ungelabelten Lern-Datensatzes, und/oder Validierungs-Eingangsgrößenwerte mindestens eines Validierungs-Datensatzes, mehreren Abwandlungen des trainierbaren Moduls als Eingangsgrößen zugeführt, so dass die verschiedenen Abwandlungen jeweils verschiedene Ausgangsgrößenwerte liefern. Dabei unterscheiden sich die Abwandlungen so weit voneinander, dass sie bei fortschreitendem Lernen nicht deckungsgleich ineinander überführt werden.Learning input variable values of at least one labeled or unlabeled learning dataset, and / or validation input variable values of at least one validation dataset, are supplied to several modifications of the trainable module as input variables, so that the different modifications each provide different output variable values. The modifications differ so widely that they are not transferred congruently into one another as the learning progresses.
Die Abwandlungen können beispielsweise gleiche oder vergleichbare Trainingsstände haben, um die jeweils gelieferten Ausgangsgrößenwerte besser vergleichbar zu machen. Je nach Anwendung kann aber auch beispielsweise ein Unterschied zwischen den Trainingsständen der Abwandlungen ausdrücklich gewünscht sein.The modifications can, for example, have the same or comparable training levels in order to make the output variable values supplied in each case better comparable. Depending on the application, however, a difference between the training levels of the modifications can also be expressly desired, for example.
Die Abwandlungen können beispielsweise strukturell unterschiedlich sein. Beispielsweise können mehrere Abwandlungen von KNNs erzeugt werden, indem jeweils unterschiedliche Neuronen im Rahmen eines „Dropouts“ deaktiviert werden. Die Abwandlungen können aber auch beispielsweise durch Vortraining mit gleich mächtigen, aber inhaltlich hinreichend unterschiedlichen Teilmengen der insgesamt vorhandenen Lern-Datensätze, und/oder durch Vortraining ausgehend von hinreichend unterschiedlichen Initialisierungen, erzeugt werden. Es ist aber wiederum nicht zwingend, dass die beim Vortraining verwendeten Teilmengen der Lern-Datensätze gleich mächtig sind. The modifications can be structurally different, for example. For example, several modifications of ANNs can be generated by deactivating different neurons as part of a "dropout". However, the modifications can also be generated, for example, by pre-training with equally powerful but sufficiently different subsets of the overall learning data sets available, and / or by pre-training based on sufficiently different initializations. Again, however, it is not imperative that the subsets of the learning data sets used in the preliminary training are equally powerful.
Beispielsweise können die Abwandlungen von dem trainierbaren Modul abgeleitet werden, nachdem dieses bis zu einem bestimmten Trainingsstand trainiert wurde. Die Abwandlungen können aber auch beispielsweise unabhängig voneinander bis zu einem jeweils gewünschten Trainingsstand trainiert werden.For example, the modifications can be derived from the trainable module after it has been trained to a certain level of training. The modifications can also, for example, be trained independently of one another up to a desired training level.
Aus der Abweichung der Ausgangsgrößenwerte, in die die Abwandlungen ihre Eingangsgrößenwerte jeweils übersetzen, voneinander wird ein Maß für die Unsicherheit dieser Ausgangsgrößenwerte ermittelt.A measure for the uncertainty of these output variable values is determined from the deviation of the output variable values into which the modifications translate their input variable values.
Das Ermitteln der Unsicherheit für gelabelte Lern-Datensätze oder Validierungs-Datensätze ist insoweit vorteilhaft, als das jeweils vorhandene Label als Kriterium für die spätere Suche nach ungelabelten Lern-Datensätzen genutzt werden kann. Ansonsten besteht aber völlige Freiheit dahingehend, auf der Basis welcher Art von Eingangsgrößenwerten die Unsicherheit ermittelt wurde. Das heißt, die weitere Verarbeitung der Unsicherheit, und Entscheidungen auf der Basis der Unsicherheit, hängen nur von der Unsicherheit selbst ab und nicht davon, ob diese für einen gelabelten Lern-Datensatz, für einen ungelabelten Lern-Datensatz oder für einen Validierungs-Datensatz ermittelt wurde.Determining the uncertainty for labeled learning data sets or validation data sets is advantageous insofar as the respective existing label can be used as a criterion for the later search for unlabeled learning data sets. Otherwise, however, there is complete freedom as to the type of input variable values on the basis of which the uncertainty was determined. This means that further processing of the uncertainty, and decisions based on the uncertainty, depend only on the uncertainty itself and not on whether it is determined for a labeled learning data set, for an unlabeled learning data set or for a validation data set has been.
Es wird nun unter Heranziehung der Unsicherheit mindestens ein neuer ungelabelter Lern-Datensatz für die Hinzufügung zu dem besagten Pool ausgewählt. Das bedeutet, dass der Pool an ungelabelten Lern-Datensätzen, der für das Labeln des aktiven Lernens zur Verfügung steht, um diesen neu ausgewählten ungelabelten Lern-Datensatz vergrößert wird.Using the uncertainty, at least one new unlabeled learning data set is now selected for addition to the said pool. This means that the pool of unlabeled learning data sets that is available for labeling active learning is increased by this newly selected unlabeled learning data set.
Die Auswahl kann aus einer oder mehreren Quellen beliebiger Art schöpfen, wie beispielsweise aus einem Vorrat bereits erfasster, aber noch nicht im Pool enthaltener ungelabelter Lern-Datensätze. Es kann aber auch beispielsweise ein fortlaufender Datenstrom solcher Lern-Datensätze oder eine Cloud als Quelle dienen. Der auszuwählende Lern-Datensatz kann aber auch beispielsweise ondemand künstlich erzeugt werden, was besonders vorteilhaft sein kann, weil der gewünschte Typ (Klasse bzw. Metaklasse) des ungelabelten Datensatzes sich beim künstlichen Erzeugen direkt steuern lässt. Entscheidend ist lediglich, dass ein neuer Lern-Datensatz eines bestimmten Typs, der zuvor noch nicht im Pool enthalten und somit noch nicht am aktiven Lernen beteiligt war, in den Pool kommt und somit am aktiven Lernen beteiligt wird.The selection can be drawn from one or more sources of any kind, such as from a pool of unlabeled learning data records that have already been recorded but not yet contained in the pool. However, a continuous data stream of such learning data sets or a cloud can also serve as a source, for example. The learning data record to be selected can also be generated artificially on demand, which can be particularly advantageous because the desired type (class or metaclass) of the unlabeled data record can be controlled directly during artificial generation. The only decisive factor is that a new learning data record of a certain type, which was not previously included in the pool and was therefore not yet involved in active learning, comes into the pool and is thus involved in active learning.
Es wurde erkannt, dass es vom aktuellen Trainingsstand des trainierbaren Moduls und von der Vorgeschichte des Trainings abhängt, welche ungelabelten Lern-Datensätze das Training des trainierbaren Moduls weiter voranbringen können. Speziell kommt es hierbei auf die Variabilität der Situationen an, die das trainierbare Modul im bisherigen Training bereits kennengelernt hat.It was recognized that it depends on the current training status of the trainable module and on the previous history of the training which unlabeled learning data sets can advance the training of the trainable module. In particular, it depends on the variability of the situations that the trainable module has already got to know in the previous training.
So ist es beispielsweise im Rahmen des zumindest teilweise automatisierten Fahrens essentiell, dass die Erkennung von Fahrbahnmarkierungen, Fahrbahnbegrenzungen, Verkehrszeichen, anderen Verkehrsteilnehmern und anderen Objekten unter allen Umständen zuverlässig funktioniert. Unabhängig davon, welche Tageszeit, welche Jahreszeit oder welche Witterungsbedingungen herrschen, muss ein Stoppschild immer als ein Stoppschild und ein Fußgänger immer als ein Fußgänger klassifiziert werden. Um hierauf hinzuarbeiten, werden beispielsweise bei Testfahrten Bilder aus dem Fahrzeugumfeld in allen erdenklichen Situationen aufgenommen und einem für die Klassifikation von Objekten zuständigen trainierbaren Modul als Lern-Datensätze zur Verfügung gestellt. Je größer die Variabilität der Gesamtsituationen ist, in denen ein bestimmtes Objekt jeweils vorkommt, desto größer ist die Wahrscheinlichkeit, dass das trainierbare Modul diese Lern-Erfahrung zutreffend verallgemeinert und das Objekt auch in völlig unbekannten Situationen erkennt.For example, in the context of at least partially automated driving, it is essential that the detection of lane markings, lane boundaries, traffic signs, other road users and other objects work reliably under all circumstances. Regardless of the time of day, the season or the weather conditions, a stop sign must always be classified as a stop sign and a pedestrian must always be classified as a pedestrian. In order to work towards this, for example during test drives, pictures from the vehicle environment are recorded in all conceivable situations and made available as learning data records to a trainable module responsible for the classification of objects. The greater the variability of the overall situation in which a certain object occurs, the greater the probability that the trainable module will appropriately generalize this learning experience and recognize the object in completely unknown situations.
Wie groß die in den Lern-Datensätzen vorgelegte Variabilität sein muss, und in welcher Hinsicht Variabilität benötigt wird, ist hierbei schwer zu überblicken. Beim aktiven Lernen kommt noch hinzu, dass die Variabilität der angebotenen ungelabelten Lern-Datensätze nicht unbedingt in vollem Umfang im tatsächlichen Training des trainierbaren Moduls ankommt. Beim aktiven Lernen wird aus den ungelabelten Lern-Datensätzen immer nur eine Auswahl gelabelt, und nur die gelabelten Lern-Datensätze werden für das überwachte Training des trainierbaren Moduls verwendet. Daher kann ein hinreichend diverser Pool an ungelabelten Lern-Datensätzen letzten Endes doch zu einer Menge gelabelter Lern-Datensätze eingedampft werden, die bezüglich eines oder mehrerer Aspekte zu einseitig ist.How great the variability presented in the learning data sets must be, and in what respect variability is required, is difficult to see here. In the case of active learning, there is also the fact that the variability of the unlabeled learning data sets offered does not necessarily affect the actual training of the trainable module. In active learning, only a selection of the unlabeled learning data sets is labeled, and only the labeled learning data sets are used for the monitored training of the trainable module. Therefore, a sufficiently diverse pool of unlabeled learning data sets can ultimately be evaporated into a set of labeled learning data sets that is too one-sided with regard to one or more aspects.
In dieser Situation schafft das Verfahren Abhilfe, indem auf der Basis eines aktuellen Trainingsstands anhand der ermittelten Unsicherheit zumindest eingegrenzt wird, welche Typen ungelabelter Lern-Datensätze das weitere Training voraussichtlich voranbringen. Auf diese Weise kann es beispielsweise erkannt werden, wenn es aus einer ursprünglich großzügig bemessenen Menge an Lern-Datensätzen mit Bildern von im Herbst bei Sonnenschein aufgenommenen Verkehrssituationen nur sehr wenige in die Auswahl für das Labeln „geschafft“ haben, so dass diese Verkehrssituationen im letztendlichen Training des trainierbaren Moduls unterrepräsentiert sind. Es kann darauf hingearbeitet werden, mehr derartige Bilder dem Pool hinzuzufügen und ggfs. zu labeln.In this situation, the method provides a remedy in that, on the basis of a current training status and based on the determined uncertainty, it is at least limited which types of unlabeled learning data sets are likely to advance further training. In this way, it can be recognized, for example, if only very few of an originally generously dimensioned set of learning data sets with images of traffic situations recorded in autumn in sunshine made it into the selection for labeling, so that these traffic situations ultimately Training of the trainable module are underrepresented. Work can be done to add more such images to the pool and, if necessary, to label them.
Die aktive Steuerung der Typen von Lern-Datensätzen, welche dem Pool neu hinzugefügt werden sollen führt dazu, dass in den neu hinzugefügten Lern-Datensätzen mit höherer Wahrscheinlichkeit aussichtsreiche Kandidaten für das Labeln enthalten sind. Pro letztendlich gelabeltem Lern-Datensatz müssen also insgesamt weniger ungelabelte Lern-Datensätze aus dem Pool geprüft werden. Dadurch sinkt der Rechenaufwand für das aktive Lernen.The active control of the types of learning data records which are to be newly added to the pool leads to the fact that the newly added learning data records contain a higher probability of promising candidates for labeling. For each ultimately labeled learning data set, a total of fewer unlabeled learning data sets from the pool have to be checked. This reduces the computational effort for active learning.
Weiterhin sinken auch die Kosten für die physikalische oder simulatorische Beschaffung der ungelabelten Lern-Datensätze. Jeder ungelabelte Lern-Datensatz, der auf Dauer ungelabelt bleibt, geht nicht in das letztendliche Training des trainierbaren Moduls ein. Der am Ende des Training erzielte Endzustand des trainierbaren Moduls wäre also auch dann erreicht worden, wenn man die Beschaffung der in diesem Zustand immer noch ungelabelten Lern-Datensätze im Pool eingespart hätte.Furthermore, the costs for the physical or simulatory procurement of the unlabeled learning data sets also decrease. Any unlabeled learning data set that remains unlabeled in the long term does not go into the final training of the trainable module. The final state of the trainable module achieved at the end of the training would also have been achieved if the acquisition of the learning data sets in the pool, which were still unlabeled in this state, had been saved.
Eine beispielhafte Anwendung, in der die Beschaffung ungelabelter Lern-Datensätze einen erhöhten Aufwand erfordert, ist die Analyse medizinischer Bilder auf das Vorhandensein, bzw. den Ausprägungsgrad, bestimmter Krankheiten. Neue ungelabelte Lern-Datensätze können hier nur durch neue physische Untersuchungen von Patienten gewonnen werden, was deren Mitwirkung erfordert. Der Prozess der Bildaufnahme selbst kann beispielsweise bei radiologischer Bildgebung die Nutzung teurer Großgeräte und bei mikroskopischen Gewebeuntersuchungen eine zeitaufwändige Probenpräparation erforderlich machen.An exemplary application in which the acquisition of unlabeled learning data sets requires increased effort is the analysis of medical images for the presence or the degree of severity of certain diseases. New unlabeled learning data sets can only be obtained here through new physical examinations of patients, which requires their cooperation. The image acquisition process itself can, for example, require the use of expensive large-scale equipment for radiological imaging and time-consuming sample preparation for microscopic tissue examinations.
Auch beim zumindest teilweise automatisierten Fahren kann neben dem Labeln von Lern-Datensätzen die Beschaffung ungelabelter Lern-Datensätze aufwändig sein. So kann beispielsweise für Probefahrten derartiger Fahrzeuge die Nutzung spezieller Fahrzeuge mit zusätzlichen Sensoren (etwa Lidar oder Radar) oder die Mitfahrt eines überwachenden menschlichen Testfahrers erforderlich sein.Even with at least partially automated driving, in addition to labeling learning data sets, the procurement of unlabeled learning data sets can be complex. For example, test drives of such vehicles may require the use of special vehicles with additional sensors (such as lidar or radar) or the ride of a monitoring human test driver.
In einer besonders vorteilhaften Ausgestaltung basiert die Auswahl des neuen ungelabelten Lern-Datensatzes für die Hinzufügung zum Pool mindestens darauf, dass die Unsicherheit größer oder kleiner ist als ein vorgegebenes Quantil der aus Lern-Eingangsgrößenwerten einer Vielzahl von ungelabelten Lern-Datensätzen ermittelten Unsicherheiten oder als ein vorgegebener Schwellwert. Dies ist ein Zeichen dafür, dass sich das trainierbare Modul mit einer Aussage zu bestimmten Lern-Eingangsgrößenwerten besonders schwer tut. Indem die Lern-Eingangsgrößenwerte den verschiedenen Abwandlungen des trainierbaren Moduls zugeführt werden, wird die Aussage des trainierbaren Moduls gleichsam auf den „Rüttelstand“ gestellt. Je größer die Abweichung zwischen den Ausgangsgrößenwerten ist, die die verschiedenen Abwandlungen liefern, desto geringer ist auch die Wahrscheinlichkeit dafür, dass die vom eigentlichen trainierbaren Modul gelieferten Ausgangsgrößenwerte exakt richtig sind.In a particularly advantageous embodiment, the selection of the new unlabeled learning data set for addition to the pool is based at least on the fact that the uncertainty is greater or smaller than a predetermined quantile of the uncertainties determined from learning input variable values of a large number of unlabeled learning data sets or as a predetermined threshold. This is a sign that the trainable module finds it particularly difficult to make a statement about certain learning input variable values. As the learning input variable values are fed to the various modifications of the trainable module, the statement made by the trainable module is put on the "shaking level", as it were. The greater the discrepancy between the output variable values that the various modifications provide, the lower the probability that the output variable values supplied by the actual trainable module are exactly correct.
In einer weiteren besonders vorteilhaften Ausgestaltung werden gelabelte oder ungelabelte Lern-Datensätze, bzw. Validierungs-Datensätze, für die Unsicherheiten ermittelt wurden, in eine Mehrzahl von Klassen klassifiziert. Mindestens ein neuer ungelabelter Lern-Datensatz, der einer anhand der Unsicherheit ausgewählten Klasse angehört, wird für die Hinzufügung zum Pool ausgewählt. Hierhinter steckt die Erkenntnis, dass gerade bei Lern-Datensätzen mit physikalisch oder simulatorisch erhobenen Messdaten eine erhöhte Unsicherheit der vom trainierbaren Modul gelieferten Aussage häufig an einem oder mehreren konkreten Phänomenen festzumachen ist, die bei der Erhebung der Messdaten gewirkt haben. Beispielsweise kann bei einem noch nicht ausreichenden Trainingszustand des trainierbaren Moduls ein Unterschied zwischen zwei Tageszeiten oder Jahreszeiten, zu denen Bilder aufgenommen wurden, als Unterschied im semantischen Objektgehalt fehlgedeutet werden. Die Einteilung in Klassen erleichtert insbesondere die Suche nach Kandidaten für einen den Pool hinzuzufügenden neuen ungelabelten Lern-Datensatz, bzw. die Prüfung, ob ein solcher Kandidat dem Auswahlkriterium entspricht.In a further particularly advantageous embodiment, labeled or unlabeled learning data records or validation data records for which uncertainties have been determined are classified into a plurality of classes. At least one new unlabelled learning data set belonging to a class selected on the basis of the uncertainty is selected for addition to the pool. This is based on the knowledge that, particularly in the case of learning data sets with physically or simulatively collected measurement data, an increased uncertainty of the information provided by the trainable module can often be determined by one or more specific phenomena that were effective when the measurement data was collected. For example, if the training status of the trainable module is not yet sufficient, a difference between two times of the day or seasons at which images were recorded can be misinterpreted as a difference in the semantic object content. The division into classes, in particular, facilitates the search for candidates for a new, unlabeled learning data record to be added to the pool, or the examination of whether such a candidate corresponds to the selection criterion.
Gelabelte Lern-Datensätze und Validierungs-Datensätze können besonders einfach klassifiziert werden. Das jeweilige Label kann beispielsweise unmittelbar als Indikator für die Klassenzugehörigkeit verwendet werden.Labeled learning data sets and validation data sets can be classified particularly easily. The respective label can, for example, be used directly as an indicator for class membership.
Besonders vorteilhaft wird für die einzelnen Klassen jeweils separat eine zusammenfassende Statistik der Unsicherheiten über die noch ungelabelten Lern-Datensätze, und/oder über die bereits gelabelten Lern-Datensätze, und/oder vorgegebene gelabelte Validierungs-Datensätze, ermittelt. Die zusammenfassenden Statistiken für die verschiedenen Klassen werden miteinander verglichen. Dieser Vergleich kann ein „Ranking“ der Klassen hinsichtlich der Unsicherheit liefern, welches ein Maß dafür ist, wie sehr sich das Hinzufügen weiterer ungelabelter Lern-Datensätze dieser Klassen zum Pool im Hinblick auf die Erzielung eines weiteren Trainingsfortschritts lohnt.In a particularly advantageous manner, a summarizing statistic of the uncertainties is determined separately for the individual classes about the learning data records that have not yet been labeled and / or about the learning data records that have already been labeled and / or specified labeled validation data records. The summary statistics for the various classes are compared with one another. This comparison can provide a “ranking” of the classes with regard to the uncertainty, which is a measure of how worthwhile it is to add further unlabeled learning data sets for these classes to the pool with a view to achieving further training progress.
Daher wird auf der Basis des Vergleichs eine Klasse ausgewählt. Es wird mindestens ein neuer ungelabelter Lern-Datensatz, der dieser ausgewählten Klasse angehört, für die Hinzufügung zum Pool ausgewählt.Therefore, a class is selected based on the comparison. At least one new unlabeled learning data set belonging to this selected class is selected for addition to the pool.
Beispielsweise können Bilder, die von einem Fahrzeug aus aufgenommen wurden nach der Kombination aus Jahreszeit und Tageszeit, zu der sie aufgenommen wurden, klassifiziert sein. Es können dann beispielsweise die Kombinationen aus Frühjahr und frühem Morgen sowie aus Herbst und frühem Morgen zu einer besonders großen Unsicherheit führen. Eine mögliche Ursache hierfür ist, dass bei diesen Kombinationen aus Jahreszeit und Tageszeit die tiefstehende Sonne direkt in die Kamera einstrahlt, so dass der verfügbare Dynamikumfang des Bildsensors größtenteils ausgeschöpft ist und die Helligkeitsstufen der eigentlichen Bildmerkmale nur noch mit einer vergleichsweise schlechten Auflösung diskretisiert werden.For example, pictures taken from a vehicle can be classified according to the combination of time of year and time of day at which they were be classified. For example, the combinations of spring and early morning and of autumn and early morning can lead to a particularly high level of uncertainty. One possible reason for this is that with these combinations of season and time of day, the low-lying sun shines directly into the camera, so that the available dynamic range of the image sensor is largely exhausted and the brightness levels of the actual image features are only discretized with a comparatively poor resolution.
Beispielsweise kann immer dann, wenn ein neuer ungelabelter Lern-Datensatz dem Pool hinzuzufügen ist, ein ungelabelter Lern-Datensatz aus derjenigen Klasse ausgewählt werden, für die zuvor die größte Unsicherheit ermittelt wurde.For example, whenever a new unlabeled learning data record is to be added to the pool, an unlabeled learning data record can be selected from that class for which the greatest uncertainty was previously determined.
In einer weiteren besonders vorteilhaften Ausgestaltung werden mehrere ungelabelte Lern-Datensätze, deren Verteilung auf die einzelnen Klassen gemäß den zusammenfassenden Statistiken für die verschiedenen Klassen gewichtet ist, für die Hinzufügung zum Pool ausgewählt. Auf diese Weise wird das weitere Training auf die Klassen mit den größten Unsicherheiten fokussiert, wobei gleichzeitig die Variabilität der Lern-Datensätze gewahrt bleibt.In a further particularly advantageous embodiment, several unlabeled learning data sets, the distribution of which to the individual classes is weighted according to the summarizing statistics for the various classes, are selected for addition to the pool. In this way, further training is focused on the classes with the greatest uncertainties, while at the same time the variability of the learning data sets is preserved.
In einer weiteren vorteilhaften Ausgestaltung wird anhand der Unsicherheit eine Vorauswahl ungelabelter Lern-Datensätze ermittelt. Es werden dann mehrere ungelabelte Lern-Datensätze, deren Verteilung auf die einzelnen Klassen entsprechend der Verteilung der Vorauswahl auf die Klassen gewichtet ist, für die Hinzufügung zum Pool ausgewählt. Mit dieser Herangehensweise wird der in der Vorauswahl steckende Informationsgehalt, mit welchem Typ von Lern-Datensätzen sich das trainierbare Modul besonders schwer tut, in eine in Klassen ausgedrückte „Wunschliste“ umgewandelt, die bei der Beschaffung neuer ungelabelter Lern-Datensätze einfach umsetzbar ist.In a further advantageous embodiment, a preselection of unlabeled learning data sets is determined on the basis of the uncertainty. Several unlabeled learning data sets, the distribution of which to the individual classes is weighted according to the distribution of the pre-selection to the classes, are then selected for addition to the pool. With this approach, the information contained in the preselection, with which type of learning data sets is particularly difficult for the trainable module, is converted into a “wish list” expressed in classes, which can be easily implemented when procuring new unlabeled learning data sets.
In einer weiteren besonders vorteilhaften Ausgestaltung wird die Zuordnung ungelabelter Lern-Datensätze zu den Klassen durch das trainierbare Modul auf der Basis seines aktuellen Trainingsstandes ermittelt. Dies ist nicht mit dem späteren Labeln im Rahmen des aktiven Lernens gleichzusetzen. Es ist jedoch für diese Unterteilung in Klassen bei weitem nicht die Genauigkeit erforderlich, die beim eigentlichen Training des trainierbaren Moduls mit den gelabelten Lern-Datensätzen angestrebt wird. Vielmehr dient die Unterteilung in Klassen an dieser Stelle nur der groben Eingrenzung, welche ungelabelten Lern-Datensätze voraussichtlich Information enthalten, die für das weitere Training des trainierbaren Moduls von Nutzen sind. Hierfür reichen die „Pseudo-Labels“, die das trainierbare Modul bei seinem aktuellen Trainingsstand liefert, aus. Eventuelle Falschzuordnungen werden dadurch „aufgefangen“, dass die dem Pool hinzugefügten ungelabelten Lern-Datensätze später im Rahmen des aktiven Lernens noch einen Auswahlprozess bestehen müssen, um letztendlich gelabelt zu werden und in das Training des trainierbaren Moduls einzugehen.In a further particularly advantageous embodiment, the assignment of unlabeled learning data records to the classes is determined by the trainable module on the basis of its current training status. This is not to be equated with the later labeling in the context of active learning. However, this subdivision into classes by no means requires the level of accuracy that is striven for in the actual training of the trainable module with the labeled learning data sets. Rather, the subdivision into classes at this point only serves to roughly limit which unlabeled learning data records are likely to contain information that is useful for further training of the trainable module. The "pseudo-labels" that the trainable module delivers with its current training status are sufficient for this. Any incorrect assignments are "caught" by the fact that the unlabeled learning data records added to the pool must later undergo a selection process as part of active learning in order to ultimately be labeled and included in the training of the trainable module.
In einer besonders vorteilhaften Ausgestaltung repräsentieren die Klassen unterschiedliche Typen von Situationen, in denen die Lern-Eingangsgrößenwerte der gelabelten oder ungelabelten Lern-Datensätze, bzw. Validierungs-Eingangsgrößenwerte der Validierungs-Datensätze, aufgenommen wurden. Wie zuvor erläutert, können dies beispielsweise Jahreszeiten, Tageszeiten, Wetterverhältnisse, Beleuchtungsverhältnisse oder andere äußere Bedingungen sein, die mit dem physikalischen Prozess, der die Messdaten (in der Realität oder simuliert) liefert, in irgendeiner Form wechselwirken. So wirkt beispielsweise eine geänderte Temperatur als solche nicht unmittelbar auf die Aufnahme von Bildern, sieht man einmal von der Temperaturabhängigkeit des elektronischen Rauschens von Bildsensoren ab. Ein Wechsel der Jahreszeit von Sommer zu Winter ändert hingegen die Beleuchtungsverhältnisse und wirkt so unmittelbar auf die Aufnahme der Bilder.In a particularly advantageous embodiment, the classes represent different types of situations in which the learning input variable values of the labeled or unlabeled learning data sets or validation input variable values of the validation data sets were recorded. As explained above, this can be, for example, seasons, times of day, weather conditions, lighting conditions or other external conditions that interact in some form with the physical process that supplies the measurement data (in reality or simulated). For example, a changed temperature as such does not have a direct effect on the recording of images, apart from the temperature dependence of the electronic noise of image sensors. A change of season from summer to winter, on the other hand, changes the lighting conditions and thus has a direct effect on the recording of the images.
Eine Einteilung der Klassen nach Situationen kann insbesondere unabhängig sein von den Klassen, die durch die in gelabelten Lern-Datensätzen und Validierungs-Datensätzen jeweils enthaltenen Labels definiert sind, und insoweit einen neuen „Blickwinkel“ auf die Daten vermitteln.A division of the classes according to situations can in particular be independent of the classes that are defined by the labels contained in the labeled learning data sets and validation data sets, and in this respect convey a new “perspective” on the data.
Beispielsweise können die gelabelten oder ungelabelten Lern-Datensätze, bzw. die Validierungs-Datensätze, anhand von Metadaten denjenigen Situationen zugeordnet werden, in denen sie aufgenommen wurden. Derartige Metadaten werden vielfach direkt bei der Aufnahme der Messdaten als Lern-Eingangsgrößenwerte, bzw. als Validierungs-Eingangsgrößenwerte, mit erfasst. So zeichnen beispielsweise Kameramodule vielfach den Typ sowie die grundlegenden Einstellungen, etwa die ISO-Empfindlichkeit oder den Zoomfaktor, des Kameramoduls sowie Datum und Uhrzeit auf. In Verbindung mit einem GPS-Modul wird häufig auch der Ort aufgezeichnet. Damit liegen beispielsweise auch die Wetterbedingungen zum Zeitpunkt der Bildaufnahme fest, denn diese lassen sich anhand von Datum, Uhrzeit und Ort beispielsweise im Nachhinein aus Datenbanken abrufen.For example, the labeled or unlabeled learning data sets, or the validation data sets, can be assigned to the situations in which they were recorded on the basis of metadata. Such metadata are often recorded as learning input variable values or as validation input variable values when the measurement data are recorded. For example, camera modules often record the type and basic settings, such as ISO sensitivity or zoom factor, of the camera module and the date and time. In conjunction with a GPS module, the location is often also recorded. In this way, for example, the weather conditions are also determined at the time the image was taken, because these can be retrieved from databases afterwards using the date, time and location, for example.
In einer weiteren besonders vorteilhaften Ausgestaltung repräsentieren die Klassen das Vorhandensein verschiedener Arten von Beeinträchtigungen in den gelabelten oder ungelabelten Lern-Datensätzen, bzw. in den Validierungs-Datensätzen. Diese Beeinträchtigungen können beispielsweise statistische Fehler, wie etwa Rauschen, aber auch systematische Fehler, wie etwa ein Weichzeichnen eines Bildes auf Grund von Defokus-Unschärfe oder Bewegungs-Unschärfe, umfassen. Bei einer Simulation können Beeinträchtigungen beispielsweise durch eine Diskretisierung und/oder Rundung im Rahmen des verwendeten Modells entstehen. Allgemein kann unter einer Beeinträchtigung jede bei der Aufnahme der Messdaten als Lern-Eingangsgrößenwerte, bzw. als Validierungs-Eingangsgrößenwerte, wirksame Übertragungsfunktion verstanden werden, nach deren Wirkung auf die Messdaten die Erkennbarkeit mindestens eines für die jeweilige Anwendung relevanten Merkmals in den Messdaten schlechter ist als zuvor.In a further particularly advantageous embodiment, the classes represent the presence of different types of impairments in the labeled or unlabeled learning data records or in the validation data records. These impairments can for example statistical errors such as noise, but also systematic errors such as blurring of an image due to defocus blurring or motion blurring. In the case of a simulation, impairments can arise, for example, through discretization and / or rounding within the framework of the model used. In general, an impairment can be understood to mean any transfer function effective when recording the measurement data as learning input variable values or as validation input variable values, according to whose effect on the measurement data the recognizability of at least one feature relevant to the respective application in the measurement data is worse than before.
Eine Einteilung der Klassen nach Beeinträchtigungen kann insbesondere unabhängig sein von den Klassen, die durch die in gelabelten Lern-Datensätzen und Validierungs-Datensätzen jeweils enthaltenen Labels definiert sind, und insoweit einen weiteren neuen „Blickwinkel“ auf die Daten vermitteln.A division of the classes according to impairments can in particular be independent of the classes that are defined by the labels contained in the labeled learning data sets and validation data sets, and in this respect convey a further new “perspective” on the data.
Die genannten Beeinträchtigungen sind in der Praxis eine Hauptquelle für Unsicherheiten. Verschiedene Beeinträchtigungen wirken in unterschiedlicher Weise auf die Messdaten, so dass dementsprechend unterschiedliche Gegenmaßnahmen angezeigt sind, um den Einfluss der Beeinträchtigungen zurückzudrängen. So kann beispielsweise der Einfluss von Rauschen durch Weichzeichnen zumindest teilweise behoben werden, während der Einfluss von Defokus-Unschärfe oder Bewegungs-Unschärfe durch Weichzeichnen noch verschlimmert wird.The aforementioned impairments are a main source of uncertainty in practice. Different impairments act in different ways on the measurement data, so that accordingly different countermeasures are indicated in order to reduce the influence of the impairments. For example, the influence of noise can be at least partially eliminated by blurring, while the influence of defocus blurring or motion blurring is exacerbated by blurring.
Weiterhin lassen sich Lern-Datensätze, bzw. Validierungs-Datensätze, mit vergleichsweise geringem Aufwand dahingehend klassifizieren, mit welchen Arten von Beeinträchtigungen sie behaftet sind. So ist es beispielsweise wesentlich einfacher, ein Bild als mit Defokus-Unschärfe behaftet zu klassifizieren, als eine vollständige semantische Segmentierung dieses Bildes zu erstellen.Furthermore, learning data records or validation data records can be classified with comparatively little effort in terms of the types of impairments they are afflicted with. For example, it is much easier to classify an image as having defocus blurring than it is to create a complete semantic segmentation of this image.
Wenn die verschiedenen Klassen verschiedene Arten von Beeinträchtigungen repräsentieren, kann die nach Klassen aufgeschlüsselte Analyse der Unsicherheiten beispielsweise ergeben, dass die Unsicherheit für mit Schrotrauschen behaftete Bilder besonders groß ist. Beim weiteren Training können dann gezielt weitere mit Schrotrauschen behaftete Bilder dem Pool hinzugefügt werden, um dem trainierbaren Modul „Nachhilfe“ dahingehend zu geben, trotz des Schrotrauschens die für die jeweilige Anwendung relevanten Merkmale zuverlässig in den Bildern zu erkennen.If the different classes represent different types of impairments, the analysis of the uncertainties broken down by class may, for example, reveal that the uncertainty is particularly great for images with shot noise. During further training, additional images with shot noise can be added to the pool in order to give the trainable module “tutoring” to reliably recognize the features relevant to the respective application in the images despite the shot noise.
In einer weiteren besonders vorteilhaften Ausgestaltung wird die Zugehörigkeit mindestens eines Kandidaten für einen neuen dem Pool hinzuzufügenden ungelabelten Lern-Datensatz zu mindestens einer Klasse anhand eines Ähnlichkeitsvergleichs dieses Kandidaten mit dieser Klasse angehörenden Lern-Datensätzen und/oder Validierungs-Datensätzen geprüft. Dieser Ähnlichkeitsvergleich kann beispielsweise mit einer Korrelation oder auch beispielsweise mit einem unüberwacht, also ohne gelabelte Lern-Datensätze, trainierten trainierbaren Modul erfolgen. Je nach konkreter Ausgestaltung der Ähnlichkeitssuche kann es beispielsweise schneller sein, einen großen Vorrat an noch ungelabelten Bildern anhand der Ähnlichkeitssuche zu durchsuchen, als zunächst den ganzen Vorrat zu klassifizieren und anhand dieser Klassifikation ein Bild auszuwählen.In a further particularly advantageous embodiment, the affiliation of at least one candidate for a new unlabeled learning data set to be added to the pool is checked for at least one class on the basis of a similarity comparison of this candidate with learning data sets and / or validation data sets belonging to this class. This similarity comparison can take place, for example, with a correlation or also, for example, with an unsupervised, ie without labeled learning data records, trained trainable module. Depending on the specific design of the similarity search, it can be faster, for example, to search through a large pool of images that are still unlabeled using the similarity search than to first classify the entire pool and use this classification to select an image.
In einer weiteren besonders vorteilhaften Ausgestaltung wird mindestens ein neuer ungelabelter Datensatz anhand mindestens eines spezifischen Merkmals für die Hinzufügung zum Pool ausgewählt. Dabei kann insbesondere beispielsweise anhand der Unsicherheit eine Vorauswahl ungelabelter Lern-Datensätze ermittelt werden. Aus den Lern-Eingangsgrößenwerten der ungelabelten Lern-Datensätze in der Vorauswahl kann dann mindestens ein gemeinsames Merkmal ermittelt werden. Es kann dann ein neuer ungelabelter Lern-Datensatz, der das mindestens eine gemeinsame Merkmal aufweist, für die Hinzufügung zum Pool ausgewählt werden.In a further particularly advantageous embodiment, at least one new unlabeled data record is selected for addition to the pool on the basis of at least one specific feature. In particular, a preselection of unlabeled learning data records can be determined on the basis of the uncertainty, for example. At least one common characteristic can then be determined from the learning input variable values of the unlabeled learning data records in the preselection. A new, unlabeled learning data set, which has the at least one common characteristic, can then be selected for addition to the pool.
Wie zuvor erläutert, sind meistens einzelne Merkmale in den Lern-Eingangsgrößenwerten der Lern-Datensätze dafür verantwortlich, dass sich das trainierbare Modul mit deren Verarbeitung besonders schwer tut. Indem gezielt weitere ungelabelte Lern-Datensätze mit diesen Merkmalen ausgewählt werden, wird dem trainierbaren Modul „Nachhilfe“ genau in den „Fächern“ gegeben, wo seine „Noten“ bislang am schlechtesten sind.As explained above, mostly individual features in the learning input variable values of the learning data sets are responsible for the fact that the trainable module finds it particularly difficult to process them. By specifically selecting further unlabeled learning data sets with these characteristics, the trainable module “tutoring” is given precisely in the “subjects” where its “grades” have so far been worst.
In einer weiteren besonders vorteilhaften Ausgestaltung wird der neue ungelabelte Lern-Datensatz anhand des gemeinsamen Merkmals künstlich erzeugt, und/oder er wird durch Aufprägen des gemeinsamen Merkmals auf Messdaten erhalten. Auf diese Weise kann die zutreffende Verarbeitung von Lern-Datensätzen, die dieses Merkmal enthalten, auch dann mit hoher Variabilität trainiert werden, wenn keine „echten“, d.h. physikalisch aufgenommenen oder simulierten, Lern-Datensätze mit diesem Merkmal zur Verfügung stehen. Dies ist insbesondere dann vorteilhaft, wenn eine physikalische Beobachtung dieses Merkmals nur selten möglich ist. So sind beispielsweise extremer Starkregen und extremer Schneefall, die beide die Erkennung von Objekten in von Fahrzeugen aus aufgenommenen Bildern beeinträchtigen können, vergleichsweise selten. Das künstliche Erzeugen von Lern-Datensätzen mit extremem Starkregen oder extremem Schneefall, bzw. das Aufprägen dieser Bedingungen auf „echte“ Bilder, erzeugt eine hinreichend große Variabilität, ohne eine ausreichende Anzahl derartiger Extremereignisse abwarten zu müssen.In a further particularly advantageous embodiment, the new unlabeled learning data record is artificially generated on the basis of the common feature and / or it is obtained by impressing the common feature on measurement data. In this way, the correct processing of learning data sets containing this feature can be trained with high variability even if no “real”, ie physically recorded or simulated, learning data sets with this feature are available. This is particularly advantageous when physical observation of this feature is only rarely possible. For example, extreme heavy rain and extreme snowfall, both of which can impair the detection of objects in images recorded by vehicles, are comparatively rare. The artificial generation of learning data sets with extreme heavy rain or extreme snowfall, or the imprinting of these conditions on "real" images, creates a sufficiently large variability without having to wait for a sufficient number of such extreme events.
Die vom trainierbaren Modul gelieferten Ausgangsgrößen können insbesondere eine Klassifikation, Regression und/oder semantische Segmentierung der eingegebenen Messdaten beinhalten. Gerade bei der Ermittlung dieser Informationen aus den eingegebenen Messdaten kommt es auf die Verallgemeinerungsfähigkeit trainierbarer Module, wie etwa KNN, an.The output variables supplied by the trainable module can in particular contain a classification, regression and / or semantic segmentation of the input measurement data. Especially when determining this information from the inputted measurement data, the ability to generalize trainable modules such as ANNs is important.
Die Erfindung bezieht sich auch auf einen Parametersatz mit Parametern, die das Verhalten eines trainierbaren Moduls charakterisieren und mit dem zuvor beschriebenen Verfahren erhalten wurden. Diese Parameter können beispielsweise Gewichte sein, mit denen Eingaben von Neuronen oder sonstigen Recheneinheiten in einem KNN zu Aktivierungen dieser Neuronen bzw. Recheneinheiten verrechnet werden. Dieser Parametersatz verkörpert den Aufwand, der in das aktive Lernen investiert wurde, und ist insofern ein eigenständiges Produkt. Das heißt, wer in einer vergleichbaren Situation diesen Datensatz zur Verfügung hat, kann sich insbesondere das aufwändige Labeln von Lern-Datensätzen sparen.The invention also relates to a parameter set with parameters which characterize the behavior of a trainable module and were obtained with the method described above. These parameters can, for example, be weights with which inputs from neurons or other computing units are calculated in an ANN to activate these neurons or computing units. This parameter set embodies the effort that has been invested in active learning and is, in this respect, an independent product. This means that if you have this data set available in a comparable situation, you can save yourself the time-consuming labeling of learning data sets.
Die Erfindung bezieht sich auch auf ein weiteres Verfahren, welches die Fortsetzung der mit dem Training begonnenen Wirkkette bis hin zur Ansteuerung physischer Systeme beinhaltet.The invention also relates to a further method, which includes the continuation of the chain of effects started with the training up to the control of physical systems.
Bei diesem Verfahren wird zunächst ein trainierbares Modul mit dem zuvor beschriebenen Verfahren trainiert. Dieses trainierbare Modul wird anschließend betrieben, indem ihm Eingangsgrößenwerte zugeführt werden. Diese Eingangsgrößenwerte umfassen Messdaten, die durch einen physikalischen Messprozess, und/oder durch eine teilweise oder vollständige Simulation eines solchen Messprozesses, und/oder durch eine teilweise oder vollständige Simulation eines mit einem solchen Messprozess beobachtbaren technischen Systems, erhalten wurden. Abhängig von dem vom trainierbaren Modul gelieferten Ausgangsgrößenwerten wird ein Fahrzeug, und/oder ein Klassifikationssystem, und/oder ein System zur Qualitätskontrolle von in Serie gefertigten Produkten, und/oder ein System zur medizinischen Bildgebung, mit einem Ansteuersignal angesteuert.In this method, a trainable module is first trained with the method described above. This trainable module is then operated by feeding it input variable values. These input variable values include measurement data obtained through a physical measurement process and / or through a partial or complete simulation of such a measurement process and / or through a partial or complete simulation of a technical system that can be observed using such a measurement process. Depending on the output variable values supplied by the trainable module, a vehicle and / or a classification system and / or a system for quality control of mass-produced products and / or a system for medical imaging is controlled with a control signal.
Die Verfahren können insbesondere ganz oder teilweise computerimplementiert sein. Daher bezieht sich die Erfindung auch auf ein Computerprogramm mit maschinenlesbaren Anweisungen, die, wenn sie auf einem oder mehreren Computern ausgeführt werden, den oder die Computer dazu veranlassen, eines der beschriebenen Verfahren auszuführen. In diesem Sinne sind auch Steuergeräte für Fahrzeuge und Embedded-Systeme für technische Geräte, die ebenfalls in der Lage sind, maschinenlesbare Anweisungen auszuführen, als Computer anzusehen.In particular, the methods can be implemented entirely or partially by computer. The invention therefore also relates to a computer program with machine-readable instructions which, when they are executed on one or more computers, cause the computer or computers to carry out one of the methods described. In this sense, control units for vehicles and embedded systems for technical devices, which are also able to execute machine-readable instructions, are to be regarded as computers.
Ebenso bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger und/oder auf ein Downloadprodukt mit dem Computerprogramm. Ein Downloadprodukt ist ein über ein Datennetzwerk übertragbares, d.h. von einem Benutzer des Datennetzwerks downloadbares, digitales Produkt, das beispielsweise in einem Online-Shop zum sofortigen Download feilgeboten werden kann.The invention also relates to a machine-readable data carrier and / or to a download product with the computer program. A download product is a product that can be transmitted over a data network, i.e. A digital product which can be downloaded by a user of the data network and which can be offered for sale for immediate download, for example, in an online shop.
Weiterhin kann ein Computer mit dem Computerprogramm, mit dem maschinenlesbaren Datenträger bzw. mit dem Downloadprodukt ausgerüstet sein.Furthermore, a computer can be equipped with the computer program, with the machine-readable data carrier or with the download product.
Weitere, die Erfindung verbessernde Maßnahmen werden nachstehend gemeinsam mit der Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung anhand von Figuren näher dargestellt.Further measures improving the invention are shown in more detail below together with the description of the preferred exemplary embodiments of the invention with reference to figures.
FigurenlisteFigure list
Es zeigt:
-
1 Ausführungsbeispiel des Verfahrens 100 zum Trainieren; -
2 Ausführungsbeispiel des Verfahrens 200 mit Fortsetzung der Wirkkette; -
3 Beispielhafte Verläufe der Unsicherheit13b in Abhängigkeit der Epochenzahl e des Trainings des trainierbaren Moduls1 , ermittelt auf verschiedenen Klassen20-29 .
-
1 Embodiment of themethod 100 for exercising; -
2 Embodiment of themethod 200 with continuation of the chain of action; -
3 Exemplary courses ofuncertainty 13b depending on the epoch number e of the training of the trainable module1 , determined on different classes20-29 .
Das Training
In Schritt
Jede Abwandlung
Die ermittelte Unsicherheit
In Schritt
Innerhalb des Kastens
Gemäß Block
Gemäß Block
Gemäß Block
Innerhalb des Kastens
Gemäß Block
Gemäß Block
Gemäß Block
Alternativ oder auch in Kombination zur Auswahl
Gemäß Block
Alternativ oder in Kombination zur Auswahl
In Schritt
Dieser Kreislauf, und damit das Training insgesamt, kann beispielsweise dann enden, wenn die im Training
In Schritt
Das trainierbare Modul
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019206050.1A DE102019206050A1 (en) | 2019-04-26 | 2019-04-26 | Selection of new unlabeled learning data sets for active learning |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019206050.1A DE102019206050A1 (en) | 2019-04-26 | 2019-04-26 | Selection of new unlabeled learning data sets for active learning |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102019206050A1 true DE102019206050A1 (en) | 2020-10-29 |
Family
ID=72839705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102019206050.1A Pending DE102019206050A1 (en) | 2019-04-26 | 2019-04-26 | Selection of new unlabeled learning data sets for active learning |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102019206050A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180240031A1 (en) * | 2017-02-17 | 2018-08-23 | Twitter, Inc. | Active learning system |
-
2019
- 2019-04-26 DE DE102019206050.1A patent/DE102019206050A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180240031A1 (en) * | 2017-02-17 | 2018-08-23 | Twitter, Inc. | Active learning system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112017005651T5 (en) | Device for classifying data | |
DE112010002232T5 (en) | Semantic scene segmentation using random multinominal logit (RML) | |
EP3948688A1 (en) | Training for artificial neural networks with better utilization of learning data records | |
DE102017218889A1 (en) | Unarmed parameterized AI module and method of operation | |
DE102019218613B4 (en) | Object classification method, object classification circuit, motor vehicle | |
DE102018220941A1 (en) | Evaluation of measured variables with AI modules taking into account measurement uncertainties | |
DE102017219282A1 (en) | Method and device for automatically generating an artificial neural network | |
DE102021201124A1 (en) | TRAINING IMAGE CLASSIFIER NETWORKS | |
DE102018220892A1 (en) | Device and method for generating label objects for the surroundings of a vehicle | |
EP3748454B1 (en) | Method and device for automatically executing a control function of a vehicle | |
DE102008032885A1 (en) | Method and device for checking and determining states of a sensor | |
DE102019206052A1 (en) | Situation-adaptive training of a trainable module with active learning | |
WO2020216622A1 (en) | Detecting and removing noise in labels of learning data for trainable modules | |
DE102019206050A1 (en) | Selection of new unlabeled learning data sets for active learning | |
DE102019208233A1 (en) | Method and device for automatically executing a control function of a vehicle | |
DE112021004735T5 (en) | METHOD AND DEVICE FOR DETERMINING THE LANE OF A VEHICLE BY USING AN ARTIFICIAL NEURONAL NETWORK AND NAVIGATION DEVICE THEREFROM | |
DE102019206047A1 (en) | Training of trainable modules with learning data whose labels are noisy | |
DE102019128223A1 (en) | Methods, devices and computer programs | |
DE102019108722A1 (en) | Video processing for machine learning | |
DE202022103792U1 (en) | Device for determining an optimal architecture of an artificial neural network | |
DE102019217528A1 (en) | Intelligent control of the recording of input data for active learning of classifiers | |
DE102022206892A1 (en) | Method for determining an optimal architecture of an artificial neural network | |
DE102022110766A1 (en) | IMPROVED MACHINE LEARNING | |
DE10013137A1 (en) | Image-controlled technical testing and/or processing method of products or parts, involves matching classified products with respective characteristics, by computer aided graphical interaction | |
DE102020201605A1 (en) | Computer-implemented method and device for machine learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified |