DE102022205835A1 - Method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution - Google Patents

Method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution Download PDF

Info

Publication number
DE102022205835A1
DE102022205835A1 DE102022205835.6A DE102022205835A DE102022205835A1 DE 102022205835 A1 DE102022205835 A1 DE 102022205835A1 DE 102022205835 A DE102022205835 A DE 102022205835A DE 102022205835 A1 DE102022205835 A1 DE 102022205835A1
Authority
DE
Germany
Prior art keywords
machine learning
algorithm
computing nodes
ensemble
learning algorithm
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
DE102022205835.6A
Other languages
German (de)
Inventor
Vitaliy Kondrashov
Tim Meyer
Anke Giliard
Rolf Michael Koehler
Alexander Eckert
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 DE102022205835.6A priority Critical patent/DE102022205835A1/en
Publication of DE102022205835A1 publication Critical patent/DE102022205835A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

Die Erfindung betrifft ein Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung, wobei die wenigstens zwei Rechenknoten über ein Netzwerk kommunikativ miteinander verbunden sind, und wobei das Verfahren folgende Schritte aufweist: Für jeden der wenigstens zwei Rechenknoten, Erfassen einer aktuellen Auslastung des entsprechenden Rechenknotens (2); und für wenigstens einen Algorithmus des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens, jeweils Zuordnen des entsprechenden Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung basierend auf den aktuellen Auslastungen der wenigstens zwei Rechenknoten, Ressourcenanforderungen des entsprechenden Algorithmus des maschinellen Lernens und Informationen über die Ausführung des entsprechenden Algorithmus des maschinellen Lernens.The invention relates to a method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution, wherein the at least two computing nodes are communicatively connected to one another via a network, and wherein the method has the following steps : For each of the at least two computing nodes, recording a current utilization of the corresponding computing node (2); and for at least one machine learning algorithm of the ensemble machine learning algorithm, each assigning the corresponding machine learning algorithm to one of the at least two computing nodes for execution based on the current workloads of the at least two computing nodes, resource requirements of the corresponding machine learning algorithm, and Information about the execution of the corresponding machine learning algorithm.

Description

Die Erfindung betrifft ein Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung und insbesondere ein Verfahren, mit welchem einzelne Algorithmen eines Ensemble-Algorithmus des maschinellen Lernens jeweils derart wenigstens einem Rechenknoten eines Rechensystems zugeordnet werden, dass die Ressourcen des Rechensystems effizient ausgenutzt werden können.The invention relates to a method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution and in particular to a method with which individual algorithms of an ensemble machine learning algorithm are each assigned to at least one computing node of a computing system so that the resources of the computing system can be used efficiently.

Im Bereich der Informationstechnologie können einzelne Aufforderungen beziehungsweise Requests erfordern, dass mehrere Tasks beziehungsweise Prozesse ausgeführt beziehungsweise abgearbeitet werden, um auf die entsprechende Aufforderung zu reagieren. Zudem werden im Bereich des maschinellen Lernens häufig Ensemble-Algorithmen des maschinellen Lernens verwendet, um die Präzision beziehungsweise Genauigkeit der erzeugten Ausgabedaten zu erhöhen. Ein Ensemble-Algorithmus des maschinellen Lernens basiert dabei auf einem Ensemble von Algorithmen des maschinellen Lernens beziehungsweise einem Ausführen mehrere Algorithmen des maschinellen Lernens, wobei anschließend basierend auf den Ergebnissen beziehungsweise Ausgabedaten der einzelnen Algorithmen des maschinellen Lernens ein Gesamtergebnis ermittelt wird. Angewendet werden derartige Ensemble-Algorithmen des maschinellen Lernens beispielsweise im Bereich der End of Line Inspection, das heißt der finalen Sichtprüfung von gefertigten beziehungsweise produzierten Produkten beziehungsweise Bauteilen.In the area of information technology, individual requests or requests may require that several tasks or processes be executed or processed in order to respond to the corresponding request. In addition, in the field of machine learning, machine learning ensemble algorithms are often used to increase the precision or accuracy of the output data generated. An ensemble machine learning algorithm is based on an ensemble of machine learning algorithms or on executing several machine learning algorithms, with an overall result then being determined based on the results or output data of the individual machine learning algorithms. Such machine learning ensemble algorithms are used, for example, in the area of end-of-line inspection, i.e. the final visual inspection of manufactured or produced products or components.

Um Latenzen beziehungsweise Bearbeitungszeiten zu verkürzen, werden die Tasks beziehungsweise Algorithmen des maschinellen Lernens dabei auf mehreren Rechner- beziehungsweise Rechenknoten eines Rechensystems, welche über ein Netzwerk kommunikativ miteinander verbunden sind, ausgeführt. Als nachteilig erweist sich dabei jedoch, dass die Zuordnung der einzelnen Tasks beziehungsweise Algorithmen des maschinellen Lernens zu den Rechenknoten häufig statisch ist, was dazu führen kann, dass die Ressourcen des Rechensystems, beispielsweise Speicher- und/oder Prozessorkapazitäten, nicht optimal ausgenutzt werden.In order to shorten latencies or processing times, the tasks or algorithms of machine learning are carried out on several computer or computing nodes of a computing system, which are communicatively connected to one another via a network. However, the disadvantage is that the assignment of the individual tasks or algorithms of machine learning to the computing nodes is often static, which can lead to the resources of the computing system, for example memory and/or processor capacities, not being optimally utilized.

Während des Betriebs eines derartigen Rechensystems kann es jedoch von Vorteil sein, den Betrieb der Umgebung beziehungsweise des Rechensystems zu optimieren, um bestimmte Ziele zu erfüllen, wie etwa Kosten- und/oder Ressourceneinsparungen. Die Kosteneinsparungen können dabei beispielsweise in Form verringerter Leistungsnutzung, verringerter Wärmeerzeugung und verringerter Abnutzung der Bauteile der Rechnerknoten auftreten. Die Ressourceneinsparungen können ferner beispielsweise ein Einsparen von Speicher- und/oder Prozessorkapazität5en aufweisen.However, during the operation of such a computing system, it may be advantageous to optimize the operation of the environment or the computing system in order to meet certain goals, such as cost and/or resource savings. The cost savings can occur, for example, in the form of reduced power utilization, reduced heat generation and reduced wear on the components of the computer nodes. The resource savings can also include, for example, a saving of memory and/or processor capacity.

Aus der Druckschrift US 2019/0266015 A1 ist ein Verfahren zum Planen von Workloads eine neuronalen Netzes auf einem Edge-Gerät bekannt, wobei für jedes von mehreren neuralen Netzwerkmodellen ein Leistungsmodell empfangen wird, für jede Workload eines neuronalen Netzwerkmodells basierend auf einem zugeordneten Leistungsmodell Parameter bestimmt werden, für jede Workload eines neuronale Netzwerks Verarbeitungskernzuweisungen zu einem von einer Vielzahl von Verarbeitungskernen basierend auf dem entsprechenden Leistungsmodell und einer Verarbeitungskernauslastung bestimmt werden, Bildströme empfangen und einer Workload eines neuronalen Netzwerkmodells zugeordnet werden, und wobei jede Workload eines neuronalen Netzwerkmodells so geplant wird, dass sie basierend auf den Verarbeitungskernzuweisungen auf dem entsprechenden Verarbeitungskern ausgeführt wird.From the publication US 2019/0266015 A1 is a method for scheduling workloads of a neural network on an edge device, wherein a performance model is received for each of a plurality of neural network models, for each workload of a neural network model parameters are determined based on an associated performance model, for each workload of a neural network processing core assignments to one of a plurality of processing cores are determined based on the corresponding performance model and processing core utilization, image streams are received and assigned to a neural network model workload, and each neural network model workload is scheduled to be based on the processing core assignments on the corresponding one processing core is running.

Der Erfindung liegt somit die Aufgabe zugrunde, ein verbessertes Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung anzugeben.The invention is therefore based on the object of specifying an improved method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution.

Die Aufgabe wird gelöst durch ein Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung gemäß den Merkmalen des Patentanspruchs 1.The task is solved by a method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution according to the features of patent claim 1.

Die Aufgabe wird zudem auch gelöst durch ein Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung gemäß den Merkmalen des Patentanspruchs 8.The task is also solved by a control device for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution 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 Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung, wobei die wenigstens zwei Rechenknoten über ein Netzwerk kommunikativ miteinander verbunden sind, und wobei für jeden der wenigstens zwei Rechenknoten eine aktuelle Auslastung des entsprechenden Rechenknotens erfasst wird, und wobei, für wenigstens einen Algorithmus des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens, der entsprechende Algorithmus des maschinellen Lernen zu einem der wenigstens zwei Rechenknoten basierend auf den aktuellen Auslastungen der Rechenknoten, Ressourcenanforderungen des entsprechenden Algorithmus des maschinellen Lernens und Informationen über die Ausführung des entsprechenden Algorithmus des maschinellen Lernens zur Ausführung zugeordnet wird.According to one embodiment of the invention, this object is achieved by a method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution, the at least two computing nodes being communicatively connected to one another via a network, and where for each of the at least two computing nodes a current utilization of the corresponding one Computing node is detected, and wherein, for at least one machine learning algorithm of the ensemble machine learning algorithm, the corresponding machine learning algorithm to one of the at least two computing nodes based on the current workloads of the computing nodes, resource requirements of the corresponding machine learning algorithm and Information about the execution of the corresponding machine learning algorithm is assigned for execution.

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 fact that statistical methods are used to train a data processing system so that it can carry out a specific task without it having originally been explicitly programmed for this purpose. The goal of machine learning is to construct algorithms that can learn from data and make predictions. These algorithms create mathematical models that can be used, for example, to classify data.

Dass ein Algorithmus des maschinellen Lernens einem Rechenknoten zur Ausführung zugeordnet wird, bedeutet ferner, dass der Algorithmus des maschinellen Lernens einem Rechenknoten zugeordnet wird, auf welchem dieser ausgeführt werden soll.The fact that a machine learning algorithm is assigned to a computing node for execution further means that the machine learning algorithm is assigned to a computing node on which it is to be executed.

