WO2024128089A1 - 情報処理装置、制御システム、指標値算出方法、および指標値算出プログラム - Google Patents
情報処理装置、制御システム、指標値算出方法、および指標値算出プログラム Download PDFInfo
- Publication number
- WO2024128089A1 WO2024128089A1 PCT/JP2023/043617 JP2023043617W WO2024128089A1 WO 2024128089 A1 WO2024128089 A1 WO 2024128089A1 JP 2023043617 W JP2023043617 W JP 2023043617W WO 2024128089 A1 WO2024128089 A1 WO 2024128089A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- input data
- outlier
- machine learning
- data
- index value
- Prior art date
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 101
- 230000010365 information processing Effects 0.000 title claims abstract description 91
- 238000012549 training Methods 0.000 claims abstract description 113
- 238000010801 machine learning Methods 0.000 claims abstract description 83
- 230000002159 abnormal effect Effects 0.000 claims description 54
- 230000006870 function Effects 0.000 claims description 41
- 238000013075 data extraction Methods 0.000 claims description 16
- 239000000284 extract Substances 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 16
- 238000000034 method Methods 0.000 description 63
- 238000011156 evaluation Methods 0.000 description 40
- 230000008569 process Effects 0.000 description 32
- 238000005457 optimization Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- 230000007704 transition Effects 0.000 description 12
- 238000005259 measurement Methods 0.000 description 11
- 230000005856 abnormality Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 7
- 230000007423 decrease Effects 0.000 description 7
- 238000002485 combustion reaction Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000003247 decreasing effect Effects 0.000 description 4
- 238000004056 waste incineration Methods 0.000 description 4
- 239000002699 waste material Substances 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2433—Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Definitions
- the present invention relates to an information processing device that performs processing related to the exchange and re-learning of machine learning models.
- Patent Document 1 describes a waste incineration plant facility that incinerates waste and generates electricity using the heat generated during incineration, where a machine-learned neural network model is used to predict the amount of steam generated after a specified time.
- Patent Document 2 describes a waste incineration plant facility that incinerates waste and generates electricity using the heat generated during incineration, where a machine-learned neural network model is used to predict the amount of steam generated after a specified time.
- the same document also describes the generation of a new machine learning model using newly acquired training data, the calculation of an evaluation value for the prediction accuracy of the machine learning model, and the use of the new machine learning model if the evaluation value is higher than that of the previous machine learning model.
- One aspect of the present invention aims to realize an information processing device or the like that makes it possible to appropriately perform processing related to updating a machine learning model even when it is difficult to verify the accuracy of the inference results produced by the machine learning model.
- an information processing device includes an outlier determination unit that determines whether each of a plurality of input data input to a machine learning model is an outlier using a threshold value for determining whether training data included in a training dataset used to generate the machine learning model is an outlier, and an index value calculation unit that calculates an index value indicating the suitability of the machine learning model for the input data based on the determination result of the outlier determination unit.
- an information processing device includes an outlier determination unit that uses a threshold value for determining whether training data included in a training dataset used to generate a machine learning model is an outlier to determine whether each of a plurality of input data input to the machine learning model is an outlier, and a notification unit that prompts the machine learning model to re-learn in response to the determination result of the outlier determination unit.
- an information processing device includes an outlier determination unit that uses a threshold value for determining whether training data included in a training dataset used to generate a machine learning model is an outlier to determine whether each of a plurality of input data input to the machine learning model is an outlier, and a learning data extraction unit that extracts data to be used for re-learning the machine learning model from among the plurality of input data based on the determination result of the outlier determination unit.
- an information processing device includes an outlier determination unit that uses a threshold value for determining whether training data included in a training dataset used to generate a machine learning model is an outlier to determine whether each of a plurality of input data input to the machine learning model is an outlier, and a learning unit that re-learns the machine learning model at a timing determined based on the determination result of the outlier determination unit.
- an index value calculation method is an index value calculation method executed by at least one information processing device, and includes an outlier determination step of determining whether or not each of a plurality of input data input to the machine learning model is an outlier using a threshold value for determining whether or not training data included in a training dataset used to generate the machine learning model is an outlier, and an index value calculation step of calculating an index value indicating the suitability of the machine learning model for the input data based on the determination result in the outlier determination step.
- FIG. 1 is a diagram showing an overview of a control system according to an embodiment of the present invention.
- 1 is a block diagram showing an example of a configuration of a main part of an information processing device (a device that searches for optimal parameter values) according to an embodiment of the present invention.
- 10A and 10B are diagrams illustrating a method for determining a threshold value and a method for determining whether or not input data is an outlier.
- FIG. 1 is a diagram showing an overview of a control system according to an embodiment of the present invention.
- 1 is a block diagram showing an example of a configuration of a main part of an information processing device (a device that searches for
- FIG. 1 is a diagram showing the transition of the calculated index value and the recurrence rate in an incineration power plant that generates power by utilizing heat generated by incinerating waste.
- FIG. 13 is a diagram showing an example of a display screen of a search result.
- a flowchart showing an example of processing performed by the information processing device (a device that calculates an index value indicating the suitability of an inference model).
- 4 is a flowchart showing an example of a process executed by the information processing device (a device that searches for optimal values of parameters).
- FIG. 1 is a diagram showing an overview of a control system 7 according to an embodiment of the present invention.
- the control system 7 includes a learning device 1, an information processing device 2, an information processing device 3, a control device 4, and a control target 5.
- the control system 7 is a system in which the control device 4 controls the operation of the control target 5, and the control of the control target 5 is performed based on the result of inference using an inference model.
- the controlled object 5 is an object controlled by the control device 4 and includes equipment 51.
- a measuring device 52 is attached to the controlled object 5.
- the measuring device 52 measures data related to the equipment 51, and may be adapted to suit the equipment 51 and the data to be measured. For example, if it is desired to measure the internal or external temperature of the equipment 51, a temperature sensor may be used as the measuring device 52.
- the controlled object may include one of each of the equipment 51 and the measuring device 52, or multiple of each.
- the equipment 51 is an equipment within the plant.
- the measuring device 52 may be attached to the equipment 51, or may be attached elsewhere within the plant, or may be installed outside the plant.
- the learning device 1 generates an inference model used to determine the content of control for the control target 5.
- the inference model can also be called a machine learning model because it is generated by machine learning using training data.
- the learning device 1 also re-learns the inference model and updates the inference model. Note that any machine learning algorithm can be used, and an appropriate algorithm can be applied depending on the training data used, the inference content, etc.
- the inference model may be one that performs inference on matters that serve as guidelines for determining the content of control for the control object 5. For example, the inference model may predict whether the future operating state of the control object 5 will be normal or not. Also, for example, the inference model may predict future measurement values of the measuring device 52, or may predict the optimal content of control for the control object 5.
- the information processing device 2 calculates an index value indicating the suitability of the inference model for input data input to the inference model generated by the learning device 1 when making an inference using the inference model. Details will be described later, but in calculating the index value, the information processing device 2 determines whether or not each of the multiple input data input to the inference model is an outlier, using a threshold value for determining whether or not training data included in the training dataset used to generate the inference model is an outlier. The information processing device 2 then calculates the index value based on the determination result. This makes it possible to accurately determine the suitability of the inference model for the input data. This index value is used to determine the timing for causing the learning device 1 to update the inference model.
- the information processing device 3 searches for optimal values of parameters related to the control of the control object 5.
- the information processing device 3 may also search for optimal values of parameters related to inference by an inference model instead of or in addition to the parameters related to the control of the control object 5.
- the parameters detected by this search are provided to the control device 4, and the control device 4 applies these parameters to control the control object 5.
- the information processing device 3 calculates a predictive distribution of a function that indicates the relationship between the above-mentioned parameters related to at least one of the inference based on the inference model and the control according to the result of the inference, and the operating state of the control target 5 after the control. Then, the information processing device 3 searches for candidates for the optimal value of the parameter based on the calculated predictive distribution. This makes it possible to appropriately set the parameter without being influenced by the skill of the operator.
- the control device 4 performs inference using the above-mentioned inference model, and determines the control content for the control target 5 based on the result of the inference.
- the control device 4 includes a data acquisition unit 41, an inference unit 42, and a control content determination unit 43, and the above-mentioned functions are realized by each of these units.
- the data acquisition unit 41 acquires data necessary for inference.
- the data acquisition unit 41 may acquire measurement data measured by the measuring device 52.
- the data acquired by the data acquisition unit 41 is used as input data for the inference model either directly or after undergoing a specified data processing.
- the inference unit 42 then inputs the above-mentioned input data to the above-mentioned inference model to obtain output data.
- the control content determination unit 43 determines the control content according to the result of inference by the inference unit 42, i.e., the output data described above. For example, if the inference model predicts whether or not the future operating state of the control target 5 will be normal, the control content determination unit 43 may not change the control content from the previous content when output data indicating that the operating state is likely to be normal is output. On the other hand, when output data indicating that the operating state is likely to be abnormal is output, the control content determination unit 43 may determine the control content for normalizing the operating state. The control content is determined based on parameters detected by the information processing device 3.
- the data acquisition unit 41 acquires the updated inference model.
- the inference unit 42 then inputs input data to the updated inference model to obtain output data, and the control content determination unit 43 determines the control content for the control target 5 based on the output data.
- the control system 7 includes an information processing device 2 that determines whether input data input to the inference model is an outlier using a threshold value for determining whether training data is an outlier, and calculates an index value indicating the suitability of the inference model for the input data based on the determination result, a learning device 1 that updates the inference model at a timing determined based on the calculated index value, and a control device 4 that determines the control content for the control target 5 based on output data obtained by inputting the input data to the updated inference model.
- the information processing device 2 obtains the input data input to the updated inference model, and calculates an index value indicating the suitability of the inference model for the input data.
- control system 7 can repeatedly re-learn and update the inference model and calculate an index value that indicates the compatibility between the inference model and the input data. This makes it possible to perform re-learning at an appropriate time and maintain the appropriateness of the control content for the control object 5.
- the control system 7 includes an information processing device 3 that calculates a predictive distribution of a function that indicates the relationship between a certain parameter and the operating state of the control object 5 during a period in which the parameter is applied, and searches for a candidate optimal value for the parameter based on the calculated predictive distribution, and a control device 4 that applies the detected candidate optimal value to control the control object 5.
- the certain parameter is a parameter related to at least either the control of the control object 5 or inference using an inference model.
- the information processing device 3 acquires result data indicating the operating state during the period in which the detected candidate is applied, updates the predictive distribution based on the result data, and searches for new candidates for the optimal value of the parameter based on the updated predictive distribution. This allows the control system 7 to bring the parameter closer to the optimal value while controlling the control target 5.
- [Configuration of information processing device 2] 2 is a block diagram showing an example of a main configuration of the information processing device 2.
- the information processing device 2 includes a control unit 20 that controls each unit of the information processing device 2, and a storage unit 21 that stores various data used by the information processing device 2.
- the information processing device 2 also includes a communication unit 22 that allows the information processing device 2 to communicate with other devices, an input unit 23 that accepts input of various data to the information processing device 2, and an output unit 24 that allows the information processing device 2 to output various data.
- the control unit 20 also includes a data acquisition unit 201, an average distance calculation unit 202, a threshold determination unit 203, an outlier determination unit 204, an index value calculation unit 205, a relearning necessity determination unit 206, a recall calculation unit 207, and a learning data extraction unit 208.
- the data acquisition unit 201 acquires various data used by the information processing device 2. For example, the data acquisition unit 201 acquires a training dataset including multiple training data used to generate an inference model, and input data input to the inference model for inference. For example, the data acquisition unit 201 may acquire a training dataset from the learning device 1 and acquire input data from the control device 4.
- the average distance calculation unit 202 calculates the average distance between data. Specifically, the average distance calculation unit 202 performs a process for each training data to calculate the average value of the distance between one of the training data included in the training data set acquired by the data acquisition unit 201 and each of a predetermined number of training data that are closest to the training data. In addition, the average distance calculation unit 202 performs a process for each input data to calculate the average value of the distance between one of the multiple input data acquired by the data acquisition unit 201 and each of a predetermined number of other input data that are closest to the input data.
- the threshold determination unit 203 determines a threshold for determining whether or not training data included in the training data set acquired by the data acquisition unit 201 is an outlier. More specifically, the threshold determination unit 203 calculates a deviation indicating the degree to which the training data included in the training data set deviates from other training data, for each training data included in the training data set, and determines a deviation of a predetermined rank from among the calculated deviations as the threshold.
- the deviation may be, for example, an average value calculated by the average distance calculation unit 202 for each training data.
- the outlier determination unit 204 determines whether each of the multiple input data acquired by the data acquisition unit 201 is an outlier. This determination is made using a threshold determined by the threshold determination unit 203. In other words, the outlier determination unit 204 determines whether the input data is an outlier based on the threshold determined by the threshold determination unit 203.
- the index value calculation unit 205 calculates an index value that indicates the suitability of the inference model for the input data based on the judgment result of the outlier judgment unit 204.
- the index value will be explained in the section [Examples of Index Values] below.
- the relearning necessity determination unit 206 determines whether or not the inference model needs to be re-learned based on the index value calculated by the index value calculation unit 205. When the relearning necessity determination unit 206 determines that the inference model needs to be re-learned, it instructs the learning device 1 to re-learn the inference model. In other words, the timing at which the relearning necessity determination unit 206 determines that re-learning is necessary is the timing at which re-learning should be performed, and it can be said that the relearning necessity determination unit 206 determines the timing of re-learning.
- the recall calculation unit 207 calculates the recall for each inference made by inputting multiple pieces of input data into the inference model.
- the recall is an index showing the proportion of cases where the true value is predicted as a positive case among positive cases.
- the recall can be calculated by the formula (number of cases correctly judged as abnormal) / ⁇ (number of cases correctly judged as abnormal) + (number of cases where an abnormality was erroneously judged as normal) ⁇ .
- the recall calculation unit 207 calculates the recall for the judgment by dividing the number of cases correctly judged as abnormal by the sum of the number of cases correctly judged as abnormal and the number of cases where an abnormality was erroneously judged as normal.
- the learning data extraction unit 208 extracts input data to be used for re-learning the inference model from among the multiple input data acquired by the data acquisition unit 201, based on the index value calculated by the index value calculation unit 205.
- the index value calculated by the index value calculation unit 205 is calculated based on the judgment result of the outlier determination unit 204, so it can be said that the learning data extraction unit 208 extracts input data to be used for re-learning based on the judgment result of the outlier determination unit 204.
- the learning data extraction unit 208 may also extract input data to be used for re-learning, taking into consideration the recall calculated by the recall calculation unit 207.
- the learning data extraction unit 208 may transmit the extracted input data to the learning device 1, for example, when the re-learning necessity determination unit 206 determines that re-learning of the inference model is necessary.
- the information processing device 2 includes an outlier determination unit 204 that determines whether each of a plurality of input data input to the inference model is an outlier using a threshold value for determining whether the training data included in the training dataset used to generate the inference model is an outlier, and an index value calculation unit 205 that calculates an index value indicating the suitability of the inference model for the input data based on the determination result of the outlier determination unit 204.
- a threshold for determining whether training data is an outlier is used to determine whether input data input to the inference model is an outlier.
- the above configuration which calculates an index value based on the above judgment result, makes it possible to calculate a valid index value.
- this index value can be calculated without using the inference results from the inference model. Therefore, with the above configuration, it is possible to calculate a valid index value even when it is difficult to verify the correctness of the inference result, that is, to accurately determine the suitability of the inference model for the input data used in the inference. Furthermore, by using this index value, it is also possible to appropriately perform various processes related to updating the inference model.
- the information processing device 2 is equipped with an outlier determination unit 204 that determines whether each of the multiple input data input to the inference model is an outlier using a threshold value for determining whether the training data included in the training dataset used to generate the inference model is an outlier, and a learning data extraction unit 208 that extracts data to be used for re-learning the inference model from the multiple input data input to the inference model based on the determination result of the outlier determination unit 204.
- the learning data extraction unit 208 may extract input data using the index value calculated by the index value calculation unit 205, or may extract input data using the determination result of the outlier determination unit 204 without using the index value. In other words, it is not essential to have the index value calculation unit 205 when extracting input data to be used for re-learning.
- FIG. 3 is a block diagram showing an example of a main configuration of the information processing device 3.
- the information processing device 3 includes a control unit 30, a storage unit 31, a communication unit 32, an input unit 33, and an output unit 34, similar to the information processing device 2.
- the control unit 30 of the information processing device 3 includes a data acquisition unit 301, an evaluation value calculation unit 302, a prediction distribution calculation unit 303, a search unit 304, an optimization control unit 305, and a display control unit 306.
- the data acquisition unit 301 acquires various data used in the information processing device 3. Specifically, the data acquisition unit 301 acquires result data indicating the operating state of the control target 5 during the period in which control was performed using parameters detected by the information processing device 3 (more precisely, the search unit 304). For example, the data acquisition unit 301 may acquire measurement data from the measuring device 52 during that period as result data.
- the evaluation value calculation unit 302 calculates an evaluation value that evaluates the operating state of the control target 5 using the result data acquired by the data acquisition unit 301.
- the evaluation value may be anything that represents the quality of the operating state of the control target 5. It should be noted that this evaluation value can also be said to represent the quality of the applied parameters.
- the evaluation value calculation unit 302 may use the abnormal time rate as the evaluation value.
- the abnormal time rate is the ratio of the time during which the operating state of the controlled object 5 was abnormal to the operating time of the controlled object 5. Whether the operating state of the controlled object 5 is abnormal or normal can be determined based on the result data acquired by the data acquisition unit 301.
- the predictive distribution calculation unit 303 calculates the predictive distribution of a function indicating the relationship between the above-mentioned parameters and the operating state of the control object 5 during the period in which the parameters are applied.
- the operating state of the control object 5 is represented by an evaluation value calculated by the evaluation value calculation unit 302.
- the evaluation value calculation unit 302 calculates the abnormal time rate
- the predictive distribution calculation unit 303 uses the abnormal time rate as information indicating the operating state of the control object 5. In this case, it becomes possible to set the parameters to values that can reduce the abnormal time rate.
- the evaluation value may be input via the input unit 33 or the like, and the evaluation value calculation unit 302 may be omitted.
- the search unit 304 searches for candidates for the optimal parameter value based on the predictive distribution calculated by the predictive distribution calculation unit 303. Note that the method of calculating the predictive distribution and the method of searching for the candidates will be explained later in the section [Details of the method of calculating the predictive distribution and the method of searching for the optimal value candidates].
- the optimization control unit 305 controls the parameter optimization performed by the predictive distribution calculation unit 303 and the search unit 304. For example, when a predetermined condition is satisfied, the optimization control unit 305 controls the predictive distribution calculation unit 303 and the search unit 304 to end the optimization.
- the display control unit 306 causes the candidates detected by the search unit 304 to be displayed on a display device.
- the display device may be a device provided in the information processing device 3.
- the display control unit 306 may cause the candidates detected by the search unit 304 to be displayed on the output unit 34.
- the display control unit 306 may also cause the candidates to be displayed on a display device connected to the information processing device 3, or to be displayed on a display device connected to that device via another device that can communicate via the communication unit 32.
- the information processing device 3 includes a predictive distribution calculation unit 303 that calculates the predictive distribution of a function that indicates the relationship between the above-mentioned parameters and the operating state of the control target 5 during the period in which the parameters are applied, and a search unit 304 that searches for candidates for the optimal value of the parameters based on the calculated predictive distribution.
- the above configuration makes it possible to detect appropriate parameters even when it is difficult to formulate the relationship between the parameters and the operating state. Therefore, the above configuration makes it possible to appropriately set parameters without being influenced by individual skills in a control system 7 that controls a specific control target according to the results of inference using an inference model.
- the predictive distribution calculation unit 303 also updates the predictive distribution based on the candidates detected by the search unit 304 and the operating state of the control target 5 during the period in which the candidates are applied.
- the search unit 304 searches for new candidates for the optimal parameter values based on the updated predictive distribution.
- [Method of determining threshold and method of determining whether or not a value is an outlier] 4 is a diagram for explaining a method for determining a threshold and a method for determining whether input data is an outlier. In this section, a method for determining a threshold by the threshold determination unit 203 and a method for determining whether input data is an outlier by the outlier determination unit 204 will be explained based on FIG.
- the threshold determination unit 203 determines the threshold using the training data set used for the machine learning of the inference model.
- the average distance calculation unit 202 performs a process for each training data to calculate the average value of the distance between one piece of training data included in the training data set and each of a predetermined number of training data that are closest to the training data.
- the average value calculated in this manner indicates the degree to which each training data deviates from the other training data, and can also be called the degree of deviation.
- the left side of FIG. 4 shows plots in the feature space of each training data included in the training dataset.
- the average distance calculation unit 202 calculates the distance between data D1 and each of the five training data that are closest to data D1 in the feature space, and calculates the average value.
- the average distance calculation unit 202 calculates the average value of the distance between data D2 and each of the five training data that are closest to data D2.
- the average distance calculation unit 202 performs this process for each training data included in the training dataset. These processes are similar to the processes performed in the k-nearest neighbor method, which is a method of data classification.
- the threshold determination unit 203 sorts the average values calculated as described above in ascending order, finds the average value that has a predetermined rank, and determines this average value as the threshold.
- the training data with a larger calculated average value deviates more from the other training data, and is more likely to be an outlier when viewed from the perspective of the entire training data set. For example, since the average value calculated for data D2 shown in FIG. 4 is larger than the average value calculated for data D1, data D2 is more likely to be an outlier than data D1.
- the predetermined rank may be set as appropriate, and there is no particular limit to what value it is set to.
- the predetermined rank may be set so that a predetermined percentage of training data in the training data set is ranked higher than the predetermined rank.
- the value of (total number of training data) x 0.96 will be the predetermined rank. In this case, 4% of the training data will be outliers.
- the outlier determination unit 204 uses the threshold determined as described above to determine whether or not the input data input to the inference model is an outlier. In determining whether or not an input data is an outlier, the average value is first calculated by the average distance calculation unit 202. More specifically, the average distance calculation unit 202 performs a process for each input data to calculate the average value of the distance between one piece of input data and each of a predetermined number of input data that are closest to the input data. The average value calculated by the average distance calculation unit 202 indicates the degree to which each input data deviates from the other input data, and can also be called the degree of deviation.
- the predetermined number is 5, as in the example on the left side of the same figure.
- the average distance calculation unit 202 calculates the distance between data d1 and each of the five input data that are closest to data d1 in the feature space, and calculates the average value of these.
- the outlier determination unit 204 compares the calculated average value with the threshold value determined by the threshold value determination unit 203, and determines whether or not the data d1 is an outlier based on the magnitude relationship between the two values. For example, as shown in the figure, the outlier determination unit 204 may determine that the data d1 is an outlier when the average value calculated for the data d1 is equal to or greater than the threshold value. In the same manner, the outlier determination unit 204 determines whether or not each of the other input data is an outlier.
- outliers may be detected by LOF (Local Outlier Factor).
- the threshold determination unit 203 determines a threshold for local density, and the outlier determination unit 204 determines input data whose local density is below the threshold as an outlier.
- outliers may be detected by Hotelling's theory, for example.
- the threshold determination unit 203 determines a threshold for the degree of abnormality, and the outlier determination unit 204 determines input data whose degree of abnormality is above the threshold as an outlier.
- the threshold determination unit 203 may calculate a deviation indicating the degree to which each piece of training data included in the training dataset deviates from other training data, and determine a deviation of a predetermined rank from among the calculated deviations as the threshold.
- the outlier determination unit 204 may then determine whether each piece of input data is an outlier by comparing the deviation indicating the degree to which each piece of input data deviates from other input data, calculated for each piece of input data included in the plurality of input data, with the threshold determined by the threshold determination unit 203.
- the method of calculating the deviation is not particularly limited.
- the deviation may be the average distance from a certain number of nearby data.
- the distance may be, for example, the Euclidean distance, or other distances such as the Manhattan distance or the Mahalanobis distance.
- the degree of anomaly in Hotelling's theory may be used as the deviation, or the local density used in LOF may be used as the deviation.
- the index value calculated by the index value calculation unit 205 may indicate the suitability of the inference model for the input data.
- the index value calculation unit 205 may set the total number of input data determined to be outliers by the outlier determination unit 204 during a predetermined period as the index value. For example, when the control target 5 is operated every day, it is assumed that each of a plurality of input data used in inference during a day is determined to be an outlier or not. In this case, the index value calculation unit 205 may calculate the total number of input data determined to be outliers on a certain day as an index value indicating the suitability of the inference model at the end of that day.
- the index value calculation unit 205 may calculate the index value using the number of input data that the outlier determination unit 204 has determined to be outliers. For example, the index value calculation unit 205 may calculate, as the index value, the proportion of input data that the outlier determination unit 204 has determined to be outliers among the input data measured by the measuring device 52 during a predetermined period.
- the inference model is a model that predicts whether the future state of a specific object (e.g., a controlled object 5) will be normal or abnormal based on input data related to the object.
- the index value calculation unit 205 may calculate, as an index value, the number of pieces of input data that were determined to be outliers and for which the state of the object was abnormal after a prediction using the input data, or a value calculated using the number of pieces of input data.
- Input data that is determined to be an outlier can be classified into those in which the target state was abnormal after prediction using the input data and those in which the target state was normal. Of these, those in which the target state was abnormal after prediction can be said to contain characteristics that correspond to an abnormal state.
- abnormal states do not change, but abnormal states vary. Therefore, when there are many outliers in input data that contains characteristics corresponding to abnormal states, it is possible that the abnormal state has changed since learning, and re-learning is highly necessary. Therefore, with the above configuration, it is possible to calculate an appropriate index value that takes into account the changing nature of the abnormal state.
- the inference model may be a model that predicts whether a future state of a given object is normal or abnormal based on input data about the object. In this case, it is preferable to evaluate the accuracy of the inference model using the recall rate in order to reduce the possibility of overlooking an abnormal state, that is, of determining an abnormal state as normal when it is actually abnormal.
- Figure 5 is a diagram showing the transition of the index value calculated by the index value calculation unit 205 and the recurrence rate in a waste incineration power plant that generates power by using heat generated by incinerating waste.
- the index value is the total number of input data items determined to be outliers per day.
- the figure also shows the transition of the set value of the steam volume in the waste incineration power plant.
- the horizontal axis of the figure is time (days), and the vertical axis is normalized to a value between 0 and 1.
- the index value increases and the recall rate decreases, even though there is no significant change in the setting value.
- the amount of input data determined to be outliers increased and the recall rate decreased due to factors other than the change in the setting value.
- a period in which the index value increases and the recall rate decreases in this way can be said to be a period in which the inference model has a low ability to classify normal from abnormal.
- the recall calculation unit 207 may calculate the recall in a prediction made by inputting multiple input data into the inference model, i.e., the number of cases that were correctly determined to be abnormal divided by the sum of the number of cases that were correctly determined to be abnormal and the number of cases where an abnormality was erroneously determined to be normal.
- the period when the recall rate is declining can be said to be a period when the accuracy of the inference model's predictions of whether something is normal or abnormal is declining, so recall rate can be used as an index showing the level of the inference model's ability to classify normal from abnormal.
- recall rate can be used as an index showing the level of the inference model's ability to classify normal from abnormal.
- the number of cases correctly determined to be abnormal and the number of cases where an abnormality is incorrectly determined to be normal, which are used to calculate recall rate are affected by intervention control based on the prediction results of the inference model and operator operations, so it is not desirable to use recall rate as an absolute evaluation index.
- the above index value it is possible to identify periods when the input data used tends to be unlearned.
- the learning data extraction unit 208 may extract input data to be used for re-learning the inference model from among the multiple input data, based on the recall calculated by the recall calculation unit 207 and the index value calculated by the index value calculation unit 205.
- This makes it possible to estimate a period in particular that should be learned (a period in which the input data has a tendency to not be learned and has become an anomaly that should be avoided), to efficiently identify a data period that should be learned, and to extract input data from that period as data for re-learning.
- effective re-learning can be performed using input data from the period indicated by circle C2 from among the acquired input data.
- control parameters are:
- the predictive distribution calculation unit 303 calculates the predictive distribution of a function indicating the relationship between the parameters to be optimized and the operating state of the controlled object after control, based on the result data acquired by the data acquisition unit 301. Note that this function will be referred to as the evaluation function f( ⁇ ) below. Furthermore, when new result data (for example, result data indicating the result of control in which a candidate detected by the search unit 304 is applied) is acquired, the predictive distribution calculation unit 303 updates the predictive distribution so that the result data is reflected.
- new result data for example, result data indicating the result of control in which a candidate detected by the search unit 304 is applied
- K * k( ⁇ , ⁇ )
- f is expressed as follows.
- the average function ⁇ ( ⁇ ) indicates the average value of the evaluation function predicted from the result data (and the evaluation value calculated by the evaluation value calculation unit 302 from the result data).
- the variance function ⁇ ( ⁇ ) is the variance of the evaluation function predicted from the result data (and the evaluation value calculated by the evaluation value calculation unit 302 from the result data).
- ⁇ ( ⁇ ) indicates the uncertainty of the prediction, and its value tends to be large in areas where result data is insufficient. When ⁇ is large, it can be said that the prediction is uncertain, and that the result data required to increase the certainty of the prediction is insufficient.
- the kernel function and the parameter ⁇ k of the kernel function included in the variance function ⁇ ( ⁇ ) affect the calculation of the predictive distribution. When the predictive distribution is calculated, the parameter ⁇ k is optimized.
- the optimization method is not particularly limited, and various optimization methods applied in general Bayesian optimization can be applied.
- the search unit 304 searches for optimal control parameter candidates in order to obtain the optimal control parameters. Specifically, the search unit 304 searches for parameters that maximize the acquisition function a( ⁇ ) using the mean function ⁇ ( ⁇ ) and the variance function ⁇ ( ⁇ ), as shown in equations (4) and (5) below. The parameters detected in this search become optimal parameter candidates. This search is based on the UCB (Upper Confidence Bound) strategy.
- ⁇ is a parameter for adjusting search and utilization.
- the search unit 304 sets ⁇ to a value according to the received selection and searches for candidates.
- optimal parameter candidates may be searched for using the PI (Probability of Improvement) strategy or the EI (Expected Improvement) strategy.
- optimal parameter candidates may be searched for using an acquisition function appropriate for each strategy, for example, by applying a strategy such as PTR (Probability in Target Range) or MI (Mutual Information).
- the optimal parameters are those that minimize the value of the evaluation function (for example, when the abnormal time rate is used as information indicating the operating state), it is sufficient to search for parameters that minimize the acquisition function a( ⁇ ).
- the candidate optimal values for the parameters detected by the search unit 304 may be presented to the operator of the information processing device 3 by the display control unit 306 displaying them on a display device, etc. Then, the control device 4 starts control of the control target 5 to which the candidate has been applied, and the measurement data measured by the measuring device 52 during the period in which the control is performed is acquired and stored by the control device 4. The applied parameters are then associated with the stored measurement data, and the data is input to the information processing device 3 as new result data.
- the predictive distribution calculation unit 303 updates the predictive distribution based on the new result data
- the search unit 304 searches for the optimal value of the parameter based on an evaluation function constructed based on the predictive distribution updated by the predictive distribution calculation unit 303. In this way, by repeating the updating of the predictive distribution and the search for the optimal value, it becomes possible to detect the optimal parameter.
- the display control unit 306 may present the search results to the operator by displaying a display screen such as that shown in Fig. 6.
- Fig. 6 is a diagram showing an example of a display screen showing the search results. More specifically, Fig. 6 is a diagram showing, on a parallel coordinate system, the history of candidates detected for each of elements a to d included in the parameters to be searched.
- the parameters to be searched may include multiple elements, which allows multiple elements to be optimized in parallel.
- the above elements a to d may be various control parameters related to automatic combustion control.
- control parameters related to automatic combustion control include parameters related to adjustment of the combustion speed, adjustment of the dry air supply flow rate, adjustment of the combustion air supply flow rate, adjustment of the combustion air temperature, and adjustment of the height of the waste layer to be incinerated.
- the parameters to be searched may also include, for example, parameters that indicate the content and amount of control of the control target 5 according to the result of inference by the inference model. This makes it possible to appropriately set the content and amount of control according to the result of inference by the inference model.
- the parameters to be searched may include, in addition to the above parameters indicating the content and amount of control over the control object 5, inference parameters used for inference by the inference model.
- the search unit 304 searches for both candidates for the optimal values of the content and amount of control over the control object 5 and candidates for the optimal values of the inference parameters based on the predictive distribution calculated by the predictive distribution calculation unit 303.
- the inference parameters may be hyperparameters such as weight values obtained by learning.
- the inference parameters may be the ensemble ratio (weight for each inference result).
- the operating state of the control object 5 is affected by the results of inference using the inference model and by intervention control based on those results. For this reason, if the optimum value of the control content and control amount for the control object 5 and the optimum value of the inference parameters are calculated separately, the parameter combination that is optimal overall may not be obtained. In this regard, with the above configuration, both the optimum value of the control content and control amount for the control object 5 and the optimum value of the inference parameters are searched for, making it possible to detect the optimum parameter combination overall.
- the output value of the inference model indicates the probability of normality and/or the probability of abnormality. Therefore, in order for the control content decision unit 43 in the control device 4 to decide the control content according to whether it is normal or abnormal, it is necessary to determine whether it is normal or abnormal using a threshold value for the above probability.
- the above elements a to d may include a threshold for determining whether the future state of the control target 5 is normal or abnormal. This makes it possible to properly determine whether it is normal or abnormal, and to carry out appropriate control according to the determination result. Note that the number of elements included in the parameters to be optimized is arbitrary, and the content of each element is not limited to the above example.
- the vertical axis represents the value of each element included in the parameters.
- a graph is then shown on the parallel coordinate system, with broken lines connecting the elements included in the parameters detected in one search. In other words, the intersections of the broken lines and the vertical axis represent the values of each element.
- This type of graph is called a parallel coordinate plot.
- the parallel coordinate plot shown in Figure 6 shows the transitions in the values of the candidates detected in each search by search unit 304, and can be called transition information.
- the display control unit 306 may display transition information indicating the transition of the candidate values detected in each search by the search unit 304. This allows the operator to easily recognize how the candidate optimal values for the parameters have transitioned through repeated searches, and to confirm whether the optimization is proceeding normally.
- the display control unit 306 may display a parallel coordinate plot, i.e., a graph showing the values of the candidates detected in each search for each element, on parallel coordinates. This allows the operator to easily recognize how each candidate detected for each element included in the parameters has changed as the search is repeated, and to confirm whether the optimization is proceeding normally.
- the parallel coordinate plot is merely one example of a display format for the transition information, and the display format for the transition information is arbitrary.
- the display control unit 306 may display, as the transition information, a parallel set graph, a contour plot, a correlograph, or the like, which shows the transition of the values of the candidates detected in each search by the search unit 304.
- the lines constituting the line graph include solid lines, dashed lines, and dashed lines.
- the patterns of these lines correspond to the operating state of the control object 5 after the control object 5 is controlled by applying the values of each element on the line.
- the lines connecting elements when the abnormal time rate is less than the first threshold are solid lines
- the lines connecting elements when the abnormal time rate is equal to or greater than the first threshold and less than the second threshold are dashed lines
- the lines connecting elements when the abnormal time rate is equal to or greater than the second threshold are dashed lines.
- the display control unit 306 may change the display mode of the value of each candidate included in the transition information depending on the operating state of the control target 5 after the control of the control target 5 is performed by applying the detected candidate. This allows the good and bad of each candidate to be easily recognized.
- the display mode according to the operating state is arbitrary and is not limited to the example shown in the figure.
- the display control unit 306 may display the value of each candidate in a color according to the operating state. In this case, it is sufficient to determine in advance the correspondence between the evaluation value (e.g., abnormal time rate) that evaluates the operating state and the display color. This allows the display control unit 306 to display the value of each candidate in a display color according to the evaluation value calculated by the evaluation value calculation unit 302.
- Fig. 7 is a flowchart showing an example of the process executed by the information processing device 2.
- the data acquisition unit 201 acquires a training dataset.
- the method of acquiring the training dataset is arbitrary.
- the data acquisition unit 201 may acquire a training dataset input via the input unit 23, or may acquire a training dataset from the learning device 1 via the communication unit 22.
- the average distance calculation unit 202 calculates, for each training data included in the training data set acquired in S11, the average value of the distance between the training data and a predetermined number of training data in the vicinity of the training data.
- the predetermined number of training data in the vicinity of a certain training data refers to a predetermined number of other training data that are closest in distance to the training data.
- the threshold determination unit 203 determines the average value of a predetermined rank among the multiple average values calculated in S12 as the threshold value for determining whether the input data is an outlier. Note that the processes of S11 to S13 should be performed at the latest by the time the process of S16 is performed, and do not necessarily have to be performed immediately before S14.
- the data acquisition unit 201 acquires the input data used for inference by the inference model.
- the method of acquiring the input data is arbitrary.
- the data acquisition unit 201 may acquire the input data input via the input unit 23.
- the data acquisition unit 201 may acquire the input data from the control device 4 via the communication unit 22, or may acquire measurement data from the measurement device 52 to generate the input data.
- the data acquisition unit 201 may acquire input data for a predetermined period of time all at once, or may acquire the input data in real time, that is, at the time when the input data is used or will be used in inference by the inference model.
- the average distance calculation unit 202 calculates the average value of the distance between the input data acquired in S14 and a predetermined number of input data in the vicinity of the input data. If one input data is acquired in S14, the average distance calculation unit 202 calculates the average value of the distance between the input data and the multiple input data acquired previously. On the other hand, if multiple input data are acquired in S14, the average distance calculation unit 202 performs the process of calculating the average value of the distance between the input data and a predetermined number of input data in the vicinity of the input data for each of the multiple acquired input data.
- the outlier determination unit 204 determines whether or not the input data acquired in S14 is an outlier based on the average value calculated in S15. More specifically, the outlier determination unit 204 compares the average value calculated in S15 with the threshold value determined in S13, and determines whether or not the input data is an outlier based on the comparison result. Note that if multiple pieces of input data are acquired in S14, the outlier determination unit 204 determines for each piece of input data whether or not the input data is an outlier.
- the index value calculation unit 205 calculates an index value indicating the suitability of the inference model for the input data based on the determination result of S16. For example, the index value calculation unit 205 may calculate, as the index value, the number of input data that are determined to be outliers in S16 among the input data corresponding to the measurement data measured by the measuring device 52 during a predetermined period.
- the relearning necessity determination unit 206 determines whether relearning is necessary based on the index value calculated in S17. For example, the relearning necessity determination unit 206 may determine that relearning is necessary (YES in S18) if the index value calculated in S17 is equal to or greater than a predetermined threshold value, and may determine that relearning is not necessary (NO in S18) if the index value is less than the threshold value. If NO is determined in S18, the processing in FIG. 7 ends. Note that when input data is acquired in real time, if NO is determined in S18, the process may return to S14 and new input data may be acquired.
- the reproducibility calculation unit 207 may calculate the reproducibility of the inference performed using the input data acquired in S14.
- the learning data extraction unit 208 may extract input data to be used for re-learning the inference model from the multiple input data acquired in S14 based on the index value calculated in S17 and the reproducibility calculated by the reproducibility calculation unit 207.
- the learning data extraction unit 208 may transmit the input data to be used for re-learning to the learning device 1 when the determination in S18 is YES.
- the relearning necessity determination unit 206 may perform a process of prompting the operator to relearn the inference model instead of controlling the learning device 1 to perform relearning.
- the relearning necessity determination unit 206 functions as a notification unit that prompts the operator to relearn the inference model according to the determination result of the outlier determination unit 204.
- the manner of notification and the target of the notification are not particularly limited.
- the notification unit 210 may notify by outputting information indicating that relearning is necessary.
- the output destination is not particularly limited, and for example, the notification unit 210 may output the information to the output unit 24, may output the information to the learning device 1, or may output the information to another device such as a terminal device owned by the operator.
- the index value calculation unit 205 may be omitted, and the relearning necessity determination unit 206 may determine whether relearning is necessary using the determination result of the outlier determination unit 204. For example, the relearning necessity determination unit 206 may count the number of input data items determined to be outliers in S16, and determine that relearning is necessary if the counted number is equal to or greater than a predetermined threshold value.
- the information processing device 2 may be configured to include an outlier determination unit 204 that determines whether or not each of a plurality of input data input to the inference model is an outlier using a threshold value for determining whether or not the training data included in the training dataset used to generate the inference model is an outlier, and a relearning necessity determination unit (alert unit) 206 that prompts relearning of the inference model depending on the determination result of the outlier determination unit 204.
- an outlier determination unit 204 that determines whether or not each of a plurality of input data input to the inference model is an outlier using a threshold value for determining whether or not the training data included in the training dataset used to generate the inference model is an outlier
- a relearning necessity determination unit (alert unit) 206 that prompts relearning of the inference model depending on the determination result of the outlier determination unit 204.
- the information processing device 2 may also include a learning unit that performs re-learning of the inference model.
- the learning device 1 can be omitted from the control system 7.
- re-learning is performed by the learning unit included in the information processing device 2.
- the index value calculation unit 205 may be omitted.
- the timing of re-learning is determined using the judgment result of the outlier judgment unit 204.
- the relearning necessity judgment unit 206 may judge whether or not re-learning is necessary using the judgment result of the outlier judgment unit 204, in which case the time when it is judged that re-learning is necessary becomes the timing of re-learning.
- the relearning necessity judgment unit 206 may be omitted and the learning unit may judge whether or not to re-learn, in which case the learning unit will determine the timing of re-learning based on the judgment result of the outlier judgment unit 204.
- the information processing device 2 may be configured to include an outlier determination unit 204 that determines whether or not each of a plurality of input data input to the inference model is an outlier using a threshold value for determining whether or not the training data included in the training dataset used to generate the inference model is an outlier, and a learning unit that re-learns the inference model at a timing determined based on the determination result of the outlier determination unit 204.
- a threshold for determining whether training data is an outlier is used to determine whether input data input to the inference model is an outlier.
- Fig. 8 is a flowchart showing an example of the process executed by the information processing device 3.
- the timing for executing the process in Fig. 8 is not particularly limited.
- the process may be executed at predetermined intervals, or may be executed at a timing when it is determined that the operating state of the control target 5 has deteriorated or is showing a tendency to deteriorate based on information such as an abnormal time rate indicating the operating state of the control target 5.
- the data acquisition unit 301 acquires the initial values of the parameters to be optimized and the result data corresponding to the initial values.
- the data acquisition unit 301 may acquire the initial values and result data input via the input unit 33.
- the result data corresponding to the initial values of the parameters indicates the operating state of the control object 5 during the period in which the control of the control object 5 was performed using the initial values, and may be, for example, measurement values (measurement data) measured by the measuring device 52 during that period.
- the data acquisition unit 301 may acquire, in addition to the initial value and the resulting data, an upper limit value of the parameter and the resulting data when the upper limit value is applied, and a lower limit value of the parameter and the resulting data when the lower limit value is applied.
- the method for determining the initial parameter values is not particularly limited.
- the initial parameter values may be determined by descriptive statistical methods or the like.
- a frequency distribution table showing the distribution of parameter values before and after the occurrence of an abnormality may be created, and based on that, a parameter value considered to be optimal may be identified, and the identified value may be used as the initial value.
- the parameter value may be set to the initial value, and control of the control target 5 may be performed for a predetermined period, and result data showing the operating state during that period may be obtained.
- the method of determining the upper and lower limits of the parameters may be determined by descriptive statistical methods, as with the initial values, or the initial value may be used as a reference and values that deviate from the initial value by a specified range may be set as the upper and lower limits.
- the specified range may be set to 10%, with the upper limit being determined by adding 10% of the initial value to the initial value, and the lower limit being determined by subtracting 10% of the initial value from the initial value. Result data can be obtained for each of the upper and lower limits in the same manner as for the initial values.
- the evaluation value calculation unit 302 uses the result data acquired in S21 to calculate an evaluation value that evaluates the operating state of the control target 5 during the period in which the control target 5 was controlled by applying the initial value.
- the evaluation value for example, the abnormal time rate described above may be applied. Note that the definition of "abnormality" when calculating the abnormal time rate may be the same as that when learning the inference model, or a broader definition may be applied.
- the predictive distribution calculation unit 303 calculates the predictive distribution of a function indicating the relationship between the parameters to be optimized and the operating state of the control target 5 based on the initial values acquired in S21 and the evaluation values calculated in S22.
- the display control unit 306 may present the calculated predictive distribution to the operator by, for example, outputting it to the output unit 34.
- the search unit 304 searches for candidates for the optimal parameter value based on the predictive distribution calculated in S23.
- the display control unit 306 presents the detected candidates to the operator by, for example, outputting the candidates to the output unit 34.
- the operator checks whether there is any problem with applying the presented candidate, and if it is determined that there is no problem, inputs the candidate into the control device 4 and starts control of the control object 5 applying the candidate.
- the operator then inputs the measurement data etc. measured by the measuring device 52 during the period in which control applying the candidate was performed, together with the values of the applied parameters (the values of the presented candidates) into the information processing device 3 as result data indicating the operating state of the control object 5.
- the search unit 304 may search for a candidate different from the previously detected candidate. Also, a normal range for the parameters may be determined in advance. In this case, regardless of the operator's judgment, if the candidate detected in S24 is outside the normal range, the processing from S25 onwards is skipped.
- the data acquisition unit 301 acquires the applied parameter values and result data input as described above.
- the data acquisition unit 301 may acquire the applied parameter values and result data from the control device 4.
- the evaluation value calculation unit 302 calculates an evaluation value using the result data acquired in S25.
- the optimization control unit 305 determines whether or not to end the optimization based on the evaluation value calculated in S26. For example, the optimization control unit 305 may determine to end the optimization (YES in S27) if the evaluation value is equal to or greater than a predetermined threshold, and may determine to continue the optimization (NO in S27) if the evaluation value is less than the threshold. If YES is determined in S27, the processing of FIG. 8 ends, and if NO is determined in S27, the processing returns to S23. In S23, which is transitioned from S27, the predictive distribution is updated using the parameter values and result data acquired in S25.
- the execution subject of each process described in each of the above-mentioned embodiments is arbitrary and is not limited to the above-mentioned examples.
- the functions of the learning device 1, the information processing devices 2 and 3, and the control device 4 can be realized by a plurality of information processing devices (which can also be called processors) that can communicate with each other.
- each process described in the flowcharts of Figures 7 and 8 can be shared among a plurality of information processing devices.
- the execution subject of the control method in each of the above-mentioned embodiments may be one information processing device or a plurality of information processing devices.
- the functions of the learning device 1 may be provided in the information processing device 2 and these may be integrated into a single device, or some or all of the functions of the learning device 1, the information processing device 2, and the information processing device 3 may be provided in the control device 4. In this way, it is possible to appropriately change the types of devices that constitute the control system 7.
- the functions of the learning device 1, information processing devices 2, 3, and control device 4 can be realized by a program for causing a computer to function as the device, and a program (index value calculation program/search program) for causing a computer to function as each control block of the device (particularly each part included in the control unit 20 and the control unit 30).
- the device includes a computer having at least one control device (e.g., a processor) and at least one storage device (e.g., a memory) as hardware for executing the program.
- control device e.g., a processor
- storage device e.g., a memory
- the program may be recorded on one or more computer-readable recording media, not on a temporary basis.
- the recording media may or may not be included in the device. In the latter case, the program may be supplied to the device via any wired or wireless transmission medium.
- each of the above control blocks can be realized by a logic circuit.
- a logic circuit for example, an integrated circuit in which a logic circuit that functions as each of the above control blocks is formed is also included in the scope of the present invention.
- An information processing device includes an outlier determination unit that determines whether or not each of a plurality of input data input to a machine learning model is an outlier using a threshold for determining whether or not training data included in a training dataset used to generate the machine learning model is an outlier, and an index value calculation unit that calculates an index value indicating the suitability of the machine learning model for the input data based on a determination result from the outlier determination unit.
- the information processing device is the same as in aspect 1, and includes a threshold determination unit that calculates, for each piece of training data included in the training dataset, a deviation indicating the degree to which that training data deviates from other training data, and determines a deviation of a predetermined rank from the calculated deviations as the threshold, and the outlier determination unit calculates, for each piece of input data included in the plurality of input data, a deviation indicating the degree to which that input data deviates from other input data, and compares the calculated deviation with the threshold to determine whether each piece of input data is an outlier.
- the machine learning model is a model that predicts whether a future state of a specified object will be normal or abnormal from the input data related to the object
- the index value calculation unit calculates, as the index value, the number of input data items that, among the input data items determined to be outliers, were abnormal in the state of the object after prediction using the input data items, or a value calculated using the number of input data items.
- the information processing device is any one of aspects 1 to 3, in which the machine learning model is a model that predicts whether a future state of a predetermined target will be normal or abnormal from the input data related to the target, and includes a recall calculation unit that calculates a recall in the prediction by dividing the number of cases that were correctly determined to be abnormal in a prediction made by inputting a plurality of the input data into the machine learning model by the sum of the number of cases that were correctly determined to be abnormal and the number of cases that were erroneously determined to be normal, and a learning data extraction unit that extracts data to be used for re-learning the machine learning model from among the plurality of input data based on the index value and the recall.
- the machine learning model is a model that predicts whether a future state of a predetermined target will be normal or abnormal from the input data related to the target
- a recall calculation unit that calculates a recall in the prediction by dividing the number of cases that were correctly determined to be abnormal in a prediction made by inputting a plurality of
- the information processing device includes an outlier determination unit that determines whether each of a plurality of input data input to a machine learning model is an outlier using a threshold value for determining whether training data included in a training dataset used to generate the machine learning model is an outlier, and a notification unit that prompts the machine learning model to re-learn in response to a determination result from the outlier determination unit.
- the information processing device includes an outlier determination unit that determines whether each of a plurality of input data input to a machine learning model is an outlier using a threshold value for determining whether training data included in a training dataset used to generate the machine learning model is an outlier, and a learning data extraction unit that extracts data to be used for re-learning the machine learning model from among the plurality of input data based on a determination result of the outlier determination unit.
- the information processing device includes an outlier determination unit that determines whether each of a plurality of input data input to the machine learning model is an outlier using a threshold value for determining whether training data included in a training dataset used to generate the machine learning model is an outlier, and a learning unit that re-learns the machine learning model at a timing determined based on the determination result of the outlier determination unit.
- the control system according to aspect 8 of the present invention includes the information processing device according to aspect 1, a learning device that updates the machine learning model at a timing determined based on the index value, and a control device that determines the control content for a specified control target based on output data obtained by inputting input data to the updated machine learning model, and the information processing device acquires the input data input to the updated machine learning model and calculates an index value indicating the suitability of the machine learning model for the input data.
- the index value calculation method is an index value calculation method executed by at least one information processing device, and includes an outlier determination step of determining whether or not each of a plurality of input data input to the machine learning model is an outlier using a threshold value for determining whether or not the training data included in the training dataset used to generate the machine learning model is an outlier, and an index value calculation step of calculating an index value indicating the suitability of the machine learning model for the input data based on the determination result in the outlier determination step.
- the index value calculation program according to aspect 10 of the present invention is an index value calculation program for causing a computer to function as the information processing device described in aspect 1, and causes the computer to function as the outlier determination unit and the index value calculation unit.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
機械学習モデルの更新に関する処理を適切に行う。情報処理装置(2)は、訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、機械学習モデルに入力された入力データが外れ値であるか否かを判定する外れ値判定部(204)と、当該判定結果に基づき、入力データに対する機械学習モデルの適合性を示す指標値を算出する指標値算出部(205)と、を備える。
Description
本発明は、機械学習モデルの交換や再学習に関する処理を行う情報処理装置等に関する。
様々な分野で機械学習モデルの利用が進められている。例えば、下記の特許文献1には、ごみの焼却を行うと共に、焼却時に発生する熱を利用して発電を行うごみ焼却プラント設備において、機械学習したニューラルネットワークモデルを用いて所定時間後の発生蒸気量を予測することが記載されている。また、同文献には、新たに取得された学習データを用いて新たな機械学習モデルを生成すると共に、当該機械学習モデルの予測精度の評価値を算出し、先の機械学習モデルよりも評価値が高ければ、新たな機械学習モデルの方を使用することも記載されている。
しかしながら、上述のような従来技術おいて、機械学習モデルの予測精度を適切に評価することは難しい。これは、特許文献1の技術を適用する場合、所定時間後に発生蒸気量が低下すると予測されたときには、蒸気量を低下させないようにするための介入制御を行うためである。つまり、発生蒸気量が低下すると予測された後、発生蒸気量が低下しなかった場合には、予測が外れたのか、予測は当たっていたが介入制御により低下を防ぐことができたのかの区別がつかず、それゆえ予測精度の適切な評価が難しい。
このように、機械学習モデルによる推論結果の正否の検証が難しい場合には、機械学習モデルの交換の必要性や再学習の必要性の判定、あるいは再学習に用いるデータの選別等、機械学習モデルの更新に関する各種処理を適切に行うことが困難になるという問題がある。これは、プラントで使用される予測モデルに限られず、推論結果の正否の検証が難しい事象について推論を行う機械学習モデルを用いる場合に共通して生じる問題点である。
本発明の一態様は、機械学習モデルによる推論結果の正否の検証が難しい場合にも、機械学習モデルの更新に関する処理を適切に行うことを可能にする情報処理装置等を実現することを目的とする。
上記の課題を解決するために、本発明の一態様に係る情報処理装置は、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に基づき、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する指標値算出部と、を備える。
また、本発明の他の態様に係る情報処理装置は、上記の課題を解決するために、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に応じて前記機械学習モデルの再学習を促す報知部と、を備える。
また、本発明のさらに他の態様に係る情報処理装置は、上記の課題を解決するために、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に基づき、複数の前記入力データの中から前記機械学習モデルの再学習に用いるものを抽出する学習用データ抽出部と、を備える。
また、本発明のさらに他の態様に係る情報処理装置は、上記の課題を解決するために、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に基づいて決定されたタイミングで前記機械学習モデルの再学習を行う学習部と、を備える。
また、本発明の一態様に係る指標値算出方法は、上記の課題を解決するために、少なくとも1つの情報処理装置により実行される指標値算出方法であって、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定ステップと、前記外れ値判定ステップにおける判定結果に基づき、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する指標値算出ステップと、を含む。
本発明の一態様によれば、機械学習モデルの更新に関する処理を適切に行うことが可能になる。
〔システム概要〕
図1は、本発明の一実施形態に係る制御システム7の概要を示す図である。図示のように、制御システム7には、学習装置1と、情報処理装置2と、情報処理装置3と、制御装置4と、制御対象5とが含まれている。制御システム7は、制御装置4により制御対象5の動作を制御するシステムであり、制御対象5に対する制御は、推論モデルによる推論の結果に基づいて行われる。
図1は、本発明の一実施形態に係る制御システム7の概要を示す図である。図示のように、制御システム7には、学習装置1と、情報処理装置2と、情報処理装置3と、制御装置4と、制御対象5とが含まれている。制御システム7は、制御装置4により制御対象5の動作を制御するシステムであり、制御対象5に対する制御は、推論モデルによる推論の結果に基づいて行われる。
制御対象5は、制御装置4の制御対象であり機器51を含む。また、制御対象5には計測装置52が取り付けられている。計測装置52は、機器51に関するデータの計測を行うものであり、機器51や計測したいデータに応じたものを適用すればよい。例えば、機器51の内部あるいは外部の温度を計測したい場合には、計測装置52として温度センサを用いればよい。
制御対象に含まれる機器51および計測装置52は、各1つであってもよいし、複数であってもよい。例えば、制御対象5が1つのプラントである場合、機器51はプラント内の機器である。この場合、計測装置52は、機器51に取り付けられていてもよいし、プラント内の他の場所に取り付けられてもよく、プラント外に設置されていてもよい。
学習装置1は、制御対象5に対する制御の内容を決定するために用いられる推論モデルを生成する。推論モデルは、訓練データを用いた機械学習により生成されるから機械学習モデルと呼ぶこともできる。また、学習装置1は、推論モデルの再学習を行い、当該推論モデルを更新する。なお、機械学習のアルゴリズムは任意であり、使用する訓練データや推論内容等に応じて適当なアルゴリズムを適用すればよい。
推論モデルは、制御対象5に対する制御の内容を決定する指針となるような事項についての推論を行うものであればよい。例えば、推論モデルは、制御対象5の将来の稼働状態が正常であるか否かを予測するものであってもよい。また、例えば、推論モデルは、将来の計測装置52の測定値を予測するものであってもよいし、制御対象5に対する最適な制御の内容を予測するものであってもよい。
情報処理装置2は、学習装置1が生成する推論モデルによる推論の際に当該推論モデルに入力された入力データに対する当該推論モデルの適合性を示す指標値を算出する。詳細は後述するが、情報処理装置2は、上記指標値の算出にあたり、推論モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、推論モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する。そして、情報処理装置2は、その判定結果に基づいて上記指標値を算出する。これにより、入力データに対する推論モデルの適合性を的確に判定することが可能になる。この指標値は、学習装置1に推論モデルを更新させるタイミングを決定するために使用される。
情報処理装置3は、制御対象5の制御に関するパラメータの最適値の探索を行う。また、情報処理装置3は、制御対象5の制御に関するパラメータの代わりに、あるいは当該パラメータに加えて、推論モデルによる推論に関するパラメータの最適値の探索を行ってもよい。この探索により検出されたパラメータは制御装置4に提供され、制御装置4はこのパラメータを適用して制御対象5に対する制御を行う。
詳細は後述するが、情報処理装置3は、推論モデルによる推論および該推論の結果に応じた制御の少なくとも何れかに関する上述のパラメータと、当該制御後の制御対象5の稼働状態との関係を示す関数の予測分布を算出する。そして、情報処理装置3は、算出した予測分布に基づいてパラメータの最適値の候補を探索する。これにより、オペレータの技能に左右されることなくパラメータを適切に設定することが可能になる。
制御装置4は、上述の推論モデルを用いて推論を行うと共に、当該推論の結果に基づいて制御対象5に対する制御内容を決定する。具体的には、制御装置4は、データ取得部41と、推論部42と、制御内容決定部43とを備えており、これらの各部により上述の機能が実現される。
データ取得部41は、推論に必要なデータを取得する。例えば、データ取得部41は、計測装置52により計測された計測データを取得してもよい。データ取得部41が取得したデータは、そのままあるいは所定のデータ処理を施した上で、推論モデルの入力データとされる。そして、推論部42は、上述の推論モデルに上述の入力データを入力し、出力データを得る。
制御内容決定部43は、推論部42の推論の結果、すなわち上述の出力データに応じた制御内容を決定する。例えば、推論モデルが制御対象5の将来の稼働状態が正常であるか否かを予測するものである場合、制御内容決定部43は、稼働状態が正常である可能性が高いことを示す出力データが出力されたときには制御内容を従前の内容から変更しないようにしてもよい。一方、制御内容決定部43は、稼働状態が正常ではない可能性が高いことを示す出力データが出力されたときには、稼働状態を正常にするための制御内容を決定すればよい。制御内容は、情報処理装置3が検出したパラメータに基づいて決定される。
なお、学習装置1が推論モデルを更新したときには、データ取得部41は更新後の推論モデルを取得する。そして、推論部42は更新後の推論モデルに入力データを入力することにより出力データを得て、制御内容決定部43は当該出力データに基づいて制御対象5に対する制御内容を決定する。
以上のように、制御システム7は、訓練データが外れ値であるか否かを判定するための閾値を用いて推論モデルに入力された入力データが外れ値であるか否かを判定し、その判定結果に基づいて、当該入力データに対する推論モデルの適合性を示す指標値を算出する情報処理装置2と、算出された指標値に基づいて決定されたタイミングで推論モデルを更新する学習装置1と、更新後の推論モデルに入力データを入力することにより得られた出力データに基づいて制御対象5に対する制御内容を決定する制御装置4とを含む。このようにして推論モデルが更新されると、情報処理装置2は、更新後の推論モデルに入力された入力データを取得して、当該入力データに対する推論モデルの適合性を示す指標値を算出する。
このように、制御システム7では、推論モデルの再学習および更新と、推論モデルと入力データとの適合性を示す指標値の算出とを繰り返し行うことができる。これにより、適切なタイミングで再学習を行い、制御対象5に対する制御内容が妥当である状態を維持することが可能になる。
また、以上のように、制御システム7は、あるパラメータが適用されている期間における、当該パラメータと制御対象5の稼働状態との関係を示す関数の予測分布を算出し、算出した予測分布に基づいて上記パラメータの最適値の候補を探索する情報処理装置3と、検出された最適値の候補を適用して制御対象5に対する制御を行う制御装置4と、を含む。なお、あるパラメータとは、制御対象5の制御と、推論モデルによる推論との少なくとも何れかに関するパラメータである。
そして、情報処理装置3は、検出された候補が適用されている期間における稼働状態を示す結果データを取得し、当該結果データに基づいて予測分布を更新すると共に、更新後の予測分布に基づいてパラメータの最適値の新たな候補を探索する。これにより、制御システム7では、制御対象5に対する制御を行いながら、パラメータを最適値に近付けていくことができる。
〔情報処理装置2の構成〕
図2は、情報処理装置2の要部構成の一例を示すブロック図である。図示のように、情報処理装置2は、情報処理装置2の各部を統括して制御する制御部20と、情報処理装置2が使用する各種データを記憶する記憶部21を備えている。また、情報処理装置2は、情報処理装置2が他の装置と通信するための通信部22、情報処理装置2に対する各種データの入力を受け付ける入力部23、および情報処理装置2が各種データを出力するための出力部24を備えている。
図2は、情報処理装置2の要部構成の一例を示すブロック図である。図示のように、情報処理装置2は、情報処理装置2の各部を統括して制御する制御部20と、情報処理装置2が使用する各種データを記憶する記憶部21を備えている。また、情報処理装置2は、情報処理装置2が他の装置と通信するための通信部22、情報処理装置2に対する各種データの入力を受け付ける入力部23、および情報処理装置2が各種データを出力するための出力部24を備えている。
また、制御部20には、データ取得部201、平均距離算出部202、閾値決定部203、外れ値判定部204、指標値算出部205、再学習要否判定部206、再現率算出部207、および学習用データ抽出部208が含まれている。
データ取得部201は、情報処理装置2で使用する各種データを取得する。例えば、データ取得部201は、推論モデルの生成に用いた複数の訓練データを含む訓練データセットや、推論のために推論モデルに入力された入力データを取得する。例えば、データ取得部201は、学習装置1から訓練データセットを取得し、制御装置4から入力データを取得してもよい。
平均距離算出部202は、データ間の平均距離を算出する。具体的には、平均距離算出部202は、データ取得部201が取得する訓練データセットに含まれる訓練データの1つと、当該訓練データからの距離が最も近い所定数の訓練データのそれぞれとの距離の平均値を算出する処理を、各訓練データについて行う。また、平均距離算出部202は、データ取得部201が取得する複数の入力データのうちの1つと、当該入力データからの距離が最も近い所定数の他の入力データのそれぞれとの距離の平均値を算出する処理を、各入力データについて行う。
閾値決定部203は、データ取得部201が取得する訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を決定する。より詳細には、閾値決定部203は、訓練データセットに含まれる各訓練データについて、当該訓練データが他の訓練データに対して乖離している程度を示す乖離度を算出し、算出した乖離度のうち所定の順位の乖離度を閾値に決定する。上記乖離度は、例えば、平均距離算出部202が各訓練データについて算出する平均値であってもよい。
外れ値判定部204は、データ取得部201が取得する複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する。この判定には、閾値決定部203が決定する閾値が用いられる。つまり、外れ値判定部204は、閾値決定部203が決定する閾値を基準として入力データが外れ値であるか否かを判定する。
指標値算出部205は、外れ値判定部204の判定結果に基づき、入力データに対する推論モデルの適合性を示す指標値を算出する。指標値については後記〔指標値の例〕の項目で説明する。
再学習要否判定部206は、指標値算出部205が算出する指標値に基づいて推論モデルの再学習の要否を判定する。そして、再学習要否判定部206は、推論モデルの再学習が必要と判定したときには、学習装置1に指示して推論モデルの再学習を行わせる。つまり、再学習要否判定部206が、再学習が必要と判定したタイミングが、再学習を行うべきタイミングということになり、再学習要否判定部206は再学習のタイミングを決定しているともいえる。
再現率算出部207は、推論モデルに複数の入力データを入力して行った各推論における再現率を算出する。再現率は、真の値が正事例のものの中で、正事例と予測した割合を示す指標である。例えば、状態が正常であるか異常であるかを予測する推論モデルの場合、再現率は、(異常と正しく判定できた件数)/{(異常と正しく判定できた件数)+(異常を正常と誤判定した件数)}との式で算出することができる。つまり、再現率算出部207は、異常と正しく判定できた件数を、異常と正しく判定できた件数と異常を正常と誤判定した件数との和で除することにより、当該判定における再現率を算出する。
学習用データ抽出部208は、指標値算出部205が算出する指標値に基づいて、データ取得部201が取得する複数の入力データの中から推論モデルの再学習に用いるものを抽出する。上述のように、指標値算出部205が算出する指標値は、外れ値判定部204の判定結果に基づいて算出されるから、学習用データ抽出部208は、外れ値判定部204の判定結果に基づいて再学習に用いる入力データを抽出しているともいえる。
また、学習用データ抽出部208は、再現率算出部207が算出する再現率についても考慮して再学習に用いる入力データを抽出してもよい。学習用データ抽出部208は、抽出した入力データを、例えば再学習要否判定部206が推論モデルの再学習が必要と判定したときに、学習装置1に送信するようにしてもよい。
以上のように、情報処理装置2は、推論モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、推論モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部204と、外れ値判定部204の判定結果に基づき、入力データに対する推論モデルの適合性を示す指標値を算出する指標値算出部205と、を備える。
上記の構成によれば、訓練データが外れ値であるか否かを判定するための閾値を用いて推論モデルに入力された入力データが外れ値であるか否かを判定している。この処理では、仮に訓練データセットに含まれていたとすると外れ値と判定されるような入力データ、つまり学習済みの範囲から乖離した入力データが外れ値と判定される。
そして、学習済みの範囲から乖離した入力データの数や割合が増えたとき、入力データに対する推論モデルの適合性は低くなっているといえる。また、このとき、推論モデルの再学習や交換の必要性は高くなっているといえる。よって、上記の判定結果に基づいて指標値を算出する上記の構成によれば妥当な指標値を算出することができる。
また、この指標値の算出は、推論モデルによる推論結果を用いることなく行うことができる。このため、上記の構成によれば、推論結果の正否の検証が難しい場合にも妥当な指標値を算出すること、つまり推論に用いた入力データに対する推論モデルの適合性を的確に判定することが可能になる。そして、この指標値を用いることにより、推論モデルの更新に関する各種処理を適切に行うことも可能になる。
また、以上のように、情報処理装置2は、推論モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、推論モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部204と、外れ値判定部204の判定結果に基づき、推論モデルに入力された複数の入力データの中から推論モデルの再学習に用いるものを抽出する学習用データ抽出部208とを備えている。
上述のように、学習済みの範囲から乖離した入力データの数や割合が増えたとき、入力データに対する推論モデルの適合性は低くなっているといえる。また、このとき、推論モデルの再学習や交換の必要性は高くなっているといえる。よって、外れ値判定部204の判定結果に基づいて推論モデルの再学習に用いる入力データを抽出する上記の構成によれば、再学習用のデータとして妥当なものを抽出することができる。
なお、学習用データ抽出部208は、指標値算出部205が算出する指標値を用いて入力データを抽出してもよいし、当該指標値は用いず、外れ値判定部204の判定結果を用いて入力データを抽出してもよい。つまり、再学習に用いる入力データを抽出するにあたり、指標値算出部205を備えていることは必須ではない。
また、上記の構成によれば、再学習に用いる入力データを抽出するにあたり、推論モデルによる推論結果を用いる必要がない。このため、上記の構成によれば、推論結果の正否の検証が難しい場合にも、推論モデルの更新に関する処理である再学習用のデータを抽出する処理を適切に行うことが可能になる。
〔情報処理装置3の構成〕
図3は、情報処理装置3の要部構成の一例を示すブロック図である。図示のように、情報処理装置3は、情報処理装置2と同様に、制御部30、記憶部31、通信部32、入力部33、および出力部34を備えている。情報処理装置3の制御部30には、データ取得部301、評価値算出部302、予測分布算出部303、探索部304、最適化制御部305、および表示制御部306が含まれている。
図3は、情報処理装置3の要部構成の一例を示すブロック図である。図示のように、情報処理装置3は、情報処理装置2と同様に、制御部30、記憶部31、通信部32、入力部33、および出力部34を備えている。情報処理装置3の制御部30には、データ取得部301、評価値算出部302、予測分布算出部303、探索部304、最適化制御部305、および表示制御部306が含まれている。
データ取得部301は、情報処理装置3において使用される各種データを取得する。具体的には、データ取得部301は、情報処理装置3(より正確には探索部304)が検出したパラメータを適用した制御が行われた期間における制御対象5の稼働状態を示す結果データを取得する。例えば、データ取得部301は、当該期間における計測装置52の計測データを結果データとして取得してもよい。
評価値算出部302は、データ取得部301が取得する結果データを用いて、制御対象5の稼働状態を評価した評価値を算出する。評価値は、制御対象5の稼働状態の良し悪しを表すものであればよい。なお、この評価値は、適用したパラメータの良し悪しを表しているともいえる。
例えば、制御システム7において、制御対象5の将来の稼働状態を示す値を予測する推論モデルを用い、制御対象5の稼働状態が正常である状態を維持する制御を行う場合、評価値算出部302は、異常時間率を評価値としてもよい。異常時間率は、制御対象5の稼働時間に対する、制御対象5の稼働状態が異常であった時間の比である。制御対象5の稼働状態が異常であるか正常であるかはデータ取得部301が取得する結果データに基づいて判定することができる。
予測分布算出部303は、上述のパラメータと、当該パラメータが適用されている期間における制御対象5の稼働状態との関係を示す関数の予測分布を算出する。制御対象5の稼働状態は、評価値算出部302の算出する評価値により表される。例えば、評価値算出部302が異常時間率を算出する場合、予測分布算出部303は、制御対象5の稼働状態を示す情報として異常時間率を用いる。この場合、異常時間率を低くすることができるような値にパラメータを設定することが可能になる。なお、評価値算出部302に評価値を算出させる代わりに、当該評価値を、入力部33等を介して入力するようにし、評価値算出部302を省略してもよい。
探索部304は、予測分布算出部303が算出する予測分布に基づいてパラメータの最適値の候補を探索する。なお、予測分布の算出方法と候補の探索方法については後記〔予測分布の算出方法と最適値の候補の探索方法の詳細〕の項目で説明する。
最適化制御部305は、予測分布算出部303と探索部304によるパラメータの最適化に関する制御を行う。例えば、最適化制御部305は、所定の条件を満たした場合に、予測分布算出部303と探索部304に最適化を終了させる制御を行う。
表示制御部306は、探索部304が検出した候補を表示装置に表示出力させる。表示装置は情報処理装置3が備えているものであってもよい。例えば、出力部34が表示装置である場合、表示制御部306は、探索部304が検出した候補を出力部34に表示出力させてもよい。また、表示制御部306は、情報処理装置3に接続されている表示装置に表示出力させてもよいし、通信部32を介して通信可能な他の装置を介して当該装置に接続された表示装置に表示出力させてもよい。
以上のように、情報処理装置3は、上述のパラメータと当該パラメータが適用されている期間における制御対象5の稼働状態との関係を示す関数の予測分布を算出する予測分布算出部303と、算出された予測分布に基づいてパラメータの最適値の候補を探索する探索部304と、を備える。
上記の構成によれば、当該パラメータと稼働状態との関係を定式化することが難しい場合であっても、妥当なパラメータを検出することが可能になる。よって、上記の構成によれば、推論モデルによる推論の結果に応じて所定の制御対象に対する制御を行う制御システム7において、個人の技能に左右されることなくパラメータを適切に設定することが可能になる。
また、予測分布算出部303は、探索部304が検出した候補と、当該候補が適用されている期間における制御対象5の稼働状態とに基づいて予測分布を更新する。そして、探索部304は、更新後の予測分布に基づいてパラメータの最適値の新たな候補を探索する。
この構成によれば、先に検出した最適値の候補を適用したときの稼働状態を踏まえて、最適値の新たな候補を探索するから、より妥当性の高い候補を検出することが可能になる。また、例えば季節変動や経年変化により制御対象の状態が変化した場合であっても、変化後の状態に適合した候補を検出することが可能になる。なお、この構成ではある程度のトライアンドエラーが発生し得るが、その回数は必要最小限に抑えられる。
〔閾値の決定方法と、外れ値であるか否かの判定方法〕
図4は、閾値の決定方法と入力データが外れ値であるか否かの判定方法を説明する図である。本項目では、図4に基づいて、閾値決定部203による閾値の決定方法と、外れ値判定部204による外れ値であるか否かの判定方法について説明する。
図4は、閾値の決定方法と入力データが外れ値であるか否かの判定方法を説明する図である。本項目では、図4に基づいて、閾値決定部203による閾値の決定方法と、外れ値判定部204による外れ値であるか否かの判定方法について説明する。
閾値決定部203は、推論モデルの機械学習に用いた訓練データセットを用いて閾値を決定する。閾値の決定にあたり、平均距離算出部202が、訓練データセットに含まれる訓練データの1つと、当該訓練データからの距離が最も近い所定数の訓練データのそれぞれとの距離の平均値を算出する処理を、各訓練データについて行う。上述のように、このようにして算出される平均値は、各訓練データが他の訓練データに対して乖離している程度を示すものであり、乖離度と呼ぶこともできる。
図4の左側には、訓練データセットに含まれる各訓練データの特徴空間におけるプロットを示している。例えば、上述の所定数を5としたとする。この場合、平均距離算出部202は、訓練データの1つであるデータD1について、当該特徴空間内においてデータD1から距離が最も近い5つの訓練データのそれぞれとデータD1との距離を算出し、それらの平均値を算出する。同様に、平均距離算出部202は、データD2についても、データD2から距離が最も近い5つの訓練データのそれぞれとデータD2との距離の平均値を算出する。平均距離算出部202は、このような処理を訓練データセットに含まれる各訓練データについて行う。これらの処理は、データ分類の一手法であるk近傍法で行われる処理と同様の処理である。
次に、閾値決定部203が、上述のようにして算出された平均値をその大きさの昇順に並べ、順位が所定の順位となる平均値を求め、当該平均値を閾値に決定する。算出された平均値が大きい値の訓練データほど、他の訓練データから乖離しており、訓練データセットの全体からみて外れ値である可能性が高いといえる。例えば、図4に示されるデータD2について算出される平均値は、データD1について算出される平均値よりも大きいため、データD2はデータD1よりも外れ値である可能性が高いといえる。
所定の順位は適宜設定すればよく、どのような値に設定するかは特に限定されない。例えば、訓練データセットにおける所定の割合の訓練データが当該順位より上位になるように所定の順位を設定してもよい。具体例を挙げれば、96%の訓練データが当該順位より上位になるようにする場合、(訓練データの総数)×0.96の値が所定の順位となる。この場合、訓練データの4%が外れ値となる。
一方、図4の右側には、推論モデルに入力された各入力データの特徴空間におけるプロットを示している。以下では、外れ値判定部204による外れ値であるか否かの判定方法について説明する。
外れ値判定部204は、以上のようにして決定された閾値を用いて、推論モデルに入力された入力データが外れ値であるか否かを判定する。外れ値であるか否かの判定においても、まず、平均距離算出部202による平均値の算出が行われる。より詳細には、平均距離算出部202は、入力データの1つと、当該入力データからの距離が最も近い所定数の入力データのそれぞれとの距離の平均値を算出する処理を、各入力データについて行う。平均距離算出部202により算出される平均値は、各入力データが他の入力データに対して乖離している程度を示しており、乖離度と呼ぶこともできる。
図4の右側の例においても、同図の左側の例と同様に所定数は5である。この場合、平均距離算出部202は、入力データの1つであるデータd1について、特徴空間内においてデータd1から距離が最も近い5つの入力データのそれぞれとデータd1との距離を算出し、それらの平均値を算出する。
そして、外れ値判定部204は、算出された平均値と、閾値決定部203が決定した閾値とを比較し、それらの大小関係に基づいてデータd1が外れ値であるか否かを判定する。例えば、外れ値判定部204は、図示のように、データd1について算出された平均値が閾値以上であった場合に、データd1を外れ値と判定してもよい。同様にして外れ値判定部204は、他の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する。
なお、外れ値の検方法は上述の例に限られない。例えば、LOF(Local Outlier Factor)により外れ値を検出してもよい。この場合、閾値決定部203は、局所密度の閾値を決定し、外れ値判定部204は、局所密度が当該閾値以下である入力データを外れ値と判定すればよい。また、例えば、ホテリング理論により外れ値を検出してもよい。この場合、閾値決定部203は、異常度の閾値を決定し、外れ値判定部204は、異常度が当該閾値以上である入力データを外れ値と判定すればよい。
以上のように、閾値決定部203は、訓練データセットに含まれる各訓練データについて、当該訓練データが他の訓練データに対して乖離している程度を示す乖離度を算出し、算出した乖離度のうち所定の順位の乖離度を閾値に決定してもよい。そして、外れ値判定部204は、複数の入力データに含まれる各入力データについて算出された、当該入力データが他の入力データに対して乖離している程度を示す乖離度を、閾値決定部203が決定した閾値と比較することにより、各入力データが外れ値であるか否かを判定してもよい。
上記の判定により外れ値と判定される入力データの数が増えた場合、推論に用いた入力データの特徴が、訓練データの特徴とは異なるものに変化したといえる。よって、上記の構成によれば、入力データに対する推論モデルの適合性を的確に判定することが可能になる。
なお、外れ値の検出方法と同様に、乖離度の算出方法も特に限定されない。例えば、上述のように近傍の所定数のデータからの平均距離を乖離度としてもよい。この場合、当該距離は、例えばユークリッド距離であってもよいし、マンハッタン距離やマハラノビス距離等の他の距離であってもよい。また、例えば、ホテリング理論における異常度を乖離度としてもよいし、LOFで用いられる局所密度を乖離度としてもよい。
〔指標値の例〕
指標値算出部205が算出する指標値は、入力データに対する推論モデルの適合性を示すものであればよい。例えば、指標値算出部205は、所定期間に外れ値判定部204が外れ値と判定した入力データの総数を上記指標値としてもよい。例えば、制御対象5を毎日稼働させる場合に、一日のうちに推論に用いられた複数の入力データのそれぞれについて当該入力データが外れ値であるか否かが判定されたとする。この場合、指標値算出部205は、ある日に外れ値であると判定された入力データの総数を、その日の終了時点における推論モデルの適合性を示す指標値として算出してもよい。
指標値算出部205が算出する指標値は、入力データに対する推論モデルの適合性を示すものであればよい。例えば、指標値算出部205は、所定期間に外れ値判定部204が外れ値と判定した入力データの総数を上記指標値としてもよい。例えば、制御対象5を毎日稼働させる場合に、一日のうちに推論に用いられた複数の入力データのそれぞれについて当該入力データが外れ値であるか否かが判定されたとする。この場合、指標値算出部205は、ある日に外れ値であると判定された入力データの総数を、その日の終了時点における推論モデルの適合性を示す指標値として算出してもよい。
また、例えば、指標値算出部205は、外れ値判定部204が外れ値と判定した入力データの数を用いて指標値を算出してもよい。例えば、指標値算出部205は、所定期間に計測装置52で計測された入力データのうち、外れ値判定部204が外れ値と判定した入力データの割合を指標値として算出してもよい。
また、推論モデルが、所定の対象(例えば制御対象5)に関する入力データから、当該対象の将来の状態が正常であるか異常であるかを予測するモデルであったとする。この場合、指標値算出部205は、外れ値であると判定された入力データのうち、当該入力データを用いた予測後に上記対象の状態が異常であった入力データの数または当該入力データの数を用いて算出される値を指標値として算出してもよい。
外れ値であると判定された入力データは、入力データを用いた予測後に対象の状態が異常であったものと正常であったものとに分類することができる。このうち、予測後に対象の状態が異常であったものについては、異常という状態に応じた特徴が含まれているといえる。
一般に正常という状態は変わらないが、異常という状態には多様性があるから、異常という状態に応じた特徴が含まれている入力データに外れ値が多いときには、異常という状態が学習時から変化した可能性があり、再学習の必要性が高いといえる。よって、上記の構成によれば、異常という状態の性質が変化することを考慮した妥当な指標値を算出することができる。
〔再現率を考慮した再学習要否の判定〕
上述のように、推論モデルは、所定の対象に関する入力データから、当該対象の将来の状態が正常であるか異常であるかを予測するモデルであってもよい。この場合、異常である状態を見逃すつまり実際には異常であるのに正常と判定してしまう可能性を低減するという観点から、推論モデルの精度は再現率で評価することが好ましい。
上述のように、推論モデルは、所定の対象に関する入力データから、当該対象の将来の状態が正常であるか異常であるかを予測するモデルであってもよい。この場合、異常である状態を見逃すつまり実際には異常であるのに正常と判定してしまう可能性を低減するという観点から、推論モデルの精度は再現率で評価することが好ましい。
上記のような推論モデルの推論結果の正否の検証は難しい場合があるが、再現率を単体で利用するのではなく、指標値算出部205が算出する指標値と共に利用することにより、効果的な再学習が可能になる。
これについて、図5に基づいて説明する。図5は、廃棄物を焼却することにより発生した熱を利用して発電を行う廃棄物焼却発電プラントにおいて、指標値算出部205が算出した指標値と再現率の遷移を示す図である。つまり、ここでは制御対象5が廃棄物焼却発電プラントである例を示している。なお、指標値は、1日あたりの外れ値と判定された入力データの総数である。また、同図には、上記廃棄物焼却発電プラントにおける蒸気量の設定値の遷移についても併せて示している。同図の横軸は時間(日)であり、縦軸の値は0~1の値に正規化したものである。
図5において、円C1で示した期間では、再現率は高い水準で推移している。一方、指標値については、直近まで低い水準であった値が急増し、その後、高い水準で推移している。指標値の急増の直前に設定値が大きい値に変化していることから、指標値の急増の原因は設定値が変更されて入力データの特徴が変化したことにあると考えられる。
一方、円C2で示した期間では、設定値に大きな変化がないにもかかわらず、指標値が増加し、再現率が低下している。この期間においては、設定値の変更以外の要因により、外れ値と判定された入力データが増えると共に、再現率が低下したと考えられる。このように指標値が増加し、かつ再現率が低下している期間は、推論モデルが異常と正常を分類する能力が低い期間であるといえる。
このように、所定の対象に関する入力データから、当該対象の将来の状態が正常であるか異常であるかを予測する推論モデルを用いる場合、再現率算出部207は、推論モデルに複数の入力データを入力して行った予測における再現率、すなわち、異常と正しく判定できた件数を、異常と正しく判定できた件数と異常を正常と誤判定した件数との和で除した値を算出してもよい。
再現率が低下している期間は、推論モデルによる正常であるか異常であるかの予測の精度が低下している期間であるといえるから、再現率は、推論モデルが異常と正常を分類する能力の高低を示す指標として利用できると考えられる。しかし、再現率の算出に用いられる、異常と正しく判定できた件数と異常を正常と誤判定した件数は、推論モデルの予測結果に基づく介入制御やオペレータの操作等の影響を受けるため、再現率を絶対的な評価指標とすることは好ましくない。一方で、上述の指標値を用いれば、使用された入力データが未学習の傾向を持つ期間を特定することが可能である。
このため、学習用データ抽出部208は、再現率算出部207が算出する再現率と、指標値算出部205が算出する指標値とに基づいて、複数の入力データの中から推論モデルの再学習に用いるものを抽出してもよい。これにより、特に学習すべき期間(入力データが未学習の傾向を持ち、かつ回避すべき異常となってしまった期間)を推定することができ、効率よく学習すべきデータ期間を特定し、当該期間の入力データを再学習用のデータとして抽出することができる。例えば、図5の例において、取得された入力データのうち、円C2で示した期間の入力データを用いて効果的な再学習を行うこともできる。
〔予測分布の算出方法と最適値の候補の探索方法の詳細〕
予測分布算出部303による予測分布の算出方法(更新も含む)の詳細と、探索部304による最適値の候補の探索方法の詳細を以下説明する。なお、以下の説明は、ベイズ最適化における予測分布の算出方法と探索方法に関するものである。ただし、予測分布を用いて最適値の候補を探索するものであれば、以下の説明に係る方法以外の方法を適用することも可能である。
予測分布算出部303による予測分布の算出方法(更新も含む)の詳細と、探索部304による最適値の候補の探索方法の詳細を以下説明する。なお、以下の説明は、ベイズ最適化における予測分布の算出方法と探索方法に関するものである。ただし、予測分布を用いて最適値の候補を探索するものであれば、以下の説明に係る方法以外の方法を適用することも可能である。
最適化の対象とするパラメータがN個ある場合、それらの制御パラメータは、
と表され、
それに対する評価値は、
それに対する評価値は、
と表される。
予測分布算出部303は、データ取得部301が取得する結果データに基づいて、最適化の対象とするパラメータと制御後における制御対象の稼働状態との関係を示す関数の予測分布を算出する。なお、この関数を以下では評価関数f(θ)と呼ぶ。また、新たな結果データ(例えば、探索部304が検出した候補を適用した制御の結果を示す結果データ)が取得されたときには、予測分布算出部303は、その結果データが反映されるように予測分布を更新する。
パラメータと稼働状態との関係を、ガウスノイズεn~Ν(0,β)を用いて以下のように仮定する。
これにより、ガウス過程による評価関数の予測分布として以下の分布が得られる。
ここで、k*=k(θ,θ)であり、KΘは[KΘ]i,j=k(θi,θj)で得られるグラム行列である。また、fは以下のように表される。
kΘ,*は、[kΘ,*]i=k(θi,θ)の縦ベクトルであり、k(・,・)は、カーネル関数である。ここではカーネル関数のパラメータをαkとする。
平均関数μ(θ)は、結果データ(および当該結果データから評価値算出部302が算出した評価値)から予測される評価関数の平均値を示す。また、分散関数σ(θ)は、結果データ(および当該結果データから評価値算出部302が算出した評価値)から予測される評価関数の分散である。σ(θ)は、予測の不確実性を示し、結果データが不足している領域ではその値が大きくなる傾向がある。σが大きいと、予測が不確実であるといえ、予測の確実性を上げるために必要な結果データが不足しているといえる。数式(3)から明らかなように、分散関数σ(θ)に含まれるカーネル関数およびカーネル関数のパラメータαkは、予測分布の算出に影響を与える。予測分布の算出の際には、パラメータαkの最適化が行われる。最適化の方法は特に限定されず、例えば一般的なベイズ最適化で適用されている各種の最適化手法を適用することもできる。
探索部304は、最適な制御パラメータを求めるために、最適な制御パラメータの候補を探索する。具体的には、探索部304は、後記数式(4)、(5)に示されるように、平均関数μ(θ)と分散関数σ(θ)を用いて獲得関数a(θ)を最大にするパラメータを探索する。この探索で検出されたパラメータが、最適なパラメータの候補となる。この探索は、UCB(Upper Confidence Bound)戦略に基づいている。
数式(5)におけるκは探索と利用を調節するためのパラメータである。受付部104が、フィードバック制御の結果が既知の値の周辺と、フィードバック制御の結果が未知の範囲と、の何れを重視して探索を行うかの選択を受け付けた場合、探索部304は、κを受け付けた選択に応じた値に設定し、候補の探索を行う。
無論、他の方法で新たなパラメータを探索することも可能である。例えば、PI(Probability of Improvement)戦略や、EI(Expected Improvement)戦略で最適なパラメータの候補を探索してもよい。この他にも、例えば、PTR(Probability in Target Range)あるいはMI(Mutual Information)等の戦略を適用し、各戦略に応じた獲得関数を用いて最適なパラメータの候補を探索してもよい。
なお、評価関数の値を最小化するパラメータを最適なパラメータとして求める場合(例えば稼働状態を示す情報として異常時間率を用いる場合等)には、獲得関数a(θ)を最小にするパラメータを探索すればよい。
探索部304が検出したパラメータの最適値の候補は、表示制御部306が表示装置に表示させる等により情報処理装置3のオペレータに提示されてもよい。そして、制御装置4によりその候補を適用した制御対象5に対する制御が開始され、当該制御が行われた期間に計測装置52により計測された計測データが制御装置4に取得され、蓄積される。そして、蓄積された計測データには適用されたパラメータが対応付けられ、新たな結果データとして情報処理装置3に入力される。
そして、予測分布算出部303は、新たな結果データに基づいて予測分布を更新し、探索部304は、予測分布算出部303による更新後の予測分布に基づいて構成される評価関数に基づき、パラメータの最適値を探索する。このように、予測分布の更新と最適値の探索とを繰り返すことにより、最適なパラメータを検出することが可能になる。
〔表示画面例(結果表示)〕
表示制御部306は、例えば図6のような表示画面を表示させて探索の結果をオペレータに提示してもよい。図6は、探索結果の表示画面の例を示す図である。より詳細には、図6は、探索するパラメータに含まれる要素a~dのそれぞれについて検出された候補の履歴を平行座標上に示した図である。
表示制御部306は、例えば図6のような表示画面を表示させて探索の結果をオペレータに提示してもよい。図6は、探索結果の表示画面の例を示す図である。より詳細には、図6は、探索するパラメータに含まれる要素a~dのそれぞれについて検出された候補の履歴を平行座標上に示した図である。
このように、探索するパラメータには、複数の要素が含まれていてもよく、これにより複数の要素を並行して最適化することができる。例えば、上述の焼却発電プラントが制御対象5である場合、上記要素a~dは、自動燃焼制御に関する各種制御パラメータとしてもよい。自動燃焼制御に関する制御パラメータとしては、例えば、燃焼速度の調整、乾燥空気の供給流量の調整、燃焼空気の供給流量の調整、燃焼空気の温度の調整、および焼却する廃棄物層の高さの調整に関するパラメータ等が挙げられる。
また、探索するパラメータには、例えば、推論モデルの推論の結果に応じた、制御対象5に対する制御の内容と制御量とを示すものが含まれていてもよい。これにより、推論モデルによる推論の結果に応じて制御の内容と制御量を適切に設定することが可能になる。
また、探索するパラメータには、制御対象5に対する制御の内容と制御量とを示す上記パラメータに加え、推論モデルによる推論に用いられる推論用パラメータが含まれていてもよい。この場合、探索部304は、予測分布算出部303が算出する予測分布に基づいて、制御対象5に対する制御の内容と制御量の最適値の候補と、推論用パラメータの最適値の候補の両方を探索する。
なお、推論用パラメータは、例えば、推論モデルがニューラルネットワークモデルである場合には、学習により求められる重み値のようなハイパーパラメータであってもよい。また、推論モデルが、複数の機械学習モデルの推論結果をアンサンブルして最終的な推論結果を出力するものである場合、上記推論用パラメータを、アンサンブル比(各推論結果に対する重み)としてもよい。
制御対象5の稼働状態は、推論モデルによる推論の結果や、その結果に応じた介入制御等の影響を受ける。このため、制御対象5に対する制御の内容と制御量の最適値と、推論用パラメータの最適値とを個別に算出した場合、全体として最適なパラメータの組み合わせとならない場合がある。この点、上記の構成によれば、制御対象5に対する制御の内容と制御量の最適値と、推論用パラメータの最適値の両方を探索するから、全体として最適なパラメータの組み合わせを検出することが可能になる。
また、制御対象5の将来の状態が正常であるか異常であるかを予測する推論モデルを用いる場合、当該推論モデルの出力値は、正常である確率および/または異常である確率を示すものとなる。このため、制御装置4において、制御内容決定部43が、正常であるか異常であるかに応じた制御内容を決定するためには、上記の確率についての閾値を用いて、正常であるか異常であるかを判定する必要がある。
そして、上記閾値をどのような値に設定するかは、状況に応じた妥当な制御内容を決定するために重要である。このため、上記要素a~dには、制御対象5の将来の状態が正常であるか異常であるかを判定する当該閾値が含まれていてもよい。これにより、正常であるか異常であるかを適切に判定し、その判定結果に応じた妥当な制御を行うことが可能になる。なお、最適化するパラメータに含まれる要素の数は任意であり、また、各要素の内容も上記の例に限られない。
ここで図6の説明に戻る。図6に示す平行座標は、縦軸がパラメータに含まれる各要素の値である。そして、当該平行座標上に、1回の探索で検出されたパラメータに含まれる要素を折れ線で結んだグラフを図示している。つまり、折れ線と縦軸との交点が各要素の値を示している。このようなグラフは並行座標プロットと呼ばれる。図6に示す並行座標プロットは、探索部304による各探索で検出された候補の値の遷移を示しており、遷移情報と呼ぶことができる。
このように、表示制御部306は、探索部304による各探索で検出された候補の値の遷移を示す遷移情報を表示してもよい。これにより、パラメータの最適値の候補が、探索を重ねることによりどのように遷移したかをオペレータに容易に認識させ、最適化が正常に進んでいるかを確認させることができる。
特に、最適化の対象とするパラメータが複数の要素を含んでいる場合、表示制御部306は、平行座標プロットすなわち各探索において検出された候補の値を要素ごとに示すグラフを平行座標上に表示してもよい。これにより、パラメータに含まれる各要素について検出された各候補が、探索を重ねることによりどのように変化したかをオペレータに容易に認識させ、最適化が正常に進んでいるかを確認させることができる。
なお、平行座標プロットは遷移情報の表示態様の一例に過ぎず、遷移情報の表示態様は任意である。例えば、表示制御部306は、探索部304による各探索で検出された候補の値の遷移を示すパラレルセットグラフ、等高線プロット、あるいはコレログラフ等を遷移情報として表示してもよい。
また、図6の例において、折れ線グラフを構成する線分には、実線のものと、破線のものと、一点鎖線のものとがある。これらの線分のパターンは、当該線分上の各要素の値を適用して制御対象5の制御を行った後の制御対象5の稼働状態に応じたものとなっている。具体的には、異常時間率が第1の閾値未満であったときの要素を結ぶ線分は実線、異常時間率が第1の閾値以上、第2の閾値未満であったときの要素を結ぶ線分は一点鎖線、異常時間率が第2の閾値以上であったときの要素を結ぶ線分は破線となっている。
このように、表示制御部306は、検出された候補を適用して制御対象5の制御を行った後の制御対象5の稼働状態に応じて遷移情報に含まれる各候補の値の表示態様を異ならせてもよい。これにより、各候補の良し悪しを容易に認識させることができる。なお、稼働状態に応じた表示態様をどのようなものとするかは任意であり、図示の例に限られない。例えば、表示制御部306は、稼働状態に応じた色で各候補の値を表示させてもよい。この場合、稼働状態を評価した評価値(例えば異常時間率等)の値と、表示色との対応関係を予め定めておけばよい。これにより、表示制御部306は、評価値算出部302が算出する評価値に応じた表示色で各候補の値を表示させることができる。
〔情報処理装置2が実行する処理の流れ〕
情報処理装置2が実行する処理(指標値算出方法)の流れを図7に基づいて説明する。図7は、情報処理装置2が実行する処理の一例を示すフローチャートである。
情報処理装置2が実行する処理(指標値算出方法)の流れを図7に基づいて説明する。図7は、情報処理装置2が実行する処理の一例を示すフローチャートである。
S11では、データ取得部201が、訓練データセットを取得する。訓練データセットの取得方法は任意である。例えば、データ取得部201は、入力部23を介して入力された訓練データセットを取得してもよいし、通信部22を介して学習装置1から訓練データセットを取得してもよい。
S12では、平均距離算出部202が、S11で取得された訓練データセットに含まれる各訓練データについて、当該訓練データの近傍の所定数の訓練データとの距離の平均値をそれぞれ算出する。なお、ある訓練データの近傍の所定数の訓練データとは、その訓練データからの距離が最も近い所定数の他の訓練データである。
S13では、閾値決定部203が、S12で算出された複数の平均値のうち所定の順位の平均値を、入力データが外れ値であるか否かを判定するための閾値に決定する。なお、S11~S13の処理は、遅くともS16の処理が行われるまでに行っておけばよく、必ずしもS14の直前に行う必要はない。
S14では、データ取得部201が、推論モデルによる推論に用いられた入力データを取得する。入力データの取得方法は任意である。例えば、データ取得部201は、入力部23を介して入力された入力データを取得してもよい。また、例えば、データ取得部201は、通信部22を介して制御装置4から入力データを取得してもよいし、計測装置52から計測データを取得して入力データを生成してもよい。
なお、データ取得部201は、所定期間分の入力データをまとめて取得してもよいし、入力データをリアルタイムつまり当該入力データが推論モデルによる推論に用いられたあるいは用いられるタイミングで取得してもよい。
S15では、平均距離算出部202が、S14で取得された入力データについて、当該入力データの近傍の所定数の入力データとの距離の平均値を算出する。なお、S14で1つの入力データが取得された場合、平均距離算出部202は、それ以前に取得された複数の入力データとの距離の平均値を算出する。一方、S14で複数の入力データが取得された場合、平均距離算出部202は、入力データと、当該入力データの近傍の所定数の入力データとの距離の平均値を算出する処理を、取得された複数の入力データのそれぞれについて行う。
S16(外れ値判定ステップ)では、外れ値判定部204が、S15で算出された平均値に基づいて、S14で取得された入力データが外れ値であるか否かを判定する。より詳細には、外れ値判定部204は、S15で算出された平均値とS13で決定された閾値とを比較し、その比較結果に基づいて入力データが外れ値であるか否かを判定する。なお、S14で複数の入力データが取得された場合には、外れ値判定部204は、各入力データについて当該入力データが外れ値であるか否かを判定する。
S17(指標値算出ステップ)では、指標値算出部205が、S16の判定結果に基づいて入力データに対する推論モデルの適合性を示す指標値を算出する。例えば、指標値算出部205は、所定期間に計測装置52で計測された計測データに対応する入力データのうち、S16で外れ値であると判定された入力データの数を指標値として算出してもよい。
S18では、再学習要否判定部206が、S17で算出された指標値に基づいて再学習の要否を判定する。例えば、再学習要否判定部206は、S17で算出された指標値が所定の閾値以上であった場合に再学習要(S18でYES)と判定し、当該閾値未満であった場合に再学習不要(S18でNO)と判定してもよい。S18でNOと判定された場合には図7の処理は終了する。なお、リアルタイムで入力データを取得する場合、S18でNOと判定された場合にS14に戻り、新たな入力データを取得するようにしてもよい。
S18でYESと判定された場合にはS19に進み、再学習要否判定部206は、学習装置1にS14で取得された入力データを送信して推論モデルの再学習を行わせ、これにより図7の処理は終了する。
なお、再現率算出部207は、S14で取得された入力データを用いて行われた推論の再現率を算出してもよい。そして、学習用データ抽出部208は、S17で算出された指標値と、再現率算出部207が算出する再現率とに基づいて、S14で取得された複数の入力データの中から推論モデルの再学習に用いるものを抽出してもよい。そして、学習用データ抽出部208は、S18でYESと判定されたときに、再学習に用いる入力データを学習装置1に送信するようにしてもよい。
〔再学習を促す構成について〕
また、S19において、再学習要否判定部206は、再学習を行うように学習装置1を制御する代わりに、オペレータに推論モデルの再学習を促す処理を行ってもよい。この場合、再学習要否判定部206は、外れ値判定部204の判定結果に応じて推論モデルの再学習を促す報知部として機能する。なお、報知の態様および報知の対象は何れも特に限定されない。例えば、報知部210は、再学習が必要であることを示す情報を出力することによって報知してもよい。出力先は特に限定されず、例えば報知部210は、出力部24に当該情報を出力させてもよいし、学習装置1に当該情報を出力させてもよく、オペレータの所持する端末装置等の他の装置に当該情報を出力させてもよい。
また、S19において、再学習要否判定部206は、再学習を行うように学習装置1を制御する代わりに、オペレータに推論モデルの再学習を促す処理を行ってもよい。この場合、再学習要否判定部206は、外れ値判定部204の判定結果に応じて推論モデルの再学習を促す報知部として機能する。なお、報知の態様および報知の対象は何れも特に限定されない。例えば、報知部210は、再学習が必要であることを示す情報を出力することによって報知してもよい。出力先は特に限定されず、例えば報知部210は、出力部24に当該情報を出力させてもよいし、学習装置1に当該情報を出力させてもよく、オペレータの所持する端末装置等の他の装置に当該情報を出力させてもよい。
また、再学習を促す処理を行う場合、指標値算出部205は省略し、再学習要否判定部206が外れ値判定部204の判定結果を用いて再学習の要否を判定してもよい。例えば、再学習要否判定部206は、S16で外れ値であると判定された入力データの数をカウントし、カウントした数が所定の閾値以上であった場合に再学習要と判定してもよい。
このように、情報処理装置2は、推論モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、推論モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部204と、外れ値判定部204の判定結果に応じて推論モデルの再学習を促す再学習要否判定部(報知部)206と、を備える構成であってもよい。これにより、推論結果の正否の検証が難しい場合にも、推論モデルの更新に関する処理である再学習を促す処理を適切に行うことが可能になる。
〔情報処理装置2で再学習を行う構成について〕
また、情報処理装置2は、推論モデルの再学習を行う学習部を備えていてもよい。この場合、制御システム7から学習装置1を省略することができる。そして、この場合、図7のS18において再学習要と判定されると、S19では情報処理装置2が備える学習部により再学習が行われる。
また、情報処理装置2は、推論モデルの再学習を行う学習部を備えていてもよい。この場合、制御システム7から学習装置1を省略することができる。そして、この場合、図7のS18において再学習要と判定されると、S19では情報処理装置2が備える学習部により再学習が行われる。
この場合も、上記〔再学習を促す構成について〕で説明したように、指標値算出部205は省略してもよい。指標値算出部205を省略する場合、外れ値判定部204の判定結果を用いて再学習のタイミングが決定される。例えば、再学習要否判定部206が外れ値判定部204の判定結果を用いて再学習の要否を判定してもよく、この場合、再学習要と判定された時点が再学習のタイミングとなる。また、再学習要否判定部206を省略し、学習部が再学習を行うか否かを判定してもよく、この場合、学習部が外れ値判定部204の判定結果に基づいて再学習のタイミングを決定することになる。
このように、情報処理装置2は、推論モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、推論モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部204と、外れ値判定部204の判定結果に基づいて決定されたタイミングで推論モデルの再学習を行う学習部と、を備える構成であってもよい。
上記の構成によれば、訓練データが外れ値であるか否かを判定するための閾値を用いて推論モデルに入力された入力データが外れ値であるか否かを判定している。この処理では、仮に訓練データセットに含まれていたとすると外れ値と判定されるような入力データ、つまり学習済みの範囲から乖離した入力データが外れ値と判定される。
そして、学習済みの範囲から乖離した入力データの数や割合が増えたとき、入力データに対する推論モデルの適合性は低くなっているといえる。また、このとき、推論モデルの再学習や交換の必要性は高くなっているといえる。よって、外れ値判定部204の判定結果に基づいて決定されたタイミングで推論モデルの再学習を行う上記の構成によれば、妥当なタイミングで再学習を行うことができる。
また、上記の構成によれば、推論モデルによる推論結果を用いる必要がない。このため、上記の構成によれば、推論結果の正否の検証が難しい場合にも、推論モデルの更新に関する処理である再学習を適切に行うことが可能になる。
〔情報処理装置3が実行する処理の流れ〕
情報処理装置3が実行する処理(探索方法)の流れを図8に基づいて説明する。図8は、情報処理装置3が実行する処理の一例を示すフローチャートである。なお、図8の処理を実行する契機は特に限定されない。例えば、所定期間おきに実行するようにしてもよいし、制御対象5の稼働状態を示す異常時間率等の情報を基に、稼働状態が悪化しているあるいは悪化傾向にあると判定されたタイミングで実行するようにしてもよい。
情報処理装置3が実行する処理(探索方法)の流れを図8に基づいて説明する。図8は、情報処理装置3が実行する処理の一例を示すフローチャートである。なお、図8の処理を実行する契機は特に限定されない。例えば、所定期間おきに実行するようにしてもよいし、制御対象5の稼働状態を示す異常時間率等の情報を基に、稼働状態が悪化しているあるいは悪化傾向にあると判定されたタイミングで実行するようにしてもよい。
S21では、データ取得部301が、最適化の対象となるパラメータの初期値と、当該初期値に対応する結果データとを取得する。例えば、データ取得部301は、入力部33を介して入力される初期値と結果データを取得してもよい。パラメータの初期値に対応する結果データは、当該初期値を適用した制御対象5の制御が行われた期間における制御対象5の稼働状態を示すものであり、例えば当該期間に計測装置52により計測された計測値(計測データ)であってもよい。
また、データ取得部301は、S21において、初期値とその結果データに加えて、パラメータの上限値およびその上限値を適用したときの結果データと、パラメータの下限値およびその下限値を適用したときの結果データとを取得していてもよい。
パラメータの初期値の決定方法は特に限定されない。例えば、記述統計的手法等によりパラメータの初期値を決定してもよい。この場合、例えば、異常発生前後のパラメータの値の分布を示す度数分布表などを作成し、それを基に最適と考えられるパラメータの値を特定し、特定した値を初期値としてもよい。初期値が決まれば、パラメータの値を初期値に設定して制御対象5の制御を所定期間行い、当該期間における稼働状態を示す結果データを取得することができる。
また、パラメータの上限値と下限値の決定方法も特に限定されない。例えば、初期値と同様に記述統計的手法等により決定してもよいし、初期値を基準とし、初期値から所定幅だけ乖離した値を上限値および下限値としてもよい。後者の場合、例えば所定幅を10%として、初期値に初期値の10%の値を加えて上限値とし、初期値から初期値の10%の値を差し引いて下限値としてもよい。上限値および下限値のそれぞれについても、初期値と同様にして結果データを取得することができる。
S22では、評価値算出部302が、S21で取得された結果データを用いて、初期値を適用して制御対象5の制御を行った期間における制御対象5の稼働状態を評価した評価値を算出する。評価値としては、例えば上述した異常時間率を適用してもよい。なお、異常時間率を算出する際の「異常」の定義は、推論モデルの学習の際と同じとしてもよいし、より広い定義を適用してもよい。
S23(予測分布を算出するステップ)では、予測分布算出部303が、S21で取得された初期値と、S22で算出された評価値とに基づいて、最適化の対象とするパラメータと制御対象5の稼働状態との関係を示す関数の予測分布を算出する。なお、表示制御部306は、算出された予測分布を出力部34に出力させる等してオペレータに提示してもよい。
S24(候補を探索するステップ)では、探索部304が、S23で算出された予測分布に基づいてパラメータの最適値の候補を探索する。また、表示制御部306は、検出された候補を出力部34に出力させる等して当該候補をオペレータに提示する。
この後、オペレータは、提示された候補を適用することに問題がないか確認し、問題ないと判断した場合には、制御装置4に当該候補を入力して、当該候補を適用した制御対象5の制御を開始させる。そして、オペレータは、当該候補を適用した制御が行われた期間に計測装置52で計測された計測データ等を制御対象5の稼働状態を示す結果データとして、適用したパラメータの値(提示された候補の値)と共に情報処理装置3に入力する。これらの処理はオペレータを介さず自動で行うようにしてもよい。
なお、オペレータが、S24の探索の結果として提示された候補を適用することに問題があると判断した場合、S25以下の処理はスキップされる。この場合、探索部304は、先に検出した候補とは異なる候補を探索してもよい。また、予めパラメータの正常範囲を定めておいてもよい。この場合、オペレータの判断によらず、S24で検出された候補が当該正常範囲外である場合に、S25以下の処理がスキップされる。
S25では、データ取得部301が、上述のようにして入力された、適用されたパラメータの値と結果データとを取得する。なお、データ取得部301は、適用されたパラメータの値と結果データを制御装置4から取得してもよい。そして、S26では、評価値算出部302が、S25で取得された結果データを用いて評価値を算出する。
S27では、最適化制御部305が、S26で算出された評価値に基づいて最適化を終了するか否かを判定する。例えば、最適化制御部305は、評価値が所定の閾値以上である場合に最適化を終了する(S27でYES)と判定し、評価値が当該閾値未満である場合に最適化を続ける(S27でNO)と判定してもよい。S27でYESと判定された場合には図8の処理は終了し、S27でNOと判定された場合にはS23の処理に戻る。S27から遷移したS23では、S25で取得されたパラメータの値と結果データとを用いて予測分布が更新される。
〔変形例〕
上述の各実施形態で説明した各処理の実行主体は任意であり、上述の例に限られない。つまり、相互に通信可能な複数の情報処理装置(プロセッサということもできる)により、学習装置1、情報処理装置2、3、および制御装置4の機能を実現することができる。例えば、図7および図8のフローチャートに記載されている各処理を複数の情報処理装置に分担させることもできる。つまり、上述の各実施形態における制御方法の実行主体は、1つの情報処理装置であってもよいし、複数の情報処理装置であってもよい。
上述の各実施形態で説明した各処理の実行主体は任意であり、上述の例に限られない。つまり、相互に通信可能な複数の情報処理装置(プロセッサということもできる)により、学習装置1、情報処理装置2、3、および制御装置4の機能を実現することができる。例えば、図7および図8のフローチャートに記載されている各処理を複数の情報処理装置に分担させることもできる。つまり、上述の各実施形態における制御方法の実行主体は、1つの情報処理装置であってもよいし、複数の情報処理装置であってもよい。
また、上述のように、学習装置1の機能を情報処理装置2に持たせてこれらを1つの装置に統合してもよいし、学習装置1、情報処理装置2、および情報処理装置3の機能の一部または全部を制御装置4に持たせてもよい。このように、制御システム7をどのような装置で構成するかについても適宜変更することが可能である。
〔ソフトウェアによる実現例〕
学習装置1、情報処理装置2、3、および制御装置4(以下、「装置」と呼ぶ)の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の各制御ブロック(特に制御部20および制御部30に含まれる各部)としてコンピュータを機能させるためのプログラム(指標値算出プログラム/探索プログラム)により実現することができる。
学習装置1、情報処理装置2、3、および制御装置4(以下、「装置」と呼ぶ)の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の各制御ブロック(特に制御部20および制御部30に含まれる各部)としてコンピュータを機能させるためのプログラム(指標値算出プログラム/探索プログラム)により実現することができる。
この場合、上記装置は、上記プログラムを実行するためのハードウェアとして、少なくとも1つの制御装置(例えばプロセッサ)と少なくとも1つの記憶装置(例えばメモリ)を有するコンピュータを備えている。この制御装置と記憶装置により上記プログラムを実行することにより、上記各実施形態で説明した各機能が実現される。
上記プログラムは、一時的ではなく、コンピュータ読み取り可能な、1または複数の記録媒体に記録されていてもよい。この記録媒体は、上記装置が備えていてもよいし、備えていなくてもよい。後者の場合、上記プログラムは、有線または無線の任意の伝送媒体を介して上記装置に供給されてもよい。
また、上記各制御ブロックの機能の一部または全部は、論理回路により実現することも可能である。例えば、上記各制御ブロックとして機能する論理回路が形成された集積回路も本発明の範疇に含まれる。この他にも、例えば量子コンピュータにより上記各制御ブロックの機能を実現することも可能である。
〔まとめ〕
本発明の態様1に係る情報処理装置は、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に基づき、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する指標値算出部と、を備える。
本発明の態様1に係る情報処理装置は、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に基づき、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する指標値算出部と、を備える。
本発明の態様2に係る情報処理装置は、前記態様1において、前記訓練データセットに含まれる各訓練データについて、当該訓練データが他の訓練データに対して乖離している程度を示す乖離度を算出し、算出した乖離度のうち所定の順位の乖離度を、上記閾値に決定する閾値決定部を備え、前記外れ値判定部は、複数の前記入力データに含まれる各入力データについて、当該入力データが他の入力データに対して乖離している程度を示す乖離度を算出し、算出した乖離度を前記閾値と比較することにより、各入力データが外れ値であるか否かを判定する。
本発明の態様3に係る情報処理装置は、前記態様1または2において、前記機械学習モデルは、所定の対象に関する前記入力データから、当該対象の将来の状態が正常であるか異常であるかを予測するモデルであり、前記指標値算出部は、外れ値であると判定された前記入力データのうち、当該入力データを用いた予測後に前記対象の状態が異常であった入力データの数または当該入力データの数を用いて算出される値を前記指標値として算出する。
本発明の態様4に係る情報処理装置は、前記態様1から3の何れかにおいて、前記機械学習モデルは、所定の対象に関する前記入力データから、当該対象の将来の状態が正常であるか異常であるかを予測するモデルであり、前記機械学習モデルに複数の前記入力データを入力して行った予測における、異常と正しく判定できた件数を、異常と正しく判定できた件数と異常を正常と誤判定した件数との和で除することにより、当該予測における再現率を算出する再現率算出部と、前記指標値と前記再現率とに基づいて、複数の前記入力データの中から前記機械学習モデルの再学習に用いるものを抽出する学習用データ抽出部と、を備える。
本発明の態様5に係る情報処理装置は、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に応じて前記機械学習モデルの再学習を促す報知部と、を備える。
本発明の態様6に係る情報処理装置は、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に基づき、複数の前記入力データの中から前記機械学習モデルの再学習に用いるものを抽出する学習用データ抽出部と、を備える。
本発明の態様7に係る情報処理装置は、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、前記外れ値判定部の判定結果に基づいて決定されたタイミングで前記機械学習モデルの再学習を行う学習部と、を備える。
本発明の態様8に係る制御システムは、前記態様1に記載の情報処理装置と、前記指標値に基づいて決定されたタイミングで前記機械学習モデルを更新する学習装置と、更新後の前記機械学習モデルに入力データを入力することにより得られた出力データに基づいて所定の制御対象に対する制御内容を決定する制御装置と、を含み、前記情報処理装置は、更新後の前記機械学習モデルに入力された前記入力データを取得して、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する。
本発明の態様9に係る指標値算出方法は、少なくとも1つの情報処理装置により実行される指標値算出方法であって、機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定ステップと、前記外れ値判定ステップにおける判定結果に基づき、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する指標値算出ステップと、を含む。
本発明の態様10に係る指標値算出プログラムは、前記態様1に記載の情報処理装置としてコンピュータを機能させるための指標値算出プログラムであって、前記外れ値判定部および前記指標値算出部としてコンピュータを機能させる。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
1 学習装置
2 情報処理装置
203 閾値決定部
204 外れ値判定部
205 指標値算出部
207 再現率算出部
208 学習用データ抽出部
4 制御装置
7 制御システム
2 情報処理装置
203 閾値決定部
204 外れ値判定部
205 指標値算出部
207 再現率算出部
208 学習用データ抽出部
4 制御装置
7 制御システム
Claims (10)
- 機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、
前記外れ値判定部の判定結果に基づき、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する指標値算出部と、を備える情報処理装置。 - 前記訓練データセットに含まれる各訓練データについて、当該訓練データが他の訓練データに対して乖離している程度を示す乖離度を算出し、算出した乖離度のうち所定の順位の乖離度を、上記閾値に決定する閾値決定部を備え、
前記外れ値判定部は、複数の前記入力データに含まれる各入力データについて算出された、当該入力データが他の入力データに対して乖離している程度を示す乖離度を前記閾値と比較することにより、各入力データが外れ値であるか否かを判定する、請求項1に記載の情報処理装置。 - 前記機械学習モデルは、所定の対象に関する前記入力データから、当該対象の将来の状態が正常であるか異常であるかを予測するモデルであり、
前記指標値算出部は、外れ値であると判定された前記入力データのうち、当該入力データを用いた予測後に前記対象の状態が異常であった入力データの数または当該入力データの数を用いて算出される値を前記指標値として算出する、請求項1または2に記載の情報処理装置。 - 前記機械学習モデルは、所定の対象に関する前記入力データから、当該対象の将来の状態が正常であるか異常であるかを予測するモデルであり、
前記機械学習モデルに複数の前記入力データを入力して行った予測における、異常と正しく判定できた件数を、異常と正しく判定できた件数と異常を正常と誤判定した件数との和で除することにより、当該予測における再現率を算出する再現率算出部と、
前記指標値と前記再現率とに基づいて、複数の前記入力データの中から前記機械学習モデルの再学習に用いるものを抽出する学習用データ抽出部と、を備える、請求項1または2に記載の情報処理装置。 - 機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、
前記外れ値判定部の判定結果に応じて前記機械学習モデルの再学習を促す報知部と、を備える情報処理装置。 - 機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、
前記外れ値判定部の判定結果に基づき、複数の前記入力データの中から前記機械学習モデルの再学習に用いるものを抽出する学習用データ抽出部と、を備える情報処理装置。 - 機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定部と、
前記外れ値判定部の判定結果に基づいて決定されたタイミングで前記機械学習モデルの再学習を行う学習部と、を備える情報処理装置。 - 請求項1に記載の情報処理装置と、
前記指標値に基づいて決定されたタイミングで前記機械学習モデルを更新する学習装置と、
更新後の前記機械学習モデルに入力データを入力することにより得られた出力データに基づいて所定の制御対象に対する制御内容を決定する制御装置と、を含み、
前記情報処理装置は、更新後の前記機械学習モデルに入力された前記入力データを取得して、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する、制御システム。 - 少なくとも1つの情報処理装置により実行される指標値算出方法であって、
機械学習モデルの生成に用いた訓練データセットに含まれる訓練データが外れ値であるか否かを判定するための閾値を用いて、前記機械学習モデルに入力された複数の入力データのそれぞれについて、当該入力データが外れ値であるか否かを判定する外れ値判定ステップと、
前記外れ値判定ステップにおける判定結果に基づき、前記入力データに対する前記機械学習モデルの適合性を示す指標値を算出する指標値算出ステップと、を含む指標値算出方法。 - 請求項1に記載の情報処理装置としてコンピュータを機能させるための指標値算出プログラムであって、前記外れ値判定部および前記指標値算出部としてコンピュータを機能させるための指標値算出プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022198177A JP2024084020A (ja) | 2022-12-12 | 2022-12-12 | 情報処理装置、制御システム、指標値算出方法、および指標値算出プログラム |
JP2022-198177 | 2022-12-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024128089A1 true WO2024128089A1 (ja) | 2024-06-20 |
Family
ID=91484882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/043617 WO2024128089A1 (ja) | 2022-12-12 | 2023-12-06 | 情報処理装置、制御システム、指標値算出方法、および指標値算出プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024084020A (ja) |
WO (1) | WO2024128089A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015136885A1 (ja) * | 2014-03-10 | 2015-09-17 | 日本電気株式会社 | 評価システム、評価方法およびコンピュータ読み取り可能な記憶媒体 |
CN113569992A (zh) * | 2021-08-26 | 2021-10-29 | 中国电子信息产业集团有限公司第六研究所 | 异常数据识别方法及装置、电子设备和存储介质 |
JP2023142779A (ja) * | 2022-03-25 | 2023-10-05 | 株式会社 日立産業制御ソリューションズ | 精度監視システム、精度監視方法、および、精度監視プログラム |
-
2022
- 2022-12-12 JP JP2022198177A patent/JP2024084020A/ja active Pending
-
2023
- 2023-12-06 WO PCT/JP2023/043617 patent/WO2024128089A1/ja unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015136885A1 (ja) * | 2014-03-10 | 2015-09-17 | 日本電気株式会社 | 評価システム、評価方法およびコンピュータ読み取り可能な記憶媒体 |
CN113569992A (zh) * | 2021-08-26 | 2021-10-29 | 中国电子信息产业集团有限公司第六研究所 | 异常数据识别方法及装置、电子设备和存储介质 |
JP2023142779A (ja) * | 2022-03-25 | 2023-10-05 | 株式会社 日立産業制御ソリューションズ | 精度監視システム、精度監視方法、および、精度監視プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2024084020A (ja) | 2024-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109870903B (zh) | 参数优化方法、装置以及非瞬时计算机可读取介质 | |
CN108875784B (zh) | 用于工业中的性能指标的基于数据的优化的方法和*** | |
US20220146993A1 (en) | Machine learning method and machine learning device for learning fault conditions, and fault prediction device and fault prediction system including the machine learning device | |
Khelif et al. | RUL prediction based on a new similarity-instance based approach | |
Chen et al. | Evidential KNN-based condition monitoring and early warning method with applications in power plant | |
Zhao et al. | An improved case-based reasoning method and its application on fault diagnosis of Tennessee Eastman process | |
JP6896590B2 (ja) | 予知モデル維持システム、予知モデル維持方法及び予知モデル維持プログラム | |
CN116757534A (zh) | 一种基于神经训练网络的智能冰箱可靠性分析方法 | |
US20120016824A1 (en) | Method for computer-assisted analyzing of a technical system | |
JP2017130094A (ja) | セル制御装置、及び製造セルにおける複数の製造機械の稼働状況を管理する生産システム | |
Park et al. | Granular neural networks and their development through context-based clustering and adjustable dimensionality of receptive fields | |
JP7481902B2 (ja) | 管理計算機、管理プログラム、及び管理方法 | |
CN105678409A (zh) | 一种自适应且分布无关的时间序列异常点检测方法 | |
CN117639602A (zh) | 电机运行状态自适应调节方法及*** | |
WO2024128089A1 (ja) | 情報処理装置、制御システム、指標値算出方法、および指標値算出プログラム | |
Rasay et al. | Reinforcement learning based on stochastic dynamic programming for condition-based maintenance of deteriorating production processes | |
WO2024128090A1 (ja) | 情報処理装置、制御システム、探索方法、および探索プログラム | |
WO2022054256A1 (ja) | 異常検知装置 | |
CN109829115B (zh) | 搜索引擎关键词优化方法 | |
WO2022004039A1 (ja) | 予測モデルの学習方法、予測モデルの学習装置、及び、プラント制御システム | |
Yasenjiang et al. | Fault Diagnosis and Prediction of Continuous Industrial Processes Based on Hidden Markov Model‐Bayesian Network Hybrid Model | |
CN109993271A (zh) | 基于博弈理论的灰色神经网络预测方法 | |
Fernandez-Anakabe et al. | An attribute oriented induction based methodology for data driven predictive maintenance | |
JPH06131323A (ja) | 状態予測装置 | |
US8682817B1 (en) | Product testing process using diploid evolutionary method |