WO2023237205A1 - Computer-implemented method and system for detecting anomalies during the operation of a technical device - Google Patents

Computer-implemented method and system for detecting anomalies during the operation of a technical device Download PDF

Info

Publication number
WO2023237205A1
WO2023237205A1 PCT/EP2022/065756 EP2022065756W WO2023237205A1 WO 2023237205 A1 WO2023237205 A1 WO 2023237205A1 EP 2022065756 W EP2022065756 W EP 2022065756W WO 2023237205 A1 WO2023237205 A1 WO 2023237205A1
Authority
WO
WIPO (PCT)
Prior art keywords
computing
elc1
elcn
computing device
model
Prior art date
Application number
PCT/EP2022/065756
Other languages
German (de)
French (fr)
Inventor
Daniel SCHALL
Original Assignee
Siemens Ag Österreich
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 Siemens Ag Österreich filed Critical Siemens Ag Österreich
Priority to PCT/EP2022/065756 priority Critical patent/WO2023237205A1/en
Publication of WO2023237205A1 publication Critical patent/WO2023237205A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • 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/5038Allocation 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 execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/501Performance criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Definitions

  • the invention relates to a computer-implemented method and a computing system for processing a set of computing tasks by a system comprising at least a first computing device and at least two second computing devices, each with a processor and a memory, the at least a first Computing device is connected to the at least two second computing devices by respective communication connections.
  • the invention also relates to the use of the method for anomaly detection when operating a technical device.
  • the invention further relates to a computer program, an electronically readable data carrier and a data carrier signal.
  • AI artificial intelligence systems
  • ML machine learning models
  • a computing device with a processor and memory is located at the edge. Additionally, edge devices often do not have sufficient capabilities to perform full training of ML models.
  • an ML method is to be executed on a distributed system, additional complexity may arise, namely in that an initial model for anomaly detection must be trained in the cloud and then distributed to various edge devices .
  • an initial model is often created in the cloud, trained and deployed to distributed clients.
  • a calculation at the edge may be preferred for data protection reasons.
  • An application of this ML model is therefore advantageously carried out at the edge, whereby ML model updates from the operation or application of the ML model are also carried out at the edge for the same reasons, but this requires a very high computing capacity
  • a highly parallelized computing core such as a GPU (graphic processing unit).
  • the pure application of an ML model can mostly be carried out on computing devices with simpler complexity and capacity. This also includes, for example, data collection by sensors such as cameras or by a PLC (programmable logic controller) or other sensor means.
  • sensors such as cameras or by a PLC (programmable logic controller) or other sensor means.
  • PLC programmable logic controller
  • the object according to the invention is solved by a method of the type mentioned at the beginning, the following steps being carried out: i) determining a weight function for each computing task from the set of computing tasks between the at least one first computing device and the at least two second computing devices, whereby the Weight function has:
  • an edge device which includes the computing devices, can be designed to be optimally adapted for the corresponding use.
  • the weight function is determined in each case by the priority, the communication parameter and the ranking factor each being in a value range between 0 and 1 and the sum of which forms a calculation parameter, and the storage parameters and the execution parameters each lie in a value range between 0 and 1 and the sum of which forms a calculation parameter, and the difference between calculation parameters Parameters and calculation parameters form the weight function.
  • step i) it is checked whether the respective weight function is equal to zero, and if so, the associated calculation task is divided into sub-arithmetic tasks and the sub-arithmetic tasks are added to the set of calculation tasks and the current calculation task is removed from the set of calculation tasks and the method is continued with step i).
  • a calculation task is assigned to a weight function and is represented by it, according to which a subset of a weight function also corresponds to a subset of a calculation task. Accordingly, partial calculation tasks can also be assigned partial weight functions.
  • the method is used for anomaly detection when operating a technical device, which is operated by a client-server system with a server and a client with the at least one first computing device and
  • the following procedural steps must also be carried out: a) Acquiring from the operation of the technical device and providing first training data from the client to the server, generating and training a first model in the form of an auto-encoder by the server, and providing the first model in the form of first weights from the server to the client, as well as loading and storing the first model in the at least one first computing device, b) acquiring operating data of the technical device and determining an anomaly parameter with regard to the agreement with the first model by the at least one first computing device, c) Check whether the anomaly characteristic is within a predetermined value range, if so, continue with step b), otherwise continue with step d), d) provide the first model weights of the auto-encoder and save with the anomaly characteristic in the memory by the at least one first computing
  • the new ML model can be distributed to other clients without distributing the raw data itself in the distributed client-server system, resulting in improved data security and privacy .
  • the anomaly parameter is the reconstruction error of the auto-encoder.
  • the size of the memory occupancy of the memory of the at least one first computing device for storing the number of stored first model weights of the auto-encoder predetermined in step e) is proportional to the bandwidth of the communication connection between the at least a first computing device and at least two second computing devices are provided. This ensures that the model is only updated when a predetermined number of reconstruction errors are exceeded.
  • the second model weights calculated in step f) are provided by the client to the server, and the client-server system preferably has a further client with a further technical device and the server is set up for this purpose to provide the second model weights to the other client through federated learning.
  • the object according to the invention is achieved by a computing system of the type mentioned at the outset, comprising at least a first computing device and at least two second computing devices, each with a processor and a memory, the at least one first computing device each being connected to the at least two second computing devices by a Communication connection is connected and the computing system is set up to carry out the method according to the invention.
  • the object according to the invention is solved by a computer program comprising commands which, when executed by a computer, cause it to carry out the method according to the invention.
  • the object according to the invention is achieved by an electronically readable data carrier with readable control information stored thereon, which at least corresponds to that according to the invention Include computer program and are designed such that they carry out the method according to the invention when using the data carrier in a computing device.
  • the object according to the invention is achieved by a data carrier signal which transmits the computer program according to the invention.
  • Fig. 1 an exemplary embodiment of the method according to the invention as a flow chart
  • FIG. 2 an exemplary embodiment of the system according to the invention as a block diagram
  • FIG. 3 an exemplary embodiment of a use of the method according to the invention as a flow chart
  • Fig. 4 an exemplary embodiment of a use of the system according to the invention as a block diagram.
  • Fig. 1 shows an exemplary embodiment of the method according to the invention as a flow chart, the method being based on one shown in FIG. 2 can run.
  • the process for processing a number of computing tasks by a system is at least partially computer-implemented.
  • a computing system includes at least a first computing device ELC1-ELCN and at least two second computing devices EAC1-EACN, each with a processor and a memory.
  • the at least one first computing device ELC1-ELCN is connected to the at least two second computing devices EAC1-EACN through respective communication connections.
  • the following procedural steps are carried out: i) determining a weight function wll-wl3, wNl-wN3 for each calculation task from the set of calculation tasks between the at least one first computing device ELC1-ELCN and the at least two second computing devices EAC1-EACN, the weight function having:
  • the weight function can be determined in each case by the priority, the communication parameter and the ranking factor each being in a value range between 0 and 1 and the sum of which forms a calculation parameter, and the storage parameter and the execution parameter each in one Value range between 0 and 1 and the sum of which forms a calculation parameter, and the difference between the calculation parameter and the calculation parameter forms the weight function.
  • the priority P (priority factor) for a current computing task which is selected by a first computing device, can be in the value range 0% ... 100%.
  • a high value like 100% means that the model needs an urgent update, and a low value like 1% means that an update is not necessary.
  • the communication parameter E (“communication efficiency factor”) can also be in the value range 0% ... 100%, where a high value such as 100% means that there is very good network quality, and a low value like 1% means that the connection has poor transmission quality.
  • the ranking factor S (English “starvation factor”) can also be in the value range 0% ... 100%, whereby the ranking factor is increased with each iteration, for example by 10%. This serves to determine the urgency of processing a calculation task increase gradually so as not to “starve” the calculation task.
  • the memory parameter U (“utilization factor”) can also be in the value range 0% ... 100%, whereby the memory Parameters can map a memory occupancy of the main memory and/or hard drive storage.
  • the memory may be required, for example, to temporarily or permanently store a data set on a second computing device.
  • a high value like 100% means the model has a high memory footprint
  • a low value like 1% means the model has a low memory footprint
  • the execution parameter C (English “computational factor”) can also be in the value range 0% ... 100%, whereby the execution parameter can represent a computing capacity.
  • the computing capacity can be required, for example, to carry out a computing task to a second computing device.
  • a high value such as 100% means that the model has a high computing requirement - for example due to a high number of parallel processing cores, like a GPU - and a low value such as 1% means that the model has a low computing requirement
  • the calculation parameter is formed by the sum of the priority, the communication parameter and the ordering factor.
  • the calculation parameter is formed by the sum of the storage parameter and the execution parameter.
  • the weight function w AB (P + E + 5) - ((/ + C) is obtained, where A is a first computing device and B is a second computing device.
  • calculation tasks that have not yet been processed are then recorded and processed as a new iteration loop as previously carried out until all calculation tasks have been completed.
  • a computing task this means that it has a high priority, there is good network bandwidth, the computing task is intended to be processed for the first time, the data set is of moderate size and a moderate computing requirement is planned. It is therefore likely that a request to process the computing task will be completed successfully, even if there is currently a high load on a second computing device. It can also be considered whether a model update is requested in order to process the computing task by the second computing device in order to improve the parameters for determining the weight function.
  • step i) it can optionally be checked after step i) whether the respective weight function is equal to zero, and if so, the associated calculation task is divided into sub-arithmetic tasks and the sub-arithmetic tasks are added to the set of calculation tasks and the current calculation task is removed from the Amount of calculation tasks is removed and the method is continued with step i).
  • a calculation task should advantageously be divided into smaller partial calculation tasks in order to achieve efficient processing.
  • FIG. 3 An advantageous use of the method for anomaly detection when operating a technical device is shown in Fig. 3 shown, for which the system of FIG. 4 can be used.
  • a client-server system CSS for anomaly detection when operating a technical device TD1 comprises a server S and a client Kl with a first computing device 1 and a further, in this example, identical client K2 with a further technical device TD2.
  • the first computing device 1 has a processor and a memory.
  • the client Kl further comprises a second computing device 2, which communicates with the first computing device 1 via a communication cation connection C is connected, the communication connection C having a predefined bandwidth.
  • the client Kl preferably records test data DT with the aid of the first computing device 1 during a reference operation of the technical device TD1, which represents a permissible, valid operation of the technical device TD1.
  • the data acquisition can be done, for example, with a sensor means such as a camera and the test data DT can be camera recordings.
  • the global model can be provided to clients K1, K2 for operating the technical device TD1 in the form of weights of the global model.
  • the process is computer-implemented, meaning one or more steps are carried out by a computer.
  • the method can be used particularly advantageously for anomaly detection when operating a technical device TD1, which is operated by a client-server system CSS with a server S and a client Kl with the at least one first computing device ELC1-ELCN, and additionally
  • the following procedural steps are carried out: a) recording from the operation of the technical device TD1 and providing first training data DT from the client Kl to the server S, generating and training a first model in the form of an auto-encoder by the server, and Providing the first model in the form of first weights from the server S to the client Kl, as well as loading and saving the first model in the at least one first computing device ELC1-ELCN, b) acquiring operating data of the technical device TD1 and determining an anomaly parameter with regard to the agreement with the first model by the at least one first computing device ELC1-ELCN, c) checking whether the anomaly parameter lies within a predetermined value range , if yes, continue with step b), otherwise continue with step d), d
  • Weights for respective anomaly parameters to the at least two second computing devices EAC1-EACN which is included by the client Kl and calculating a second model in the form of an auto-encoder with second model weights by determining the inference by one of the at least two second computing devices EAC1-EACN, g) transmitting the second model weights of the previously calculated second model to the at least one first computing device ELC1-ELCN, and deleting the first model weights transmitted in step f) from the memory of the at least one first computing device ELC1-ELCN , and continue with step b),
  • the size of the memory occupancy of the memory of the at least one first computing device ELC1-ELCN for storing the number of stored first model weights of the auto-encoder predetermined in step e) is proportional to the bandwidth of the communication connection C between the at least a first computing device ELC1-ELCN and at least two second computing devices EAC1-EACN are provided.
  • the at least two second computing devices EAC1-EACN are preferably graphics processors ("graphics processing unit", or GPU for short), which are processors specialized and optimized for efficient calculation and can be used for artificial intelligence and machine learning. Because GPUs do an extraordinary amount Offering computing power, they can achieve enormous acceleration in computing tasks due to parallel processing, for example.
  • a graphics processor can be an integrated part of the first computing device, such as an integrated graphics card of an edge computer.
  • Providing the first model weights of the auto-encoder in step d) is also referred to as “embedding” compressed features or a compressed feature space, which is formed by the model weights.
  • the second model weights calculated in step f) can be provided to the server S by the client Kl.
  • Server S can now update its global ML model.
  • the system can provide the second model weights to the further client K2 through federated learning.
  • edge advanced computing Client with high processing capacity (“edge advanced computing”)
  • TD1, TD2 technical device e.g. motor of a production plant wll-wl3, wNl-wN3 weight, weight function