Unter Rechenknoten beziehungsweise Computer Node wird weiter ein einzelner Rechner eines größeren Rechnerverbundes beziehungsweise Rechensystems verstanden. Ein solcher Rechenknoten kann vom Aufbau her im Wesentlichen einem herkömmlichen Personalcomputer entsprechen, wobei dieser häufig jedoch mit sehr leistungsfähigen Komponenten, beispielsweise CPU, Hauptspeicher, Netzwerkanbindung, oder Kühlsystem ausgestattet ist, und wobei ein Rechenknoten für gewöhnlich auf die Verwendung im Verbund mit anderen Rechenknoten ausgelegt ist.A computing node or computer node is also understood to mean an individual computer in a larger computer network or computing system. Such a computing node can essentially correspond in structure to a conventional personal computer, although this is often equipped with very powerful components, for example CPU, main memory, network connection, or cooling system, and a computing node is usually designed for use in conjunction with other computing nodes is.

Unter aktueller Auslastung eines Rechenknotens wird dabei ein aktueller Wert eines Verhältnisses der tatsächlich vorhandenen beziehungsweise abrufbaren Leistung des entsprechenden Rechenknotens zur real genutzten Leistung des Rechenknotens verstanden.The current utilization of a computing node is understood to mean a current value of a ratio of the actually available or available power of the corresponding computing node to the actually used power of the computing node.

Unter Ressourcenanforderung eines Algorithmus des maschinellen Lernens wird weiter der Ressourcenbedarf beziehungsweise werden die Anforderungen des entsprechenden Algorithmus des maschinellen Lernens im Hinblick auf die zur Ausführung des entsprechenden Algorithmus des maschinellen Lernens benötigten Ressourcen verstanden.The resource requirement of a machine learning algorithm is further understood to mean the resource requirements or the requirements of the corresponding machine learning algorithm with regard to the resources required to execute the corresponding machine learning algorithm.

Unter Informationen über die Ausführung des entsprechenden Algorithmus des maschinellen Lernens werden dabei Informationen darüber, ob der entsprechende Algorithmus des maschinellen Lernens aktuell oder in der Vergangenheit bereits auf einem oder mehreren der wenigstens zwei Rechenknoten ausgeführt wurde, verstanden.Information about the execution of the corresponding machine learning algorithm is understood to mean information about whether the corresponding machine learning algorithm is currently or has already been executed in the past on one or more of the at least two computing nodes.

Somit kann neben der aktuellen Auslastung der Rechenknoten und den Ressourcenanforderungen der einzelnen Algorithmen des maschinellen Lernens bei der Zuordnung von Algorithmen des maschinellen Lernens zu den Rechenknoten auch berücksichtigt werden, ob ein Algorithmus des maschinellen Lernens bereits auf einem der Rechenknoten ausgeführt wird beziehungsweise wurde, das heißt ob bereits eine Version des entsprechenden Algorithmus des maschinellen Lernens in einem Cache oder einem Speicher des entsprechenden Rechenknotens hinterlegt ist. Dass diese Informationen berücksichtigt werden, hat dabei den Vorteil, dass die einzelnen Algorithmen des maschinellen Lernens derart auf die Rechenknoten verteilt werden können, dass die Algorithmen des maschinellen Lernens nicht erneut heruntergeladen werden müssen und auch die zur Ausführung des Ensemble-Algorithmus des maschinellen Lernens insgesamt benötigte Zeit reduziert werden kann, zumal entsprechende Latenzen vermieden werden können. Zudem kann auch der Verkehr beziehungsweise das Datenaufkommen innerhalb des Netzwerkes optimiert werden.In addition to the current utilization of the computing nodes and the resource requirements of the individual machine learning algorithms, when assigning machine learning algorithms to the computing nodes, it can also be taken into account whether a machine learning algorithm is or has already been executed on one of the computing nodes, that is whether a version of the corresponding machine learning algorithm is already stored in a cache or memory of the corresponding computing node. The fact that this information is taken into account has the advantage that the individual machine learning algorithms can be distributed among the computing nodes in such a way that the machine learning algorithms do not have to be downloaded again and also those for executing the machine learning ensemble algorithm as a whole The time required can be reduced, especially since corresponding latencies can be avoided. In addition, the traffic and data volume within the network can also be optimized.

Insgesamt wird somit ein verbessertes Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung angegeben.Overall, an improved method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution is thus provided.

Dabei kann das Verfahren weiter ein Speichern der Zuordnung des wenigstens einen Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten in einem Zuordnungsplan aufweisen.The method can further include storing the assignment of the at least one machine learning algorithm to one of the at least two computing nodes in an assignment plan.

Unter einem Zuordnungsplan wird dabei ein Plan beziehungsweise Ablaufschema verstanden, in welchem die bestimmten Zuordnungen hinterlegt werden.An assignment plan is understood to be a plan or flowchart in which the specific assignments are stored.

Dass die bestimmte Zuordnung in einem Zuordnungsplan gespeichert beziehungsweise hinterlegt werden, hat dabei den Vorteil, dass die Zuordnung zu einem späteren Zeitpunkt nicht noch einmal neu bestimmt werden muss, falls der entsprechende Algorithmus des maschinellen Lernens nicht direkt auf dem zugeordneten Rechenknoten ausgeführt werden kann, wodurch noch zusätzlich Ressourcen eingespart werden können.The fact that the specific assignment is saved or stored in an assignment plan has the advantage that the assignment does not have to be redetermined again at a later point in time if the corresponding machine learning algorithm cannot be executed directly on the assigned computing node, whereby additional resources can be saved.

Mit einer weiteren Ausführungsform der Erfindung wird auch ein Verfahren zum Überprüfen eines produzierten Bauteils angegeben, wobei das Überprüfen des produzierten Bauteils ein Ausführen eines Ensemble-Algorithmus des maschinellen Lernens auf wenigstens zwei über ein Netzwerk kommunikativ miteinander verbundenen Rechenknoten aufweist, und wobei das Verfahren ein Bereitstellen des Ensemble-Algorithmus des maschinellen Lernens zum Überprüfen des produzierten Bauteils, und ein Überprüfen des produzierten Bauteils durch Ausführen des Ensemble-Algorithmus des maschinellen Lernens aufweist, wobei das Ausführen des Ensemble-Algorithmus des maschinellen Lernens ein jeweiliges Zuordnen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung durch ein obenstehend beschriebenes Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung aufweist.A further embodiment of the invention also provides a method for checking a produced component, wherein checking the produced component includes executing a machine learning ensemble algorithm on at least two computing nodes that are communicatively connected to one another via a network, and wherein the method includes providing the machine learning ensemble algorithm for checking the produced component, and checking the produced component by executing the machine learning ensemble algorithm, wherein executing the machine learning ensemble algorithm includes respectively assigning the individual machine learning algorithms Ensemble machine learning algorithm to one of the at least two computing nodes for execution by a method described above for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution.

Somit wird ein Verfahren zum Überprüfen eines produzierten Bauteils angegeben, welches auf einem verbesserten Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung basiert. Insbesondere wird dabei neben der aktuellen Auslastung der Rechenknoten und den Ressourcenanforderungen der einzelnen Algorithmen des maschinellen Lernens bei der Zuordnung von Algorithmen des maschinellen Lernens zu den Rechenknoten auch berücksichtigt, ob ein Algorithmus des maschinellen Lernens bereits auf einem der Rechenknoten ausgeführt wird beziehungsweise wurde, das heißt ob bereits eine Version des entsprechenden Algorithmus des maschinellen Lernens in einem Cache oder einem Speicher des entsprechenden Rechenknotens hinterlegt ist. Dass diese Informationen berücksichtigt werden, hat dabei den Vorteil, dass die einzelnen Algorithmen des maschinellen Lernens derart auf die Rechenknoten verteilt werden können, dass die Algorithmen des maschinellen Lernens nicht erneut heruntergeladen werden müssen und auch die zur Ausführung des Ensemble-Algorithmus des maschinellen Lernens insgesamt benötigte Zeit reduziert werden kann, zumal dabei Latenzen vermieden werden können. Zudem kann auch der Verkehr beziehungsweise das Datenaufkommen innerhalb des Netzwerkes optimiert werden.Thus, a method for checking a produced component is provided, which is based on an improved method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution. In particular, in addition to the current utilization of the computing nodes and the resource requirements of the individual machine learning algorithms, when assigning machine learning algorithms to the computing nodes, it is also taken into account whether a machine learning algorithm is or has already been executed on one of the computing nodes, that is whether a version of the corresponding machine learning algorithm is already stored in a cache or memory of the corresponding computing node. The fact that this information is taken into account has the advantage that the individual machine learning algorithms can be distributed among the computing nodes in such a way that the machine learning algorithms do not have to be downloaded again and also those for executing the machine learning ensemble algorithm as a whole The time required can be reduced, especially since latencies can be avoided. In addition, the traffic and data volume within the network can also be optimized.

In einer Ausführungsform weist der Schritt des Bereitstellens des Ensemble-Algorithmus des maschinellen Lernens zum Überprüfen des produzierten Bauteils weiter ein Empfangen einer Aufforderung, das produzierte Bauteil zu überprüfen, und ein Auswählen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens basierend auf der empfangenen Aufforderung, auf.In one embodiment, the step of providing the ensemble machine learning algorithm to inspect the produced component further comprises receiving a request to inspect the produced component and selecting the individual machine learning algorithms based on the ensemble machine learning algorithm the request received.

Unter Aufforderung beziehungsweise Request wird dabei allgemein ein Befehl zur Ausführung einer speziellen Funktion verstanden, wobei die Aufforderung für gewöhnlich das zu überprüfende Bauteil kennzeichnende Daten aufweist. So kann die Aufforderung beispielsweise, falls es sich bei dem produzierten Bauteil um einen mit Halbleiterchips bestückten Wafer handelt, eine Wafermap beziehungsweise eine Oberfläche des Wafers kennzeichnende Bilddaten und entsprechende Metadaten aufweisen.A request is generally understood to be a command to execute a special function, with the request usually having data identifying the component to be checked. For example, if the component produced is a wafer equipped with semiconductor chips, the request can have a wafer map or image data characterizing a surface of the wafer and corresponding metadata.

