WO2020108748A1 - System und verfahren zum auffinden von optimierten kombinationen von berechnungsfunktionen - Google Patents

System und verfahren zum auffinden von optimierten kombinationen von berechnungsfunktionen Download PDF

Info

Publication number
WO2020108748A1
WO2020108748A1 PCT/EP2018/082849 EP2018082849W WO2020108748A1 WO 2020108748 A1 WO2020108748 A1 WO 2020108748A1 EP 2018082849 W EP2018082849 W EP 2018082849W WO 2020108748 A1 WO2020108748 A1 WO 2020108748A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
module
calculation functions
evaluation
designed
Prior art date
Application number
PCT/EP2018/082849
Other languages
English (en)
French (fr)
Inventor
Hans-Henning Klos
Schirin Tolksdorf
Romuald Jupiter BAKAKEU NGASSAM
Jörn PESCHKE
Original Assignee
Siemens Aktiengesellschaft
Friedrich-Alexander-Universität Erlangen-Nürnberg
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 Aktiengesellschaft, Friedrich-Alexander-Universität Erlangen-Nürnberg filed Critical Siemens Aktiengesellschaft
Priority to PCT/EP2018/082849 priority Critical patent/WO2020108748A1/de
Publication of WO2020108748A1 publication Critical patent/WO2020108748A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems

