Providing a domain model for an industrial system
By extracting hidden features from industrial data locally and using external machine learning models to determine the domain model, the problems of time-consuming data preparation and confidentiality in industrial systems are solved, enabling secure and efficient provision of domain models and reducing development delays and errors.
Patent Information
- Application Number
- CN202110870625.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-07-31
- Filing Date
- 2021-07-30
- Publication Date
- 2026-01-09
- Estimated Expiration
- 2042-01-09
AI Technical Summary
In industrial systems, data preparation is time-consuming, costly, and highly repetitive, making it difficult to automate. Furthermore, due to the confidentiality requirements of classified data, it is difficult to share with third parties, leading to delays and errors in the development of domain-specific applications.
By extracting hidden features from industrial data on the customer's local computer, and using machine learning models to determine the domain model on an external computer, we avoid directly sharing confidential data. We only upload non-confidential hidden features for model training and ranking, thus providing the most suitable domain model.
It enables the safe and efficient provision of domain models for industrial systems, reducing development time, avoiding errors, and ensuring data security and model accuracy.
Smart Images

Figure CN114064605B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present invention relates to a computer-implemented method and a distributed system providing a domain model for an industrial system. BACKGROUND
[0002] Data preparation is one of the first steps in the process of developing domain specific applications across all branches of industry. Although data preparation seems to vary mainly based on factors such as domain, source system or data format, most of the work is actually repetitive, especially in terms of data modeling and data integration.
[0003] This leads to several problems. For example, due to the need for both domain expertise and data / knowledge engineering expertise, a huge effort is invested in data preparation activities. Repetitive work by writing a large number of scripts with overlapping code in extract-transform-load (ETL) activities is also common result of data preparation. Further, different data formats and storage systems have to be understood as well. Moreover, it is difficult for inexperienced users to perform these tasks, thereby leading to incorrect data preparation practices, which are often discovered very late, further leading to significant delays in the development of domain specific applications.
[0004] Overall, apart from being error prone and repetitive, data preparation is also a cost intensive and time consuming process. This makes it one of the major bottlenecks in developing data driven applications for various industries and enterprises.
[0005] Therefore, automation of data modeling is desirable and would significantly reduce the time required to develop domain specific applications, while at the same time avoiding errors due to lack of domain / system knowledge or programming proficiency. However, industrial data including details of processes within an industrial system is often confidential. Therefore, customers usually do not want to share such confidential data with third parties. Thus, there is a need to securely transfer information including all technical related aspects of an industrial system to a service provider providing a domain model, such that the service provider or any third party cannot infer the processes within the industrial system (without reverse engineering based on the provided information). SUMMARY
[0006] It is an object of the present invention to overcome or at least alleviate these problems by providing a computer-implemented method providing a domain model for an industrial system, as well as a corresponding computer program, computer readable medium and data processing system, and a neural network (NN) and a distributed system for providing a domain model for an industrial system. Further refinements of the invention are provided.
[0007] According to a first aspect of the present invention, a computer-implemented method for providing a domain model for an industrial system comprises the following steps:
[0008] - locally extracting hidden features from industrial data of an industrial system by means of a local application executing on a local computer of the customer,
[0009] - uploading the hidden features to an external computer of a service provider,
[0010] - externally determining a domain model for the industrial system from an industrial model library on the external computer based on the uploaded hidden features by means of an external algorithm comprising at least one machine learning model (MLM) executing on the external computer,
[0011] - providing the determined domain model for the industrial system to the customer,
[0012] the at least one MLM having been trained with respect to ranking the most suitable domain model for an industrial system based on hidden features of the respective industrial system. The most suitable domain model represents all relevant technical aspects of the respective industrial system.
[0013] According to a second aspect of the present application, a computer program comprises instructions which, when the program is executed by a computer, cause the computer to carry out the steps of the method according to the first aspect of the present application.
[0014] According to a third aspect of the present application, a computer-readable medium has stored thereon the computer program according to the second aspect of the present application.
[0015] According to a fourth aspect of the present application, a data processing system comprises means for carrying out the steps of the method according to the first aspect of the present application.
[0016] According to a fifth aspect of the present application, a distributed system for providing a domain model for an industrial system can particularly be configured to perform the computer-implemented method according to the first aspect of the present application and comprises at least one local computer of at least one customer, an external computer of a service provider and at least one data connection between the at least one local computer and the external computer. The at least one local computer is configured to execute a local application. The external computer is configured to execute an external application comprising at least one machine learning model (MLM). The at least one data connection is configured to upload hidden features from the local computer to the external computer and to provide a domain model from the external computer to the at least one customer. The at least one local application is configured to extract the hidden features locally from industrial data of the industrial system. The at least one external application is configured to determine the domain model for the industrial system externally from a library of industrial models on the external computer based on the hidden features uploaded from the at least one local computer via the at least one data connection. The at least one local layer and the at least one MLM have been trained with respect to ranking the most suitable domain model for an industrial system based on hidden features of the respective industrial system. The most suitable domain model (DM) represents all relevant technical aspects of the respective industrial system.
[0017] Unless otherwise indicated in the following description, the terms "performing", "computing", "computer-aided computing", "determining", "generating", "configuring", "reconfiguring" and the like preferably refer to an action, process or processing step of changing or generating data or transforming data into other data, whereby data is a specific physical quantity or can be represented or presented with a specific physical quantity. In particular, the term "computer" is to be interpreted as broadly as possible to cover all electronic devices with data processing properties. Thus, a computer can be, for example, a personal computer (PC), a server, a programmable logic controller (PLC), a handheld computer system, a pocket PC device, a mobile telephone, a smartphone and other communication devices which are capable of processing data by means of a processor and other electronic devices for data processing.
[0018] The at least one MLM is a model based on a machine learning algorithm (MLA). MLAs are algorithms that automatically improve performance through experience or training. They build models based on sample data (called training data or training samples) in order to make predictions or decisions without explicit programming for this purpose. Machine learning (ML) involves creating a model that is trained on some training data and can then process input data to make predictions. MLAs can implement artificial neural networks (ANN or just neural networks NN), decision trees, support vector machines (SVM), regression analysis, Bayesian networks, genetic algorithms, etc.
[0019] For example, (A)NNs are systems, particularly computational systems, inspired by biological neural networks that constitute animal brains. ANNs typically "learn" to perform a task by considering (labeled) examples or training data, without being designed with any task-specific rules. During an initial learning or training phase, ANNs automatically generate identifying characteristics from the (labeled) training data. ANNs are composed of a collection of connected nodes, called artificial neurons, which loosely model neurons in biological brains. Each connection (synapse in a biological brain) can transmit a signal from one node to another. A node that receives a signal can process it and then send a signal to subsequent neurons connected to it. In a common ANN implementation, the signal at a connection between nodes is a real number (e.g., 0...1), and the output of each artificial neuron is computed as some non-linear function of the sum of its inputs (from other nodes). The connections between nodes are called "edges." The edges in an ANN can each have a weight that is adjusted during the training of the ANN. The weight increases or decreases the strength of the signal at the corresponding edge. Nodes can each have a threshold value, such that the signal is only sent if the aggregate signal exceeds the threshold. Typically, nodes are aggregated into layers. Different layers can perform different kinds of transformations on their inputs. The signal can travel from a first or input layer to a last or output layer after passing through the layers multiple times.
[0020] In other words, (A)NNs are networks of elemental units that accept inputs, so-called nodes or artificial neurons. After receiving inputs, nodes change their internal state (activation) according to the inputs and produce outputs depending on the inputs and the activation. Networks are formed by connecting outputs of certain nodes to inputs of other nodes, forming a directed weighted graph. The weights and the function that computes the activation of each node can be modified during an initial learning / training, governed by a learning rule or paradigm.
[0021] A node that receives inputs from at least one precursor neuron is composed of the following components: an activation; a node state that depends on a discrete time parameter; optionally, a threshold that remains fixed unless changed by a learning / training function; an activation function that computes a new activation and a net input at a given time (e.g., a hyperbolic tangent function, a sigmoid function, a softmax function, a rectified function, etc.); and an output function that computes an output from the activation (often the output function is the identity function). An important feature of the activation function is that it provides a smooth transition when the input value changes, i.e., small changes in the input produce small changes in the output.
[0022] The input nodes have no predecessor and act as input interface for the whole ANN. Similarly, the output nodes have no successor and thus act as output interface for the whole ANN. The ANN consists of edges / connections, each of which passes the output of one node (predecessor) to the input of another, successor node. Additionally, the edges can have a bias term added to the total weighted sum of inputs to act as a threshold value for a shifted activation function. The propagation function is computed from the output of the previous node (predecessor) to the input of the successor node (successor) and can include a bias value.
[0023] A deep NN comprises more than one layer, preferably more than four layers, more preferably more than seven layers, and most preferably ten or more layers. Each layer can comprise several neurons or nodes. Preferably, each layer can contain 10 or more, more preferably 50 or more, and most preferably 100 or more neurons.
[0024] The core objective of an MLA (i.e. a learner) is to generalize from its experience. In this context, generalization is the ability of the MLA to perform accurately on new, unseen examples / tasks (i.e. input data) after having experienced one or more learning datasets. The training examples of a training dataset come from some usually unknown probability distribution (thought to represent the space of occurrences), and the learner / MLA has to build a general model about this space that enables it to produce sufficiently accurate predictions in new situations. The type of machine learning algorithm differs in their approach, the type of data they input and output, and the type of task or problem they aim to solve.
[0025] In particular, the learning or more precisely the training rules or paradigms can be algorithms that modify the parameters of the respective MLA in order to produce advantageous outputs for given inputs of the MLA. This training typically amounts to modifying the scalable parameters of the MLA, e.g. the weights and thresholds of the variables within an ANN. Given a particular task to be solved and a class of functions, learning means finding a function from this class that solves the task in some optimal sense using a set of observations. This requires defining a cost function such that for the optimal solution the cost is minimal and no other solution has a cost smaller than the cost of the optimal solution. The cost function is an important concept in learning because it is a measure of how far a particular solution is from the optimal solution of the problem to be solved. Learning algorithms search the entire solution space to find a function with the smallest possible cost. For applications where the solution depends on the data, the cost must be a function of the observations, otherwise the model will be irrelevant to the data. It is often defined as a statistical quantity that can only be approximated. Arbitrary cost functions can be defined, however, specific cost functions can be used either because they have desirable properties (e.g. convexity) or because they naturally arise from the particular formulation of the problem.
[0026] For example, an ANN can be discriminatively trained using a standard backpropagation algorithm. Backpropagation is a method of computing the gradient of a loss function (producing a cost associated with a given state) with respect to weights in an ANN. Weight updates for backpropagation can be done via stochastic gradient descent. The choice of cost function depends on factors such as the type of learning (e.g., supervised, unsupervised, reinforcement, etc.) and the activation function. Typically, the activation function and cost function are the softmax function and cross-entropy function, respectively.
[0027] In other words, training an ANN essentially means selecting a model (or, in a Bayesian framework, determining a distribution over the set of allowed models) from a set of allowed models that minimizes the cost. Gradient descent in some form is typically employed, using backpropagation to compute the actual gradient. This is achieved by simply taking the derivative of the cost function with respect to the network parameters, and then changing those parameters in the direction of the gradient. Backpropagation training algorithms can be classified into three categories: steepest descent (with variable learning rate and momentum, resilient backpropagation), quasi-Newton (Broyden-Fletcher-Goldfarb-Shanno, one-step secant), Levenberg-Marquardt, and conjugate gradient (Fletcher-Reeves update, Powell-Beale restart, scaled conjugate gradient).
[0028] Common training paradigms include, for example, supervised learning, unsupervised learning, and reinforcement learning.
[0029] Supervised learning algorithms construct a mathematical model of a dataset that contains both input and desired output (label). The training data includes a set of training examples. Each training example has one or more inputs and a desired output, also called a supervisory signal. In the mathematical model, each training example is represented by an array or vector (sometimes called a feature vector), and the training data is represented by a matrix. Through iterative optimization of an objective function (L), a supervised learning algorithm learns a function that can be used to predict the output associated with a new input. The optimal function will allow the algorithm to correctly determine the output for inputs that are not part of the training data. Supervised learning uses a set of example pairs, and the goal is to find a function that matches the examples in the allowed class of functions. In other words, the mapping implied by the data is inferred; the cost function relates to the mismatch between the model (e.g., ANN) and the mapping of the data, and it implicitly contains prior knowledge about the problem domain. The cost can be the mean squared error, which attempts to minimize the average variance between the output of the MLA / ANN and the target values on all example pairs. For example, for a class of ANNs called multilayer perceptrons (MLPs), gradient descent is used to minimize the cost, resulting in the backpropagation algorithm for training ANNs.
[0030] Unsupervised learning algorithms take a dataset that contains only inputs and find structure in the data, such as grouping or clustering of data points. Thus, the algorithm learns from test data that has not been labeled, classified, or categorized. Rather than responding to feedback, unsupervised learning algorithms identify commonalities in the data and react based on the presence or absence of such commonalities in each new piece of data. In unsupervised learning, given some data, a cost function is minimized that can be any function of the data and the output of the MLA / ANN. The cost function depends on the task and any prior assumptions (e.g., implicit properties or parameters of the model, observed variables, etc.).
[0031] Reinforcement learning is a field of machine learning that deals with the concept of how a software agent should act in an environment in order to maximize some cumulative reward. In machine learning, the environment is typically represented as a Markov Decision Process (MDP). Reinforcement learning algorithms do not assume knowledge of the exact mathematical model of the MDP, but are used when the exact model is not available. For example, reinforcement learning algorithms are used for autonomous vehicles or learning to play games against a human opponent. Like reinforcement learning, data is not typically given, but is generated by the interaction of the agent with the environment. At each time point, the agent performs an action, and the environment generates an observation and an instantaneous cost according to some (typically unknown) dynamics. The goal is to discover a policy for selecting actions that minimizes some long-term cost measure, e.g., the expected cumulative cost. The environment dynamics and the long-term cost of each policy are typically unknown, but can also be estimated. The environment is typically modeled as an MDP with the following probability distributions over states and actions: an instantaneous cost distribution, an observation distribution, and a transition, while a policy is defined as a conditional distribution over actions given an observation. Together, these define a Markov chain (MC). The goal is to discover a policy that minimizes the cost (i.e., the MC).
[0032] According to the present invention, the local algorithm is executed on a local computer of a customer and the external algorithm comprising at least one MLM is executed on an external computer of a service provider. The local application and the external application can be regarded as a joint algorithm and comprise at least one input layer and at least one output layer. The at least one input layer of the joint algorithm can be configured to receive the industrial data of the industrial system. The at least one output layer of the joint algorithm can be configured to output the derived domain model of the industrial system.
[0033] The joint algorithm comprising the local application and the at least one external application with the at least one MLM can have been jointly trained (end-to-end) with the training sets of training industrial data and the corresponding rankings of training domain models as ground truth. The training domain models are considered to be the most suitable domain models for the respective industrial system, and the respective rankings give labels to train the joint algorithm (to update the weight / scaleable parameters of the MLM(s) of the joint algorithm). In particular, each training set can comprise industrial data of a real industrial system or industrial data of a model of an industrial system as training industrial data, and a corresponding training data ranking of a domain model derived by a system expert, a domain expert, and a data expert as the most suitable domain model based on the respective industrial system from which the respective training industrial data is derived. In particular, the training of the joint algorithm can be performed on one computer, wherein the at least one local application and the at least one external application comprising the at least one MLM have been executed on this one computer. The joint application in training can further comprise the at least one input layer and the at least one output layer of the joint application. After completion of the training, the (trained) local application is provided to a local computer of a customer, and the at least one trained external application is provided to an external computer of a service provider.
[0034] In the context of the present invention, the most suitable domain model of an industrial system is a domain model representing all relevant technical aspects of the respective industrial system. The relevant technical aspects are in particular technical, physical, or chemical quantities necessary to describe the industrial system or the at least some aspects of the industrial system. The relevant technical aspects can comprise quantities such as temperature, positioning, velocity, acceleration, force, pressure, pH, density, state, etc. In other words, all relevant technical, physical, or chemical quantities can be processed in the domain-specific application of the industrial system based on the most suitable domain model. At the same time, the most suitable domain model comprises only necessary data structures and hierarchies, but not unused or redundant data structures and hierarchies.
[0035] The industrial data and the training industrial data can comprise all relevant technical aspects of the industrial system, respectively. Different physical variables can be comprised in the industrial data, like temperature, force, pressure, positioning, velocity, acceleration, voltage, current, power, flow rate, light intensity, discrete state of technical components, etc. In particular, the industrial data can be confidential industrial data containing confidential information about the process within the respective industrial system.
[0036] The local application can comprise at least one input layer and at least one output layer. The at least one input layer of the local algorithm corresponds to the at least one input layer of the joint algorithm. In particular, the local algorithm can be a software application using statistical methods for calculating hidden features (i.e. latent features) from the input industrial data. Examples of hidden features include: (1) character distribution; (2) entropy of values; (3) proportion of missing values or special characters; (4) inferred data type; (5) features specific to the inferred data type (e.g. for numerical data type, these can be median, mean, minimum, maximum).
[0037] The local algorithm is executed on a local computer of the customer. On the customer side, the industrial data, which can be confidential, is provided to the local algorithm. The local algorithm extracts hidden features from the provided (confidential) industrial data. Thus, the (confidential) industrial data is not provided to any third party, but instead is calculated locally into hidden features.
[0038] The external algorithm comprises at least one MLM and can further comprise at least one input layer and at least one output layer. The at least one output layer of the external algorithm corresponds to the at least one output layer of the joint algorithm. In particular, the at least one MLM can comprise 1 to 100 external layers, 1 to 10 input layers and 1 to 10 output layers (e.g. of a neural network (NN) or another type of MLM). Each layer can comprise 2 to 1000 nodes. The at least one external layer as well as the at least one input layer of the external algorithm and the at least one output layer of the external algorithm can be fully connected layers.
[0039] In particular, the at least one MLM as part of the external algorithm executed externally is configured to extract from all domain models in the industrial model library stored on an external computer for the industrial system based on the hidden features extracted by the local application a ranking of the most suitable domain models and thereby extract the optimal domain model. The extracted optimal / highest ranked domain model represents a data structure and hierarchy covering all relevant technical aspects of the respective industrial system. The domain model is determined based on the hidden data and not the (confidential) industrial data itself.
[0040] The external algorithm is executed on an external computer of the service provider. On the service provider side, only the hidden features and not the industrial data (which can be confidential) are provided to the external algorithm, in particular to the at least one MLM. The external algorithm / at least one MLM determines from the industrial model library based on the provided (non-confidential) hidden features the optimal domain model for the industrial system, or more precisely a ranking of the most suitable domain models. The (confidential) industrial data is not provided to the third party (i.e. the service provider) but only the (non-confidential) hidden state in order to derive the optimal domain model for the industrial system.
[0041] With the present application, confidential information such as industrial data of an industrial system is not provided from a customer to a service provider. Instead, only non-confidential data in the form of hidden features is uploaded from the customer to the service provider. Thus, no unauthorized person can obtain confidential information about the industrial system or the processes within the industrial system.
[0042] According to a refinement of the present application, the external algorithm comprises a plurality of MLMs stored in or accessible by an external computer in a Machine Learning Model Library (MLML). The step of externally determining a domain model comprises the steps of:
[0043] - selecting the most suitable MLMs from the MLML by finding the sets of features associated with the MLMs that are most similar to the uploaded hidden features based on the uploaded hidden features,
[0044] - ranking the selected most suitable MLMs according to their suitability based on similarity of sets of features,
[0045] - ranking the most suitable domain models of the industrial system based on the uploaded hidden features by the ranked selected most suitable MLMs.
[0046] The MLML is a repository of MLMs. The MLML can be continuously updated with new MLMs. The MLML is stored on or at least accessible from an external computer.
[0047] The most suitable MLMs for the uploaded hidden features are those of the MLML that have most features in common with the uploaded hidden features. Thus, the most suitable MLMs can be selected by finding the sets of features associated with the MLMs that are most similar to the uploaded hidden features. With the selected most suitable MLMs for the uploaded hidden features, the uploaded hidden features can be projected into a ranking of the most suitable domain models of the respective industrial system.
[0048] The selected most suitable MLMs are ranked before the projection of the hidden features to rank the domain models stored in the industrial model library. The ranking of the selected most suitable MLMs is derived from their suitability based on similarity of sets of features. Suitability describes the degree or level of similarity between the uploaded hidden features and the features of the selected most suitable MLMs.
[0049] The most suitable domain model of the industrial model library for the respective industrial system is ranked by projecting the uploaded hidden features with the ranked, selected most suitable MLMs, i.e. the top 10 or top 5 or top 3 or only the top ranked, selected most suitable MLMs. The ranking of the most suitable domain model is based on a weighted output, i.e. the prediction ranking of the ranked, selected most suitable MLMs, i.e. the top 10 or top 5 or top 3 or only the top ranked, selected most suitable MLMs (e.g. the weight of the most suitable domain model predicted by the third ranked, selected most suitable MLM is less than the weight of the second ranked, selected most suitable MLM, the weight of the most suitable domain model predicted by the second ranked, selected most suitable MLM is less than the weight of the first ranked, selected most suitable MLM).
[0050] Thus, the optimal domain model can be determined in a specific and reliable way.
[0051] According to a refinement of the application, the external algorithm comprises a generic MLM. In the step of selecting the most suitable MLM, the most suitable MLM is further selected by adapting the generic MLM based on the uploaded hidden features.
[0052] In addition or instead of selecting an MLM stored in the MLML, the generic MLM of the external algorithm can be adapted to the uploaded hidden features. Thereafter, the adapted generic MLM and additionally or alternatively the most suitable MLM selected from the MLML are ranked as described above.
[0053] The adaptation of the generic MLM provides a particularly efficient way of selecting the most suitable MLM.
[0054] According to a refinement of the application, the method further comprises at least the following initial steps:
[0055] - downloading the local application from an external source to the local computer.
[0056] The external source can be a repository or a database. The external source can be owned by a service provider. The local application can be downloaded from the external source to the local computer of the customer. Likewise, the external application can be provided from the external source to the external computer of the service provider, e.g. after training of the joint application.
[0057] By simply downloading and providing the (trained) application, respectively, the prerequisites for providing the domain model of the industrial system can be distributed and set up very easily.
[0058] According to a refinement of the application, the method further comprises the following steps:
[0059] - uploading the provided domain model (together with information about the industrial system) to an external computer,
[0060] - storing the uploaded domain model and information about the industrial system in an industrial model library on the external computer.
[0061] According to a further refinement of the application, the at least one local computer and the at least one data connection are further configured to forward and upload the provided domain model together with information about the industrial system to an external computer. The external computer is further configured to store the uploaded domain model and information about the industrial system in an industrial model library on the external computer.
[0062] The customer can choose to share the provided domain model of the industrial system and further information about the industrial system, like the domain, type, structure, process and even industrial data, etc., with the service provider.
[0063] With the shared information about the industrial system and the domain model, the joint application or at least the external application comprising the at least one MLM can be further trained (fine-tuned) and the derivation of the most suitable domain model can be refined.
[0064] According to a refinement of the application, the method further comprises the following steps:
[0065] - adapting the determined domain model based on feedback of a domain expert on the determined domain model.
[0066] The determined domain model is adapted (i.e. extended, reworked, etc.) based on feedback of a domain expert before providing the domain model to the customer.
[0067] Thereby, a quality control and plausibility check of the automatically determined domain model is included. This increases the functionality and operational reliability of the provided domain model. BRIEF DESCRIPTION OF DRAWINGS
[0068] The application and its technical field are subsequently explained in further detail by means of exemplary embodiments shown in the attached drawings. The exemplary embodiments merely serve to better understand the application and are in no case to be interpreted as limiting the scope of the application. In particular, aspects of the subject matter described in the drawings can be extracted and combined with other components and findings of the present description or the other figures, if not explicitly described differently. Identical reference signs refer to identical objects, such that an explanation from other figures can be supplemented:
[0069] Figure 1 schematic flowchart of a computer-implemented method of providing a domain model of an industrial system according to the first aspect of the application and a computer program according to the second aspect of the application is shown;
[0070] Figure 2 a schematic diagram of a joint algorithm comprising a local algorithm and an external algorithm of the present invention is shown;
[0071] Figure 3 a schematic diagram of a distributed system for providing a domain model of an industrial system according to the fifth aspect of the present invention is shown;
[0072] Figure 4 a schematic diagram of a computer readable medium according to the third aspect of the present invention is shown;
[0073] Figure 5 a schematic diagram of a data processing system according to the fourth aspect of the present invention is shown. DETAILED DESCRIPTION
[0074] In Figure 1 In particular, a computer-implemented method of providing a domain model DM of an industrial system 1 according to the first aspect of the present invention and a computer program according to the second aspect of the present invention are schematically depicted.
[0075] The computer-implemented method comprises an optional initial step of downloading I1 a local application LA and providing I2 an external application EA. The method further comprises the steps of locally extracting S1 hidden features HF, uploading S2 the hidden features HF, externally determining S3 a domain model DM, optionally adapting S4 the determined domain model DM, providing S5 the domain model DM, optionally uploading S6 and optionally storing S7.
[0076] In the optional initial step I1 of downloading a local application LA, the (trained) local application LA is downloaded from an external source 21 of a service provider to a local computer 10 of a customer.
[0077] In the optional initial step I2 of providing an external application EA, a trained external application comprising at least one trained machine learning model (MLM) is provided from an external source 21 to an external computer 20 of a service provider.
[0078] In the step S1 of locally extracting hidden features HF, hidden features HF are extracted from industrial data ID of the industrial system 1. The industrial data ID can be received by the local computer 10 directly from the industrial system 1 (e.g. a control unit of the industrial system 1). The hidden features HF are extracted from the industrial data ID by a (downloaded) local algorithm LA executed on the local computer 10. The local algorithm LA comprises a statistical method SM and at least one input layer for receiving the industrial data ID and at least one output layer for outputting the extracted hidden features HD.
[0079] In the step S2 of uploading hidden features HF, the hidden features HF are uploaded to the external computer 20.
[0080] In a step S3 of determining the domain model DM externally, the domain model DM of the industrial system 1 is determined based on the hidden features HF extracted by the local layer. The (provided) external algorithm EA executed on the external computer 20 determines the domain model DM from the industrial model library IML based on the uploaded hidden features HF. Further, the external algorithm EA comprises at least one MLM and optionally at least one input layer for receiving the uploaded hidden features HF, and at least one output layer for outputting the determined domain model DM of the industrial system 1. The optimal domain model DM is determined based on a ranking of the most suitable domain models of the industrial system 1, which is predicted by the external algorithm EA based on the uploaded hidden features HF.
[0081] In particular, in the step S3 of determining the domain model DM externally, first, the most suitable MLM is selected from the MLMs stored in the library of machine learning models (MLML) of the external computer based on the highest similarity between the (input) feature set of the MLM and the uploaded hidden features HF, second, the selected MLMs are ranked according to suitability, which is based on the feature set similarity between the (input) feature set of the selected most suitable MLM and the uploaded hidden features HF, and third, the most suitable domain model DM of the industrial system 1 is ranked by the ranked, selected most suitable MLM based on the uploaded hidden features HF.
[0082] In an optional step S4 of adapting the determined domain model DM, the determined domain model DM is adapted (extended, reworked, etc.) based on feedback of a domain expert on the determined domain model DM. The automatically determined domain model DM is analyzed and reviewed by a domain expert (system engineer, data engineer, etc.) and, if necessary, adapted.
[0083] In a step S5 of providing the determined domain model (DM), the determined and optionally adapted domain model DM for the industrial system 1 is provided to the customer. The domain model DM is here for example downloaded to the local computer 10 of the customer.
[0084] In an optional step S6 of uploading, the provided domain model DM is uploaded to the external computer 20 together with information IIS about the industrial system 1. The information ISS about the industrial system 1 can include information about the domain, type, structure, process, and even industrial data of the industrial system 1.
[0085] In an optional step S7, the uploaded provided domain model DM is stored in the industrial model library IML on the external computer 20 together with the information IIS about the industrial system 1. The stored domain model DM together with the corresponding information ISS about the industrial system 1 can be used as a further training set for the refinement training of at least external applications comprising the at least one MLM.
[0086] According to the present application, no confidential data like the industrial data ID of the industrial system 1 leave the local computer 10 of the customer without consent, but only the non-confidential hidden features HF. Further, it is not possible, or at least very time consuming and computationally expensive, to reconstruct the industrial data ID from the hidden features HF. Thus, the method for providing a domain model according to the present application is very secure.
[0087] In Figure 2 , an embodiment of a joint algorithm JA for providing a domain model DM of an industrial system 1 according to the present application is schematically depicted. The joint algorithm JA comprises two algorithms, a local algorithm LA and an external algorithm EA. The local algorithm LA is executed on the local computer 10 (see Figure 1 and 3 ) of the customer. The external algorithm EA is executed on the external computer 20 (see Figure 1 and 3 ) of the service provider.
[0088] The local algorithm LA comprises an input layer IL and an output layer OL and a statistical method for computing hidden features HF. The input layer IL of the local algorithm LA corresponds to the input layer of the joint algorithm JA.
[0089] The external algorithm EA comprises an input layer IL and an output layer OL and n trained external layers EL.1...EL.n of at least one MLM, e.g. at least one neural network (NN). The output layer OL of the external algorithm EA corresponds to the output layer of the joint algorithm JA. The input layer IL, the output layer OL and the external layers EL of the external algorithm EA are fully connected layers.
[0090] The industrial data ID of the industrial system 10 (see Figure 1 and 3 ) are forwarded to the input layer IL of the local algorithm LA. The local algorithm LA extracts, in particular by means of its statistical method, hidden features HF from the industrial data ID.
[0091] The hidden features HF extracted from the industrial data ID are forwarded from the output layer OL of the local algorithm LA to the input layer IL of the external algorithm EA.
[0092] The external application EA determines a ranking of the most suitable domain model DM from the IML industrial model library, i.e. based on the hidden features HF, in particular by means of its n trained external layers EL to derive the optimal domain model DM. The determined ranking or more precisely the optimal domain model DM corresponds to the output at the output layer OL of the external application EA.
[0093] The joint application, in particular its local application LA and its external application comprising at least one MLM, is trained end-to-end using a training set of training industrial data and a training ranking of training domain models. The used training domain models represent the most suitable domain models of the respective industrial system the training industrial data originates from. The optimized domain model DM encompasses all technically relevant aspects of the respective industrial system and only includes necessary data structures and hierarchies without redundant data structures and hierarchies.
[0094] In Figure 3 , an embodiment of a distributed system 2 for providing a domain model DM of an industrial system 1 according to the fifth aspect of the present application is schematically depicted. The distributed system 2 comprises at least one (here exemplarily one) local computer 10 of at least one customer, an external computer 20 of a service provider and a (first) data connection 30.
[0095] The at least one local computer 10 and the external computer 20 each can be a personal computer (PC), a laptop, a tablet, a server, a distributed system (e.g. a cloud system) or the like. The at least one local computer 10 and the external computer 20 each comprise a central processing unit CPU, a memory with a random access memory RAM and a non-volatile memory MEM (e.g. a hard disk), a human interface device HID (e.g. a keyboard, a mouse, a touch screen or the like) and an output device MON (e.g. a monitor, a printer, a loudspeaker or the like). The external computer 20 additionally comprises an industrial model library IML. The CPU, the RAM, the HID and the MON are communicatively connected via a data bus. The RAM and the MEM are communicatively connected with the IML via a further data bus.
[0096] The local computer 10 and the external computer 20 are communicatively coupled by the data connection 30. The local computer 10 executes a local application LA (see Figure 2 ) and receives industrial data ID from the industrial system 1 via a second data connection 35. The external computer 20 executes an external application EA (see Figure 2 ) and receives the hidden features HF extracted by the local application LA on the local computer 10 via the data connection 30. The external application EA on the external computer 20 determines a domain model DM of the industrial system 1 and provides the domain model DM to the local computer 10 of the customer via the data connection 30.
[0097] In Figure 4 , an embodiment of a computer readable medium 40 according to the third aspect of the application is schematically depicted. Here, exemplarily, a computer readable storage disk 40, like a compact disk (CD), a digital video disk (DVD), a high definition DVD (HD DVD) or a Blu-ray disk (BD), has stored thereon a computer program according to the second aspect of the application and as schematically shown in Figure 1 . However, the computer readable medium can also be a data storage device, like a magnetic storage device / memory (e.g. core memory, magnetic tape, magnetic card, magnetic strip, bubble memory, drum memory, hard disk drive, floppy disk or removable storage device), an optical storage device / memory (e.g. holographic memory, optical tape, Tesa tape, laser disk, Phasewriter (Phasewriter Dual, PD) or Ultra Density Optical (UDO)), a magneto-optical storage device / memory (e.g. mini disk or magneto-optical disk (MO disk)), a volatile semiconductor / solid state memory (e.g. random access memory (RAM), dynamic RAM (DRAM) or static RAM (SRAM)) or a non-volatile semiconductor / solid state memory (e.g. read only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), flash EEPROM (e.g. USB stick), ferroelectric RAM (FRAM), magnetoresistive RAM (MRAM) or phase change RAM).
[0098] In Figure 5 , an embodiment of a data processing system 50 according to the fourth aspect of the application is schematically depicted. The data processing system 50 can be a personal computer (PC), a laptop, a tablet, a server, a distributed system (e.g. a cloud system) or the like. The data processing system 50 comprises a central processing unit (CPU) 51, a memory with a random access memory (RAM) 52 and a non-volatile memory (MEM, e.g. a hard disk) 53, a human interface device (HID, e.g. a keyboard, a mouse, a touchscreen or the like) 54 and an output device (MON, e.g. a monitor, a printer, a loudspeaker or the like) 55. The CPU 51, the RAM 52, the HID 54 and the MON 55 are communicatively connected via a data bus. The RAM 52 and the MEM 53 are communicatively connected via a further data bus. A computer program according to the second aspect of the application and as schematically depicted in Figure 1 may be loaded from the MEM 53 or another computer readable medium 40 into the RAM 52. According to the computer program, the CPU performs the first aspect of the application and as schematically depicted in Figure 1The steps of the computer-implemented method are schematically depicted in the middle. The execution can be initiated and controlled by the user via the HID 54. The status and / or the result of the executed computer program can be indicated to the user by the MON 55. The result of the executed computer program can be permanently stored on the non-volatile MEM 53 or on another computer-readable medium.
[0099] In particular, the CPU 51 and the RAM 52 for executing the computer program can comprise several CPUs 51 and several RAMs 52, e.g. in a computing cluster or a cloud system. The HID 54 and the MON 55 for controlling the execution of the computer program can consist of different data processing systems, like terminals (e.g. a cloud system) which are communicatively connected to the data processing system 50.
[0100] While specific embodiments have been illustrated and described herein, it will be appreciated that various alternative and / or equivalent implementations can be made by those skilled in the art. It will be appreciated that one or more exemplary embodiments are merely examples, and are not intended to limit scope, applicability or configuration in any way. Rather, the above description and drawings should be regarded as illustrative in nature and it will be recognized that various modifications can be made by those skilled in the art to the functions and / or arrangement of the elements without departing from the scope of the claims and their legal equivalents. In general, the application is intended to cover any adaptations or variations of the specific embodiments discussed herein.
[0101] In the foregoing detailed description, various features are grouped together in one or more examples for the purpose of streamlining the disclosure. This description is intended to be read in connection with the accompanying drawings and is merely descriptive of illustrative embodiments. It is the intent of the inventors that variations and / or modifications be made to the foregoing detailed description, immediately following detailed description and / or examples, and also to the conceptual aspects of the embodiments described herein, as two of skill in the art would appreciate. Only exemplary embodiments are described herein and variations and modifications are intended to be included within the scope of the disclosure.
[0102] The specific terminology used in the foregoing description is intended to provide a thorough understanding of the invention. However, it will be apparent to those skilled in the art, based on the description provided herein, that specific details are not required to practice the invention. Therefore, for purposes of illustration and description, the foregoing description of specific embodiments of the invention is presented. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed; obviously, many modifications and variations are possible in light of the foregoing teachings. These embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the art to best utilize the invention and its various embodiments with various modifications suitable for the intended particular use. Throughout the description, the terms “comprising” and “wherein” are used as concise equivalents to the corresponding terms “including” and “having,” respectively. Furthermore, the terms “first,” “second,” and “third,” etc., are used merely as labels and are not intended to impose numerical requirements on their objects or to establish any ranking of the importance of their objects. In the context of this description and the claims, the conjunction “or” should be understood as including (“and / or”) rather than exclusive (“one of both or”).
[0103] Reference number list
[0104] 1 Industrial System
[0105] 2 Distributed Systems
[0106] 10 Local Computers
[0107] 20 External Computers
[0108] 30 First Data Connection
[0109] 35 Second Data Connection
[0110] 40 Computer-readable media
[0111] 50 Data Processing System
[0112] DM Domain Model
[0113] EA External Applications
[0114] EL outer layer
[0115] HF hidden features
[0116] ID Industrial Data
[0117] IIS Information about Industrial Systems
[0118] IL Input Layer
[0119] IML Industrial Model Library
[0120] JA joint application
[0121] LA local application
[0122] MLM machine learning model
[0123] OL output layer.
Claims
1. Computer-implemented method of providing a domain model (DM) of an industrial system (1), comprising the following steps: - locally extracting (SI) potential features (HF) from industrial data (ID) of the industrial system (1) by means of a local application (LA) executed on a local computer (10) of a customer, wherein the industrial data (ID) comprises physical or chemical quantities and the potential features (HF) comprise at least one of: (1) character distribution; (2) entropy of values; (3) proportion of missing values or special characters; (4) inferred data type; (5) features specific to the inferred data type; - uploading (S2) the potential features (HF) to an external computer (20) of a service provider; - externally determining (S3) a domain model (DM) of the industrial system (1) from an industrial model library (IML) on the external computer (20) by means of an external algorithm (EA) comprising at least one machine learning model MLM executed on the external computer (20) based on the uploaded potential features (HF); - providing (S5) the determined domain model (DM) of the industrial system (1) to the customer; wherein the at least one MLM has been trained with respect to a ranking of the most suitable domain model (DM) of the industrial system (1) based on potential features (HF) of the respective industrial system (1), and wherein the domain model (DM) is determined based on the ranking of the most suitable domain model of the industrial system (1), which is predicted by the external algorithm EA based on the uploaded potential features (HF), wherein the most suitable domain model of the industrial system is a domain model representing all relevant technical aspects of the respective industrial system, wherein a relevant technical aspect is a technical, physical or chemical quantity necessary to describe the industrial system or at least some aspects of the industrial system, and wherein the external application (EA) on the external computer (20) provides the domain model (DM) to the local computer (10) via a data connection (30), wherein all relevant technical, physical or chemical quantities are processed in the domain-specific application of the industrial system based on the most suitable domain model.
2. The method according to claim 1, wherein the external algorithm (EA) comprises a plurality of MLMs stored on or accessible by the external computer (20) in a machine learning model library MLML, and wherein the step of externally determining (S3) the domain model comprises the following steps: - selecting the most suitable MLM from the MLML based on the uploaded potential features (HF) by finding a set of features associated with the MLMs that are most similar to the uploaded potential features (HF); - ranking the selected most suitable MLMs according to their suitability based on the similarity of the sets of features; and - ranking the most suitable domain model (DM) of the industrial system (1) by the ranked, selected most suitable MLMs based on the uploaded potential features (HF).
3. The method according to claim 1 or claim 2, wherein the external algorithm (EA) comprises a generic MLM, and In the step of selecting the most suitable MLM, the most suitable MLM is further selected by adapting the generic MLM based on the uploaded potential features (HF).
4. The method according to claim 1 or 2, further comprising at least the following initial steps: - downloading (II) a local application (LA) from an external source (21) to a local computer (10).
5. The method according to claim 1 or 2, further comprising the following steps: - uploading (S6) a provided domain model (DM) together with information (IIS) about the industrial system (1) to an external computer (20); and - storing (S7) the uploaded domain model (DM) and the information (IIS) about the industrial system (1) in an industrial model library (IML) on the external computer (20).
6. The method according to claim 1 or 2, further comprising the following step: - adapting (S4) the determined domain model (DM) based on feedback of a domain expert on the determined domain model (DM).
7. A computer program product comprising instructions which, when executed by a computer, cause the computer to carry out the steps of the method according to any one of claims 1 to 6.
8. A computer readable medium (40) having stored thereon the computer program product according to claim 7.
9. A data processing system (50) comprising means (51, 52) for carrying out the steps of the method according to any one of claims 1 to 6.
10. A distributed system (2) for providing a domain model (DM) of an industrial system (1), the distributed system (2) being configured to perform the computer-implemented method according to claim 1, the distributed system (2) comprising: - at least one local computer (10) of at least one customer configured to execute a local application (LA); - an external computer (20) of a service provider configured to execute an external algorithm (EA) comprising at least one machine learning model (MLM); and - at least one data connection (30) between the at least one local computer (10) and the external computer (20) configured to upload potential features (HF) from the local computer (10) to the external computer (20) and to provide a domain model (DM) from the external computer (20) to the at least one customer; wherein the at least one local application (LA) is configured to locally extract the potential features (HF) from industrial data (ID) of the industrial system (1), wherein the at least one external application (EA) is configured to externally determine the domain model (DM) of the industrial system (1) from an industrial model library (IML) on the external computer (20) based on the potential features (HF) uploaded from the at least one local computer (10) via the at least one data connection (30), wherein the at least one external application (EA) is configured to externally determine the domain model (DM) of the industrial system (1) from an industrial model library (IML) on the external computer (20) based on the potential features (HF) uploaded from the at least one local computer (10) via the at least one data connection (30), wherein the at least one machine learning model (MLM) has been trained with respect to predicting the most suitable domain model (DM) for the industrial system (1) based on potential features (HF) of the respective industrial system (1), and wherein the most suitable domain model (DM) represents all relevant technical aspects of the respective industrial system (1).
11. Distributed system according to claim 10, wherein the system is configured to perform the method according to any one of claims 2 to 4.
12. Distributed system according to claim 10 or claim 11, configured to perform the method according to claim 5 or claim 6, wherein the at least one local computer (10) and the at least one data connection (30) are further configured to forward and upload the provided domain model (DM) together with information (IIS) about the industrial system (1) to the external computer (20), and wherein the external computer (20) is further configured to store the uploaded domain model (DM) and information (IIS) about the industrial system (1) in the industrial model library (IML) on the external computer (20).
Citation Information
Patent Citations
Ranking and updating machine learning models based on data inputs at edge nodes
CN110659740A
Operations augmented enterprise collaborative recommender engine
US20200234217A1