Hierdurch kann sichergestellt werden, dass genau die zur Ausführung der mit der empfangenen Aufforderung verknüpften Funktion benötigten Algorithmen des maschinellen Lernens ausgeführt werden, wodurch weiter auch sichergestellt werden kann, dass nicht unnötig Ressourcen durch die Ausführung nicht benötigter Algorithmen des maschinellen Lernens verbraucht werden.This can ensure that exactly the machine learning algorithms required to execute the function associated with the received request are executed, which can also ensure that resources are not unnecessarily consumed by executing unneeded machine learning algorithms.

Weiter kann das Verfahren auch ein Vorverarbeiten der empfangenen Aufforderung aufweisen.Furthermore, the method can also include pre-processing of the received request.

Unter Vorverarbeitung der empfangenen Aufforderung wird dabei verstanden, dass in der Aufforderung enthaltene, dass gefertigte Bauteil kennzeichnende Daten vorverarbeitet werden, beispielsweise Ausreißer in den Daten entfernt und/oder die Daten bereinigt werden. Beispielsweise kann, falls es sich bei dem gefertigten Bauteil um einen mit Halbleiterchips bestückten Wafer handelt, das Vorverarbeiten der Aufforderung ein Anpassen der Helligkeit einer entsprechenden Wafermap aufweisen.Preprocessing of the received request is understood to mean that data that characterizes the manufactured component contained in the request is preprocessed, for example outliers in the data are removed and/or the data is cleaned. For example, if the manufactured component is a wafer equipped with semiconductor chips, the preprocessing of the request can include adjusting the brightness of a corresponding wafer map.

Durch Vorverarbeitung der Aufforderung beziehungsweise von in der Aufforderung enthaltenen Daten können somit weiter, insbesondere beim anschließenden Verarbeiten der entsprechenden Daten benötigte Ressourcen eingespart werden.By pre-processing the request or the data contained in the request, resources required can be saved, particularly during the subsequent processing of the corresponding data.

Zudem kann das Verfahren auch ein Überprüfen, ob das gefertigte Bauteil innerhalb einer hierfür vorgesehenen Zeit überprüft werden kann, basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung aufweisen. Somit können Aufforderungen beziehungsweise Requests, welche nicht innerhalb einer vorgegebenen beziehungsweise vorgeschriebenen Zeit ausgeführt werden können, direkt basierend auf den jeweiligen bestimmten Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung und somit insbesondere noch vor dem eigentlichen Ausführen der einzelnen Algorithmen des maschinellen Lernens, das heißt frühzeitig verworfen werden.In addition, the method can also include checking whether the manufactured component can be checked within a time provided for this purpose, based on the respective assignments of the individual machine learning algorithms of the machine learning ensemble algorithm to one of the at least two computing nodes for execution. This means that prompts or requests that cannot be executed within a specified or prescribed time can be directly based on the respective specific assignments of the individual machine learning algorithms Ensemble machine learning algorithm to one of the at least two computing nodes for execution and thus in particular before the individual machine learning algorithms are actually executed, i.e. discarded at an early stage.

Bei dem produzierten Bauteil kann es sich ferner um einen mit Halbleiterchips bestückten Wafer handeln.The component produced can also be a wafer equipped with semiconductor chips.

So ist es insbesondere bei der Fertigung von mit Halbleiterchips bestückten Wafern vonnöten, diese nach Fertigung einer Prüfung zu unterziehen, basierend auf welcher beispielsweise defekte Halbleiterchips manuell und/oder automatisch verworfen werden können.In particular, when producing wafers equipped with semiconductor chips, it is necessary to subject them to a test after production, based on which, for example, defective semiconductor chips can be discarded manually and/or automatically.

Dabei, dass es sich bei dem produzierten Bauteil um einen mit Halbleiterchips bestückten Wafer handelt, handelt es sich jedoch nur um eine mögliche Ausführungsform. So kann es sich bei dem produzierten Bauteil auch um jedes weitere Bauteil, welches nach Fertigung einer Prüfung, beispielsweise einer Sichtprüfung unterzogen wird, handeln, beispielsweise im Rahmen des Automotive End of Line Testing.However, the fact that the component produced is a wafer equipped with semiconductor chips is only one possible embodiment. The produced component can also be any other component that is subjected to a test, for example a visual inspection, after production, for example as part of automotive end of line testing.

Mit einer weiteren Ausführungsform der Erfindung wird weiter auch ein Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung angegeben, wobei die wenigstens zwei Rechenknoten über ein Netzwerk kommunikativ miteinander verbunden sind, und wobei das Steuergerät eine Bereitstellungseinheit, welche ausgebildet ist, für jeden der wenigstens zwei Rechenknoten eine aktuelle Auslastung des entsprechenden Rechenknotens bereitzustellen, und eine Zuordnungseinheit, welche ausgebildet ist, für wenigstens einen Algorithmus des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens, jeweils den entsprechenden Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten basierend auf den aktuellen Auslastungen der Rechenknoten, Ressourcenanforderungen des entsprechenden Algorithmus des maschinellen Lernens und Informationen über die Ausführung des entsprechenden Algorithmus des maschinellen Lernens zur Ausführung zuzuordnen.A further embodiment of the invention also provides a control device for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution, the at least two computing nodes being communicatively connected to one another via a network, and wherein the control device has a provision unit which is designed to provide a current utilization of the corresponding computing node for each of the at least two computing nodes, and an allocation unit which is designed to provide at least one machine learning algorithm of the machine learning ensemble algorithm, respectively to assign the corresponding machine learning algorithm to one of the at least two computing nodes based on the current workloads of the computing nodes, resource requirements of the corresponding machine learning algorithm and information about the execution of the corresponding machine learning algorithm for execution.

Somit wird ein verbessertes Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung angegeben. Insbesondere wird dabei neben der aktuellen Auslastung der Rechenknoten und den Ressourcenanforderungen der einzelnen Algorithmen des maschinellen Lernens bei der Zuordnung von Algorithmen des maschinellen Lernens zu den Rechenknoten auch berücksichtigt, ob ein Algorithmus des maschinellen Lernens bereits auf einem der Rechenknoten ausgeführt wird beziehungsweise wurde, das heißt ob bereits eine Version des entsprechenden Algorithmus des maschinellen Lernens in einem Cache oder einem Speicher des entsprechenden Rechenknotens hinterlegt ist. Dass diese Informationen berücksichtigt werden, hat dabei den Vorteil, dass die einzelnen Algorithmen des maschinellen Lernens derart auf die Rechenknoten verteilt werden können, dass die Algorithmen des maschinellen Lernens nicht erneut heruntergeladen werden müssen und auch die zur Ausführung des Ensemble-Algorithmus des maschinellen Lernens insgesamt benötigte Zeit reduziert werden kann, zumal dabei Latenzen vermieden werden können. Zudem kann auch der Verkehr beziehungsweise das Datenaufkommen innerhalb des Netzwerkes optimiert werden.Thus, an improved controller for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution is provided. In particular, in addition to the current utilization of the computing nodes and the resource requirements of the individual machine learning algorithms, when assigning machine learning algorithms to the computing nodes, it is also taken into account whether a machine learning algorithm is or has already been executed on one of the computing nodes, that is whether a version of the corresponding machine learning algorithm is already stored in a cache or memory of the corresponding computing node. The fact that this information is taken into account has the advantage that the individual machine learning algorithms can be distributed among the computing nodes in such a way that the machine learning algorithms do not have to be downloaded again and also those for executing the machine learning ensemble algorithm as a whole The time required can be reduced, especially since latencies can be avoided. In addition, the traffic and data volume within the network can also be optimized.

Dabei kann das Steuergerät weiter einen Speicher zum Speichern der Zuordnung des wenigstens einen Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten in einem Zuordnungsplan aufweisen. Dass die bestimmte Zuordnung in einem Zuordnungsplan gespeichert beziehungsweise hinterlegt werden, hat dabei den Vorteil, dass die Zuordnung zu einem späteren Zeitpunkt nicht noch einmal bestimmt werden muss, falls der entsprechende Algorithmus des maschinellen Lernens nicht direkt auf dem zugeordneten Rechenknoten ausgeführt werden kann, wodurch noch zusätzlich Ressourcen eingespart werden können.The control device can further have a memory for storing the assignment of the at least one machine learning algorithm to one of the at least two computing nodes in an assignment plan. The fact that the specific assignment is saved or stored in an assignment plan has the advantage that the assignment does not have to be determined again at a later point in time if the corresponding machine learning algorithm cannot be executed directly on the assigned computing node, which means that additional resources can be saved.

Mit einer weiteren Ausführungsform der Erfindung wird zudem auch ein Steuergerät zum Überprüfen eines produzierten Bauteils angegeben, wobei das Überprüfen des produzierten Bauteils ein Ausführen eines Ensemble-Algorithmus des maschinellen Lernens auf wenigstens zwei über ein Netzwerk kommunikativ miteinander verbundenen Rechenknoten aufweist, und wobei das Steuergerät eine Bereitstellungseinheit, welche ausgebildet ist, den Ensemble-Algorithmus des maschinellen Lernens zum Überprüfen des produzierten Bauteils bereitzustellen, und eine Überprüfungseinheit, welche ausgebildet ist, das produzierte Bauteil durch Ausführen des Ensemble-Algorithmus des maschinellen Lernens zu überprüfen, wobei das Ausführen des Ensemble-Algorithmus des maschinellen Lernens ein jeweiliges Zuordnen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung durch ein obenstehend beschriebenes Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung aufweist.A further embodiment of the invention also provides a control device for checking a produced component, wherein checking the produced component involves executing an ensemble algorithm of machine learning on at least two computing nodes that are communicatively connected to one another via a network, and wherein the control device has a Providing unit, which is designed to provide the machine learning ensemble algorithm for checking the produced component, and a checking unit, which is designed to check the produced component by executing the machine learning ensemble algorithm, wherein executing the ensemble algorithm of machine learning, a respective assignment of the individual machine learning algorithms of the ensemble machine learning algorithm to one of the at least two computing nodes for execution by a control device described above for assigning at least one machine learning algorithm of an ensemble algorithm mus of machine learning to one of at least two computing nodes for execution.

