[go: up one dir, main page]

EP4591244A1 - Sichere steuerung von technisch-physikalischen systemen - Google Patents

Sichere steuerung von technisch-physikalischen systemen

Info

Publication number
EP4591244A1
EP4591244A1 EP23768195.2A EP23768195A EP4591244A1 EP 4591244 A1 EP4591244 A1 EP 4591244A1 EP 23768195 A EP23768195 A EP 23768195A EP 4591244 A1 EP4591244 A1 EP 4591244A1
Authority
EP
European Patent Office
Prior art keywords
areas
computer
machine
implemented method
input vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP23768195.2A
Other languages
English (en)
French (fr)
Inventor
Thomas Waschulzik
Thomas Schnapka
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens Mobility GmbH
Original Assignee
Siemens Mobility GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Mobility GmbH filed Critical Siemens Mobility GmbH
Publication of EP4591244A1 publication Critical patent/EP4591244A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Definitions

  • Various examples concern techniques to enable control of technical-physical systems.
  • Various examples relate to techniques for estimating a hidden system state of such technical-physical systems and, if necessary, determining an associated uncertainty.
  • Machine-learned algorithms are used in various application areas because the corresponding tasks to be solved by the machine-learned algorithm can be defined by a description of requirements.
  • machine-learned algorithms can be used to control technical-physical systems (i.e. technical systems).
  • the machine-learned algorithm can predict a hidden system state of the technical-physical system (inference).
  • machine-learned algorithms can be used to control a vehicle, such as a motor vehicle or a train.
  • Machine-learned algorithms can be used to monitor and, if necessary, adjust maintenance intervals for technical-physical systems such as vehicles or infrastructure (e.g. rails, switches, means of passenger transport such as escalators or treadmills, production facilities, etc.).
  • technical-physical systems such as vehicles or infrastructure (e.g. rails, switches, means of passenger transport such as escalators or treadmills, production facilities, etc.).
  • the machine-learned algorithm therefore determines one or more output features (typically in the form of an output vector) given the presence of input features (which are typically passed to the machine-learned algorithm in the form of an input vector).
  • the machine-learned algorithm is trained based on one or more training data sets.
  • a training data set includes several training data pairs of an input vector and associated ground truths.
  • the input vector comprises several entries, each of which encodes characteristics of status data of the technical-physical system.
  • the ground truths describe a target position in the vector space of the output vector of the machine-learned algorithm. Training the machine-learned algorithm ensures that the output vector obtained from the machine-learned algorithm matches the target position in vector space as closely as possible.
  • Examples include: B. autonomous vehicles that take part in traffic.
  • a machine-learned algorithm that determines output vectors based on input vectors can be used.
  • the input vectors can each encode status data of a technical-physical system.
  • the output vectors can predict a respective hidden system state of the technical-physical system.
  • the machine-learned algorithm can predict discrete system states (classes), i.e. implement a classifier.
  • regression could also be performed by the machine-learned algorithm.
  • the input vectors can have two or more dimensions.
  • the output vectors can have two or more dimensions.
  • the position of an input vector in the corresponding vector space defines the position of the associated output vector in the corresponding vector space (output vector space).
  • context data is used for the machine-learned algorithm in inference.
  • the context data provides supplementary information to the machine-learned algorithm.
  • the contextual data is determined in the context of training the machine-learned algorithm.
  • the contextual data can help determine a reliability of an estimate of the hidden system state by the machine-learned algorithm.
  • the information content of the context data may vary.
  • the context data are, for example, indicative of areas in the input vector space of the machine-learned algorithm, i.e. define hypervolumes of the input vector space. It can be checked how the input vector is positioned with respect to these areas. From this it can be deduced whether there is a reliable or unreliable prediction by the machine-learned algorithm for this input vector.
  • the areas can e.g. B. as a Delaunay triangulation of the
  • Input space can be determined so that input vectors of Training data pairs of a training data set form corners of the respective surfaces (strictly speaking, hypersurfaces of any dimensionality; for the sake of simplicity, however, reference is only made to surfaces).
  • the areas interpolate between the input vectors, for which ground truths are also available within the training data pairs.
  • the context data may also include a partitioning of the regions into those associated with low uncertainty in estimating the hidden system state and those associated with high uncertainty in estimating the hidden system state. Alternatively, such a partitioning could still be created for inference.
  • the context data can index one or more permitted results for the hidden system state for at least some areas. So in other words, this means that the ranges can indicate which output vectors of the machine-learned algorithm are allowed.
  • Such contextual data can therefore be used in inference - when no ground truth is available - to check the output of the machine-learned algorithm for plausibility.
  • the contextual data can be determined in the context of training the machine-learned algorithm. For example, it would be conceivable that the context data is determined based on input vectors of a training data set. For example, the above-mentioned areas indexed by the context data can be determined by interpolation between positions of the input vectors of the training data set. However, the context data cannot only be used in connection with inference. For example, it would also be possible to use the context data to determine for which positions in the input vector space additional training data pairs - that is, combinations of an input vector and an output vector describing a ground truth - are required.
  • the context data By using the context data, it is possible to control the technical-physical system in a particularly safe manner. For example, if the control data shows that an output of the machine-learned algorithm is subject to a comparatively high degree of uncertainty, the permissible control actions can be restricted and/or the technical-physical system can be switched to a safe operating mode and/or a warning message can be issued.
  • the training of the machine-learned algorithm can be carried out in a particularly targeted manner, so that reliable estimates of the hidden system state can be obtained more frequently overall.
  • a machine-learned algorithm is used for this estimation.
  • the estimation of the machine-learned algorithm for the hidden system state is either allowed or blocked, each for a corresponding input vector. This is based on at least one predetermined criterion.
  • the at least one predetermined criterion takes into account a position of the input vector in the corresponding input vector space. This means that depending on the position of the input vector in the input vector space, the output of the machine-learned algorithm can be prevented. This can result in unsafe expenses or Uncertain estimates for the hidden system state can be avoided.
  • a computer-implemented method for estimating a hidden system state of a technical-physical system using a machine-learned algorithm involves obtaining an input vector.
  • the input vector encodes state data of the technical-physical system.
  • the process also includes loading the machine-learned algorithm.
  • the method further includes loading predetermined context data.
  • the predetermined context data is associated with the machine-learned algorithm.
  • the predetermined context data index a large number of areas in the vector space of the input vector.
  • the method also includes determining a relative position of the input vector with respect to the plurality of regions.
  • the method further includes selectively processing the input vector in the machine-learned algorithm to estimate the hidden system state or outputting an error indicator. The choice between processing and outputting the error indicator is based on the relative position of the input vector with respect to the plurality of regions.
  • a device includes at least a processor and a memory.
  • the at least one processor is set up to load program code from memory and to execute the program code.
  • the at least one processor is set up to execute a method for estimating a hidden system state of a technical-physical system using a machine-learned algorithm based on the program code.
  • the method involves obtaining an input vector.
  • the input vector encodes state data of the technical-physical system.
  • the process also includes loading the machine-learned algorithm.
  • the method further includes loading predetermined context data.
  • the predetermined context data is with the machine-learned algorithm rithm associated.
  • the predetermined context data index a large number of areas in the vector space of the input vector.
  • the method also includes determining a relative position of the input vector with respect to the plurality of regions.
  • the method further includes selectively processing the input vector in the machine-learned algorithm to estimate the hidden system state or outputting an error indicator. The choice between processing and outputting the error indicator is based on the relative position of the input
  • a computer program or a computer program product or a computer-readable storage medium includes program code.
  • the program code can be loaded and executed by at least one processor.
  • the processor executes the program code, this causes the processor to execute a method of estimating a hidden system state of a technical-physical system using a machine-learned algorithm.
  • the method involves obtaining an input vector.
  • the input vector encodes state data of the technical-physical system.
  • the process also includes loading the machine-learned algorithm.
  • the method further includes loading predetermined context data.
  • the predetermined context data is associated with the machine-learned algorithm.
  • the predetermined context data indexes a variety of regions in the vector space of the input vector.
  • the method also includes determining a relative position of the input vector with respect to the plurality of regions.
  • the method further includes selectively processing the input vector in the machine-learned algorithm to estimate the hidden system state or outputting an error indicator. The choice between processing and outputting the error indicator is based on the relative position of the input vector with respect
  • a computer-implemented method for parameterizing a machine-learned algorithm is disclosed.
  • the method includes obtaining a training data set.
  • the training data set includes multiple training data pairs, which in turn include input vectors and ground truths.
  • the input vectors encode state data of the technical-physical system.
  • the basic truths concern the hidden system state of the technical-physical system.
  • the method also includes carrying out training of the machine-learned algorithm. Training is performed based on the training data set. Performing training produces parameter values for the machine-learned algorithm.
  • the method further includes determining a plurality of regions based on the input vectors. The variety of regions includes regions that are defined in the vector space of the input vectors.
  • the method further includes generating context data for the machine-learned algorithm such that the context data is indicative of the plurality of areas.
  • the method also includes storing the machine-learned algorithm and storing the context data associated with the machine-learned algorithm.
  • a device comprises at least one processor and a memory .
  • the at least one processor is configured to load program code from the memory and to execute the program code .
  • the at least one processor is configured to execute a method for parameterizing a machine-learned algorithm based on the program code .
  • a hidden System state of a technical-physical system can be estimated.
  • the method comprises obtaining a training data set.
  • the training data set comprises a plurality of training data pairs, which in turn comprise input vectors and ground truths.
  • the input vectors encode state data of the technical-physical system.
  • the ground truths relate to the hidden system state of the technical-physical system.
  • the method comprises carrying out a training of the machine-learned algorithm. The training is carried out based on the training data set.
  • the method further comprises determining a plurality of regions based on the input vectors.
  • the plurality of regions comprise regions defined in the vector space of the input vectors.
  • the method further comprises generating context data for the machine-learned algorithm, such that the context data is indicative of the plurality of regions.
  • the method also includes storing the machine-learned algorithm and storing context data associated with the machine-learned algorithm.
  • a computer program or a computer program product or a computer-readable storage medium includes program code.
  • the program code can be loaded and executed by at least one processor.
  • the processor executes the program code, this causes the processor to execute a method of parameterizing a machine-learned algorithm.
  • a hidden system state of a technical-physical system can be estimated.
  • the method includes obtaining a training data set.
  • the training data set includes multiple training data pairs, which in turn include input vectors and ground truths.
  • the input vectors encode state data of the technical-physical system.
  • the basic truths concern the hidden system state of the technical-physical system.
  • the method also includes carrying out training of the machine-learned algorithm. Training is performed based on the training data set. Performing training produces parameter values for the machine-learned algorithm.
  • the method further includes determining a plurality of regions based on the input vectors.
  • the variety of regions includes regions that are defined in the vector space of the input vectors.
  • the method further includes generating context data for the machine-learned algorithm such that the context data is indicative of the plurality of areas.
  • the method also includes storing the machine-learned algorithm and storing the context data associated with the machine-learned algorithm.
  • FIG. 1 schematically illustrates a system comprising a data processing system and a technical-physical system according to various examples.
  • FIG. 2 schematically illustrates a data processing pipeline with a machine-learned algorithm and associated context data according to various examples.
  • FIG. 3 illustrates details related to the context data indexing multiple regions in a vector space of input vectors for the machine learned algorithm.
  • FIG. 4 is a flowchart of an example method.
  • FIG. 5A is a flowchart of an example method.
  • FIG. 5B shows aspects related to a Delaunay triangulation.
  • FIG. 5C shows aspects related to a Delaunay triangulation.
  • FIG. 5D shows aspects related to min-max triangulation.
  • FIG. 5E shows aspects related to regions in the input vector space associated with different classes.
  • FIG. 5F shows aspects related to regions in the input vector space associated with different classes.
  • FIG. 5G shows aspects related to regions in the input vector space that are associated with different classes.
  • FIG. 5H shows aspects related to regions in the input vector space that are associated with different classes.
  • FIG. 51 shows aspects related to the plausibility check of context data.
  • FIG. 6 illustrates input vectors of a training data set in a corresponding vector space.
  • FIG. 7 illustrates a classification result of a machine-learned algorithm based on the training data set from FIG. 6 was trained according to various examples.
  • FIG. 8 illustrates a classification result of a machine-learned algorithm based on the training data set from FIG. 6 was trained according to various examples.
  • FIG. 9 illustrates a classification result of a machine-learned algorithm trained based on the training dataset of FIG. 6, according to various examples.
  • FIG. 10A illustrates several regions that exist in the vector space of the input vectors of FIG. 6 can be determined according to various examples.
  • FIG. 10B illustrates details of one of the areas of FIG. 10A.
  • FIG. IOC illustrates an input vector space according to various examples.
  • FIG. 10D illustrates a region in the input vector space shown in FIG. IOC is determined.
  • FIG. 10E illustrates another region located in the input vector space shown in FIG. IOC is determined.
  • FIG. 11 is a flowchart of an example method.
  • FIG. 12 illustrates context data according to various examples.
  • FIG. 13 illustrates context data according to various examples.
  • the estimation of the hidden system state could be used to control the engineering-physical system. This means that the operation of the technical-physical system can be adjusted accordingly based on the prediction of the ML algorithm.
  • the techniques described herein can be used in various areas of application, i.e. for different technical physical systems are used.
  • the techniques described herein could be used to control vehicles, e.g. B. in rail-bound transport, public road traffic, in industrial plants or buildings as well as ships, aircraft or spacecraft.
  • the techniques described herein could be used to adjust maintenance intervals for transportation routes such as rail sections or switches.
  • the techniques described herein can be used to detect fault conditions of rail vehicles or track infrastructure or to allow the release of certain rail/track sections to road users or to control traffic in transport networks.
  • the techniques described herein could be used to monitor the operation of production lines or industrial plants, such as power plants or turbines, to control the distribution of energy or material flows, or to control technical components (e.g. surge protection), people (e.g . in industrial production), to protect company values (e.g. in economic transactions) or the environment (e.g. from fires).
  • technical components e.g. surge protection
  • people e.g . in industrial production
  • the various techniques described herein use a machine-learned algorithm.
  • the machine-learned algorithm could be a classifier, that is, mapping continuous values of an input vector to discrete classes.
  • the machine-learned algorithm could also provide regression, that is, have continuous values of an output vector.
  • a deep neural network could be used, for example with convolutional layers with a trained convolution kernel. It could A "support vector machine” (SVM) can also be used. Based on a training data set, the input space is divided into classes in such a way that the widest possible area between the different classes remains free.
  • Another machine-learned algorithm that can be used would be "nearest neighbor” classifier. For example, a parameter that describes the number of nearest neighbors to be taken into account can be learned as part of the training of the machine-learned algorithm.
  • Another type of machine-learned algorithm that may benefit from the techniques disclosed herein is the multilayer perceptron or radial basis function network (RBF network).
  • RBF network multilayer perceptron or radial basis function network
  • the context data it is possible to use the context data to check whether a prediction of the machine-learned algorithm for a particular input vector is reliable or unreliable.
  • the input vector can either be processed with the machine-learned algorithm (provided its output is reliable), or an error indicator could be output.
  • the technical-physical system can also be controlled depending on an output of the error indicator. For example, a safe operating mode could be activated. A user review could be triggered. A warning signal can be issued. An autonomously acting functionality such as an economic transaction could be aborted. In this way, the risk to the environment due to an unreliable prediction by the machine-learned algorithm can be avoided.
  • Normal operation refers to the state of the system in which the system is not in a safe state, but rather fulfills a safety-relevant utility function; this could e.g. B. be a moving train that does not stop at a safe position at a station where passengers can board and disembark safely.
  • this can be done during training - for example when collecting and recording examples, for example.
  • the capture of further examples increases the reliability of the prediction by the machine-learned algorithm and the technical system.
  • Blocking the prediction can correspond to the output of the error indicator described above or to otherwise suppressing further processing of the Machine-learned algorithm output. Allowing the estimate may correspond to passing it to subsequent processing steps of a corresponding data processing pipeline.
  • the at least one criterion for blocking or allowing can take into account the position of the corresponding input vector - which forms the basis of the estimate of the machine-learned algorithm. For example, the prediction could be blocked if the position of the input vector corresponds to an extrapolation of the machine-learned algorithm based on state data of the technical-physical system that is included in a training data set for the machine-learned algorithm. This state data can mark corresponding positions (e.g. closest ones) in the input vector space; that can be indicated by the context data. Then the input vector can have a position in the input vector space that is spaced from areas that extend between positions in the input vector space corresponding to the state data.
  • a prerequisite for allowing the estimation of the machine-learned algorithm can be that there is no extrapolation, i.e. there is an interpolation.
  • the input vector has a position in the input vector space, which is arranged in a region that extends between the positions of the state data from the training data set (if the input vector space has the dimension D, then each D+l input vectors, which spans a space of dimension D and defines a hypervolume T of the input space.
  • the boundary of the hypervolume T is then limited by hypersurfaces, each of which connects three neighbors of the state data.
  • the input vector lies within a hypervolume, which is represented by examples of the training set as above is limited as described, then from This is not the case when speaking of an interpolation based on the training data, but of an extrapolation.
  • it can also be required that the longest distance between the two or more state data of the technical-physical system between which interpolation is taking place is not greater than a predetermined threshold value. This means that an upper threshold value can be required for the side length of the hypersurfaces delimiting a region.
  • Another exemplary criterion that can lead to a blocking of the prediction would be falling below a minimum distance to uncertain positions in the input vector space.
  • These unsafe positions could e.g. B. based on a course of a class boundary between different predicted classes in the input vector space. The positions can therefore be labeled as unsafe.
  • TAB . 1 Different levels of certainty that can be obtained in the context of prediction by a machine-learned algorithm. Such stages can be described in the context of specific regions in the input vector space defined by contextual data. The areas could be divided into different security levels using an evaluation metric. This can be done either for inference or during training. Determining the areas or The application of the evaluation metrics can be carried out in a quality-assured manner, which means that dangerous loss or falsification of the information can be reliably avoided.
  • FIG. 1 illustrates aspects related to a system 90.
  • the system 90 includes a data processing system 91 and a technical-physical system 95 (e.g. an industrial plant, an air, water, space or ground vehicle, a power plant, a means of passenger transport such as an elevator or an escalator, a manufacturing machine, a factory, a production line, a system for Distribution of energy or material flows or a system for controlling traffic, to give just a few examples).
  • a technical-physical system 95 e.g. an industrial plant, an air, water, space or ground vehicle, a power plant, a means of passenger transport such as an elevator or an escalator, a manufacturing machine, a factory, a production line, a system for Distribution of energy or material flows or a system for controlling traffic, to give just a few examples.
  • the data processing system 91 has a processor 92 and a non-volatile memory 93.
  • the data processing system 91 comprises a communication interface 94.
  • the processor 92 can communicate with the technical-physical system by means of the communication interface 94. For example, it would be possible for status data 81 of the technical-physical system 95 to be received via the communication interface 94.
  • the processor 92 could, for example, be measured values from a sensor that monitors certain operating parameters of the technical-physical system 95.
  • the status data 81 could also be operating values of the technical-physical system 95, for example certain control specifications for actuators of the technical-physical system 95. It is also possible for the processor 92 to transmit control data via the communication interface 94
  • the operation of the technical-physical system can be adjusted using the control data 82.
  • FIG. 1 While in FIG. 1 only one processor 92 is shown, the data processing system 91 can generally have several processors.
  • the processor 92 can load and execute program code from the memory 93.
  • the program code can define a machine-learned algorithm that is set up to receive input vectors that represent the Encode and process status data 81.
  • the machine-learned algorithm can then provide an output vector that estimates a hidden system state of the engineering-physical system.
  • a corresponding data processing pipeline is also shown in FIG. 2 shown.
  • FIG. 2 illustrates aspects related to a machine learned algorithm 89.
  • the machine-learned algorithm 89 processes an input vector 85 that encodes state data 81 of the technical-physical system 95.
  • the machine-learned algorithm 89 then provides an output vector 86 that predicts the hidden system state of the engineering-physical system 95. This corresponds to an inference.
  • the verification can be done based on the position of the input vector 85 in the input vector space and using corresponding context data 50.
  • the context data 50 is associated with, but different from, the machine-learned algorithm 89. Different machine-learned algorithms 89 have different context data 50.
  • the context data 50 can, for example, be determined in connection with the training of the machine-learned algorithm 89, which will be explained in detail later.
  • FIG. 3 illustrates aspects related to the position of the input vector 85 in the corresponding input vector space 71 (for illustration, the input vector space 71 is shown in two dimensions, but may be higher dimensional; the input vector space is therefore strictly speaking a hyperspace).
  • FIG. 3 also shows several areas 72 in the input vector space 71.
  • the areas 72 are delimited from one another by hypersurfaces (or in the two-dimensional case shown, stretches).
  • the input vector 85 has a specific position with respect to these areas 72 (in the example of FIG. 3, the input vector 85 is arranged in one of the areas 72).
  • the areas can be indexed by context data 50 associated with the machine-learned algorithm 89.
  • the context data 50 could indicate the areas between the areas 72.
  • the areas can be associated with different security levels as per TAB . 1 .
  • the input vector machine-learned algorithm 89 can be indexed by the context data 50 of the machine-learned algorithm 89.
  • the context data 50 can be loaded by the processor 92 from the memory 93, for example.
  • the context data 50 can be created in connection with the training of the machine-learned algorithm, i.e. H . at the Parameterization of the machine-learned algorithm; see FIG. 4.
  • FIG. 4 is a flowchart of an example method.
  • FIG. 4 illustrates various phases of using a machine-learned algorithm such as machine-learned algorithm 89.
  • Training can be performed based on a training data set.
  • the training data set contains training data pairs, each of which includes an input vector and an associated output vector.
  • the output vector represents the ground truth for the output of the machine-learned algorithm for the respective input vector.
  • a ground truth can be obtained based on manual annotation by an expert with domain knowledge.
  • parameter values for the machine learned algorithm are obtained. Different parameter values can be obtained for different types of machine-learned algorithms (for example, for a deep neural network with one convolutional layer, the convolution kernel can be determined).
  • the training can be carried out using previously known techniques, which typically include an iterative optimization of the various parameter values to minimize a loss function.
  • the loss function describes a distance of the output vector of the machine-learned algorithm in the current separation state compared to the corresponding vector of the ground truth of a corresponding pair of training data.
  • the parameterization 3001 may also include generating the context data 50 for the machine-learned algorithm. These can be determined based on the input vectors of the training data set. This means that the context data is specific to the respective machine-learned algorithm that has undergone a certain training. Different machine-learned algorithms then have different context data (see also vertical dashed arrow in FIG. 2).
  • Box 3002 is where the inference takes place. This inference takes into account both the previously trained machine-learned algorithm 89 in order to estimate, if necessary, a hidden system state of the technical-physical system; as well as the context data 50 to determine whether an output of the machine-learned algorithm is secure or unsafe. No ground truth is available as part of the inference in Box 3002. That is, the machine-learned algorithm 89 outputs an output vector 86 that cannot be compared to a ground truth.
  • FIG. 5A is a flowchart of an example method.
  • FIG. 5A illustrates aspects related to parameterizing a machine-learned algorithm according to box 3001 of FIG. 4.
  • the method from FIG. 5A is executed by processor 92 based on program code 12 loaded from memory 93 and then executed by processor 92.
  • a training data set is obtained in Box 3505.
  • the training data set includes several pairs of training data.
  • Each training data pair has a corresponding input vector, corresponding to input vector 85 (see FIG. 2).
  • the input vector encodes status data of a technical-physical system.
  • a ground truth is assigned to each input vector, for a corresponding hidden system state of the technical-physical system.
  • the basic truths are available in the form of output vectors (compare output vector 86 in FIG. 2).
  • box 3510 the training of the machine-learned algorithm is then carried out based on the training data set. This is done to obtain parameter values for the machine learned algorithm. Details about the training have already been described above in connection with Box 3001.
  • At least some of the areas are determined in such a way that they are arranged between the positions of the input vectors in the corresponding input vector space. This means that the input vectors each define outer boundaries of the areas. This means that the areas extend between the input vectors. In order to determine the range - interpolated between the positions of the input vectors in the input vector space.
  • the areas are formed based on triangular areas of a triangular network, the nodes of which are determined by the input vectors.
  • a triangulation e.g. B.
  • a Delaunay triangulation can be used.
  • the context data 50 can then be generated, which is indicative of the areas.
  • the context data 50 could include the triangular areas of the triangular network.
  • the areas can therefore be delimited by surfaces (more precisely: hypersurfaces) that extend between the positions of neighboring input vectors in the corresponding input vector space.
  • KD-Trees algorithm can be used.
  • Other classic tree structures would be conceivable, such as quadtrees or R-trees.
  • Approximate nearest neighbor methods such as locality-sensitive hashing are suitable for particularly high-dimensional data.
  • the areas are determined in such a way that a position in the input vector space that is recognized as unsafe is surrounded. If a position is recognized as unsafe, the extent of such an area can be determined based on a specified distance measure (parameter "b").
  • the parameter b supports the control of problems at the class boundaries in applications with a strong imbalance with regard to the importance of certain Error types.
  • An example is a safety-relevant function that regulates driving over a traffic light. Driving over a red light can endanger the life and health of people. Remains a vehicle On the other hand, if you are standing at a bad traffic light, then there is just an availability problem for the vehicle because it doesn't always run then.
  • the parameter “bk” then defines a “safety distance” from an example from a class “k”. All examples that are less than bk in the input space from an example from class “k” are then assigned to class “k”. The following applies accordingly that for examples that are less than bk away from an uncertain position, the use of the prediction of the machine learned algorithm is blocked, i.e. e.g. no prediction is calculated or the prediction is discarded. It is not in all variants It is necessary that the areas around uncertainly recognized positions are also determined. Sometimes the areas that extend between positions of input vectors could also be evaluated accordingly using an evaluation metric (see Box 3520) (this will be explained later).
  • the context data 50 are also indicative of permitted results of the machine-learned algorithm if a corresponding input vector is arranged in one of the areas. These permitted results can be determined in box 3516.
  • a special algorithm could be used that determines the permitted results depending on the geometric properties of the respective area.
  • a corresponding additional machine-learned algorithm could be used.
  • a multilayer perceptron or a support vector machine could be used.
  • a classic rule-based algorithm could also be used.
  • the allowed results could be determined based on ground truths for the input vectors of the training data pairs used to determine the ranges.
  • the areas could be partitioned into first areas and second areas in box 3520 based on a predetermined evaluation metric, for example according to. TAB . 1, security level I or security level I I.
  • a predetermined evaluation metric for example according to. TAB . 1
  • security level I or security level I I
  • the first ranges in terms of the evaluation metric may be associated with a comparatively low uncertainty for the estimation of the hidden system state by the machine-learned algorithm; while the second areas are associated with a comparatively large uncertainty for estimating the hidden system state in terms of the evaluation metric.
  • the context data that is then saved can also be indicative of the partitioning of the areas.
  • the context data could e.g. B. the security level according to TAB . Show 1.
  • the evaluation metric could include a component that evaluates the plurality of areas based on their distance from positions recognized as unsafe. For example, if an area lies within a distance bk from a position recognized as unsafe, the area can be classified as unsafe.
  • the evaluation metric could include a component that partitions the plurality of areas based on an edge length of edges of the areas (see TAB. 1: Security level I vs. II). For example, the longer the individual edges of an area, there might be a tendency for that area to be classified as unsafe. This is based on the knowledge that the probability of a significant change in the output of the machine-learned algorithm is greater the larger the areas are, i.e. the greater the edge length of the edges of the area. The longer the edge length, the greater the probability of a double class change along the respective edge, for example from a first class to a second class and back.
  • a critical threshold a which determines a distance in the input vector space below which the ML algorithm can generalize safely. This is based, among other things, on the assumption that if the distance is smaller than a in the input vector space, there will be no double change in the output class. Areas that are classified as safe then have edge lengths that are all smaller than the threshold value a. Areas considered unsafe are stepped, have at least one side edge that is larger than the threshold value a.
  • the threshold a could be fixed for the different positions in the input space. But it would also be possible for the threshold to be chosen as a function of the position in the input space.
  • connection vectors starting from one input vector to the other input vector span an e-dimensional hypervolume of the input vector space if the connection vectors are linearly independent of each other, i.e. H . None of the connection vectors can be formed by a linear combination of the other connection vectors. Mathematically, it is then said that the “D+ 1” positions of the input vectors are in a “general position” relative to one another. It may happen that the connection vectors are nonlinearly independent.
  • D+1 input vectors do not yet span a D-dimensional hypervolume
  • neighboring points in the input space can be added until a D-dimensional space is spanned. Then this set of points defines a hypervolume for which a generalization can be made and an evaluation of the area can be carried out.
  • the triangulation divides the input vector space into hypervolumes (or areas), whereby the boundary of a hypervolume is defined by the area (more precisely: hypersurface) between three points of the triangulation. tion is located.
  • the respective hypervolume i.e. the respective area in the input vector space
  • the respective hypervolume is then delimited between the surfaces of D+l points adjacent to the triangulation (which are each in a general position relative to one another in accordance with the specifications for the triangulation).
  • triangulations may be used in the various examples described herein. This means that different algorithms can be used to determine triangulation. Depending on the choice of triangulation, different areas can be obtained; e.g. B. is in FIG. 5B shows how four points can be triangulated differently (solid vs. dashed lines).
  • An example of a triangulation is the Delaunay triangulation.
  • the Delaunay triangulation can be carried out using the Bowyer-Watson algorithm.
  • An example of Delaunay triangulation is shown in FIG. 5C shown.
  • the Delaunay triangulation is formed with the so-called circumference condition. The following applies: The circumference of a triangle of the network must not contain any other points from the specified point set. In this way, mathematically speaking, “the smallest interior angle across all triangles is maximized”. This means that the smallest angle in the triangles becomes as large as it can be in this triangular network. However, no statement is made about the other angles fen.
  • Another example of a triangulation is the so-called min-max triangulation.
  • a classifier can be blocked as a result. Accordingly, if there are several possible expenses, there are two options.
  • the classifier can be set to favor either the safest or the most useful output. In the second case, you would of course have to define “usefulness” in terms of prioritized expenditure.
  • the triangle in the middle representation allows the safe conclusion that the output is "blue”.
  • the ML algorithm can then output the output "blue” because this output is done through a secure interpolation since all edge lengths are smaller than a. This variant increases the availability of the system without compromising security.
  • a general triangulation without additional conditions can lead to ambiguity.
  • the Delaunay triangulation solves the ambiguity with the circumference condition: There must not be any other points in the circumference of a triangle. Although this reduces the occurrence of very "acute" triangles, it does not necessarily ensure that the edge length is as small as possible.
  • additional training data pairs can be collected. For example, if problems arise when setting up the triangulation (e.g. because examples are not in a suitable position relative to one another), then further neighboring points are added to the set under consideration until the input vectors of this set of examples form a space with the same dimension as that Spanning input space. The positions of the input vectors then define the boundary of a hypervolume for which an output and an assessment of the security of the output can be determined (see TAB. 1).
  • D+ l input vectors of the training data set are all less than the critical threshold a apart, then these examples define B for the hypervolume H, which of is enclosed by the hypersurfaces connecting them, a hypervolume for which a reliable statement about the internal system state is possible (see TAB. 1).
  • the predicted hidden system state may only assume values that can also be assumed by the examples B in the output that limit the hypervolume; or when estimating the hidden system state, the output value can only take values that are no more than o d away from such examples B.
  • the approximate function is continuous in this hypervolume H, and in special embodiments it is even Lipschit continuous. If all “D+l” input vectors belong to the same class K (i.e. have the same ground truth K), then, in accordance with the above statements, all other input vectors that lie within the hypervolume can be safely assigned to this class K.
  • the evaluation metric carries out the partitioning of the areas based on their edge length.
  • the evaluation metric could evaluate the variety of areas based on a local variation of the ground truths. This means that, for example, it can be checked whether and, if so, how much the basic truths change within or at the edge of the respective area. For example, it could be checked whether there is a double change in an output class for a classifier as a machine-learned algorithm. This is based on the knowledge that a greater variation in the ground truth in a certain area in the input vector space of the input vector can be indicative of a corresponding increased uncertainty in the prediction of the machine-learned algorithm.
  • the evaluation metric used in Box 3520 is parameterized. This means that there can be a parameter whose value influences the results of the evaluation.
  • the parameter value can then be selected depending on the area of application or situation-specific. For example, a predetermined threshold value for the side edges (the value a) could be selected based on at least one criterion.
  • the criterion could, for example, include a minimum distance between the different input vectors of the training data set that are associated with the different system states. This means that an analysis of the distances between the different input vectors in the training data set can be carried out. In particular, it can be checked what the minimum distance is for input vectors that produce different results, for example different classes, for the hidden system state. Then the predetermined threshold value could be chosen to be less than or equal to this minimum distance.
  • FIG. 5E is a two-dimensional representation of the input vector space (generally formulated, the input vector space could also have a higher dimensionality) and shows different regions 691-694 in each of which input vectors are arranged that belong to a specific class.
  • the input vectors located in the region 691 of the input vector space belong to a first class (e.g. "green"), while the input vectors located in a region 692 of the input vector space, belong to another, second class (for example "red”).
  • the minimum distance 699 between two positions in the input vector space that are associated with input vectors of different classes is also shown (in the one shown In the example of FIG.
  • this distance 699 is defined by two input vectors in the regions 691 and 693). For example, corresponding information could be provided by a histogram-like evaluation. In the histogram, the distance between all pairs of input vectors that result in different Classes belong to be plotted. The smallest distance between two input vectors, which are assigned to different classes, can then be determined from the histogram. Accordingly, a histogram can also be created in which the distance at which a double class change occurs. This is done for Every two examples determine whether there is an example that lies between these examples (that is, it is closer to the first two examples mentioned) and that has a different class to at least one of the first mentioned examples. This distance 699 can then be selected as a predetermined threshold value between the smallest distance between two examples that are assigned to different classes and the smallest distance with a double class change.
  • FIG. 5E is characterized by good separation of regions 691-694 in the input vector space. This means that the distance 699 and thus the threshold value is comparatively large. This makes it possible to make a reliable prediction of the hidden system state of the technical-physical system in comparatively large parts of the input vector space using the machine-learned algorithm.
  • the at least one criterion could be determined based on domain knowledge. For example, if the dimensionality of the input vector space is comparatively low, a minimum distance between different classes could be determined based on domain knowledge.
  • a minimum distance between different classes could be determined based on domain knowledge.
  • Camera-based route detection for rail vehicles could detect features in images that firstly show parallel rails (if necessary corrected by an optical transfer function of a camera), secondly rail sleepers arranged at a certain distance from one another and thirdly the presence of ballast of a defined size between the sleepers regarding .
  • the radius of curvature of the rails can be determined via extended parallel linear structures;
  • the frequency of the threshold sequence and the size of the ballast can be determined using a Garbor filter. If in this 3-D input space (radius of curvature of long slender linear parallel objects, frequency of the thresholds, size of the ballast) three examples differed less than the threshold value determined based on domain knowledge, then a route was recognized. It would then be conceivable that the permissible feature range for recognized rails/tracks is determined based on this domain knowledge and the threshold value is selected based on this.
  • the at least one criterion for determining the threshold value could, for example, comprise a design specification of a development process of the technical-physical system.
  • the at least one criterion could specify which safety level is to be achieved for the operation of the technical-physical system. If, for example, a certain safety level - for example a probability of a misclassification or an incorrect control action - is required as part of the development process for the technical-physical system, a more or less strict criterion for the parameterization of the evaluation metric can be used depending on this specification.
  • the areas determined in Box 3515 and optionally evaluated in Box 3520 can optionally be checked for plausibility. This means that it can be checked/validated whether the classification into “safe” and “unsafe”, for example, is accurate or incorrect.
  • the threshold value for the edge length (i.e. the parameter a) can be checked for plausibility on the basis of one or more further pairs of training data.
  • These one or more additional training data pairs can therefore go beyond the training data set and contain additional input data.
  • These additional pairs of training data can then be used to check whether the output of the machine-learned algorithm matches the corresponding ground truth. If this is not the case, the plausibility check may produce a negative result.
  • FIG. 51 This is also shown in FIG. 51 shown.
  • the circles represent input vectors of the training data set in a first class (e.g. “green”) and the triangles represent input vectors of the training data set in a second class (e.g. “red).
  • the areas identified as safe for the first classes are also included a dashed filling (bottom left to top right) and the areas identified as safe for the second class are shown with a different dashed filling (top left to bottom right), see TAB. 1: Security level I. Areas classified as unsafe (here TAB . 1: Security level II) - due to class change at the corner points and/or edge length too large - are shown without filling.
  • the edge region (TAB. 1: Security level III) is also shown; no safe one can be used for corresponding input vectors (diamonds). Prediction must be made because this would correspond to an extrapolation based on input vectors of the training data set.
  • the plausibility of the classification into the areas identified as safe is then checked using additional training data pairs, ie additional input vectors for which ground truths are known. These additional input vectors are identified with the crosses + circle. An error is detected for one of these additional input vectors (highlighted with arrow): The ground truth indicates the second class, while this input vector is located in an area that is classified as safe with respect to the first class.
  • the feedback loop could be executed via Box 3526.
  • the threshold for the side edges (the value a) can be reduced and the areas reclassified.
  • one or more additional positions in the input vector space can optionally be determined at which additional training data pairs should be positioned. In other words, this means that it can be determined where additional training data pairs are helpful in promoting a reliable prediction of the hidden system state by the machine-learned algorithm.
  • the training data set can therefore be expanded in a targeted manner.
  • the evaluation of the areas within the framework of a corresponding partitioning from Box 3520 can be used.
  • areas in the input vector space can be determined that are associated with a large uncertainty with respect to a corresponding evaluation metric. It would then be possible for further pairs of training data to be arranged in such a way that they lead to a reassessment of these areas that are subject to great uncertainty.
  • the one or more further positions can be chosen in the vector space so that after a redetermination of the large number of areas, taking into account the training data pairs and the further training data pairs, a total size of the first areas increases to the maximum. This could be determined, for example, as part of an optimization algorithm. There are different options for obtaining such additional training data. For example, a human-machine interface could be controlled to obtain an annotation of ground truths for the hidden system state for the further training data. This means that in a labeling process, those labeling candidates from the set of available input vectors that are determined to be useful based on the partitioning can be given higher priority. This means that a learning curve that describes the accuracy of the machine-learned algorithm as a function of the annotation iterations can be particularly steep. The number of annotations required can be comparatively small. A software simulation of the technical-physical system could also be suitably set in order to obtain the ground truth for the hidden system state for the further pairs of training data.
  • box 3510 and subsequent boxes can be performed again (shown by the feedback dashed arrow in FIG. 5A).
  • box 3535 it is then possible to store the trained machine-learned algorithm obtained by executing box 3510 as well as the context data 50 obtained from box 3515 and, if applicable, box 3520.
  • FIG. 5A explains aspects relating to the determination of context data indicating areas. Based on these areas, it can be determined whether a prediction from the machine-learned algorithm is reliable or unreliable. This effect of the areas is explained in more detail below using a practical example according to FIGS. 6-10 (also included here for illustration purposes two dimensions represented; whereby in practical examples there is a higher dimensionality of the corresponding input vector space 71).
  • FIG. 6 illustrates an example of positioning input vectors 511-513 and 521-523 in input vector space 71.
  • the true hidden system state can be divided into two classes, corresponding to areas 531, 532.
  • area 531 could correspond to a properly functioning motor for a track switch; while area 532 could correspond to a stalled engine.
  • the input vectors 511-513 and 521-523 could correspond, for example, based on measured values for a current flow through the motor as well as measured data from a vibration sensor.
  • the input vectors 511-513 and 521-523 are part of a training data set .
  • the training data set therefore comprises several training data pairs , each of which comprises a corresponding input vector 511-513 and 521-523 , as well as an associated output vector as ground truth , which indicates a first output class (e . g . "motor defective") for the input vectors 511-513 and a second output class ( e . g . "motor not defective") for the input vectors 521-523 .
  • FIG. 6 also shows another input vector 550.
  • This input vector 550 is not part of the training data set. This means that there is no ground truth for the input vector 550 .
  • Input vector 550 actually corresponds to the second output class, as do input vectors 521-523. However, it will be shown below that different machine-learned algorithms 89 are trained based on the input vectors 511-513 and 521-523 will be able to make an incorrect prediction for the input vector 550.
  • the input vector 550 is in the immediate vicinity of the input vector 513; which was trained during training as belonging to the first output class. So the nearest neighbor classifier would incorrectly predict the first class based on the input vector 550.
  • FIG. 8 shows how such a machine-learned algorithm 89 - trained based on the input vectors 511-513, 521-523 - predicts the class boundary 565. There is a discrepancy in the area of the input vector 550, resulting in an incorrect prediction.
  • FIG. 10A shows the areas 571-574, which result from an interpolation between the input vectors 511-513 and 521-524.
  • the areas are obtained by triangulation, whereby, as already described above, different triangulations can be used. Examples are a min-max triangulation or a Delaunay triangulation.
  • FIG. 10A shows the critical edge length 590. In the example shown, this critical edge length 590 is determined so that it corresponds to the smallest distance between two input vectors 511-513 and 521-524 of the training data set for which a class change is observed (that is between input vector 512 and input vector 523).
  • different distance metrics may be used in the various examples described herein.
  • the Euclidean distance can be used. But it could also be the so-called p-norm can be used.
  • the critical edge length 590 can be chosen so that no double class change for the output of the machine-learned algorithm can occur within the corresponding length in the input vector space. See . TAB . 1: Security level I.
  • FIG. 10A it can be seen that the areas 571, 572 and 574 have edge lengths that are not below the critical edge length 590. Accordingly, these areas 571, 572, 574 (see TAB. 1: Security level I) are rated as unsafe.
  • TAB. 1: Security level I For example, for area 574 in FIG. 10B shows, enlarged, how another class may appear along the line connecting input vectors 524 and 522 in region 574--1; So there is a double class change. An input vector that lies within these ranges 571, 573, 574 causes an uncertain prediction of the associated hidden system state using the machine-learned algorithm. An error indicator can then be output based on the e.g. B. a warning or a transfer of the controlled technical-physical system to a safe operating state can occur. A different situation exists for area 573 (see FIG. 10A). The area 573 only has edges that are shorter than the critical edge length 590. The area 573 can therefore be assessed as safe, see TAB. 1 Security level I).
  • FIG. IOC Another variant is shown in FIG. IOC shown.
  • the input vector space 71 is shown there and positions of input vectors 662 for a first class and of input vectors 663 for a second class, as well as the class boundary 660.
  • Inference for an input vector 661 could give an incorrect result (first class). This could - if the threshold value for the edge length of the areas that extend between the positions of the input vectors 662 is chosen to be too large (see TAB. 1: Example I) - be incorrectly classified as safe.
  • an area 670 - see FIG. 10D - which surrounds the position of the input vector 663 marked with a cross and delimits a distance b to this position.
  • the inference for all input vectors (including input vector 661) within this area 670 can then be recognized as unsafe.
  • the interpolated areas 671 could also be recognized as unsafe by the evaluation metric because the distance to the position of the uncertain input vector 663 is smaller than b, ie smaller than a distance threshold 679.
  • the area For example, 670 could be determined based on a course of the class boundary 660. For example, where no ground truth is available in training near a known class boundary, a corresponding area 670 could be arranged.
  • the context data 50 indicates the areas. This can be exploited in inference (see FIG. 4: Box 3002). This is explained below.
  • FIG. 11 is a flow diagram of an exemplary method.
  • FIG. 11 may, for example, implement box 3002.
  • FIG. 11 relates to inference using a pre-trained machine-learned algorithm based on an input vector for which no ground truth is available.
  • the method of FIG. 11 could be performed by processor 92 after it loads and executes appropriate program code from memory 93.
  • an input vector is obtained in box 3005.
  • This can encode status data of the technical-physical system.
  • the input vector could be determined based on corresponding state data (see FIG. 1: state data 81) received from the technical-physical system.
  • the input vector can be loaded from memory.
  • the machine-learned algorithm is loaded into Box 3010.
  • a corresponding program code can be loaded from memory.
  • the machine-learned algorithm has already been trained at this point, meaning parameter values have been set.
  • techniques such as those described above in connection with box 3001, for example in FIG. 5A and also in connection with FIG. 4 described can be used.
  • context data is loaded into Box 3015.
  • the contextual data is associated with the machine-learned algorithm.
  • the context data indicates multiple regions in the vector space of the input vector. This was discussed above in connection with FIG. 10A discussed.
  • the areas can be determined as part of the parameterization of the machine-learned algorithm, as described above in connection with FIG. 5A: Box 3515 described.
  • the context data can index regions in the input vector space.
  • the context data could, for example, specify the areas directly, i.e. define corresponding boundaries for each area. It would also be conceivable that the context data indicates the key points; and then the areas are determined from this using a Delaunay triangulation or another triangulation or another scheme.
  • the context data can indicate the boundaries between the areas.
  • the context data can also be optimized.
  • the context data can specify the areas in compressed form. For example, areas that have the same properties can be combined in order to determine the hidden system state as efficiently as possible. Such a combination of areas or other optimization/compression of the context data can be shown in FIG. 5A: box 3515.
  • the context data can also display additional information beyond the scopes.
  • the areas can be divided into first areas and second areas.
  • the first areas (see FIG. 10A: areas 573) may be associated with a low uncertainty of estimating the hidden system state using the machine-learned algorithm; while the second areas with a comparatively high uncertainty in estimating the borrowed system state are associated (see FIG. 10A: areas 571, 572).
  • the context data it is possible for the context data to already include an indicator that indicates a corresponding partitioning of the areas into the first and second areas.
  • a corresponding partitioning of the areas can already be carried out in connection with the parameterization of the machine-learned algorithm and then this previous partitioning can be used as part of the inference (corresponding aspects were discussed, for example, in connection with box 3520 in FIG 5A explains).
  • the corresponding partitioning is only determined as part of the inference, namely in box 3020, for example.
  • each of the areas indexed by the context data can be evaluated based on a corresponding evaluation metric. Corresponding evaluation metrics have already been described above in connection with Box 3520.
  • evaluation metrics relate, for example, to an evaluation of the areas based on an edge length of edges of the areas, whereby this edge length can be compared with a size threshold value.
  • the size threshold was discussed, for example, in connection with FIG. 10A: critical length 590 discussed.
  • the size threshold can be viewed through the context data.
  • Another exemplary component of the evaluation metric could, for example, concern the classification of an area as safe or unsafe based on a distance to positions in the input vector space that are recognized as unsafe. Such positions in the input vector space that are recognized as uncertain could, as above, described above, based on a course of class boundaries.
  • the evaluation metric includes several components, these components can be arranged hierarchically. This can mean that the partitioning treats a first criterion with a higher hierarchy than a second criterion (i.e. the first criterion has a higher hierarchy level than the second criterion). For example, such a criterion could be checked first; and if it is then determined that a certain area is to be classified as unsafe, for example, it might be unnecessary to assess the area in terms of other criteria of the evaluation metric. For example, it may be particularly desirable to primarily check the distance to positions in the input vector space that are recognized as unsafe with regard to a threshold value (the parameter b; distance 679 in FIG.
  • a threshold value the parameter b; distance 679 in FIG.
  • Performing partitioning for inference in box 3020 may have certain advantages over performing partitioning during parameterization of the machine-learned algorithm (see FIG. 5A: box 3520).
  • the evaluation metric is adjusted during inference based on current circumstances of the physical-technical system. This means that, depending on the operating situation of the physical-technical system, a different partitioning can be determined for the several areas, so that depending on the operating situation of the physical-technical system, certain areas can be classified as safe or unsafe. In this way, an adapted security level for the control can be achieved based on the machine-learned algorithm, tailored to the current operating situation of the physical-technical system.
  • the evaluation metric is parameterized based on an operating mode of the technical-physical system.
  • the operating mode can be associated with the status data. This means that the status data (see FIG. 1: status data 81) are currently provided by the physical-technical system and their values depend on which operating mode is activated.
  • the evaluation metric could thus be parameterized based on an operational safety level of the function to be provided by the technical-physical system, which is specific for the operating mode. This is based on the knowledge that that certain technical-physical systems can be operated in different operating modes, which require different operational safety levels for the automatic control.
  • An example would be semi-autonomous versus fully autonomous driving. With semi-autonomous controls (e.g. "Level 2" - partially automated driving), the driver retains access to the vehicle, so that the operational safety level for the control compared to fully autonomous controls (e.g. "Level 5" - autonomous driving) can be reduced. Accordingly, it would be conceivable that a different evaluation metric would be used to partition the areas for the reliability of the prediction, depending on whether semi-autonomous or fully autonomous driving is implemented based on the prediction of the machine-learned algorithm.
  • the areas are divided based on the edge length in comparison to a predetermined size threshold value (see FIG. 10A: critical length 590), it would be conceivable that this edge length would be chosen to be shorter or longer depending on the operating mode of the technical-physical system .
  • a larger size threshold then results in a larger number of areas for which the machine-learned algorithm is assumed to make a confident prediction.
  • the context data indicates further information beyond the areas; An example in particular was described above in which it is possible for the context data to index the partitioning of the areas. In addition to such further information provided by the context data, other information could also be provided by the context data. In some scenarios, it would be conceivable that the context data for at least some areas of the multitude of areas index one or more permitted results for the hidden system state. This means that - in addition to indicating the different areas in the input vector space - it can also be specified which permissible output values the output vector may assume, provided the input vector is positioned in a corresponding area. For example, in FIG.
  • FIG. 12 shows a scenario in which the context data 50 describes several areas 771-776 (the areas form a triangular network and are delimited by corresponding triangular areas - shown by the lines in FIG. 12 due to the two-dimensional representation) and each for j each of the areas 771-776 specify an indicator 751 which describes the partitioning of the areas into those with a low uncertainty and others with a high certainty of estimating the hidden system state using the machine-learned algorithm. There is also another indicator 752 that indexes one or more permitted outcomes for the estimated hidden system state. The same was also shown in FIG. 5A described in connection with Box 3516.
  • box 3025 in FIG. 11 it is then possible to determine the relative position of the input vector with respect to the areas. For example, it could be checked whether the input vector is in a certain range or outside all ranges. For example, if the context data indexes the areas through the interfaces between the areas, a corresponding check could form the Include subspaces in the input vector space based on the corresponding interfaces.
  • the error indicator in box 3035 could be output if and only if the input vector is not located in any area (in such a case it may be unnecessary to partition the areas). It would also be conceivable that the error indicator is output even if the input vector lies in a range that is associated with a large uncertainty in estimating the hidden system state, for example as indicated by the corresponding indicator 751 in the context data 750; or as determined by the partitioning in Box 3020. If the error indicator is output in box 3035, this can be taken into account in box 3050 to control the technical-physical system. For example, the technical and physical systems could be transferred to a safe operating state. A warning could be issued to an operator of the technical-physical system. An error log file could be supplemented accordingly.
  • an output vector is then obtained as the output of the machine-learned algorithm, which is indicative of the hidden system state of the technical-physical system.
  • This edition can then be used to control the technical and physical system, Box 3050.
  • box 3045 it would also be conceivable in box 3045 to display the hidden system state, which is received as output from the machine-learned algorithm in box 3040, based on permitted results for the system state indexed by the context data (see FIG. 12: indicator 752). to adapt. For example, averaging could occur, for example when a regression task is performed by the machine-learned algorithm.
  • information regarding a probability distribution of the predicted value can also be output. This probability distribution can depend on the distance to areas with indicators of other values to the position of the input vector in the input space.
  • FIG. 13 basically corresponds to FIG. 12.
  • the context data 50 is structured in such a way that a corresponding indicator 753 is provided in connection with a corner of the areas 771-776, which provides a respective permitted result for the estimated system state or the output of the machine-learned algorithm is indexed. It would then be possible to determine a distance between the position of the input vector in relation to the different corners of the areas 771-776 and to select the respective permitted result based on these distances (or - for a regression task - the probability distribution).
  • the corners of the areas 771-776 correspond to the positions of corresponding input vectors of the underlying training data set; the permitted outcomes could be chosen here based on the corresponding ground truths. For example, the nearest corner could be taken into account and then based on what is associated with this corner associated indicator 753 determines the permitted result for the output of the machine-learned algorithm (for the input vector 85 shown in FIG. 13, this would be “blue”).
  • FIGS. 12 and 13 are only examples. Other techniques would also be conceivable for determining the permitted results for the system state. For example, it would be conceivable that the predicted hidden system state may only assume values that are no further than o d from the permitted results indicated by the context data 50. This can be particularly helpful for regression tasks.
  • Box 3040 and Box 3045 therefore correspond to a two-stage approach.
  • the candidate results are determined using the machine-learned algorithm; which can then be corrected in box 3045 if necessary, based on the context data.
  • control of the technical-physical system can then take place based on the error indicator (from Box 3035 or, if applicable, from Box 3045) and/or the estimated hidden system state from Box 3040. For example, corresponding control data could be sent to the technical-physical system.
  • the techniques described above involve generating contextual data in the context of training a machine-learned algorithm.
  • the contextual data is indicative of regions in the input vector space that are associated with confident or uncertain predictions from the machine-learned algorithm.
  • the areas can be generated, for example, as a Delaunay triangulation between positions of input vectors of a training data set.
  • the areas therefore form hyperspace volumes.
  • Each hyperspace volume can be assigned as a marker the set of output classes of the examples that form the corner points of the hyperspace volume. If the distance between all points in the input space is smaller than "a", the "safe" feature is also set for the marking.
  • the attribute safe in the marking means that only the outputs that are present in the examples that limit the hyperspace volume can occur. Other outputs cannot occur in this case because of the assumption in “a” that no double class change occurs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Es wird ein Verfahren zum Schätzen eines verborgenen Systemzustands eines technisch-physikalischen Systems mittels eines maschinengelernten Algorithmus offenbart. Dabei wird in Abhängigkeit von mindestens einem vorbestimmten Kriterium eine Schätzung des maschinengelernten Algorithmus für den verborgenen Systemzustand für einen Eingabevektor wahlweise erlaubt oder blockiert. Das mindestens eine vorbestimmte Kriterium berücksichtigt eine Position (85) des Eingabevektors im entsprechenden Eingabevektorraum (71).

Description

S ICHERE STEUERUNG VON TECHNISCH-PHYS IKALISCHEN SYSTEMEN
TECHNISCHES GEBIET
Verschiedene Beispiele betref fen Techniken, um eine Steuerung von technisch-physikalischen Systemen zu ermöglichen . Verschiedene Beispiele betref fen Techniken, um einen verborgenen Systemzustand von solchen technisch-physikalischen Systemen zu schätzen und gegebenenfalls eine assoziierte Unsicherheit zu bestimmen .
HINTERGRUND
In verschiedenen Anwendungsgebieten werden maschinengelernte Algorithmen eingesetzt , da entsprechende , vom maschinengelernten Algorithmus zu lösende Aufgabenstellungen durch eine Beschreibung von Anforderungen definiert werden können . Beispielsweise können maschinengelernte Algorithmen zur Steuerung von technisch-physikalischen Systemen ( d . h . technischen Anlagen) eingesetzt werden . Der maschinengelernte Algorithmus kann einen verborgenen Systemzustand des technisch-physikalischen Systems Vorhersagen ( Inferenz ) .
Beispielsweise können maschinengelernte Algorithmen dazu verwendet werden, um ein Fahrzeug, etwa ein Kraftfahrzeug oder einen Zug, zu steuern . Maschinengelernte Algorithmen können dazu verwendet werden, um Wartungsintervalle für technischphysikalische Systeme wie zum Beispiel Fahrzeuge oder Infrastruktur (beispielsweise Schienen, Weichen, Personenbeförderungsmittel wie Rolltreppen oder Laufbänder, Fertigungsanlagen, usw . ) zu überwachen und gegebenenfalls anzupassen . In solchen S zenarien ist es oftmals möglich, etwa mittels Domänenwissen eines Experten, bestimmte Vorgänge in historischen Daten zu identi fi zieren, die eine zugeordnete Steuer-Aktion für das technisch-physikalische System erfordern . Dies entspricht der oben genannten Beschreibung von Anforderungen an die Steueraufgabe des maschinengelernten Algorithmus .
Der maschinengelernte Algorithmus bestimmt also bei Vorliegen von Eingabemerkmalen ( die typischerweise in Form eines Eingabevektors an den maschinengelernten Algorithmus übergeben werden) ein oder mehrere Ausgabemerkmale ( typischerweise in Form eines Ausgabevektors ) . Dafür wird der maschinengelernte Algorithmus basierend auf ein oder mehreren Trainingsdatensätzen trainiert . Ein Trainingsdatensatz umfasst j eweils mehrere Trainingsdatenpaare eines Eingabevektors und assoziierte Grundwahrheiten . Der Eingabevektor umfasst mehrere Einträge , die j eweils Merkmale von Zustandsdaten des technischphysikalischen Systems kodieren . Die Grundwahrheiten beschreiben eine Soll-Position im Vektorraum des Ausgabevektors des maschinengelernten Algorithmus . Durch das Training des maschinengelernten Algorithmus wird erreicht , dass der Ausgabevektor, der vom maschinengelernten Algorithmus erhalten wird, möglichst gut mit der Soll-Position im Vektorraum übereinstimmt .
Durch den Erfolg von maschinengelernten Algorithmen werden diese vermehrt auch in Anwendungsgebieten eingesetzt , bei denen das Leben von Personen, ihre Gesundheit oder die Umwelt durch eine Fehl funktion des maschinengelernten Algorithmus gefährdet werden können . Beispiele betref fen z . B . autonome Fahrzeuge , die am Verkehr teilnehmen .
Deshalb ist es notwendig, ein möglichst gutes Training des maschinengelernten Algorithmus durchzuführen, so dass Fehl funktionen vermieden werden . Die verfügbaren Trainingsdatensätze sind aber im Umfang limitiert . Das bedeutet , dass nicht für alle Positionen im Vektorraum des Eingabevektors (Eingabevektorraum) eine zugeordnete Grundwahrheit verfügbar ist . Deshalb erfolgt beim Training eines maschinengelernten Algorithmus eine Verallgemeinerung . Das bedeutet , dass bei der Inferenz ( d . h . ohne verfügbare Grundwahrheit ) auch für bisher unbekannte Beispiele eine Ausgabe des maschinengelernten Algorithmus bereitgestellt wird .
Bei vorbekannten Systemen besteht die Gefahr, dass bei der Inferenz das Leben oder die Gesundheit von Personen gefährdet wird . Dies passiert , wenn falsche Ausgaben erzeugt werden, das heißt zum Beispiel ein verborgener Systemzustand eines technisch-physikalischen Systems falsch vorhergesagt wird .
ZUSAMMENFASSUNG
Deshalb besteht ein Bedarf für verbesserte Techniken zur Schätzung von verborgenen Systemzuständen eines technischphysikalischen Systems mittels maschinengelernten Algorithmen . Insbesondere besteht ein Bedarf für Techniken, die die vorgenannten Nachteile und Einschränkungen lindern .
Diese Aufgabe wird gelöst von den Merkmalen der unabhängigen Patentansprüche . Die abhängigen Patentansprüche definieren Aus führungs formen .
Gemäß verschiedenen Beispielen kann ein maschinengelernter Algorithmus verwendet werden, der basierend auf Eingabevektoren Ausgabevektoren bestimmt . Die Eingabevektoren können j eweils Zustandsdaten eines technisch-physikalischen Systems codieren . Die Ausgabevektoren können einen j eweiligen verborgenen Systemzustand des technisch-physikalischen Systems Vorhersagen . Der maschinengelernte Algorithmus kann diskrete Systemzustände (Klassen) Vorhersagen, also einen Klassi fikator implementieren .
In manchen Beispielen könnte auch eine Regression vom maschinengelernten Algorithmus durchgeführt werden .
Die Eingabevektoren können zwei oder mehr Dimensionen haben . Die Ausgabevektoren können zwei oder mehr Dimensionen haben . Die Position eines Eingabevektors im entsprechenden Vektorraum (Eingabevektorraum) definiert die Position des zugehörigen Ausgangsvektors im entsprechenden Vektorraum (Ausgabevektorraum) .
Gemäß verschiedenen Beispielen werden Kontextdaten für den maschinengelernten Algorithmus bei der Inferenz verwendet . Die Kontextdaten stellen ergänzende Information zum maschinengelernten Algorithmus bereit . Die Kontextdaten werden im Zusammenhang mit dem Training des maschinengelernten Algorithmus bestimmt . Die Kontextdaten können dabei hel fen, eine Zuverlässigkeit einer Schätzung des verborgenen Systemzustand durch den maschinengelernten Algorithmus zu bestimmen .
In den verschiedenen hierin beschriebenen Beispielen kann der Informationsgehalt der Kontextdaten variieren .
Die Kontextdaten sind beispielsweise indikativ für Bereiche im Eingabevektorraum des maschinengelernten Algorithmus , definieren also Hypervolumen des Eingabevektorraums . Es kann überprüft werden, wie der Eingabevektor in Bezug auf diese Bereiche positioniert ist . Daraus kann abgeleitet werden, ob eine zuverlässige oder unzuverlässige Vorhersage des maschinengelernten Algorithmus für diesen Eingabevektor vorliegt .
Die Bereiche können dabei z . B . als Delaunay -Triangulation des
Eingaberaumes bestimmt werden, sodass Eingabevektoren von Trainingsdatenpaaren eines Trainingsdatensatzes Ecken der j eweiligen Flächen ( genaugenommen Hyperflächen beliebiger Dimen- sionalität ; wobei aber der Einfachheit halber nur auf Flächen Bezug genommen wird) bilden . Dadurch interpolieren die Bereiche also zwischen den Eingabevektoren, für die im Rahmen der Trainingsdatenpaare auch Grundwahrheiten verfügbar sind .
Die Kontextdaten können auch eine Partitionierung der Bereiche in solche , die mit einer geringen Unsicherheit des Schätzens des verborgenen Systemzustand assoziiert sind, und solche , die mit einer großen Unsicherheit des Schätzens des verborgenen Systemzustand assoziiert sind, beinhalten . Alternativ könnte eine solche Partitionierung noch zur Inferenz erzeugt werden .
Alternativ oder zusätzlich wäre es auch denkbar, dass die Kontextdaten für zumindest einige Bereiche ein oder mehrere erlaubte Ergebnisse für den verborgenen Systemzustand indi ziert . Das bedeutet also in anderen Worten, dass die Bereiche anzeigen können, welche Ausgabevektoren des maschinengelernten Algorithmus zulässig sind .
Solche Kontextdaten können also bei der Inferenz - wenn keine Grundwahrheit verfügbar ist - dazu verwendet werden, um die Ausgabe des maschinengelernten Algorithmus auf Plausibilität zu überprüfen .
Die Kontextdaten können im Zusammenhang mit dem Training des maschinengelernten Algorithmus bestimmt werden . Beispielsweise wäre es denkbar, dass die Kontextdaten basierend auf Eingabevektoren eines Trainingsdatensatzes bestimmt werden . Beispielsweise können die oben genannten Bereiche , die durch die Kontextdaten indi ziert werden, durch Interpolation zwischen Positionen der Eingabevektoren des Trainingsdatensatzes bestimmt werden . Die Kontextdaten können aber nicht nur im Zusammenhang mit der Inferenz verwendet werden . Beispielsweise wäre es auch möglich, anhand der Kontextdaten zu bestimmen, für welche Positionen im Eingabevektorraum weitere Trainingsdatenpaare - das heißt Kombinationen aus einem Eingabevektor und einer eine Grundwahrheit beschreibenden Ausgabevektor - benötigt werden .
Durch die Verwendung der Kontextdaten kann erreicht werden, dass das technisch-physikalische System auf eine besonders sichere Art und Weise gesteuert werden kann . Wird beispielsweise anhand der Steuerdaten erkannt , dass eine Ausgabe des maschinengelernten Algorithmus mit einer vergleichsweise hohen Unsicherheit behaftet ist , so können die zulässigen Steueraktionen eingeschränkt werden und/oder das technisch-physikalische System in einen sicheren Betriebsmodus überführt werden und/oder eine Warnmeldung ausgegeben werden . Außerdem kann das Training des maschinengelernten Algorithmus besonders zielgerichtet erfolgen, so dass insgesamt häufiger zuverlässige Schätzungen des verborgenen Systemzustand erhalten werden können .
Gemäß verschiedenen Beispielen werden Techniken of fenbart , die es ermöglichen, einen verborgenen Systemzustand eines technisch-physikalischen Systems zu schätzen . Für diese Schätzung wird ein maschinengelernter Algorithmus verwendet . Dabei wird die Schätzung des maschinengelernten Algorithmus für den verborgenen Systemzustand wahlweise erlaubt oder blockiert , j eweils für einen entsprechenden Eingabevektoren . Dies basiert auf mindestens einem vorbestimmten Kriterium . Das mindestens eine vorbestimmte Kriterium berücksichtigt eine Position des Eingabevektors im entsprechenden Eingabevektorraum . Das bedeutet also , dass j e nach Position des Eingabevektors in Eingabevektorraum die Ausgabe des maschinengelernten Algorithmus unterbunden werden kann . Dadurch können unsichere Ausgaben bzw . unsichere Schätzungen für den verborgenen Systemzustand vermieden werden . Ein Computer-implementiertes Verfahren zum Schätzen eines verborgenen Systemzustand eines technisch-physikalischen Systems mittels eines maschinengelernten Algorithmus wird of fenbart . Das Verfahren umfasst das Erhalten eines Eingabevektors . Der Eingabevektor kodiert Zustandsdaten des technischphysikalischen Systems . Das Verfahren umfasst außerdem das Laden des maschinengelernten Algorithmus . Das Verfahren umfasst ferner das Laden von vorbestimmten Kontextdaten . Die vorbestimmten Kontextdaten sind mit dem maschinengelernten Algorithmus assoziiert . Die vorbestimmten Kontextdaten indi zieren eine Viel zahl von Bereichen im Vektorraum des Eingabevektors . Das Verfahren umfasst auch das Bestimmen einer relativen Position des Eingabevektors in Bezug auf die Viel zahl von Bereichen . Das Verfahren umfasst ferner das wahlweise Verarbeiten des Eingabevektors im maschinengelernten Algorithmus , um derart den verborgenen Systemzustand zu schätzen, oder das Ausgeben eines Fehlerindikators . Die Auswahl zwischen dem Verarbeiten und dem Ausgeben des Fehlerindikators basiert auf der relativen Position des Eingabevektors in Bezug auf die Viel zahl von Bereichen .
Eine Vorrichtung umfasst mindestens einem Prozessor und einen Speicher . Die mindestens eine Prozessor ist eingerichtet , um Programmcode aus dem Speicher zu laden und um den Programmcode aus zuführen . Der mindestens eine Prozessor ist eingerichtet , um basierend auf dem Programmcode ein Verfahren zum Schätzen eines verborgenen Systemzustand eines technisch-physikalischen Systems mittels eines maschinengelernten Algorithmus aus zuführen . Das Verfahren umfasst das Erhalten eines Eingabevektors . Der Eingabevektor kodiert Zustandsdaten des technischphysikalischen Systems . Das Verfahren umfasst außerdem das Laden des maschinengelernten Algorithmus . Das Verfahren umfasst ferner das Laden von vorbestimmten Kontextdaten . Die vorbestimmten Kontextdaten sind mit dem maschinengelernten Algo- rithmus assoziiert . Die vorbestimmten Kontextdaten indi zieren eine Viel zahl von Bereichen im Vektorraum des Eingabevektors . Das Verfahren umfasst auch das Bestimmen einer relativen Position des Eingabevektors in Bezug auf die Viel zahl von Bereichen . Das Verfahren umfasst ferner das wahlweise Verarbeiten des Eingabevektors im maschinengelernten Algorithmus , um derart den verborgenen Systemzustand zu schätzen, oder das Ausgeben eines Fehlerindikators . Die Auswahl zwischen dem Verarbeiten und dem Ausgeben des Fehlerindikators basiert auf der relativen Position des Eingabevektors in Bezug auf die Viel zahl von Bereichen .
Ein Computerprogramm oder ein Computerprogramm-Produkt oder ein computerlesbares Speichermedium umfasst Programmcode . Der Programmcode kann von mindestens einem Prozessor geladen und ausgeführt werden . Wenn der Prozessor den Programmcode ausführt , bewirkt dies , dass der Prozessor ein Verfahren zum Schätzen eines verborgenen Systemzustand eines technischphysikalischen Systems mittels eines maschinengelernten Algorithmus aus führt . Das Verfahren umfasst das Erhalten eines Eingabevektors . Der Eingabevektor kodiert Zustandsdaten des technisch-physikalischen Systems . Das Verfahren umfasst außerdem das Laden des maschinengelernten Algorithmus . Das Verfahren umfasst ferner das Laden von vorbestimmten Kontextdaten . Die vorbestimmten Kontextdaten sind mit dem maschinengelernten Algorithmus assoziiert . Die vorbestimmten Kontextdaten indizieren eine Viel zahl von Bereichen im Vektorraum des Eingabevektors . Das Verfahren umfasst auch das Bestimmen einer relativen Position des Eingabevektors in Bezug auf die Viel zahl von Bereichen . Das Verfahren umfasst ferner das wahlweise Verarbeiten des Eingabevektors im maschinengelernten Algorithmus , um derart den verborgenen Systemzustand zu schätzen, oder das Ausgeben eines Fehlerindikators . Die Auswahl zwischen dem Verarbeiten und dem Ausgeben des Fehlerindikators basiert auf der relativen Position des Eingabevektors in Bezug auf die Vielzahl von Bereichen .
Ein Computer-implementiertes Verfahren zum Parametrisieren eines maschinengelernten Algorithmus wird of fenbart . Mittels des maschinengelernten Algorithmus kann ein verborgener Systemzustand eines technisch-physikalischen Systems geschätzt werden . Das Verfahren umfasst das Erhalten eines Trainingsdatensatzes . Der Trainingsdatensatz umfasst mehrere Trainingsdatenpaare , die wiederum Eingabevektoren und Grundwahrheiten umfassen . Die Eingabevektoren kodieren Zustandsdaten des technischphysikalischen Systems . Die Grundwahrheiten betref fen den verborgenen Systemzustand des technisch-physikalischen Systems . Außerdem umfasst das Verfahren das Durchführen eines Trainings des maschinengelernten Algorithmus . Das Training wird basierend auf dem Trainingsdatensatz durchgeführt . Durch das Durchführen des Trainings werden Parameterwerte für den maschinengelernten Algorithmus erhalten . Das Verfahren umfasst ferner das Bestimmen einer Viel zahl von Bereichen basierend auf den Eingabevektoren . Die Viel zahl von Bereichen umfasst Bereiche , die im Vektorraum der Eingabevektoren definiert sind . Das Verfahren umfasst ferner das Erzeugen von Kontextdaten für den maschinengelernten Algorithmus , so dass die Kontextdaten indikativ für die Viel zahl von Bereichen sind . Außerdem umfasst das Verfahren das Speichern des maschinengelernten Algorithmus und das Speichern der Kontextdaten, die mit dem maschinengelernten Algorithmus assoziiert sind .
Eine Vorrichtung umfasst mindestens einem Prozessor und einen Speicher . Die mindestens eine Prozessor ist eingerichtet , um Programmcode aus dem Speicher zu laden und um den Programmcode aus zuführen . Der mindestens eine Prozessor ist eingerichtet , um basierend auf dem Programmcode ein Verfahren zum Parametrisieren eines maschinengelernten Algorithmus aus zuführen . Mittels des maschinengelernten Algorithmus kann ein verborgener Systemzustand eines technisch-physikalischen Systems geschätzt werden . Das Verfahren umfasst das Erhalten eines Trainingsdatensatzes . Der Trainingsdatensatz umfasst mehrere Trainingsdatenpaare , die wiederum Eingabevektoren und Grundwahrheiten umfassen . Die Eingabevektoren kodieren Zustandsdaten des technisch-physikalischen Systems . Die Grundwahrheiten betref fen den verborgenen Systemzustand des technisch-physikalischen Systems . Außerdem umfasst das Verfahren das Durchführen eines Trainings des maschinengelernten Algorithmus . Das Training wird basierend auf dem Trainingsdatensatz durchgeführt . Durch das Durchführen des Trainings werden Parameterwerte für den maschinengelernten Algorithmus erhalten . Das Verfahren umfasst ferner das Bestimmen einer Viel zahl von Bereichen basierend auf den Eingabevektoren . Die Viel zahl von Bereichen umfasst Bereiche , die im Vektorraum der Eingabevektoren definiert sind . Das Verfahren umfasst ferner das Erzeugen von Kontextdaten für den maschinengelernten Algorithmus , so dass die Kontextdaten indikativ für die Viel zahl von Bereichen sind . Außerdem umfasst das Verfahren das Speichern des maschinengelernten Algorithmus und das Speichern der Kontextdaten, die mit dem maschinengelernten Algorithmus assoziiert sind .
Ein Computerprogramm oder ein Computerprogramm-Produkt oder ein computerlesbares Speichermedium umfasst Programmcode . Der Programmcode kann von mindestens einem Prozessor geladen und ausgeführt werden . Wenn der Prozessor den Programmcode ausführt , bewirkt dies , dass der Prozessor ein Verfahren zum Parametrisieren eines maschinengelernten Algorithmus aus führt . Mittels des maschinengelernten Algorithmus kann ein verborgener Systemzustand eines technisch-physikalischen Systems geschätzt werden . Das Verfahren umfasst das Erhalten eines Trainingsdatensatzes . Der Trainingsdatensatz umfasst mehrere Trainingsdatenpaare , die wiederum Eingabevektoren und Grundwahrheiten umfassen . Die Eingabevektoren kodieren Zustandsdaten des technisch-physikalischen Systems . Die Grundwahrheiten betref fen den verborgenen Systemzustand des technischphysikalischen Systems . Außerdem umfasst das Verfahren das Durchführen eines Trainings des maschinengelernten Algorithmus . Das Training wird basierend auf dem Trainingsdatensatz durchgeführt . Durch das Durchführen des Trainings werden Parameterwerte für den maschinengelernten Algorithmus erhalten . Das Verfahren umfasst ferner das Bestimmen einer Viel zahl von Bereichen basierend auf den Eingabevektoren . Die Viel zahl von Bereichen umfasst Bereiche , die im Vektorraum der Eingabevektoren definiert sind . Das Verfahren umfasst ferner das Erzeugen von Kontextdaten für den maschinengelernten Algorithmus , so dass die Kontextdaten indikativ für die Viel zahl von Bereichen sind . Außerdem umfasst das Verfahren das Speichern des maschinengelernten Algorithmus und das Speichern der Kontextdaten, die mit dem maschinengelernten Algorithmus assoziiert sind .
Die oben dargelegten Merkmale und Merkmale , die nachfolgend beschrieben werden, können nicht nur in den entsprechenden expli zit dargelegten Kombinationen verwendet werden, sondern auch in weiteren Kombinationen oder isoliert , ohne den Schutzumfang der vorliegenden Erfindung zu verlassen .
KURZE BESCHREIBUNG DER FIGUREN
FIG . 1 illustriert schematisch ein System umfassend eine Datenverarbeitungsanlage und ein technisch-physikalische System gemäß verschiedenen Beispielen .
FIG . 2 illustriert schematisch eine Datenverarbeitungspipeline mit einem maschinengelernten Algorithmus und assoziierten Kontextdaten gemäß verschiedenen Beispielen . FIG . 3 illustriert Details in Bezug auf die Kontextdaten, die mehrere Bereiche in einem Vektorraum von Eingabevektoren für den maschinengelernten Algorithmus indi zieren .
FIG . 4 ist ein Flussdiagramm eines beispielhaften Verfahrens .
FIG . 5A ist ein Flussdiagramm eines beispielhaften Verfahrens .
FIG . 5B zeigt Aspekte im Zusammenhang mit einer Delaunay- Triangulierung .
FIG . 5C zeigt Aspekte im Zusammenhang mit einer Delaunay- Triangulierung .
FIG . 5D zeigt Aspekte im Zusammenhang mit einer Min-Max- Triangulierung .
FIG . 5E zeigt Aspekte in Bezug auf Regionen im Eingabevektorraum, die mit unterschiedlichen Klassen assoziiert sind .
FIG . 5F zeigt Aspekte in Bezug auf Regionen im Eingabevektorraum, die mit unterschiedlichen Klassen assoziiert sind .
FIG . 5G zeigt Aspekte in Bezug auf Regionen im Eingabevektorraum, die mit unterschiedlichen Klassen assoziiert sind .
FIG . 5H zeigt Aspekte in Bezug auf Regionen im Eingabevektorraum, die mit unterschiedlichen Klassen assoziiert sind .
FIG . 51 zeigt Aspekte im Zusammenhang mit der Plausibilisierung von Kontextdaten .
FIG . 6 illustriert Eingabevektoren eines Trainingsdatensatzes in einem entsprechenden Vektorraum .
FIG . 7 illustriert ein Klassi fikationsergebnis eines maschinengelernten Algorithmus , der basierend auf dem Trainingsdatensatz aus FIG . 6 trainiert wurde , gemäß verschiedenen Beispielen . FIG. 8 illustriert ein Klassifikationsergebnis eines maschinengelernten Algorithmus, der basierend auf dem Trainingsdatensatz aus FIG. 6 trainiert wurde, gemäß verschiedenen Beispielen .
FIG. 9 illustriert ein Klassifikationsergebnis eines maschinengelernten Algorithmus, der basierend auf dem Trainingsdatensatz aus FIG. 6 trainiert wurde, gemäß verschiedenen Beispielen .
FIG. 10A illustriert mehrere Bereiche, die im Vektorraum der Eingabevektoren aus FIG. 6 gemäß verschiedenen Beispielen bestimmt werden.
FIG. 10B illustriert Details zu einem der Bereiche aus FIG. 10A.
FIG. IOC illustriert einen Eingabevektorraum gemäß verschiedenen Beispielen.
FIG. 10D illustriert einen Bereich, der im Eingabevektorraum gemäß FIG. IOC bestimmt wird.
FIG. 10E illustriert einen weiteren Bereich, der im Eingabevektorraum gemäß FIG. IOC bestimmt wird.
FIG. 11 ist ein Flussdiagramm eines beispielhaften Verfahrens.
FIG. 12 illustriert Kontextdaten gemäß verschiedenen Beispielen .
FIG. 13 illustriert Kontextdaten gemäß verschiedenen Beispielen .
DETALLIERTE BESCHREIBUNG Die oben beschriebenen Eigenschaften, Merkmale und Vorteile dieser Erfindung sowie die Art und Weise , wie diese erreicht werden, werden klarer und deutlicher verständlich im Zusammenhang mit der folgenden Beschreibung der Aus führungsbeispiele , die im Zusammenhang mit den Zeichnungen näher erläutert werden .
Nachfolgend wird die vorliegende Erfindung anhand bevorzugter Aus führungs formen unter Bezugnahme auf die Zeichnungen näher erläutert . In den Figuren bezeichnen gleiche Bezugs zeichen gleiche oder ähnliche Elemente . Die Figuren sind schematische Repräsentationen verschiedener Aus führungs formen der Erfindung . In den Figuren dargestellte Elemente sind nicht notwendigerweise maßstabsgetreu dargestellt . Vielmehr sind die verschiedenen in den Figuren dargestellten Elemente derart wiedergegeben, dass ihre Funktion und genereller Zweck dem Fachmann verständlich werden . In den Figuren dargestellte Verbindungen und Kopplungen zwischen funktionellen Einheiten und Elementen können auch als indirekte Verbindung oder Kopplung implementiert werden . Eine Verbindung oder Kopplung kann drahtgebunden oder drahtlos implementiert sein . Funktionale Einheiten können als Hardware , Software oder eine Kombination aus Hardware und Software implementiert werden .
Nachfolgend werden Techniken beschrieben, um einen verborgenen Systemzustand eines technisch-physikalischen Systems mittels eines maschinengelernten (ML ) Algorithmus zu schätzen .
Zum Beispiel könnte die Schätzung des verborgenen Systemzustand dazu verwendet werden, um das technisch-physikalische System zu steuern . Das bedeutet , dass der Betrieb des technisch-physikalischen Systems basierend auf der Vorhersage des ML Algorithmus entsprechend angepasst werden kann .
Die hierin beschriebenen Techniken können in verschiedenen Anwendungsgebieten, das heißt für unterschiedliche technisch- physikalische Systeme , verwendet werden . Beispielsweise könnten die hierin beschriebenen Techniken verwendet werden, um Fahrzeuge , z . B . im schienengebunden Verkehr, öf fentlichen Straßenverkehr, in Industrieanlagen oder Gebäuden sowie Schi ffe , Flugzeuge oder Raumfahrzeuge zu steuern . Die hierin beschriebenen Techniken könnten verwendet werden, um Wartungsintervalle für Verkehrswege wie Schienenabschnitte oder Weichen anzupassen . Die hierin beschriebenen Techniken können verwendet werden, um Fehlerzustände von Schienenfahrzeugen oder Gleisinfrastruktur zu erkennen oder die Freigabe von bestimmen Schienen- / Streckenabschnitten für Verkehrsteilnehmer zu erlauben oder den Verkehr in Verkehrsnetzen zu steuern . Die hierin beschriebenen Techniken könnten dazu verwendet werden, um den Betrieb von Fertigungsstrecken oder Industrieanlagen, beispielsweise Kraftwerken oder Turbinen, zu überwachen, die Verteilung von Energie oder Stof fströmen zu steuern oder technische Komponenten ( z . B . Überspannungsschutz ) , Personen ( z . B . in der industriellen Fertigung) , Unternehmenswerte ( z . B . bei wirtschaftlichen Transaktionen) oder die Umwelt ( z . B . vor Bränden) zu schützen . Das sind nur einige Beispiele , und andere Anwendungsgebiete sind denkbar .
Die verschiedenen hierin beschriebenen Techniken verwenden einen maschinengelernten Algorithmus . Beispielsweise könnte der maschinengelernte Algorithmus ein Klassi fikator sein, das heißt kontinuierliche Werte eines Eingabevektors auf diskrete Klassen abbilden . Der maschinengelernte Algorithmus könnte auch eine Regression bereitstellen, das heißt kontinuierliche Werte eines Ausgabevektors aufweisen .
Dabei können in den verschiedenen hierin beschriebenen Beispielen unterschiedliche Typen von maschinengelernten Algorithmen eingesetzt werden . Beispielsweise könnte ein tiefes neuronales Netzwerk, zum Beispiel mit Faltungsschichten mit einem trainierten Faltungskern, eingesetzt werden . Es könnte auch eine „support vector machine" ( SVM) verwendet werden . Dabei wird basierend auf einem Trainingsdatensatz der Eingaberaum so in Klassen unterteilt , dass ein möglichst breiter Bereich zwischen den verschiedenen Klassen frei bleibt . Ein weiterer maschinengelernte Algorithmus , der verwendet werden kann, wäre der „nächste Nachbar" Klassi fikator . Dabei kann zum Beispiel ein Parameter, der die Anzahl der zu berücksichtigenden nächsten Nachbarn beschreibt , im Rahmen des Trainings des maschinengelernten Algorithmus angelernt werden . Ein weiterer Typ von maschinengelernten Algorithmen, der von den hierin offenbarten Techniken profitieren kann, ist das Multischicht- Perzeptron oder Radiales Basis funktionsnetzwerk (RBF- Netzwerk) .
Es werden Techniken beschrieben, die es ermöglichen, Zusatzinformationen im Zusammenhang mit der Vorhersage des maschinengelernten Algorithmus zu erhalten, sog . Kontextdaten .
Insbesondere ist es mittels der hierin beschriebenen Techniken möglich, mittels der Kontextdaten zu überprüfen, ob eine Vorhersage des maschinengelernten Algorithmus für einen bestimmten Eingabevektor zuverlässig ist oder unzuverlässig ist . Beispielsweise kann dann in Abhängigkeit der Kontextdaten wahlweise der Eingabevektor mit dem maschinengelernten Algorithmus verarbeitet werden ( sofern dessen Ausgabe zuverlässig ist ) , oder es könnte ein Fehlerindikator ausgegeben werden . Das technisch-physikalische System kann auch in Abhängigkeit von einer Ausgabe des Fehlerindikators gesteuert werden . Beispielsweise könnte ein sicherer Betriebsmodus aktiviert werden . Es könnte eine Benutzer-Überprüfung ausgelöst werden . Ein Warnsignal kann ausgegeben werden . Eine autonom agierende Funktionalität wie zum Beispiel eine wirtschaftliche Transaktion könnte abgebrochen werden . Derart kann die Gefährdung der Umwelt aufgrund einer unzuverlässigen Vorhersage des maschinengelernten Algorithmus vermieden werden . Anhand der Kontextdaten ist es auch möglich, abzuleiten, an welchen Positionen im Eingabevektorraum weitere Trainingsdatenpaare positioniert sein sollen . Auch solche Informationen kann basierend auf der Analyse , ob der maschinengelernte Algorithmus eine unzuverlässige Vorhersage für einen bestimmten Bereich im Eingabevektorraum bereitstellt , bestimmt werden . Dadurch werden die Teilbereiche des Eingaberaums vergrößert , in denen der maschinengelernte Algorithmus eine sichere Aussage tref fen kann und so eine höhere Verfügbarkeit des technischen Systems im „Normalbetrieb" möglich wird . Dabei bezeichnet der „Normalbetrieb" beispielsweise denj enigen Zustand des Systems , bei dem sich das System nicht in einem sicheren Zustand befindet , sondern eine sicherheitsrelevante Nutz funktion erfüllt ; dies könnte z . B . ein fahrender Zug sein, der nicht an einer sicheren Position an einem Bahnhof , an der Passagiere gefahrlos ein- und aussteigen können, anhält . Insbesondere können derart beim Training - etwa bei der Erhebung und Erfassung von Beispielen z . B . durch eine Messung in der realen Umgebung oder durch die Verwendung eines digitalen Zwillings ( z . B . einer Simulation) - gezielt Bereiche im Eingabevektorraum abgedeckt werden, bei denen sonst eine Generalisierung des maschinengelernten Algorithmus durch Extrapolation von im Eingabevektorraum entfernt angeordneten Trainingsdatenpaare stattfinden würde . Die Erfassung weiterer Beispiele erhöht somit die Sicherheit bei der Vorhersage durch den maschinengelernten Algorithmus und des technischen Systems .
Gemäß den verschiedenen hierin of fenbarten Techniken ist es also möglich, in Abhängigkeit von mindestens einem vorbestimmten Kriterium die Schätzung des maschinengelernten Algorithmus für den verborgenen Systemzustand entweder zu erlauben oder zu blockieren . Das Blockieren der Vorhersage kann der oben beschriebenen Ausgabe des Fehlerindikators entsprechen oder einer anderweitigen Unterdrückung der weiteren Verarbeitung der Ausgabe des maschinengelernten Algorithmus . Das Erlauben der Schätzung kann der Übergabe an nachfolgende Verarbeitungsschritte einer entsprechenden Datenverarbeitungs-Pipeline entsprechen .
Das mindestens eine Kriterium für das Blockieren oder Erlauben kann dabei die Position des entsprechenden Eingabevektors - der der Schätzung des maschinengelernten Algorithmus zugrunde liegt - berücksichtigen . Beispielsweise könnte die Vorhersage dann blockiert werden, wenn die Position des Eingabevektors einer Extrapolation des maschinengelernten Algorithmus ausgehend von Zustandsdaten des technisch-physikalischen Systems , die in einem Trainingsdatensatz für den maschinengelernten Algorithmus beinhaltet sind, entspricht . Diese Zustandsdaten können entsprechende Positionen ( z . B . nächstliegende ) im Eingabevektorraum markieren; das kann durch die Kontextdaten angezeigt werden . Dann kann der Eingabevektor eine Position im Eingabevektorraum aufweisen, die beabstandet ist von Bereichen, die sich zwischen den Zustandsdaten entsprechenden Positionen im Eingabevektorraum erstrecken . Andersherum kann eine Voraussetzung für das Erlauben der Schätzung des maschinengelernten Algorithmus sein, dass j edenfalls keine Extrapolation vorliegt , also eine Interpolation vorliegt . Dies bedeutet dann, dass der Eingabevektor eine Position im Eingabevektorraum aufweist , die in einem Bereich angeordnet ist , der sich zwischen den Positionen der Zustandsdaten aus dem Trainingsdatensatz erstreckt (wenn der Eingabevektorraum die Dimension D aufweist , dann wird durch j eweils D+l Eingabevektoren, welche einen Raum der Dimension D aufspannen ein Hypervolumen T des Eingaberaums definiert . Die Grenze des Hypervolumens T wird dann j eweils durch Hyperfläche begrenzt , die j eweils drei Nachbarn der Zustandsdaten verbinden . Liegt der Eingabevektor innerhalb eines Hypervolumens , der durch Beispiele der Trainingsmenge wie oben beschrieben begrenzt wird, dann wird von einer Interpolation auf der Basis der Trainingsdaten gesprochen ist das nicht der Fall , von einer Extrapolation . Zusätzlich zur Interpolation kann auch noch gefordert werden, dass der längste Abstand zwischen den zwei oder mehr Zustandsdaten des technisch-physikalischen Systems , zwischen denen interpoliert wird, nicht größer als ein vorbestimmter Schwellenwert ist . Das bedeutet , dass ein oberer Schwellenwert für die Seitenlänge der einen Bereich begrenzenden Hyperflächen gefordert werden kann . Ein weiteres beispielhaftes Kriterium, welches zu einer Blockierung der Vorhersage führen kann, wäre das Unterschreiten eines Mindestabstands zu unsicheren Positionen im Eingabevektorraum . Diese unsicheren Positionen könnten z . B . basierend auf einem Verlauf einer Klassengrenze zwischen unterschiedlichen vorhergesagten Klassen im Eingabevektorraum bestimmt werden . Die Positionen können also als unsicher gela- belt sein .
Voranstehend wurden verschiedene Kriterien für das Blockieren oder Erlauben der Vorhersage des maschinengelernten Algorithmus erläutert . Als allgemeine Regel wäre es denkbar, dass das Prüfen, ob ein oder mehrere solche Kriterien für das Blockieren oder Erlauben erfüllt sind, sequenziell erfolgt . Beispielsweise könnte eine vorgegebene Sequenz abgearbeitet werden, welche eine Reihenfolge der Prüfung für die unterschiedlichen Kriterien spezi fi ziert . Dann kann bereits eine Blockierung der Vorhersage des maschinengelernten Algorithmus erfolgen, wenn eine erste Prüfung ein negatives Ergebnis liefert ; die nachrangige zweite Prüfung hat dann nicht mehr zu erfolgen . Insbesondere wäre es zum Beispiel denkbar, dass zunächst geprüft wird, ob der Mindestabstand zu unsicheren Positionen im Eingabevektorraum unterschritten wird . Erst nachrangig könnte dann überprüft werden, ob die Position des Eingabevektors einer Extrapolation oder einer Interpolation entspricht , wie obenstehend beschrieben . Aus Obenstehendem ist ersichtlich, dass die Bereiche im Eingabevektorraum bestimmt werden können, die unterschiedliche Sicherheiten in Bezug auf die Vorhersage des maschinengelernten Algorithmus aufweisen . Das ist in TAB . 1 zusammengefasst .
TAB . 1 : Unterschiedliche Stufen für eine Sicherheit , die im Zusammenhang mit der Vorhersage eines maschinengelernten Algorithmus erhalten werden kann . Solche Stufen können im Zusammenhang mit bestimmten Bereichen im Eingabevektorraum, die durch Kontextdaten definiert sind, beschrieben werden . Die Bereiche könnten mittels einer Bewertungsmetrik in die unterschiedlichen Sicherheitsstufen eingeteilt werden . Dies kann entweder zur Inferenz oder beim Training erfolgen . Das Bestimmen der Bereiche bzw . das Anwenden der Bewertungsmetrik kann qualitätsgesichert erfolgen, wodurch ein gefährlicher Verlust oder eine Verfälschung der Information sicher vermieden werden kann .
FIG . 1 illustriert Aspekte in Bezug auf ein System 90 . Das System 90 umfasst eine Datenverarbeitungsanlage 91 und ein technisch-physikalische System 95 ( z . B . eine Industrieanlage , ein Luft- , Wasser, Raum oder Boden-Fahrzeug, ein Kraftwerk, ein Personenbeförderungsmittel wie einen Auf zug oder eine Rolltreppe , eine Fertigungsmaschine , eine Fabrik, eine Fertigungsstraße , eine Anlage zur Verteilung von Energie oder Stof fströmen oder ein System zur Steuerung von Verkehr, um nur einige Beispiele zu geben) .
Die Datenverarbeitungsanlage 91 weist einem Prozessor 92 auf , sowie einen nicht flüchtigen Speicher 93 . Außerdem umfasst die Datenverarbeitungsanlage 91 eine Kommunikationsschnittstelle 94 . Der Prozessor 92 kann mittels der Kommunikationsschnittstelle 94 mit dem technisch-physikalischen System kommuni zieren . Beispielsweise wäre es möglich, dass über die Kommunikationsschnittstelle 94 Zustandsdaten 81 des technischphysikalischen Systems 95 empfangen werden . Die Zustandsdaten
81 könnten zum Beispiel Messwerte eines Sensors sein, der bestimmte Betriebsparameter des technisch-physikalischen Systems 95 überwacht . Die Zustandsdaten 81 könnten auch Betriebswerte des technisch-physikalischen Systems 95 sein, beispielsweise bestimmte Steuervorgaben für Aktuatoren des technischphysikalischen Systems 95 . Es ist auch möglich, dass der Prozessor 92 über die Kommunikationsschnittstelle 94 Steuerdaten
82 an das technisch-physikalische System 95 sendet . Mittels der Steuerdaten 82 kann der Betrieb des technischphysikalischen Systems eingestellt werden .
Während in FIG . 1 nur ein Prozessor 92 gezeigt ist , kann die Datenverarbeitungsanlage 91 allgemein mehrere Prozessoren aufweisen .
Zum Verarbeiten der Zustandsdaten 81 kann der Prozessor 92 Programmcode aus dem Speicher 93 laden und aus führen . Der Programmcode kann einen maschinengelernten Algorithmus definieren, der eingerichtet ist , um Eingabevektoren, welche die Zu- Standsdaten 81 kodieren, zu verarbeiten . Der maschinengelernte Algorithmus kann dann einen Ausgabevektor bereitstellen, der einen verborgenen Systemzustand des technisch-physikalischen Systems schätzt . Eine entsprechende Datenverarbeitungspipeline ist auch in FIG . 2 dargestellt .
FIG . 2 illustriert Aspekte in Bezug auf einem maschinengelernten Algorithmus 89 . Der maschinengelernte Algorithmus 89 verarbeitet einen Eingabevektor 85 , der Zustandsdaten 81 des technisch-physikalischen Systems 95 kodiert . Der maschinengelernte Algorithmus 89 stellt dann einen Ausgabevektors 86 bereit , der den verborgenen Systemzustand des technischphysikalischen Systems 95 vorhersagt . Das entspricht einer Inferenz .
Mittels verschiedener hierin beschriebener Techniken ist es möglich, zu überprüfen, ob die Vorhersage des verborgenen Systemzustandes durch den maschinengelernten Algorithmus 89 zuverlässig ist . Insbesondere kann a-priori , das heißt vor bzw . unabhängig vom Aus führen des maschinengelernten Algorithmus , überprüft werden, ob diese Vorhersage zuverlässig ist .
Die Überprüfung kann basierend auf der Position des Eingabevektors 85 im Eingabevektorraum und unter Verwendung von entsprechenden Kontextdaten 50 erfolgen . Die Kontextdaten 50 sind mit den maschinengelernten Algorithmus 89 assoziiert , von diesem aber verschieden . Unterschiedliche maschinengelernte Algorithmen 89 weisen unterschiedliche Kontextdaten 50 auf . Die Kontextdaten 50 können zum Beispiel im Zusammenhang mit dem Training des maschinengelernten Algorithmus 89 bestimmt werden, was später im Detail erläutert werden wird .
Nachfolgend sind im Zusammenhang mit FIG . 3 Aspekte im Zusammenhang mit der Überprüfung der Position des Eingabevektors 85 im Eingabevektorraum unter Verwendung der Kontextdaten 50 dargestellt . FIG . 3 illustriert Aspekte in Bezug auf die Position des Eingabevektors 85 im entsprechenden Eingabevektorraum 71 ( zur I llustration ist der Eingabevektorraum 71 zweidimensional dargestellt , kann aber höherdimensional sein; der Eingabevektorraum ist also genaugenommen ein Hyperraum) .
In FIG . 3 sind außerdem mehrere Bereiche 72 im Eingabevektorraum 71 dargestellt . Die Bereiche 72 werden durch Hyperflächen ( oder im dargestellten zweidimensionalen Fall Strecken) voneinander abgegrenzt . Der Eingabevektor 85 weist eine bestimmte Position in Bezug auf diese Bereiche 72 auf ( im Beispiel der FIG . 3 ist der Eingabevektor 85 in einem der Bereiche 72 angeordnet ) .
Die Bereiche können durch Kontextdaten 50 , die dem maschinengelernten Algorithmus 89 zugeordnet sind, indi ziert werden . Beispielsweise könnten die Kontextdaten 50 die Flächen zwischen den Bereichen 72 angeben .
Die Bereiche können mit unterschiedlichen Sicherheitsstufen gem . TAB . 1 assoziiert sein .
In den verschiedenen hierin beschriebenen Beispielen ist es möglich, eine solche relative Position des Eingabevektors in Bezug auf mehrere Bereiche 72 zu bestimmen und dann basierend auf dieser relativen Position wahlweise den Eingabevektor maschinengelernten Algorithmus 89 zu verarbeiten und damit den verborgenen Systemzustand zu schätzen (beispielsweise wenn es sich um Sicherheitsstufe I oder I I handelt ) , oder aber einen Fehlerindikator aus zugeben (beispielsweise wenn es sich um Si- cherheitsstuf e I I I handelt , vgl . TAB . 1 ) . Dabei können die Bereiche 72 durch die Kontextdaten 50 des maschinengelernten Algorithmus 89 indi ziert werden . Die Kontextdaten 50 können vom Prozessor 92 zum Beispiel aus dem Speicher 93 geladen werden . Die Kontextdaten 50 können im Zusammenhang mit dem Training des maschinengelernten Algorithmus erstellt werden, d . h . beim Parametrieren des maschinengelernten Algorithmus ; siehe FIG . 4 .
FIG . 4 ist ein Flussdiagramm eines beispielhaften Verfahrens . FIG . 4 illustriert verschiedene Phasen der Verwendung eines maschinengelernten Algorithmus wie beispielsweise des maschinengelernten Algorithmus 89 .
In Box 3001 erfolgt eine Parametrierung .
Dies umfasst zum Beispiel das Training des maschinengelernten Algorithmus 89 . Das Training kann basierend auf einem Trainingsdatensatz durchgeführt werden . Der Trainingsdatensatz beinhaltet Trainingsdatenpaare , die j eweils einen Eingangsvektor und einen zugehörigen Ausgangsvektor umfassen . Der Ausgangsvektor stellt die Grundwahrheit ( engl . ground truth) für die Ausgabe des maschinengelernten Algorithmus für den j eweiligen Eingangsvektor dar . Eine Grundwahrheit kann zum Beispiel basierend auf manueller Annotation durch einen Experten mit Domänenwissen erhalten werden . Es gibt auch Techniken, um automatisch Grundwahrheiten zu erhalten, wobei dies j e nach Anwendungsgebiet variieren kann, z . B . mittels einer Simulation des technisch-physikalischen Systems .
Basierend auf dem Training werden Parameterwerte für den maschinengelernten Algorithmus erhalten . Für verschiedene Typen des maschinengelernten Algorithmus können unterschiedliche Parameterwerte erhalten werden ( zum Beispiel für ein tiefes neuronales Netzwerk mit einer Faltungsschichten kann der Faltungs-Kern bestimmt werden) .
Das Training kann dabei mittels grundsätzlich vorbekannter Techniken durchgeführt werden, die typischerweise eine iterative Optimierung der verschiedenen Parameterwerte zu Minimierung einer Verlust funktion umfassen . Es kann ein Gradientenabstiegsverfahren für die Optimierung mit rückwärtsgerichteter Anpassung der Parameter ( engl . backpropagation) durchgeführt werden . Die Verlust funktion beschreibt dabei einen Abstand des Ausgabevektors des maschinengelernten Algorithmus im gegenwärtigen Trennungs zustand gegenüber dem entsprechenden Vektor der Grundwahrheit eines entsprechenden Trainingsdatenpaars .
Die Parametrierung 3001 kann außerdem das Erzeugen der Kontextdaten 50 für den maschinengelernten Algorithmus umfassen . Diese können dabei basierend auf den Eingabevektoren des Trainingsdatensatzes bestimmt werden . Das bedeutet also , dass die Kontextdaten spezi fisch für den j eweiligen maschinengelernten Algorithmus , der ein bestimmtes Training erfahren hat , sind . Unterschiedliche maschinengelernte Algorithmen weisen dann unterschiedliche Kontextdaten auf (vgl . auch vertikaler gestrichelter Pfeil in FIG . 2 ) .
Es ist dann möglich, sowohl den maschinengelernten Algorithmus , wie auch die Kontextdaten 50 für den maschinengelernten Algorithmus in einem Speicher wie beispielsweise den Speicher 93 für die spätere Inferenz in Box 3002 zu speichern .
In Box 3002 findet die Inferenz statt . Diese Inferenz berücksichtigt sowohl den vorher trainierten maschinengelernten Algorithmus 89 , um gegebenenfalls einen verborgenen Systemzustand des technisch-physikalischen Systems zu schätzen; wie auch die Kontextdaten 50 , um zu bestimmen, ob eine Ausgabe des maschinengelernten Algorithmus sicher oder unsicher ist . Im Rahmen der Inferenz in Box 3002 ist keine Grundwahrheit verfügbar . Das heißt , der maschinengelernte Algorithmus 89 gibt einen Ausgangsvektor 86 aus , der nicht mit einer Grundwahrheit verglichen werden kann .
Nachfolgend werden zunächst Aspekte im Zusammenhang mit Box 3001 beschrieben . Anschließend werden Aspekte im Zusammenhang mit Box 3002 beschrieben . FIG . 5A ist ein Flussdiagramm eines beispielhaften Verfahrens . FIG . 5A illustriert Aspekte im Zusammenhang mit dem Parametrisieren eines maschinengelernten Algorithmus gemäß Box 3001 aus FIG . 4 .
Beispielsweise könnte das Verfahren aus FIG . 5A vom Prozessor 92 ausgeführt werden, basierend auf Programmcode , der aus dem Speicher 93 geladen wird und dann vom Prozessor 92 ausgeführt wird .
Zunächst werden in Box 3505 ein Trainingsdatensatz erhalten . Der Trainingsdatensatz umfasst mehrere Trainingsdatenpaare . Jedes Trainingsdatenpaare weist einen entsprechenden Eingabevektor auf , entsprechend dem Eingabevektor 85 (vergleiche FIG . 2 ) . Der Eingabevektor kodiert dabei Zustandsdaten eines technisch-physikalischen Systems . Zu j edem Eingabevektor ist j eweils eine Grundwahrheit zugeordnet , für einen entsprechenden verborgenen Systemzustand des technisch-physikalischen Systems . Die Grundwahrheiten liegen in Form von Ausgabevektoren (vergleiche Ausgabevektors 86 in FIG . 2 ) vor .
In Box 3510 wird dann das Training des maschinengelernten Algorithmus basierend auf dem Trainingsdatensatz durchgeführt . Dies erfolgt , um Parameterwerte für den maschinengelernten Algorithmus zu erhalten . Details zum Training wurden bereits voranstehend im Zusammenhang mit Box 3001 beschrieben .
Anschließend werden in Box 3515 basierend auf den Eingabevektoren des Trainingsdatensatzes mehrere Bereiche bestimmt .
Zumindest einige der Bereiche werden dabei so bestimmt , dass diese zwischen den Positionen der Eingabevektoren im entsprechenden Eingabevektorraum angeordnet sind . Das bedeutet , dass die Eingabevektoren j eweils Außengrenzen der Bereiche definieren . Das bedeutet , dass die Bereiche sich zwischen den Eingabevektoren erstrecken . Es wird also - zur Bestimmung der Be- reiche - zwischen den Positionen der Eingabevektoren im Eingabevektorraum interpoliert .
Beispielsweise wäre es denkbar, dass die Bereiche basierend auf Dreiecks flächen eines Dreiecksnetzes , dessen Knoten durch die Eingabevektoren bestimmt werden, gebildet wird . Es könnte eine Triangulierung, z . B . eine Delaunay-Triangulierung verwendet werden . Es können dann die Kontextdaten 50 erzeugt werden, die indikativ für die Bereiche sind . Beispielsweise könnten die Kontextdaten 50 die Dreiecks flächen des Dreiecksnetzes beinhalten . Die Bereiche können also durch Flächen ( genauer : Hyperflächen) begrenzt werden, die sich zwischen den Positionen benachbarter Eingangsvektoren im entsprechenden Eingangsvektorraum erstrecken .
Als allgemeine Regel könnte zum Auf finden der nächsten Nachbaren der sog . KD-Trees Algorithmus verwendet werden . Dafür gibt es allerdings allerhand weitere Möglichkeiten . Denkbar wären weitere klassische Baumstrukturen, etwa Quadtrees oder R- Trees . Für besonders hochdimensionale Daten eignen sich Appro- ximate-Nearest-Neighbor-Verf ahren wie Locality-sensitive hashing .
Es wäre in manchen Beispielen denkbar, dass zumindest einige der Bereiche so bestimmt werden, dass eine als unsicher erkannte Position im Eingabevektorraum umgeben wird . Wird eine Position als unsicher erkannt , so kann basierend auf einem vorgegebenen Entfernungsmaß ( Parameter „b" ) die Ausdehnung eines solchen Bereichs bestimmt werden . Der Parameter b unterstützt die Beherrschung von Problemen an den Klassengrenzen bei Anwendungen mit einem starken Ungleichgewicht hinsichtlich der Bedeutung von bestimmten Fehlertypen . Ein Beispiel ist eine sicherheitsrelevante Funktion, welche das Überfahren einer Ampel regelt . Das Überfahren einer roten Ampel kann das Leben und die Gesundheit von Personen gefährden . Bleibt ein Fahrzeug dagegen an einer gründen Ampel stehen, dann liegt nur ein Verfügbarkeitsproblem des Fahrzeuges vor, da es nicht immer dann fährt . Der Parameter „bk" definiert dann einen „Sicherheitsabstand" von einem Beispiel aus einer Klasse „k" . Alle Beispiele die weniger als bk im Eingaberaum von einem Beispiel der Klasse „k" entfernt sind werden dann der Klasse „k" zugeordnet . Entsprechend gilt , dass für Beispiele , die weniger als bk von einer unsicheren Position entfernt sind, die Verwendung der Vorhersage des maschinengelernten Algorithmus blockiert wird, d . h . z . B . keine Vorhersage berechnet wird oder die Vorhersage verworfen wird . Es ist nicht in allen Varianten notwendig, dass die Bereiche auch um unsicher erkannte Positionen bestimmt werden . Manchmal könnten die Bereiche , die sich zwischen Positionen von Eingabevektoren erstrecken, auch entsprechend über eine Bewertungsmetrik (vgl . Box 3520 ) bewertet werden ( das wird später erläutert ) .
In manchen Beispielen wäre es denkbar, dass die Kontextdaten 50 auch indikativ für erlaubte Ergebnisse des maschinengelernten Algorithmus sind, wenn ein entsprechender Eingabevektor einem der Bereiche angeordnet ist . In Box 3516 können diese erlaubten Ergebnisse bestimmt werden . Es gibt verschiedene Techniken, um in Box 3516 die erlaubten Ergebnisse zu bestimmen . Beispielsweise könnte ein spezieller Algorithmus verwendet werden, der die erlaubten Ergebnisse in Abhängigkeit von geometrischen Eigenschaften des j eweiligen Bereichs bestimmt . Beispielsweise könnte ein entsprechender weiterer maschinengelernter Algorithmus verwendet werden . Es könnte ein Mul- tischicht-Perzeptron oder eine Stützvektormaschine verwendet werden . Es könnte auch ein klassischer regelbasierter Algorithmus verwendet werden . Die erlaubten Ergebnisse könnten zum Beispiel basierend auf Grundwahrheiten für die Eingabevektoren der Trainingsdatenpaare , welche zur Bestimmung der Bereiche verwendet werden, bestimmt werden . Wenn zum Beispiel ein be- stimmter Bereich durch drei Eingabevektoren begrenzt wird, die mit den Grundwahrheiten „gelb" , „gelb" und „blau" assoziiert sind, so könnte der entsprechende Bereich in den Kontextdaten dahingehend gekennzeichnet werden, dass die Ausgabevektoren des maschinengelernten Algorithmus entweder „gelb" oder „blau" anzeigen dürfen . In anderen Worten können für Bereiche , die durch ein Dreiecksnetz gebildet werden, die erlaubten Ergebnisse des verborgenen Systemzustand basierend auf den Grundwahrheiten, die mit den Knoten des Dreiecksnetzes assoziiert sind, bestimmt werden . Entsprechende Aspekte werden später im Zusammenhang mit FIG . 12 und FIG . 13 näher erläutert .
Optional könnte in Box 3520 basierend auf einer vorgegebenen Bewertungsmetrik eine Partitionierung der Bereiche in erste Bereiche und zweite Bereiche erfolgen, etwa gem . TAB . 1 , Si- cherheitsstuf e I oder Sicherheitsstufe I I . Beispielsweise können die ersten Bereiche in Bezug auf die Bewertungsmetrik mit einer vergleichsweise geringen Unsicherheit für die Schätzung des verborgenen Systemzustand durch den maschinengelernten Algorithmus assoziiert sein; während die zweiten Bereiche in Bezug auf die Bewertungsmetrik mit einer vergleichsweise großen Unsicherheit für die Schätzung des verborgenen Systemzustand assoziiert sind . Die Kontextdaten die anschließend gespeichert werden, können dabei auch indikativ für die Partitionierung der Bereiche sein . Die Kontextdaten könnten z . B . die Sicherheitsstufe gem . TAB . 1 anzeigen .
Es ist nicht in allen Beispielen erforderlich, dass die Partitionierung der Bereiche bereits im Rahmen der Parametrierung in Box 3001 durchgeführt wird . Vielmehr wäre es denkbar, dass die Partitionierung der Bereiche im Rahmen der Inferenz in Box 3002 durchgeführt wird . Die Aus führungen, die voranstehend und nachfolgend im Zusammenhang mit der Bestimmung der Partitionierung in Box 3520 dargelegt sind, können entsprechend auf eine Partitionierung, die erst zur Inferenz durchgeführt wird, angewendet werden (vgl. z.B. FIG. 11: Box 3020) .
Grundsätzlich gibt es unterschiedliche Optionen, um die Bewertungsmetrik zu implementieren.
Beispielsweise könnte die Bewertungsmetrik eine Komponente umfassen, die die Vielzahl von Bereichen basierend auf ihrem Abstand zu als unsicher erkannten Positionen bewertet. Liegt ein Bereich z.B. innerhalb eines Abstands bk von einer als unsicher erkannten Position, so kann der Bereich als unsicher eingestuft werden.
Beispielsweise könnte die Bewertungsmetrik eine Komponente umfassen, die die Vielzahl von Bereichen basierend auf einer Kantenlänge von Kanten der Bereiche partitioniert (vgl. TAB. 1: Sicherheitslevel I vs . II) . Beispielsweise könnte, je länger die individuellen Kanten eines Bereichs sind, eine Tendenz für die Einstufung eines entsprechenden Bereichs als unsicher bestehen. Dem liegt die Erkenntnis zugrunde, dass die Wahrscheinlichkeit für einen signifikanten Wechsel der Ausgabe des maschinengelernten Algorithmus umso größer ist, je größer die Bereiche sind, das heißt je größer die Kantenlänge der Kanten des Bereichs ist. Je länger die Kantenlänge, desto größer auch die Wahrscheinlichkeit für einen doppelten Klassenwechsel entlang der jeweiligen Kante, also z.B. von einer ersten Klasse zu einer zweiten Klasse und zurück. Es könnte also - anders formuliert - eine kritische Schwelle a festgelegt werden, welche einen Abstand im Eingabevektorraum festlegt, bei deren Un- terschreitung der ML Algorithmus sicher generalisieren darf. Dies beruht unter anderem auf der Annahme, dass bei einem Abstand kleiner als a im Eingabevektorraum kein doppelter Wechsel der Ausgabeklasse erfolgt. Bereiche, die als sicher eingestuft sind, weisen dann Kantenlängen auf, die allesamt kleiner sind als der Schwellenwert a. Bereiche, die als unsicher ein- gestuft werden, weisen zumindest eine Seitenkante auf , die größer ist als der Schwellenwert a .
In manchen Beispielen könnte der Schwellenwert a fest für die verschiedenen Positionen im Eingaberaum sein . Es wäre aber auch möglich, dass der Schwellenwert als Funktion der Position im Eingaberaum gewählt wird .
Wenn der Eingabevektorraum D Dimensionen aufweist ( d . h . der Eingabevektor umfasst D Einträge ) , dann ist bei einer Anzahl von D+ l Trainingsdatenpaaren auch eine entsprechende Anzahl von Eingabevektoren vorhanden . Diese sind an unterschiedlichen Positionen im Eingabevektorraum angeordnet . Die Verbindungsvektoren ausgehend von einem Eingabevektor zu den anderen Eingabevektor spannen ein e-dimensionalen Hypervolumen des Eingabevektorraums auf , wenn die Verbindungsvektoren voneinander linear unabhängig sind, d . h . keiner der Verbindungsvektoren kann durch eine Linearkombination aus den anderen Verbindungsvektoren gebildet werden . Mathematisch wird dann auch davon gesprochen, dass sich die „D+ 1"-Positionen der Eingabevektoren in einer „generellen Position ( engl . „general position" ) zueinander befinden . Es kann vorkommen, dass die Verbindungsvektoren nichtlinear unabhängig sind . Falls die D+ l Eingabevektoren noch kein D-dimensionalen Hypervolumen aufspannen, können so lange im Eingaberaum benachbarte Punkte dazu genommen, bis ein D dimensionaler Raum aufgespannt wird . Dann definiert diese Menge der Punkte ein Hypervolumen, für den eine Generalisierung vorgenommen und eine Bewertung des Bereiches durchgeführt werden kann .
Diese Ausgangssituation ermöglicht den Aufbau der Triangulierung . Die Triangulierung unterteilt den Eingabevektorraum in Hypervolumen (bzw . Bereiche ) , wobei die Grenze eines Hypervolumens j eweils durch die Fläche ( genauer : Hyperfläche ) definiert wird, die zwischen j eweils drei Punkten der Triangulie- rung liegt . Zwischen den Flächen von D+ l in der Triangulierung benachbarten Punkten ( die entsprechend der Vorgaben an die Triangulation j eweils in einer generellen Position zueinander liegen) wird dann das j eweilige Hypervolumen ( d . h . der j eweilige Bereich im Eingabevektorraum) abgegrenzt .
In den verschiedenen hierin beschriebenen Beispielen können unterschiedliche Arten von Triangulierungen verwendet werden . Das bedeutet , dass unterschiedliche Algorithmen verwendet werden können, um eine Triangulierung zu bestimmen . Je nach Wahl der Triangulierung können unterschiedliche Bereiche erhalten werden; z . B . ist in FIG . 5B dargestellt , wie für vier Punkte unterschiedlich trianguliert werden kann ( durchgezogene vs . gestrichelte Linien) .
Ein Beispiel für eine Triangulierung ist die Delaunay- Triangulierung . Die Delaunay Triangulation kann etwa mit dem Bowyer-Watson Algorithmus durchgeführt werden . Ein Beispiel zur Delaunay-Triangulierung ist in FIG . 5C gezeigt . Dabei wird die Delaunay-Triangulierung mit der sogenannten Umkreisbedingung gebildet Es gilt : Der Umkreis eines Dreiecks des Netzes darf keine weiteren Punkte der vorgegebenen Punktmenge enthalten . Dadurch wird, mathematisch gesprochen, „der kleinste Innenwinkel über alle Dreiecke maximiert" . Es wird also erreicht , dass der kleinste Winkel in den Dreiecken so groß wird, wie dieser in diesem Dreiecksnetz sein kann . Uber die anderen Winkel wird j edoch keine Aussage getrof fen . Ein anderes Beispiel für eine Triangulierung ist die sog . Min-Max- Triangulierung . Diese ist im Zusammenhang mit FIG . 5D für drei verschiedene Beispiele erläutert ( in FIG . 5D sind unterschiedliche Beispiele mit unterschiedlichen Positionen im Eingabevektorraum assoziiert ; die Positionen im Eingabevektorraum sind durch die Kreuze markiert ) . Bei der Min-Max- Triangulierung werden die Dreiecke beispielsweise j eweils so gewählt , dass die größte Kante des Dreiecks minimal wird . Das hilft, die maximale Seitenlange des Bereichs möglichst klein zu wählen, was in Betracht auf den Schwellenwertvergleich mit dem Schwellenwert a hilfreich ist. Es kann aber manchmal vorkommen, dass mehrere mögliche Triangulierungen erfolgen können und somit eine bestimmte Position im Eingabevektorraum unterschiedlichen Bereichen - je nach Triangulierung - zugeordnet sein kann. Liegen mehrere mögliche Zuordnungen vor und mindestens eine dieser Zuordnung kann mit einem unsicheren Zustand assoziiert werden, so kann im Ergebnis die Ausgabe des maschinengelernten Algorithmus (z.B. ein Klassifikator) blockiert werden. Demnach gibt es bei Vorliegen mehrerer möglicher Ausgaben zwei Möglichkeiten. Der Klassifikator kann so eingestellt sein, dass er entweder die sicherste oder die nützlichste Ausgabe bevorzugt. Im zweiten Fall müsste man natürlich die "Nützlichkeit" etwa mit priorisierten Ausgaben definieren .
Anders formuliert: In der möglichen Mehrdeutigkeit bei der Bestimmung der Bereiche liegt ein Optimierungspotential. Wenn zu einen Eingabevektor, für den Inferenz erfolgen soll, der Positionsvektor im Eingabevektorraum in zwei Bereichen liegt, welche beide eine sichere Zuordnung ermöglichen (z.B. alle Kantenlängen kleiner „a", vgl . TAB. 1: Beispiel I) , dann kann die für die Applikation „nützlichere" Ausgabe der zwei Bereiche (d.h. die mit den niedrigeren Kosten) verwendet werden. Dies wäre z.B. in Figur 5D der Fall, wenn der oberste Punkt „gelb" und die unteren drei Punkte „blau" (als Beispiele für eine Klassenzuordnung) wären. In dem Fall wäre bei der Auswertung des oberen Dreiecks (linker Teil der Darstellung FIG. 5D) die Ausgabe „blau" oder „gelb" möglich. Das Dreieck in der mittleren Darstellung lässt jedoch den sicheren Schluss zu, dass die Ausgabe „blau" ist. Dann darf der ML Algorithmus die Ausgabe „blau" ausgeben, da diese Ausgabe durch eine abgesicherte Interpolation erfolgt, da alle Kantenlängen kleiner als a sind. Diese Variante erhöht die Verfügbarkeit des Systems , ohne dass die Sicherheit leidet .
Zusammenfassend kann es also bei einer allgemeinen Triangulation ohne zusätzliche Bedingungen zu Uneindeutigkeiten kommen . Die Delaunay Triangulation löst die Uneindeutigkeit mit der Umkreisbedingung : Im Umkreis eines Dreiecks darf kein weiterer Punkt vorhanden sein . Das mindert zwar das Vorkommen sehr " spitzer" Dreiecke , sorgt allerdings nicht unbedingt für eine möglichst kleine Kantenlänge . Dahingegen kann es - um den oben genannten Schwellenwert für die Kantenlänge einzuhalten - in den verschiedenen hierin beschriebenen Beispielen erstrebenswert sein, die Dreiecke mit möglichst kurzer Kantenlänge zu bestimmen . Dies wird durch die Min-Max-Triangulierung erreicht . Diese minimiert die die größte Kante eines Dreiecks ( "MinMaxEdge" ) . Dabei erfolgt die Wahl des Dreiecks , in dem ein Punkt drin liegt , nur abhängig von der Lage dieses Punktes .
Sofern keine genügend große Anzahl von Trainingsdatenpaaren vorhanden ist , um die Bereiche zu definieren, können weitere Trainingsdatenpaare erfasst werden . Wenn beispielsweise beim Aufbau der Triangulation Probleme auftreten (weil Beispiele z . B . nicht in einer geeigneten Lage zueinander liegen) , dann werden weitere benachbarte Punkte zu der betrachteten Menge hinzugefügt , bis die Eingabevektoren diese Menge der Beispiele einen Raum mit der gleichen Dimension wie den Eingaberaum aufspannen . Die Positionen der Eingabevektoren definieren dann die Begrenzung eines Hypervolumens , für den eine Ausgabe und eine Bewertung der Sicherheit der Ausgabe bestimmt werden kann (vgl . TAB . 1 ) .
Wenn D+ l Eingabevektoren des Trainingsdatensatzes alle weniger als die kritische Schwelle a voneinander entfernt sind, dann definieren diese Beispiele B für das Hypervolumen H, das von den sie verbindenden Hyperflächen umschlossen wird, ein Hypervolumen für den eine sichere Aussage über den internen Systemzustand möglich ist (vgl . TAB . 1 ) . In diesem Fall kann es in manchen Beispielen möglich sein, erlaubte Ergebnisse für die Vorhersage bzw . den verdeckte Systemzustand zu berücksichtigen . Beispielsweise wäre es denkbar, dass der vorhergesagte verdeckte Systemzustand nur Werte annehmen darf , welche auch von den, das Hypervolumen begrenzenden Beispielen B in der Ausgabe angenommen werden kann; oder bei der Schätzung des verborgenen Systemzustands kann der Ausgabewert nur Werte annehmen, die nicht mehr als od von solchen Beispielen B entfernt liegen . Die approximierte Funktion ist in diesem Hypervolumen H stetig, in besonderen Aus führungs formen sogar lipschit zste- tig . Gehören alle „D+ l" Eingabevektoren zur gleichen Klasse K ( d . h . weisen dieselbe Grundwahrheit K auf ) , so kann entsprechend den obigen Aus führungen allen weiteren Eingabevektoren, die innerhalb des Hypervolumens liegen, sicher diese Klasse K zugeordnet werden .
Voranstehend wurde also ein S zenario beschrieben, bei dem die Bewertungsmetrik die Partitionierung der Bereiche basierend auf deren Kantenlänge durchführt . Alternativ oder zusätzlich könnte die Bewertungsmetrik die Viel zahl von Bereichen basierend auf einer lokalen Variation der Grundwahrheiten bewerten . Das bedeutet , dass zum Beispiel überprüft werden kann, ob und gegebenenfalls , wie stark sich die Grundwahrheiten innerhalb oder am Rand des j eweiligen Bereichs verändern . Beispielsweise könnte überprüft werden, ob ein doppelter Wechsel einer Ausgabeklasse für einen Klassi fikator als maschinengelernter Algorithmus , vorliegt . Dem liegt die Erkenntnis zugrunde , dass eine stärkere Variation der Grundwahrheit in einem bestimmten Bereich im Eingabevektorraum des Eingabevektors indikativ für eine entsprechende erhöhte Unsicherheit bei der Vorhersage des maschinengelernten Algorithmus sein kann . Es wäre in verschiedenen Beispielen denkbar, dass die Bewertungsmetrik, die in Box 3520 verwendet wird, parametriert wird . Das bedeutet , dass es einen Parameter geben kann, dessen Wert die Ergebnisse der Bewertung beeinflusst . Der Parameterwert kann dann j e nach Anwendungsgebiet oder situationsspezifisch ausgewählt werden . Beispielsweise könnte ein vorgegebener Schwellenwert für die Seitenkanten ( der Wert a ) basierend auf mindestens einem Kriterium ausgewählt werden .
Nachfolgend werden einige beispielhafte Kriterien erläutert , die als Grundlage für die Wahl des Schwellenwert für die Kantenlänge dienen können . Nachfolgend wird also erläutert , wie der Schwellenwert bestimmt werden kann .
Das Kriterium könnte zum Beispiel einen minimalen Abstand zwischen den unterschiedlichen Eingabevektoren des Trainingsdatensatzes , die mit den verschiedenen Systemzuständen assoziiert sind, umfassen . Das bedeutet , dass eine Analyse der Abstände zwischen den unterschiedlichen Eingabevektoren im Trainingsdatensatz durchgeführt werden kann . Insbesondere kann überprüft werden, was der minimale Abstand für Eingabevektoren ist , die unterschiedliche Ergebnisse , beispielsweise unterschiedliche Klassen, für den verborgenen Systemzustand liefern . Dann könnte der vorgegebenen Schwellenwert kleiner oder gleich diesem minimalen Abstand gewählt werden .
Ein entsprechendes Beispiel ist in FIG . 5E dargestellt . FIG . 5E ist eine zweidimensionale Repräsentation des Eingabevektorraums (Allgemein formuliert könnte der Eingabevektorraum auch eine höhere Dimensionalität aufweisen) und zeigt unterschiedliche Regionen 691- 694 in denen j eweils Eingabevektoren angeordnet sind, die zu einer spezi fischen Klasse gehören . Beispielsweise gehören die Eingabevektoren, die in der Region 691 des Eingabevektorraums angeordnet sind, zu einer ersten Klasse (beispielsweise „grün" ) , während die Eingabevektoren, die in einer Region 692 des Eingabevektorraums angeordnet sind, zu einer anderen, zweiten Klasse (beispielsweise „rot" ) gehören . In FIG . 5E ist auch der minimale Abstand 699 zwischen zwei Positionen im Eingabevektorraum, die mit Eingabevektoren unterschiedlicher Klassen assoziiert sind, eingezeichnet ( im dargestellten Beispiel der FIG . 5E ist dieser Abstand 699 durch zwei Eingabevektoren in den Regionen 691 und 693 definiert ) . Beispielsweise könnte eine entsprechende Information durch eine Histogramm-artige Auswertung erfolgen . Im Histogramm kann j eweils der Abstand zwischen allen Paaren von Eingabevektoren, die zu unterschiedlichen Klassen gehören, aufgetragen werden . Der kleinste Abstand zwischen zwei Eingabevektoren, welche unterschiedlichen Klassen zugeordnet sind, kann dann aus dem Histogramm bestimmt werden . Entsprechend kann auch ein Histogramm erstellt werden, in dem der Abstand, in dem ein doppelter Klassenwechsel auftritt . Dazu wird für j e zwei Beispiele bestimmt , ob es ein Beispiel gibt , welches zwischen diesen Beispielen liegt ( das bedeutet es hat einen geringeren Abstand zu den beiden erst genannten Beispielen) und das eine abweichende Klasse zu zumindest einem der erstgenannten Beispiele hat . Dieser Abstand 699 kann dann als vorgegebener Schwellenwert zwischen dem geringsten Abstand zwischen zwei Beispielen die unterschiedlichen Klassen zugeordnet sind und dem geringsten Abstand mit einem doppelten Klassenwechsel gewählt werden .
Das Beispiel der FIG . 5E ist durch eine gute Trennung der Regionen 691- 694 im Eingabevektorraum charakterisiert . Dadurch ist der Abstand 699 und damit der Schwellenwert vergleichsweise groß . Dies erlaubt es , in vergleichsweise großen Teilen des Eingabevektorraums eine sichere Vorhersage des verborgenen Systemzustand des technisch-physikalischen Systems mittels des maschinengelernten Algorithmus zu machen .
In manchen Beispielen kann es möglich sein, eine solche Trennung von Regionen, die mit unterschiedlichen Klassen assozi- iert sind, durch geeignete Vorverarbeitung von Zustandsdaten zu verbessern; so dass die Eingabevektoren, die basierend auf den Zustandsdaten des technisch-physikalischen Systems bestimmt werden, die entsprechend große Separation aufweisen . Eine solche progressive Separation durch unterschiedliche Vorverarbeitung ist in den Beispielen der FIG . 5F, FIG . 5G und FIG . 5H gezeigt . Beispielsweise wäre es möglich, einen entsprechenden Qualitätsindikator, der indikativ für die Trennung der verschiedenen Regionen 691- 694 ist , zu definieren . Dann könnte eine Optimierung der Vorverarbeitung hinsichtlich einer Optimierungs funktion, die den Qualitätsindikator beinhaltet , erfolgen . Beispielsweise könnten bestimmte Trans formationen der Zustandsdaten zum Bestimmen der Eingabevektoren erfolgen . Es könnten auch Trans formationen im Ausgaberaum erfolgen . Entsprechende Beispiele sind zum Beispiel beschrieben in : Deutscher Patentanmeldung 10 2021 207 613 . 0 .
Alternativ oder zusätzlich könnte das mindestens eine Kriterium basierend auf Domänenwissen bestimmt werden . Beispielsweise könnte bei einer vergleichswiese niedrigen Dimensionalität des Eingabevektorraums auf Grundlage von Domänenwissen ein minimaler Abstand zwischen unterschiedlichen Klassen ermittelt werden . Als Beispiel : z . B . könnte eine Kamera-basierte Fahrwegerkennung für Schienenfahrzeuge Merkmale in Bildern erkennen, die erstens parallel verlaufende Schienen ( ggf . durch eine optische Übertragungs funktion einer Kamera korrigiert ) , zweitens in bestimmtem Abstand zueinander angeordnete Schienenschwellen und drittens das Vorhandensein von Schotter einer definierten Größe zwischen den Schwellen betref fen . Als konkretes Beispiel : Über eine Hough-Trans formation kann beispielsweise über ausgedehnte parallele linienförmige Strukturen der Krümmungsradius der Schienen bestimmt werden; über einen Garborfilter kann die Frequenz der Schwellenabfolge sowie die Größe des Schotters bestimmt werden . Wenn in diesem 3-D Eingaberaum (Krümmungsradius langer schlanker linienförmiger paralleler Obj ekte , Frequenz der Schwellen, Größe des Schotters ) drei Beispiele sich weniger als der auf Grundlage von Domänenwissen festgelegte Schwellenwert unterschieden, dann wurde ein Fahrweg erkannt . Es wäre dann denkbar, dass der zulässige Merkmalsbereich für erkannte Schienen / Fahrweg anhand dieses Domänenwissens festgelegt wird und basierend darauf der Schwellenwert gewählt wird .
Alternativ oder zusätzlich könnte das mindestens eine Kriterium für das Bestimmen des Schwellenwerts zum Beispiel eine Designvorgabe eines Entwicklungsprozesses des technischphysikalischen Systems umfassen . Beispielsweise könnte das mindestens eine Kriterium spezi fi zieren, welches Sicherheits- level für den Betrieb des technisch-physikalischen Systems erzielt werden soll . Wird beispielsweise ein bestimmtes Sicher- heitslevel - zum Beispiel eine Wahrscheinlichkeit für eine Fehl-Klassi fikationen oder eine falsche Steueraktion - im Rahmen des Entwicklungsprozesses für das technisch-physikalisches System erfordert , so kann in Abhängigkeit von dieser Vorgabe ein strengeres oder weniger strenges Kriterium für die Parametrisierung der Bewertungsmetrik verwendet werden .
In Box 3525 kann optional eine Plausibilisierung der in Box 3515 bestimmten und optional in Box 3520 bewerteten Bereiche erfolgen . Das bedeutet , dass überprüft / validiert werden kann, ob die Einstufung beispielsweise in „sicher" und „unsicher" zutref fend oder unzutref fend ist .
Beispielsweise kann der Schwellenwert für die Kantenlänge ( d . h . der Parameter a ) auf Grundlage von ein oder mehreren weiteren Trainingsdatenpaaren plausibilisiert werden . Diese ein oder mehreren weiteren Trainingsdatenpaare können also über den Trainingsdatensatz hinausgehen und weitere Eingabe- Vektoren an Positionen aufweisen, die einen Abstand zu einer Position eines Eingabevektors der Trainingsdatenpaare des ursprünglichen Trainingsdatensatzes aufweisen, der kleiner als der minimale Abstand ist. Dann kann anhand dieser weiteren Trainingsdatenpaare überprüft werden, ob die Ausgabe des maschinengelernten Algorithmus mit der entsprechenden Grundwahrheit übereinstimmt. Ist dies nicht der Fall, so kann die Plausibilisierung ein negatives Ergebnis aufweisen.
Das ist auch in FIG. 51 dargestellt. In FIG. 51 sind mit den Kreisen jeweils Eingabevektoren des Trainingsdatensatzes in einer ersten Klasse (z.B. „grün") und mit den Dreiecken Eingabevektoren des Trainingsdatensatzes in einer zweiten Klasse (z.B. „rot) dargestellt. Dann sind auch die als sicher für die erste Klassen identifizierten Bereiche mit einer gestrichelten Füllung (links unten nach rechts oben) und die als sicher für die zweite Klasse identifizierten Bereiche mit einer anderen gestrichelten Füllung (links oben nach rechts unten) dargestellt, vgl . TAB. 1: Sicherheitsstufe I. Als unsicher eingestufte Bereiche (hier TAB. 1: Sicherheitsstufe II) - wegen Klassenwechsel an den Eckpunkten und/oder Kantenlänge zu groß - sind ohne Füllung dargestellt. Die Randregion (TAB. 1: Si- cherheitsstuf e III) ist auch eingezeichnet; für entsprechende Eingabevektoren (Rauten) kann keine sichere Vorhersage getroffen werden, weil dies einer Extrapolation ausgehend von Eingabevektoren des Trainingsdatensatzes entspräche.
Die Plausibilisierung der Einteilung in die als sicher identifizierten Bereiche erfolgt dann mit weiteren Trainingsdatenpaaren, d.h. weitere Eingabevektoren für die Grundwahrheiten bekannt sind. Diese weiteren Eingabevektoren sind mit den Kreuzen + Kreis identifiziert. Für einen dieser weiteren Eingabevektoren (hervorgehoben mit Pfeil) wird ein Fehler erkannt: Die Grundwahrheit indiziert die zweite Klasse, während dieser Eingabevektor in einem in Bezug auf die erste Klasse sicher eingestuften Bereich angeordnet ist .
Wird bei der Plausibilisierung in Box 3525 ein Fehler erkannt , könnte die Rückkopplungsschlei fe über Box 3526 ausgeführt werden . In diesem Fall kann in Box 3526 der Schwellenwert für die Seitenkanten ( der Wert a ) reduziert werden und eine Neueinstufung der Bereiche erfolgen .
In Box 3530 können optional ein oder mehrere weitere Positionen im Eingabevektorraum ermittelt werden, an denen weitere Trainingsdatenpaare positioniert sein sollen . Das bedeutet in anderen Worten, dass bestimmt werden kann, wo weitere Trainingsdatenpaare hil freich sind, um eine zuverlässige Vorhersage des verborgenen Systemzustand durch den maschinengelernten Algorithmus zu fördern . Der Trainingsdatensatz kann also gezielt erweitert werden .
Insbesondere kann dabei auf die Bewertung der Bereiche im Rahmen einer entsprechenden Partitionierung aus Box 3520 zurückgegri f fen werden . Im Rahmen einer solchen Bewertung können Bereiche im Eingabevektorraum bestimmt werden, die mit einer großen Unsicherheit in Bezug auf eine entsprechende Bewertungsmetrik assoziiert sind . Es wäre dann möglich, dass weitere Trainingsdatenpaare so angeordnet sind, dass sie zu einer Neubewertung dieser mit einer großen Unsicherheit behafteten Bereiche führen .
Die ein oder mehreren weiteren Positionen können im Vektorraum so gewählt werden, dass sie nach einer Neubestimmung der Vielzahl von Bereichen unter Berücksichtigung der Trainingsdatenpaare und der weiteren Trainingsdatenpaare eine Gesamtgröße der ersten Bereiche maximal zunimmt . Dies könnte zum Beispiel im Rahmen eines Optimierungsalgorithmus bestimmt werden . Dabei gäbe es unterschiedliche Möglichkeiten, um solche weiteren Trainingsdaten zu erhalten . Beispielsweise könnte eine Mensch-Maschinen Schnittstelle angesteuert werden können, um eine Annotierung von Grundwahrheiten für den verborgenen Systemzustand für die weiteren Trainingsdaten zu erhalten . Das bedeutet , dass in einem Labeling-Prozess solche Labeling- Kandidaten aus der Menge von verfügbaren Eingabevektoren höher priorisiert werden können, für die bestimmt wird, dass sie auf Grundlage der Partitionierung hil freich sind . Damit kann eine Lernkurve , die die Genauigkeit des maschinengelernten Algorithmus als Funktion der Iterationen der Annotierung beschreibt , besonders steil ausgebildet werden . Die Anzahl der erforderlichen Annotationen kann vergleichsweise gering ausfallen . Es könnte auch eine Software-Simulation des technischphysikalischen Systems geeignet eingestellt werden, um die Grundwahrheiten für den verborgenen Systemzustand für die weiteren Trainingsdatenpaare zu erhalten .
Werden weitere Trainingsdatenpaare erhalten, so können Box 3510 und die nachfolgenden Boxen erneut durchgeführt werden ( in FIG . 5A durch den rückgekoppelten gestrichelten Pfeil dargestellt ) .
In Box 3535 ist es anschließend möglich, den trainierten maschinengelernten Algorithmus , der durch das Aus führen von Box 3510 erhalten wird, sowie die Kontextdaten 50 , die aus Box 3515 sowie ggf . Box 3520 erhalten werden, zu speichern .
Voranstehend wurden im Zusammenhang mit FIG . 5A Aspekte erläutert , welche die Bestimmung von Kontextdaten betref fen, die Bereiche anzeigen . Auf Grundlage dieser Bereiche , kann bestimmt werden, ob eine Vorhersage des maschinengelernten Algorithmus zuverlässig oder unzuverlässig ist . Diese Wirkung der Bereiche wird nachfolgend näher erläutert , an einem praktischen Beispiel gemäß FIGs . 6- 10 (hier zur I llustration auch in zwei Dimensionen dargestellt ; wobei in praktischen Beispielen eine höhere Dimensionalität des entsprechenden Eingabevektorraums 71 vorliegt ) .
FIG . 6 illustriert ein Beispiel für die Positionierung von Eingabevektoren 511-513 und 521-523 im Eingabevektorraum 71 . Der wahre verborgenen Systemzustand lässt sich in zwei Klassen einteilen, die den Bereichen 531 , 532 entsprechen .
Beispielsweise könnte der Bereich 531 einem fehlerfrei funktionierenden Motor für eine Gleisweiche entsprechen; während der Bereich 532 einem blockierten Motor entsprechen könnte . Die Eingabevektoren 511-513 und 521-523 könnten dabei zum Beispiel basierend auf Messwerten für einen Stromfluss durch den Motor sowie Messdaten aus einem Erschütterungssensor entsprechen .
Das ist nur ein konkretes Beispiel und andere Beispiele sind möglich .
Die Eingabevektoren 511-513 und 521-523 sind Teil eines Trainingsdatensatzes . Der Trainingsdatensatz umfasst also mehrere Trainingsdatenpaare , die j eweils einen entsprechenden Eingabevektor 511-513 und 521-523 umfassen, sowie einen zugehörigen Ausgabevektors als Grundwahrheit , der für die Eingabevektoren 511-513 eine erste Ausgabeklasse ( z . B . „Motor defekt" ) anzeigt und für die Eingabevektoren 521-523 eine zweite Ausgabeklasse ( z . B . „Motor nicht defekt" ) anzeigt .
In FIG . 6 ist außerdem ein weiterer Eingabevektor 550 dargestellt . Dieser Eingabevektor 550 ist nicht Teil des Trainingsdatensatzes . Das bedeutet , dass für den Eingabevektor 550 keine Grundwahrheit vorhanden ist . Der Eingabevektor 550 entspricht tatsächlich der zweiten Ausgabeklasse , genauso wie die Eingabevektoren 521-523 . Nachfolgend wird aber gezeigt , dass unterschiedliche maschinengelernte Algorithmen 89 , die basierend auf den Eingabevektoren 511-513 und 521-523 trainiert werden, eine falsche Vorhersage für den Eingabevektor 550 treffen können.
Dies ist zunächst in FIG. 7 für einen nächste-Nachbarn- Klassif ikator gezeigt. Der Eingabevektor 550 befindet sich in der unmittelbaren Nachbarschaft des Eingabevektors 513; der während des Trainings als zur ersten Ausgabeklasse zugehörig angelernt wurde. Der nächste-Nachbar-Klassif ikator würde also fälschlicherweise die erste Klasse basierend auf dem Eingabevektor 550 Vorhersagen.
Dies trifft auch zu für einen maschinengelernten Algorithmus 89, der durch ein Multilayer-Perzeptron implementiert sei zu, wie in FIG. 8 gezeigt. In FIG. 8 ist dargestellt, wie ein solcher maschinengelernte Algorithmus 89 - trainiert basierend auf den Eingabevektoren 511-513, 521-523 - die Klassengrenze 565 vorhersagt. Im Bereich des Eingabevektors 550 ergibt sich eine Diskrepanz, so dass eine falsche Vorhersage resultiert.
Selbiges gilt schließlich auch für eine SVM-Implementierung des maschinengelernten Algorithmus, siehe FIG. 9. In FIG. 9 ist die entsprechende Klassengrenze 567 dargestellt. Auch hier ergibt sich eine Fehlklassifikation für den Eingabevektor 550.
Nachfolgend wird gezeigt, wie anhand der Bereiche, die durch die Kontextdaten 50 angezeigt werden, eine solche unsichere Vorhersage durch den maschinengelernten Algorithmus 89 in den Implementierungen gemäß FIGs. 7-9 antizipiert werden kann.
In FIG. 10A sind die Bereiche 571-574 dargestellt, die sich aus einer Interpolation zwischen den Eingabevektoren 511-513 und 521-524 ergeben. Die Bereiche werden durch eine Triangulierung erhalten, wobei, wie voranstehend bereits beschrieben, unterschiedliche Triangulierungen verwendet werden können. Beispiele sind eine Min-Max-Triangulierung oder eine Delaunay- Triangulierung . Außerdem ist in FIG . 10A die kritische Kantenlänge 590 dargestellt . Diese kritische Kantenlänge 590 wird im dargestellten Beispiel so bestimmt , dass sie dem kleinsten Abstand zwischen zwei Eingangsvektoren 511-513 und 521-524 des Trainingsdatensatzes entspricht , für den ein Klassenwechsel beobachtet wird ( das ist zwischen Eingangsvektor 512 und Eingangsvektor 523 ) .
Als allgemeine Regel können in den verschiedenen hierin beschriebenen Beispielen unterschiedliche Abstandsmetriken verwendet werden . Beispielsweise kann die Euklidische Distanz verwendet werden . Es könnte aber auch die sog . p-Norm verwendet werden .
Als allgemeine Regel kann die kritische Kantenlänge 590 so gewählt werden, dass kein doppelter Klassenwechsel für die Ausgabe des maschinengelernten Algorithmus innerhalb der entsprechenden Länge im Eingabevektorraum statt finden kann . Vgl . TAB . 1 : Sicherheitsstufe I .
In FIG . 10A ist ersichtlich, dass die Bereiche 571 , 572 sowie 574 Kantenlängen aufweisen, die nicht unterhalb der kritische Kantenlänge 590 liegen . Entsprechend sind die diese Bereiche 571 , 572 , 574 (vgl . TAB . 1 : Sicherheitsstufe I ) als unsicher bewertet . Zum Beispiel ist für den Bereich 574 in FIG . 10B vergrößert dargestellt , wie entlang der Verbindungslinie zwischen den Eingabevektoren 524 und 522 in der Region 574-- 1 eine andere Klasse auftreten kann; es liegt also ein doppelter Klassenwechsel vor . Ein Eingabevektor, der innerhalb dieser Bereiche 571 , 573 , 574 liegt , bewirkt eine unsichere Vorhersage des assoziierten verborgenen Systemzustand mittels des maschinengelernten Algorithmus . Es kann dann ein Fehlerindikator ausgegeben werden, basierend auf dem z . B . eine Warnung oder eine Überführung des gesteuerten technisch-physikalischen Systems in einen sicheren Betriebs zustand erfolgen kann . Eine andere Situation liegt für den Bereich 573 vor (vgl. FIG. 10A) . Der Bereich 573 weist nur Kanten auf, die eine kürzere Länge, als die kritische Kantenlänge 590 aufweisen. Der Bereich 573 kann also als sicher bewertet werden, vgl. TAB. 1 Sicherheitsstufe I) .
Aus FIG. 10A ist ferner ersichtlich, dass der weitere Eingabevektor 550 innerhalb keines der Bereiche 571-573 liegt. Deshalb kann für den weiteren Eingabevektor 550 keine sichere Vorhersage mittels des maschinengelernten Algorithmus gemacht werden (vgl. TAB. 1: Sicherheitsstufe III) - was sich mit den oben dargelegten Beobachtungen gemäß FIG. 7, FIG. 8 und FIG. 9 deckt .
Voranstehend wurde eine Variante erläutert, bei der die Bereiche zwischen Positionen von Eingabevektoren angeordnet sind. Eine weitere Variante ist in FIG. IOC gezeigt. Dort ist der Eingabevektorraum 71 gezeigt und Positionen von Eingabevektoren 662 für eine erste Klasse und von Eingabevektoren 663 für eine zweite Klasse, sowie die Klassengrenze 660. Inferenz für einen Eingabevektor 661 könnte ein falsches Ergebnis (erste Klasse) liefern. Dieses könnte - wenn die Schwellenwert für die Kantenlänge der Bereiche, die sich zwischen den Positionen der Eingabevektoren 662 erstrecken zu groß gewählt wird (vgl. TAB. 1: Beispiel I) - fälschlicherweise als sicher eingestuft werden. Um das zu verhindern kann ein Bereich 670 - vgl. FIG. 10D - bestimmt werden, der die mit einem Kreuz markierte Position des Eingabevektors 663 umgibt und einen Abstand b zu dieser Position abgrenzt. Die Inferenz für alle Eingabevektoren (so auch der Eingabevektor 661) innerhalb dieses Bereichs 670 kann dann als unsicher erkannt werden. Alternativ könnte auch der interpolierte Bereiche 671 (vgl. FIG. 10E) von der Bewertungsmetrik als unsicher erkannt werden, weil der Abstand zur Position des unsicheren Eingabevektors 663 kleiner als b ist, d.h. kleiner als ein Abstandsschwellenwert 679. Der Bereich 670 könnte z.B. basierend auf einem Verlauf der Klassengrenze 660 bestimmt werden. Beispielsweise könnte dort, wo nahe einer bekannter Klassengrenze keine Grundwahrheit im Training verfügbar ist, ein entsprechender Bereich 670 angeordnet sein.
Die Kontextdaten 50 zeigen die Bereiche an. Das kann bei der Inferenz (vgl. FIG. 4: Box 3002) ausgenutzt werden. Dies wird nachfolgend erläutert.
FIG. 11 ist ein Flussdiagramm eines beispielhaften Verfahrens. FIG. 11 kann zum Beispiel Box 3002 implementieren. FIG. 11 betrifft Inferenz mittels eines vorher trainierten maschinengelernten Algorithmus basierend auf einem Eingabevektor, für den keine Grundwahrheit verfügbar ist. Beispielsweise könnte das Verfahren aus FIG. 11 vom Prozessor 92 ausgeführt werden, nachdem diese einen entsprechenden Programmcode aus dem Speicher 93 lädt und ausführt.
Zunächst wird in Box 3005 ein Eingabevektor erhalten. Dieser kann Zustandsdaten des technisch-physikalischen Systems kodieren. Beispielsweise könnte der Eingabevektor basierend auf entsprechenden Zustandsdaten (vergleiche FIG. 1: Zustandsdaten 81) , die vom technisch-physikalischen System erhalten werden, bestimmt werden. Der Eingabevektor kann aus einem Speicher geladen werden.
In Box 3010 wird der maschinengelernte Algorithmus geladen. Ein entsprechender Programmcode kann aus dem Speicher geladen werden .
Der maschinengelernte Algorithmus ist zu diesem Zeitpunkt bereits trainiert, das heißt Parameterwerte sind gesetzt. Zum Training können Techniken, wie sie voranstehend im Zusammenhang mit Box 3001 zum Beispiel in FIG. 5A und auch im Zusammenhang mit FIG. 4 beschrieben wurden, eingesetzt werden. Dann werden in Box 3015 Kontextdaten geladen . Die Kontextdaten sind mit dem maschinengelernten Algorithmus assoziiert . Außerdem zeigen die Kontextdaten mehrere Bereiche im Vektorraum des Eingabevektors an . Das wurde voranstehend im Zusammenhang mit FIG . 10A diskutiert . Die Bereiche können im Rahmen der Parametrisierung des maschinengelernten Algorithmus bestimmt werden, wie voranstehend im Zusammenhang mit FIG . 5A: Box 3515 beschrieben .
Es gibt unterschiedliche Möglichkeiten, wie die Kontextdaten Bereiche im Eingabevektorraum indi zieren können . Die Kontextdaten könnten zum Beispiel die Bereiche direkt angeben, das heißt für j eden Bereich entsprechende Grenzen definieren . Es wäre auch denkbar, dass die Kontextdaten die Eckpunkte angeben; und dann daraus mittels einer Delaunay-Triangulierung oder einer anderen Triangulierung oder einem anderen Schema die Bereiche bestimmt werden . Die Kontextdaten können die Grenz flächen zwischen den Bereichen angeben .
Die Kontextdaten können auch optimiert sein . Die Kontextdaten können die Bereiche komprimiert angeben . Beispielsweise können Bereiche zusammengefasst werden, welche die gleiche Eigenschaft haben, um eine möglichst ef fi ziente Bestimmung des verdeckten Systemzustands zu erreichen . Eine solche Zusammenfassung von Bereichen oder anderweitige Optimierung/Komprimierung der Kontextdaten kann in FIG . 5A: box 3515 erfolgen .
In manchen Beispielen können die Kontextdaten auch noch weitere Information anzeigen, über die Bereiche hinaus .
Die Bereiche können eingeteilt sein in erste Bereiche und zweite Bereiche . Die ersten Bereiche (vgl . FIG . 10A: Bereiche 573 ) können mit einer geringen Unsicherheit des Schätzens des verborgenen Systemzustand mittels des maschinengelernten Algorithmus assoziiert sein; während die zweiten Bereiche mit einer vergleichsweise hohen Unsicherheit des Schätzens des ver- borgenen Systemzustand assoziiert sind (vgl . FIG . 10A: Bereiche 571 , 572 ) .
Dabei ist es grundsätzlich möglich, dass die Kontextdaten bereits einen Indikator umfassen, der eine entsprechende Partitionierung der Bereiche in die ersten und zweiten Bereiche indi ziert . Das bedeutet , dass eine entsprechende Partitionierung der Bereiche bereits im Zusammenhang mit der Parametrisierung des maschinengelernten Algorithmus durchgeführt werden kann und dann kann im Rahmen der Inferenz auf diese vorher stattgefundene Partitionierung zurückgegri f fen werden ( entsprechende Aspekte wurden zum Beispiel im Zusammenhang mit Box 3520 in FIG . 5A erläutert ) . Es wäre aber in manchen Beispielen auch denkbar, dass die entsprechende Partitionierung erst im Rahmen der Inferenz bestimmt wird, nämlich zum Beispiel in Box 3020 . Das bedeutet , dass in Box 3020 j eder der durch die Kontextdaten indi zierten Bereiche basierend auf einer entsprechenden Bewertungsmetrik bewertet werden kann . Entsprechende Bewertungsmetrik wurden bereits obenstehend im Zusammenhang mit Box 3520 beschrieben . Dieselben Bewertungsmetriken bzw . Komponenten der Bewertungsmetrik können auch während der Inferenz in Box 3020 angewendet werden . Solche Bewertungsmetriken betreffen zum Beispiel eine Bewertung der Bereiche basierend auf einer Kantenlänge von Kanten der Bereiche , wobei diese Kantenlänge mit einem Größenschwellenwert verglichen werden kann .
Der Größenschwellenwert wurde zum Beispiel im Zusammenhang mit FIG . 10A: kritische Länge 590 diskutiert . Der Größenschwellenwert kann durch die Kontextdaten angezeigt werden . Eine weitere beispielhafte Komponente der Bewertungsmetrik könnte zum Beispiel die Einstufung eines Bereichs in sicher oder unsicher basierend auf einem Abstand zu als unsicher erkannten Positionen im Eingabevektorraum betref fen . Solche als unsicher erkannten Positionen im Eingabevektorraum könnten, wie obenste- hend beschrieben, basierend auf einem Verlauf von Klassengrenzen bestimmt werden .
Wenn die Bewertungsmetrik mehrere Komponenten umfasst , so können diese Komponenten hierarchisch geordnet sein . Das kann bedeuten, dass die Partitionierung ein erstes Kriterium mit höherer Hierarchie behandelt , als ein zweites Kriterium ( das erste Kriterium hat also eine höhere Hierarchiestufe als das zweite Kriterium) . Beispielsweise könnte ein solches Kriterium zunächst geprüft werden; und wenn dann festgestellt wird, dass ein bestimmter Bereich zum Beispiel als unsicher einzustufen ist , könnte es entbehrlich sein, den Bereich hinsichtlich anderer Kriterien der Bewertungsmetrik zu beurteilen . Beispielsweise kann es insbesondere erstrebenswert sein, primär den Abstand zu als unsicher erkannten Positionen im Eingabevektorraum zu überprüfen hinsichtlich eines Schwellenwerts ( der Parameter b; Abstand 679 in FIG . 10D) ; und lediglich sekundär eine Berücksichtigung der Kantenlängen von Kanten der Bereichen in Bezug auf den Größenschwellenwert ( der Parameter a ) zu überprüfen . Die Berücksichtigung von b kann also im Allgemeinen Vorrang vor den anderen Komponenten der Bewertungsmetrik, u . a . der Seitenlänge hinsichtlich des Schwellenwerts a haben . So kann man zunächst einen Sicherheitsring um alle kritischen Zustände ( d . h . unsicheren Positionen im Eingabevektorraum) legen . Damit kann am auch komplexe Trennflächen sicher behandeln . Im verbleibenden Eingabvektorraum kann man dann mit einem vergleichsweise größeren Schwellenwert für die Kantenlänge ( Parameter a ) arbeiten ( im Vergleich zu einem S zenario ohne Berücksichtigung der Abstände zu als unsicher eingestuften Positionen) , da dann auf das Auftreten neuer Cluster abseits der Trennlinie von Klassen beschränkt werden kann . So kann man eine sichere Behandlung der Trennflächen gewährleisten aber auch mit einem großen Schwellenwert für die Kantenlänge a für die Verhinderung des Auftretens von neuen Clustern arbeiten . Darum kann es erstrebenswert sein, mit der höchsten Priorität zunächst den Abstandsschwellenwert b zur Einstufung der Bereiche anzuwenden und dann nachrangig die Bewertung der Bereiche betref fend die Kantenlänge hinsichtlich des Schwellenwerts a .
Das Durchführen der Partitionierung zur Inferenz in Box 3020 kann bestimmte Vorteile gegenüber dem Durchführen der Partitionierung während der Parametrierung des maschinengelernten Algorithmus (vgl . FIG . 5A: Box 3520 ) aufweisen . Insbesondere wäre es denkbar, dass die Bewertungsmetrik während der Inferenz basierend auf aktuellen Umständen des physikalisch-technischen Systems angepasst wird . Das bedeutet , dass j e nach Betriebssituation des physikalisch-technischen Systems eine unterschiedliche Partitionierung für die mehreren Bereiche ermittelt werden kann, so dass also j e nach Betriebssituation des physikalisch-technischen Systems bestimmte Bereiche einmal als sicher oder unsicher eingestuft werden können . Derart kann abgestimmt auf die aktuelle Betriebssituation des physikalischtechnischen Systems ein angepasstes Sicherheitslevel für die Steuerung auf Grundlage des maschinengelernten Algorithmus erzielt werden .
Beispielsweise wäre es denkbar, dass die Bewertungsmetrik basierend auf einem Betriebsmodus des technisch-physikalischen Systems parametriert wird . Der Betriebsmodus kann dabei mit den Zustandsdaten assoziiert sein . Das heißt , dass die Zustandsdaten (vergleiche FIG . 1 : Zustandsdaten 81 ) j eweils aktuell vom physikalisch-technischen System bereitgestellt werden und deren Werte davon abhängen, welcher Betriebsmodus aktiviert ist .
So könnte die Bewertungsmetrik basierend auf einem Betriebssi- cherheitslevel der zu erbringenden Funktion des technischphysikalischen Systems , das spezi fisch für den Betriebsmodus ist , parametrisiert werden . Dem liegt die Erkenntnis zugrunde , dass bestimmte technisch-physikalische Systeme in unterschiedlichen Betriebsmodi betrieben werden können, die verschiedene Betriebssicherheitslevel für die automatische Steuerung erfordern . Ein Beispiel wäre zum Beispiel teilautonomen gegenüber voll-autonomes Fahren . Bei teilautonomen Steuerungen ( z . B . „Level 2" - teilautomatisiertes Fahren) behält der Fahrer Zugri f f auf das Fahrzeug, so dass das Betriebssicherheitslevel für die Steuerung im Vergleich zu vollautonomen Steuerungen ( z . B . „Level 5" - autonomes Fahren) reduziert sein kann . Entsprechend wäre es denkbar, dass für die Sicherheit der Vorhersage eine andere Bewertungsmetrik zur Partitionierung der Bereiche verwendet wird, j e nachdem ob teilautonomes oder vollautonomes Fahren basierend auf der Vorhersage des maschinengelernten Algorithmus umgesetzt wird .
Wenn zum Beispiel eine Einteilung der Bereiche basierend auf der Kantenlänge im Vergleich zu einem vorgegebenen Größenschwellenwert (vergleiche FIG . 10A: kritische Länge 590 ) erfolgt , so wäre es denkbar, dass diese Kantenlänge j e nach Betriebsmodus des technisch-physikalischen Systems kürzer oder länger gewählt wird . Ein größerer Größenschwellenwert resultiert dann in einer größeren Anzahl von Bereichen, für die eine sichere Vorhersage des maschinengelernten Algorithmus angenommen wird .
Voranstehend wurden Beispiele beschrieben, bei denen die Kontextdaten über die Bereiche hinaus noch weitere Information indi zieren; voranstehend wurde insbesondere ein Beispiel beschrieben, bei denen es möglich ist , dass die Kontextdaten die Partitionierung der Bereiche indi ziert . Neben einer solchen weiteren Information, die von den Kontextdaten bereitgestellt wird, könnte auch andere Informationen durch die Kontextdaten bereitgestellt werden . In manchen S zenarien wäre es denkbar, dass die Kontextdaten für zumindest einige Bereiche der Viel zahl von Bereichen ein oder mehrere erlaubte Ergebnisse für den verborgenen Systemzustand indi zieren . Das bedeutet , dass - zusätzlich zur Indikation der verschiedenen Bereiche im Eingabevektorraum - auch angegeben werden kann, welch zulässigen Ausgabewerte der Ausgabevektor annehmen darf , sofern der Eingabevektor in einem entsprechenden Bereich positioniert ist . Beispielsweise ist in FIG . 12 ein S zenario dargestellt , in dem die Kontextdaten 50 mehrere Bereiche 771-776 beschreiben ( die Bereiche bilden ein Dreiecksnetz und werden durch entsprechende Dreiecks flächen - in FIG . 12 aufgrund der zweidimensionalen Repräsentation durch die Linien dargestellt - begrenzt ) und j eweils für j eden der Bereiche 771-776 einen Indikator 751 angeben, der die Partitionierung der Bereiche in solche mit einer geringen Unsicherheit und andere mit einer hohen Sicherheit des Schätzens des verborgenen Systemzustand mittels des maschinengelernten Algorithmus beschreibt . Außerdem ist ein weiterer Indikator 752 vorhanden, der ein oder mehrere erlaubte Ergebnisse für den geschätzten verborgenen Systemzustand indi ziert . Entsprechendes wurde auch in FIG . 5A im Zusammenhang mit Box 3516 beschrieben .
Außerhalb der Bereiche 771-776 könnte Extrapolation ( etwa für den Punkt 779 ) vorliegen (vgl . TAB . 1 : Sicherheitsstufe I I I ) , sodass hier eine sichere Vorhersage nicht möglich ist .
In Box 3025 in FIG . 11 ist es dann möglich, die relative Position des Eingabevektors in Bezug auf die Bereiche zu bestimmen . Beispielsweise könnte überprüft werden, ob der Eingangsvektor in einem bestimmten Bereich liegt oder außerhalb aller Bereiche . Wenn zum Beispiel die Kontextdaten die Bereiche durch die Grenz flächen zwischen den Bereichen indi ziert werden, könnte eine entsprechende Überprüfung das Bilden von Teilräumen im Eingabevektorraum basierend auf den entsprechenden Grenz flächen umfassen .
Basierend auf dieser relativen Position kann dann in Box 3030 überprüft werden, ob entweder - Box 3035 - einen Fehlerindikator ausgegeben werden soll ( d . h . die Ausgabe des maschinengelernten Algorithmus wird blockiert ) oder in Box 3040 der Eingabevektor maschinengelernten Algorithmus verarbeitet werden soll ( d . h . die Ausgabe des maschinengelernten Algorithmus wird erlaubt und weiterverarbeitet ) .
Beispielsweise könnte der Fehlerindikator in Box 3035 genau dann ausgegeben werden, wenn der Eingabevektor in keinem Bereich angeordnet ist ( in einem solchen Fall kann es entbehrlich sein, eine Partitionierung der Bereiche vorzunehmen) . Es wäre auch denkbar, dass der Fehlerindikator auch dann ausgegeben wird, wenn der Eingabevektor in einem Bereich liegt , der mit einer großen Unsicherheit des Schätzens des verborgenen Systemzustand assoziiertes , beispielsweise wie durch den entsprechenden Indikator 751 in den Kontextdaten 750 angegeben; oder wie durch die Partitionierung in Box 3020 bestimmt . Sofern in Box 3035 der Fehlerindikator ausgegeben wird, so kann dies in Box 3050 zum Steuern des technisch-physikalischen Systems berücksichtigt werden . Beispielsweise könnte das technisch-physikalischen Systemen einen sicheren Betriebs zustand überführt werden . Es könnte eine Warnung an ein Bedienpersonal des technisch-physikalischen Systems ausgegeben werden . Es könnte eine Fehler-Protokolldatei entsprechend ergänzt werden .
Wenn ein Verarbeiten des Eingabevektors maschinengelernten Algorithmus in Box 3040 erfolgt , so wird dann als Ausgabe des maschinengelernten Algorithmus ein Ausgabevektor erhalten, welche indikativ für den verborgenen Systemzustand des technisch-physikalischen Systems ist . In manchen Beispielen könnte dieser Ausgabe dann dazu verwendet werden, um das technischphysikalische System zu steuern, Box 3050 .
Optional wäre es in Box 3045 auch denkbar, den verborgenen Systemzustand, der als Ausgabe vom maschinengelernten Algorithmus in Box 3040 erhalten wird, basierend auf erlaubten Ergebnissen für den Systemzustand, die durch die Kontextdaten indi ziert werden (vergleiche FIG . 12 : Indikator 752 ) , anzupassen . Beispielsweise könnte eine Mittelung erfolgen, beispielsweise wenn eine Regressionsaufgabe vom maschinengelernten Algorithmus ausgeführt wird . Bei einer Regressionsaufgabe kann zusätzlich zu dem Vorhersagewert auch noch die Information betref fend eine Wahrscheinlichkeitsverteilung des Vorhersagewerts ausgegeben werden . Diese Wahrscheinlichkeitsverteilung kann aus dem Abstand zu Bereichen mit Indikatoren anderer Werte zur Position des Eingabevektors im Eingaberaum abhängen .
Ein weiteres Beispiel ist in FIG . 13 illustriert . FIG . 13 entspricht grundsätzlich FIG . 12 . Im Beispiel der FIG . 13 sind die Kontextdaten 50 allerdings so strukturiert , dass j eweils im Zusammenhang mit einer Ecke der Bereiche 771-776 ein entsprechender Indikator 753 vorgesehen ist , der ein j eweiliges erlaubtes Ergebnis für den geschätzten Systemzustand bzw . die Ausgabe des maschinengelernten Algorithmus indi ziert . Es wäre dann möglich, j eweils einen Abstand zwischen der Position des Eingabevektors in Bezug auf die verschiedenen Ecken der Bereiche 771-776 zu bestimmen und basierend auf diesen Abständen das j eweilige erlaubte Ergebnis aus zuwählen ( oder - für eine Regressionsaufgabe - die Wahrscheinlichkeitsverteilung) . Die Ecken der Bereiche 771-776 entsprechen dabei den Positionen entsprechender Eingabevektoren des zugrundeliegenden Trainingsdatensatzes ; die erlaubten Ergebnisse könnten hier basierend auf den entsprechenden Grundwahrheiten gewählt werden . Zum Beispiel könnte j eweils die nächstliegende Ecke berücksichtigt werden und dann basierend auf dem mit dieser Ecke as- soziierten Indikator 753 das erlaubte Ergebnis für die Ausgabe des maschinengelernten Algorithmus bestimmt werden ( für den in FIG . 13 dargestellten Eingabevektor 85 wäre das „blau" ) .
Dabei sind die in FIGs . 12 und 13 dargestellten S zenarien nur Beispiele . Es wären auch weitere Techniken denkbar, um die erlaubten Ergebnisse für die Systemzustand zu bestimmen . Beispielsweise wäre es denkbar, dass der vorhergesagte verdeckte Systemzustand nur Werte annehmen darf , die nicht weiter als od von den durch die Kontextdaten 50 angezeigten erlaubten Ergebnisse entfernt sind . Das kann insbesondere für Regressionsaufgaben hil freich sein
Wieder bezugnehmend auf FIG . 11 : es kann Situationen geben, bei denen die Ausgabe des maschinengelernten Algorithmus aus Box 3040 nicht übereinstimmt mit den ein oder mehreren erlaubten Ergebnissen, die aus den Kontextdaten 750 bestimmt werden . Es ist möglich, den verborgenen Systemzustand, der durch das Verarbeiten des Eingabevektors im maschinengelernten Algorithmus geschätzt wird, mit den entsprechenden erlaubten Ergebnissen für den Bereich aus den Kontextdaten zu vergleichen, Box 3045 . Wenn der Vergleich keine oder nur eine reduzierte Übereinstimmung indi ziert , kann ein Fehlerindikator ausgegeben werden .
Box 3040 und Box 3045 entsprechen also einem zweistufigen Ansatz . Zuerst werden in Box 3040 Ergebnis Kandidat mittels des maschinengelernten Algorithmus bestimmt ; die dann gegebenenfalls in Box 3045 korrigiert werden können, basierend auf den Kontextdaten .
In Box 3050 kann anschließend das Steuern des technischphysikalischen Systems basierend auf dem Fehlerindikator ( aus Box 3035 oder gegebenenfalls aus Box 3045 ) und/oder dem geschätzten verborgenen Systemzustand aus Box 3040 erfolgen . Beispielsweise könnten entsprechende Steuerdaten an das technisch-physikalische System gesendet werden .
Zusammenfassend wurden obenstehend Techniken beschrieben, bei denen Kontextdaten im Zusammenhang mit dem Training eines maschinengelernten Algorithmus erzeugt werden . Die Kontextdaten sind indikativ für Bereiche im Eingabevektorraum, die mit sicheren oder unsicheren Vorhersagen des maschinengelernten Algorithmus assoziiert sind . Die Bereiche können zum Beispiel als Delaunay-Triangulierung zwischen Positionen von Eingabevektoren eines Trainingsdatensatzes erzeugt werden . Die Bereiche bilden also Hyperraumvolumen . Jedem Hyperraumvolumen kann als Markierung die Menge der Ausgabeklassen der Beispiele zugeordnet werden, welche die Eckpunkte des Hyperraumvolumens bilden . I st der Abstand aller Punkte zueinander im Eingaberaum kleiner als „a" , so wird zusätzlich das Merkmal „sicher" für die Markierung gesetzt . Das Attribut sicher bei der Markierung bedeutet , dass genau nur die Ausgaben auftreten können, welche an den Beispielen vorliegen, welche das Hyperraumvolumen begrenzen . Andere Ausgaben können wegen der Annahme zu „a" , dass kein doppelter Klassenwechsel auftritt in diesem Fall nicht auf treten .
Selbstverständlich können die Merkmale der vorab beschriebenen Aus führungs formen und Aspekte der Erfindung miteinander kombiniert werden . Insbesondere können die Merkmale nicht nur in den beschriebenen Kombinationen, sondern auch in anderen Kombinationen oder für sich genommen verwendet werden, ohne das Gebiet der Erfindung zu verlassen .

Claims

PATENTANS PRÜCHE
1. Computer-implementiertes Verfahren zum Schätzen eines verborgenen Systemzustands eines technisch-physikalischen Systems mittels eines maschinengelernten Algorithmus, wobei das Verfahren umfasst:
- Erhalten eines Eingabevektors (85, 511, 512, 513, 521, 522, 523, 550) , der Zustandsdaten (81) des technischphysikalischen Systems (95) codiert,
- Laden des maschinengelernten Algorithmus (89) ,
- Laden von vorbestimmten Kontextdaten (50) , die mit dem maschinengelernten Algorithmus (89) assoziiert sind und die eine Vielzahl von Bereichen (72, 571, 572, 573, 574, 771-776) im Vektorraum (71) des Eingabevektors (85, 511, 512, 513, 521, 522, 523, 550) indizieren,
- Bestimmen einer relativen Position des Eingabevektors (85, 511, 512, 513, 521, 522, 523, 550) in Bezug auf die Vielzahl von Bereichen (72, 571, 572, 573, 574, 771-776) , und
- basierend auf der relativen Position, wahlweise Verarbeiten des Eingabevektors im maschinengelernten Algorithmus, um derart den verborgenen Systemzustand zu schätzen, oder Ausgeben eines Fehlerindikators.
2. Computer-implementiertes Verfahren nach Anspruch 1, wobei ein oder mehrere erste Bereiche (571, 572) der Vielzahl von Bereichen mit einer vergleichsweise geringen Unsicherheit des Schätzens des verborgenen Systemzustands assoziiert sind, wobei ein oder mehrere zweite Bereiche (573) der Vielzahl von Bereichen mit einer vergleichsweise hohen Unsicherheit des Schätzens des verborgenen Systemzustands assoziiert sind.
3. Computer-implementiertes Verfahren nach Anspruch 2, wobei die Kontextdaten (50) einen Indikator (751) umfassen, der eine Partitionierung der Vielzahl von Bereichen in die ein oder mehreren ersten Bereiche und die ein oder mehreren zweiten Bereiche indiziert.
4. Computer-implementiertes Verfahren nach Anspruch 2, wobei das Verfahren weiterhin umfasst:
- nach dem Laden der Kontextdaten (50) und basierend auf einer vorgegebenen Bewertungsmetrik, Bestimmen (3020) einer Partitionierung der Vielzahl von Bereichen in die ein oder mehreren ersten Bereiche und in die ein oder mehreren zweiten Bereiche .
5. Computer-implementiertes Verfahren nach Anspruch 4, wobei das Verfahren weiterhin umfasst:
- Parametrieren der Bewertungsmetrik basierend auf einem Betriebsmodus des technisch-physikalischen System, der mit den Zustandsdaten (81) assoziiert ist.
6. Computer-implementiertes Verfahren nach Anspruch 5, wobei die Bewertungsmetrik basierend auf einem Betriebssi- cherheitslevel des technisch-physikalischen Systems (95) , das spezifisch für den Betriebsmodus ist, parametriert wird.
7. Computer-implementiertes Verfahren nach 5 oder 6, wobei die Bewertungsmetrik eine Komponente umfasst, die die Vielzahl von Bereichen basierend auf einer Kantenlänge von Kanten der Bereiche der Vielzahl von Bereichen partitioniert, wobei ein Größenschwellenwert (590) für die Kantenlänge, der zwischen einer Zuordnung zu den mehreren ersten Bereichen und den mehreren zweiten Bereichen entscheidet, basierend auf dem Betriebsmodus gewählt wird.
8. Computer-implementiertes Verfahren nach einem der Ansprüche 4 bis 7, wobei die Bewertungsmetrik eine Komponente umfasst, die die Vielzahl von Bereichen basierend auf einem Abstand (679) zu als unsicher erkannten Positionen (663) im Eingabevektorraum partitioniert.
9. Computer-implementiertes Verfahren nach einem der Ansprüche 4 bis 8, wobei die Bewertungsmetrik mehrere Komponenten umfasst, die hierarchisch geordnet sind.
10. Computer-implementiertes Verfahren nach einem der voranstehenden Ansprüche, wobei die vorbestimmten Kontextdaten (50) einen Indikator (752) umfassen, der für zumindest einige Bereiche der Vielzahl von Bereichen ein oder mehrere erlaubte Ergebnisse für den verborgenen Systemzustand indiziert.
11. Computer-implementiertes Verfahren nach Anspruch 10, wobei das Verfahren weiterhin umfasst:
- Anpassen (3045) des verborgenen Systemzustands, der durch das Verarbeiten des Eingabevektors im maschinengelernten Algorithmus (89) geschätzt wird, basierend den erlaubten Ergebnissen für den Systemzustand für denjenigen Bereich der Vielzahl von Bereichen, in dem der Eingabevektor positioniert ist .
12. Computer-implementiertes Verfahren nach Anspruch 11, wobei das Verfahren weiterhin umfasst:
- Bestimmen eines Abstands der Position des Eingabevektors in Bezug auf Kanten oder Ecken desjenigen Bereichs der Vielzahl von Bereichen, in dem der Eingabevektor positioniert ist, wobei die vorbestimmten Kontextdaten für diesen Bereich, in dem der Eingabevektor positioniert ist , mehrere erlaubte Ergebnisse für den verborgenen Systemzustand indi zieren, wobei unterschiedliche der mehreren erlaubten Ergebnisse in den Kontextdaten mit unterschiedlichen Kanten oder Ecken dieses Bereichs , in dem der Eingabevektor positioniert ist , assoziiert sind, und
- Auswahlen desj enigen erlaubten Ergebnisses der mehreren erlaubten Ergebnisse , das mit den Kanten oder Ecken des Bereichs , in dem der Eingabevektor positioniert ist , assoziiert ist , zu denen die Position des Eingabevektors den geringsten Abstand hat , wobei der verborgene Systemzustand basierend auf dem ausgewählten erlaubten Ergebnis korrigiert wird .
13 . Computer-implementiertes Verfahren nach einem er Ansprüche 11 oder 12 , wobei das Verfahren weiterhin umfasst :
- Vergleichen des verborgenen Systemzustands , der durch das Verarbeiten des Eingabevektors im maschinengelernten Algorithmus geschätzt wird, mit den entsprechenden erlaubten Ergebnissen für den Systemzustand für denj enigen Bereich der Viel zahl von Bereichen, in dem der Eingabevektor positioniert ist , und wahlweise Ausgeben des Fehlerindikators basierend auf dem Vergleichen .
14 . Computer-implementiertes Verfahren nach einem der voranstehenden Ansprüche , wobei die Kontextdaten ein Dreiecksnetz beschreiben, wobei die Bereiche der Viel zahl von Bereichen durch Dreiecks flächen des Dreiecksnetz begrenzt werden .
15 . Computer-implementiertes Verfahren nach einem der voranstehenden Ansprüche , wobei das Verfahren weiterhin umfasst : - Steuern (3050) des technisch-physikalischen Systems (95) basierend auf zumindest einem vom geschätzten verborgenen Systemzustand oder dem Fehlerindikator.
16. Computer-implementiertes Verfahren zum Parametrisieren eines maschinengelernten Algorithmus (89) mittels dessen ein verborgener Systemzustand eines technisch-physikalischen Systems (95) geschätzt werden kann, wobei das Verfahren umfasst:
- Erhalten (3505) eines Trainingsdatensatzes, der mehrere Trainingsdatenpaare von Zustandsdaten des technischphysikalischen Systems (95) codierenden Eingabevektoren (85, 511, 512, 513, 521, 522, 523, 550) und Grundwahrheiten für den verborgenen Systemzustand des technisch-physikalischen Systems (95) umfasst,
- Durchführen (3510) eines Trainings des maschinengelernten Algorithmus (89) basierend auf dem Trainingsdatensatz, um Parameterwerte für den maschinengelernten Algorithmus zu erhalten,
- basierend auf den Eingabevektoren (85, 511, 512, 513, 521, 522, 523, 550) , Bestimmen (3515) einer Vielzahl von Bereichen (72, 571, 572, 573, 574, 771-776) im Vektorraum (71) der Eingabevektoren,
- Erzeugen von Kontextdaten (50) für den maschinengelernten Algorithmus, sodass diese indikativ für die Vielzahl von Bereichen sind, und
- Speichern des maschinengelernten Algorithmus (89) und Speichern der Kontextdaten (50) , die mit dem maschinengelernten Algorithmus (89) assoziiert sind.
17. Computer-implementiertes Verfahren nach Anspruch 16, wobei zumindest einige der Vielzahl von Bereichen zwischen
Positionen der Eingabevektoren im entsprechenden Vektorraum (71) angeordnet sind.
18 . Computer-implementiertes Verfahren nach Anspruch 16 oder 17 , wobei zumindest einige Bereiche der Viel zahl von Bereichen als unsicher erkannte Positionen eines Eingabevektors im entsprechenden Vektorraum umgeben .
19 . Computer-implementiertes Verfahren nach Anspruch 18 , wobei das Verfahren weiterhin umfasst :
- Erkennen der unsichereren Positionen basierend auf einem Verlauf von Klassengrenzen .
20 . Computer-implementiertes Verfahren nach einem der Ansprüche 16 bis 18 , wobei das Verfahren weiterhin umfasst :
- basierend auf einer vorgegebenen Bewertungsmetrik, Bestimmen einer Partitionierung der Viel zahl von Bereichen in erste Bereiche und zweite Bereiche , wobei die ersten Bereiche in Bezug auf die Bewertungsmetrik mit einer geringen Unsicherheit für die Schätzung des verborgenen Systemzustands assoziiert sind, wobei die zweiten Bereiche der Viel zahl von Bereichen in Bezug auf die Bewertungsmetrik mit einer großen Unsicherheit für die Schätzung des verborgenen Systemzustands assoziiert sind, wobei die Kontextdaten indikativ für die Partitionierung der Bereiche sind .
21 . Computer-implementiertes Verfahren nach Anspruch 20 , wobei die Bewertungsmetrik eine Komponente umfasst , die die Viel zahl von Bereichen basierend auf einer Kantenlänge von Kanten der Bereiche der Viel zahl von Bereichen partitioniert .
22 . Computer-implementiertes Verfahren nach Anspruch 20 oder 21 , wobei die Bewertungsmetrik eine Komponente umfasst, die die Bereiche basierend auf einer lokalen Variation der Grundwahrheiten für den verborgenen Systemzustand partitioniert.
23. Computer-implementiertes Verfahren nach einem der Ansprüche 20 bis 22, wobei die Bewertungsmetrik eine Komponente umfasst, die die Bereiche basierend auf einem Abstand (679) zu einer als unsicher erkannten Position (663) im Vektorraum der Eingabevektoren beurteilt.
24. Computer-implementiertes Verfahren nach Anspruch 23, das weiterhin umfasst:
- Erkennen von unsicheren Positionen im Vektorraum der Eingabevektoren basierend auf einem Verlauf von Klassengrenzen .
25. Computer-implementiertes Verfahren nach einem der Ansprüche 16 bis 24, wobei die Bereiche durch Flächen begrenzt werden, die sich im Vektorraum zwischen den Positionen benachbarter Eingangsvektoren erstrecken.
26. Computer-implementiertes Verfahren nach einem der Ansprüche 16 bis 25, wobei das Verfahren weiterhin umfasst:
- Bestimmen der Bereiche (72, 571, 572, 573, 574, 771-776) der Vielzahl von Bereichen (72, 571, 572, 573, 574, 771-776) basierend auf Dreiecksflächen eines Dreiecksnetzes, dessen Knoten durch die Eingabevektoren (85, 511, 512, 513, 521, 522, 523, 550) gebildet werden.
27 . Computer-implementiertes Verfahren nach Anspruch 26 , wobei das Dreiecksnetz durch eine Delaunay-Triangulierung oder eine Min-Max-Triangulierung gebildet wird .
28 . Computer-implementiertes Verfahren einem der Ansprüche 20 bis 24 , sowie nach Anspruch 26 oder 27 , wobei die ein oder mehreren ersten Bereiche nur durch Dreiecks flächen begrenzt werden, die keine Seitenkante aufweisen, die länger als ein durch die Bewertungsmetrik vorgegebener Schwellenwert ist .
29 . Computer-implementiertes Verfahren nach Anspruch 28 , wobei zumindest einer der ein oder mehreren zweiten Bereiche j eweils durch mindestens eine Dreiecks fläche begrenzt wird, die mindestens eine Seitenkante aufweist , die länger als der vorgegebener Schwellenwert ist .
30 . Computer-implementiertes Verfahren nach Anspruch 28 oder 29 , wobei das Verfahren weiterhin umfasst :
- Parametrieren der Bewertungsmetrik, wobei das Paramet- rieren der Bewertungsmetrik umfasst : Bestimmen des vorgegebenen Schwellenwerts basierend auf mindestens einem Kriterium .
31 . Computer-implementiertes Verfahren nach Anspruch 30 , wobei das mindestens eine Kriterium einen minimalen Abstand zwischen zwei unterschiedlichen Eingabevektoren des Trainingsdatensatzes , die mit verschiedenen verborgenen Systemzuständen assoziiert sind, umfasst .
32 . Computer-implementiertes Verfahren nach Anspruch 31 , wobei das Verfahren weiterhin umfasst :
- Plausibilisieren des minimalen Abstands auf Grundlage von ein oder mehreren weiteren Trainingsdatenpaaren, die Eingabevektoren an Positionen aufweisen, die einen Abstand zu ei- ner Position eines Eingabevektors der Trainingsdatenpaare aufweisen, der kleiner als der minimale Abstand ist .
33 . Computer-implementiertes Verfahren nach einem der Ansprüche 30 bis 32 , wobei das mindestens eine Kriterium eine Designvorgabe eines Entwicklungsprozesses des technisch-physikalischen Systems umfasst .
34 . Computer-implementiertes Verfahren nach einem der Ansprüche 30 bis 33 , wobei das mindestens eine Kriterium eine Vorgabe für ein Betriebssicherheitslevel des technisch-physikalischen Systems umfasst .
35 . Computer-implementiertes Verfahren nach einem der Ansprüche 30 bis 34 , wobei das mindestens eine Kriterium Domänenwissen umfasst .
36 . Computer-implementiertes Verfahren nach einem der Ansprüche 20 bis 35 , wobei die Kontextdaten so erzeugt werden, dass diese zumindest für einige Bereiche der Viel zahl von Bereichen indikativ für erlaubte Ergebnisse des verborgenen Systemzustands sind, wobei das Verfahren weiterhin umfasst :
- für j eden der zumindest einigen Bereiche : Bestimmen ( 3516 ) der erlaubten Ergebnisse des verborgenen Systemzustands basierend auf den Grundwahrheiten für den verborgenen Systemzustand, die mit den Knoten der den j eweiligen Bereich begrenzenden Dreiecks flächen des Dreiecksnetzes assoziiert sind .
37 . Computer-implementiertes Verfahren zum Schätzen eines verborgenen Systemzustands eines technisch-physikalischen Systems mittels eines maschinengelernten Algorithmus , wobei das Verfahren umfasst :
- in Abhängigkeit von mindestens einem vorbestimmten Kriterium, wahlweise Erlauben oder Blockieren einer Schätzung des maschinengelernten Algorithmus für den verborgenen Systemzustand für einen Eingabevektor, wobei das mindestens eine vorbestimmte Kriterium eine Position des Eingabevektors im entsprechenden Eingabevektorraum berücksichtigt .
38 . Computer-implementiertes Verfahren nach Anspruch 37 , wobei die Vorhersage blockiert wird, wenn die Position des Eingabevektors einer Extrapolation des maschinengelernten Algorithmus ausgehend von Zustandsdaten des technischphysikalischen Systems , die in einem Trainingsdatensatz für den maschinengelernten Algorithmus beinhaltet sind, entspricht .
39 . Computer-implementiertes Verfahren nach Anspruch 37 oder 38 , wobei die Vorhersage blockiert wird, wenn die Position des Eingabevektors einer Interpolation des maschinengelernten Algorithmus zwischen zwei oder mehr Zustandsdaten des technischphysikalischen Systems , die in einem Trainingsdatensatz für den maschinengelernten Algorithmus beinhaltet sind, entspricht und wenn ein Abstand zwischen den zwei oder mehr Zustandsdaten entsprechenden Positionen im Eingabevektorraum größer als ein vorbestimmter Schwellenwert ist .
40 . Computer-implementiertes Verfahren nach einem der Ansprüche 37 bis 38 , wobei die Vorhersage erlaubt wird, wenn die Position des Eingabevektors einer Interpolation des maschinengelernten Algorithmus zwischen zwei oder mehr Zustandsdaten des technischphysikalischen Systems , die in einem Trainingsdatensatz für den maschinengelernten Algorithmus beinhaltet sind, entspricht und wenn ein Abstand zwischen den zwei oder mehr Zustandsdaten entsprechenden Positionen im Eingabevektorraum kleiner als ein vorbestimmter Schwellenwert ist .
41 . Computer-implementiertes Verfahren nach einem der Ansprüche 37 bis 40 , wobei die Vorhersage blockiert wird, wenn die Position des Eingabevektors einen Mindestabstand ( 679 ) zu Positionen ( 663 ) im Eingabevektorraum, die als unsicher gelabelt sind, unterschreitet .
42 . Computer-implementiertes Verfahren nach einem der Ansprüche 37 bis 41 , wobei das mindestens eine Kriterium mehrere Kriterien umfasst , wobei das Verfahren weiterhin umfasst :
- sequentielles Prüfen der mehreren Kriterien .
43 . Vorrichtung, umfassend mindestens einen Prozessor und einen Speicher, wobei der mindestens eine Prozessor eingerichtet ist , um Programmcode aus dem Speicher zu laden und aus zuführen, wobei der mindestens eine Prozessor eingerichtet ist , um basierend auf dem Programmcode ein Computer-implementiertes Verfahren nach einem der Ansprüche 1 bis 42 aus zuführen .
44 . Computerprogramm, umfassend Programmcode , der von mindestens einem Prozessor geladen und ausgeführt werden kann, wobei der mindestens eine Prozessor basierend auf dem Aus führen des Programmcodes ein Computer-implementiertes Verfahren nach einem der Ansprüche 1 bis 42 aus führt .
EP23768195.2A 2022-09-20 2023-09-05 Sichere steuerung von technisch-physikalischen systemen Pending EP4591244A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102022209898.6A DE102022209898A1 (de) 2022-09-20 2022-09-20 Sichere steuerung von technisch-physikalischen systemen
PCT/EP2023/074296 WO2024061618A1 (de) 2022-09-20 2023-09-05 Sichere steuerung von technisch-physikalischen systemen

Publications (1)

Publication Number Publication Date
EP4591244A1 true EP4591244A1 (de) 2025-07-30

Family

ID=88016609

Family Applications (1)

Application Number Title Priority Date Filing Date
EP23768195.2A Pending EP4591244A1 (de) 2022-09-20 2023-09-05 Sichere steuerung von technisch-physikalischen systemen

Country Status (3)

Country Link
EP (1) EP4591244A1 (de)
DE (1) DE102022209898A1 (de)
WO (1) WO2024061618A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102024203138A1 (de) * 2024-04-05 2025-10-09 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Identifizieren einer Datenlücke in einem Trainingsdatensatz

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9087303B2 (en) * 2012-02-19 2015-07-21 International Business Machines Corporation Classification reliability prediction
DE102016201559A1 (de) * 2016-02-02 2017-08-03 Robert Bosch Gmbh Verfahren und Vorrichtung zum Vermessen eines zu testenden Systems
DE102021200889A1 (de) * 2021-02-01 2022-08-04 Volkswagen Aktiengesellschaft Verfahren zum Schätzen eines Fahrzeugparameters für den Betrieb eines Fahrzeugs
DE102021207613A1 (de) 2021-05-26 2022-12-01 Siemens Mobility GmbH Verfahren zur Qualitätssicherung eines Systems

Also Published As

Publication number Publication date
WO2024061618A1 (de) 2024-03-28
DE102022209898A1 (de) 2024-03-21

Similar Documents

Publication Publication Date Title
DE112017000787T5 (de) Verfahren zum Steuern der Bewegung eines Fahrzeugs und Fahrzeugsteuersystem
DE112020006045T5 (de) Formal sicheres symbolisches bestärkendes lernen anhand von visuellen eingaben
DE102019215902A1 (de) Verfahren zur Bestimmung eines Gütegrades von Daten-Sätzen von Sensoren
DE102019209462A1 (de) Verfahren zur Bestimmung eines Vertrauens-Wertes eines detektierten Objektes
EP4193135A1 (de) Computerimplementiertes verfahren zum bereitstellen eines test-verlaufs zu testender verkehrsszenarien
DE102020128978A1 (de) Trainieren von tiefen neuronalen netzwerken mit synthetischen bildern
EP3961511A1 (de) Ml-basierte automatische erkennung von neuen und relevanten datensätzen
DE102021213118A1 (de) Verfahren und ein system für black-box-universalangriffe mit geringer abfrage
DE102019209463A1 (de) Verfahren zur Bestimmung eines Vertrauenswertes eines Objektes einer Klasse
EP4591244A1 (de) Sichere steuerung von technisch-physikalischen systemen
DE102020127051A1 (de) Verfahren zur Bestimmung von sicherheitskritischen Ausgabewerten mittels einer Datenanalyseeinrichtung für eine technische Entität
EP4000011B1 (de) Komponentenbasierte verarbeitung von eingangsgrössen
WO2024061615A1 (de) Sichere steuerung von technisch-physikalischen systemen
DE102021207613A1 (de) Verfahren zur Qualitätssicherung eines Systems
DE102020104267A1 (de) Computerimplementiertes Regelungs- oder Folgeregelungsverfahren oder Optimierungsverfahren zur Absicherung von Steuerungsalgorithmen einer Regelung und/oder Regelungsalgorithmen
DE102020203135A1 (de) Verfahren zur Qualitätssicherung eines beispielbasierten Systems
DE102023209930A1 (de) Verfahren zum Bewerten der Sicherheit eines hindernisfreien Raums für ein Ego-Objekt während eines bestimmten Zeitraums unter Verwendung eines Free-Space-Gitters
DE102022107820A1 (de) Verfahren und Prozessorschaltung zum Überprüfen einer Plausibilität eines Detektionsergebnisses einer Objekterkennung in einem künstlichen neuronalen Netzwerk sowie Kraftfahrzeug
WO2022248171A1 (de) Verfahren zur qualitätssicherung eines systems
WO2019201586A1 (de) Verfahren, computersystem und computerprogramm zum steuern eines aktors
DE102023209768B3 (de) Verfahren, Recheneinheit und Computerprogramm zur Erstellung eines Messsystems
DE102019130484A1 (de) Verfahren und Vorrichtung zum Anlernen eines Ensembles von neuronalen Netzen
DE102021209090B4 (de) Verfahren zur kontextabhängigen Auswertung eines Fahrzeugzustands und Fahrzeug
DE102023211077A1 (de) Schätzung der überanpassung in einem modell eines computerbasierten maschinenlernmoduls auf einem testdatensatz
DE102023127439A1 (de) Verfahren und System zur Identifikation von Fehlern und Fehlerursachen bei Software-Updates

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20250314

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR

RAP3 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SIEMENS MOBILITY GMBH

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)