DE102022212455A1 - Method for training a machine learning algorithm - Google Patents

Method for training a machine learning algorithm Download PDF

Info

Publication number
DE102022212455A1
DE102022212455A1 DE102022212455.3A DE102022212455A DE102022212455A1 DE 102022212455 A1 DE102022212455 A1 DE 102022212455A1 DE 102022212455 A DE102022212455 A DE 102022212455A DE 102022212455 A1 DE102022212455 A1 DE 102022212455A1
Authority
DE
Germany
Prior art keywords
machine learning
learning algorithm
training
trained
performance
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
DE102022212455.3A
Other languages
German (de)
Inventor
Laura Beggel
Thi Phuong Nhung Ngo
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 DE102022212455.3A priority Critical patent/DE102022212455A1/en
Publication of DE102022212455A1 publication Critical patent/DE102022212455A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Feedback Control In General (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens, wobei das Verfahren (1) folgende Schritte aufweist: Bereitstellen einer Menge an Trainingsdaten zum Trainieren des Algorithmus des maschinellen Lernens und von Testdaten zum Verifizieren des trainierten Algorithmus des maschinellen Lernens (2), und Trainieren des Algorithmus des maschinellen Lernens (3), wobei das Trainieren des Algorithmus des maschinellen Lernens (3) in mehreren Schritten erfolgt, wobei in jedem Schritt der Algorithmus des maschinellen Lernens jeweils basierend auf zumindest einem Teil der Menge an Trainingsdaten trainiert wird (4), wobei für jede einer Vielzahl von Leistungskennzahlen jeweils eine Performanz des basierend auf dem zumindest einen Teil der Menge an Trainingsdaten trainierten Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Testdaten ermittelt wird (5), und wobei nach jedem Schritt basierend auf den Performanzen der Vielzahl von Leistungskennzahlen überprüft wird, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist (6).The invention relates to a method for training a machine learning algorithm, the method (1) comprising the following steps: providing a set of training data for training the machine learning algorithm and test data for verifying the trained machine learning algorithm (2), and training the machine learning algorithm (3), the training of the machine learning algorithm (3) being carried out in several steps, in each step the machine learning algorithm being trained based on at least part of the set of training data (4), for each of a plurality of performance indicators a performance of the machine learning algorithm trained based on the at least part of the set of training data being determined based on the test data provided (5), and after each step it is checked based on the performance of the plurality of performance indicators whether a criterion for prematurely terminating training is met (6).

Description

Die Erfindung betrifft ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens, mit welchem ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal auf eine vorliegende Anwendung beziehungsweise einen nachfolgenden beziehungsweise nachgeordneten, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist.The invention relates to a method for training a machine learning algorithm, with which a machine learning algorithm can be trained which is optimally adapted to a present application or a subsequent or subordinate process processing outputs of the machine learning algorithm.

Algorithmen des 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 use of statistical methods to train a data processing system so that it can perform a specific task without it originally being explicitly programmed to do so. 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.

Das Trainieren eines Algorithmus des maschinellen Lernens erfolgt dabei für gewöhnlich basierend auf Trainingsdaten, beispielsweise durch ein Deep Learning-Verfahren, wobei es sich bei den Trainingsdaten um gelabelte beziehungsweise mit entsprechenden Informationen versehene Daten, welche das tatsächliche Verhalten beziehungsweise Gegebenheiten einer vorliegenden Anwendung, für welche der Algorithmus des maschinellen Lernens trainiert wird, beziehungsweise eines entsprechenden nachgeordneten Prozesses repräsentieren.The training of a machine learning algorithm is usually based on training data, for example through a deep learning method, whereby the training data is labeled data or data provided with corresponding information that represents the actual behavior or conditions of an existing application for which the machine learning algorithm is being trained or of a corresponding downstream process.

Bei einem derartigen Trainieren eines Algorithmus des maschinellen Lernens besteht jedoch die Gefahr, dass es zu einem Underfitting oder einem Overfitting kommt. Underfitting bedeutet dabei, dass der trainierte Algorithmus des maschinellen Lernens nach dem Trainieren Vorhersagen nicht hinreichend genau treffen kann, beziehungsweise Eingabedaten nicht hinreichend genau entsprechende Ausgabedaten zuordnen kann, da das trainierte Modell zu einfach ist beziehungsweise die entsprechende Modellgüte keine ausreichend hohen Werte erreicht. Overfitting bedeutet ferner, dass der Algorithmus des maschinellen Lernens derart trainiert wurde, dass dieser auf die entsprechenden Trainingsdaten spezialisiert ist, das heißt für die Trainingsdaten eine sehr hohe Modellgüte aufweist, für andere Daten jedoch nur eine deutlich geringere Modellgüte. Dies bedeutet, dass ein Beispiel während des Trainierens Oberhand gewonnen hat.However, when training a machine learning algorithm in this way, there is a risk of underfitting or overfitting. Underfitting means that the trained machine learning algorithm cannot make predictions with sufficient accuracy after training, or cannot assign input data to corresponding output data with sufficient accuracy, because the trained model is too simple or the corresponding model quality does not achieve sufficiently high values. Overfitting also means that the machine learning algorithm has been trained in such a way that it is specialized for the corresponding training data, i.e. it has a very high model quality for the training data, but only a significantly lower model quality for other data. This means that one example has gained the upper hand during training.

Um die Gefahr von Underfitting und/oder Overfitting zu reduzieren, werden Algorithmen des maschinellen Lernens häufig in mehreren Schritten trainiert, wobei der Algorithmus des maschinellen Lernens in jedem Schritt basierend auf entsprechenden Trainingsdaten trainiert und anschließend eine Performanz des basierend auf den entsprechenden Trainingsdaten trainierten Algorithmus des maschinellen Lernens basierend auf einem Testdatensatz, welcher weitere gelabelte, das tatsächliche Verhalten der vorliegenden Anwendung repräsentierende Daten aufweist, ermittelt wird, und wobei nach jedem Schritt basierend auf der ermittelten Performanz überprüft wird, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist.In order to reduce the risk of underfitting and/or overfitting, machine learning algorithms are often trained in several steps, whereby the machine learning algorithm is trained in each step based on corresponding training data and then a performance of the machine learning algorithm trained based on the corresponding training data is determined based on a test data set which has further labeled data representing the actual behavior of the application in question, and whereby after each step, based on the determined performance, it is checked whether a criterion for prematurely terminating training is met.

Das ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, bedeutet dabei, dass die Performanz nach dem entsprechenden Schritt bereits vorgegebene Vorgaben für die Performanz erfüllt, beispielsweise bereits oberhalb eines Schwellwerts, z.B. nach einer bestimmten Anzahl von Trainingsepochen, für die Performanz liegt, ohne dass zusätzliche Trainingsschritte vonnöten sind, beziehungsweise keine Verbesserung der Performanz durch weitere Trainingsschritte mehr zu erwarten ist.The fact that a criterion for premature termination of training is met means that the performance after the corresponding step already meets predetermined performance requirements, for example, it is already above a threshold value, e.g. after a certain number of training epochs, for the performance without additional training steps being necessary, or no improvement in performance can be expected through further training steps.

Für gewöhnlich wird dabei nur die Performanz des trainierten Algorithmus des maschinellen Lernens hinsichtlich der Genauigkeit des Algorithmus des maschinellen Lernens überprüft. Viele Anwendungen beziehungsweise nachgeordnete Prozesse, beispielsweise im Bereich der Bildklassifizierung, erfordern jedoch, dass der Algorithmus auch hinsichtlich anderer Leistungskennzahlen beziehungsweise Key Performance Indikatoren optimiert ist. Hierdurch sollen beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems oder Robotiksystems, beispielsweise einer Funktion eines autonom fahrenden Kraftfahrzeuges vermieden werden, in dem der Algorithmus des maschinellen Lernens optimal an die entsprechenden Gegebenheiten beziehungsweise Voraussetzungen angepasst ist. Ferner ist bei auf einem Algorithmus des maschinellen Lernens basierenden beziehungsweise durch einen Algorithmus des maschinellen Lernens überwachten Produktionslinien wichtig, Fehlalarme und/oder eine Anzahl der False-Negatives zu reduzieren.Usually, only the performance of the trained machine learning algorithm is checked in terms of the accuracy of the machine learning algorithm. However, many applications or downstream processes, for example in the field of image classification, require that the algorithm is also optimized in terms of other key performance indicators. This is intended to avoid, for example, safety-critical situations when controlling a controllable system or robotic system, for example a function of an autonomously driving motor vehicle, by optimally adapting the machine learning algorithm to the corresponding conditions or requirements. Furthermore, for production lines based on a machine learning algorithm or monitored by a machine learning algorithm, it is important to reduce false alarms and/or the number of false negatives.

Aus der Druckschrift DE 10 2017 212 328 A1 ist ein Verfahren zum Trainieren eines Künstliche-Intelligenz-Moduls bekannt, welches Eingangsgrößen durch eine parametrisierte interne Verarbeitungskette in Ausgangsgrößen übersetzt, wobei die Parameter der Verarbeitungskette dergestalt ermittelt werden, dass Lern-Werte der Eingangsgrößen auf die hierzu passenden Lern-Werte der Ausgangsgrößen übersetzt werden, wobei die Lern-Werte der Eingangsgrößen mit einem vorgegebenen Testmuster überlagert werden und eine Reaktion ermittelt wird, die das Test-Muster in den von der internen Verarbeitungskette gelieferten Werten der Ausgangsgröße hervorruft.From the publication EN 10 2017 212 328 A1 A method for training an artificial intelligence module is known which translates input variables into output variables through a parameterized internal processing chain, wherein the parameters of the processing chain are determined in such a way that learning values of the input variables are translated to the corresponding learning values of the output variables, wherein the learning values of the input variables are superimposed with a predetermined test pattern and a reaction is determined which causes the test pattern in the values of the output variable supplied by the internal processing chain.

Der Erfindung liegt somit die Aufgabe zugrunde, ein verbessertes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens anzugeben, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des neuronalen Netzes verarbeitenden Prozess angepasst ist.The invention is therefore based on the object of specifying an improved method for training a machine learning algorithm, with which a machine learning algorithm can be trained which is optimally adapted to a present application or a subsequent process processing outputs of the neural network.

Die Aufgabe wird gelöst durch ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens gemäß den Merkmalen des Patentanspruchs 1.The object is achieved by a method for training a machine learning algorithm according to the features of patent claim 1.

Die Aufgabe wird zudem auch gelöst durch ein System zum Trainieren eines Algorithmus des maschinellen Lernens gemäß den Merkmalen des Patentanspruchs 8.The object is also achieved by a system for training a machine learning algorithm according to the features of patent claim 8.

Offenbarung der ErfindungDisclosure of the invention

Gemäß einer Ausführungsform der Erfindung wird diese Aufgabe gelöst durch ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens, wobei eine Menge an Trainingsdaten zum Trainieren des Algorithmus des maschinellen Lernens und Testdaten zum Verifizieren des trainierten Algorithmus des maschinellen Lernens bereitgestellt werden und der Algorithmus des maschinellen Lernens trainiert wird, wobei das Trainieren des Algorithmus des maschinellen Lernens in mehreren Schritten erfolgt, wobei in jedem Schritt der Algorithmus des maschinellen Lernens basierend auf zumindest einem Teil der Menge an Trainingsdaten trainiert wird, für jede einer Vielzahl von Leistungskennzahlen jeweils eine Performanz des basierend auf dem zumindest einem Teil der Menge an Trainingsdaten trainierten Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Testdaten ermittelt wird, und wobei nach jedem Schritt basierend auf den Performanzen der Vielzahl von Leistungskennzahlen überprüft wird, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist.According to one embodiment of the invention, this object is achieved by a method for training a machine learning algorithm, wherein a set of training data for training the machine learning algorithm and test data for verifying the trained machine learning algorithm are provided and the machine learning algorithm is trained, wherein the training of the machine learning algorithm takes place in several steps, wherein in each step the machine learning algorithm is trained based on at least part of the set of training data, for each of a plurality of performance indicators a performance of the machine learning algorithm trained based on the at least part of the set of training data is determined based on the test data provided, and wherein after each step it is checked based on the performances of the plurality of performance indicators whether a criterion for prematurely terminating training is met.

Unter Leistungskennzahl beziehungsweise Key Performance Indikator werden dabei Kennzahlen beziehungsweise Variablen verstanden, anhand welcher der Fortschritt oder der Erfüllungsgrad hinsichtlich wichtiger Zielsetzungen oder kritischer Erfolgsfaktoren bezüglich der vorliegenden Anwendung beziehungsweise des nachgeordneten Prozesses gemessen und/oder ermittelt werden kann.Key performance indicators are key figures or variables that can be used to measure and/or determine the progress or degree of fulfillment of important objectives or critical success factors relating to the current application or the subordinate process.

Unter Performanz wird weiter ein Maß für die Güte beziehungsweise Leistungsfähigkeit des trainierten Algorithmus des maschinellen Lernens hinsichtlich der entsprechenden Leistungskennzahl verstanden.Performance is also understood as a measure of the quality or performance of the trained machine learning algorithm with regard to the corresponding performance indicator.

Dass basierend auf den Performanzen der Vielzahl von Leistungskennzahlen überprüft wird, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, bedeutet ferner, dass basierend auf der Vielzahl von Leistungskennzahlen ermittelt wird, ob der Algorithmus bereits ausreichend trainiert ist, oder ob weitere Trainingsschritte erforderlich sind, um Vorgaben bezüglich der Vielzahl von Leistungskennzahlen zu erfüllen.The fact that, based on the performance of the large number of performance indicators, it is checked whether a criterion for prematurely terminating training is met also means that, based on the large number of performance indicators, it is determined whether the algorithm has already been sufficiently trained or whether further training steps are required to meet requirements regarding the large number of performance indicators.

Dass das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, auf einer Vielzahl von Leistungsindikatoren basiert wird, hat dabei den Vorteil, dass sichergestellt werden kann, dass der Algorithmus des maschinellen Lernens hinsichtlich der durch die vorliegende Anwendung beziehungsweise den nachgeordneten Prozess geforderten Leistungskennzahlen optimal ist. Hierdurch können beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems basierend auf dem Algorithmus des maschinellen Lernens vermieden werden, oder können Fehlalarme und/oder eine Anzahl der False-Negatives beim Überwachen einer Produktionslinie durch den Algorithmus des maschinellen Lernens reduziert werden.The fact that the check to see whether a criterion for prematurely terminating training is met is based on a large number of performance indicators has the advantage that it can be ensured that the machine learning algorithm is optimal with regard to the performance indicators required by the application in question or the downstream process. This can, for example, prevent safety-critical situations when controlling a controllable system based on the machine learning algorithm, or reduce false alarms and/or a number of false negatives when monitoring a production line using the machine learning algorithm.

Insgesamt wird somit ein verbessertes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens angegeben, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist.Overall, an improved method for training a machine learning algorithm is thus provided, with which a machine learning algorithm can be trained that is optimally adapted to an existing application or a subsequent process that processes outputs of the machine learning algorithm.

Dabei kann der Schritt des Überprüfens, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, ein Auswählen von wenigstens einer Leistungskennzahl aus der Vielzahl von Leistungskennzahlen, welche für eine vorliegende Anwendung wichtig ist, und, für jede der wenigstens einen ausgewählten Leistungskennzahlen, ein jeweiliges Überprüfen, ob die entsprechende ermittelte Performanz entsprechende Vorgaben erfüllt, aufweisen. Hierdurch kann sichergestellt werden, dass der trainierte Algorithmus des maschinellen Lernens optimal an die vorliegende Anwendung und deren Gegebenheiten angepasst ist, wobei gleichzeitig Computerressourcen, beispielsweiche Speicher- und/oder Prozessorkapazitäten, eingespart werden können, so dass das Verfahren beispielsweise auch auf Steuergeräten mit begrenzten Ressourcen ausgeführt werden kann, da während des Überprüfens nur die ausgewählten Leistungskennzahlen betrachtet werden.The step of checking whether a criterion for prematurely terminating training is met can comprise selecting at least one performance indicator from the plurality of performance indicators that is important for a given application and, for each of the at least one selected performance indicators, checking whether the corresponding determined performance meets corresponding specifications. This can ensure that the trained machine learning algorithm is optimally adapted to the given application and its conditions, while at the same time computer resources, for example memory and/or processor capacities, can be saved, so that the method can also be carried out on control units with limited resources, for example, since only the selected performance indicators are considered during the check.

In einer Ausführungsform weist das Verfahren weiter, für jede der Vielzahl von Leistungskennzahlen, nach jedem Schritt ein Überprüfen, ob die Performanz der entsprechenden Leistungskennzahl besser als in sämtlichen vorherigen Schritten ermittelte Performanzen der entsprechenden Leistungskennzahl ist, wobei, falls die Performanz der entsprechenden Leistungskennzahl besser als in sämtlichen vorherigen Schritten ermittelte Performanzen der entsprechenden Leistungskennzahl ist, nach dem entsprechenden Schritt vorliegende trainierte Parameter des Algorithmus des maschinellen Lernens bezüglich der entsprechenden Leistungskennzahl gespeichert werden.In one embodiment, the method further comprises, for each of the plurality of performance indicators, after each step, checking whether the performance of the corresponding performance indicator is better than the performance of the corresponding performance indicator determined in all previous steps, whereby, if the performance of the corresponding performance indicator is better than the performance of the corresponding performance indicator determined in all previous steps, trained parameters of the machine learning algorithm with respect to the corresponding performance indicator available after the corresponding step are stored.

Unter trainierten Parametern des Algorithmus des maschinellen Lernens werden dabei durch das Trainieren angepasste Parameter des Algorithmus des maschinellen Lernens, beispielsweise Gewichte eines künstlichen neuronalen Netzes verstanden.Trained parameters of the machine learning algorithm are understood to be parameters of the machine learning algorithm that have been adjusted through training, for example weights of an artificial neural network.

Dass die Performanz besser als in sämtlichen vorherigen Schritten ermittelte Performanzen ist bedeutet weiter, dass die ermittelte Performanz optimaler beziehungsweise besser bezüglich Vorgaben für die entsprechende Leistungskennzahl erscheint, als alle zuvor, das heißt in vorherigen Schritten bezüglich der entsprechenden Leistungskennzahl ermittelte Performanzen.The fact that the performance is better than the performances determined in all previous steps also means that the determined performance appears to be more optimal or better with respect to the specifications for the corresponding performance indicator than all previous performances determined, i.e. in previous steps with respect to the corresponding performance indicator.

Dass die trainierten Parameter des Algorithmus des maschinellen Lernens bezüglich der entsprechenden Leistungskennzahl gespeichert werden, bedeutet ferner, dass die trainierten Parameter in Zusammenhang beziehungsweise mit Bezug auf die entsprechende Leistungskennzahl gespeichert beziehungsweise hinterlegt werden, wobei für jede der Vielzahl von Leistungskennzahlen entsprechend andere Parameter gespeichert werden können.Storing the trained parameters of the machine learning algorithm with respect to the corresponding performance indicator further means that the trained parameters are stored in connection with or with reference to the corresponding performance indicator, whereby different parameters can be stored for each of the plurality of performance indicators.

Hierdurch kann eine bessere Übersicht über eine aktuelle Leistungsfähigkeit des Algorithmus des maschinellen Lernens bereitgestellt werden, wobei verschiedene Wahlmöglichkeiten für die trainierten Parameter des Algorithmus des maschinellen Lernens bereitgestellt werden, und wobei anschließend die für die gewünschte beziehungsweise erforderliche Leistungskennzahl bestimmten optimalen trainierten Parameter als trainierte Parameter für den Algorithmus des maschinellen Lernens ausgewählt werden können.This makes it possible to provide a better overview of a current performance of the machine learning algorithm, providing different choices for the trained parameters of the machine learning algorithm, and then selecting the optimal trained parameters determined for the desired or required performance indicator as trained parameters for the machine learning algorithm.

Die Vielzahl von Leistungskennzahlen kann ferner eine Genauigkeit, eine Anzahl von Fehlalarmen und einen Anteil von False-Negatives aufweisen.The plurality of performance indicators may also include accuracy, number of false alarms and proportion of false negatives.

Unter Genauigkeit wird dabei ein Parameter, welcher angibt, wie genau der Algorithmus des maschinellen Lernens ist, das heißt um wieviel Vorhersagen des Algorithmus des maschinellen Lernens von tatsächlichen Gegebenheiten abweichen, verstanden.Accuracy is a parameter that indicates how accurate the machine learning algorithm is, i.e. how much the machine learning algorithm's predictions deviate from actual conditions.

Unter Fehlalarm wird weiter ein irrtümlicher beziehungsweise falscher Alarm aufgrund von fehlerhaften Vorhersagen des Algorithmus des maschinellen Lernens verstanden.A false alarm is also understood to be an erroneous or false alarm due to incorrect predictions by the machine learning algorithm.

Unter False-Negatives wird weiter verstanden, dass bestimmte Vorhersagen nicht getroffen werden bzw. Kriterien nicht erkannt werden, obwohl diese vorliegen.False negatives also mean that certain predictions are not made or criteria are not recognized even though they exist.

Insbesondere kann die Vielzahl von Leistungskennzahlen alle Leistungskennzahlen, welche im Hinblick auf das Steuern einer Funktion eines autonom fahrenden Kraftfahrzeuges und/oder das Überwachen einer Fertigungslinie optimal sein sollten, aufweisen.In particular, the plurality of performance indicators may include all performance indicators that should be optimal with regard to controlling a function of an autonomously driving motor vehicle and/or monitoring a production line.

Dabei, dass die Vielzahl von Leistungskennzahlen eine Genauigkeit, eine Anzahl von Fehlalarmen und einen Anteil von False-Negatives aufweisen, handelt es sich jedoch nur um eine mögliche Ausführungsform. Vielmehr können die Leistungskennzahlen auch andere Leistungskennzahlen, insbesondere für den entsprechenden vorliegenden Anwendungsfall wichtige Leistungskennzahlen aufweisen, beispielsweise eine Anzahl von False-Positives.However, the fact that the plurality of performance indicators have an accuracy, a number of false alarms and a proportion of false negatives is only one possible embodiment. Rather, the performance indicators can also have other performance indicators, particularly performance indicators that are important for the respective application case, for example a number of false positives.

Zudem können die Trainingsdaten und/oder die Testdaten Sensordaten aufweisen.In addition, the training data and/or the test data may contain sensor data.

Insbesondere können die Trainingsdaten und/oder die Testdaten dabei in Zusammenhang mit einer vorliegenden Anwendung erfasste Sensordaten aufweisen.In particular, the training data and/or the test data may include sensor data collected in connection with a given application.

Ein Sensor, welcher auch als Detektor, (Messgrößen- oder Mess-)Aufnehmer oder (Mess-)Fühler bezeichnet wird, ist ein technisches Bauteil, das bestimmte physikalische oder chemische Eigenschaften und/oder die stoffliche Beschaffenheit seiner Umgebung qualitativ oder als Messgröße quantitativ erfassen kann.A sensor, which is also called a detector, (measured variable or measuring) sensor or (measured) probe, is a technical component that can detect certain physical or chemical properties and/or the material properties of its environment qualitatively or quantitatively as a measured variable.

Somit können Gegebenheiten außerhalb der Datenverarbeitungsanlage, auf welcher das Verfahren ausgeführt beziehungsweise der Algorithmus des maschinellen Lernens trainiert wird, berücksichtigt werden und in das Verfahren miteinfließen.In this way, circumstances outside the data processing system on which the process is carried out or the machine learning algorithm is trained can be taken into account and incorporated into the process.

Mit einer weiteren Ausführungsform der Erfindung wird auch ein Verfahren zum Steuern eines steuerbaren Systems basierend auf einem Algorithmus des maschinellen Lernens angegeben, wobei das Verfahren ein Bereitstellen eines Algorithmus des maschinellen Lernens zum Steuern des steuerbaren Systems, wobei der Algorithmus des maschinellen Lernens durch ein obenstehend beschriebenes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens trainiert wurde, und ein Steuern des steuerbaren Systems basierend auf dem bereitgestellten Algorithmus des maschinellen Lernens aufweist.A further embodiment of the invention also provides a method for controlling a controllable system based on a machine learning algorithm, the method comprising providing a machine learning algorithm for controlling the controllable system, the machine learning algorithm having been trained by a method for training a machine learning algorithm described above, and controlling the controllable system based on the provided machine learning algorithm.

Unter einem steuerbaren System wird hierbei ein Robotiksystem, beispielsweise eine steuerbare Funktion eines autonom fahrenden Kraftfahrzeuges oder einer Produktionslinie verstanden.A controllable system is understood to be a robotics system, for example a controllable function of an autonomously driving motor vehicle or a production line.

Somit wird ein Verfahren zum Steuern eines steuerbaren Systems angegeben, welches auf einem durch ein verbessertes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist, trainierten Algorithmus des maschinellen Lernens basiert. Dass das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, auf einer Vielzahl von Leistungsindikatoren basiert wird, hat dabei den Vorteil, dass sichergestellt werden kann, dass der Algorithmus des maschinellen Lernens hinsichtlich der durch die vorliegende Anwendung beziehungsweise den nachgeordneten Prozess geforderten Leistungskennzahlen optimal ist. Hierdurch können beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems basierend auf dem Algorithmus des maschinellen Lernens vermieden werden, oder können Fehlalarme und/oder eine Anzahl der False-Negatives beim Überwachen einer Produktionslinie durch den Algorithmus des maschinellen Lernens reduziert werden.Thus, a method for controlling a controllable system is specified, which is based on a machine learning algorithm trained by an improved method for training a machine learning algorithm, with which a machine learning algorithm can be trained that is optimally adapted to an existing application or a subsequent process processing outputs of the machine learning algorithm. The fact that the check as to whether a criterion for prematurely terminating training is met is based on a large number of performance indicators has the advantage that it can be ensured that the machine learning algorithm is optimal with regard to the performance indicators required by the existing application or the downstream process. This can, for example, avoid safety-critical situations when controlling a controllable system based on the machine learning algorithm, or reduce false alarms and/or a number of false negatives when monitoring a production line using the machine learning algorithm.

Mit einer weiteren Ausführungsform der Erfindung wird weiter auch ein Verfahren zum Klassifizieren von Bilddaten angegeben, wobei Bilddaten unter Verwendung eines neuronalen Netzes, welches trainiert ist, Bilddaten zu klassifizieren, klassifiziert werden, und wobei das neuronale Netz durch ein obenstehend beschriebenes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens trainiert wurde.A further embodiment of the invention also provides a method for classifying image data, wherein image data is classified using a neural network that is trained to classify image data, and wherein the neural network has been trained by a method for training a machine learning algorithm 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.

Künstliche neuronale Netze orientieren sich ferner an biologischen Neuronen und erlauben es, ein unbekanntes Systemverhalten aus vorhandenen Trainingsdaten anzulernen und anschließend das angelernte Systemverhalten auch auf unbekannte Eingangsgrößen anzuwenden. Dabei besteht das neuronale Netz aus Schichten mit idealisierten Neuronen, welche gemäß einer Topologie des Netzes in unterschiedlicher Weise miteinander verbunden sind. Die erste Schicht, welche auch als Eingangsschicht bezeichnet wird, erfasst und überträgt dabei Eingangswerte, wobei die Anzahl der Neuronen in der Eingangsschicht der Anzahl an Eingangssignalen, welche verarbeitet werden sollen, entspricht. Die letzte Schicht wird auch als Ausgangsschicht bezeichnet und weist genauso viele Neuronen auf, wie Ausgabewerte bereitgestellt werden sollen. Zwischen der Eingangsschicht und der Ausgangsschicht befindet sich zudem wenigstens eine Zwischenschicht, welche oftmals auch als verborgene Schicht bezeichnet wird, wobei die Anzahl der Zwischenschichten und die Anzahl der Neuronen in diesen Schichten abhängig von der konkreten Aufgabe, welche durch das neuronale Netz gelöst werden soll, ist.Artificial neural networks are also based on biological neurons and allow an unknown system behavior to be learned from existing training data and then the learned system behavior to be applied to unknown input variables. The neural network consists of layers with idealized neurons that are connected to one another in different ways according to a topology of the network. The first layer, which is also called the input layer, records and transmits input values, whereby the number of neurons in the input layer corresponds to the number of input signals that are to be processed. The last layer is also called the output layer and has as many neurons as output values are to be provided. There is also at least one intermediate layer between the input layer and the output layer, which is often also referred to as a hidden layer, whereby the number of intermediate layers and the number of neurons in these layers depends on the specific task that the neural network is to solve.

Somit wird ein Verfahren zum Klassifizieren von Bilddaten angegeben, welches auf einem durch ein verbessertes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist, trainierten neuronalen Netz basiert. Dass das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, auf einer Vielzahl von Leistungsindikatoren basiert wird, hat dabei den Vorteil, dass sichergestellt werden kann, dass der Algorithmus des maschinellen Lernens hinsichtlich der durch die vorliegende Anwendung beziehungsweise den nachgeordneten Prozess geforderten Leistungskennzahlen optimal ist. Hierdurch können beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems basierend auf dem Algorithmus des maschinellen Lernens vermieden werden, oder können Fehlalarme und/oder eine Anzahl der False-Negatives beim Überwachen einer Produktionslinie durch den Algorithmus des maschinellen Lernens reduziert werden.Thus, a method for classifying image data is specified which is based on a neural network trained by an improved method for training a machine learning algorithm, with which a machine learning algorithm can be trained which is optimally adapted to an existing application or a subsequent process processing outputs of the machine learning algorithm. The fact that the check as to whether a criterion for prematurely terminating training is met is based on a large number of performance indicators has the advantage that it can be ensured that the machine learning algorithm is optimal with regard to the performance indicators required by the existing application or the downstream process. This can, for example, avoid safety-critical situations when controlling a controllable system based on the machine learning algorithm, or reduce false alarms and/or a number of false negatives when monitoring a production line using the machine learning algorithm.

Mit einer weiteren Ausführungsform der Erfindung wird zudem auch ein System zum Trainieren eines Algorithmus des maschinellen Lernens angegeben, wobei das System wenigstens eine Bereitstellungseinheit, welche ausgebildet ist, eine Menge an Trainingsdaten zum Trainieren des Algorithmus des maschinellen Lernens und Testdaten zum Verifizieren des basierend auf den bereitgestellten Trainingsdaten trainierten Algorithmus des maschinellen Lernens bereitzustellen, eine Trainingseinheit, welche ausgebildet ist, den Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Trainingsdaten zu trainieren, und eine Verifizierungseinheit, welche ausgebildet, den trainierten Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Testdaten zu verifizieren, aufweist, und wobei das System ausgebildet ist, ein obenstehend beschriebenes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens auszuführen.A further embodiment of the invention also provides a system for training a machine learning algorithm, wherein the system comprises at least one provision unit which is designed to provide a set of training data for training the machine learning algorithm and test data for verifying the machine learning algorithm trained based on the training data provided, a training unit which is designed to train the machine learning algorithm based on the training data provided, and a verification unit which is designed to verify the training nated machine learning algorithm based on the provided test data, and wherein the system is designed to carry out a method for training a machine learning algorithm as described above.

Somit wird ein verbessertes System zum Trainieren eines Algorithmus des maschinellen Lernens, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist, angegeben. Dass das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, auf einer Vielzahl von Leistungsindikatoren basiert wird, hat dabei den Vorteil, dass sichergestellt werden kann, dass der Algorithmus des maschinellen Lernens hinsichtlich der durch die vorliegende Anwendung beziehungsweise den nachgeordneten Prozess geforderten Leistungskennzahlen optimal ist. Hierdurch können beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems basierend auf dem Algorithmus des maschinellen Lernens vermieden werden, oder können Fehlalarme und/oder eine Anzahl der False-Negatives beim Überwachen einer Produktionslinie durch den Algorithmus des maschinellen Lernens reduziert werden.Thus, an improved system for training a machine learning algorithm is provided, with which a machine learning algorithm can be trained that is optimally adapted to an existing application or a subsequent process processing outputs of the machine learning algorithm. The fact that the check as to whether a criterion for prematurely terminating training is met is based on a large number of performance indicators has the advantage that it can be ensured that the machine learning algorithm is optimal with regard to the performance indicators required by the existing application or the downstream process. This can, for example, avoid safety-critical situations when controlling a controllable system based on the machine learning algorithm, or reduce false alarms and/or a number of false negatives when monitoring a production line using the machine learning algorithm.

Mit einer weiteren Ausführungsform der Erfindung wird außerdem auch ein System zum Steuern eines steuerbaren Systems basierend auf einem Algorithmus des maschinellen Lernens angegeben, wobei das System eine Bereitstellungseinheit, welche ausgebildet ist, einen Algorithmus des maschinellen Lernens zum Steuern des steuerbaren Systems bereitzustellen, wobei der Algorithmus des maschinellen Lernens durch ein obenstehend beschriebenes System zum Trainieren eines Algorithmus des maschinellen Lernens trainiert wurde, und eine Steuereinheit, welche ausgebildet ist, das steuerbare System basierend auf dem bereitgestellten Algorithmus des maschinellen Lernens zu steuern, aufweist.A further embodiment of the invention also provides a system for controlling a controllable system based on a machine learning algorithm, the system comprising a provision unit which is designed to provide a machine learning algorithm for controlling the controllable system, the machine learning algorithm having been trained by a system for training a machine learning algorithm described above, and a control unit which is designed to control the controllable system based on the provided machine learning algorithm.

Somit wird ein System zum Steuern eines steuerbaren Systems angegeben, welches auf einem durch ein verbessertes System zum Trainieren eines Algorithmus des maschinellen Lernens, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist, trainierten Algorithmus des maschinellen Lernens basiert. Dass das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, auf einer Vielzahl von Leistungsindikatoren basiert wird, hat dabei den Vorteil, dass sichergestellt werden kann, dass der Algorithmus des maschinellen Lernens hinsichtlich der durch die vorliegende Anwendung beziehungsweise den nachgeordneten Prozess geforderten Leistungskennzahlen optimal ist. Hierdurch können beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems basierend auf dem Algorithmus des maschinellen Lernens vermieden werden, oder können Fehlalarme und/oder eine Anzahl der False-Negatives beim Überwachen einer Produktionslinie durch den Algorithmus des maschinellen Lernens reduziert werden.Thus, a system for controlling a controllable system is specified which is based on a machine learning algorithm trained by an improved system for training a machine learning algorithm, with which a machine learning algorithm can be trained which is optimally adapted to an existing application or a subsequent process processing outputs of the machine learning algorithm. The fact that the check as to whether a criterion for prematurely terminating training is met is based on a large number of performance indicators has the advantage that it can be ensured that the machine learning algorithm is optimal with regard to the performance indicators required by the existing application or the downstream process. This can, for example, avoid safety-critical situations when controlling a controllable system based on the machine learning algorithm, or reduce false alarms and/or a number of false negatives when monitoring a production line by the machine learning algorithm.

Mit einer weiteren Ausführungsform der Erfindung wird außerdem auch ein System zum Klassifizieren von Bilddaten angegeben, wobei das System ausgebildet ist, Bilddaten unter Verwendung eines neuronalen Netzes, welches trainiert ist, Bilddaten zu klassifizieren, zu klassifizieren, und wobei das neuronale Netz durch ein obenstehend beschriebenes System zum Trainieren eines Algorithmus des maschinellen Lernens trainiert wurde.A further embodiment of the invention also provides a system for classifying image data, wherein the system is designed to classify image data using a neural network that is trained to classify image data, and wherein the neural network has been trained by a system for training a machine learning algorithm as described above.

Somit wird ein System zum Klassifizieren von Bilddaten angegeben, welches auf einem durch ein verbessertes System zum Trainieren eines Algorithmus des maschinellen Lernens, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist, trainierten neuronalen Netz basiert. Dass das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, auf einer Vielzahl von Leistungsindikatoren basiert wird, hat dabei den Vorteil, dass sichergestellt werden kann, dass der Algorithmus des maschinellen Lernens hinsichtlich der durch die vorliegende Anwendung beziehungsweise den nachgeordneten Prozess geforderten Leistungskennzahlen optimal ist. Hierdurch können beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems basierend auf dem Algorithmus des maschinellen Lernens vermieden werden, oder können Fehlalarme und/oder eine Anzahl der False-Negatives beim Überwachen einer Produktionslinie durch den Algorithmus des maschinellen Lernens reduziert werden.Thus, a system for classifying image data is specified which is based on a neural network trained by an improved system for training a machine learning algorithm, with which a machine learning algorithm can be trained which is optimally adapted to an existing application or a subsequent process processing outputs of the machine learning algorithm. The fact that the check as to whether a criterion for prematurely terminating training is met is based on a large number of performance indicators has the advantage that it can be ensured that the machine learning algorithm is optimal with regard to the performance indicators required by the existing application or the downstream process. This can, for example, avoid safety-critical situations when controlling a controllable system based on the machine learning algorithm, or reduce false alarms and/or a number of false negatives when monitoring a production line using the machine learning algorithm.

Mit einer weiteren Ausführungsform der Erfindung wird ferner auch ein Computerprogramm mit Programmcode, um ein obenstehend beschriebenes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird, angegeben.A further embodiment of the invention also provides a computer program with program code for carrying out a method described above for training a machine learning algorithm when the computer program is executed on a computer.

Mit einer weiteren Ausführungsform der Erfindung wird ferner auch ein computerlesbarer Datenträger mit Programmcode eines Computerprogramms, um ein obenstehend beschriebenes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird, angegeben.A further embodiment of the invention also provides a computer-readable A data carrier with program code of a computer program for carrying out a method as described above for training a machine learning algorithm when the computer program is executed on a computer.

Das Computerprogramm und der computerlesbare Datenträger haben dabei jeweils den Vorteil, dass diese ausgebildet sind, ein verbessertes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist, auszuführen. Dass das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, auf einer Vielzahl von Leistungsindikatoren basiert wird, hat dabei den Vorteil, dass sichergestellt werden kann, dass der Algorithmus des maschinellen Lernens hinsichtlich der durch die vorliegende Anwendung beziehungsweise den nachgeordneten Prozess geforderten Leistungskennzahlen optimal ist. Hierdurch können beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems basierend auf dem Algorithmus des maschinellen Lernens vermieden werden, oder können Fehlalarme und/oder eine Anzahl der False-Negatives beim Überwachen einer Produktionslinie durch den Algorithmus des maschinellen Lernens reduziert werden.The computer program and the computer-readable data carrier each have the advantage that they are designed to carry out an improved method for training a machine learning algorithm, with which a machine learning algorithm can be trained that is optimally adapted to an existing application or a subsequent process that processes outputs of the machine learning algorithm. The fact that the check as to whether a criterion for prematurely terminating training is met is based on a large number of performance indicators has the advantage that it can be ensured that the machine learning algorithm is optimal with regard to the performance indicators required by the existing application or the downstream process. This can, for example, avoid safety-critical situations when controlling a controllable system based on the machine learning algorithm, or reduce false alarms and/or a number of false negatives when monitoring a production line using the machine learning algorithm.

Zusammenfassend ist festzustellen, dass mit der vorliegenden Erfindung ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens, mit welchem ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal auf eine vorliegende Anwendung beziehungsweise einen nachfolgenden beziehungsweise nachgeordneten, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist, angegeben wird.In summary, the present invention provides a method for training a machine learning algorithm, with which a machine learning algorithm can be trained that is optimally adapted to a given application or a subsequent or downstream process that processes outputs of the machine learning algorithm.

Dabei kann dadurch, dass jeweils die trainierten Parameter des Algorithmus des maschinellen Lernens bezüglich der entsprechenden Leistungskennzahl gespeichert werden, zudem eine bessere Übersicht über eine aktuelle Leistungsfähigkeit des Algorithmus des maschinellen Lernens bereitgestellt werden, wobei verschiedene Wahlmöglichkeiten für die trainierten Parameter des Algorithmus des maschinellen Lernens bereitgestellt werden, und wobei anschließend die für die gewünschte beziehungsweise erforderliche Leistungskennzahl bestimmten optimalen trainierten Parameter als trainierte Parameter für den Algorithmus des maschinellen Lernens ausgewählt werden können.By storing the trained parameters of the machine learning algorithm with respect to the corresponding performance indicator, a better overview of the current performance of the machine learning algorithm can be provided, whereby various options for the trained parameters of the machine learning algorithm are provided, and whereby the optimal trained parameters determined for the desired or required performance indicator can then be selected as trained parameters for the machine learning algorithm.

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 Merkmalen der Erfindung.Further possible embodiments, further developments and implementations of the invention also include combinations of features of the invention described above or below with respect to the embodiments that are not explicitly mentioned.

Kurze Beschreibung der ZeichnungenShort description of the drawings

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 ein Verfahren zu Trainieren eines künstlichen neuronalen Netzes angegeben wird, mit welchem ein künstliches neuronales Netz trainiert werden kann, dass an einen nachfolgenden, Ausgaben des neuronalen Netzes verarbeitenden Prozess angepasst ist und gleichzeitig vergleichsweise wenig Ressourcen benötigt.The accompanying drawings are intended to provide a further understanding of embodiments of the invention. They illustrate embodiments and, in conjunction with the description, serve to explain principles and concepts of the invention. A method for training an artificial neural network is provided with which an artificial neural network can be trained that is adapted to a subsequent process that processes outputs of the neural network and at the same time requires comparatively few resources.

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 above advantages will become apparent upon consideration of the drawings. The illustrated elements of the drawings are not necessarily shown to scale with respect to one another.

Es zeigen:

  • 1. zeigt ein Flussdiagramm eines Verfahrens zum Trainieren eines Algorithmus des maschinellen Lernens gemäß Ausführungsformen der Erfindung;
  • 2. zeigt ein schematisches Blockschaltbild eines Systems zum Trainieren eines Algorithmus des maschinellen Lernens gemäß Ausführungsformen der Erfindung.
Show it:
  • 1 . shows a flowchart of a method for training a machine learning algorithm according to embodiments of the invention;
  • 2 . shows a schematic block diagram of a system 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, identical reference symbols designate identical or functionally identical elements, parts or components, unless otherwise stated.

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

Das Trainieren eines Algorithmus des maschinellen Lernens erfolgt dabei für gewöhnlich basierend auf Trainingsdaten, beispielsweise durch ein Deep Learning-Verfahren, wobei es sich bei den Trainingsdaten um gelabelte beziehungsweise mit entsprechenden Informationen versehene Daten, welche das tatsächliche Verhalten beziehungsweise Gegebenheiten einer vorliegenden Anwendung, für welche der Algorithmus des maschinellen Lernens trainiert wird, beziehungsweise eines entsprechenden nachgeordneten Prozesses repräsentieren.The training of a machine learning algorithm is usually based on training data, for example through a deep learning method, whereby the training data is labeled data or data provided with corresponding information that represents the actual behavior or conditions of an existing application for which the machine learning algorithm is being trained or of a corresponding downstream process.

Bei einem derartigen Trainieren eines Algorithmus des maschinellen Lernens besteht jedoch die Gefahr, dass es zu einem Underfitting oder einem Overfitting kommt. Underfitting bedeutet dabei, dass der trainierte Algorithmus des maschinellen Lernens nach dem Trainieren Vorhersagen nicht hinreichend genau treffen kann, beziehungsweise Eingabedaten nicht hinreichend genau entsprechende Ausgabedaten zuordnen kann, da das trainierte Modell zu einfach ist beziehungsweise die entsprechende Modellgüte keine ausreichend hohen Werte erreicht. Overfitting bedeutet ferner, dass der Algorithmus des maschinellen Lernens derart trainiert wurde, dass dieser auf die entsprechenden Trainingsdaten spezialisiert ist, das heißt für die Trainingsdaten eine sehr hohe Modellgüte aufweist, für andere Daten jedoch nur eine deutlich geringere Modellgüte. Dies bedeutet, dass ein Beispiel während des Trainierens Oberhand gewonnen hat.However, when training a machine learning algorithm in this way, there is a risk of underfitting or overfitting. Underfitting means that the trained machine learning algorithm cannot make predictions with sufficient accuracy after training, or cannot assign input data to corresponding output data with sufficient accuracy, because the trained model is too simple or the corresponding model quality does not achieve sufficiently high values. Overfitting also means that the machine learning algorithm has been trained in such a way that it is specialized for the corresponding training data, i.e. it has a very high model quality for the training data, but only a significantly lower model quality for other data. This means that one example has gained the upper hand during training.

Um die Gefahr von Underfitting und/oder Overfitting zu reduzieren, werden Algorithmen des maschinellen Lernens häufig in mehreren Schritten trainiert, wobei der Algorithmus des maschinellen Lernens in jedem Schritt basierend auf entsprechenden Trainingsdaten trainiert und anschließend eine Performanz des basierend auf den entsprechenden Trainingsdaten trainierten Algorithmus des maschinellen Lernens basierend auf einem Testdatensatz, welcher weitere gelabelte, das tatsächliche Verhalten der vorliegenden Anwendung repräsentierende Daten aufweist, ermittelt wird, und wobei nach jedem Schritt basierend auf der ermittelten Performanz überprüft wird, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist. Das ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, bedeutet dabei, dass die Performanz nach dem entsprechenden Schritt bereits vorgegebene Vorgaben für die Performanz erfüllt, beispielsweise bereits oberhalb eines Schwellwerts für die Performanz liegt, ohne dass zusätzliche Trainingsschritte vonnöten sind, beziehungsweise keine Verbesserung der Performanz durch weitere Trainingsschritte mehr zu erwarten ist.To reduce the risk of underfitting and/or overfitting, machine learning algorithms are often trained in several steps, with the machine learning algorithm being trained in each step based on corresponding training data and then a performance of the machine learning algorithm trained based on the corresponding training data being determined based on a test data set which has further labelled data representing the actual behaviour of the application in question, and after each step a check is carried out based on the determined performance to determine whether a criterion for prematurely terminating training has been met. The fact that a criterion for prematurely terminating training is met means that the performance after the corresponding step already meets specified performance requirements, for example is already above a threshold for performance without additional training steps being necessary or no improvement in performance can be expected through further training steps.

Für gewöhnlich wird dabei nur die Performanz des trainierten Algorithmus des maschinellen Lernens hinsichtlich der Genauigkeit des Algorithmus des maschinellen Lernens überprüft. Viele Anwendungen beziehungsweise nachgeordnete Prozesse, beispielsweise im Bereich der Bildklassifizierung, erfordern jedoch, dass der Algorithmus auch hinsichtlich anderer Leistungskennzahlen beziehungsweise Key Performance Indikatoren optimiert ist. Hierdurch sollen beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems oder Robotiksystems, beispielsweise einer Funktion eines autonom fahrenden Kraftfahrzeuges vermieden werden, in dem der Algorithmus des maschinellen Lernens optimal an die entsprechenden Gegebenheiten beziehungsweise Voraussetzungen angepasst ist. Ferner ist bei auf einem Algorithmus des maschinellen Lernens basierenden beziehungsweise durch einen Algorithmus des maschinellen Lernens überwachten Produktionslinien wichtig, Fehlalarme und/oder eine Anzahl der False-Negatives zu reduzieren.Usually, only the performance of the trained machine learning algorithm is checked in terms of the accuracy of the machine learning algorithm. However, many applications or downstream processes, for example in the field of image classification, require that the algorithm is also optimized in terms of other key performance indicators. This is intended to avoid, for example, safety-critical situations when controlling a controllable system or robotic system, for example a function of an autonomously driving motor vehicle, by optimally adapting the machine learning algorithm to the corresponding conditions or requirements. Furthermore, for production lines based on a machine learning algorithm or monitored by a machine learning algorithm, it is important to reduce false alarms and/or the number of false negatives.

1 zeigt hierbei ein Verfahren 1, wobei in einem Schritt 2 eine Menge an Trainingsdaten zum Trainieren des Algorithmus des maschinellen Lernens und Testdaten zum Verifizieren des trainierten Algorithmus des maschinellen Lernens bereitgestellt werden und der Algorithmus des maschinellen Lernens in einem Schritt 3 trainiert wird. 1 shows a method 1, wherein in a step 2 a set of training data for training the machine learning algorithm and test data for verifying the trained machine learning algorithm are provided and the machine learning algorithm is trained in a step 3.

Dabei wird das Trainieren des Algorithmus des maschinellen Lernens in Schritt 3 in mehreren Schritten beziehungsweise Epochen erfolgt, wobei in jedem Schritt der Algorithmus des maschinellen Lernens basierend auf zumindest einem Teil der Menge an Trainingsdaten trainiert wird 4, für jede einer Vielzahl von Leistungskennzahlen jeweils eine Performanz des basierend auf dem zumindest einem Teil der Menge an Trainingsdaten trainierten Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Testdaten ermittelt wird 5, und wobei nach jedem Schritt basierend auf den Performanzen der Vielzahl von Leistungskennzahlen überprüft wird, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist 6.The training of the machine learning algorithm in step 3 is carried out in several steps or epochs, wherein in each step the machine learning algorithm is trained based on at least a part of the amount of training data 4, for each of a plurality of performance indicators a performance of the machine learning algorithm trained based on the at least a part of the amount of training data is determined based on the test data provided 5, and wherein after each step it is checked based on the performance of the plurality of performance indicators whether a criterion for prematurely terminating training is met 6.

Dass das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, auf einer Vielzahl von Leistungsindikatoren basiert wird, hat dabei den Vorteil, dass sichergestellt werden kann, dass der Algorithmus des maschinellen Lernens hinsichtlich der durch die vorliegende Anwendung beziehungsweise den nachgeordneten Prozess geforderten Leistungskennzahlen optimal ist. Hierdurch können beispielsweise sicherheitskritische Situationen beim Steuern eines steuerbaren Systems basierend auf dem Algorithmus des maschinellen Lernens vermieden werden, oder können Fehlalarme und/oder eine Anzahl der False-Negatives beim Überwachen einer Produktionslinie durch den Algorithmus des maschinellen Lernens reduziert werden.The fact that the check to see whether a criterion for prematurely terminating training is met is based on a large number of performance indicators has the advantage that it can be ensured that the machine learning algorithm is optimal with regard to the performance indicators required by the application in question or the downstream process. This can, for example, prevent safety-critical situations when controlling a controllable system based on the machine learning algorithm, or reduce false alarms and/or a number of false negatives when monitoring a production line using the machine learning algorithm.

Insgesamt wird somit ein verbessertes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens 1 angegeben, mit welchen ein Algorithmus des maschinellen Lernens trainiert werden kann, welcher optimal an eine vorliegende Anwendung beziehungsweise einen nachfolgenden, Ausgaben des Algorithmus des maschinellen Lernens verarbeitenden Prozess angepasst ist.Overall, an improved method for training a machine learning algorithm 1 is thus provided, with which a machine learning algorithm can be trained which is optimally adapted to a given application or a subsequent process processing outputs of the machine learning algorithm.

Wie 1 zeigt, wird der Schritt 3 beziehungsweise werden die Schritte 4, 5 und 6 dabei wiederholt ausgeführt, falls sich in Schritt 6 herausstellt, dass das Kriterium zum vorzeitigen Abbrechen des Trainierens noch nicht erfüllt ist. Wird hingegen in Schritt 6 festgestellt, dass das Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, wird das Trainieren des Algorithmus des maschinellen Lernens abgebrochen und der Algorithmus des maschinellen Lernens in einem Schritt 7 ausgegeben beziehungsweise bereitgestellt.How 1 shows, step 3 or steps 4, 5 and 6 are carried out as executed repeatedly if it turns out in step 6 that the criterion for prematurely terminating training has not yet been met. If, however, it is determined in step 6 that the criterion for prematurely terminating training is met, the training of the machine learning algorithm is aborted and the machine learning algorithm is output or provided in a step 7.

Das Kriterium zum vorzeitigen Abbrechen des Trainierens kann dabei beispielsweise erfüllt sein, wenn im Vergleich zu vorherigen Trainingsschritten, beispielsweise den letzten zehn Trainingsschritten, jeweils keine Verbesserung der Performanz der einzelnen Leistungskennzahlen basierend auf den Testdaten mehr feststellbar ist.The criterion for premature termination of training can be met, for example, if, compared to previous training steps, for example the last ten training steps, no improvement in the performance of the individual key performance indicators can be determined based on the test data.

Bei dem Algorithmus des maschinellen Lernens kann es sich zudem beispielsweise um ein künstliches neuronales Netz handeln, wobei Gewichte des künstlichen neuronalen Netzes basierend auf gelabelten Trainingsdaten angepasst werden, beispielsweise unter Verwendung eines Backpropagation-Algorithmus.The machine learning algorithm can also be, for example, an artificial neural network, where weights of the artificial neural network are adjusted based on labeled training data, for example using a backpropagation algorithm.

Gemäß den Ausführungsformen der 1 weist der Schritt 6 des Überprüfens, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, ein Auswählen von wenigstens einer Leistungskennzahl aus der Vielzahl von Leistungskennzahlen, welche für eine vorliegende Anwendung wichtig ist, und, für jede der wenigstens einen ausgewählten Leistungskennzahlen, ein jeweiliges Überprüfen, ob die entsprechende ermittelte Performanz entsprechende Vorgaben beziehungsweise ein entsprechendes Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt, auf.According to the embodiments of the 1 step 6 of checking whether a criterion for prematurely terminating training is met comprises selecting at least one performance indicator from the plurality of performance indicators which is important for a given application and, for each of the at least one selected performance indicators, checking whether the corresponding determined performance meets corresponding specifications or a corresponding criterion for prematurely terminating training.

Die wenigstens eine Leistungskennzahl kann dabei durch die vorliegende Anwendung automatisch vorgegeben werden. Ferner kann die wenigstens eine Leistungskennzahl aber beispielsweise auch durch einen Hersteller des vorliegenden Systems und/oder einen Nutzer ausgewählt werden.The at least one performance indicator can be specified automatically by the present application. Furthermore, the at least one performance indicator can also be selected, for example, by a manufacturer of the present system and/or a user.

Somit wird das Trainieren des Algorithmus des maschinellen Lernens so lange fortgesetzt, bis die einzelnen ausgewählten Leistungskennzahlen beziehungsweise die Performanz der einzelnen ausgewählten Leistungskennzahlen jeweils optimal ist.Thus, the training of the machine learning algorithm continues until the individual selected performance indicators or the performance of the individual selected performance indicators is optimal.

Ferner kann das Überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist, aber auch ein Gewichten der einzelnen der Vielzahl von Leistungskennzahlen aufweisen, wobei die einzelnen der Vielzahl von Leistungskennzahlen bei der Überprüfung basierend auf ihrer entsprechenden Gewichtung berücksichtigt werden.Furthermore, checking whether a criterion for prematurely terminating training is met may also include weighting each of the plurality of performance indicators, wherein each of the plurality of performance indicators is taken into account in the check based on their corresponding weighting.

Wie 1 zeigt, weist das dargestellte Verfahren 1 weiter, für jede der Vielzahl von Leistungskennzahlen, nach jedem Schritt ein Überprüfen, ob die Performanz der entsprechenden Leistungskennzahl besser als in sämtlichen vorherigen Schritten ermittelte Performanzen der entsprechenden Leistungskennzahl ist 8, wobei, falls die Performanz der entsprechenden Leistungskennzahl besser als in sämtlichen vorherigen Schritten ermittelte Performanzen der entsprechenden Leistungskennzahl ist, nach dem entsprechenden Schritt vorliegende trainierte Parameter des Algorithmus des maschinellen Lernens bezüglich der entsprechenden Leistungskennzahl gespeichert werden 9, auf.How 1 shows, the illustrated method 1 further comprises, for each of the plurality of performance indicators, after each step, checking whether the performance of the corresponding performance indicator is better than performances of the corresponding performance indicator determined in all previous steps 8, wherein, if the performance of the corresponding performance indicator is better than performances of the corresponding performance indicator determined in all previous steps, trained parameters of the machine learning algorithm present after the corresponding step are stored 9 with respect to the corresponding performance indicator.

Hierdurch kann eine bessere Übersicht über eine aktuelle Leistungsfähigkeit des Algorithmus des maschinellen Lernens bereitgestellt werden, wobei verschiedene Wahlmöglichkeiten für die trainierten Parameter des Algorithmus des maschinellen Lernens bereitgestellt werden, und wobei anschließend die für die gewünschte beziehungsweise erforderliche Leistungskennzahl bestimmten optimalen trainierten Parameter als trainierte Parameter für den Algorithmus des maschinellen Lernens ausgewählt werden können.This makes it possible to provide a better overview of a current performance of the machine learning algorithm, providing different choices for the trained parameters of the machine learning algorithm, and then selecting the optimal trained parameters determined for the desired or required performance indicator as trained parameters for the machine learning algorithm.

Insbesondere wird die wenigstens eine erforderliche Leistungskennzahl dabei basierend auf Vorgaben beziehungsweise Erfordernissen der vorliegenden Anwendung bestimmt, wobei die wenigstens eine erforderliche Leistungskennzahl wiederum automatisch ausgewählt werden kann, oder durch einen Hersteller der vorliegenden Anwendung und/oder einen Nutzer vorgegeben werden kann.In particular, the at least one required performance indicator is determined based on specifications or requirements of the present application, wherein the at least one required performance indicator can in turn be selected automatically or can be specified by a manufacturer of the present application and/or a user.

Die einzelnen Zuordnungen und entsprechenden Daten, beispielsweise entsprechende Gewichte, falls es sich bei dem Algorithmus des maschinellen Lernens um ein künstliches neuronales Netz handelt, können dabei beispielsweise in einer Look-up Tabelle gespeichert werden.The individual assignments and corresponding data, for example corresponding weights if the machine learning algorithm is an artificial neural network, can be stored in a look-up table, for example.

Ferner können jeweils bereits abgespeicherte Daten überschrieben beziehungsweise aktualisiert werden, falls eine verbesserte Performanz festgestellt wird.Furthermore, data that has already been saved can be overwritten or updated if improved performance is detected.

Gemäß den Ausführungsformen der 1 weist die Vielzahl von Leistungskennzahlen ferner wiederum eine Genauigkeit, eine Anzahl von Fehlalarmen und einen Anteil von False-Negatives auf.According to the embodiments of the 1 The multitude of performance indicators also have an accuracy, a number of false alarms and a proportion of false negatives.

Zudem weisen die Trainingsdaten und die Testdaten Sensordaten auf, insbesondere in Zusammenhang mit einer vorliegenden Anwendung erfasste Sensordaten, beispielsweise das Verhalten der vorliegenden Anwendung repräsentierende Sensordaten.In addition, the training data and the test data contain sensor data, in particular sensor data recorded in connection with a given application, for example sensor data representing the behavior of the given application.

Ein durch das dargestellte Verfahren 1 trainierter Algorithmus des maschinellen Lernens kann anschließend beispielsweise zum Steuern eines steuerbaren Systems beziehungsweise Robotiksystems, beispielsweise einer Funktion eines autonom fahrenden Kraftfahrzeuges oder zum Überwachen einer Produktionslinie herangezogen werden. Insbesondere beim Steuern einer steuerbaren Funktion eines autonom fahrenden Kraftfahrzeuges oder beim Überwachen einer Produktionslinie durch einen Algorithmus des maschinellen Lernens ist es dabei wichtig, dass der Algorithmus des maschinellen Lernens nicht nur hinsichtlich der Genauigkeit sondern auch hinsichtlich anderer Leistungskennzahlen optimiert ist, um sicherheitskritische Situationen zu vermeiden und/oder optimale Produkte herzustellen.A machine learning algorithm trained by the method 1 shown can then be used, for example, to control a controllable system or robotics system, for example a function of an autonomously driving motor vehicle or to monitor a production line. In particular, when controlling a controllable function of an autonomously driving motor vehicle or monitoring a production line using a machine learning algorithm, it is important that the machine learning algorithm is optimized not only in terms of accuracy but also in terms of other performance indicators in order to avoid safety-critical situations and/or to produce optimal products.

Ferner kann der entsprechende Algorithmus des maschinellen Lernens, insbesondere ein künstliches neuronales Netz, aber auch trainiert sein, Bilddaten zu klassifizieren.Furthermore, the corresponding machine learning algorithm, in particular an artificial neural network, can also be trained to classify image data.

2 zeigt ein schematisches Blockschaltbild eines Systems zum Trainieren eines Algorithmus des maschinellen Lernens 10 gemäß Ausführungsformen der Erfindung. 2 shows a schematic block diagram of a system for training a machine learning algorithm 10 according to embodiments of the invention.

Wie 2 zeigt, weist das System 10 dabei eine Bereitstellungseinheit 11, welche ausgebildet ist, eine Menge an Trainingsdaten zum Trainieren des Algorithmus des maschinellen Lernens und Testdaten zum Verifizieren des Trainingsdaten trainierten Algorithmus des maschinellen Lernens bereitzustellen, eine Trainingseinheit 12, welche ausgebildet ist, den Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Trainingsdaten zu trainieren, und eine Verifizierungseinheit 13, welche ausgebildet, den trainierten Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Testdaten zu verifizieren, auf.How 2 shows, the system 10 has a provision unit 11 which is designed to provide a set of training data for training the machine learning algorithm and test data for verifying the machine learning algorithm trained with the training data, a training unit 12 which is designed to train the machine learning algorithm based on the provided training data, and a verification unit 13 which is designed to verify the trained machine learning algorithm based on the provided test data.

Bei der wenigstens einen Bereitstellungseinheit kann es sich dabei beispielsweise um einen Empfänger, welcher ausgebildet ist, entsprechende Daten, insbesondere Sensordaten zu empfangen.The at least one provision unit can be, for example, a receiver which is designed to receive corresponding data, in particular sensor data.

Die Trainingseinheit und die Verifizierungseinheit können ferner jeweils beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The training unit and the verification unit can further each be implemented, for example, based on a code stored in a memory and executable by a processor.

Das System 10 ist dabei ausgebildet, den Algorithmus des maschinellen Lernens in Schritten zu trainieren, wobei die Trainingseinheit 12 ausgebildet ist, den Algorithmus des maschinellen Lernens in jedem Schritt jeweils basierend auf zumindest einem Teil der Menge an Trainingsdaten zu trainieren, und wobei die Verifizierungseinheit 13 ausgebildet ist, nach jedem Schritt für jede einer Vielzahl von Leistungskennzahlen jeweils eine Performanz des basierend auf dem zumindest einen Teil der Menge an Trainingsdaten trainierten Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Testdaten zu ermitteln, und nach jedem Schritt basierend auf den Performanzen der Vielzahl von Leistungskennzahlen zu überprüfen, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist.The system 10 is designed to train the machine learning algorithm in steps, wherein the training unit 12 is designed to train the machine learning algorithm in each step based on at least a portion of the amount of training data, and wherein the verification unit 13 is designed to determine, after each step, for each of a plurality of performance indicators, a performance of the machine learning algorithm trained based on the at least a portion of the amount of training data based on the test data provided, and to check after each step based on the performance of the plurality of performance indicators whether a criterion for prematurely terminating training is met.

Gemäß den Ausführungsformen der 2 ist die Verifizierungseinheit 13 dabei insbesondere ausgebildet, wenigstens eine Leistungskennzahl aus der Vielzahl von Leistungskennzahlen, welche für eine vorliegende Anwendung wichtig ist, auszuwählen, und für jede der wenigstens einen ausgewählten Leistungskennzahlen jeweils zu überprüfen, ob die entsprechende ermittelte Performanz entsprechende Vorgaben erfüllt.According to the embodiments of the 2 the verification unit 13 is designed in particular to select at least one performance indicator from the plurality of performance indicators which is important for a given application and to check for each of the at least one selected performance indicators whether the corresponding determined performance meets corresponding specifications.

Die Verifizierungseinheit ist auch ausgebildet, für jede der Vielzahl von Leistungskennzahlen nach jedem Schritt zu überprüfen, ob die Performanz der entsprechenden Leistungskennzahl besser als in sämtlichen vorherigen Schritten ermittelte Performanzen der entsprechenden Leistungskennzahl ist, und, falls die Performanz der entsprechenden Leistungskennzahl besser als in sämtlichen vorherigen Schritten ermittelte Performanzen der entsprechenden Leistungskennzahl ist, nach dem entsprechenden Schritt vorliegende trainierte Parameter des Algorithmus des maschinellen Lernens bezüglich der entsprechenden Leistungskennzahl in einem Speicher 14 zu speichern.The verification unit is also designed to check for each of the plurality of performance indicators after each step whether the performance of the corresponding performance indicator is better than the performances of the corresponding performance indicator determined in all previous steps and, if the performance of the corresponding performance indicator is better than the performances of the corresponding performance indicator determined in all previous steps, to store trained parameters of the machine learning algorithm relating to the corresponding performance indicator in a memory 14 after the corresponding step.

Bei dem Speicher kann es sich dabei insbesondere um einen nicht-flüchtigen Speicher handeln.The memory may in particular be a non-volatile memory.

Gemäß den Ausführungsformen der 2 weist die Vielzahl von Leistungskennzahlen ferner wiederum eine Genauigkeit, eine Anzahl von Fehlalarmen und einen Anteil von False-Negatives auf.According to the embodiments of the 2 The multitude of performance indicators also has an accuracy, a number of false alarms and a proportion of false negatives.

Zudem weisen die Trainingsdaten und die Testdaten wiederum Sensordaten auf, insbesondere in Zusammenhang mit einer vorliegenden Anwendung erfasste Sensordaten, beispielsweise das Verhalten der vorliegenden Anwendung repräsentierende Sensordaten.In addition, the training data and the test data in turn contain sensor data, in particular sensor data recorded in connection with a given application, for example sensor data representing the behavior of the given application.

Das dargestellte System 10 ist ferner ausgebildet, ein obenstehend beschriebenes Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens auszuführen.The illustrated system 10 is further configured to carry out a method described above for training a machine learning algorithm.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE 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 listed 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 accepts no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • DE 102017212328 A1 [0008]DE 102017212328 A1 [0008]

Claims (12)

Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens, wobei das Verfahren (1) folgende Schritte aufweist: - Bereitstellen einer Menge an Trainingsdaten zum Trainieren des Algorithmus des maschinellen Lernens und von Testdaten zum Verifizieren des trainierten Algorithmus des maschinellen Lernens (2); und - Trainieren des Algorithmus des maschinellen Lernens (3), wobei das Trainieren des Algorithmus des maschinellen Lernens (3) in mehreren Schritten erfolgt, wobei in jedem Schritt der Algorithmus des maschinellen Lernens jeweils basierend auf zumindest einem Teil der Menge an Trainingsdaten trainiert wird (4), wobei für jede einer Vielzahl von Leistungskennzahlen jeweils eine Performanz des basierend auf dem zumindest einen Teil der Menge an Trainingsdaten trainierten Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Testdaten ermittelt wird (5), und wobei nach jedem Schritt basierend auf den Performanzen der Vielzahl von Leistungskennzahlen überprüft wird, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist (6).Method for training a machine learning algorithm, the method (1) comprising the following steps: - providing a set of training data for training the machine learning algorithm and test data for verifying the trained machine learning algorithm (2); and - training the machine learning algorithm (3), the training of the machine learning algorithm (3) taking place in several steps, in each step the machine learning algorithm being trained based on at least part of the set of training data (4), for each of a plurality of performance indicators a performance of the machine learning algorithm trained based on the at least part of the set of training data being determined based on the test data provided (5), and after each step it is checked based on the performance of the plurality of performance indicators whether a criterion for prematurely terminating training is met (6). Verfahren nach Anspruch 1, wobei der Schritt des Überprüfens, ob ein Kriterium zum vorzeitigen Abbrechen des Trainierens erfüllt ist (6), ein Auswählen von wenigstens einer Leistungskennzahl aus der Vielzahl von Leistungskennzahlen, welche für eine vorliegende Anwendung wichtig ist, und, für jede der wenigstens einen ausgewählten Leistungskennzahlen, ein jeweiliges Überprüfen, ob die entsprechende ermittelte Performanz entsprechende Vorgaben erfüllt, aufweist.Procedure according to Claim 1 , wherein the step of checking whether a criterion for prematurely terminating training is met (6) comprises selecting at least one performance indicator from the plurality of performance indicators which is important for a given application and, for each of the at least one selected performance indicators, respectively checking whether the corresponding determined performance meets corresponding specifications. Verfahren nach Anspruch 1 oder 2, wobei das Verfahren weiter, für jede der Vielzahl von Leistungskennzahlen, nach jedem Schritt ein Überprüfen, ob die Performanz der entsprechenden Leistungskennzahl besser als in sämtlichen vorherigen Schritten ermittelte Performanzen der entsprechenden Leistungskennzahl ist (8), wobei, falls die Performanz der entsprechenden Leistungskennzahl besser als in sämtlichen vorherigen Schritten ermittelte Performanzen der entsprechenden Leistungskennzahl ist, nach dem entsprechenden Schritt vorliegende trainierte Parameter des Algorithmus des maschinellen Lernens bezüglich der entsprechenden Leistungskennzahl gespeichert werden (9), aufweist.Procedure according to Claim 1 or 2 , wherein the method further comprises, for each of the plurality of performance indicators, checking after each step whether the performance of the corresponding performance indicator is better than performances of the corresponding performance indicator determined in all previous steps (8), wherein, if the performance of the corresponding performance indicator is better than performances of the corresponding performance indicator determined in all previous steps, trained parameters of the machine learning algorithm relating to the corresponding performance indicator present after the corresponding step are stored (9). Verfahren nach einem der Ansprüche 1 bis 3, wobei die Vielzahl von Leistungskennzahlen eine Genauigkeit, eine Anzahl von Fehlalarmen und einen Anteil von False-Negatives aufweisen.Method according to one of the Claims 1 until 3 , where the plurality of performance indicators include an accuracy, a number of false alarms, and a proportion of false negatives. Verfahren nach einem der Ansprüche 1 bis 4, wobei die Trainingsdaten und/oder die Testdaten Sensordaten aufweisen.Method according to one of the Claims 1 until 4 , where the training data and/or the test data comprise sensor data. Verfahren zum Steuern eines steuerbaren Systems basierend auf einem Algorithmus des maschinellen Lernens, wobei das Verfahren folgende Schritte aufweist: - Bereitstellen eines Algorithmus des maschinellen Lernens zum Steuern des steuerbaren Systems, wobei der Algorithmus des maschinellen Lernens durch ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens nach einem der Ansprüche 1 bis 5 trainiert wurde; und - Steuern des steuerbaren Systems basierend auf dem bereitgestellten Algorithmus des maschinellen Lernens.Method for controlling a controllable system based on a machine learning algorithm, the method comprising the following steps: - providing a machine learning algorithm for controlling the controllable system, the machine learning algorithm being developed by a method for training a machine learning algorithm according to one of the Claims 1 until 5 trained; and - controlling the controllable system based on the provided machine learning algorithm. Verfahren zum Klassifizieren von Bilddaten, wobei Bilddaten unter Verwendung eines neuronalen Netzes, welches trainiert ist, Bilddaten zu klassifizieren, klassifiziert werden, und wobei das neuronale Netz durch ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens nach einem der Ansprüche 1 bis 5 trainiert wurde.A method for classifying image data, wherein image data is classified using a neural network which is trained to classify image data, and wherein the neural network is trained by a method for training a machine learning algorithm according to one of the Claims 1 until 5 was trained. System zum Trainieren eines Algorithmus des maschinellen Lernens, wobei das System (10) wenigstens eine Bereitstellungseinheit (11), welche ausgebildet ist, eine Menge an Trainingsdaten zum Trainieren des Algorithmus des maschinellen Lernens und Testdaten zum Verifizieren des trainierten Algorithmus des maschinellen Lernens bereitzustellen, eine Trainingseinheit (12), welche ausgebildet ist, den Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Trainingsdaten zu trainieren, und eine Verifizierungseinheit (13), welche ausgebildet, den trainierten Algorithmus des maschinellen Lernens basierend auf den bereitgestellten Testdaten zu verifizieren, aufweist, und wobei das System (10) ausgebildet ist, ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens nach einem der Ansprüche 1 bis 5 auszuführen.System for training a machine learning algorithm, wherein the system (10) has at least one provision unit (11) which is designed to provide a set of training data for training the machine learning algorithm and test data for verifying the trained machine learning algorithm, a training unit (12) which is designed to train the machine learning algorithm based on the provided training data, and a verification unit (13) which is designed to verify the trained machine learning algorithm based on the provided test data, and wherein the system (10) is designed to implement a method for training a machine learning algorithm according to one of the Claims 1 until 5 to execute. System zum Steuern eines steuerbaren Systems basierend auf einem Algorithmus des maschinellen Lernens, wobei das System eine Bereitstellungseinheit, welche ausgebildet ist, einen Algorithmus des maschinellen Lernens zum Steuern des steuerbaren Systems bereitzustellen, wobei der Algorithmus des maschinellen Lernens durch ein System zum Trainieren eines Algorithmus des maschinellen Lernens nach Anspruch 8 trainiert wurde, und eine Steuereinheit, welche ausgebildet ist, das steuerbare System basierend auf dem bereitgestellten Algorithmus des maschinellen Lernens zu steuern, aufweist.System for controlling a controllable system based on a machine learning algorithm, wherein the system comprises a provision unit which is designed to provide a machine learning algorithm for controlling the controllable system, wherein the machine learning algorithm is implemented by a system for training a machine learning algorithm according to Claim 8 trained, and a control unit which is designed to control the controllable system based on the provided machine learning algorithm. System zum Klassifizieren von Bilddaten, wobei das System ausgebildet ist, Bilddaten unter Verwendung eines neuronalen Netzes, welches trainiert ist, Bilddaten zu klassifizieren, zu klassifizieren, und wobei das neuronale Netz durch ein System zum Trainieren eines Algorithmus des maschinellen Lernens nach Anspruch 8 trainiert wurde.A system for classifying image data, wherein the system is designed to classify image data using a neural network which is trained to classify image data, and wherein the neural network is supported by a system for training a machine learning algorithm according to Claim 8 was trained. Computerprogramm mit Programmcode, um ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens nach einem der Ansprüche 1 bis 5 auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.Computer program with program code to implement a method for training a machine learning algorithm according to one of the Claims 1 until 5 to execute when the computer program is executed on a computer. Computerlesbarer Datenträger mit Programmcode eines Computerprogramms, um ein Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens nach einem der Ansprüche 1 bis 5 auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.Computer-readable data carrier with program code of a computer program to implement a method for training a machine learning algorithm according to one of the Claims 1 until 5 to execute when the computer program is executed on a computer.
DE102022212455.3A 2022-11-22 2022-11-22 Method for training a machine learning algorithm Pending DE102022212455A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102022212455.3A DE102022212455A1 (en) 2022-11-22 2022-11-22 Method for training a machine learning algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022212455.3A DE102022212455A1 (en) 2022-11-22 2022-11-22 Method for training a machine learning algorithm

Publications (1)

Publication Number Publication Date
DE102022212455A1 true DE102022212455A1 (en) 2024-05-23

Family

ID=90923261

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022212455.3A Pending DE102022212455A1 (en) 2022-11-22 2022-11-22 Method for training a machine learning algorithm

Country Status (1)

Country Link
DE (1) DE102022212455A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017212328A1 (en) 2017-07-19 2019-01-24 Robert Bosch Gmbh Function monitoring for AI modules
DE102019209560A1 (en) 2019-06-28 2020-12-31 Robert Bosch Gmbh Apparatus and method for training a neural network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017212328A1 (en) 2017-07-19 2019-01-24 Robert Bosch Gmbh Function monitoring for AI modules
DE102019209560A1 (en) 2019-06-28 2020-12-31 Robert Bosch Gmbh Apparatus and method for training a neural network

Similar Documents

Publication Publication Date Title
DE102018109195A1 (en) Diagnostic system and method for processing data of a motor vehicle
DE102019217613A1 (en) METHOD OF DIAGNOSING AN ENGINE CONDITION AND DIAGNOSTIC MODELING METHOD FOR THEREOF
DE102019124018A1 (en) Method for optimizing tests of control systems for automated vehicle dynamics systems
EP2854045B1 (en) Method and system for the evaluation of recorded measured values of a system
DE102011086352A1 (en) Method and diagnostic system to support guided troubleshooting in technical systems
DE102008032885A1 (en) Method and device for checking and determining states of a sensor
DE102022212455A1 (en) Method for training a machine learning algorithm
DE102017123205A1 (en) Configuration of a motor vehicle driver assistance device with a neural network during operation
DE102017213771A1 (en) Method and apparatus for detecting anomalies in a communication network
DE102021204040A1 (en) Method, device and computer program for creating training data in the vehicle
DE102018207933A1 (en) Method and verification system for checking a manufactured gear unit
WO2021089591A1 (en) Method for training an artificial neural network, computer program, storage medium, device, artificial neural network and application of the artificial neural network
DE10024211B4 (en) Diagnostic method for the condition of a motor vehicle
DE102022212902A1 (en) Method for training an artificial neural network
DE102022206892A1 (en) Method for determining an optimal architecture of an artificial neural network
DE102022205715A1 (en) Method for providing training data and test data for training a machine learning algorithm
WO2024023091A1 (en) Method for training an artificial neural network
DE102022207072A1 (en) Method for determining an optimal architecture of an artificial neural network
DE102021210322A1 (en) Method for generating a data set for training and/or testing a machine learning algorithm based on an ensemble of data filters
DE202022103792U1 (en) Device for determining an optimal architecture of an artificial neural network
DE102023200400A1 (en) Method for training an autoencoder
DE102016113310A1 (en) A method for evaluating statements of a plurality of sources about a plurality of facts
DE102023201104A1 (en) Method for generating additional training data for training a machine learning algorithm
DE102021207275A1 (en) Method for creating an artificial neural network
DE102022204297A1 (en) Method for training a machine learning algorithm

Legal Events

Date Code Title Description
R163 Identified publications notified