Somit wird ein Steuergerät zum Überprüfen eines produzierten Bauteils angegeben, welches auf einem verbesserten Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung basiert. Insbesondere wird dabei neben der aktuellen Auslastung der Rechenknoten und den Ressourcenanforderungen der einzelnen Algorithmen des maschinellen Lernens bei der Zuordnung von Algorithmen des maschinellen Lernens zu den Rechenknoten auch berücksichtigt, ob ein Algorithmus des maschinellen Lernens bereits auf einem der Rechenknoten ausgeführt wird beziehungsweise wurde, das heißt ob bereits eine Version des entsprechenden Algorithmus des maschinellen Lernens in einem Cache oder einem Speicher des entsprechenden Rechenknotens hinterlegt ist. Dass diese Informationen berücksichtigt werden, hat dabei den Vorteil, dass die einzelnen Algorithmen des maschinellen Lernens derart auf die Rechenknoten verteilt werden können, dass die Algorithmen des maschinellen Lernens nicht erneut heruntergeladen werden müssen und auch die zur Ausführung des Ensemble-Algorithmus des maschinellen Lernens insgesamt benötigte Zeit reduziert werden kann, zumal dabei Latenzen vermieden werden können. Zudem kann auch der Verkehr beziehungsweise das Datenaufkommen innerhalb des Netzwerkes optimiert werden.Thus, a control device for checking a produced component is specified, which is based on an improved control device for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution. In particular, in addition to the current utilization of the computing nodes and the resource requirements of the individual machine learning algorithms, when assigning machine learning algorithms to the computing nodes, it is also taken into account whether a machine learning algorithm is or has already been executed on one of the computing nodes, that is whether a version of the corresponding machine learning algorithm is already stored in a cache or memory of the corresponding computing node. The fact that this information is taken into account has the advantage that the individual machine learning algorithms can be distributed among the computing nodes in such a way that the machine learning algorithms do not have to be downloaded again and also those for executing the machine learning ensemble algorithm as a whole The time required can be reduced, especially since latencies can be avoided. In addition, the traffic and data volume within the network can also be optimized.

In einer Ausführungsform weist die Bereitstellungseinheit weiter eine Empfangseinheit zum Empfangen einer Aufforderung, das produzierte Bauteil zu überprüfen, und eine Auswahleinheit, welche ausgebildet ist, die einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens basierend auf der empfangenen Aufforderung auszuwählen, auf. Hierdurch kann sichergestellt werden, dass genau die zur Ausführung der mit der empfangenen Aufforderung verknüpften Funktion benötigten Algorithmen des maschinellen Lernens ausgeführt werden, wodurch weiter auch sichergestellt werden kann, dass nicht unnötig Ressourcen durch die Ausführung nicht benötigter Algorithmen des maschinellen Lernens verbraucht werden.In one embodiment, the provision unit further has a receiving unit for receiving a request to check the produced component, and a selection unit which is designed to select the individual machine learning algorithms of the ensemble machine learning algorithm based on the received request. This can ensure that exactly the machine learning algorithms required to execute the function associated with the received request are executed, which can also ensure that resources are not unnecessarily consumed by executing unneeded machine learning algorithms.

Dabei kann das Steuergerät weiter eine Vorverarbeitungseinheit, welche ausgebildet ist, die empfangene Aufforderung vorzuverarbeiten, aufweisen. Durch Vorverarbeitung der Aufforderung beziehungsweise von in der Aufforderung enthaltenen Daten können dabei weiter, insbesondere beim anschließenden Weiterverarbeiten der entsprechenden Daten benötigte Ressourcen eingespart werden.The control device can further have a pre-processing unit, which is designed to pre-process the received request. By pre-processing the request or data contained in the request, resources required can be saved, particularly during the subsequent further processing of the corresponding data.

Zudem kann das Steuergerät weiter eine Überprüfungseinheit, welche ausgebildet ist, basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung zu überprüfen, ob das produzierte Bauteil innerhalb einer hierfür vorgesehenen Zeit überprüft werden kann, aufweisen. Somit können Aufforderungen beziehungsweise Requests, welche nicht innerhalb einer vorgegebenen beziehungsweise vorgeschriebenen Zeit ausgeführt werden können, direkt basierend auf den jeweiligen bestimmten Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung und somit insbesondere noch vor dem eigentlichen Ausführen der einzelnen Algorithmen des maschinellen Lernens, das heißt frühzeitig verworfen werden.In addition, the control device can further have a checking unit which is designed to check, based on the respective assignments of the individual machine learning algorithms of the ensemble machine learning algorithm to one of the at least two computing nodes for execution, whether the component produced is within a time intended for this purpose can be checked. Thus, prompts or requests that cannot be executed within a predetermined or prescribed time can be directly based on the respective specific assignments of the individual machine learning algorithms of the machine learning ensemble algorithm to one of the at least two computing nodes for execution and thus in particular before the individual machine learning algorithms are actually executed, i.e. discarded early on.

Bei dem produzierten Bauteil kann es sich ferner wiederum um einen mit Halbleiterchips bestückten Wafer handeln. So ist es insbesondere bei der Fertigung von mit Halbleiterchips bestückten Wafern vonnöten, diese nach Fertigung einer Prüfung zu unterziehen, basierend auf welcher beispielsweise defekte Halbleiterchips manuell und/oder automatisch verworfen werden können.The component produced can also be a wafer equipped with semiconductor chips. In particular, when producing wafers equipped with semiconductor chips, it is necessary to subject them to a test after production, based on which, for example, defective semiconductor chips can be discarded manually and/or automatically.

Dabei, dass es sich bei dem produzierten Bauteil um einen mit Halbleiterchips bestückten Wafer handelt, handelt es sich jedoch wiederum nur um eine mögliche Ausführungsform. So kann es sich bei dem produzierten Bauteil auch um jedes weitere Bauteil, welches nach Fertigung einer Prüfung, beispielsweise einer Sichtprüfung unterzogen wird, handeln, beispielsweise im Rahmen des Automotive End of Line Testing.However, the fact that the component produced is a wafer equipped with semiconductor chips is again only a possible embodiment. The produced component can also be any other component that is subjected to a test, for example a visual inspection, after production, for example as part of automotive end of line testing.

Zusammenfassend ist festzustellen, dass mit der vorliegenden Erfindung ein Verfahren angegeben wird, mit welchem einzelne Algorithmen eines Ensemble-Algorithmus des maschinellen Lernens jeweils derart wenigstens einem Rechenknoten eines Rechensystems zugeordnet werden, dass die Ressourcen des Rechensystems effizient ausgenutzt werden können.In summary, it can be stated that the present invention provides a method with which individual algorithms of an ensemble algorithm of machine learning are each assigned to at least one computing node of a computing system in such a way that the resources of the computing system can be used efficiently.

Die beschriebenen Ausgestaltungen und Weiterbildungen lassen sich beliebig miteinander kombinieren.The configurations and further developments described can be combined with one another as desired.

Weitere mögliche Ausgestaltungen, Weiterbildungen und Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmalen der Erfindung.Further possible refinements, further developments and implementations of the invention also include combinations of features of the invention described previously or below with regard to the exemplary embodiments that are not explicitly mentioned.

Kurze Beschreibung der ZeichnungenBrief 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.The accompanying drawings are intended to provide further understanding of embodiments of the invention. They illustrate embodiments and, in connection with the description, serve to explain principles and concepts of the invention.

Andere Ausführungsformen und viele der genannten Vorteile ergeben sich im Hinblick auf die Zeichnungen. Die dargestellten Elemente der Zeichnungen sind nicht notwendigerweise maßstabsgetreu zueinander gezeigt.Other embodiments and many of the advantages mentioned arise with regard to the drawings. The illustrated elements of the drawings are not necessarily shown to scale to one another.

Es zeigen:

  • 1. ein Flussdiagramm eines Verfahrens zum Überprüfen eines produzierten Bauteils gemäß Ausführungsformen der Erfindung; und
  • 2 ein schematisches Blockschaltbild eines Systems zum Überprüfen eines produzierten Bauteils gemäß Ausführungsformen der Erfindung.
Show it:
  • 1 . a flowchart of a method for checking a produced component according to embodiments of the invention; and
  • 2 a schematic block diagram of a system for checking a produced component according to embodiments of the invention.

In den Figuren der Zeichnungen bezeichnen gleiche Bezugszeichen gleiche oder funktionsgleiche Elemente, Bauteile oder Komponenten, soweit nichts Gegenteiliges angegeben ist.In the figures of the drawings, the same reference numerals designate the same or functionally identical elements, parts or components, unless otherwise stated.

1 zeigt ein Flussdiagramm eines Verfahrens zum Überprüfen eines produzierten Bauteils 1 gemäß Ausführungsformen der Erfindung. 1 shows a flowchart of a method for checking a produced component 1 according to embodiments of the invention.

Im Bereich der Informationstechnologie können einzelne Aufforderungen beziehungsweise Requests erfordern, dass mehrere Tasks beziehungsweise Prozesse ausgeführt beziehungsweise abgearbeitet werden, um auf die entsprechende Aufforderung zu reagieren. Zudem werden im Bereich des maschinellen Lernens häufig Ensemble-Algorithmen des maschinellen Lernens verwendet, um die Präzision beziehungsweise Genauigkeit der erzeugten Ausgabedaten zu erhöhen. Ein Ensemble-Algorithmus des maschinellen Lernens basiert dabei auf einem Ensemble von Algorithmen des maschinellen Lernens beziehungsweise einem Ausführen mehrere Algorithmen des maschinellen Lernens, wobei anschließend basierend auf den Ergebnissen beziehungsweise Ausgabedaten der einzelnen Algorithmen des maschinellen Lernens ein Gesamtergebnis ermittelt wird.In the area of information technology, individual requests or requests may require that several tasks or processes be executed or processed in order to respond to the corresponding request. In addition, in the field of machine learning, machine learning ensemble algorithms are often used to increase the precision or accuracy of the output data generated. An ensemble machine learning algorithm is based on an ensemble of machine learning algorithms or on executing several machine learning algorithms, with an overall result then being determined based on the results or output data of the individual machine learning algorithms.

Angewendet werden derartige Ensemble-Algorithmen des maschinellen Lernens beispielsweise im Bereich der End of Line Inspection, das heißt der finalen Sichtprüfung von gefertigten beziehungsweise produzierten Produkten beziehungsweise Bauteilen. Beispielsweise müssen bei der Waferfertigung mehrere Waferschichten basierend auf mehreren Algorithmen des maschinellen Lernens klassifiziert werden, wobei diese Klassifizierung für gewöhnlich innerhalb weniger Minuten und mit begrenzten zur Verfügung stehenden Computerressourcen erfolgen muss.Such machine learning ensemble algorithms are used, for example, in the area of end-of-line inspection, i.e. the final visual inspection of manufactured or produced products or components. For example, in wafer manufacturing, multiple layers of wafers must be classified based on multiple machine learning algorithms, and this classification must usually be accomplished within a few minutes and with limited computing resources available.