Definitions

  • the invention relates to a system and a method for finding optimized combinations of calculation functions for calculating features of an entity by means of a learning enhancement agent.
  • machine learning For many machine learning processes (machine learning), such as for a classification, which can be designed as a support vector machine or as a "closest neighbor” algorithm (nearest neighbor), preprocessing is necessary. of data is necessary in order to achieve efficient and powerful results.
  • this preprocessing an input data record is reduced to features that serve as input for the classifier.
  • the job of the classifier is to classify data into different classes based on learned features These features are time series for example mean values, minimum or maximum values or also frequency spectra (Fast Fourier Transformation).
  • image data for example, properties such as contrast, edge detection, corner detection can be used as features.
  • An entity or domain is defined here as a specific area of application, for example the prediction of weather data, the analysis of traffic in a city, the detection and analysis of image structures in microscopy, the acquisition of patient data or the monitoring of an industrial plant.
  • Each of these entities is characterized by specific features.
  • features can represent the result of calculation functions or they only correspond to a measured value, such as the size, weight and blood pressure of a patient, for example in healthcare.
  • the features are typically created or defined by experts, which is referred to as feature planning. There are then a number of different characteristics, all of which can be applied to an input data record, and an expert manually selects the suitable characteristics for a specific task.
  • a so-called "closest neighbor” algorithm is used, and then, for example, a key component analysis is used to determine those features which have the greatest influence, for example on a classification or other machine learning methods.
  • These calculation functions determine the most important features and eliminate the unimportant ones.
  • the object on which the invention is based is now to create a method and a system for selecting optimized features and combinations of features which characterize the properties of an entity and which is distinguished by a high level of reliability and accuracy.
  • an automated method is proposed by which an optimized combination of features and an optimized combination of status chains can be found.
  • This object is achieved according to the invention in terms of a system by the features of patent claim 1, and in terms of a method by the features of claim 2.
  • the further claims relate to preferred embodiments of the invention.
  • the invention relates to a system for finding one or more optimized combination (s) of calculation functions for calculating features of an entity, comprising a learning enhancement agent, which is designed to select one or more combination of calculation functions that are to be used a data preprocessing module is passed on, the data preprocessing module being designed to calculate the features from the data of a training data set by means of the selected calculation functions and to pass the features on to a machine learning module which is designed to analyze the features and / or to train and pass on the learning result to an assessment module that is designed to create an assessment for the learning outcome and to pass this assessment of the learning outcome to the learning reinforcement agent, who is trained based on this assessment of the learning outcome select one or more combination (s) of calculation functions.
  • the evaluation module is designed to pass on the evaluation for the learning result to a reward module which is designed to reinforce the evaluation by means of a reinforcement function
  • the learning enhancement agent has a database for evaluating state-action pairs in relation to the selection of actions for states of an entity.
  • the database is advantageously designed as a quality matrix for evaluating the status-action pairs.
  • the database can be designed as a neural network and / or can be expanded by rules.
  • the machine learning module is advantageously designed to use an algorithm from monitored learning (supervised learning) and / or unsupervised learning (unsupervised learning) and / or reinforcing learning (reinforcement learning).
  • a training mode and a runtime mode are provided, the change from the training mode to the runtime mode and / or the change from the runtime mode to the training mode being able to be carried out automatically.
  • the learning enhancement agent is designed to carry out an initialization step for preselecting combinations of functions.
  • the learning reinforcement agent is designed to carry out the selection of the functions as a function of optimization criteria such as the load and / or the computing speed of a terminal.
  • the invention relates to a method for finding one or more optimized combination (s) of calculation functions for calculating features of an entity using a learning reinforcement agent, comprising the following steps:
  • the steps of the method are repeated until an optimized combination of the calculation functions has been found.
  • the evaluation module passes the evaluation on to a reward module which is designed to reinforce the evaluation by an amplification function and / or to generate a reward and to pass the evaluation and / or reward on to the LV agent.
  • the learning enhancement agent uses a database for evaluating status-action pairs in relation to the selection of actions for the status of an entity.
  • the database is advantageously designed as a quality matrix for evaluating the status-action pairs and / or as a neural network and / or can be expanded by rules.
  • a training mode and a runtime mode are provided, the change from the training mode to the runtime mode and the change from the runtime mode to the training mode being carried out automatically.
  • an automated method is thus proposed, by means of which an optimized combination of features and, in a further step, an optimized combination of feature chains can be found.
  • an initialization step is automatically carried out at the beginning, in which combinations of features that lead to no result are sorted out.
  • the automated process includes the implementation of the initialization step, the automatic change to a training mode to find the best combinations of the optimized feature chains with subsequent training of the machine learning module, and the automatic switch to a runtime mode using a trained machine learning module and the optimized feature chains.
  • the method also provides for a new automatic change in the training mode of the machine learning module, e.g. if a change in the entity, the features of which are described, are to be taken into account in the machine learning module or the use of the features has changed. Then there is a switch to runtime mode.
  • Figure 1 is a schematic representation of a transition from one state of an entity to another state of the entity
  • Figure 2 is a block diagram for explaining an embodiment of the system according to the invention.
  • Figure 3 illustrates the concatenation of states of an entity;
  • FIG. 4 shows a further illustration of the chaining of states of an entity
  • FIG. 5 shows a further illustration of the chaining of states of an entity
  • FIG. 6 is a block diagram to explain another
  • FIG. 7 is a flow chart to explain each
  • the entity can be machines and / or industrial plants, but also chemical-physical processes, administrative organizational processes in industry, research and / or administration.
  • entity thus encompasses a broad spectrum of application areas, from simple devices to complex control loops in various domains such as automotive, chemistry, pharmaceutical industry, patient records in the field
  • Actions a are calculation functions, whereby an action can include all types of mathematical functions such as mean values, minimum and maximum values, Fast Fourier transformations, integral and differential calculations, but also convergent neural networks, artificial neural networks and feedback neural networks .
  • FIG. 2 shows a system 100 according to the invention for selecting optimized features m for characterizing an entity.
  • a learning reinforcement agent (LV) reinforcement learning agent 200
  • calculation functions are predefined in accordance with a particular task or corresponding to the respective entity, or these calculation functions are already available.
  • the selection of the calculation functions fl, f2, ..., fN are referred to as actions al, a2, ... aN.
  • the LV agent 200 comprises and / or has access to a quality matrix 220 which represents the basis for the selection of an action a from the actions al, a2, ..., aN for each state.
  • a quality matrix 220 represents the basis for the selection of an action a from the actions al, a2, ..., aN for each state.
  • an initialization step checks whether the combination of different actions a (calculation functions f) matches the data type of the output of a first action a * with the data type of the input for a subsequent second action a **. Only if the output of a first action a * can also be processed by a selected subsequent second action a **, ie only if a corresponding arithmetic operation a * a ** is feasible, this data type is also suitable as an input for the selected subsequent second action a **.
  • the arithmetic operations can be monitored via a typing with subsequent exception handling or, for interpreting languages, via a corresponding exception handling. If a data type of an output of a first action a * does not match the input of a subsequent action a **, the selected second action a ** is rated with a high negative value. This second action a ** is therefore no longer selected for the state s, which is determined by the selection of the first action a *.
  • FIG. 5 schematically shows the sequence of a first training mode for finding an optimized combination of features for the number of three features ml, m2, m3.
  • an action is the selection of a calculation function f, such as the calculation of a minimum or maximum value, a Fourier transformation and / or an average value.
  • a characteristic m2 is the calculation result of a calculation function f applied to a previously determined characteristic ml and thus defined by the calculation results of the selected calculation functions fl, f2, ..., fN in a certain order.
  • selected calculation functions are referred to as states sl, s2, which are defined for the respective application (entity) by the selection of the selected actions a. It is therefore a matter of different terms that are used to denote calculation functions in an LV environment and in a machine learning module.
  • the LV agent 200 selects an action al.
  • the action a2 is selected and in the subsequent state s3 a3 is selected.
  • the sequence of the selected actions al, a2, a3, ..., aN is transferred to a preprocessing module 300.
  • the preprocessing module 300 contains the calculation functions associated with the selected actions al, a2, a3 fl, f2, f3 are applied in the selected order to a training data record 320. After each application of a calculation function f, the calculation result is output as feature m and passed on to the next calculation operation and at the same time to the machine learning module 400.
  • the calculation results of the three calculation functions fl, f2, f3, ie the characteristics ml, m2, m3, are each transferred as an input to the machine learning module 400.
  • the machine learning module 400 is trained with the features ml, m2, m3 of the preprocessing module 300.
  • the machine learning module 400 can use an algorithm 420 from areas of supervised learning and / or unsupervised learning and / or reinforcement learning for training and / or analysis.
  • the learning result of the machine learning module 400 after the training is automatically evaluated by the machine learning module 400, the result of the machine learning, for example a classification, with the specifications from the Test data set 340 compares.
  • the hit rate of the learning result is output as an evaluation in an evaluation module 440.
  • the evaluation module 440 can also be designed as part of the machine learning module 400.
  • the evaluation is used in the context of this invention to automatically generate a reward signal for the LV agent 200. This can be carried out by a one-to-one mapping in a reward module 500 (reward module), one of which very high rating indicates that the objectives have been met to a high degree.
  • the term goal achievement is to be understood in the context of the respective use case or the respective entity.
  • the rating can refer to a high image recognition rate in the area of automatic image recognition software or an exact reproduction of the actual market situation with share prices.
  • An amplification function (for example a sigmoid function or a hybrid function tanh) can be used for the reward signal in the reward module. Only after training and testing the machine learning module 400 does the LV agent 200 receive the reward signal either directly from the evaluation module 440 or from the reward module 500 for the entire calculation sequence from the calculation functions fl, f2, f3. The LV agent 200 assigns this reward signal to all state-action pairs (s
  • a machine learning module 400 is already used in the first training mode carried out.
  • a statement is made about the differences between the different feature chains, for example by means of a main component analysis.
  • an indication of the quality of a calculation function chain i.e. a chain of features, for example through an evaluation such as accuracy, is sufficient.
  • an optimized combination of calculation function chains or feature chains is selected, for which purpose the machine learning module 400 is used, which carries out machine learning.
  • the feature chains were assessed in terms of their quality in the first training mode.
  • the various possible combinations of different feature chains are evaluated, so that training now takes place at a higher, more complex level.
  • the result of machine learning is evaluated by the evaluation module 440 in order to take into account the quality of the machine learning when selecting the combination of the calculation function chains (feature chains).
  • the system 100 according to the invention specifies an evaluation in both training modes.
  • SARSA stands for "state-action-reward-state-action” and is an algorithm for learning an action-value function.
  • update rule update
  • l denotes the number of states s that are to be taken into account before a target state sN
  • actions is evaluated depending on the respective states.
  • the target state sN which contains the entire calculation function chain, has the highest weighting and thus the greatest impact on the updating of the evaluation.
  • the Q value is defined as the maximum sum of all rewards that are achieved when an action a is selected in a state s with the assumption that the optimal action is always selected up to the target state sN.
  • a short-term memory of the states s is stored in the LV agent 200 by the proof of eligibility (Eligibility Trace). The states s present in the short-term memory are taken into account proportionally in the updating of each training cycle.
  • Table 1 schematically shows a Q value matrix in which a Q value (evaluation) is assigned to a state s when an action a is selected.
  • the columns of the Q-value matrix represent actions a that can be carried out in states s.
  • the states s are plotted in the lines.
  • the information as to which state s is defined by which combination of actions a is stored separately.
  • Each state s begins with the start state sl, which is identified by a zero action. According to the table, the Q value for carrying out action al in state sl is 0.67.
  • FIGS. 3 and 4 show two examples for the definition of the states s.
  • the action al is selected in the start state sl and the state s2 results.
  • Action a2 is then selected for state s2 and state s3 follows.
  • the action a4 is selected for the state s2, which results in the state s5, and the state s6 results from the selection of the action a3.
  • a state s is thus defined by a certain sequence of actions a.
  • the "idle operator" aO outputs an input without a change as output.
  • each state s can be described by a vector 10 with the same length in each case.
  • the “idle operator” aO can be used several times in order to obtain the predetermined total length of the vector 10.
  • the start state sl is always initialized by the “idle operator” aO , ie no actions have yet been carried out, so that it is described by the null action above.
  • the exemplary state s4 has arisen from various actions al, a6 and a2.
  • the number of the maximum possible actions a in a state s and thus the maximum length of a state chain 20 is determined.
  • the state chain 20 shown in FIG. 3 is a sequence of states sl, s2, s3, s4, which have arisen from actions a and are therefore defined by them.
  • a status chain 20 is clearly determined by the target status s4, since this includes all actions a that are to be carried out.
  • Another state chain 30 is shown in FIG. 4, which includes a sequence of states s1, s2, s5 and s6.
  • the state s6 is the target state sN here.
  • the Q values can be learned and stored by a neural network. This variant is particularly preferred when the dimensions of possible states and actions a become very large.
  • the calculation function fl associated with the action al is applied to the original training data record 420.
  • the calculation result is stored as feature ml in the machine learning module 300.
  • the calculation function f2 associated with the action a2 is applied to the training data record 320 changed by the calculation function fl.
  • the calculation result is stored as feature m2 in addition to feature ml in machine learning module 300.
  • the calculation function f3 associated with the action a3 is applied to the training data record 320 changed by the calculation functions fl and f2.
  • the calculation result is stored as feature m3 in addition to features ml and m2 in machine learning module 300.
  • the combination of the features ml, m2 and m3 is trained and / or analyzed by the machine learning module 300 and the learning result is evaluated.
  • the combination of the features is rewarded and the respective Q values for the status-action pairs (sl, al) -> ml, (s2, a2) -> m2 and (s3, a3) -> m3 are calculated.
  • the training cycle is repeated until the Q values for the state-action pairs (s
  • the learning (training) can also be ended by an abort criterion.
  • the optimized status chains 20, 30 can then be selected automatically by means of the evaluation by the highest Q values.
  • the optimal combination of the state chains can be learned accordingly, since only the states s with the highest Q value are made available for training.
  • the state chain combination with the highest Q value is permanently set in the preprocessing module 300. Subsequently the system 100 is automatically switched from the training mode to a runtime mode.
  • FIG. 6 shows the system 100 according to the invention in a runtime mode.
  • a signature 360 that is to be analyzed is input into the preprocessing module 300.
  • the results of the preprocessing module 300 - the feature chains - are input into the machine learning module 400.
  • the learning result of the machine learning module 400 can represent a classification 460 with the specification of a probability for each class of the classification.
  • a threshold value check module 480 the probability that actually occurred is compared with an expected probability.
  • Threshold module 480 is a threshold SW for the expected probability. Values above the threshold value SW correspond to the probability of the classification according to the expectation (e.g. the quality of the product) and are passed on by the threshold value check module 480 to a probability exceeding unit 482, which is connected to the signature 360. The method according to the invention remains in runtime mode.
  • the threshold value check module 480 passes this on to a threshold value undershoot unit 482, which is connected to the training data record 320.
  • the training is then carried out again and the system 100 changes from the run time mode to the training mode. If there is no clearly identifiable cause for the change in the probability in the classification, this is often due to a change process in the entity.
  • Threshold check 480 can thus also be used to monitor the entity. Singular changes can be recognized as anomalies and, for example, subjected to a quality inspection. be. The data sets of such anomalies are advantageously stored and additionally learned by the machine learning module 300 in a further training.
  • the system 100 automatically switches to the training mode and trains the machine learning module 300 with a new training data record 320 with the already learned Q value matrix and the optimized status chains.
  • the change to the runtime mode takes place automatically after completion of the training of the machine learning module 300.
  • an optimization of the preprocessing in the preprocessing module 400 is possible if a calculation function f is used in the first place for several status chains 20, 30. Then this calculation does not have to be carried out again for each status chain 20, 30, but can be adopted from the learning result of a previous status chain 20, 30, the learning results being stored in a buffer.
  • the selection of optimized status chains and the optimal combination of optimized status chains 20, 30 can be carried out as a function of the calculation effort, for example by taking the calculation effort for the selected status chain into account in the reward function of the reward module 500.
  • the computing time of the system 100 for each selected status chain 20, 30 is taken into account in the reward function. So a time-intensive computing time can have a negative impact on the reward.
  • the utilization of the system 100 can influence the reward function.
  • the optimized status chain ten and the optimal combination of status chains 20, 30 are optimized for a terminal device by using the computing power of a terminal device for preprocessing the data and, for example, taking the duration and load of the preprocessing into account in the reward function.
  • reinforcement learning is used in order to automatically find an optimal combination of states and state chains 20, 30 that characterize a data set.
  • FIG. 7 shows the method steps for finding optimized feature chains for describing the properties of an entity.
  • step S10 one or more combination (s) of calculation functions fl, f2, ..., fN are selected by the learning reinforcement agent 200.
  • step S20 selected calculation functions fl, f2, ..., fN are passed on from the learning reinforcement agent 200 to the data preprocessing module 300.
  • a step S30 features ml, m2, ..., mN are calculated in the data preprocessing module 300 from the data of a training data record 320 by means of the selected calculation functions fl, f2, ..., fN.
  • a step S40 the calculated features ml, m2, ..., mN are passed on from the data preprocessing module to the machine learning module 400.
  • a step S50 the features ml, m2, ..., mN are analyzed and / or trained in the machine learning module 400.
  • step S60 the learning result is passed on to the assessment module 440.
  • step S70 an assessment of the learning result is created in the assessment module 440.
  • a step S80 the evaluation of the learning result is passed on to the learning reinforcement agent 200.
  • step S90 one or more combination (s) of calculation functions fl, f2,..., FN are selected by the learning reinforcement agent 200 on the basis of the evaluation of the learning result.
  • state chains 20, 30 are used and not individual states.
  • the best combination of state chains 20, 30 for a particular data set is determined.
  • Complex status chains 20, 30 can also be used, which would be difficult to find manually or with a great deal of effort. However, this includes finding simple solutions if they lead to the desired optimization goal, such as a single state, which is then described by means of a "zero operator".
  • the reward is generated automatically.
  • the evaluation of the machine learning module 400 and / or a main component analysis and / or the consideration of the load and / or the calculation duration and / or an amplification function can be used as the basis for a reward, the selection of the status chains having a direct influence on the quality, for example, of one Classification or a main component analysis.
  • the initialization of the Q value matrix 220 or a transition matrix can be specified manually. Certain rules can be mapped. For example, if a calculation function f is to be prevented from being executed twice in succession during the preprocessing 300, a high negative value can be defined in the Q matrix 220.
  • an optimized combination of status chains 20, 30 can be reliably found, which lead to a maximum accuracy for the amount of the conditions under consideration, for example in a classification, which is not guaranteed in a manual method.
  • a data type check in the initialization step of the method according to the invention sorts out the combinations that do not match one another.
  • the system 100 also uses the evaluation signal to recognize fault cases for which it is not possible to carry out the training. For example, if the machine learning module 400 was unable to perform the training because it received incorrect data type data as input, this is evaluated by a negative reward. Consequently, the LV agent 200 avoids selecting this action a for a specific state s.
  • the method according to the invention can be used for a variety of machine learning tasks.
  • the Q-value matrix 220 of the LV agent 200 can be pre-initialized for a specific task and / or pre-trained for similar machine learning problems.
  • a pre-trained Q-value matrix 220 can be used for machine learning tasks with similar dimensions, so that the initial values of the Q-value matrix 220 can come from another entity or domain.
  • it is necessary to re-train the LV agent 200 nevertheless there are advantages such as faster convergence and thus faster finding of an optimized solution and the Transfer of cross-domain tasks. The time and computing effort for new users can be reduced here.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Die Erfindung betrifft ein System (100) zum Auffinden einer oder mehrerer optimierter Kombination(en) von Berechnungsfunktionen (f1, f2,..., fN) zur Berechnung von Merkmalen (m1, m2,..., mN) einer Entität, umfassend einen Lernverstärkungs-Agenten (200), der dazu ausgebildet ist, eine oder mehrere Kombination von Berechnungsfunktionen (f1, f2,..., fN) auszuwählen, welche an ein Datenvorverarbeitungsmodul (300) weitergegeben werden, wobei das Datenvorverarbeitungsmodul (300) ausgebildet ist, aus den Daten eines Trainingsdatensatzes (320) mittels der ausgewählten Berechnungsfunktionen (f1, f2,..., fN) die Merkmale (m1, m2,..., mN) zu berechnen und die Merkmale (m1, m2,..., mN) an ein Maschinenlernmodul (400) weiterzugeben, welches dazu ausgebildet ist, die Merkmale (m1, m2,..., mN) zu analysieren und/oder zu trainieren und das Lernergebnis an ein Bewertungsmodul (440) weiterzugeben, das ausgebildet ist, eine Bewertung für das Lernergebnis zu erstellen und diese Bewertung an den Lernverstärkungs-Agenten (200) weiterzugeben, der ausgebildet ist auf Basis dieser Bewertung des Lernergebnisses erneut eine oder mehrere Kombination(en) von Berechnungsfunktionen (f1, f2,..., fN) auszuwählen.

Description

Beschreibung
System und Verfahren zum Auffinden von optimierten Kombinati onen von Berechnungsfunktionen
Die Erfindung betrifft ein System und ein Verfahren zum Auf finden von optimierten Kombinationen von Berechnungsfunktio nen zur Berechnung von Merkmalen einer Entität mittels eines Lernverstärkungs-Agenten .
Für viele Maschinen-Lernverfahren (Machine Learning) , wie beispielsweise für einen Klassifizieren, der als eine Unter stützungsvektormaschine (Support Vector Machine) oder als ein „nächster Nachbar"-Algorithmus (Nearest Neighbour) ausgebil det sein kann, ist eine Vorverarbeitung ( Preprocessing) der Daten notwendig, um effiziente und leistungsfähige Ergebnisse zu erzielen. In dieser Vorverarbeitung wird ein eingegebener Datensatz auf Merkmale reduziert, welche als Eingabe für den Klassifizier dienen. Die Aufgabe des Klassifizierers ist es, Daten basierend auf erlernten Merkmalen in verschiedene Klas sen einzuordnen. Für Zeitreihen sind diese Merkmale bei spielsweise Mittelwerte, Minimal- bzw. Maximalwerte oder auch Frequenzspektren (Fast Fourier Transformation) . Bei Bilddaten können beispielsweise Eigenschaften wie Kontrast, Kantener kennung, Eckenerkennung als Merkmale verwendet werden. Um für eine spezifische Aufgabenstellung geeignete Merkmale auszu wählen, welche die wichtigsten Eigenschaften eines Trainings datensatzes zum Trainieren eines Maschinenlernmoduls wie bei spielsweise eines Klassifizierers beschreiben, ist allerdings Expertenwissen notwendig. Alternativ kann durch Ausprobieren manuell versucht werden, eine optimierte Auswahl an Merkmalen zu treffen. Durch die hohe Anzahl möglicher Merkmale und de ren Kombinationsmöglichkeiten ist die Anzahl möglicher Merk malskombinationen jedoch sehr hoch und es ist zeitintensiv, eine optimierte Auswahl von Merkmalen manuell zu finden.
Daher wählen Experten für Maschinenlernen diejenigen Merkmale für einen Datensatz einer bestimmten Entität bzw. Domain aus, die den Datensatz oder die Daten spezifisch für die jeweilige Entität beschreiben. Als Entität bzw. Domain wird hier ein bestimmtes Anwendungsgebiet bezeichnet, beispielsweise die Vorhersage von Wetterdaten, die Analyse des Verkehrsaufkom mens in einer Stadt, die Erkennung und Analyse von Bildstruk turen in der Mikroskopie, die Erfassung von Patientendaten oder die Überwachung einer Industrieanlage. Jede dieser Enti täten ist durch spezifische Merkmale gekennzeichnet.
Diese Merkmale können das Ergebnis von Berechnungsfunktionen darstellen oder sie entsprechen lediglich einem Messwert wie beispielsweise im Gesundheitswesen die Größe, das Gewicht, den Blutdruck eines Patienten. Die Merkmale werden typischer weise von Experten erstellt bzw. definiert, was als Merkmals planung bezeichnet wird. Es gibt dann eine Anzahl an ver schiedenen Merkmalen, die alle auf einen Eingabedatensatz an wendbar sind, und ein Experte wählt daraus die passenden Merkmale für eine bestimmte Aufgabenstellung manuell aus.
Für das Auswählen der passenden Merkmale aus dieser Anzahl an Merkmalen wird z.B. ein sogenannter „nächster Nachbar"- Algorithmus angewendet, und danach werden beispielsweise durch eine Hauptkomponentenanalyse diejenigen Merkmale be stimmt, die den größten Einfluss beispielsweise auf eine Klassifizierung oder andere Maschinenlernverfahren haben. Durch diese Berechnungsfunktionen werden die wichtigsten Merkmale bestimmt und die unwichtigen ausgeschieden.
Diese manuelle Vorgehensweise führt jedoch nicht zwangsläufig zu einer optimalen Auswahl von Merkmalen und kann sehr zeit intensiv sein, da ein Experte viele passende Merkmale ein stellen muss und erst im Test herausfindet, wie gut die je weiligen Merkmale für eine Klassifikation geeignet sind.
Ein durch Verstärkungslernen (Reinforcement Learning) entwi ckeltes Wissen (z.B. in Form einer Qualitäts-Werte-Matrix (Q- Matrix) zur Bewertung einer Auswahl von Berechnungsfunktionen für die Generierung von Merkmalen) ist auf andere Anwendungs- felder bzw. Domänen nur schwierig zu übertragen, da für ande re Domänen typischerweise andere spezielle komplexe Merkmale bzw. Berechnungsfunktionen entwickelt werden müssen, die oft mals aus vielen einzelnen Berechnungsschritten bestehen. So stellt die Klassifikation von Objekten auf Bildern eine ande re Herausforderung dar als die Klassifikation von Kunden auf der Basis ihres Kaufverhaltens oder die Fehleranalyse bei ei ner komplexen Industrieanlage.
Zur Optimierung der Auswahl gegebener Merkmale gibt es ver schiedene Kategorien von Berechnungsmethoden wie Filterfunk tionen, Hüllenfunktionen und integrierte Ansätze, wie bei spielsweise von Fard et al . beschrieben [Fard S.M.H., Hamzeh A. , Hashemi S., „Using reinforcement learning to find an op timal set of features", Comput Math Appl 2013, 1892-1904] . Darin werden Berechungsmethoden für Verstärkungslernen (Rein forcement Learning) dargestellt. Die Merkmalsauswahl wird als Markov-Entscheidungsmethode beschrieben und über die Suche nach passenden Merkmalen vergleichsweise effizient gelöst. Allerdings wird bei diesem Ansatz von bereits vorhandenen einfachen Merkmalen ausgegangen, wie beispielswiese Alter, Gewicht, Blutdruck im Gesundheitssektor, in denen gesucht wird. Wie diese Merkmale selbst bestimmt werden, wird bei diesem Ansatz nicht betrachtet. Des Weiteren werden auch kei ne Ketten von aufeinanderfolgenden Berechnungen für komplexe Merkmale behandelt.
Die der Erfindung zu Grunde liegende Aufgabe besteht nun da rin, ein Verfahren und ein System zur Auswahl von optimierten Merkmalen und Merkmalskombinationen, die die Eigenschaften einer Entität kennzeichnen, zu schaffen, das sich durch eine hohe Zuverlässigkeit und Genauigkeit auszeichnet.
Gemäß der vorliegenden Erfindung wird ein automatisiertes Verfahren vorgeschlagen, durch das eine optimierte Kombinati on von Merkmalen und eine optimierte Kombination von Zu standsketten gefunden werden kann. Diese Aufgabe wird hinsichtlich eines Systems durch die Merk male des Patentanspruchs 1, und hinsichtlich eines Verfahrens durch die Merkmale des Patentanspruchs 2 erfindungsgemäß ge löst. Die weiteren Ansprüche betreffen bevorzugte Ausgestal tungen der Erfindung.
Gemäß eines ersten Aspekts betriff die Erfindung ein System zum Auffinden einer oder mehreren optimierten Kombination (en) von Berechnungsfunktionen zur Berechnung von Merkmalen einer Entität, umfassend einen Lernverstärkungs-Agenten, der dazu ausgebildet ist, eine oder mehrere Kombination von Berech nungsfunktionen auszuwählen, welche an ein Datenvorverarbei- tungsmodul weitergegeben werden, wobei das Datenvorverarbei- tungsmodul ausgebildet ist, aus den Daten eines Trainingsda tensatzes mittels der ausgewählten Berechnungsfunktionen die Merkmale zu berechnen und die Merkmale an ein Maschinenlern modul weiterzugeben, welches dazu ausgebildet ist, die Merk male zu analysieren und/oder zu trainieren und das Lernergeb nis an ein Bewertungsmodul weiterzugeben, das ausgebildet ist, eine Bewertung für das Lernergebnis zu erstellen und diese Bewertung des Lernergebnisses an den Lernverstärkungs- Agenten weiterzugeben, der ausgebildet ist auf Basis dieser Bewertung des Lernergebnisses erneut eine oder mehrere Kombi nation (en) von Berechnungsfunktionen auszuwählen.
In einer vorteilhaften Weiterentwicklung ist das Bewertungs modul ausgebildet, die Bewertung für das Lernergebnis an ein Belohnungsmodul weiterzugeben, das ausgebildet ist, die Be wertung durch eine Verstärkungsfunktion zu verstärken
und/oder eine Belohnung zu erzeugen und die Bewertung
und/oder Belohnung an den Lernverstärkungs-Agenten weiterzu geben .
In einer weiteren Ausgestaltung weist der Lernverstärkungs- Agent eine Datenbank für die Bewertung von Zustands-Aktions- Paaren bezogen auf die Auswahl von Aktionen für Zustände ei ner Entität auf. Vorteilhaftweise ist die Datenbank als Qualitäts-Matrix aus gebildet für die Bewertung der Zustands-Aktions-Paare .
Weiterhin kann die Datenbank als neuronales Netz ausgebildet und/oder durch Regeln erweiterbar sein.
Vorteilhaftweise, ist das Maschinenlernmodul ausgebildet, ei nen Algorithmus aus dem überwachten Lernen (supervised learn- ing) und/oder dem unüberwachten Lernen (unsupervised learn- ing) und/oder dem verstärkenden Lernen (reinforcement learn- ing) zu verwenden.
In einer vorteilhaften Weiterbildung ist ein Trainingsmodus und ein Laufzeitmodus vorgesehen, wobei der Wechsel von dem Trainingsmodus in den Laufzeitmodus und/oder der Wechsel von dem Laufzeitmodus in den Trainingsmodus automatisch durch führbar ist.
In einer weiteren Ausgestaltung ist der Lernverstärkungsagent ausgebildet, einen Initialisierungsschritt durchzuführen zur Vorauswahl von Kombinationen von Funktionen.
Vorteilhaftweise, ist der Lernverstärkungs-Agent ausgebildet, die Auswahl der Funktionen in Abhängigkeit von Optimierungs kriterien wie der Auslastung und/oder der Rechengeschwindig keit eines Endgerätes durchzuführen.
Gemäß eines zweiten Aspekts betrifft die Erfindung ein Ver fahren zum Auffinden von einer oder mehreren optimierten Kom bination (en) von Berechnungsfunktionen zur Berechnung von Merkmalen einer Entität unter Verwendung eines Lernverstär kungsagenten, umfassend die folgenden Schritte:
Auswahlen von einer oder mehreren Kombination (en) von Berechnungsfunktionen von dem Lernverstärkungsagen ten; - Weitergeben der ausgewählten Berechnungsfunktionen von dem Lernverstärkungsagenten an ein Datenvorverar- beitungsmodul ;
- Berechnen von Merkmalen aus den Daten eines Trai
ningsdatensatzes mittels der ausgewählten Berech nungsfunktionen in dem Datenvorverarbeitungsmodul ;
- Weitergeben der Merkmale von dem Datenvorverarbei
tungsmodul an ein Maschinenlernmodul;
- Analysieren und/oder Trainieren der Merkmale in dem Maschinenlernmodul ;
- Weitergeben des Lernergebnisses des Maschinenlernmo duls an ein Bewertungsmodul;
- Erstellen einer Bewertung des Lernergebnisses in dem Bewertungsmodul ;
- Weitergeben der Bewertung des Lernergebnisses an den Lernverstärkungs-Agenten;
- Auswählen von einer oder mehreren Kombination (en) von Berechnungsfunktionen von dem Lernverstärkungsagenten auf Basis der Bewertung des Lernergebnisses.
In einer vorteilhaften Weiterentwicklung werden die Schritte des Verfahrens solange wiederholt, bis eine optimierte Kombi nation der Berechnungsfunktionen gefunden wurde.
Vorteilhaftweise, gibt das Bewertungsmodul die Bewertung die Bewertung an ein Belohnungsmodul weiter, das ausgebildet ist, das die Bewertung durch eine Verstärkungsfunktion zu verstär ken und/oder eine Belohnung zu erzeugen und die Bewertung und/oder Belohnung an den LV-Agenten weiterzugeben.
In einer weiteren Ausgestaltung verwendet der Lernverstär- kungs-Agent eine Datenbank für die Bewertung von Zustands- Aktions-Paaren bezogen auf die Auswahl von Aktionen für Zu stände einer Entität.
Vorteilhafterweise ist die Datenbank als Qualitäts-Matrix für die Bewertung der Zustands-Aktions-Paare und/oder als neuro nales Netz ausgebildet und/oder durch Regeln erweiterbar. In einer weiteren Ausgestaltung sind ein Trainingsmodus und ein Laufzeitmodus vorgesehen, wobei der Wechsel von dem Trai ningsmodus in den Laufzeitmodus und der Wechsel von dem Lauf zeitmodus in den Trainingsmodus automatisch durchgeführt wird .
Gemäß der vorliegenden Erfindung wird somit ein automatisier tes Verfahren vorgeschlagen, durch das eine optimierte Kombi nation von Merkmalen und in einem weiteren Schritt eine opti mierte Kombination von Merkmalsketten gefunden werden kann. Zusätzlich wird zu Beginn automatisch ein Initialisierungs schritt durchgeführt, in welchem Merkmalskombinationen, die zu keinem Ergebnis führen, aussortiert werden. Das automati sierte Verfahren beinhaltet die Durchführung des Initialisie rungsschrittes, den automatischen Wechsel in einen Trainings modus zum Auffinden der besten Kombinationen der optimierten Merkmalsketten mit anschließendem Training des Maschinenlern moduls und das automatisierte Umschalten in einen Laufzeitmo dus unter Verwendung eines trainierten Maschinenlernmoduls und der optimierten Merkmalsketten. Das Verfahren sieht au ßerdem einen erneuten automatischen Wechsel in den Trainings modus des Maschinenlernmoduls vor, wenn z.B. eine Veränderung der Entität, deren Merkmale beschrieben werden, in dem Ma schinenlernmoduls berücksichtigt werden sollen oder die Ver wendung der Merkmale sich geändert haben. Anschließend findet dann ein Wechsel in den Laufzeitmodus statt.
Nachfolgend wird die Erfindung anhand von in der Zeichnung dargestellten Ausführungsbeispielen näher erläutert.
Dabei zeigt:
Figur 1 eine schematische Darstellung eines Übergangs von einem Zustand einer Entität zu einem anderen Zu stand der Entität;
Figur 2 ein Blockdiagram zur Erläuterung eines Ausführungs beispiels des erfindungsgemäßen Systems; Figur 3 eine Darstellung der Verkettung von Zuständen einer Entität ;
Figur 4 eine weitere Darstellung der Verkettung von Zustän den einer Entität;
Figur 5 eine weitere Darstellung der Verkettung von Zustän den einer Entität;
Figur 6 ein Blockdiagram zur Erläuterung eines weiteren
Ausführungsbeispiels des erfindungsgemäßen Systems;
Figur 7 ein Flussdiagramm zur Erläuterung der einzelnen
Verfahrensschritte eines erfindungsgemäßen Verfah rens .
Zusätzliche Kennzeichen, Aspekte und Vorteile der Erfindung oder ihrer Ausführungsbeispiele werden durch die ausführliche Beschreibung in Verbindung mit den Ansprüchen ersichtlich.
Fig. 1 zeigt einen Zustand sl einer Entität, der durch eine Aktion a in einen anderen Zustand s2 der Entität überführt wird. Bei der Entität kann es sich um Maschinen und/oder In dustrieanlagen handeln, aber auch um chemisch-physikalische Prozesse, administrative Organisationsverfahren in der In dustrie, Forschung und/oder Verwaltung. Der Begriff Entität umfasst somit ein breites Spektrum von Anwendungsgebieten, angefangen bei einfachen Geräten bis hin zu komplexen Regel kreisläufen in verschiedenen Domänen wie Automotive, Chemie, Pharmazeutische Industrie, Patientenakten im Bereich
Healthcare, Produktion und Verkauf, Marketing, Kundenverhal ten, Meinungsumfragen, Wetterdaten, Börsenkurse, Klimaschutz, Erdbebenfrühwarnsysteme, Staumelder, etc. Wenn eine Entität durch Merkmale bzw. Zustände darstellbar ist, deren Auswahl bestimmbar ist, dann kann die vorliegende Erfindung für diese Entität eingesetzt werden. Bei den Aktionen a handelt es sich um Berechnungsfunktionen, wobei eine Aktion alle Arten von mathematischen Funktionen wie Mittelwerte, Minimal- und Maximalwerte, Fast Fourier Transformationen, Integral- und Differentialrechnungen, aber auch konvergente neuronale Netze, künstliche neuronale Netze und rückgekoppelte neuronale Netze umfassen kann.
Figur 2 zeigt ein erfindungsgemäßes System 100 zur Auswahl von optimierten Merkmalen m zur Charakterisierung einer Enti tät. In einem Lernverstärkungs-Agenten (LV) (Reinforcement Learning Agent) 200 werden Berechnungsfunktionen vordefiniert entsprechend einer jeweiligen Aufgabenstellung bzw. entspre chend der jeweiligen Entität bzw. diese Berechnungsfunktionen sind bereits vorhanden. Die Auswahl der Berechnungsfunktionen fl, f2, ... , fN werden als Aktionen al, a2, ... aN bezeichnet.
Der LV-Agent 200 umfasst und/oder hat Zugriff auf eine Quali täts-Matrix 220, die die Basis für die Auswahl einer Aktion a aus den Aktionen al, a2, ..., aN für jeden Zustand darstellt. Hierzu wird in einem Initialisierungsschritt geprüft, ob für die Kombination verschiedener Aktionen a (Berechnungsfunktio nen f) der Datentyp des Ausgangs einer ersten Aktion a* mit dem Datentyp des Eingangs für eine nachfolgende zweite Aktion a** zusammenpasst. Nur wenn der Ausgang einer ersten Aktion a* auch von einer ausgewählten nachfolgenden zweiten Aktion a** verarbeitet werden kann, d.h. nur wenn eine entsprechende Rechenoperation a*
Figure imgf000011_0001
a** durchführbar ist, ist dieser Daten typ auch als Eingang für die ausgewählte nachfolgende zweite Aktion a** geeignet. Die Rechenoperationen können über eine Typisierung mit anschließender Ausnahmebehandlung oder bei interpretierenden Sprachen über eine entsprechende Ausnahme behandlung überwacht werden. Wenn ein Datentyp eines Ausgangs einer ersten Aktion a* nicht zu dem Eingang einer nachfolgen den Aktion a** passt, wird die ausgewählte zweite Aktion a** mit einem hohen Negativwert bewertet. Somit wird diese zweite Aktion a** für den Zustand s, der durch die Auswahl der ers ten Aktion a* bestimmt ist, nicht mehr ausgewählt. Nach dem Initialisierungsschritt findet ein automatischer Wechsel in den Trainingsmodus des LV-Agenten 200 statt. In der Figur 5 ist der Ablauf eines ersten Trainingsmodus zum Auffinden einer optimierten Merkmalskombination schematisch für die Anzahl von drei Merkmalen ml, m2, m3 dargestellt. Ei ne Aktion al ist aus der Sicht eines Maschinenlernmoduls 400 die Auswahl einer Berechnungsfunktion f wie beispielsweise die Berechnung eines Minimal- oder Maximalwertes, einer Fou rier Transformation und/oder eines Mittelwertes. Ein Merkmal m2 ist das Berechnungsergebnis einer Berechnungsfunktion f angewendet auf ein zuvor bestimmtes Merkmal ml und somit de finiert durch die Berechnungsergebnisse der ausgewählten Be rechnungsfunktionen fl, f2, ..., fN in einer bestimmten Reihen folge. In einer LV Umgebung 200 hingegen werden ausgewählten Berechnungsfunktionen als Zustände sl, s2 bezeichnet, die für den jeweiligen Anwendungsfall (Entität) definiert werden durch die Auswahl der ausgewählten Aktionen a. Es handelt sich somit um unterschiedliche Begrifflichkeiten, mit denen Berechnungsfunktionen jeweils in einer LV Umgebung und in ei nem Maschinenlernmodul bezeichnet werden.
Im Startzustand sl, der durch die „Leerlauf-Funktion" initia lisiert ist, wählt der LV-Agent 200 eine Aktion al aus. Im resultierenden Zustand s2 wird z.B. die Aktion a2 ausgewählt und im darauffolgenden Zustand s3 wird a3 ausgewählt. Nachdem die letzte Aktion aN ausgewählt wurde, wird die Reihenfolge der ausgewählten Aktionen al, a2, a3, ... , aN an ein Vorverar beitungsmodul 300 ( Pre-processing) übergeben. Im Vorverarbei tungsmodul 300 werden die zu den ausgewählten Aktionen al, a2, a3 zugehörigen Berechnungsfunktionen fl, f2, f3 in der gewählten Reihenfolge auf einen Trainingsdatensatz 320 ange wendet. Nach jeder Anwendung einer Berechnungsfunktion f wird das Berechnungsergebnis als Merkmal m ausgegeben und an die nächste Rechenoperation und gleichzeitig an das Maschinen lernmodul 400 weitergegeben. Die Berechnungsergebnisse der drei Berechnungsfunktionen fl, f2, f3, d.h. die Merkmale ml, m2, m3, werden jeweils als Eingang in das Maschinenlernmodul 400 übergeben. Um die ausgewählten Aktionen (Berechnungsfunk- tionen) al, a2, a3 (fl, f2, f3) bewerten zu können, wird das Maschinenlernmodul 400 mit den Merkmalen ml, m2, m3 des Vor verarbeitungsmoduls 300 trainiert. Das Maschinenlernmodul 400 kann zum Trainieren und/oder Analysieren einen Algorithmus 420 aus Bereichen des überwachten Lernens (supervised learn- ing) und/oder des unüberwachten Lernens (unsupervised learn- ing) und/oder des verstärkenden Lernens (reinforcement learn- ing) verwenden.
Mit einem gekennzeichneten Testdatensatz 340, der vorteilhaf terweise eine Teilmenge aus dem Trainingsdatensatz 320 dar stellt, wird das Lernergebnis des Maschinenlernmoduls 400 nach dem Training automatisch bewertet, indem das Maschinen lernmodul 400 das Ergebnis des Maschinenlernens, beispiels weise eine Klassifizierung, mit den Vorgaben aus dem Testda tensatz 340 vergleicht. Die Trefferquote des Lernergebnisses wird als Bewertung in einem Bewertungsmodul 440 ausgegeben.
Im Rahmen der Erfindung kann das Bewertungsmodul 440 auch als Teil des Maschinenlernmoduls 400 ausgebildet sein. Die Bewer tung wird im Rahmen dieser Erfindung verwendet, um automa tisch ein Belohnungssignal für den LV-Agenten 200 zu generie ren. Das kann durch eine eins-zu-eins Abbildung in einem Be lohnungsmodul 500 (Reward-Modul ) durchgeführt werden, wobei eine sehr hohe Bewertung anzeigt, dass eine hohe Zielerfül lung vorliegt. Der Begriff Zielerfüllung ist dabei im Rahmen des jeweiligen Anwendungsfalls bzw. der jeweiligen Entität zu verstehen. So kann sich die Bewertung sich auf eine hohe Bil derkennungsrate im Bereich von automatischer Bilderkennungs software oder eine genaue Wiedergabe des tatsächlichen Markt geschehens bei Aktienkursen beziehen.
Für das Belohnungssignal kann im Belohnungsmodul eine Ver stärkungsfunktion (z.B. eine Sigmoidfunktion oder eine Hyb- erbolfunktion tanh) verwendet werden. Erst nach dem Trainie ren und Testen des Maschinenlernmoduls 400 erhält der LV- Agent 200 das Belohnungssignal entweder direkt von dem Bewer tungsmodul 440 oder vom Belohnungsmodul 500 für die gesamte Berechnungssequenz aus den Berechnungsfunktionen fl, f2, f3. Dieses Belohnungssignal ordnet der der LV-Agent 200 allen Zu- stands-Aktions-Paaren (s|a) zu.
Um die Auswahl der Aktionen a bzw. der Berechnungsfunktionen f zu bewerten, ist es in einer Ausführungsform der Erfindung nicht erforderlich, dass in dem ersten durchgeführten Trai ningsmodus bereits ein Maschinenlernmodul 400 verwendet wird. In dem ersten durchgeführten Trainingsmodus wird eine Aussage zu den Unterschieden der verschiedenen Merkmalsketten getrof fen, beispielsweise mittels einer Hauptkomponentenanalyse .
Bei dem ersten durchgeführten Trainingsmodus ist eine Angabe der Qualität einer Berechnungsfunktionskette, d.h. einer Merkmalskette, beispielsweise durch eine Bewertungsangabe wie eine Genauigkeit, ausreichend.
In dem zweiten durchgeführten Trainingsmodus wird eine opti mierte Kombination von Berechnungsfunktionsketten bzw. Merk malsketten ausgewählt, wozu das Maschinenlernmodul 400 ver wendet wird, das ein Maschinenlernen durchführt. Die Merk malsketten sind in dem ersten Trainingsmodus hinsichtlich ih rer Qualität bewertet worden. In dem zweiten Trainingsmodus werden die verschiedenen Kombinationsmöglichkeiten von ver schiedenen Merkmalsketten bewertet, so dass nun ein Training auf einer höheren, komplexeren Ebene stattfindet. Das Ergeb nis des Maschinenlernens wird durch das Bewertungsmodul 440 bewertet, um bei der Auswahl der Kombination der Berechnungs funktionsketten (Merkmalsketten) die Qualität des Maschinen lernens zu berücksichtigen. Das erfindungsgemäße System 100 gibt jedoch in beiden Trainingsmodi eine Bewertung an.
Zum Trainieren des LV-Agenten 300 können verschiedene LV- Technologien verwendet werden, wie beispielsweise SARSA (l) . SARSA steht für „state-action-reward-state-action" und ist ein Algorithmus zum Erlernen einer Aktions-Werte-Funktion . Durch eine Aktualisierungs-Regel (Update) wird eine Belohnung anteilig auf die l-letzten Zustand-Aktions-Paare (s|a) ver teilt, wobei l die Anzahl der Zustände s bezeichnet, die vor einem Zielzustand sN berücksichtigt werden sollen. Somit wird die Auswahl der Berechnungsfunktionen (Aktionen) in Abhängig keit von den jeweiligen Zuständen s bewertet. Der Zielzustand sN, welcher die gesamte Berechnungsfunktionskette beinhaltet, hat die höchste Gewichtung und damit die größte Auswirkung auf die Aktualisierung der Bewertung.
Die Bewertung der Zustands-Aktions-Paare (s|a), d.h. wie op timal zu einem bestimmten Zustand s eine bestimmte Aktion a passt, wird in dem LV-Agenten 200 durch Q-Werte 220 für jedes Zustands-Aktions-Paar (s|a), beispielsweise in einer Matrix, gespeichert, und nach jedem Trainingszyklus aktualisiert. Der Q-Wert ist definiert als die maximale Summe aller Belohnun gen, die erreicht werden, wenn in einem Zustand s eine Aktion a ausgewählt wird mit der Annahme, dass bis zum Zielzustand sN immer die optimale Aktion gewählt wird. Durch den Berech tigungsnachweis (Eligibility Trace) wird ein Kurzzeitgedächt nis der Zustände s gespeichert in dem LV-Agenten 200. Die im Kurzzeitgedächtnis vorhandenen Zustände s werden bei der Ak tualisierung bei jedem Trainingszyklus anteilig berücksich tigt. Die Größe des Kurzzeitgedächtnisses wird durch die An zahl l der Zustände s bis zum Zielzustand sN definiert. So werden bei l = 3 die Q-Werte der letzten drei Zustands- Aktions-Paare (s|a) am Ende eines Trainingszyklus aktuali siert .
In Tabelle 1 ist eine Q-Werte Matrix schematisch dargestellt, in der jeweils ein Q-Wert (Bewertung) bei der Auswahl einer Aktion a einem Zustand s zugeordnet wird. Die Spalten der Q- Werte Matrix stellen die Aktionen a dar, die in den Zuständen s ausgeführt werden können. In den Zeilen sind die Zustände s aufgetragen. Die Information, welcher Zustand s durch welche Kombination der Aktionen a definiert ist, wird separat abge speichert. Jeder Zustand s beginnt mit dem Startzustand sl, welcher durch eine Null-Aktion gekennzeichnet ist. Gemäß der Tabelle beträgt der Q-Wert, die Aktion al im Zustand sl aus zuführen, 0,67.
Figure imgf000016_0001
Tabelle 1: Q-Werte-Matrix
In den Figuren 3 und 4 sind zwei Beispiele zur Definition der Zustände s dargestellt. In Figur 3 wird im Startzustand sl die Aktion al ausgewählt und es resultiert der Zustand s2. Anschließend wird für den Zustand s2 Aktion a2 gewählt und es folgt der Zustand s3. Durch Auswählen der Aktion a3 endet die dargestellte Sequenz im Zustand s4.
In Figur 4 wird für den Zustand s2 die Aktion a4 gewählt, was den Zustand s5 zur Folge hat, und durch Wählen der Aktion a3 ergibt sich der Zustand s6.
Ein Zustand s ist somit durch eine bestimmte Abfolge von Ak tionen a definiert.
Wie in Figur 5 dargestellt, gibt der „Leerlauf-Operator" aO eine Eingabe ohne eine Änderung als Ausgabe aus. Durch die Definition des „Leerlauf-Operator" aO kann jeder Zustand s durch einen Vektor 10 mit der jeweils gleichen Länge be schrieben werden. Für einen Zustand s, der nur wenige Aktio nen beinhaltet, kann mehrfach der „Leerlauf-Operator" aO ein gesetzt werden, um die vorgegebene Gesamtlänge des Vektors 10 zu erhalten. Der Startzustand sl wird immer durch den „Leer lauf-Operator" aO initialisiert, d.h. es wurden noch keine Aktionen ausgeführt, so dass er durch die Null-Aktion aO be schrieben ist. Der beispielhafte Zustand s4 ist durch ver schiedene Aktionen al, a6 und a2 entstanden. Die Anzahl der maximal möglichen Aktionen a in einem Zustand s und somit die maximale Länge einer Zustandskette 20 wird festgelegt. Die in Figur 3 dargestellte Zustandskette 20 ist eine Reihenfolge von Zuständen sl, s2, s3, s4, die durch Ak tionen a entstanden sind und daher durch diese definiert sind. Eine Zustandskette 20 ist durch den Zielzustand s4 ein deutig bestimmt, da dieser alle Aktionen a beinhaltet, die ausgeführt werden sollen. In Figur 4 ist eine andere Zu standskette 30 dargestellt, die eine Reihenfolge von Zustän den sl, s2, s5 und s6 beinhaltet. Der Zustand s6 ist hier der Zielzustand sN.
In einem anderen Ausführungsbeispiel können die Q-Werte von einem neuronalen Netz erlernt und gespeichert werden. Diese Variante wird vor allem bevorzugt, wenn die Dimension mögli cher Zustände s und Aktionen a sehr groß werden.
Für das Beispiel in Figur 15 wird für die gewählte Aktions kette al, a2, a3 wie folgt vorgegangen:
Die zur Aktion al zugehörige Berechnungsfunktion fl wird auf den Ursprungstrainingsdatensatz 420 angewendet.
Das Berechnungsergebnis wird als Merkmal ml in dem Ma schinenlernmodul 300 gespeichert.
Die zu der Aktion a2 zugehörige Berechnungsfunktion f2 wird auf den durch die Berechnungsfunktion fl geänderten Trainingsdatensatz 320 angewendet.
Das Berechnungsergebnis wird als Merkmal m2 zusätzlich zu dem Merkmal ml in dem Maschinenlernmodul 300 gespei chert .
Die zu der Aktion a3 zugehörige Berechnungsfunktion f3 wird auf den durch die Berechnungsfunktionen fl und f2 geänderten Trainingsdatensatz 320 angewendet.
Das Berechnungsergebnis wird als Merkmal m3 zusätzlich zu den Merkmalen ml und m2 in dem Maschinenlernmodul 300 gespeichert . Die Kombination der Merkmale ml, m2 und m3 wird durch das Maschinenlernmodul 300 trainiert und/oder analysiert und das Lernergebnis wird bewertet.
Entsprechend der Bewertung des Lernergebnisses wird die Kombination der Merkmale mit einer Belohnung versehen und die jeweiligen Q-Werte für die Zustands-Aktions- Paare (sl, al) -> ml, (s2, a2) -> m2 und (s3, a3) -> m3 werden berechnet.
Dieser Trainingszyklus wird solange wiederholt, bis die Q- Werte für die Zustands-Aktions-Paare (s|a) sich angleichen und konvergieren. In einer Weiterentwicklung der Erfindung, kann das Lernen (Trainieren) auch durch ein Abbruchkriterium beendet wurde. Danach können die optimierten Zustandsketten 20, 30 mittels der Bewertung durch die höchsten Q-Werte auto matisch ausgewählt werden.
In dem zweiten Trainingsmodus kann die optimale Kombination der Zustandsketten entsprechend gelernt werden, da für das Trainieren nur die Zustände s mit dem höchsten Q-Wert zur Verfügung gestellt werden.
In diesem zweiten Trainingsmodus ist es somit möglich, kom plexere Zustandsketten (Merkmalsketten) durch Verkettung von bereits optimierten Zustandsketten (Merkmalsketten) zu bilden und die optimale Kombination von optimierten Zustandsketten automatisiert zu finden. Darüber hinaus ist auch die Kombina tion von weiteren höheren Ordnungen von Zustandsketten mög lich.
Darüber hinaus gibt es auch die Möglichkeit, die Anzahl der Zustandsketten durch „Leerlauf-Ketten" im Vergleich zur defi nierten maximalen Länge zu verkürzen.
Wenn die Q-Werte konvergiert sind und/oder das Lernen (Trai nieren) durch ein Abbruchkriterium beendet wurde, wird die Zustandskettenkombination mit dem höchsten Q-Wert dauerhaft in dem Vorverarbeitungsmodul 300 eingestellt. Anschließend wird das System 100 automatisch von dem Trainingsmodus auf einen Laufzeitmodus umgestellt.
Figur 6 stellt das erfindungsgemäße System 100 in einem Lauf zeitmodus dar. Anstelle eines Trainingsdatensatzes 320 wird eine Signatur 360, die analysiert werden soll, in das Vorver arbeitungsmodul 300 eingegeben. Die Ergebnisse des Vorverar beitungsmoduls 300 - die Merkmalsketten - werden als Eingabe in das Maschinenlernmodul 400 eingegeben. Das Lernergebnis des Maschinenlernmoduls 400 kann eine Klassifizierung 460 darstellen mit der Angabe einer Wahrscheinlichkeit für jede Klasse der Klassifizierung. In einem Schwellenwertprüfmodul 480 wird die tatsächlich aufgetretene Wahrscheinlichkeit mit einer erwarteten Wahrscheinlichkeit verglichen. In dem
Schwellenwertmodul 480 ist ein Schwellenwert SW für die er wartete Wahrscheinlichkeit eingestellt. Werte oberhalb des Schwellenwertes SW entsprechen der Wahrscheinlichkeit der Klassifizierung gemäß der Erwartung (z.B. der Qualität des Produktes) und werden von dem Schwellenwertprüfmodul 480 an eine Wahrscheinlichkeits-Überschreitungseinheit 482 weiterge geben, die mit der Signatur 360 verbunden ist. Das erfin dungsgemäße Verfahren bleibt im Laufzeitmodus.
Unterschreitet die tatsächliche Wahrscheinlichkeit der Klas sifizierung nach einer gewissen Zeit dauerhaft diesen Schwel lenwert SW und tritt z.B. eine Veränderung bei der Entität auf, die in der Klassifizierung berücksichtigt werden soll, so gibt das Schwellenwertprüfmodul 480 dies an eine Schwel- lenwert-Unterschreitungseinheit 482 weiter, die mit dem Trai ningsdatensatz 320 verbunden ist. Das Training wird dann er neut durchgeführt und das System 100 wechselt von dem Lauf zeitmodus in den Trainingsmodus. Gibt es keine deutlich er kennbare Ursache für die Veränderung der Wahrscheinlichkeit bei der Klassifizierung, ist dies häufig auf ein Verände rungsprozesse bei der Entität zurückzuführen. Die Schwellen wertprüfung 480 kann somit auch zur Überwachung der Entität verwendet werden. Singuläre Veränderungen können als Anoma lien erkannt werden und z.B. einer Qualitätsprüfung unterzo- gen werden. Die Datensätze solcher Anomalien werden vorteil hafterweise gespeichert und in einem weiteren Training von dem Maschinenlernmoduls 300 zusätzlich gelernt.
Wenn der Trainingsmodus wiederholt werden muss, wechselt das System 100 automatisch in den Trainingsmodus und trainiert das Maschinenlernmodul 300 mit einem neuen Trainingsdatensatz 320 mit der bereits gelernten Q-Werte-Matrix und den opti mierten Zustandsketten. Der Wechsel in den Laufzeitmodus fin det nach Abschluss des Trainings des Maschinenlernmoduls 300 automatisch statt.
In einer Weiterentwicklung der Erfindung ist im Trainingsmo dus eine Optimierung der Vorverarbeitung in dem Vorverarbei tungsmodul 400 möglich, wenn eine Berechnungsfunktion f bei mehreren Zustandsketten 20, 30 an der ersten Stelle verwendet wird. Dann muss diese Berechnung nicht für jede Zustandskette 20, 30 erneut durchgeführt werden, sondern kann von dem Lern ergebnis einer vorherigen Zustandskette 20, 30 übernommen werden, wobei die Lernergebnisse in einem Zwischenspeicher gespeichert werden.
Da bestimmte Berechnungsfunktionen mit einen hohen Rechenauf wand verbunden sind, wie z.B. eine Fast Fourier Transformati on (FFT) , ist es sinnvoll, den Rechenaufwand bei der Bewer tung der Zustandskettenkombinationen, also bei der Beloh nungsfunktion, zu berücksichtigen. Die Auswahl von optimier ten Zustandsketten und die optimale Kombination von optimier ten Zustandsketten 20, 30 kann in Abhängigkeit von dem Be rechnungsaufwand durchgeführt werden, beispielsweise indem der Berechnungsaufwand bei der ausgewählten Zustandskette in der Belohnungsfunktion des Belohnungsmoduls 500 berücksich tigt wird. Dazu wird beispielsweise die Rechenzeit des Sys tems 100 für jede ausgewählte Zustandskette 20, 30 in der Be lohnungsfunktion berücksichtigt. So kann sich eine zeitinten sive Rechendauer negativ auf die Belohnung auswirken. Weiter hin kann die Auslastung des Systems 100 die Belohnungsfunkti on beeinflussen. Zusätzlich kann die optimierte Zustandsket- ten und die optimale Kombination von Zustandsketten 20, 30 für ein Endgerät optimiert werden, indem die Rechenleistung eines Endgerätes für die Vorverarbeitung der Daten verwendet wird und beispielsweise die Dauer und Auslastung der Vorver arbeitung in der Belohnungsfunktion berücksichtigt wird.
Gemäß des Verfahrens und des Systems der vorliegenden Erfin dung wird ein verstärkendes Lernen (Reinforcement Learning) eingesetzt, um automatisiert eine optimale Kombination von Zuständen s und Zustandsketten 20, 30 zu finden, die einen Datensatz charakterisieren.
In Figur 7 sind die Verfahrensschritte zum Auffinden von op timierten Merkmalsketten zur Beschreibung der Eigenschaften einer Entität dargestellt.
In einem Schritt S10 wird/werden eine oder mehrere Kombinati on (en) von Berechnungsfunktionen fl, f2, ..., fN von dem Lern verstärkungsagenten 200 ausgewählt.
In einem Schritt S20 werden ausgewählte Berechnungsfunktionen fl, f2, ..., fN von dem Lernverstärkungsagenten 200 an das Da- tenvorverarbeitungsmodul 300 weitergegeben.
In einem Schritt S30 werden Merkmale ml, m2, ..., mN aus den Daten eines Trainingsdatensatzes 320 mittels der ausgewählten Berechnungsfunktionen fl, f2, ..., fN in dem Datenvorverarbei- tungsmodul 300 berechnet.
In einem Schritt S40 werden die berechneten Merkmale ml, m2, ..., mN von dem Datenvorverarbeitungsmodul an das Maschinen lernmodul 400 weitergegeben.
In einem Schritt S50 werden die Merkmale ml, m2, ..., mN in dem Maschinenlernmodul 400 analysiert und/oder trainiert.
In einem Schritt S60 wird das Lernergebnis an das Bewertungs modul 440 weitergegeben. In einem Schritt S70 wird eine Bewertung des Lernergebnisses in dem Bewertungsmodul 440 erstellt.
In einem Schritt S80 wird die Bewertung des Lernergebnisses an den Lernverstärkungs-Agenten 200 weitergegeben.
In einem Schritt S90 wird/werden eine oder mehrere Kombinati on (en) von Berechnungsfunktionen fl, f2, ..., fN von dem Lern verstärkungsagenten 200 auf Basis der Bewertung des Lerner gebnisses ausgewählt.
Gemäß des Verfahrens und des Systems der vorliegenden Erfin dung werden Zustandsketten 20, 30 verwendet und keine einzel nen Zustände. Die beste Kombination von Zustandsketten 20, 30 für einen bestimmten Datensatz wird bestimmt. Dabei können auch komplexe Zustandsketten 20, 30 verwendet werden, die ma nuell nur schwierig oder mit einem sehr hohen Aufwand zu fin den wären. Dies schließt jedoch das Auffinden von einfachen Lösungen mit ein, falls diese zum gewünschten Optimierungs ziel führen, wie beispielsweise ein einzelner Zustand, der dann mittels eines „Null-Operators" beschrieben wird.
Zum Auffinden der optimierten Kombination der optimierten Zu standsketten 20, 30 können verschiedenen Kriterien verwendet werden, wobei diese Kriterien in der Belohnungsfunktion be rücksichtigt werden, wie beispielsweise eine geringe Berech nungsdauer .
Die Belohnung wird automatisch generiert. Die Bewertung des Maschinenlernmoduls 400 und/oder eine Hauptkomponentenanalyse und/oder die Berücksichtigung der Auslastung und/oder die Be rechnungsdauer und/oder eine Verstärkungsfunktion können als Basis für eine Belohnung verwendet werden, wobei die Auswahl der Zustandsketten einen direkten Einfluss auf die Qualität beispielsweise einer Klassifizierung oder einer Hauptkompo nentenanalyse haben. Die Initialisierung der Q-Werte-Matrix 220 oder einer Über gangsmatrix kann manuell vorgegeben werden. Dabei können be stimmte Regeln abgebildet werden. Wenn beispielsweise verhin dert werden soll, dass eine Berechnungsfunktion f während der Vorverarbeitung 300 zweimal hintereinander ausgeführt wird, kann in der Q-Matrix 220 ein hoher negativer Wert festgelegt werden .
Mit dem Verfahren gemäß der vorliegenden Erfindung kann zu verlässig eine optimierte Kombination von Zustandsketten 20, 30 gefunden werden, die für die Menge der betrachteten Zu stände zu einer maximalen Genauigkeit beispielsweise bei ei ner Klassifizierung führen, was bei einem manuellen Verfahren nicht garantiert ist. Eine Datentypprüfung im Initialisie rungsschritt des erfindungsgemäßen Verfahrens sortiert die Kombinationen, die nicht zueinander passen, aus.
Zudem erkennt das System 100 durch das Bewertungssignal auch Fehlerfälle, für die eine Durchführung des Trainings nicht möglich ist. Wenn beispielsweise das Maschinenlernmodul 400 das Training nicht durchführen konnte, da es Daten eines fal schen Datentyps als Eingang erhalten hat, wird dies durch ei ne negative Belohnung bewertet. Folglich vermeidet der LV- Agent 200 für einen bestimmten Zustand s diese Aktion a aus zuwählen .
Des Weiteren kann das erfindungsgemäße Verfahren für vielfäl tige Maschinenlernaufgaben angewendet werden. Die Q-Werte- Matrix 220 des LV-Agenten 200 kann für eine spezifische Auf gabenstellung vorinitialisiert und/oder für ähnliche Maschi nenlernprobleme vortrainiert werden. Eine vortrainierte Q- Werte-Matrix 220 kann für Maschinenlernaufgabenstellungen mit ähnlichen Dimensionen verwendet werden, so dass die initialen Werte der Q-Werte-Matrix 220 aus einer anderen Entität oder Domain stammen können. In diesem Fall ist zwar ein erneutes Trainieren des LV-Agenten 200 erforderlich, gleichwohl erge ben sich Vorteile wie eine schnellere Konvergenz und somit ein schnelleres Auffinden einer optimierten Lösung sowie die Weitergabe von domainübergreifenden Aufgabenstellungen. Hier durch kann der Zeit- und Rechenaufwand für neue Anwender re duziert werden.

Claims

Patentansprüche
1. Ein System (100) zum Auffinden einer oder mehrerer opti mierter Kombination (en) von Berechnungsfunktionen (fl, f2, ..., fN) zur Berechnung von Merkmalen (ml, m2, ..., mN) einer Enti tät, umfassend einen Lernverstärkungs-Agenten (200), der dazu ausgebildet ist, eine oder mehrere Kombination von Berech nungsfunktionen (fl, f2, ..., fN) auszuwählen, welche an ein Datenvorverarbeitungsmodul (300) weitergegeben werden, wobei das Datenvorverarbeitungsmodul (300) ausgebildet ist, aus den Daten eines Trainingsdatensatzes (320) mittels der ausgewähl ten Berechnungsfunktionen (fl, f2, ..., fN) die Merkmale (ml, m2, ...,mN) zu berechnen und die Merkmale (ml, m2, ..., mN) an ein Maschinenlernmodul (400) weiterzugeben, welches dazu aus gebildet ist, die Merkmale (ml, m2, ..., mN) zu analysieren und/oder zu trainieren und das Lernergebnis an ein Bewer tungsmodul (440) weiterzugeben, das ausgebildet ist, eine Be wertung für das Lernergebnis zu erstellen und diese Bewertung an den Lernverstärkungs-Agenten (200) weiterzugeben, der aus gebildet ist auf Basis dieser Bewertung des Lernergebnisses erneut eine oder mehrere Kombination (en) von Berechnungsfunk tionen (fl, f2, ..., fN) auszuwählen.
2. Das System (100) nach Anspruch 1, dadurch gekennzeich net, dass das Bewertungsmodul (440) ausgebildet ist, die Be wertung für das Lernergebnis an ein Belohnungsmodul (500) weiterzugeben, das ausgebildet ist, die Bewertung durch eine Verstärkungsfunktion zu verstärken und/oder eine Belohnung zu erzeugen und die Bewertung und/oder Belohnung an den Lernver stärkungs-Agenten (200) weiterzugeben.
3. Das System (100) nach Anspruch 1 oder 2, dadurch gekenn zeichnet, dass der Lernverstärkungs-Agent (200) eine Daten bank (220) für die Bewertung von Zustands-Aktions-Paaren (s|a) bezogen auf die Auswahl von Aktionen (al, a2, ..., aN) für Zustände (sl, s2, ..., sN) einer Entität aufweist.
4. Das System (100) nach Anspruch 3, dadurch gekennzeich net, dass die Datenbank (220) als Qualitäts-Matrix ausgebil det ist für die Bewertung der Zustands-Aktions-Paare (s|a).
5. Das System (100) nach Anspruch 3, dadurch gekennzeich net, dass die Datenbank (220) als neuronales Netz ausgebildet ist und/oder durch Regeln erweiterbar ist.
6. Das System (100) nach einem oder mehreren der vorange henden Ansprüche, dadurch gekennzeichnet, dass das Maschinen lernmodul (400) ausgebildet ist, einen Algorithmus (420) aus dem überwachten Lernen und/oder dem unüberwachten Lernen und/oder dem verstärkenden Lernen zu verwenden.
7. Das System (100) nach einem oder mehreren der vorange henden Ansprüche 1 bis 6, dadurch gekennzeichnet, dass ein Trainingsmodus und ein Laufzeitmodus vorgesehen sind, wobei der Wechsel von dem Trainingsmodus in den Laufzeitmodus und/oder der Wechsel von dem Laufzeitmodus in den Trainings modus automatisch durchführbar ist.
8. Das System (100) nach einem oder mehreren der vorange henden Ansprüche 1 bis 7, dadurch gekennzeichnet, dass der Lernverstärkungsagent (200) ausgebildet ist, einen Initiali sierungsschritt durchzuführen zur Vorauswahl von Kombinatio nen von Aktionen (al, a2, ..., aN) ) .
9. Das System (100) nach einem oder mehreren der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass der Lernverstärkungs- Agent (200) ausgebildet ist, die Auswahl der Berechnungsfunk tionen (fl, f2, ..., fN) in Abhängigkeit von Optimierungskrite rien wie der Auslastung und/oder der Rechengeschwindigkeit eines Endgerätes durchzuführen.
10. Ein Verfahren zum Auffinden von einer oder mehreren op timierten Kombination (en) von Berechnungsfunktionen (fl, f2, ..., fN) zur Berechnung von Merkmalen (ma, m2, ..., mN) einer En- tität unter Verwendung eines Lernverstärkungsagenten (200), umfassend :
(a) Auswahlen (S10) von einer oder mehreren Kombinati on (en) von Berechnungsfunktionen (fl, f2, ..., fN) von dem Lernverstärkungsagenten (200);
(b) Weitergeben (S20) der ausgewählten Berechnungsfunk tionen (fl, f2, ..., fN) von dem Lernverstärkungs agenten (200) an ein Datenvorverarbeitungsmodul (300) ;
(c) Berechnen (S30) von Merkmalen (ml, m2, ..., mN) aus den Daten eines Trainingsdatensatzes (320) mittels der ausgewählten Berechnungsfunktionen (fl, f2, ..., fN) in dem Datenvorverarbeitungsmodul (300);
(d) Weitergeben (S40) der Merkmale (ml, m2, ..., mN) von dem Datenvorverarbeitungsmodul an ein Maschinen lernmodul (400);
(e) Analysieren und/oder Trainieren (S50) der Merkmale (ml, m2, ..., mN) in dem Maschinenlernmodul (400);
(f) Weitergeben (S60) des Lernergebnisses des Maschi nenlernmoduls (400) an ein Bewertungsmodul (440);
(g) Erstellen (S70) einer Bewertung des Lernergebnisses in dem Bewertungsmodul (440);
(h) Weitergeben (S80) der Bewertung des Lernergebnisses an den Lernverstärkungs-Agenten (200);
(i) Auswählen (S90) von einer oder mehreren Kombinati on (en) von Berechnungsfunktionen (fl, f2, ..., fN) von dem Lernverstärkungsagenten (200) auf Basis der Bewertung des Lernergebnisses.
11. Das Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Schritte S10 - S90 solange wiederholt werden, bis eine optimierte Kombination der Berechnungsfunktionen (fl, f2, ..., fN) gefunden wurde.
12. Das Verfahren nach Anspruch 10 oder 11, dadurch gekenn zeichnet, dass das Bewertungsmodul (440) die Bewertung an ein Belohnungsmodul (500) weitergibt, welches die Bewertung durch eine Verstärkungsfunktion verstärkt und/oder eine Belohnung erzeugt und die Bewertung und/oder Belohnung an den LV- Agenten (200) weitergibt.
13. Das Verfahren nach einem oder mehreren der Ansprüche 10 bis 12, dadurch gekennzeichnet, dass der Lernverstärkungs- Agent (200) eine Datenbank (220) für die Bewertung von Zu- stands-Aktions-Paaren (s|a) bezogen auf die Auswahl von Akti onen (al, a2, ..., aN) für Zustände (sl, s2, ..., sN) einer Enti- tät verwendet.
14. Das Verfahren nach einem oder mehreren der Ansprüche 10 bis 13, dadurch gekennzeichnet, dass die Datenbank (220) als Qualitäts-Matrix für die Bewertung der Zustands-Aktions-Paare (s|a) und/oder als neuronales Netz ausgebildet ist und/oder durch Regeln erweiterbar ist.
15. Das Verfahren nach einem oder mehreren der vorangehenden Ansprüche 10 bis 14, dadurch gekennzeichnet, dass ein Trai- ningsmodus und ein Laufzeitmodus vorgesehen sind, wobei der Wechsel von dem Trainingsmodus in den Laufzeitmodus und der Wechsel von dem Laufzeitmodus in den Trainingsmodus automa tisch durchgeführt wird.
PCT/EP2018/082849 2018-11-28 2018-11-28 System und verfahren zum auffinden von optimierten kombinationen von berechnungsfunktionen WO2020108748A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2018/082849 WO2020108748A1 (de) 2018-11-28 2018-11-28 System und verfahren zum auffinden von optimierten kombinationen von berechnungsfunktionen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2018/082849 WO2020108748A1 (de) 2018-11-28 2018-11-28 System und verfahren zum auffinden von optimierten kombinationen von berechnungsfunktionen

Publications (1)

Publication Number Publication Date
WO2020108748A1 true WO2020108748A1 (de) 2020-06-04

Family

ID=64661300

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2018/082849 WO2020108748A1 (de) 2018-11-28 2018-11-28 System und verfahren zum auffinden von optimierten kombinationen von berechnungsfunktionen

Country Status (1)

Country Link
WO (1) WO2020108748A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113568954A (zh) * 2021-08-02 2021-10-29 湖北工业大学 网络流量预测数据预处理阶段的参数最优化方法及系统

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
FARD S.M.H.; HAMZEH A.; HASHEMI S.: "Using reinforcement learning to find an optimal set of features", COMPUT MATH APPL, 2013, pages 1892 - 1904, XP028759742, DOI: doi:10.1016/j.camwa.2013.06.031
FATEMEH NARGESIAN ET AL: "Learning Feature Engineering for Classification", PROCEEDINGS OF THE TWENTY-SIXTH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE, 1 August 2017 (2017-08-01), California, US, pages 2529 - 2535, XP055606703, ISBN: 978-0-9992411-0-3, DOI: 10.24963/ijcai.2017/352 *
KHURANA UDAYAN ET AL: "Cognito: Automated Feature Engineering for Supervised Learning", 2016 IEEE 16TH INTERNATIONAL CONFERENCE ON DATA MINING WORKSHOPS (ICDMW), IEEE, 12 December 2016 (2016-12-12), pages 1304 - 1307, XP033055958, DOI: 10.1109/ICDMW.2016.0190 *
UDAYAN KHURANA ET AL: "Ensembles with Automated Feature Engineering", 15 July 2018 (2018-07-15), XP055606400, Retrieved from the Internet <URL:https://udayankhurana.com/wp-content/uploads/2018/08/58.pdf> [retrieved on 20190717] *
UDAYAN KHURANA ET AL: "Feature Engineering for Predictive Modeling using Reinforcement Learning", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 21 September 2017 (2017-09-21), XP080822280 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113568954A (zh) * 2021-08-02 2021-10-29 湖北工业大学 网络流量预测数据预处理阶段的参数最优化方法及系统
CN113568954B (zh) * 2021-08-02 2024-03-19 湖北工业大学 网络流量预测数据预处理阶段的参数最优化方法及系统

Similar Documents

Publication Publication Date Title
DE102018111905A1 (de) Domänenspezifische Sprache zur Erzeugung rekurrenter neuronaler Netzarchitekturen
EP3785177B1 (de) Verfahren und vorrichtung zum ermitteln einer netzkonfiguration eines neuronalen netzes
DE102016011520B4 (de) Produktionsausrüstung mit Maschinenlernsystem und Montage-und Prüfeinheit
DE102014223226A1 (de) Diskriminator, Unterscheidungsprogramm und Unterscheidungsverfahren
DE112017007492T5 (de) System und Verfahren zur Erfassung von Objekten in einem digitalen Bild und System und Verfahren zur Neubewertung von Objekterfassungen
DE10296704T5 (de) Fuzzy-Inferenznetzwerk zur Klassifizierung von hochdimensionalen Daten
DE102019209644A1 (de) Verfahren zum Trainieren eines neuronalen Netzes
DE102017218851A1 (de) Verfahren, Vorrichtung und Computerprogramm zur Erstellung eines tiefen neuronalen Netzes
DE112019007626T5 (de) Arbeitselement-analyseeinrichtung und arbeitselement-analyseverfahren
WO2020108748A1 (de) System und verfahren zum auffinden von optimierten kombinationen von berechnungsfunktionen
DE102021201777A1 (de) Verfahren zur Verhaltenserkennung, Vorrichtung zur Verhaltenserkennung und computerlesbares Aufzeichnungsmedium
DE102019202816A1 (de) Training neuronaler Netzwerke für effizientes Implementieren auf Hardware
DE102019204118A1 (de) Verfahren zum Übertragen eines Merkmals eines ersten Bilds an ein zweites Bild
DE202022104461U1 (de) Syntaxgeleitetes Erkennungssystem für mathematische Termini
DE102019127622B4 (de) Abwehrgenerator, Verfahren zur Verhinderung eines Angriffs auf eine KI-Einheit und computerlesbares-Speichermedium
DE10222700A1 (de) Optimierungsverfahren mit validierten Approximationsmodellen
DE102021202813A1 (de) Verfahren, Vorrichtung und Computerprogramm für eine Unsicherheitsbewertung einer Bildklassifikation
DE112020005759T5 (de) Verfahren und System zum Bestimmen der Aufgabenkompatibilität in neuronalen Netzen
DE102020211596A1 (de) Verfahren zum Generieren eines trainierten neuronalen Faltungs-Netzwerks mit invarianter Integrationsschicht zum Klassifizieren von Objekten
DE102020205394A1 (de) Computerimplementiertes Verfahren und Vorrichtung zum Erstellen eines Knowledge Graph
EP2110784A1 (de) Verfahren und Expertensystem zum Bewerten eines Objekts
DE102019113958A1 (de) Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente
DE102019208265A1 (de) Adaptive Bereinigung von Messdaten um unterschiedliche Arten von Störungen
LU504988B1 (de) Ein Verfahren zur Klassifizierung von integrierten Ungleichgewichtsdaten mit Unterabtastung auf der Grundlage von Fuzzy-C-Mittelwert-Clustering
DE112020007372T5 (de) Verfahren und Einrichtung für ein auf gemeinsam genutzten Gewichten basierendes neuronales Netzwerk mit stochastischen Architekturen

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: 18815558

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18815558

Country of ref document: EP

Kind code of ref document: A1