Landscapes

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

Abstract

Computer-implemented method for processing a set of computing tasks by means of a system, comprising at least one first computing apparatus (ELC1-ELCN) and at least two second computing apparatuses (EAC1-EACN), wherein the following steps are carried out: i) determining a weight function (w11-w13, wN1-wN3) for each computing task from the set of computing tasks between the at least one first computing apparatus (ELC1-ELCN) and the at least two second computing apparatuses (EAC1-EACN), ii) determining the execution capacity with regard to communication, storage and execution properties of the at least two second computing apparatuses (EAC1-EACN), iii) sorting the previously determined weight functions (w11-w13, wN1-wN3), and determining a subset of the sorted weight functions that are within a predetermined range of values of the determined execution capacity, iv) distributing the subset of computing tasks assigned to the subset of sorted weight functions to the at least two second computing apparatuses (EAC1-EACN), executing the subset of computing tasks and deleting the associated weight function, v) increasing the sequence factor for the computing tasks which were not distributed in the preceding step on account of the execution capacity, vi) continuing with step ii) as long as there are weight functions, and otherwise terminating the method.

Description

Computer- Implementiertes Verfahren und System zur Anomalie- Erkennung beim Betrieb eines technischen Geräts Computer-implemented method and system for anomaly detection in the operation of a technical device
Die Erfindung betri f ft ein computer-implementiertes Verfahren und ein Rechen-System zur Bearbeitung einer Menge an Rechenaufgaben durch ein System, umfassend zumindest eine erste Rechenvorrichtung und zumindest zwei zweite Rechenvorrichtungen, j eweils mit einem Prozessor und einem Speicher, wobei die zumindest eine erste Rechenvorrichtung mit den zumindest zwei zweiten Rechenvorrichtungen durch j eweilige Kommunikationsverbindungen verbunden sind . The invention relates to a computer-implemented method and a computing system for processing a set of computing tasks by a system comprising at least a first computing device and at least two second computing devices, each with a processor and a memory, the at least a first Computing device is connected to the at least two second computing devices by respective communication connections.
Die Erfindung betri f ft auch eine Verwendung des Verfahrens zur Anomalie-Erkennung beim Betrieb eines technischen Geräts .The invention also relates to the use of the method for anomaly detection when operating a technical device.
Ferner betri f ft die Erfindung ein Computerprogramm, einen elektronisch lesbaren Datenträger und ein Datenträgersignal .The invention further relates to a computer program, an electronically readable data carrier and a data carrier signal.
Typische Systeme künstlicher Intelligenz ( kurz „KI" ) passen Modelle des maschinellen Lernens ( kurz „ML" ) nur sehr langsam an neue Daten oder Umgebungsänderungen an . Der typische ML- Lebens zyklus umfasst drei Phasen : i ) Datenerfassung und Datenaufbereitung, ii ) Modellerstellung und iii ) Modellbereitstellung und Inferenz . Typical artificial intelligence systems (“AI” for short) adapt machine learning models (“ML” for short) only very slowly to new data or environmental changes. The typical ML lifecycle includes three phases: i) data collection and data preparation, ii) model building, and iii) model deployment and inference.
Das Schließen von Daten auf (hypothetische ) Modelle wird als statistische Inferenz bezeichnet . Inferring data from (hypothetical) models is called statistical inference.
ML-Modelle können sich j edoch häufig nicht schnell an Live- Daten oder neue Eingabedaten anpassen . However, ML models often cannot adapt quickly to live data or new input data.
Ferner sind nicht alle Daten in einem Cloud-Edge-Kontext in der Cloud verfügbar . Das Senden aller Daten an die Cloud umgeht den Vorteil des Edge-Computing . Furthermore, not all data in a cloud edge context is available in the cloud. Sending all data to the cloud bypasses the advantage of edge computing.
In einem Klienten-Server-System liegt eine Rechenvorrichtung mit einem Prozessor und einem Speicher an der Edge . Außerdem verfügen Edge-Geräte häufig nicht über ausreichende Fähigkeiten, um ein vollständiges Training von ML-Modellen durchzuführen . In a client-server system, a computing device with a processor and memory is located at the edge. Additionally, edge devices often do not have sufficient capabilities to perform full training of ML models.
In modernen Cloud-Edge-Umgebungen nach dem Stand der Technik wird beispielsweise das Training und die Inferenz nur in der Cloud durchgeführt . Dies hat den Vorteil , dass alle Daten an einem Ort verarbeitet und gespeichert werden . Klienten rufen diese Daten von einer zentralen Stelle ab . Jedoch ist keine Echt zeitinteraktion mit einem Prozess , welcher an einem Klienten ausgeführt wird, möglich . For example, in modern state-of-the-art cloud edge environments, training and inference are only performed in the cloud. This has the advantage that all data is processed and stored in one place. Clients access this data from a central location. However, real-time interaction with a process that is running on a client is not possible.
Alternativ wird im Stand der Technik Training in der Cloud und die Inferenz an der Edge durchgeführt . Dies führt dazu, dass performantes Training in der Cloud und Prozessinteraktion in Echtzeit an der Edge ausgeführt wird . Jedoch werden dabei Daten über die Cloud und die Edge verstreut verarbeitet oder gespeichert , was nachteilig ist , da das Aktualisieren von Modellen typischerweise nur in der Cloud möglich ist .Alternatively, in the prior art, training is carried out in the cloud and inference is carried out at the edge. This results in high-performance training in the cloud and real-time process interaction at the edge. However, data is processed or stored scattered across the cloud and the edge, which is disadvantageous because updating models is typically only possible in the cloud.
Soll ein ML-Verfahren j edoch auf einem verteilten System ausgeführt werden, kann sich zusätzlich eine höhere Komplexität ergeben, nämlich insofern, als ein initiales Modell zur Anomalie-Erkennung in der Cloud trainiert werden muss , und anschließen an diverse Edge-Vorrichtungen verteilt werden muss .However, if an ML method is to be executed on a distributed system, additional complexity may arise, namely in that an initial model for anomaly detection must be trained in the cloud and then distributed to various edge devices .
Dabei ist es oft schwierig, eine geeignete Verteilung von Rechen-Aufgaben, wie ML-Modell-Aktualisierungen durch erneutes Training, an mehrere performante Rechen-Vorrichtungen durchzuführen und eine vorteilhafte Auslastung des gesamten Rechen-Systems an der Edge zu erreichen . It is often difficult to carry out a suitable distribution of computing tasks, such as ML model updates through retraining, to multiple high-performance computing devices and to achieve an advantageous utilization of the entire computing system at the edge.
Im Kontext von maschinellem Lernen wird häufig ein Initiales Modell in der Cloud erzeugt , trainiert und verteilten Klienten bereitgestellt . In the context of machine learning, an initial model is often created in the cloud, trained and deployed to distributed clients.
Eine Berechnung and er Edge kann aus Datenschutz-Gründen bevorzugt werden . Eine Anwendung dieses ML-Modells erfolgt daher vorteilhaft an der Edge , wobei ML-Modell-Aktualisierungen aus dem Betrieb beziehungsweise der Anwendung des ML-Modells aus denselben Gründen ebenfalls an der Edge durchgeführt werden, was j edoch eine sehr hohe Rechen-Kapazität , wie beispielsweise mit einem hoch parallelisierten Rechen-Kern wie einer GPU ( engl- „graphic processing unit" ) , erfordern kann . A calculation at the edge may be preferred for data protection reasons. An application of this ML model is therefore advantageously carried out at the edge, whereby ML model updates from the operation or application of the ML model are also carried out at the edge for the same reasons, but this requires a very high computing capacity For example, with a highly parallelized computing core such as a GPU (graphic processing unit).
Die reine Anwendung eines ML-Modells kann meistens auf Rechenvorrichtungen mit einfacherer Komplexität und Kapazität ausgeführt werden . Dies umfasst beispielsweise auch Datenerfassung durch Sensoren wie Kameras oder von einer PLC ( engl . „programmable logic controller" ) oder anderen Sensor-Mitteln .The pure application of an ML model can mostly be carried out on computing devices with simpler complexity and capacity. This also includes, for example, data collection by sensors such as cameras or by a PLC (programmable logic controller) or other sensor means.
Es ist daher Aufgabe der Erfindung eine Lösung bereitzustellen, mittels welcher eine vorteilhafte Verteilung von Rechenaufgaben auf mehrere Rechenvorrichtungen durchgeführt werden kann . It is therefore the object of the invention to provide a solution by means of which an advantageous distribution of computing tasks can be carried out across multiple computing devices.
Die erfindungsgemäße Aufgabe wird durch ein Verfahren eingangs genannter Art gelöst , wobei folgende Schritte ausgeführt werden : i ) Bestimmen j eweils einer Gewichts funktion für j ede Rechenaufgabe aus der Menge an Rechenaufgaben zwischen der zumindest einen ersten Rechenvorrichtung und den zumindest zwei zweiten Rechenvorrichtungen, wobei die Gewichts funktion aufweist : The object according to the invention is solved by a method of the type mentioned at the beginning, the following steps being carried out: i) determining a weight function for each computing task from the set of computing tasks between the at least one first computing device and the at least two second computing devices, whereby the Weight function has:
• eine Priorität der Rechenaufgabe , • a priority of the calculation task,
• einen Kommunikations-Parameter bezüglich der Kommunikations Verbindung, • a communication parameter regarding the communication connection,
• einen Reihungs faktor für die Bearbeitung der Rechenaufgabe , vorzugsweise beginnend bei null , • a ranking factor for processing the calculation problem, preferably starting at zero,
• einen Speicher-Parameter für den benötigten Speicherbedarf bei der Aus führung der Rechenaufgabe , • einen Aus führungs-Parameter für den benötigten Rechenbedarf bei der Aus führung der Rechenaufgabe , ii ) Ermitteln der Aus führungskapazität hinsichtlich Kommunikations- , Speicher- und Aus führungs-Eigenschaften der zumindest zwei zweiten Rechenvorrichtungen, iii ) Sortieren der zuvor bestimmten Gewicht funktionen, und Festlegen einer Teilmenge der sortierten Gewichtsfunktionen, welche innerhalb eines vorbestimmen Wertebereichs der ermittelten Aus führungskapazität liegen, iv) Verteilen der Teilmenge der Rechenaufgaben, welche der Teilmenge der sortierten Gewichts funktionen zugeordnet ist , an die zumindest zwei zweiten Rechenvorrichtungen, Aus führen der Teilmenge an Rechenaufgaben und Löschen der zugehörigen Gewichts funktion, v) Erhöhen des Reihungs faktors für die Rechenaufgaben, die im vorhergehenden Schritt aufgrund der Aus führungskapazität nicht verteilt wurden, vi ) Solange Gewichts funktionen vorliegen, Fortsetzen mit Schritt ii ) , sonst Beenden . • a memory parameter for the memory required when executing the calculation task, • an execution parameter for the required computing requirements when executing the computing task, ii) determining the execution capacity with regard to communication, storage and execution properties of the at least two second computing devices, iii) sorting the previously determined weight functions, and Determining a subset of the sorted weight functions, which lie within a predetermined value range of the determined execution capacity, iv) distributing the subset of the computing tasks, which is assigned to the subset of the sorted weight functions, to the at least two second computing devices, executing the subset of computing tasks and Deleting the associated weight function, v) increasing the ordering factor for the calculation tasks that were not distributed in the previous step due to the execution capacity, vi) As long as weight functions are available, continue with step ii), otherwise terminate.
Dadurch wird erreicht , dass die Rechen-Aufgaben auf besonders ef fi ziente Weise im Rechen-System abgearbeitet werden können und eine Edge-Vorrichtung, welche die Rechen-Vorrichtungen umfasst , für die entsprechende Verwendung optimal angepasst ausgelegt werden kann . This ensures that the computing tasks can be processed in a particularly efficient manner in the computing system and an edge device, which includes the computing devices, can be designed to be optimally adapted for the corresponding use.
In einer Weiterbildung der Erfindung ist es vorgesehen, dass j eweils die Gewichts funktion bestimmt wird, indem die Priorität , der Kommunikations-Parameter und der Reihungs faktor j eweils in einem Wertebereich zwischen 0 und 1 liegen und deren Summe einen Rechen-Parameter bilden, und der Speicher- Parameter und der Aus führungs-Parameter j eweils in einem Wertebereich zwischen 0 und 1 liegen und deren Summe einen Berechnungs-Parameter bilden, und die Di f ferenz von Rechen- Parameter und Berechnungs-Parameter die Gewichts funktion bilden . In a further development of the invention it is provided that the weight function is determined in each case by the priority, the communication parameter and the ranking factor each being in a value range between 0 and 1 and the sum of which forms a calculation parameter, and the storage parameters and the execution parameters each lie in a value range between 0 and 1 and the sum of which forms a calculation parameter, and the difference between calculation parameters Parameters and calculation parameters form the weight function.
Dadurch wird erreicht , dass die Gewichts funktion auf eine einfache Weise bestimmt werden kann und welche besonders repräsentative Parameter zur Lösung der erfindungsgemäßen Aufgabe verwendet . This ensures that the weight function can be determined in a simple manner and which particularly representative parameters are used to solve the problem according to the invention.
In einer Weiterbildung der Erfindung ist es vorgesehen, dass nach Schritt i ) geprüft wird, ob die j eweilige Gewichts funktion gleich null ist , und falls j a, die zugehörige Rechenaufgabe in Teil-Rechenaufgaben unterteilt wird und die Teil- Rechenaufgaben der Menge an Rechenaufgaben hinzugefügt wird und die aktuelle Rechenaufgabe aus der Menge an Rechenaufgaben entfernt wird und das Verfahren mit Schritt i ) fortgesetzt wird . In a further development of the invention it is provided that after step i) it is checked whether the respective weight function is equal to zero, and if so, the associated calculation task is divided into sub-arithmetic tasks and the sub-arithmetic tasks are added to the set of calculation tasks and the current calculation task is removed from the set of calculation tasks and the method is continued with step i).
Dadurch wird erreicht , dass auch große Rechenaufgaben beziehungsweise deren zugeordneten Gewichts funktionen - beispielsweise mit hohem Rechenbedarf oder hohem Speicherbedarf - durch das Verfahren ef fi zient abgearbeitet werden können und zugleich andere Rechenaufgaben nicht zu lange unbearbeitet bleiben . This ensures that even large computing tasks or their associated weight functions - for example with high computing requirements or high memory requirements - can be processed efficiently using the method and at the same time other computing tasks do not remain unprocessed for too long.
Eine Rechenaufgabe ist einer Gewichts funktion zugeordnet und durch diese abgebildet , wonach eine Teilmenge einer Gewichtsfunktion auch einer Teilmenge einer Rechenaufgabe entspricht . Dementsprechend können Teil-Rechenaufgaben auch Teil- Gewichts funktionen zugeordnet werden . A calculation task is assigned to a weight function and is represented by it, according to which a subset of a weight function also corresponds to a subset of a calculation task. Accordingly, partial calculation tasks can also be assigned partial weight functions.
In einer Weiterbildung der Erfindung ist es vorgesehen, dass das Verfahren eine Verwendung zur Anomalie-Erkennung beim Betrieb eines technischen Geräts findet , welches von einem Kli- enten-Server-System mit einem Server und einen Klienten mit der zumindest einen ersten Rechenvorrichtung betrieben wird und zusätzlich folgende Verfahrens-Schritte ausgeführt werden : a ) Erfassen aus dem Betrieb des technischen Geräts und Bereitstellen von ersten Trainings-Daten vom Klienten an den Server, Erzeugen und Trainieren eines ersten Modells in Form eines Auto-Encoders durch den Server, und Bereitstellen des ersten Modells in Form von ersten Gewichten vom Server an den Klienten, sowie Laden und Speichern des ersten Modells in der zumindest einen ersten Rechenvorrichtung, b ) Erfassen von Betriebs-Daten des technischen Geräts und Bestimmen einer Anomalie-Kenngröße hinsichtlich der Übereinstimmung mit dem ersten Modell durch die zumindest eine erste Rechenvorrichtung, c ) Prüfen, ob die Anomalie-Kenngröße innerhalb eines vorbestimmten Werte-Bereichs liegt , wenn j a, fortfahren mit Schritt b ) , sonst fortfahren mit Schritt d) , d) Bereitstellen der ersten Modell-Gewichte des Auto- Encoders und Speichern mit der Anomalie-Kenngröße im Speicher durch die zumindest eine erste Rechenvorrichtung, e ) Prüfen, ob eine vorbestimmte Anzahl an gespeicherten ersten Modell-Gewichte des Auto-Encoders für j eweilige Anomalie-Kenngrößen erreicht ist , wenn j a, dann Fortfahren mit Schritt b ) , sonst Fortfahren mit Schritt f ) , f ) Übermitteln der gespeicherten ersten Modell-Gewichte für j eweilige Anomalie-Kenngrößen an die zumindest zwei zweiten Rechenvorrichtungen, welche vom Klienten umfasst ist und Berechnen eines zweiten Modells in Form eines Auto- Encoders mit zweiten Modell-Gewichten durch Bestimmen der Inferenz durch eine der zumindest zwei zweiten Rechenvorrichtungen, g) Übermitteln der zweiten Modell-Gewichte des zuvor berechneten zweiten Modells an die zumindest eine erste Rechenvorrichtung, und Löschen der im Schritt f ) übermittelten ersten Modell-Gewichte aus dem Speicher der zumindest ei- nen ersten Rechenvorrichtung, und Fortfahrten mit Schritt b ) . In a further development of the invention, it is provided that the method is used for anomaly detection when operating a technical device, which is operated by a client-server system with a server and a client with the at least one first computing device and The following procedural steps must also be carried out: a) Acquiring from the operation of the technical device and providing first training data from the client to the server, generating and training a first model in the form of an auto-encoder by the server, and providing the first model in the form of first weights from the server to the client, as well as loading and storing the first model in the at least one first computing device, b) acquiring operating data of the technical device and determining an anomaly parameter with regard to the agreement with the first model by the at least one first computing device, c) Check whether the anomaly characteristic is within a predetermined value range, if so, continue with step b), otherwise continue with step d), d) provide the first model weights of the auto-encoder and save with the anomaly characteristic in the memory by the at least one first computing device, e) Check whether a predetermined number of stored first model weights of the auto-encoder for respective anomaly parameters has been reached, if so, then continue with step b), otherwise continue with step f ) , f ) Transmitting the stored first model weights for respective anomaly parameters to the at least two second computing devices, which are included by the client, and calculating a second model in the form of an auto-encoder with second model weights by determining the inference by one of the at least two second computing devices, g) transmitting the second model weights of the previously calculated second model to the at least one first computing device, and deleting the first model weights transmitted in step f) from the memory of the at least one nen first computing device, and continue with step b).
Dadurch ist ein Modell-Training in der Cloud vorgesehen, die Inferenz wird j edoch an der Edge berechnet , außerdem erfolgt ein erneutes Trainieren ( engl . „re-training" ) an der Edge .This provides for model training in the cloud, but the inference is calculated at the edge, and re-training also takes place at the edge.
Dadurch ist es möglich ein performantes Training in der Cloud aus zuführen, sowie eine Prozess- Interaktion in Echtzeit zu erlauben, und ferner ein Re-Training von ML-Modellen wiederum an der Edge durchzuführen, um beispielsweise die Modellgenauigkeit aufgrund neuer Trainings-Daten, welche aus dem vorhergehenden Betrieb eines technischen Geräts mit dem vorhergehenden ML-Modell gewonnen wurden, zu verbessern . This makes it possible to carry out high-performance training in the cloud, as well as to allow process interaction in real time, and also to re-train ML models at the edge, for example to improve model accuracy based on new training data obtained from the previous operation of a technical device with the previous ML model.
Die Daten liegen zwar über Klienten und Server verteilt , j edoch kann durch Anwendung föderierten Lernens das neue ML- Modell an andere Klienten verteilt werden, ohne die Rohdaten selbst im verteilten Klienten-Server-System zu verteilen, was zu einer verbesserten Datensicherheit und Privatsphäre führt .Although the data is distributed across clients and servers, by applying federated learning, the new ML model can be distributed to other clients without distributing the raw data itself in the distributed client-server system, resulting in improved data security and privacy .
In einer Weiterbildung der Erfindung ist es vorgesehen, dass die Anomalie-Kenngröße der Rekonstruktions-Fehler des Auto- Encoders ist . In a further development of the invention it is provided that the anomaly parameter is the reconstruction error of the auto-encoder.
Dadurch kann auf besonders einfache Weise eine besonders aussagekräftige Anomalie-Kenngröße ermittelt werden . This makes it possible to determine a particularly meaningful anomaly parameter in a particularly simple manner.
In einer Weiterbildung der Erfindung ist es vorgesehen, dass die Größe der Speicherbelegung des Speichers der zumindest einen ersten Rechenvorrichtung zum Speichern der im Schritt e ) vorbestimmte Anzahl an gespeicherten ersten Modell- Gewichte des Auto-Encoders proportional zur Bandbreite der Kommunikations-Verbindung zwischen der zumindest einen ersten Rechenvorrichtung und der zumindest zwei zweiten Rechenvorrichtungen vorgesehen ist . Dadurch wird erreicht , dass erst bei Überschreiten einer vorgegebenen Anzahl an Rekonstruktions-Fehlern eine Aktualisierung des Modells erfolgt . In a further development of the invention, it is provided that the size of the memory occupancy of the memory of the at least one first computing device for storing the number of stored first model weights of the auto-encoder predetermined in step e) is proportional to the bandwidth of the communication connection between the at least a first computing device and at least two second computing devices are provided. This ensures that the model is only updated when a predetermined number of reconstruction errors are exceeded.
In einer Weiterbildung der Erfindung ist es vorgesehen, dass die im Schritt f ) berechneten zweiten Modell-Gewichte vom Klienten dem Server bereitgestellt werden, und das Klienten- Server-System vorzugsweise einen weiteren Klienten mit einem weiteren technischen Gerät aufweist und der Server dazu eingerichtet ist , die zweiten Modell-Gewichte dem weiteren Klienten durch föderiertes Lernen bereitzustellen . In a further development of the invention it is provided that the second model weights calculated in step f) are provided by the client to the server, and the client-server system preferably has a further client with a further technical device and the server is set up for this purpose to provide the second model weights to the other client through federated learning.
Dadurch kann erreicht werden, dass das aktualisierte zweite Modell auf einfache Weise von weiteren Klienten genutzt werden können, ohne selbst dafür nötige Rechenoperationen aus zuführen . Somit ist für weitere Klienten eine Bauart mit reduzierter Komplexität und geringeren Kosten möglich, und es können insbesondere Prinzipen föderierten Lernens angewendet werden . This means that the updated second model can be easily used by other clients without having to carry out the necessary arithmetic operations themselves. This means that a design with reduced complexity and lower costs is possible for other clients, and in particular principles of federated learning can be applied.
Die erfindungsgemäße Aufgabe wird durch ein Rechen-System eingangs genannter Art gelöst , umfassend zumindest eine erste Rechenvorrichtung und zumindest zwei zweite Rechenvorrichtungen, j eweils mit einem Prozessor und einem Speicher, wobei die zumindest eine erste Rechenvorrichtung j eweils mit den zumindest zwei zweiten Rechenvorrichtungen durch eine Kommunikationsverbindung verbunden ist und das Rechen-System dazu eingerichtet ist , das erfindungsgemäße Verfahren aus zuführen .The object according to the invention is achieved by a computing system of the type mentioned at the outset, comprising at least a first computing device and at least two second computing devices, each with a processor and a memory, the at least one first computing device each being connected to the at least two second computing devices by a Communication connection is connected and the computing system is set up to carry out the method according to the invention.
Die erfindungsgemäße Aufgabe wird durch ein Computerprogramm gelöst , umfassend Befehle , welche bei deren Aus führung durch einen Computer diesen veranlassen, das erfindungsgemäße Verfahren aus zuführen . The object according to the invention is solved by a computer program comprising commands which, when executed by a computer, cause it to carry out the method according to the invention.
Die erfindungsgemäße Aufgabe wird durch einen elektronisch lesbaren Datenträger mit darauf gespeicherten lesbaren Steuerinformationen gelöst , welche zumindest das erfindungsgemäße Computerprogramm umfassen und derart ausgestaltet sind, dass sie bei Verwendung des Datenträgers in einer Recheneinrichtung das erfindungsgemäße Verfahren durchführen . The object according to the invention is achieved by an electronically readable data carrier with readable control information stored thereon, which at least corresponds to that according to the invention Include computer program and are designed such that they carry out the method according to the invention when using the data carrier in a computing device.
Die erfindungsgemäße Aufgabe wird durch ein Datenträgersignal gelöst , welches das erfindungsgemäße Computerprogramm überträgt . The object according to the invention is achieved by a data carrier signal which transmits the computer program according to the invention.
Die Erfindung wird nachfolgend anhand eines in den beigeschlossenen Zeichnungen dargestellten Aus führungsbeispiels näher erläutert . In den Zeichnungen zeigt : The invention is explained in more detail below using an exemplary embodiment shown in the accompanying drawings. In the drawings shows:
Fig . 1 ein Aus führungsbeispiel des erfindungsgemäßen Verfahrens als Ablauf diagramm, Fig. 1 an exemplary embodiment of the method according to the invention as a flow chart,
Fig . 2 ein Aus führungsbeispiel des erfindungsgemäßen Systems als Blockschaltbild, Fig. 2 an exemplary embodiment of the system according to the invention as a block diagram,
Fig . 3 ein Aus führungsbeispiel einer Verwendung des erfindungsgemäßen Verfahrens als Ablauf diagramm, Fig. 3 an exemplary embodiment of a use of the method according to the invention as a flow chart,
Fig . 4 ein Aus führungsbeispiel einer Verwendung des erfindungsgemäßen Systems als Blockschaltbild . Fig. 4 an exemplary embodiment of a use of the system according to the invention as a block diagram.
Fig . 1 stellt ein Aus führungsbeispiel des erfindungsgemäßen Verfahrens als Ablauf diagramm dar, wobei das Verfahren auf einem in der Fig . 2 dargestellten System ablaufen kann . Fig. 1 shows an exemplary embodiment of the method according to the invention as a flow chart, the method being based on one shown in FIG. 2 can run.
Das Verfahren zur Bearbeitung einer Menge an Rechenaufgaben durch ein System ist zumindest in Teilen computerimplementiert . The process for processing a number of computing tasks by a system is at least partially computer-implemented.
Ein Rechen-System umfasst zumindest eine erste Rechenvorrichtung ELC1-ELCN und zumindest zwei zweite Rechenvorrichtungen EAC1-EACN, j eweils mit einem Prozessor und einem Speicher . A computing system includes at least a first computing device ELC1-ELCN and at least two second computing devices EAC1-EACN, each with a processor and a memory.
Die zumindest eine erste Rechenvorrichtung ELC1-ELCN ist mit den zumindest zwei zweiten Rechenvorrichtungen EAC1-EACN durch j eweilige Kommunikationsverbindungen verbunden . The at least one first computing device ELC1-ELCN is connected to the at least two second computing devices EAC1-EACN through respective communication connections.
Folgende Verfahrens-Schritte werden ausgeführt : i) Bestimmen jeweils einer Gewichtsfunktion wll-wl3, wNl- wN3 für jede Rechenaufgabe aus der Menge an Rechenaufgaben zwischen der zumindest einen ersten Rechenvorrichtung ELC1-ELCN und den zumindest zwei zweiten Rechenvorrichtungen EAC1-EACN, wobei die Gewichtsfunktion aufweist: The following procedural steps are carried out: i) determining a weight function wll-wl3, wNl-wN3 for each calculation task from the set of calculation tasks between the at least one first computing device ELC1-ELCN and the at least two second computing devices EAC1-EACN, the weight function having:
• eine Priorität der Rechenaufgabe, • a priority of the calculation task,
• einen Kommunikations-Parameter bezüglich der Kommunikations Verbindung, • a communication parameter regarding the communication connection,
• einen Reihungsfaktor für die Bearbeitung der Rechenaufgabe, vorzugsweise beginnend bei null, • a sequencing factor for processing the calculation problem, preferably starting at zero,
• einen Speicher-Parameter für den benötigten Speicherbedarf bei der Ausführung der Rechenaufgabe,• a memory parameter for the memory required when executing the calculation task,
• einen Ausführungs-Parameter für den benötigten Rechenbedarf bei der Ausführung der Rechenaufgabe, ii) Ermitteln der Ausführungskapazität hinsichtlich Kommunikations-, Speicher- und Ausführungs-Eigenschaften der zumindest zwei zweiten Rechenvorrichtungen EAC1- EACN, iii) Sortieren der zuvor bestimmten Gewicht funktionen wll- wl3, wNl-wN3, und Festlegen einer Teilmenge der sortierten Gewichtsfunktionen, welche innerhalb eines vorbestimmen Wertebereichs der ermittelten Ausführungskapazität liegen, iv) Verteilen der Teilmenge der Rechenaufgaben, welche der Teilmenge der sortierten Gewichtsfunktionen zugeordnet ist, an die zumindest zwei zweiten Rechenvorrichtungen EAC1-EACN, Ausführen der Teilmenge an Rechenaufgaben und Löschen der zugehörigen Gewichtsfunktion, v) Erhöhen des Reihungsfaktors für die Rechenaufgaben, die im vorhergehenden Schritt aufgrund der Ausführungskapazität nicht verteilt wurden, vi) Solange Gewichtsfunktionen vorliegen, Fortsetzen mit Schritt ii) , sonst Beenden. • an execution parameter for the required computing requirements when executing the computing task, ii) determining the execution capacity with regard to communication, storage and execution properties of the at least two second computing devices EAC1-EACN, iii) sorting the previously determined weight functions wll-wl3 , wNl-wN3, and determining a subset of the sorted weight functions, which lie within a predetermined value range of the determined execution capacity, iv) distributing the subset of the computing tasks, which is assigned to the subset of the sorted weight functions, to the at least two second computing devices EAC1-EACN, Executing the subset of calculation tasks and deleting the associated weight function, v) increasing the ordering factor for the calculation tasks that were not distributed in the previous step due to the execution capacity, vi) As long as weight functions are available, continue with step ii), otherwise terminate.
Optional kann die Gewichtsfunktion jeweils bestimmt werden, indem die Priorität, der Kommunikations-Parameter und der Reihungsfaktor jeweils in einem Wertebereich zwischen 0 und 1 liegen und deren Summe einen Rechen-Parameter bilden, und der Speicher-Parameter und der Ausführungs-Parameter jeweils in einem Wertebereich zwischen 0 und 1 liegen und deren Summe einen Berechnungs-Parameter bilden, und die Differenz von Rechen-Parameter und Berechnungs-Parameter die Gewichtsfunktion bilden . Optionally, the weight function can be determined in each case by the priority, the communication parameter and the ranking factor each being in a value range between 0 and 1 and the sum of which forms a calculation parameter, and the storage parameter and the execution parameter each in one Value range between 0 and 1 and the sum of which forms a calculation parameter, and the difference between the calculation parameter and the calculation parameter forms the weight function.
Beispielsweise kann die Priorität P (engl. „priority factor") für eine aktuelle Rechenaufgabe, welche durch eine erste Rechenvorrichtung ausgewählt ist, im Werte-Bereich 0% ... 100% liegen . For example, the priority P (priority factor) for a current computing task, which is selected by a first computing device, can be in the value range 0% ... 100%.
Ein hoher Wert wie 100% bedeutet, dass das Modell eine dringende Aktualisierung benötigt, und ein niedriger Wert wie 1% bedeutet, dass eine Aktualisierung nicht notwendig ist. A high value like 100% means that the model needs an urgent update, and a low value like 1% means that an update is not necessary.
Der Kommunikations-Parameter E (engl. „communication efficiency factor") kann ebenso im Werte-Bereich 0% ... 100% liegen, wobei hoher Wert wie 100% bedeutet, dass eine sehr gute Netzwerk-Qualität vorliegt, und ein niedriger Wert wie 1% bedeutet, dass die Verbindung eine schlechte Übertragungs- Qualität aufweist. The communication parameter E ("communication efficiency factor") can also be in the value range 0% ... 100%, where a high value such as 100% means that there is very good network quality, and a low value like 1% means that the connection has poor transmission quality.
Der Reihungsfaktor S (engl. „starvation factor") kann ebenso im Werte-Bereich 0% ... 100% liegen, wobei der Reihungsfaktor bei jedem Iterationsdurchgang erhöht wird, beispielsweise um 10%. Dies dient dazu, die Dringlichkeit der Abarbeitung einer Rechenaufgabe schrittweise zu erhöhen, um die Rechenaufgabe nicht „verhungern" zu lassen. The ranking factor S (English "starvation factor") can also be in the value range 0% ... 100%, whereby the ranking factor is increased with each iteration, for example by 10%. This serves to determine the urgency of processing a calculation task increase gradually so as not to “starve” the calculation task.
Der Speicher-Parameter U (engl. „utilization factor") kann auch im Werte-Bereich 0% ... 100% liegen, wobei der Speicher- Parameter eine Speicher-Belegung des Arbeitsspeichers und/oder des Festplattenspeichers abbilden kann . Der Speicher kann benötigt werden, um beispielsweise temporär oder dauerhaft einen Datensatz auf einer zweiten Rechenvorrichtung zu speichern . The memory parameter U (“utilization factor”) can also be in the value range 0% ... 100%, whereby the memory Parameters can map a memory occupancy of the main memory and/or hard drive storage. The memory may be required, for example, to temporarily or permanently store a data set on a second computing device.
Ein hoher Wert wie 100% bedeutet , dass das Modell einen hohen Speicherbedarf aufweist , und ein niedriger Wert wie 1 % bedeutet , dass das Modell einen niedrigen Speicherbedarf aufweist .A high value like 100% means the model has a high memory footprint, and a low value like 1% means the model has a low memory footprint.
Der Aus führungs-Parameter C ( engl . „computational factor" ) kann auch im Werte-Bereich 0% ... 100% liegen, wobei der Ausführungs-Parameter eine Rechenkapazität abbilden kann . Die Rechenkapazität kann benötigt werden, um beispielsweise eine Rechenaufgabe auf einer zweiten Rechenvorrichtung aus zuführen . The execution parameter C (English "computational factor") can also be in the value range 0% ... 100%, whereby the execution parameter can represent a computing capacity. The computing capacity can be required, for example, to carry out a computing task to a second computing device.
Ein hoher Wert wie 100% bedeutet , dass das Modell einen hohen Rechenbedarf aufweist - beispielsweise durch eine hohe Anzahl parallel organisierter Rechenkerne , wie bei einer GPU - , und ein niedriger Wert wie 1 % bedeutet , dass das Modell einen niedrigen Rechenbedarf aufweist A high value such as 100% means that the model has a high computing requirement - for example due to a high number of parallel processing cores, like a GPU - and a low value such as 1% means that the model has a low computing requirement
Der Rechen-Parameter wird durch die Summe der Priorität , des Kommunikations-Parameters und des Reihungs faktors gebildet .The calculation parameter is formed by the sum of the priority, the communication parameter and the ordering factor.
Der Berechnungs-Parameter wird durch die Summe des Speicher- Parameters und des Aus führungs-Parameters gebildet . The calculation parameter is formed by the sum of the storage parameter and the execution parameter.
Wird der Berechnungs-Parameter von dem Rechen-Parameter subtrahiert , erhält man die Gewichts funktion wAB = (P + E + 5) - ((/ + C) wobei A eine erste Rechenvorrichtung und B eine zweite Rechenvorrichtung ist . If the calculation parameter is subtracted from the calculation parameter, the weight function w AB = (P + E + 5) - ((/ + C) is obtained, where A is a first computing device and B is a second computing device.
Für j ede Rechenaufgabe mit einer Gewichts funktion von mehr als 100% können diese „ausgehende" Kanten sortiert werden, wenn zur Veranschaulichung eine Analogie zu einem bipartiten Graphen wie nach Fig . 2 hergestellt wird . For any calculation task with a weight function of more than 100%, these “outgoing” edges can be sorted, if to illustrate an analogy to a bipartite graph as shown in Fig. 2 is produced.
Nach der Neusortierung werden all j ene Kanten entfernt , welche im aktuellen Durchlauf nicht abgearbeitet werden können und der verbleibende Graph wird zur weiteren Bearbeitung herangezogen . After re-sorting, all edges that cannot be processed in the current run are removed and the remaining graph is used for further processing.
Anschließend werden die noch nicht abgearbeiteten Rechenaufgaben erfasst und als neue Iterationsschlei fe wie zuvor ausgeführt bearbeitet , bis alle Rechenaufgaben erledigt sind .The calculation tasks that have not yet been processed are then recorded and processed as a new iteration loop as previously carried out until all calculation tasks have been completed.
Beispielsweise können P=100% , E=80% , S=0% sowie U=50% , C= 50% gewählt werden, sodass die Gewichts funktion w=80% beträgt .For example, P=100%, E=80%, S=0% and U=50%, C= 50% can be selected, so that the weight function is w=80%.
In diesem Beispiel bedeutet das für eine Rechenaufgabe , dass sie eine hohe Priorität aufweist , eine gute Netzwerk- Bandbreite vorliegt , die Rechenaufgabe erstmalig zur Abarbeitung vorgesehen ist , eine moderate Größe des Datensatzes vorliegt und ein moderater Rechenbedarf vorgesehen ist . Daher ist es wahrscheinlich, dass eine Anforderung zur Abarbeitung der Rechenaufgabe erfolgreich erledigt wird, auch wenn aktuell eine hohe Last bei einer zweiten Rechenvorrichtung vorliegt . Es kann ferner erwogen werden, ob zur Abarbeitung der Rechenaufgabe durch die zweite Rechenvorrichtung eine Modell- Aktualisierung angefordert wird, um die Parameter zur Bestimmung der Gewichts funktion zu verbessern . In this example, for a computing task this means that it has a high priority, there is good network bandwidth, the computing task is intended to be processed for the first time, the data set is of moderate size and a moderate computing requirement is planned. It is therefore likely that a request to process the computing task will be completed successfully, even if there is currently a high load on a second computing device. It can also be considered whether a model update is requested in order to process the computing task by the second computing device in order to improve the parameters for determining the weight function.
Fernern kann optional nach Schritt i ) geprüft werden, ob die j eweilige Gewichts funktion gleich null ist , und falls j a, die zugehörige Rechenaufgabe in Teil-Rechenaufgaben unterteilt wird und die Teil-Rechenaufgaben der Menge an Rechenaufgaben hinzugefügt wird und die aktuelle Rechenaufgabe aus der Menge an Rechenaufgaben entfernt wird und das Verfahren mit Schritt i ) fortgesetzt wird . Furthermore, it can optionally be checked after step i) whether the respective weight function is equal to zero, and if so, the associated calculation task is divided into sub-arithmetic tasks and the sub-arithmetic tasks are added to the set of calculation tasks and the current calculation task is removed from the Amount of calculation tasks is removed and the method is continued with step i).
Beispielsweise können P=80% , E=50% , S=0% sowie U=80% , C= 0% gewählt werden, sodass die Gewichts funktion w=-30% beträgt . In diesem Beispiel bedeutet das für eine Rechenaufgabe , dass sie eine hohe Priorität aufweist , eine eher moderate Netzwerk-Bandbreite vorliegt , die Rechenaufgabe erstmalig zur Abarbeitung vorgesehen ist , eine große Größe des Datensatzes vorliegt und ein hoher Rechenbedarf vorgesehen ist . Daher ist es unwahrscheinlich, dass eine Anforderung zur Abarbeitung der Rechenaufgabe erfolgreich erledigt wird, wenn aktuell eine hohe Last bei einer zweiten Rechenvorrichtung vorliegt , solange der Reihungs faktor S erhöht wird oder eine erste Rechenvorrichtung die Rechenaufgabe in kleinere Teil- Rechenaufgaben mit kleineren Datensätzen unterteilt . For example, P=80%, E=50%, S=0% and U=80%, C= 0% can be selected, so that the weight function is w=-30%. In this example, this means that a computing task has a high priority, there is a moderate network bandwidth, the computing task is intended to be processed for the first time, the size of the data set is large and a high computing requirement is planned. It is therefore unlikely that a request to process the computing task will be completed successfully if there is currently a high load on a second computing device, as long as the sequencing factor S is increased or a first computing device divides the computing task into smaller sub-arithmetic tasks with smaller data sets.
Mit anderen Worten kann anhand des Vorliegens einer negativen Gewichts funktion erkannt werden, dass eine Rechenaufgabe vorteilhafterweise in kleinere Teilrechenaufgaben unterteilt werden soll , um eine ef fi ziente Abarbeitung zu erreichen .In other words, based on the presence of a negative weight function, it can be recognized that a calculation task should advantageously be divided into smaller partial calculation tasks in order to achieve efficient processing.
Eine vorteilhafte Verwendung des Verfahrens zur Anomalie- Erkennung beim Betrieb eines technischen Geräts ist in Fig . 3 dargestellt , wofür das System der Fig . 4 verwendet werden kann . An advantageous use of the method for anomaly detection when operating a technical device is shown in Fig. 3 shown, for which the system of FIG. 4 can be used.
Ein Klienten-Server-System CSS zur Anomalie-Erkennung beim Betrieb eines technischen Geräts TD1 umfasst einen Server S und einen Klienten Kl mit einer ersten Rechenvorrichtung 1 und einen weiteren, in diesem Beispiel baugleichen Klienten K2 mit einem weiteren technischen Gerät TD2 . A client-server system CSS for anomaly detection when operating a technical device TD1 comprises a server S and a client Kl with a first computing device 1 and a further, in this example, identical client K2 with a further technical device TD2.
Es können j edoch auch weitere Klienten im System eingesetzt werden, welche eine einfachere Bauart vorweisen und das das Modell mithil fe föderierten Lernens beziehen . However, other clients can also be used in the system, which have a simpler design and use the model using federated learning.
Die erste Rechenvorrichtung 1 weist einen Prozessor und einen Speicher auf . The first computing device 1 has a processor and a memory.
Der Klient Kl umfasst ferner eine zweite Rechenvorrichtung 2 , welche mit der ersten Rechenvorrichtung 1 über eine Kommuni- kations-Verbindung C verbunden ist , wobei die Kommunikations- Verbindung C eine vordefinierte Bandbreite aufweist . The client Kl further comprises a second computing device 2, which communicates with the first computing device 1 via a communication cation connection C is connected, the communication connection C having a predefined bandwidth.
Der Klient Kl erfasst vorzugsweise mithil fe der ersten Rechenvorrichtung 1 während eines Referenzbetriebs des technischen Geräts TD1 Testdaten DT , welche einen zulässigen, gültigen Betrieb technischen Geräts TD1 repräsentieren . The client Kl preferably records test data DT with the aid of the first computing device 1 during a reference operation of the technical device TD1, which represents a permissible, valid operation of the technical device TD1.
Die Datenerfassung kann beispielsweise mit einem Sensor- Mittel wie einer Kamera erfolgen und die Testdaten DT können Kamera-Aufnahmen sein . The data acquisition can be done, for example, with a sensor means such as a camera and the test data DT can be camera recordings.
Mithil fe dieser Testdaten DT kann im Server durch Anwendung eines Auto-Encoders ein globales Modell auf Basis maschinellen Lernens für das technische Geräts TD1 erzeugt und trainiert werden . With the help of this test data DT, a global model based on machine learning can be created and trained for the technical device TD1 in the server using an auto-encoder.
In weiterer Folge kann das globale Modell an Klienten Kl , K2 zum Betrieb des technische Geräts TD1 in Form von Gewichten des globalen Modells bereitgestellt werden . Subsequently, the global model can be provided to clients K1, K2 for operating the technical device TD1 in the form of weights of the global model.
Das Verfahren ist computer-implementiert , das heißt ein oder mehrere Schritte werden von einem Computer ausgeführt . The process is computer-implemented, meaning one or more steps are carried out by a computer.
Das Verfahren kann besonders vorteilhaft zur Anomalie- Erkennung beim Betrieb eines technischen Geräts TD1 , welches von einem Klienten-Server-System CSS mit einem Server S und einen Klienten Kl mit der zumindest einen ersten Rechenvorrichtung ELC1-ELCN betrieben wird, verwendet werden, und zusätzlich folgende Verfahrens-Schritte ausgeführt werden : a) Erfassen aus dem Betrieb des technischen Geräts TD1 und Bereitstellen von ersten Trainings-Daten DT vom Klienten Kl an den Server S , Erzeugen und Trainieren eines ersten Modells in Form eines Auto-Encoders durch den Server, und Bereitstellen des ersten Modells in Form von ersten Gewichten vom Server S an den Klienten Kl , sowie Laden und Speichern des ersten Modells in der zumindest einen ersten Rechenvorrichtung ELC1-ELCN, b) Erfassen von Betriebs-Daten des technischen Geräts TD1 und Bestimmen einer Anomalie-Kenngröße hinsichtlich der Übereinstimmung mit dem ersten Modell durch die zumindest eine erste Rechenvorrichtung ELC1-ELCN, c) Prüfen, ob die Anomalie-Kenngröße innerhalb eines vorbestimmten Werte-Bereichs liegt , wenn j a, fortfahren mit Schritt b ) , sonst fortfahren mit Schritt d) , d) Bereitstellen der ersten Modell-Gewichte des Auto- Encoders und Speichern mit der Anomalie-Kenngröße im Speicher durch die zumindest eine erste Rechenvorrichtung ELC1-ELCN, e ) Prüfen, ob eine vorbestimmte Anzahl an gespeicherten ersten Modell-Gewichte des Auto-Encoders für j eweilige Anomalie-Kenngrößen erreicht ist , wenn j a, dann Fortfahren mit Schritt b ) , sonst Fortfahren mit Schritt f ) , f ) Übermitteln der gespeicherten ersten Modell-Gewichte für j eweilige Anomalie-Kenngrößen an die zumindest zwei zweiten Rechenvorrichtungen EAC1-EACN, welche vom Klienten Kl umfasst ist und Berechnen eines zweiten Modells in Form eines Auto-Encoders mit zweiten Modell-Gewichten durch Bestimmen der Inferenz durch eine der zumindest zwei zweiten Rechenvorrichtungen EAC1-EACN, g) Übermitteln der zweiten Modell-Gewichte des zuvor berechneten zweiten Modells an die zumindest eine erste Rechenvorrichtung ELC1-ELCN, und Löschen der im Schritt f ) übermittelten ersten Modell-Gewichte aus dem Speicher der zumindest einen ersten Rechenvorrichtung ELC1-ELCN, und Fortfahrten mit Schritt b ) , The method can be used particularly advantageously for anomaly detection when operating a technical device TD1, which is operated by a client-server system CSS with a server S and a client Kl with the at least one first computing device ELC1-ELCN, and additionally The following procedural steps are carried out: a) recording from the operation of the technical device TD1 and providing first training data DT from the client Kl to the server S, generating and training a first model in the form of an auto-encoder by the server, and Providing the first model in the form of first weights from the server S to the client Kl, as well as loading and saving the first model in the at least one first computing device ELC1-ELCN, b) acquiring operating data of the technical device TD1 and determining an anomaly parameter with regard to the agreement with the first model by the at least one first computing device ELC1-ELCN, c) checking whether the anomaly parameter lies within a predetermined value range , if yes, continue with step b), otherwise continue with step d), d) providing the first model weights of the auto-encoder and storing the anomaly parameter in the memory by the at least one first computing device ELC1-ELCN, e) Check whether a predetermined number of stored first model weights of the auto-encoder has been reached for the respective anomaly parameters, if so, then continue with step b), otherwise continue with step f), f) transmit the stored first model weights. Weights for respective anomaly parameters to the at least two second computing devices EAC1-EACN, which is included by the client Kl and calculating a second model in the form of an auto-encoder with second model weights by determining the inference by one of the at least two second computing devices EAC1-EACN, g) transmitting the second model weights of the previously calculated second model to the at least one first computing device ELC1-ELCN, and deleting the first model weights transmitted in step f) from the memory of the at least one first computing device ELC1-ELCN , and continue with step b),
Die Größe der Speicherbelegung des Speichers der zumindest einen ersten Rechenvorrichtung ELC1-ELCN zum Speichern der im Schritt e ) vorbestimmte Anzahl an gespeicherten ersten Modell-Gewichte des Auto-Encoders ist proportional zur Bandbreite der Kommunikations-Verbindung C zwischen der zumindest einen ersten Rechenvorrichtung ELC1-ELCN und der zumindest zwei zweiten Rechenvorrichtungen EAC1-EACN vorgesehen . The size of the memory occupancy of the memory of the at least one first computing device ELC1-ELCN for storing the number of stored first model weights of the auto-encoder predetermined in step e) is proportional to the bandwidth of the communication connection C between the at least a first computing device ELC1-ELCN and at least two second computing devices EAC1-EACN are provided.
Die zumindest zwei zweiten Rechenvorrichtungen EAC1-EACN sind vorzugsweise Grafikprozessoren ( engl . „graphics processing unit" , kurz GPU) , welche auf ef fi ziente Berechnung spezialisierte und optimierte Prozessoren sind und für künstliche Intelligenz und maschinelles Lernen verwendet werden kann . Weil GPUs außerordentlich viel Rechenleistung bieten, können sie beispielsweise aufgrund von Parallelverarbeitung eine enorme Beschleunigung bei Rechenaufgaben erzielen . The at least two second computing devices EAC1-EACN are preferably graphics processors ("graphics processing unit", or GPU for short), which are processors specialized and optimized for efficient calculation and can be used for artificial intelligence and machine learning. Because GPUs do an extraordinary amount Offering computing power, they can achieve enormous acceleration in computing tasks due to parallel processing, for example.
Ein Grafik-Prozessor kann integrierter Teil der ersten Rechenvorrichtung sein, wie eine integrierte Grafikkarte eines Edge-Computers . A graphics processor can be an integrated part of the first computing device, such as an integrated graphics card of an edge computer.
Das Bereitstellen der ersten Modell-Gewichte des Auto- Encoders im Schritt d) wird auch als „embedding" komprimierter Merkmale beziehungsweise eines komprimierten Merkmalsraums , welcher durch die Modell-Gewichte gebildet wird, bezeichnet . Providing the first model weights of the auto-encoder in step d) is also referred to as “embedding” compressed features or a compressed feature space, which is formed by the model weights.
Es ist klar, dass im gesamten Verfahren ein oder mehrere Anomalie-Kenngrößen angewendet werden können . It is clear that one or more anomaly metrics can be applied throughout the process.
Die im Schritt f ) berechneten zweiten Modell-Gewichte können vom Klienten Kl dem Server S bereitgestellt werden . The second model weights calculated in step f) can be provided to the server S by the client Kl.
Der Server S kann sein globales ML-Modell nun aktualisieren .Server S can now update its global ML model.
Wenn das Klienten-Server-System CSS zumindest einen weiteren Klienten K2 mit einem weiteren technischen Gerät TD2 aufweist , kann das System dem weiteren Klienten K2 durch föderiertes Lernen die zweiten Modell-Gewichte bereitstellen . Bezugszeichenliste : If the client-server system CSS has at least one further client K2 with a further technical device TD2, the system can provide the second model weights to the further client K2 through federated learning. List of reference symbols:
C Datenverbindung mit Übertragungskapazität, (engl. C data connection with transmission capacity
„communication line") "communication line")
CSS Klienten-Server-System (engl. „client-server- system" ) CSS client-server system
D, DT Daten, Trainings-Daten D, DT data, training data
EAC Rechenvorrichtung mit Prozessor und Speicher, EAC computing device with processor and memory,
Klient mit hoher Verarbeitungs- Kapazität (engl. „edge advanced compute") Client with high processing capacity (“edge advanced computing”)
ELC Rechenvorrichtung mit Prozessor und Speicher ,ELC computing device with processor and memory,
Klient mit geringer Verarbeitungs- Kapazität (engl. „edge limited computing")Client with low processing capacity (“edge limited computing”)
Kl, Kl Klient, Edge-Vorrichtung Kl, Kl client, edge device
S Server S servers
TD1, TD2 technisches Gerät, z.B. Motor einer Produktionsanlage wll-wl3, wNl-wN3 Gewicht, Gewichtsfunktion TD1, TD2 technical device, e.g. motor of a production plant wll-wl3, wNl-wN3 weight, weight function

Claims

Patentansprüche Patent claims
1 . Computer-implementiertes Verfahren zur Bearbeitung einer Menge an Rechenaufgaben durch ein System, umfassend zumindest eine erste Rechenvorrichtung (ELC1-ELCN) und zumindest zwei zweite Rechenvorrichtungen (EAC1-EACN) , j eweils mit einem Prozessor und einem Speicher, wobei die zumindest eine erste Rechenvorrichtung (ELC1-ELCN) mit den zumindest zwei zweiten Rechenvorrichtungen (EAC1-EACN) durch j eweilige Kommunikationsverbindungen verbunden sind und folgende Schritte ausgeführt werden : i ) Bestimmen j eweils einer Gewichts funktion (wl l-wl 3 , wNl-wN3 ) für j ede Rechenaufgabe aus der Menge an Rechenaufgaben zwischen der zumindest einen ersten Rechenvorrichtung (ELC1-ELCN) und den zumindest zwei zweiten Rechenvorrichtungen (EAC1-EACN) , wobei die Gewichts funktion aufweist : 1 . Computer-implemented method for processing a set of computing tasks by a system, comprising at least a first computing device (ELC1-ELCN) and at least two second computing devices (EAC1-EACN), each with a processor and a memory, the at least one first computing device (ELC1-ELCN) are connected to the at least two second computing devices (EAC1-EACN) by respective communication connections and the following steps are carried out: i) determining a weight function (wl l-wl 3, wNl-wN3) for each Computing task from the set of arithmetic tasks between the at least one first computing device (ELC1-ELCN) and the at least two second computing devices (EAC1-EACN), the weighting function having:
• eine Priorität der Rechenaufgabe , • a priority of the calculation task,
• einen Kommunikations-Parameter bezüglich der Kommunikations Verbindung, • a communication parameter regarding the communication connection,
• einen Reihungs faktor für die Bearbeitung der Rechenaufgabe , vorzugsweise beginnend bei null , • a ranking factor for processing the calculation problem, preferably starting at zero,
• einen Speicher-Parameter für den benötigten Speicherbedarf bei der Aus führung der Rechenaufgabe ,• a memory parameter for the memory required when executing the calculation task,
• einen Aus führungs-Parameter für den benötigten Rechenbedarf bei der Aus führung der Rechenaufgabe , ii ) Ermitteln der Aus führungskapazität hinsichtlich Kommunikations- , Speicher- und Aus führungs-Eigenschaften der zumindest zwei zweiten Rechenvorrichtungen (EAC1- EACN) , iii ) Sortieren der zuvor bestimmten Gewicht funktio- nen (wl l-wl 3 , wNl-wN3 ) , und Festlegen einer Teilmenge der sortierten Gewichts funktionen, welche innerhalb eines vorbestimmen Wertebereichs der ermittelten Ausführungskapazität liegen, iv) Verteilen der Teilmenge der Rechenaufgaben, welche der Teilmenge der sortierten Gewichts funktionen zugeordnet ist , an die zumindest zwei zweiten Rechenvorrichtungen (EAC1-EACN) , Aus führen der Teilmenge an Rechenaufgaben und Löschen der zugehörigen Gewichtsfunktion, v) Erhöhen des Reihungs faktors für die Rechenaufgaben, die im vorhergehenden Schritt aufgrund der Aus führungskapazität nicht verteilt wurden, vi ) Solange Gewichts funktionen vorliegen, Fortsetzen mit Schritt ii ) , sonst Beenden . • an execution parameter for the required computing requirements when executing the computing task, ii) determining the execution capacity with regard to communication, storage and execution properties of the at least two second computing devices (EAC1-EACN), iii) sorting the previously certain weight functions (wl l-wl 3 , wNl-wN3 ), and specifying a subset of the sorted weight functions which are within a predetermined value range of the determined execution capacity, iv) distributing the subset of computing tasks, which is assigned to the subset of the sorted weight functions, to the at least two second computing devices (EAC1-EACN), executing the subset of computing tasks and deleting the associated weight function, v) Increasing the ordering factor for the calculation tasks that were not distributed in the previous step due to the execution capacity, vi) As long as weight functions are available, continue with step ii), otherwise terminate.
2 . Verfahren nach dem vorhergehenden Anspruch, wobei j eweils die Gewichts funktion bestimmt wird, indem die Priorität , der Kommunikations-Parameter und der Reihungs faktor j eweils in einem Wertebereich zwischen 0 und 1 liegen und deren Summe einen Rechen-Parameter bilden, und der Speicher- Parameter und der Aus führungs-Parameter j eweils in einem Wertebereich zwischen 0 und 1 liegen und deren Summe einen Berechnungs-Parameter bilden, und die Di f ferenz von Rechen- Parameter und Berechnungs-Parameter die Gewichts funktion bilden . 2. Method according to the preceding claim, wherein the weight function is determined in each case by the priority, the communication parameter and the ranking factor each being in a value range between 0 and 1 and the sum of which forms a calculation parameter, and the storage Parameters and the execution parameters each lie in a value range between 0 and 1 and their sum forms a calculation parameter, and the difference between calculation parameters and calculation parameters forms the weighting function.
3 . Verfahren nach dem vorhergehenden Anspruch, wobei nach Schritt i ) geprüft wird, ob die j eweilige Gewichts funktion gleich null ist , und falls j a, die zugehörige Rechenaufgabe in Teil-Rechenaufgaben unterteilt wird und die Teil- Rechenaufgaben der Menge an Rechenaufgaben hinzugefügt wird und die aktuelle Rechenaufgabe aus der Menge an Rechenaufgaben entfernt wird und das Verfahren mit Schritt i ) fortgesetzt wird . 3. Method according to the preceding claim, wherein after step i) it is checked whether the respective weight function is equal to zero, and if so, the associated calculation task is divided into sub-arithmetic tasks and the sub-arithmetic tasks are added to the set of calculation tasks and the Current calculation task is removed from the set of calculation tasks and the method is continued with step i).
4 . Verwendung der Verfahrens nach einem der vorhergehenden Ansprüche zur Anomalie-Erkennung beim Betrieb eines techni- sehen Geräts ( TD1 ) , welches von einem Klienten-Server-4. Use of the method according to one of the preceding claims for anomaly detection when operating a technical see device (TD1) which is used by a client server
System ( CSS ) mit einem Server ( S ) und einen Klienten (Kl ) mit der zumindest einen ersten Rechenvorrichtung (ELC1-ELCN) betrieben wird und zusätzlich folgende Verfahrens-Schritte ausgeführt werden : a ) Erfassen aus dem Betrieb des technischen Geräts ( TD1 ) und Bereitstellen von ersten Trainings-Daten ( DT ) vom Klienten (Kl ) an den Server ( S ) , Erzeugen und Trainieren eines ersten Modells in Form eines Auto-Encoders durch den Server, und Bereitstellen des ersten Modells in Form von ersten Gewichten vom Server ( S ) an den Klienten (Kl ) , sowie Laden und Speichern des ersten Modells in der zumindest einen ersten Rechenvorrichtung (ELC1-ELCN) , b ) Erfassen von Betriebs-Daten des technischen Geräts ( TD1 ) und Bestimmen einer Anomalie-Kenngröße hinsichtlich der Übereinstimmung mit dem ersten Modell durch die zumindest eine erste Rechenvorrichtung (ELC1-ELCN) , c ) Prüfen, ob die Anomalie-Kenngröße innerhalb eines vorbestimmten Werte-Bereichs liegt , wenn j a, fortfahren mit Schritt b ) , sonst fortfahren mit Schritt d) , d) Bereitstellen der ersten Modell-Gewichte des Auto- Encoders und Speichern mit der Anomalie-Kenngröße im Speicher durch die zumindest eine erste Rechenvorrichtung (ELC1-ELCN) , e ) Prüfen, ob eine vorbestimmte Anzahl an gespeicherten ersten Modell-Gewichte des Auto-Encoders für j eweilige Anomalie-Kenngrößen erreicht ist , wenn j a, dann Fortfahren mit Schritt b ) , sonst Fortfahren mit Schritt f ) , f ) Übermitteln der gespeicherten ersten Modell-Gewichte für j eweilige Anomalie-Kenngrößen an die zumindest zwei zweiten Rechenvorrichtungen (EAC1-EACN) , welche vom Klienten (Kl ) umfasst ist und Berechnen eines zweiten Modells in Form eines Auto-Encoders mit zweiten Modell-Gewichten durch Bestimmen der Inferenz durch eine der zumindest zwei zweiten Rechenvorrichtungen (EAC1-EACN) , g) Übermitteln der zweiten Modell-Gewichte des zuvor berechneten zweiten Modells an die zumindest eine erste Rechenvorrichtung (ELC1-ELCN) , und Löschen der im Schritt f ) übermittelten ersten Modell-Gewichte aus dem Speicher der zumindest einen ersten Rechenvorrichtung (ELC1-ELCN) , und Fortfahrten mit Schritt b ) , System (CSS) with a server (S) and a client (Kl) with which at least one first computing device (ELC1-ELCN) is operated and the following procedural steps are additionally carried out: a) Recording from the operation of the technical device (TD1) and providing first training data (DT) from the client (Kl) to the server (S), generating and training a first model in the form of an auto-encoder by the server, and providing the first model in the form of first weights from the server (S) to the client (Kl), as well as loading and saving the first model in the at least one first computing device (ELC1-ELCN), b) acquiring operating data of the technical device (TD1) and determining an anomaly parameter with regard to the Agreement with the first model by the at least one first computing device (ELC1-ELCN), c) Check whether the anomaly parameter is within a predetermined value range, if so, continue with step b), otherwise continue with step d), d) Providing the first model weights of the auto-encoder and storing them with the anomaly parameter in the memory by the at least one first computing device (ELC1-ELCN), e) Checking whether a predetermined number of stored first model weights of the auto-encoder encoder for the respective anomaly parameters is reached, if so, then continue with step b), otherwise continue with step f), f) transmit the stored first model weights for the respective anomaly parameters to the at least two second computing devices (EAC1 -EACN), which is included by the client (Kl ) and calculating a second model in the form of an auto-encoder with second model weights by determining the inference by one of the at least two second computing devices (EAC1-EACN), g) transmitting the second model weights of the previously calculated second model to the at least one first computing device (ELC1-ELCN), and deleting those transmitted in step f). first model weights from the memory of the at least one first computing device (ELC1-ELCN), and continuing with step b),
5. Verwendung nach dem vorhergehenden Anspruch, wobei die Anomalie-Kenngröße der Rekonstruktions-Fehler des Auto- Encoders ist . 5. Use according to the preceding claim, wherein the anomaly parameter is the reconstruction error of the auto-encoder.
6. Verwendung nach einem der Ansprüche 4 oder 5 , wobei die Größe der Speicherbelegung des Speichers der zumindest einen ersten Rechenvorrichtung (ELC1-ELCN) zum Speichern der im Schritt e ) vorbestimmte Anzahl an gespeicherten ersten Modell-Gewichte des Auto-Encoders proportional zur Bandbreite der Kommunikations-Verbindung ( C ) zwischen der zumindest einen ersten Rechenvorrichtung (ELC1-ELCN) und der zumindest zwei zweiten Rechenvorrichtungen (EAC1-EACN) vorgesehen ist . 6. Use according to one of claims 4 or 5, wherein the size of the memory occupancy of the memory of the at least one first computing device (ELC1-ELCN) for storing the number of stored first model weights of the auto-encoder predetermined in step e) is proportional to the bandwidth the communication connection (C) is provided between the at least one first computing device (ELC1-ELCN) and the at least two second computing devices (EAC1-EACN).
7 . Verwendung nach einem der Ansprüche 4 bis 6 , wobei die im Schritt f ) berechneten zweiten Modell-Gewichte vom Klienten (Kl ) dem Server ( S ) bereitgestellt werden, und das Klien- ten-Server-System vorzugsweise einen weiteren Klienten (K2 ) mit einem weiteren technischen Gerät ( TD2 ) aufweist und der Server ( S ) dazu eingerichtet ist , die zweiten Modell-Gewichte dem weiteren Klienten (K2 ) durch föderiertes Lernen bereitzustellen . 7. Use according to one of claims 4 to 6, wherein the second model weights calculated in step f) are provided by the client (Kl) to the server (S), and the client-server system preferably includes a further client (K2). a further technical device (TD2) and the server (S) is set up to provide the second model weights to the further client (K2) through federated learning.
8 . Rechen-System zur Bearbeitung einer Menge an Rechenaufgaben, umfassend zumindest eine erste Rechenvorrichtung (ELC1-ELCN) und zumindest zwei zweite Rechenvorrichtungen (EAC1-EACN) , j eweils mit einem Prozessor und einem Speicher, wobei die zumindest eine erste Rechenvorrichtung (ELC1- ELCN) j eweils mit den zumindest zwei zweiten Rechenvorrichtungen (EAC1-EACN) durch eine Kommunikationsverbindung verbunden ist und das Rechen-System dazu eingerichtet ist , das Verfahren nach einem der Ansprüche 1 bis 3 aus zuführen . 8th . Computing system for processing a set of computing tasks, comprising at least a first computing device (ELC1-ELCN) and at least two second computing devices (EAC1-EACN), each with a processor and a memory, the at least one first computing device (ELC1- ELCN) is each connected to the at least two second computing devices (EAC1-EACN) by a communication connection and the computing system is set up to carry out the method according to one of claims 1 to 3.
9. Computerprogramm, umfassend Befehle , welche bei deren9. Computer program, comprising commands which are used in their
Aus führung durch einen Computer diesen veranlassen, das Verfahren nach einem der Ansprüche 1 bis 3 aus zuführen . Execution by a computer causes it to carry out the method according to one of claims 1 to 3.
10 . Elektronisch lesbarer Datenträger mit darauf gespeicherten lesbaren Steuerinformationen, welche zumindest das Compu- terprogramm nach dem vorhergehenden Anspruch umfassen und derart ausgestaltet sind, dass sie bei Verwendung des Datenträgers in einer Recheneinrichtung das Verfahren nach einem der Ansprüche 1 bis 3 durchführen . 10. Electronically readable data carrier with readable control information stored thereon, which includes at least the computer program according to the preceding claim and is designed in such a way that when the data carrier is used in a computing device, they carry out the method according to one of claims 1 to 3.
11 . Datenträgersignal , welches das Computerprogramm nach An- spruch 9 überträgt . 11. Data carrier signal which the computer program according to claim 9 transmits.
PCT/EP2022/065756 2022-06-09 2022-06-09 Computer-implemented method and system for detecting anomalies during the operation of a technical device WO2023237205A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2022/065756 WO2023237205A1 (en) 2022-06-09 2022-06-09 Computer-implemented method and system for detecting anomalies during the operation of a technical device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2022/065756 WO2023237205A1 (en) 2022-06-09 2022-06-09 Computer-implemented method and system for detecting anomalies during the operation of a technical device