Um Latenzen beziehungsweise Bearbeitungszeiten zu verkürzen, werden die Tasks beziehungsweise Algorithmen des maschinellen Lernens dabei auf mehreren Rechner- beziehungsweise Rechenknoten eines Rechensystems, welche über ein Netzwerk kommunikativ miteinander verbunden sind, ausgeführt. Als nachteilig erweist sich dabei jedoch, dass die Zuordnung der einzelnen Tasks beziehungsweise Algorithmen des maschinellen Lernens zu den Rechenknoten häufig statisch ist, was dazu führen kann, dass die Ressourcen des Rechensystems, beispielsweise Speicher- und/oder Prozessorkapazitäten, nicht optimal ausgenutzt werden.In order to shorten latencies or processing times, the tasks or algorithms of machine learning are carried out on several computer or computing nodes of a computing system, which are communicatively connected to one another via a network. However, the disadvantage is that the assignment of the individual tasks or algorithms of machine learning to the computing nodes is often static, which can lead to the resources of the computing system, for example memory and/or processor capacities, not being optimally utilized.

1 zeigt dabei ein Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung, wobei die wenigstens zwei Rechenknoten über ein Netzwerk kommunikativ miteinander verbunden sind, und wobei in einem Schritt 2 für jeden der wenigstens zwei Rechenknoten jeweils eine aktuelle Auslastung des entsprechenden Rechenknotens erfasst wird, und wobei in einem Schritt 3 für wenigstens einen Algorithmus des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens jeweils der entsprechende Algorithmus des maschinellen Lernen zu einem der wenigstens zwei Rechenknoten basierend auf den aktuellen Auslastungen der Rechenknoten, Ressourcenanforderungen des entsprechenden Algorithmus des maschinellen Lernens und Informationen über die Ausführung des entsprechenden Algorithmus des maschinellen Lernens zur Ausführung zugeordnet wird. 1 shows an assignment of at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution, the at least two computing nodes being communicatively connected to one another via a network, and wherein in a step 2 for each of the at least two computing nodes each record a current utilization of the corresponding computing node, and in a step 3 for at least one machine learning algorithm of the machine learning ensemble algorithm, the corresponding machine learning algorithm is assigned to one of the at least two computing nodes based on the current utilization the computing node, resource requirements of the corresponding machine learning algorithm, and information about the execution of the corresponding machine learning algorithm for execution.

Somit kann neben der aktuellen Auslastung der Rechenknoten und den Ressourcenanforderungen der einzelnen Algorithmen des maschinellen Lernens bei der Zuordnung von Algorithmen des maschinellen Lernens zu den Rechenknoten auch berücksichtigt werden, ob ein Algorithmus des maschinellen Lernens bereits auf einem der Rechenknoten ausgeführt wird beziehungsweise wurde, das heißt ob bereits eine Version des entsprechenden Algorithmus des maschinellen Lernens in einem Cache oder einem Speicher des entsprechenden Rechenknotens hinterlegt ist. Dass diese Informationen berücksichtigt werden, hat dabei den Vorteil, dass die einzelnen Algorithmen des maschinellen Lernens derart auf die Rechenknoten verteilt werden können, dass die Algorithmen des maschinellen Lernens nicht erneut auf die Rechenknoten heruntergeladen werden müssen und somit auch die zur Ausführung des Ensemble-Algorithmus des maschinellen Lernens insgesamt benötigte Zeit reduziert werden kann, zumal dabei Latenzen vermieden werden können. Zudem kann auch der Verkehr beziehungsweise das Datenaufkommen innerhalb des Netzwerkes optimiert werden.In addition to the current utilization of the computing nodes and the resource requirements of the individual machine learning algorithms, when assigning machine learning algorithms to the computing nodes, it can also be taken into account whether a machine learning algorithm is or has already been executed on one of the computing nodes, that is whether a version of the corresponding machine learning algorithm is already stored in a cache or memory of the corresponding computing node. The fact that this information is taken into account has the advantage that the individual machine learning algorithms can be distributed among the computing nodes in such a way that the machine learning algorithms are not distributed to the computing nodes again must be loaded and thus the overall time required to execute the machine learning ensemble algorithm can be reduced, especially since latencies can be avoided. In addition, the traffic and data volume within the network can also be optimized.

Insgesamt zeigt 1 somit ein verbessertes Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung.Overall shows 1 thus, an improved method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution.

Gemäß dem dargestellten Verfahren 1 kann dabei, falls einer der Algorithmen des maschinellen Lernens bereits auf einen der Rechenknoten heruntergeladen wurde, der Algorithmus des maschinellen Lernens dem entsprechenden Rechenknoten zugeordnet werden. Falls dieser Rechenknoten dabei aktuell keine beziehungsweise nicht genügend freie Ressourcen zur Ausführung des Algorithmus des maschinellen Lernens aufweist, kann ein Request zur Ausführung des Algorithmus des maschinellen Lernens ferner beispielsweise so lange in eine Warteschlange des entsprechenden Rechenknotens gestellt werden, bis dieser wieder ausreichend freie Ressourcen aufweist.According to the method 1 shown, if one of the machine learning algorithms has already been downloaded to one of the computing nodes, the machine learning algorithm can be assigned to the corresponding computing node. If this computing node currently has no or not enough free resources to execute the machine learning algorithm, a request to execute the machine learning algorithm can, for example, be placed in a queue of the corresponding computing node until it has sufficient free resources again .

Falls der Algorithmus des maschinellen Lernens hingegen noch nicht auf einen der Rechenknoten heruntergeladen wurde, kann basierend auf der jeweiligen aktuellen Auslastung der Rechenknoten und den Ressourcenanforderungen des Algorithmus des maschinellen Lernens entschieden werden, welchem der wenigstens zwei Rechenknoten der Algorithmus des maschinellen Lernens zur Ausführung zugeordnet wird. Falls dieser Rechenknoten dabei wiederum aktuell keine beziehungsweise nicht genügend freie Ressourcen zur Ausführung des Algorithmus des maschinellen Lernens aufweist, kann ein Request zur Ausführung des Algorithmus des maschinellen Lernens ferner wiederum beispielsweise so lange in eine Warteschlange des entsprechenden Rechenknotens gestellt werden, bis dieser wieder ausreichend freie Ressourcen aufweist.However, if the machine learning algorithm has not yet been downloaded to one of the computing nodes, a decision can be made based on the respective current utilization of the computing nodes and the resource requirements of the machine learning algorithm as to which of the at least two computing nodes the machine learning algorithm will be assigned for execution . If this computing node currently has no or not enough free resources to execute the machine learning algorithm, a request to execute the machine learning algorithm can, for example, be placed in a queue of the corresponding computing node until it has sufficient free resources again has resources.

Die aktuelle Auslastung der einzelnen Rechenknoten kann dabei weiter beispielsweise jeweils basierend auf Remote Procedure Complete (RPC) Calls ermittelt werden.The current utilization of the individual computing nodes can be determined, for example, based on Remote Procedure Complete (RPC) calls.

Bei den einzelnen Algorithmen des maschinellen Lernens kann es sich ferner beispielsweise jeweils um künstliche neuronale Netze handeln.The individual machine learning algorithms can also be artificial neural networks, for example.

1 zeigt dabei weiter einen Schritt 4 eines Speicherns der Zuordnung des wenigstens einen Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten in einem Zuordnungsplan. 1 further shows a step 4 of saving the assignment of the at least one machine learning algorithm to one of the at least two computing nodes in an assignment plan.

Insbesondere kann dabei ein Zustellungsplan erstellt werden, welcher Informationen darüber enthält, wann welcher Algorithmus des maschinellen Lernens auf welchem Rechenknoten ausgeführt werden soll, das heißt wann welcher Request an welchen Rechenknoten gesendet werden soll und welche Algorithmen des maschinellen Lernens auf welchem Rechenknoten angewendet werden sollen.In particular, a delivery plan can be created which contains information about when which machine learning algorithm should be executed on which computing node, that is, when which request should be sent to which computing node and which machine learning algorithms should be applied on which computing node.

Der Zuordnungsplan kann dabei ferner beispielsweise in einer Zuordnungsdatenbank hinterlegt werden.The assignment plan can also be stored in an assignment database, for example.

Das dargestellte Verfahren zum Überprüfen eines produzierten Bauteils 1 weist zudem einen Schritt 5 eines Bereitstellen des Ensemble-Algorithmus des maschinellen Lernens zum Überprüfen des produzierten Bauteils und einen Schritt 6 eines jeweiligen Ausführens der einzelnen Algorithmen des maschinellen Lernens auf einem der wenigstens zwei Rechenknoten basierend auf einer Schritt 3 erzeugten jeweiligen Zuordnung der Algorithmen des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten beziehungsweise einem in Schritt 4 hinterlegten Zuordnungsplan auf.The illustrated method for checking a produced component 1 also has a step 5 of providing the machine learning ensemble algorithm for checking the produced component and a step 6 of each executing the individual machine learning algorithms on one of the at least two computing nodes based on one Step 3 generates the respective assignment of the machine learning algorithms to one of the at least two computing nodes or to an assignment plan stored in step 4.

Gemäß den Ausführungsformen der 1 weist der Schritt 5 des Bereitstellens des Ensemble-Algorithmus des maschinellen Lernens zum Überprüfen des produzierten Bauteils dabei einen Schritt 7 eines Empfangens einer Aufforderung, das produzierte Bauteil zu überprüfen, und einen Schritt 8 eines Auswählens der entsprechenden einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens basierend auf der empfangenen Aufforderung, auf.According to the embodiments of 1 the step 5 of providing the ensemble machine learning algorithm for checking the produced component includes a step 7 of receiving a request to check the produced component and a step 8 of selecting the corresponding individual machine learning algorithms of the ensemble algorithm of machine learning based on the request received.

