Methods and systems for industrial change detection
The method addresses the cumbersome nature of current CPD methods by integrating unsupervised and supervised learning with active learning, reducing human effort and enhancing the detection of change points in industrial processes.
Patent Information
- Application Number
- JP2023551154
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-02-24
- Filing Date
- 2022-02-23
- Publication Date
- 2025-06-23
- Estimated Expiration
- 2042-02-23
AI Technical Summary
Current change point detection (CPD) methods in industrial process automation are cumbersome due to high human effort required for labeling data and selecting appropriate algorithms, leading to rare actual usage of these methods.
A computer-implemented method combining unsupervised change point detection with active learning and supervised machine learning, which reduces labeling effort by using offline learning to refine candidate change points and project them onto the signal for online detection.
This method enables efficient detection of change points with low labeling effort, improving the practical application of CPD in industrial processes by automating the detection of transitions and anomalies.
Smart Images

Figure 0007697025000001 
Figure 0007697025000002 
Figure 0007697025000003
Abstract
Description
Technical Field
[0001] The present invention relates to a computer-implemented method for detecting change points (CPs) in signals, a controller configured to perform the steps of the computer-implemented method, an industrial process system comprising such a controller, and the use of such a controller in an industrial process system.
Background Art
[0002] Online change point detection (CPD) on signal data is a useful data analysis tool for industrial processes. Online CPD can be used in several applications to detect transitions between stages in a batch production process, or to automatically detect changes in process behavior to inform an operator, or as a preprocessing step for pattern recognition where a certain shape in the signal, such as a "drop in vapor pressure", is recognized.
[0003] The selection of a suitable algorithm and its parameterization for teacherless CPD depends heavily on the characteristics of the data and the use case. Selecting the appropriate algorithm and tuning the parameters is extremely cumbersome. An alternative to teacherless CPD algorithms is to use teacher CPD algorithms. Often, human experts need to provide exemplary change points (and non-change points), and teacher-based machine learning algorithms are trained to classify whether a given data point in a time series or signal is a change point or not. This effort of labeling the data is very cumbersome. In some plants, an automation system can record event data indicating changes in process behavior (e.g., changes in batch stages). However, often this data is unavailable, difficult to obtain, or disrupted by noise. Additionally, manual steps initiated by human operators are often not recorded. Many always-on monitoring algorithms, such as state-based alarming, depend on the current process state (e.g., startup - half load - full load - shutdown). CPD can be used to determine the current process state. Due to the high human effort for both variants of teacher CPD and teacherless CPD, CPD algorithms are rarely actually used. Summary of the Invention
[0004] Therefore, there may be a desire to improve a method for detecting change points in industrial process automation.
[0005] That problem is solved by the subject matter of the independent claims. Embodiments are provided by the dependent claims, the following description, and the accompanying figures.
[0006] The described embodiments are similarly related to a computer-implemented method for detecting change points in a signal, a controller configured to perform the steps of the computer-implemented method, an industrial process system comprising such a controller, and the use of such a controller. Synergistic effects may result from different combinations of the embodiments, although they may not be described in detail.
[0007] Furthermore, while all embodiments of the invention related to the method may be performed in the order of steps as described, it should be noted that this is not the only and essential order of the steps of the method. The methods presented herein may be performed in another order of the disclosed steps without departing from each method embodiment, unless explicitly stated otherwise herein.
[0008] Technical terms are used according to their common sense. When a specific meaning is conveyed to some terms, the definitions of the terms are given below in the context in which the terms are used.
[0009] According to a first aspect, a computer-implemented method for detecting change points CP in signals of an automation system is provided. The method comprises the following steps. In a first step, in an offline learning phase, using an unsupervised detection method, unsupervised, candidate CPs are detected on at least one offline signal. In a subsequent step, a CP is selected from the candidate CPs. The selected CP is provided to a supervised process. In the next step, in the supervised process, an offline machine learning (ML) system is trained using a supervised machine learning method to refine the CPs from the selected CP. In the next step, a training data set for an online ML system is created using the offline ML system by projecting the refined CPs onto the signal. In a further step, the online ML system is trained in a supervised manner using the created training data set. After the offline learning phase, the CPs are detected using the trained online ML system.
[0010] More specifically, first, offline data from the recorded signal is used as input for the first step of a method for performing detection of candidate CPs from the signal data. Based on the judgment of a human expert, one or several signals are selected as reference signals. The recorded signal can be the reference signal. The reference signal is considered to be representative of changes in the production process. If a CP is detected on the reference signal, the assumption is that the overall process exhibits a change in behavior. Hereinafter, the method is described with respect to one reference signal, but the input can comprise two or more reference signals.
[0011] The recorded signal is represented as a time series of samples such that each sample is associated with a time point. The "point" in "change point" refers to the time point of such a sample. Thus, candidate CPDs can be offline CPDs in the recorded history data. The samples can be samples equidistant in time and can comprise signal values and timestamps.
[0012] The detection of possible CP candidates is performed automatically, i.e., identifying the time points as actual change points, e.g., without labels, coming from a human or other data sources or systems, which is also called "unsupervised". The detected candidate CPs generally consist of correctly detected CPs and wrongly detected CPs. In the next step, an algorithm for selecting CPs is applied so as to improve the ratio of correct CPs to wrong CPs. The selected CPs can be provided to the user to verify and improve the selection of CPs from the previous step. That is, in this training step, the CPs are improved in a supervised manner. This improvement is part of a machine learning process where the CPs can be labeled and provided with annotations. The "machine learning process" can be interpreted in a very broad sense as several algorithms can be applied and the learning can involve adjusting the parameters of the algorithms, etc. This training step can be performed iteratively, for example, until the change in the ratio of correct CPs to wrong CPs is lower than a threshold. The machine learning process of this step is called "training an offline ML system". Once the offline ML system is trained, training data for the online ML system is prepared. The previous step created labels for each ti. This label is used to train a supervised online CPD. Further, the improved CPs are projected onto the signal. That is, the generated information regarding CPs or non-CPs is transferred to and completed for each of the signal samples, thereby obtaining a so-called completed offline training dataset according to the available or used signal samples. As the next step, the offline training dataset is used to train the online ML system. The online ML system is different from the offline ML system in that, for example, predictors regarding time points before and after the current time point are available in the offline ML system. The online ML system is constructed such that only predictors regarding time points before and equal to the current time point are available.Online ML training is supervised. When the training of the online ML system is completed, this system is applied to an online signal, where the online signal can be a sample of the signal of the currently running industrial process, i.e., the trained model for online CPD is supplied with live data from the industrial process. At each sampling step, the online CPD model will return information on whether the last timestamp was a change point.
[0013] Therefore, the method provides a combination of unsupervised change point detection (CPD) using active learning and supervised CPD. This combination provides supervised CPD change point detection with low labeling effort due to the combination of unsupervised CPD and active learning. This computer-implemented method can be applied, for example, in batch stage recognition, process monitoring by CPD, state-based monitoring, process monitoring by anomaly detection or classification, and signal data exploration.
[0014] The production of batches in a chemical batch process is divided into several characteristic stages. For a plant operator, it is important to know the current batch stage and the start or transition to a new batch stage because the operator needs to take specific actions according to the stage information or, for example, understand the context to monitor the process based on trends. In a highly automated batch plant, this information is available within the control system. However, in a semi-automated batch plant, this information is not available from the control system. Furthermore, in a third-party vendor's batch monitoring system, i.e., a vendor different from the control system vendor, this information may not be available online or at all. Online CPD can be directly applied to identify transitions between batch stages. Knowledge about batch stages enables the alignment of different batches so that algorithms such as multivariate principal component analysis (MPCA), which require the same length for each batch being compared, can be applied (the length of a stage may vary from batch to batch).
[0015] When referring to process monitoring by CPD, changes in process behavior that are not introduced by operator actions, such as changing the actuator value or setpoint, are of high interest to the plant operator and may direct the plant operator's attention to relevant signals. CPD can be used to detect changes in the behavior of signals. Additional logic, such as checking whether matching setpoints or other correlated process values have changed, or a machine learning model, such as a classification that classifies intended changes versus unintended changes, can be combined so that online CPD can be used to detect such relevant changes in process behavior.
[0016] In state-based monitoring, many models used for monitoring, such as linear interpolation, are only valid for steady-state operation at specific setpoints. CPD can be used to identify transitions between different steady states so that the model can be appropriately changed.
[0017] This method can also be applied to detect anomalies or for classification in process monitoring. CPD can be used to break up an otherwise continuous signal into segments with a start (first change point) time and an end (next change point) time. These segments can be used as samples in anomaly detection or in the classification process, which can be very cumbersome to train on a continuous signal.
[0018] Searching in signal data is a promising support function for plant operators. To perform the search efficiently, some kind of indexing or clustering of the historical data is needed to avoid the search process having to traverse the entire historical data. Similar to process monitoring by anomaly detection or classification, CPD is used to divide a continuous signal into several meaningful segments. These segments can be compared using an elastic distance measure (e.g., dynamic time warping, Levenshtein distance after preprocessing using symbolic aggregate approximation) and clustered into groups. Here, the comparison and search need to be performed only within the clusters or against the cluster centroids and not over the entire signal history. Therefore, the search results can be obtained more quickly with less computational effort.
[0019] This method can be applied in any automated system, for example, in the fields of process automation or robotics.
[0020] According to one embodiment, the steps of detecting CPs using a trained online ML system include recording live data in an automated system, detecting CPs in the live data, and triggering an action when a CP is detected.
[0021] As already mentioned, live data is currently generated data from, for example, one or more processes or sensors. The data is collected, recorded, and input into the online ML system. When a CP is detected, an action can be taken, for example, changing the system's alarm settings or notifying the operator about the change in the process.
[0022] According to one embodiment, the offline signal is represented by samples of the signal. The samples are samples within a random time window, and the candidate CP is selected from the samples included in the random time window. In other words, the time window is created randomly, that is, for example, the start time and the stop time are random, or the start time is random and the time span of the time window is fixed, and the candidates are samples within these time windows. As described above, the signal is a reference signal, and there can be several reference signals. The randomization can be performed across all reference signals.
[0023] According to one embodiment, the samples of each time window are processed by a first algorithm and a second algorithm, and both algorithms provide candidate CPs.
[0024] Generally, for each time window, a plurality of algorithms can be applied, and from each of these time window - algorithm combinations, no candidate CP may be obtained, one candidate CP may be obtained, or two or more candidate CPs may be obtained.
[0025] According to one embodiment, each algorithm is varied by a parameter, and the samples of each time window are processed by each varied first algorithm and each varied second algorithm, and thus candidate CPs are obtained by each of the varied first algorithm and each varied second algorithm. The terms "first" algorithm and "second" algorithm are representative of a plurality of algorithms. By varying the parameters of the algorithms, an additional dimension is provided for the creation of candidate CPs. All candidate CPs thus identified are provided to the selection process.
[0026] According to one embodiment, the selection from among the candidate CPs follows one of: (i) randomly selecting a CP from among the candidate CPs; (ii) defining a sliding time window length smaller than the time window, summing the number of CP candidates detected across all CP algorithms, and selecting the window with the high sum; (iii) using all CP candidates, or a random sample of all candidates, and the time window with no CP candidates as inputs to machine learning classification; (iv) correlating the candidate CPs with the batch event log; and / or (v) correlating multiple signals or some process variables. Each of these possibilities can be used completely independently of each other.
[0027] The option "randomly select a CP" can be understood as a random selection within one time window and / or across all time windows. Depending on the performance of the unsupervised CPD algorithm, this can result in many CP candidates that are not actually CPs. This is actually desirable because in a later process, it is thought that machine learning will learn from positive and negative examples to distinguish CPs from non-CPs.
[0028] The option "define a sliding time window length" can be implemented such that the sliding window is smaller than the time window. The number of CP candidates found across all CP algorithms is summed, and the window with the high sum is selected. The user can be presented with such a window containing a high number of CPs. Generally, the size of the time window length n should be much smaller than the time window length used internally by the CP algorithm. Ideally, the window length n should be selected in such a way that the user is indifferent to exactly where the change point is located within the time window. Thus, the value n is application-dependent and needs to be defined by the user or another expert.
[0029] An example of the option "using all CP candidates, or a random sample of all candidates, and the time window without CP candidates as inputs to machine learning classification" is time series classification using a Recurrent Neural Network (RNN) that allows for variable sample lengths. The idea is for the classifier to handle noisy inputs and focus on such change point characteristics where an unsupervised algorithm agrees. The selection is then made based on the labels assigned by the machine learning classification.
[0030] The option "correlating candidate CPs with batch event logs" can be applied when batch event logs are available. In this case, candidate CPs can be associated with batch events by matching their timestamps. If a batch event can be associated with at least one CP in each batch run, the corresponding CP can be selected as a candidate and annotated with the corresponding batch event. Similarly, CPs that cannot be associated with known batch events will be maintained as candidates. These CPs may be anomalies that do not arise from operational or setpoint changes. To further assist the user, batch events can be visualized together with candidate CPs so that the user can make a more informed decision to accept or reject candidate CPs.
[0031] Although CPs are detected for individual signals, candidate CPs can be determined using multiple signals, which is one additional option. A CP can be considered a candidate if several process variables have the same CP, or adjacent CPs within a very small time window. This can be done by visualizing and clustering the CPs of several variables with respect to their timestamps. Additionally, rules for inspecting multiple variables can be specified by the user, for example, several setpoints in the process are changed simultaneously and the common CP for these process variables is a candidate.
[0032] According to one embodiment, after the step of training an offline ML system with supervision, an improvement in CP selection is performed by the user, and the parameters of the algorithm are tuned according to or based on the improvement.
[0033] For example, a change point may be removed or added, or its position may be changed. Further, the change point may be annotated, for example, for annotating a change from batch stage A to batch stage B, or a change to a transition due to a load change from a steady state. In this step, the parameters of the CPD algorithm may be tuned such that the algorithm produces fewer or more CPs. Thus, the method provides for the incorporation of additional user annotations about change points to enable stage or episode detection and enables easy tuning of the unsupervised CPD algorithm for improvement of the change points.
[0034] The outputs of some CPD algorithms may be presented to the user, and the user can select the best output.
[0035] According to one embodiment, optionally, one or a combination of the following static rules is added to the training step of training an offline ML system that improves CPs from selected CPs using a supervised machine learning method. As a first improvement rule option, a CP from candidates of unsupervised algorithms with the best match ratio is selected. As a second improvement rule option, the selection problem is modeled as a binary classification problem of supervised classification. As a third improvement rule option, the characteristics of the sequence of reference signals in the time spans before and after the CP are determined, and the characteristics of the sequence are compared with the characteristics of the sequence of reference signals in the time spans before and after additional CPs, and CPs showing similarity are selected. As a fourth improvement rule option, the k-means clustering algorithm is applied to the time series, the time series is labeled, and cluster points of time series similar to the labeled time series are selected. As a fifth improvement rule option, the classifier is trained to determine whether the time stamp ti is a change point, and the change point is selected based on the determination.
[0036] Each of these options can be applied alone, independently of another of these options, or in combination with one or more other options.
[0037] The first improvement rule option targets algorithm-based selection based on expert agreement with unsupervised CPD algorithms. An example of a policy is to capture the ratio of agreement for each algorithm and prefer candidates for change points from algorithms that often generate candidates accepted by the user.
[0038] The second improvement rule option also targets algorithm-based selection, where the selection problem is modeled as a binary classification problem, i.e., whether the user accepts a candidate as a change point. Here, the classification algorithm can use the reference signal as an additional predictor output and incorporate data characteristics into the determination.
[0039] The third improved rule option relates to the use of a similarity measure to find potential true change points from candidate change points identified from unsupervised CPD. Similarity-based selection extracts the reference signal between two change points (from tcpi to tcpi+1) or three change points (from tcpi to tcpi+2). The starting and ending change points then define a slice of the signal matrix [timestamp t, value v] where tcpi ≦ t ≦ tcpi+1 (for two subsequent change points, tcpi ≦ t ≦ tcpi+2). The method then searches for similar sequences (from tcpi’ to tcpi’+2 or from tcpi’ to tcpi’+2) in the reference signal among the set of candidate change points to find similar types of shapes and transitions, which would thus likely capture similar effects in the production process.
[0040] The fourth improved rule option is a variant of the similarity-based selection described above. This selection can utilize (automatic) clustering algorithms, particularly k-means or variants thereof. One implementation form can use k-means or a variant thereof with a number k = 2 to achieve clustering using two clusters. Different from classical k-means or its variants, one cluster centroid will be fixed to a labeled change point (or a labeled non-change point). The result will be two groups of time series examples, namely, one group similar to the labeled time series and the other not similar. The user will be presented with the similar group along with the already labeled change point and asked to confirm the label. Similar time series can be presented to the user in batches, from the most similar to the least similar. The batch can be of a fixed size (e.g., five sequences at a time) or based on the percentile of similarity. When the user stops labeling sequences at the change point, the process of presenting the labels can be stopped. In this way, the user can label a large number of sequences at once. Another variant of using the clustering algorithm starts with two or more labeled sequences and increases the number of k clusters up to the number of labeled sequences or slightly more. As a preprocessing step, very similar, labeled sequences, which can be correspondingly detected, for example, based on a threshold or based on being the nearest neighbors to each other, are forced to stay in the same cluster. Other clustering algorithms such as DBSCAN can be modified in a similar way by replacing the random initialization with an initialization around the already labeled points.
[0041] The fifth improved rule option relates to machine learning-based selection. In this case, a binary classifier is trained on the improved examples and optionally on examples labeled by one or both of the previous methods to determine whether there is a change point in the reference signal at a given time t.
[0042] According to one embodiment, improving comprises storing the method and parameters during the step of improving and, therewith, forming a learned model. This step results in and stores the result of the previous step, which is a learned offline model.
[0043] According to one embodiment, in a step after the step of training a supervised, offline machine learning ML system to improve CPs from the selected CPs, a step of classifying all tis using the learned model is performed.
[0044] In a step after the step of training a supervised, offline machine learning system, a step of creating a training set is performed. Here, the label for each timestamp is used to train a supervised online CPD.
[0045] According to one embodiment, in a step after the step of creating a training data set for an online ML system and before step 180, a step of training an online model is performed. In this step, a classification algorithm is trained using the training data set created in the previous step. The learned model will be capable of performing an online CPD.
[0046] According to one embodiment, in step 190 after step 180, for a further process, steps are performed to transfer the learned online model and the learned offline model. Both machine learning models for offline CPD and online CPD can be used across different industrial processes. A model trained from industrial process A (using learned parameters such as weights) is used as a starting point for training the model for process B. As a prerequisite, the number of leading signals in A and B should be the same. Initialization of the parameters from training in process A is likely to be a better starting point for training compared to random initialization of the parameters, which is the normal way to start a machine learning process. As a result, learning will require fewer optimization steps and less labeled data to achieve acceptable performance.
[0047] According to a further aspect, a controller configured to perform the steps of the computer-implemented method is provided. The controller may comprise a circuit without programmable logic, or may be or comprise a microcontroller, a field programmable gate array (FPGA), an ASIC, a complex programmable logic device (CPLD), or any other programmable logic device known to those skilled in the art.
[0048] Furthermore, a computer program element and a computer-readable medium may be provided. The computer program element is an implementation of the method described herein. The computer-readable medium stores the computer program element. The computer program element may be part of a computer program, but the computer program element may also be the entire program itself. For example, the computer program element may be used to update an existing computer program to arrive at the present invention.
[0049] According to a further aspect, an industrial process system comprising such a controller is provided.
[0050] According to a further aspect, the use of such a controller in an industrial process system is provided.
[0051] These and other features, aspects, and advantages of the present invention will be better understood with reference to the accompanying drawings and the following description. Equivalent or equivalent elements are generally given the same reference numerals.
Brief Description of the Drawings
[0052]
Fig. 1a
Fig. 1b
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Modes for Carrying Out the Invention
[0053] Figures 1a and 1b show high-level block diagrams for providing an overview of computer-implemented method 100. In a first step 110, offline CPD is solved without a teacher. In a second step 130, active learning of CPD detection is performed using the CPs detected in the first step 110. In a third step 140, the CPs are labeled in a teacher-aided fashion. In a fourth step 160, training data is created for online CPD using the model trained in the active learning step. In a fifth step 170, online CPD is trained using the training data, and in a sixth step 180, online CPs are detected. Those steps are described in detail below. Figure 1b is actually different from Figure 1b in that active learning 130 starts with a first teacher-aided labeling 140, and then subsequent initial active learning steps follow, with steps 130 and 140 being repeated until the conditions are met.
[0054] Figure 2 shows a more detailed view of method 100. Historical data 111 comprising signal data of some signals of the process is provided as input to step 110 for solving the teacherless CPD. The signals are each represented by samples comprising a signal value and a time stamp. From among these signals, one or more signals are selected as reference signal 112 based on human judgment. The reference signal is considered to be representative of changes in the production process. Random time windows (113, 114) are created such that samples of some time windows (113, 114) of one or more signals are removed by a filter, which forms the basis for the teacherless CPD 115 and is passed to different algorithms 1...n. The algorithms identify candidate CPs 117, which are input to step 120 where the CPs are presented to the user. By the identification of candidate CPs 117, step 110 for solving the teacherless CPD is completed.
[0055] In step 120, the CP is selected and then presented to the user such that the user can perform supervised CPD in the subsequent part of the method. The selection can be performed according to one or a combination of the following options.
[0056] As a first option, the CP can be randomly selected from among all candidate CPs.
[0057] Alternatively, for each algorithm, the CP random selection is performed as follows. A sliding time window is defined that slides within an internal larger time window. The sliding time window is applied to all algorithms and all CPs across all algorithms are summed. The same procedure is performed using further sliding time windows. Those sliding time windows that contain a high number of CPs, i.e., the CPs of these windows, are presented to the user.
[0058] In a further alternative, machine learning classification is applied, where all CP candidates, or a random sample of all candidates, and time windows without CP candidates are used as input. As an example, the machine learning classification can be time series classification using a recurrent neural network RNN.
[0059] A further method can be to match known or recorded batches of timestamps with the CPs. Both the CPs that match and those that do not match can be provided to the user for subsequent supervised CPD. The user is provided with information regarding the matching results, for example visually, and thus the supervision is based on or assisted by this information.
[0060] A further option can be to compare some signal candidate CPs with each other. Often, there are relationships or correlations between the signals regarding the CPs.
[0061] As a commonality, the purpose of the selection is to reach an initial set of CP candidates that contains an equal number of samples that the user will likely accept and likely reject (class balance).
[0062] In step 130, the user accepts or rejects the change points presented to the user. The user can also improve the change points (e.g., delete or add change points, change the position of the change points), and has the possibility of annotating the change points (e.g., change from batch stage A to batch stage B or change to a transition due to a load change from a steady state). The user can also improve the number of detected CPs by tuning the parameters of the CPD algorithm so that the algorithm produces fewer or more CPs. The outputs of several CPD algorithms can be presented to the user, and the user can select the best output. Finally, the user can add some static rules such that, for example, if two points are close (time stamp of the second point - time stamp of the first point < threshold), and the first value is within the range [lower value of the first; upper value of the first], and the second value is within the range [lower value of the second; upper value of the second), the candidate CP should be accepted and should be assigned some label.
[0063] After selecting the CPs in step 120, the selected CPs are presented to the user to verify, improve, and annotate the CPs. The improved CPs are provided to the active learning process 140. This process 140 can comprise machine learning-based CP selection 141, similarity-based CP selection 142, and / or algorithm-based CP selection 143. These examples of active learning methods have been described above as "improved rule options" and are not repeated here.
[0064] Referring to the machine learning-based CP selection 141, FIG. 5 shows the structure of the training samples for the machine learning-based offline CPD. The samples describe whether the time stamp ti is a change point (class label). The values of the reference signal at ti, before ti, and after ti are predictors used to predict the label of ti. If a (one or more) human expert provides the annotation, these labels can be used to create a multi-class classification problem. Based on the machine learning-based selection, a strategy from active learning can be used to determine which candidate change points should be presented to the human expert next. Examples of such strategies are expected model change, expected error reduction, Exponentiated Gradient Exploration for active learning, uncertainty sampling, Querying from diverse subspaces or partitions, Mismatch-first farthest-traversal.
[0065] FIG. 3 shows the flowcharts of methods 141 and 142 of step 140. Method 141 includes, as an example, a data augmentation step 1411, a step 1412 of training a CP classifier, a step 1413 of applying the CP classifier on candidate CPs, a step 1414 of calculating the possible information gain, and a step 1415 of selecting the next candidate CP to improve the CP selection. Method 142 includes a step 1421 of extracting shapelets around the CP, a step 1422 of searching for unimproved CPs for similar shapes, and a step 1423 of indicating the next candidate CP based on the similarity.
[0066] Referring back to FIG. 2, steps 130 and 140 are part of an iterative process where a (one or more) human expert verifies and improves an increasing number of CP changes. When a threshold on the number of verified change points is reached and the machine learning algorithm meets one or more performance thresholds (e.g., based on accuracy, recall, and precision), the iterative process stops, the active learning phase ends, and method 100 proceeds to block 400 in FIG. 4, which comprises steps 150, 160, 170, 180, and 190.
[0067] In step 150, as shown in FIG. 8, all tis are classified (with a teacher) by the model learned by the active learning framework shown in FIG. 2. The model learned from active learning is used to classify all time stamps ti as either change points or non-change points. The input to the model learned by the active learning framework is the predictor described in FIG. 5 for each ti. This step will result in a list of binary variables of length m - n indicating whether ti is a change point or not. Additionally or alternatively, the user may label the time stamps with annotations as shown in FIG. 6.
[0068] In step 160, a training set for supervised online CPD is created. The previous step created a label for each ti. In this step, this label is used to train the supervised online CPD. FIG. 7 shows the structure of a sample for training an online CPD model. It is exactly the same as the offline step, but (if the application example allows some delay in detection and may include time stamps larger than ti) does not use data with time stamps larger than ti. The labels in the sample are here generated by the offline algorithm, not by a (one or more) human expert. Steps 160 and the subsequent step 170 are shown in FIG. 9.
[0069] In step 170, as shown in FIG. 9, the online model is trained in a supervised manner. In this step, the classification algorithm is trained using the training dataset created in the previous step. The machine-learned model will be capable of performing online CPD.
[0070] In step 180, as shown in FIG. 10, a CP or a stage transition is detected using the trained online machine learning model. That is, the machine learning-based online CPD is applied to, for example, a lead signal from a plant.
[0071] In step 190, the utilization of transfer learning for CPD is carried out. That is, the learned model is transferred to other processes in the plant.
[0072] The presented method and system are applicable for online CPD, such as detecting transitions between stages in a batch production process, automatically detecting changes in process behavior to inform an operator, preprocessing for pattern recognition, etc., and for offline CPD, such as preprocessing data for machine learning or signal data exploration, for example, segmenting continuous data into segments that can be compared. The change points detected by the present invention are also an important basis for further analysis using multivariate algorithms such as multivariate principal component analysis (MPCA).
[0073] Other variations to the disclosed embodiments can be understood and realized by those skilled in the art in practicing the claimed invention from a consideration of the drawings, this disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other elements or steps, and the indefinite article "a" or "an" does not exclude a plurality. A single processor or other unit may perform the functions of several items or steps recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used advantageously. A computer program may be stored / distributed on a suitable medium, such as an optical storage medium or a solid-state medium, supplied together with or as part of other hardware, but may also be distributed in other forms, such as via the Internet or other wired or wireless electrical communication systems. Any reference signs in the claims should not be construed as limiting the scope. The following matters described in the claims of the original application are appended as they are. [C1] A computer-implemented method (100) for detecting a change point CP in a signal of an automation system, comprising: In an offline learning phase, Detecting (110) at least one offline candidate CP without a teacher on at least one offline signal using a method for detecting without a teacher; Selecting (120) a CP from the candidate CPs and providing the selected CP to a process with a teacher; Training (130, 140) an offline machine learning ML system with a teacher to improve the CP from the selected CP using a method for machine learning with a teacher; Creating (160) a training data set for an online ML system using the offline ML system by projecting the improved CP onto the signal; Training (170) the online ML system with a teacher using the created training data set; and after the offline learning phase, Detecting (180) a CP using the trained online ML system. A computer-implemented method (100) comprising the steps above. [C2] The step (180) of detecting a CP using the trained online ML system includes recording live data in the automation system, detecting a CP in the live data by using the online ML system, and triggering an action when a CP is detected. The computer-implemented method (100) according to C1. [C3] The offline signal is represented by samples of the signal (112), the samples are samples within a random time window (113, 114), and the candidate CPs are selected (120) from the samples included in the random time window. The computer-implemented method (100) according to C1 or 2. [C4] The samples of each time window are processed (116) by a first algorithm and a second algorithm, and both algorithms provide candidate CPs. The computer-implemented method (100) according to C3. [C5] Each algorithm is varied by a parameter (116), the samples of each time window are processed by each first algorithm, each varied second algorithm is varied, and thus candidate CPs are obtained by each of the varied first algorithm and each varied second algorithm, the computer-implemented method (100) according to C4. [C6] Said selecting a CP from said candidate CPs (120) is by the following methods, namely, randomly selecting said CP from among said candidate CPs, defining a sliding time window length, summing the number of CP candidates detected across all CP algorithms, and selecting the window with the high sum, using all said CP candidates, or a random sample of all candidates, and time windows without CP candidates as inputs to machine learning classification, correlating said candidate CPs with a batch event log, correlating a plurality of signals or some process variables The computer-implemented method (100) according to any one of C1 to 5, comprising one of the above. [C7] After the step of training a supervised, offline ML system (130), said improvement in CP selection is implemented by said user, where the parameters of the model are tuned according to said improvement, the computer-implemented method (100) according to any one of C1 to 6. [C8] The following static rules, namely, selecting a CP from candidates of unsupervised algorithms having the best matching ratio (143), modeling said selection problem as a binary classification problem of supervised classification (143), determining the characteristics of the sequence of said reference signal in the time spans before and after a CP, comparing said characteristics with the characteristics of the sequence of said reference signal in the time spans before and after a further CP, and selecting a CP showing similarity (142), applying a k-means clustering algorithm to a time series, labeling said time series, and selecting a cluster point of a time series similar to said labeled time series (142), training a classifier, determining whether a time stamp ti is a change point, and selecting said change point based on said determination (141) One or a combination of which is added to the steps (130, 140) of training a supervised, offline machine learning, system, the computer-implemented method (100) according to any one of C1 to 7. [C9] The improving (130, 140) comprises storing the method and the parameters during the performance of the improving step (140), and forming a learned offline model therewith, the computer-implemented method (100) according to any one of C1 to 8. [C10] In step (150) after the steps (130, 140) of training a supervised, offline machine learning ML system so as to improve the CP from the selected CP, the step (150) of classifying all ti using the learned model is performed, the computer-implemented method (100) according to any one of C1 to 9. [C11] In step (170) after the step (160) of creating a training dataset for an online ML system, the step (170) of training an online model is performed, the computer-implemented method (100) according to any one of C1 to 10. [C12] In step (190) after the step (180) of detecting a CP using the trained online ML, the step (190) of transferring the learned online model and the learned offline model is performed for a further process, the computer-implemented method (100) according to any one of C1 to 11. [C13] A controller configured to perform the steps of the computer-implemented method (100) according to any one of C1 to 12. [C14] An industrial process system comprising the controller according to C13. [C15] Use of the controller according to C13 in the industrial process system according to C14.
Claims
1. A computer-implemented method (100) for detecting change points CP in signals of an automation system, comprising: In an offline learning phase, Detecting (110) teacherless, candidate CPs on at least one offline signal using a teacherless detection method; Selecting (120) CPs from said candidate CPs and providing said selected CPs to a supervised process; Training (130, 140) a supervised, offline machine learning ML system to improve CPs from said selected CPs using a supervised machine learning method, said training step being such that after said step of training said supervised, offline machine learning ML system, said improvement of CP selection is performed by a user; Creating (160) a training data set for an online ML system using said offline ML system by projecting said improved CPs onto said signal; Training (170) a supervised, said online ML system using said created training data set, and after said offline learning phase, Detecting (180) CPs using said trained online ML system A computer-implemented method (100).
2. The step (180) of detecting CPs using said trained online ML system includes recording live data in said automation system, detecting CPs in said live data by using said online ML system, and triggering an action when a CP is detected. The computer-implemented method (100) according to Claim 1.
3. The offline signal is represented by samples of the signal (112), the samples are samples within random time windows (113, 114), and the candidate CP is selected from the samples included in the random time windows (120), the computer-implemented method (100) according to claim 1 or 2.
4. The samples of each time window are processed by a first algorithm and a second algorithm (116), and both algorithms provide candidate CPs, the computer-implemented method (100) according to claim 3.
5. Each algorithm is varied by a parameter (116), the samples of each time window are processed by each first algorithm, each varied second algorithm is varied, and thus, the candidate CPs are obtained by each of the varied first algorithms and each varied second algorithm, the computer-implemented method (100) according to claim 4.
6. Said selecting the CP from the candidate CPs (120) is by the following methods, namely, randomly selecting the CP from among the candidate CPs, defining a sliding time window length, summing the number of CP candidates detected across all CP algorithms, and selecting the window with the high sum, using all of the CP candidates, or random samples of all candidates, and time windows without CP candidates as inputs to machine learning classification, correlating the candidate CPs with batch event logs, correlating multiple signals or some process variables comprising one of the above, the computer-implemented method (100) according to any one of claims 1 to 5.
7. The computer-implemented method (100) according to any one of claims 1 to 6, wherein the parameters of the model are tuned according to the improvement. **Claim 8** The following static rules, namely, selecting a CP from candidates of unsupervised algorithms having the best matching ratio (143), modeling the selection problem as a binary classification problem of supervised classification (143), determining the characteristics of the sequence of the reference signal in the time spans before and after the CP, comparing the characteristics with the characteristics of the sequence of the reference signal in the time spans before and after a further CP, and selecting a CP showing similarity (142), applying a k-means clustering algorithm to the time series, labeling the time series, and selecting a cluster point of a time series similar to the labeled time series (142), training a classifier, determining whether the time stamp ti is a change point, and selecting the change point based on the determination (141) One or a combination of the above is added to the steps (130, 140) of training a supervised, offline machine learning, system, the computer-implemented method (100) according to any one of claims 1 to 7. **Claim 9** The improving (130, 140) comprises storing the method and the parameters during the implementation of the improving step (140), and forming a learned offline model therewith, the computer-implemented method (100) according to claim 7. **Claim 10** In step (150) after the steps (130, 140) of training a supervised, offline machine learning ML system so as to improve the CP from the selected CP, the step (150) of classifying all ti using the learned model is implemented, the computer-implemented method (100) according to any one of claims 1 to 9. **Claim 11** In step (170) after the step (160) of creating a training data set for the online ML system, the step (170) of training the online model is performed, the computer-implemented method (100) according to any one of claims 1 to 10.
12. In step (190) after the step (180) of detecting CP using the trained online ML, the step (190) of transferring the learned online model and the learned offline model is performed for a further process, the computer-implemented method (100) according to any one of claims 1 to 11.
13. A controller configured to perform the steps of the computer-implemented method (100) according to one of claims 1 to 12.
14. An industrial process system comprising the controller according to claim 13.
Citation Information
Patent Citations
Learning program, detection program, learning method, detection method, learning device, and detection device
JP2019086473A
Abnormality detection apparatus, abnormality detection system, and abnormality detection method
JP2020135170A
Abnormality detection apparatus, abnormality detection system, and abnormality detection method
US20200264219A1