Publications (1)

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

Family

ID=82321591

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2022/065756 WO2023237205A1 (en) 2022-06-09 2022-06-09 Computer-implemented method and system for detecting anomalies during the operation of a technical device

Country Status (1)

Country Link
WO (1) WO2023237205A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0652513A1 (en) * 1993-11-04 1995-05-10 International Business Machines Corporation Task scheduler for a multiprocessor system
US20090254914A1 (en) * 2008-04-07 2009-10-08 At&T Services, Inc. Optimized usage of collector resources for performance data collection through even task assignment
WO2021050790A1 (en) * 2019-09-11 2021-03-18 C3.Ai, Inc. Systems and methods for predicting manufacturing process risks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0652513A1 (en) * 1993-11-04 1995-05-10 International Business Machines Corporation Task scheduler for a multiprocessor system
US20090254914A1 (en) * 2008-04-07 2009-10-08 At&T Services, Inc. Optimized usage of collector resources for performance data collection through even task assignment
WO2021050790A1 (en) * 2019-09-11 2021-03-18 C3.Ai, Inc. Systems and methods for predicting manufacturing process risks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JINWON AN ET AL: "SNU Data Mining Center 2015-2 Special Lecture on IE Variational Autoencoder based Anomaly Detection using Reconstruction Probability", 27 December 2015 (2015-12-27), XP055688241, Retrieved from the Internet <URL:http://dm.snu.ac.kr/static/docs/TR/SNUDM-TR-2015-03.pdf> *