So können beispielsweise im Rahmen der Waferfertigung für jeden produzierten Wafer jeweils eine Vielzahl von Algorithmen des maschinellen Lernens beispielsweise basierend auf historischen Daten und/oder Deep-Learning Techniken trainiert worden sein. Da jedoch immer nur ein Teil der Vielzahl an insgesamt trainierten Algorithmen des maschinellen Lernens ausgeführt wird, ist es dabei wirtschaftlich nicht sinnvoll, für jeden Algorithmus des maschinellen Lernens einen eigenen Rechenknoten vorzusehen. Ferner können die trainierten Algorithmen des maschinellen Lernens dabei hinterlegt beziehungsweise zur zukünftigen Verwendung abgespeichert werden, wobei beispielsweise basierend auf in der empfangenen Aufforderung enthaltenen Metadaten die benötigten Algorithmen des maschinellen Lernens aus den hinterlegten Algorithmen des maschinellen Lernens ausgewählt werden können.For example, as part of wafer production, a large number of machine learning algorithms may have been trained for each wafer produced, for example based on historical data and/or deep learning techniques. However, since only a portion of the large number of trained machine learning algorithms is ever executed, it does not make economic sense to provide a separate computing node for each machine learning algorithm. Furthermore, the trained machine learning algorithms can be deposited or saved for future use, whereby, for example, the required machine learning algorithms can be selected from the stored machine learning algorithms based on metadata contained in the received request.

Die Aufforderung kann dabei Daten über die Fertigung des Wafers beispielsweise eine Wafermap und/oder eine Verteilung von während der Fertigung gewonnenen Messdaten aufweisen. Bei den in der Aufforderung enthaltenen Metadaten kann es sich ferner um zusätzliche Informationen über diese Daten, beispielsweise darüber, was diese Daten kennzeichnen oder von wem sie stammen, sowie um zusätzliche während der Fertigung gesammelte Parameter handeln.The request can contain data about the production of the wafer, for example a wafer map and/or a distribution of measurement data obtained during production. The metadata included in the request may also include additional information about that data, such as what that data identifies or who it comes from, as well as additional parameters collected during manufacturing.

Die trainierten Algorithmen des maschinellen Lernens können ferner wiederum in einer Zuordnungsdatenbank, beispielsweise in Form einer entsprechenden Lookup Tabelle hinterlegt werden.The trained machine learning algorithms can also be stored in an assignment database, for example in the form of a corresponding lookup table.

Gemäß den Ausführungsformen der 1 dabei weiter einen Schritt 9 eines Vorverarbeitens der empfangenen Aufforderung beziehungsweise der darin enthaltenen Daten auf.According to the embodiments of 1 a step 9 of pre-processing the received request or the data contained therein.

Wie 1 zeigt, weist das Verfahren 1 zudem einen Schritt 10 eines Überprüfens, ob das produzierte Bauteil basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten innerhalb einer hierfür vorgesehenen Zeit überprüft werden kann, auf.How 1 shows, the method 1 also has a step 10 of checking whether the produced component can be checked based on the respective assignments of the individual machine learning algorithms of the machine learning ensemble algorithm to one of the at least two computing nodes within a time provided for this purpose, on.

Hierzu kann die Aufforderung einen Zeitstempel und Daten über eine maximal zur Bearbeitung der Aufforderung zur Verfügung stehende Zeit aufweisen. Alternativ können die maximal zur Bearbeitung einzelner Aufforderungen jeweils zur Verfügung stehenden Zeiten wiederum in der Zuordnungsdatenbank hinterlegt sein, wobei einer Aufforderung nach Empfang einer neuen Aufforderung die entsprechende maximal zur Verfügung stehende Zeit wiederum basierend auf in der Aufforderung enthaltenen Metadaten zugeordnet werden kann. Dabei kann beispielsweise basierend auf während vergangener Ausführung der entsprechenden Algorithmen des maschinellen Lernens gesammelter Daten über jeweils zur Ausführung der Algorithmen des maschinellen Lernens benötigten Zeiten entscheiden werden, ob das produzierte Bauteil basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten innerhalb einer hierfür vorgesehenen Zeit überprüft werden kann.For this purpose, the request can have a time stamp and data about the maximum time available to process the request. Alternatively, the maximum times available for processing individual requests can in turn be stored in the allocation database, whereby the corresponding maximum available time can be assigned to a request after receiving a new request based on metadata contained in the request. For example, based on data collected during past execution of the corresponding machine learning algorithms about the times required to execute the machine learning algorithms, a decision can be made as to whether the component produced is based on the respective assignments of the individual machine learning algorithms of the ensemble algorithm Machine learning at one of the at least two computing nodes can be checked within a designated time.

Wird in Schritt 10 ferner festgestellt, dass das produzierte Bauteil basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten nicht innerhalb der hierfür vorgesehenen Zeit überprüft werden kann, so kann der entsprechende, in Schritt 4 erzeugte Zuordnungsplan verworfen und eine entsprechende Mitteilung an den Absender der entsprechenden Aufforderung gesendet werden.If it is also determined in step 10 that the produced component cannot be checked within the time provided for this purpose based on the respective assignments of the individual machine learning algorithms of the machine learning ensemble algorithm to one of the at least two computing nodes, the corresponding, The allocation plan generated in step 4 is discarded and a corresponding message is sent to the sender of the corresponding request.

Wird in Schritt 10 hingegen festgestellt, dass das produzierte Bauteil basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten innerhalb der hierfür vorgesehenen Zeit überprüft werden kann, so fährt das Verfahren 1 mit Schritt 6, das heißt der entsprechenden Überprüfung des produzierten Bauteils fort.If, however, it is determined in step 10 that the produced component can be checked based on the respective assignments of the individual machine learning algorithms of the machine learning ensemble algorithm to one of the at least two computing nodes within the time provided for this, method 1 follows Step 6, i.e. the corresponding inspection of the produced component.

Zudem kann während der Bearbeitung der entsprechenden Aufforderung auch stetig überprüft werden, ob die hierfür maximal zur Verfügung stehende Zeit abgelaufen ist, wobei, sobald die hierzu zur Verfügung stehende Zeit abgelaufen ist, der entsprechende Zuordnungsplan verworfen und eine entsprechende Mitteilung an den Absender der entsprechenden Aufforderung gesendet werden kann.In addition, while the corresponding request is being processed, it can also be continuously checked whether the maximum time available for this has expired. As soon as the time available for this has expired, the corresponding allocation plan is discarded and a corresponding message is sent to the sender of the corresponding request can be sent.

Gemäß den Ausführungsformen der 1 handelt es sich bei dem produzierten Bauteil wiederum um einen mit Halbleiterchips bestückter Wafer.According to the embodiments of 1 The component produced is in turn a wafer equipped with semiconductor chips.

Dabei können anschließend beispielsweise einzelne Halbleiterchips basierend auf einem entsprechenden Überprüfungsergebnis verworfen werden.For example, individual semiconductor chips can then be rejected based on a corresponding check result.

1 zeigt somit ein auf einem zusätzlichen Scheduler beziehungsweise Planer basierendes Verfahren 1, wobei der Scheduler die Zuordnung von einzelnen Algorithmen des maschinellen Lernens zu Rechenknoten zur Ausführung basierend auf jeweils zur Verfügung stehenden Ressourcen sowie basierend darauf, ob der entsprechende Algorithmus des maschinellen Lernens auf einem Rechenknoten bereits ausgeführt wird beziehungsweise wurde, steuern kann, wobei der Scheduler gegebenenfalls auch ein entsprechendes Stellen von Requests in eine Warteliste eines Rechenknotens verwalten kann. Zudem kann der Scheduler ausgebildet sein, die basierend auf der jeweiligen Aufforderung benötigten Algorithmen des maschinellen Lernens dynamisch auf die einzelnen Rechenknoten zu verteilen. 1 thus shows a method 1 based on an additional scheduler or planner, wherein the scheduler assigns individual machine learning algorithms to computing nodes for execution based on available resources and based on whether the corresponding machine learning algorithm is already on a computing node is or was executed, whereby the scheduler can also manage the corresponding placement of requests in a waiting list of a computing node. In addition, the scheduler can be designed to dynamically distribute the machine learning algorithms required based on the respective request to the individual computing nodes.

2 zeigt ein schematisches Blockdiagramm eines Systems zum Überprüfen eines produzierten Bauteils 20 gemäß Ausführungsformen der Erfindung. 2 shows a schematic block diagram of a system for checking a produced component 20 according to embodiments of the invention.

Wie 2 zeigt, weist das System 20 dabei ein Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung 21 und ein Steuergerät zum Überprüfen eines produzierten Bauteils 22 auf, wobei das Überprüfen des gefertigten Bauteils ein Ausführen eines Ensemble-Algorithmus des maschinellen Lernens auf wenigstens zwei über ein Netzwerk kommunikativ miteinander verbundenen Rechenknoten aufweist, und wobei das Steuergerät zum Überprüfen des produzierten Bauteils 22 ausgebildet ist, das produzierte Bauteil basierend auf einer durch das Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung 21 erzeugten Zuordnung der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu den wenigstens zwei Rechenknoten zu überprüfen.How 2 shows, the system 20 provides a control device for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes guide 21 and a control device for checking a produced component 22, wherein checking the manufactured component includes executing an ensemble machine learning algorithm on at least two computing nodes communicatively connected to one another via a network, and wherein the control device for checking the produced component 22 is designed, the produced component is based on an assignment of the individual machine learning algorithms of the ensemble algorithm generated by the control device for assigning at least one machine learning algorithm of an ensemble algorithm of machine learning to one of at least two computing nodes for execution 21 machine learning to the at least two computing nodes.

Gemäß den Ausführungsformen der 2 weist das Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung 21 eine Bereitstellungseinheit 23, welche ausgebildet ist, für jeden der wenigstens zwei Rechenknoten eine aktuelle Auslastung des entsprechenden Rechenknotens bereitzustellen, und eine Zuordnungseinheit 24, welche ausgebildet ist, für wenigstens einen Algorithmus des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens, jeweils den entsprechenden Algorithmus des maschinellen Lernen zu einem der wenigstens zwei Rechenknoten basierend auf den aktuellen Auslastungen der Rechenknoten, Ressourcenanforderungen des entsprechenden Algorithmus des maschinellen Lernens und Informationen über die Ausführung des entsprechenden Algorithmus des maschinellen Lernens zur Ausführung zuzuordnen, auf.According to the embodiments of 2 for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution 21, the control device has a provision unit 23, which is designed to provide a current utilization of the corresponding computing node for each of the at least two computing nodes, and an allocation unit 24, which is designed for at least one machine learning algorithm of the ensemble algorithm of machine learning, in each case the corresponding machine learning algorithm to one of the at least two computing nodes based on the current workloads of the computing nodes, resource requirements of the corresponding algorithm of the machine learning and information about the execution of the corresponding machine learning algorithm for execution.

Die Bereitstellungseinheit kann dabei beispielsweise basierend auf in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden, wobei der Code beispielsweise ausgebildet sein kann, die aktuelle Auslastung der einzelnen Rechenknoten jeweils basierend auf RPC Calls zu ermitteln. Die Zuordnungseinheit kann ferner beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The provision unit can be implemented, for example, based on code stored in a memory and executable by a processor, whereby the code can be designed, for example, to determine the current utilization of the individual computing nodes based on RPC calls. The allocation unit can also be implemented, for example, based on code stored in a memory and executable by a processor.

Wie 2 zeigt, weist das Steuergerät 21 zudem einen Speicher 25 zum Speichern der Zuordnung des wenigstens einen Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten in einem Zuordnungsplan auf.How 2 shows, the control device 21 also has a memory 25 for storing the assignment of the at least one machine learning algorithm to one of the at least two computing nodes in an assignment plan.

Bei dem Speicher 25 kann es sich dabei beispielsweise um einen flüchtigen Speicher handeln.The memory 25 can be, for example, a volatile memory.

Gemäß den Ausführungsformen der 2 weist das Steuergerät zum Überprüfen des produzierten Bauteils 22 ferner eine Bereitstellungseinheit 26, welche ausgebildet ist, den Ensemble-Algorithmus des maschinellen Lernens zum Überprüfen des produzierten Bauteils bereitzustellen, und eine Überprüfungseinheit 27, welche ausgebildet ist, das produzierte Bauteils durch Ausführen des Ensemble-Algorithmus des maschinellen Lernens zu überprüfen, wobei das Ausführen des Ensemble-Algorithmus des maschinellen Lernens ein jeweiliges Zuordnen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung durch das Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung 21 aufweist.According to the embodiments of 2 the control device for checking the produced component 22 further has a provision unit 26, which is designed to provide the ensemble algorithm of machine learning for checking the produced component, and a checking unit 27, which is designed to provide the produced component by executing the ensemble algorithm of machine learning, wherein executing the ensemble algorithm of machine learning involves respectively assigning the individual algorithms of machine learning of the ensemble algorithm of machine learning to one of the at least two computing nodes for execution by the control device for assigning at least one algorithm of the machine learning of a machine learning ensemble algorithm to one of at least two computing nodes for execution 21.

Die Überprüfungseinheit kann dabei wiederum beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The checking unit can in turn be implemented, for example, based on code stored in a memory and executable by a processor.

Gemäß den Ausführungsformen der 2 weist die Bereitstellungseinheit 26 ferner eine Empfangseinheit 28 zum Empfangen einer Aufforderung, das produzierte Bauteil zu überprüfen, und eine Auswahleinheit 29, welche ausgebildet ist, die einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens basierend auf der empfangenen Aufforderung auszuwählen, auf.According to the embodiments of 2 the provision unit 26 further has a receiving unit 28 for receiving a request to check the produced component, and a selection unit 29, which is designed to select the individual machine learning algorithms of the ensemble machine learning algorithm based on the received request.

Bei der Empfangseinheit kann es sich dabei insbesondere um einen Empfänger beziehungsweise Receiver, welcher ausgebildet ist, entsprechende Daten von einem Absender einer Aufforderung zu empfangen, handeln. Die Auswahleinheit kann ferner wiederum beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The receiving unit can in particular be a receiver which is designed to receive corresponding data from a sender of a request. The selection unit can also be implemented, for example, based on code stored in a memory and executable by a processor.

Zu erkennen ist zudem, dass das Steuergerät 22 weiter auch eine Vorverarbeitungseinheit 30, welche ausgebildet ist, die empfangene Aufforderung vorzuverarbeiten, aufweist.It can also be seen that the control device 22 also has a pre-processing unit 30, which is designed to pre-process the received request.

Die Vorverarbeitungseinheit kann dabei wiederum beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The preprocessing unit can in turn be implemented, for example, based on code stored in a memory and executable by a processor.

Gemäß den Ausführungsformen der 2 weist das Steuergerät 22 weiter auch eine Überprüfungseinheit 31, welche ausgebildet ist, basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zu überprüfen, ob das produzierte Bauteil innerhalb einer hierfür vorgesehenen Zeit überprüft werden kann, auf.According to the embodiments of 2 the control device 22 also has a checking unit 31, which is designed based on the respective assignments of the individual machine learning algorithms of the ensemble Machine learning algorithm to one of the at least two computing nodes to check whether the produced component can be checked within a specified time.

Die Überprüfungseinheit kann dabei wiederum beispielsweise basierend auf einem in einem Speicher hinterlegten und durch einen Prozessor ausführbaren Code realisiert werden.The checking unit can in turn be implemented, for example, based on code stored in a memory and executable by a processor.

Bei dem produzierten Bauteil handelt es sich ferner wiederum um einen mit Halbleiterchips bestückter Wafer.The component produced is also a wafer equipped with semiconductor chips.

Das System 20 ist dabei insbesondere ausgebildet, ein obenstehend beschriebenes Verfahren zum Überprüfen eines produzierten Bauteils auszuführen.The system 20 is designed in particular to carry out a method described above for checking a produced component.

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 assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • US 2019/0266015 A1 [0005]US 2019/0266015 A1 [0005]