Similar Documents

Publication Publication Date Title
DE102019217613A1 (en) METHOD OF DIAGNOSING AN ENGINE CONDITION AND DIAGNOSTIC MODELING METHOD FOR THEREOF
EP3508930A1 (en) System and method for control and/or analysis of an industrial process
DE102019007340A1 (en) Technology for setting up and operating a neural network
EP3825796A1 (en) Method and device for ki-based operation of an automation system
EP3812949A1 (en) Configurable digital twin
EP3901713B1 (en) Method and device for operating a technical system with optimal model
DE112016003529T5 (en) search system
DE102021204550A1 (en) Method for generating at least one data set for training a machine learning algorithm
DE102020207449A1 (en) Method, computer program and device for processing signals
DE112020006810T5 (en) OPERATING CONDITION CLASSIFICATION SYSTEM AND OPERATING CONDITION CLASSIFICATION METHOD
EP3736742A1 (en) Machine learning system, a method, a computer program and a device for creating the machine learning system
EP3953865A1 (en) Method, device, and computer program for operating a deep neural network
WO2023237205A1 (en) Computer-implemented method and system for detecting anomalies during the operation of a technical device
DE68928071T2 (en) Apparatus and method for generating fuzzy inference rules
WO2023202778A1 (en) Computer-implemented method and system for detecting anomalies during the operation of a technical device
DE102019214436A1 (en) Method, device and computer program for operating an artificial neural network
EP3650964A2 (en) Method for controlling or regulating a technical system
WO2019242968A1 (en) Computing unit, method and computer program for multiplying at least two multiplicands
DE102020132042A1 (en) Method, system, test system and computer program product for the predictive determination of test results for a technical test object
DE102022209953A1 (en) Method for determining an optimal route for producing a product along a production line having at least one process station
DE102021124252A1 (en) Neural network systems for abstract thinking
WO2023144014A1 (en) Technical system with cloud services use
DE102018216727A1 (en) Method for handling data in a central processing unit
DE102021207275A1 (en) Method for creating an artificial neural network
WO2014146686A1 (en) Tool and method for simulating a technical installation

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22735359

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)