Claims (14)

Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung, wobei die wenigstens zwei Rechenknoten über ein Netzwerk kommunikativ miteinander verbunden sind, und wobei das Verfahren folgende Schritte aufweist: - Für jeden der wenigstens zwei Rechenknoten, Erfassen einer aktuellen Auslastung des entsprechenden Rechenknotens (2); und - Für wenigstens einen Algorithmus des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens, jeweils Zuordnen des entsprechenden Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung basierend auf den aktuellen Auslastungen der wenigstens zwei Rechenknoten, Ressourcenanforderungen des entsprechenden Algorithmus des maschinellen Lernens und Informationen über die Ausführung des entsprechenden Algorithmus des maschinellen Lernens.Method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution, wherein the at least two computing nodes are communicatively connected to one another via a network, and wherein the method comprises the following steps: - For each of the at least two computing nodes, recording a current utilization of the corresponding computing node (2); and - For at least one machine learning algorithm of the ensemble machine learning algorithm, each assigning the corresponding machine learning algorithm to one of the at least two computing nodes for execution based on the current workloads of the at least two computing nodes, resource requirements of the corresponding machine learning algorithm and Information about the execution of the corresponding machine learning algorithm. Verfahren nach Anspruch 1, wobei das Verfahren weiter folgenden Schritt aufweist: - Speichern der Zuordnung des wenigstens einen Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten in einem Zuordnungsplan (4).Procedure according to Claim 1 , wherein the method further comprises the following step: - storing the assignment of the at least one machine learning algorithm to one of the at least two computing nodes in an assignment plan (4). Verfahren zum Überprüfen eines produzierten Bauteils, wobei das Überprüfen des produzierten Bauteils ein Ausführen eines Ensemble-Algorithmus des maschinellen Lernens auf wenigstens zwei über ein Netzwerk kommunikativ miteinander verbundenen Rechenknoten aufweist, und wobei das Verfahren folgende Schritte aufweist: - Bereitstellen des Ensemble-Algorithmus des maschinellen Lernens zum Überprüfen des produzierten Bauteils (5); und - Überprüfen des produzierten Bauteils durch Ausführen des Ensemble-Algorithmus des maschinellen Lernens (6), wobei das Ausführen des Ensemble-Algorithmus des maschinellen Lernens ein jeweiliges Zuordnen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung durch ein Verfahren zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung nach Anspruch 1 oder 2 aufweist.Method for checking a produced component, wherein checking the produced component comprises executing a machine learning ensemble algorithm on at least two computing nodes communicatively connected to one another via a network, and wherein the method comprises the following steps: - Providing the machine learning ensemble algorithm Learning to check the produced component (5); and - checking the produced component by executing the machine learning ensemble algorithm (6), wherein executing the machine learning ensemble algorithm involves each assigning the individual machine learning algorithms of the machine learning ensemble algorithm to one of the at least two Computing nodes for execution by a method for associating at least one machine learning algorithm of an ensemble machine learning algorithm with one of at least two computing nodes for execution Claim 1 or 2 having. Verfahren nach Anspruch 3, wobei der Schritt des Bereitstellens des Ensemble-Algorithmus des maschinellen Lernens zum Überprüfen des produzierten Bauteils (5) weiter folgende Schritte aufweist: - Empfangen einer Aufforderung, das produzierte Bauteil zu überprüfen (7); und - Auswählen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens basierend auf der empfangenen Aufforderung (8).Procedure according to Claim 3 , wherein the step of providing the machine learning ensemble algorithm for checking the produced component (5) further comprises the following steps: - receiving a request to check the produced component (7); and - selecting the individual machine learning algorithms of the ensemble machine learning algorithm based on the received request (8). Verfahren nach Anspruch 4, wobei das Verfahren weiter folgenden Schritt aufweist: - Vorverarbeiten der empfangenen Aufforderung (9).Procedure according to Claim 4 , the method further comprising the following step: - pre-processing the received request (9). Verfahren nach einem der Ansprüche 3 bis 5, wobei das Verfahren weiter folgenden Schritt aufweist: - Überprüfen, ob das produzierte Bauteil innerhalb einer hierfür vorgesehenen Zeit überprüft werden kann basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung (10).Procedure according to one of the Claims 3 until 5 , wherein the method further comprises the following step: - Checking whether the produced component can be checked within a time provided for this purpose based on the respective assignments of the individual machine learning algorithms of the machine learning ensemble algorithm to one of the at least two computing nodes for execution (10). Verfahren nach einem der Ansprüche 3 bis 6, wobei es sich bei dem produzierten Bauteil um einen mit Halbleiterchips bestückten Wafer handelt.Procedure according to one of the Claims 3 until 6 , whereby the component produced is a wafer equipped with semiconductor chips. Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung, wobei die wenigstens zwei Rechenknoten über ein Netzwerk kommunikativ miteinander verbunden sind, und wobei das Steuergerät (21) eine Bereitstellungseinheit (23), welche ausgebildet ist, für jeden der wenigstens zwei Rechenknoten eine aktuelle Auslastung des entsprechenden Rechenknotens bereitzustellen, und eine Zuordnungseinheit (24), welche ausgebildet ist, für wenigstens einen Algorithmus des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens, jeweils den entsprechenden Algorithmus des maschinellen Lernen zu einem der wenigstens zwei Rechenknoten basierend auf den aktuellen Auslastungen der wenigstens zwei Rechenknoten, Ressourcenanforderungen des entsprechenden Algorithmus des maschinellen Lernens und Informationen über die Ausführung des entsprechenden Algorithmus des maschinellen Lernens zur Ausführung zuzuordnen.Control device for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution, wherein the at least two computing nodes are communicatively connected to one another via a network, and wherein the control device (21) has a provision unit (23 ), which is designed to provide a current utilization of the corresponding computing node for each of the at least two computing nodes, and an allocation unit (24), which is designed to provide the corresponding algorithm for at least one machine learning algorithm of the machine learning ensemble algorithm of machine learning to one of the at least two computing nodes based on the current workloads of the at least two computing nodes, resource requirements of the corresponding machine learning algorithm and information about the execution of the corresponding machine learning algorithm for execution. Steuergerät nach Anspruch 8, wobei das Steuergerät (21) weiter einen Speicher (25) zum Speichern der Zuordnung des wenigstens einen Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten in einem Zuordnungsplan aufweist.control unit Claim 8 , wherein the control device (21) further has a memory (25) for storing the assignment of the at least one machine learning algorithm to one of the at least two computing nodes in an assignment plan. Steuergerät zum Überprüfen eines produzierten Bauteils, wobei das Überprüfen des produzierten Bauteils ein Ausführen eines Ensemble-Algorithmus des maschinellen Lernens auf wenigstens zwei über ein Netzwerk kommunikativ miteinander verbundenen Rechenknoten aufweist, und wobei das Steuergerät (22) eine Bereitstellungseinheit (26), welche ausgebildet ist, den Ensemble-Algorithmus zum Überprüfen des produzierten Bauteils bereitzustellen, und eine Überprüfungseinheit (27), welche ausgebildet ist, das produzierte Bauteil durch Ausführen des Ensemble-Algorithmus des maschinellen Lernens zu überprüfen, aufweist, wobei das Ausführen des Ensemble-Algorithmus des maschinellen Lernens ein jeweiliges Zuordnen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung durch ein Steuergerät zum Zuordnen von wenigstens einem Algorithmus des maschinellen Lernens eines Ensemble-Algorithmus des maschinellen Lernens zu einem von wenigstens zwei Rechenknoten zur Ausführung nach Anspruch 8 oder 9 aufweist.Control device for checking a produced component, whereby checking the produ decorated component has an execution of an ensemble algorithm of machine learning on at least two computing nodes communicatively connected to one another via a network, and wherein the control device (22) has a provision unit (26) which is designed to provide the ensemble algorithm for checking the produced component , and a checking unit (27), which is designed to check the produced component by executing the machine learning ensemble algorithm, wherein executing the machine learning ensemble algorithm involves assigning the individual machine learning algorithms of the ensemble -Machine learning algorithm to one of the at least two computing nodes for execution by a control device for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution Claim 8 or 9 having. Steuergerät nach Anspruch 10, wobei die Bereitstellungseinheit (26) eine Empfangseinheit (28) zum Empfangen einer Aufforderung, das produzierte Bauteil zu überprüfen, und eine Auswahleinheit (29), welche ausgebildet ist, die einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens basierend auf der empfangenen Aufforderung auszuwählen, aufweist.control unit Claim 10 , wherein the provision unit (26) has a receiving unit (28) for receiving a request to check the produced component, and a selection unit (29) which is designed to select the individual machine learning algorithms of the machine learning ensemble algorithm based on the to select the request received. Steuergerät nach Anspruch 11, wobei das Steuergerät (22) weiter eine Vorverarbeitungseinheit (30), welche ausgebildet ist, die empfangene Aufforderung vorzuverarbeiten, aufweist.control unit Claim 11 , wherein the control device (22) further has a pre-processing unit (30), which is designed to pre-process the received request. Steuergerät nach einem der Ansprüche 10 bis 12, wobei das Steuergerät (22) weiter eine Überprüfungseinheit (31), welche ausgebildet ist, basierend auf den jeweiligen Zuordnungen der einzelnen Algorithmen des maschinellen Lernens des Ensemble-Algorithmus des maschinellen Lernens zu einem der wenigstens zwei Rechenknoten zur Ausführung zu überprüfen, ob das produzierte Bauteil innerhalb einer hierfür vorgesehenen Zeit überprüft werden kann, aufweist.Control unit according to one of the Claims 10 until 12 , wherein the control device (22) further has a checking unit (31), which is designed to check, based on the respective assignments of the individual machine learning algorithms of the machine learning ensemble algorithm to one of the at least two computing nodes for execution, whether the produced Component can be checked within a specified time. Steuergerät nach einem der Ansprüche 10 bis 13, wobei es sich bei dem produzierten Bauteil um einen mit Halbleiterchips bestückten Wafer handelt.Control unit according to one of the Claims 10 until 13 , whereby the component produced is a wafer equipped with semiconductor chips.
DE102022205835.6A 2022-06-08 2022-06-08 Method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution Pending DE102022205835A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102022205835.6A DE102022205835A1 (en) 2022-06-08 2022-06-08 Method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022205835.6A DE102022205835A1 (en) 2022-06-08 2022-06-08 Method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution

Publications (1)

Publication Number Publication Date
DE102022205835A1 true DE102022205835A1 (en) 2023-12-14

Family

ID=88873988

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022205835.6A Pending DE102022205835A1 (en) 2022-06-08 2022-06-08 Method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution

Country Status (1)

Country Link
DE (1) DE102022205835A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0762135A2 (en) 1995-09-05 1997-03-12 Sun Electric Uk Ltd. Testing automotive electronic control units and batteries and related equipment
US20190266015A1 (en) 2018-02-27 2019-08-29 Microsoft Technology Licensing, Llc Deep neural network workload scheduling
US20190303717A1 (en) 2018-03-28 2019-10-03 Kla-Tencor Corporation Training a neural network for defect detection in low resolution images
US20210109796A1 (en) 2019-10-10 2021-04-15 Channel One Holdings Inc. Methods and systems for time-bounding execution of computing workflows
US20210382754A1 (en) 2021-06-12 2021-12-09 Intel Corporation Serverless computing architecture for artificial intelligence workloads on edge for dynamic reconfiguration of workloads and enhanced resource utilization
US20220035684A1 (en) 2020-08-03 2022-02-03 Nvidia Corporation Dynamic load balancing of operations for real-time deep learning analytics

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0762135A2 (en) 1995-09-05 1997-03-12 Sun Electric Uk Ltd. Testing automotive electronic control units and batteries and related equipment
US20190266015A1 (en) 2018-02-27 2019-08-29 Microsoft Technology Licensing, Llc Deep neural network workload scheduling
US20190303717A1 (en) 2018-03-28 2019-10-03 Kla-Tencor Corporation Training a neural network for defect detection in low resolution images
US20210109796A1 (en) 2019-10-10 2021-04-15 Channel One Holdings Inc. Methods and systems for time-bounding execution of computing workflows
US20220035684A1 (en) 2020-08-03 2022-02-03 Nvidia Corporation Dynamic load balancing of operations for real-time deep learning analytics
US20210382754A1 (en) 2021-06-12 2021-12-09 Intel Corporation Serverless computing architecture for artificial intelligence workloads on edge for dynamic reconfiguration of workloads and enhanced resource utilization

Similar Documents

Publication Publication Date Title
DE60219674T2 (en) A distributed speech recognition system and method of operating the same
DE602004011890T2 (en) Method for redistributing objects to arithmetic units
DE19535084A1 (en) Dynamic optimisation of business processes managed by computer system
DE112012005030T5 (en) Dynamically configurable placement engine
EP0346801A2 (en) Method and arrangement for the execution of a programme in a heterogeneous multiprocessor system
DE112017005651T5 (en) Device for classifying data
CN111143143B (en) Performance test method and device
CN110347602B (en) Method and device for executing multitasking script, electronic equipment and readable storage medium
EP1711892B1 (en) Method for determining a reassignment scenario of software modules in case of a computer failure in a server farm
DE112021003908T5 (en) FEDERAL MACHINE LEARNING BY USING LOCATION-BASED HASHING
DE112021005422T5 (en) LEARNING-BASED WORKLOAD RESOURCE OPTIMIZATION FOR DATABASE MANAGEMENT SYSTEMS
EP3767403A1 (en) Machine learning based shape and surface measurement for monitoring production
DE102020119205A1 (en) STORAGE DEVICE, STORAGE SYSTEM AND OPERATING PROCEDURES THEREFORE
DE102021127324A1 (en) PLANNING JOBS ON GRAPHIC PROCESSING UNITS
DE102006046717A1 (en) Dynamically migrating channels
DE102022205835A1 (en) Method for assigning at least one machine learning algorithm of an ensemble machine learning algorithm to one of at least two computing nodes for execution
DE112021000842T5 (en) Machine learning device, computing device, control system and machine learning method
WO2016169828A1 (en) Resource optimizer for software ecosystems
EP3705993B1 (en) System and method for locating and identifying computing nodes in a network
DE10230878A1 (en) Automatic computer processing method to process studies from medical tomography imaging examination systems allocates a priority code to each study
DE102018123563B4 (en) Method for inter-core communication in a multi-core processor
DE102021204550A1 (en) Method for generating at least one data set for training a machine learning algorithm
AT516108A2 (en) Production system and the corresponding method
DE112020005639B4 (en) ASSIGNMENT APPARATUS, LEARNING APPARATUS, DERIVATION APPARATUS, ASSIGNMENT METHOD AND ASSIGNMENT PROGRAM
WO2014005938A2 (en) Determination of the suitability of a resource

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0067101200

Ipc: G06F0009500000

R163 Identified publications notified