Prediction device, prediction method, and program
The prediction device addresses the challenge of inaccurate time-series data prediction by calculating similarity matrices and searching for similar data within the device, ensuring high accuracy and waveform preservation.
Patent Information
- Application Number
- JP2024080054
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-16
- Publication Date
- 2025-11-28
- Estimated Expiration
- 2044-05-16
AI Technical Summary
Conventional techniques face challenges in accurately predicting time-series data, particularly due to outdated prediction models and the inability to account for waveform characteristics.
A prediction device that calculates similarity matrices for time series data, searches for similar data based on feature data, and predicts time series data of a target variable using these similarities, incorporating waveform characteristics.
Enables accurate prediction of time series data by sequentially finding similar data, maintaining prediction accuracy over time and preserving waveform features.
Smart Images

Figure 2025174049000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a prediction device, a prediction method, and a program. [Background technology]
[0002] Techniques for constructing predictive models using machine learning are known. For example, Patent Document 1 discloses an apparatus that divides points indicating actual measured values into multiple clusters, optimizes parameters of a predictive model for each of the multiple clusters, evaluates the difference between the predicted value output by the predictive model with optimized parameters and the actual measured value for each cluster, and determines the number of clusters based on the evaluation results. Furthermore, Patent Document 2 discloses a method for searching for past cases similar to the state of a process from a process time-series database in order to predict the future state of a process. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 6637206 [Patent Document 2] Patent No. 5176206 Summary of the Invention [Problem to be solved by the invention]
[0004] However, with conventional techniques, it is difficult to accurately predict time-series data.
[0005] The present disclosure provides a technique that enables accurate prediction of time-series data. [Means for solving the problem]
[0006] A prediction device according to one aspect of the present disclosure includes an acquisition unit that acquires multiple time series data including one or more explanatory variables; a matrix calculation unit that calculates, for each explanatory variable, a matrix whose elements represent the similarity between two pieces of time series data among the multiple time series data; a feature calculation unit that calculates feature data for each piece of time series data based on the matrix for each explanatory variable; a search unit that searches for similar data among the multiple time series data that is similar to the time series data to be predicted based on the feature data for each piece of time series data; and a prediction unit that predicts time series data of a predetermined target variable based on the similar data. [Effects of the Invention]
[0007] According to one aspect of the present disclosure, time-series data can be predicted with high accuracy. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a block diagram illustrating an example of the overall configuration of a prediction system. [Figure 2] FIG. 2 is a block diagram illustrating an example of a hardware configuration of a computer. [Figure 3] FIG. 2 is a block diagram illustrating an example of a functional configuration of the prediction system. [Figure 4] 1 is a flowchart illustrating an example of a prediction method. [Figure 5] FIG. 10 is a diagram illustrating an example of batch process data. [Figure 6] FIG. 2 is a diagram illustrating an example of a database. [Figure 7] FIG. 10 is a diagram illustrating an example of variable importance. [Figure 8] FIG. 10 is a diagram illustrating an example of a distance matrix. [Figure 9] FIG. 10 is a diagram illustrating an example of an eigenvector. [Figure 10] FIG. 10 is a diagram illustrating an example of a neighborhood search. [Figure 11] FIG. 10 is a diagram illustrating an example of prediction data. [Figure 12] FIG. 10 is a diagram illustrating an example of a display screen. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. In this specification and drawings, components having substantially the same functional configurations are designated by the same reference numerals, and redundant description will be omitted.
[0010] [Embodiment] One embodiment of the present disclosure is a prediction system that predicts a predetermined target variable related to a prediction target. The prediction target according to this embodiment executes a predetermined batch process. As an example, if the prediction target is a steel or chemical plant, the batch process corresponds to a single operation. The prediction target may execute a continuous process that can be interpreted as a batch process. For example, demand for electricity or heat, prices such as stock prices or electricity prices, or inflows into rivers or dams are continuous process data, but can be interpreted as a batch process if divided into predetermined time intervals (e.g., one day, one week, or one month).
[0011] Any variable may be used as the dependent variable as long as it is a variable that can be obtained from the prediction target. In this embodiment, as an example, the dependent variable is the temperature measured by a temperature sensor installed in the plant. However, the dependent variable is not limited to the temperature of the plant, and various variables may be used as the dependent variable depending on the application, such as the amount of material, pressure, power, or heat. Furthermore, the dependent variable does not have to be a variable that can be actually measured, and may be a variable that can be obtained, calculated, or predicted by, for example, predetermined information processing.
[0012] For example, a technique is known in which data measured by sensors installed in a factory or a plant are collected and a predictive model is constructed using, for example, machine learning. Predictions using machine learning are attracting attention in various situations, such as predicting the demand for heat or electricity, prices such as stock prices or electricity prices, or the amount of inflow into a river or a dam. In a factory or a plant, future values are predicted in order to determine in advance what operations should be performed.
[0013] However, it is difficult to accurately predict time series data with conventional technologies. For example, in Patent Document 1, predictions are made using a pre-constructed prediction model, which becomes outdated over time, resulting in a decrease in prediction accuracy. In Patent Document 2, since variables at a single point in time are predicted, similar process data is searched for and a prediction model is constructed for each point in time included in the time interval to be predicted, making it impossible to make predictions that take waveform characteristics into account.
[0014] The present embodiment aims to accurately predict time series data of a predetermined objective variable. To this end, the present embodiment calculates, for each explanatory variable, a matrix whose elements represent the similarity between two pieces of time series data each including one or more explanatory variables, searches for similar data similar to the time series data to be predicted based on feature data calculated based on the matrix for each explanatory variable, and predicts the time series data of the predetermined objective variable based on the similar data.
[0015] In one aspect, this embodiment sequentially searches for time series data similar to the data to be predicted, thereby enabling accurate prediction of a predetermined dependent variable. In another aspect, this embodiment searches for time series data similar to the data to be predicted based on the similarity between the time series data, enabling prediction of time series data while taking into account waveform characteristics. Therefore, this embodiment enables accurate prediction of time series data of a predetermined dependent variable.
[0016] <Overall structure> The overall configuration of the prediction system in this embodiment will be described with reference to Fig. 1. Fig. 1 is a block diagram showing an example of the overall configuration of the prediction system.
[0017] 1, the prediction system 1000 includes a prediction target 10, a prediction device 20, and one or more terminal devices 30. The prediction target 10, the prediction device 20, and the terminal devices 30 are connected to each other so as to be able to communicate data with each other via a communication network N such as a LAN (Local Area Network) or the Internet.
[0018] The prediction target 10 is an example of an object that executes a batch process. The prediction target 10 may be, for example, a factory or a plant, or equipment, devices, or the like installed therein. The prediction target 10 may include multiple factories, plants, equipment, devices, or devices.
[0019] The prediction target 10 generates batch process data during execution of a batch process. The batch process data is time series data indicating the time change of variables indicating the state of the prediction target 10. The batch process data may include multiple variables acquired in one prediction target 10. The batch process data may also include multiple variables acquired in each of multiple prediction targets 10.
[0020] The prediction device 20 is an example of an information processing device such as a personal computer, a workstation, or a server that predicts time-series data of a predetermined dependent variable. The prediction device 20 acquires batch process data from the prediction target 10. The prediction device 20 predicts the time-series data of the dependent variable based on the batch process data, and transmits the prediction result to the terminal device 30.
[0021] The terminal device 30 is an example of an information processing terminal such as a personal computer, tablet terminal, or smartphone operated by a user of the prediction system 1000. The terminal device 30 requests the prediction device 20 to predict a dependent variable in response to a user operation. The terminal device 30 receives a prediction result from the prediction device 20 and outputs it to the user.
[0022] The overall configuration of the prediction system 1000 shown in Fig. 1 is an example, and various system configuration examples are possible depending on the application and purpose. For example, the prediction system 1000 may include multiple units of one or more of the prediction target 10, prediction device 20, and terminal device 30. For example, the prediction device 20 may be realized by multiple computers, or may be realized as a cloud computing service. The classification of devices such as the prediction target 10, prediction device 20, and terminal device 30 shown in Fig. 1 is an example.
[0023] <Hardware configuration> The hardware configuration of each device included in the prediction system 1000 will be described with reference to Fig. 2. The prediction device 20 and terminal device 30 included in the prediction system 1000 are realized by, for example, a computer. Fig. 2 is a block diagram showing an example of the hardware configuration of a computer.
[0024] 2, the computer 500 includes a CPU (Central Processing Unit) 501, a ROM (Read Only Memory) 502, a RAM (Random Access Memory) 503, a HDD (Hard Disk Drive) 504, an input device 505, a display device 506, a communication I / F (Interface) 507, and an external I / F 508. The CPU 501, the ROM 502, and the RAM 503 form a so-called computer. The hardware components of the computer 500 are connected to each other via a bus line 509. The input device 505 and the display device 506 may be connected to the external I / F 508 for use.
[0025] The CPU 501 is a computing device that reads programs and data from a storage device such as the ROM 502 or the HDD 504 onto the RAM 503 and executes the processes, thereby realizing the overall control and functions of the computer 500. The computer 500 may have a GPU (Graphics Processing Unit) in addition to or instead of the CPU 501.
[0026] The ROM 502 is an example of a non-volatile semiconductor memory (storage device) that can retain programs and data even when the power is turned off. The ROM 502 functions as a main storage device that stores various programs, data, etc. required for the CPU 501 to execute various programs installed in the HDD 504. Specifically, the ROM 502 stores boot programs such as a Basic Input / Output System (BIOS) and an Extensible Firmware Interface (EFI) that are executed when the computer 500 starts up, as well as data such as OS (Operating System) settings and network settings.
[0027] The RAM 503 is an example of a volatile semiconductor memory (storage device) in which programs and data are erased when the power is turned off. The RAM 503 is, for example, a dynamic random access memory (DRAM) or a static random access memory (SRAM). The RAM 503 provides a working area in which various programs installed in the HDD 504 are expanded when executed by the CPU 501.
[0028] The HDD 504 is an example of a non-volatile storage device that stores programs and data. The programs and data stored in the HDD 504 include an OS, which is basic software that controls the entire computer 500, and applications that provide various functions on the OS. Note that the computer 500 may use a storage device that uses flash memory as a storage medium (e.g., an SSD (Solid State Drive)) instead of the HDD 504.
[0029] The input device 505 includes a touch panel, operation keys and buttons, a keyboard and mouse, a microphone for inputting sound data such as voice, and the like, which are used by the user to input various signals.
[0030] The display device 506 is configured with a display such as a liquid crystal display or organic EL (Electro-Luminescence) display for displaying a screen, a speaker for outputting sound data such as voice, and the like.
[0031] The communication I / F 507 is an interface that connects to a communication network and enables the computer 500 to perform data communication.
[0032] The external I / F 508 is an interface with external devices, such as a drive device 510.
[0033] The drive device 510 is a device for loading a recording medium 511. The recording medium 511 here includes media that record information optically, electrically, or magnetically, such as a CD-ROM, a flexible disk, or a magneto-optical disk. The recording medium 511 may also include semiconductor memories that record information electrically, such as ROMs and flash memories. This allows the computer 500 to read from and / or write to the recording medium 511 via the external I / F 508.
[0034] The various programs to be installed in the HDD 504 are installed, for example, by setting the distributed recording medium 511 in a drive device 510 connected to the external I / F 508 and reading out the various programs recorded on the recording medium 511 by the drive device 510. Alternatively, the various programs to be installed in the HDD 504 may be installed by being downloaded via the communication I / F 507 from a network different from the communication network.
[0035] <Functional configuration> The functional configuration of the prediction system 1000 will be described with reference to Fig. 3. Fig. 3 is a block diagram showing an example of the functional configuration of the prediction system.
[0036] As shown in FIG. 3, the prediction device 20 includes an acquisition unit 110, a data storage unit 120, a variable selection unit 130, a matrix calculation unit 140, a feature calculation unit 150, a search unit 160, a prediction unit 170, and a visualization unit 180.
[0037] The acquisition unit 110, variable selection unit 130, matrix calculation unit 140, feature calculation unit 150, search unit 160, prediction unit 170, and visualization unit 180 are realized by processing that is executed by the CPU 501 of a program expanded from the HDD 504 shown in FIG. 2 onto the RAM 503.
[0038] The data storage unit 120 is realized by the HDD 504 shown in FIG.
[0039] The acquiring unit 110 acquires batch process data from the prediction target 10. The acquiring unit 110 may receive batch process data output by the prediction target 10 from the prediction target 10. The acquiring unit 110 may receive batch process data input to the terminal device 30 from the terminal device 30. The acquiring unit 110 may accept batch process data input to the input device 505 of the prediction device 20.
[0040] The data storage unit 120 stores the batch process data acquired by the acquisition unit 110. The data storage unit 120 may also store other data used in processing by the prediction device 20, data in the middle of processing, etc.
[0041] Previously acquired batch process data may be accumulated in the data storage unit 120. The batch process data stored in the data storage unit 120 may be deleted after a predetermined time has elapsed. Here, it is assumed that m pieces of batch process data are stored in the data storage unit 120, where m is an integer equal to or greater than 2.
[0042] The variable selection unit 130 selects one or more explanatory variables capable of appropriately predicting a predetermined objective variable from multiple variables included in the batch process data read from the data storage unit 120. The variable selection unit 130 may select predetermined variables as explanatory variables. The variable selection unit 130 may select explanatory variables based on the importance of each of the multiple variables. As an example, the importance may be variable importance that can be calculated from a decision tree. The variable importance may be weighted based on the correlation with the objective variable.
[0043] The matrix calculation unit 140 calculates, for each explanatory variable selected by the variable selection unit 130, a matrix whose elements are the similarity between two batch process data among the batch process data read from the data storage unit 120. Hereinafter, the matrix calculated by the matrix calculation unit 140 will be referred to as a "distance matrix."
[0044] The matrix calculation unit 140 may calculate the similarity based on the waveform of the batch process data. For example, the matrix calculation unit 140 may calculate the similarity using Euclidean distance, cross-correlation function, shapelet, or dynamic time warping. As another example, the matrix calculation unit 140 may identify the waveform diagram of each batch process data using image recognition technology and calculate the similarity. Any index that can be defined as a distance can be used for the similarity. The similarity may be any index that complies with the distance axiom and may be a transformation of a predetermined distance. For example, the similarity may be a correlation coefficient or the like.
[0045] The feature calculation unit 150 calculates feature data for each batch process data based on the distance matrix calculated by the matrix calculation unit 140. The feature calculation unit 150 may calculate feature data by compressing the dimension of the distance matrix using eigenvalue decomposition. Eigenvalue decomposition is a technique for finding eigenvalues from an eigenvalue equation for the matrix to be analyzed and finding eigenvectors corresponding to the eigenvalues. An eigenvector is an example of feature data. The number of dimensions of the eigenvector is between 1 and m.
[0046] The search unit 160 searches for batch process data similar to the prediction target data (hereinafter also referred to as "similar data") among the batch process data read from the data storage unit 120, based on the feature data calculated by the feature calculation unit 150. The similar data includes one or more batch process data corresponding to feature data similar to the feature data of the prediction target data.
[0047] The prediction unit 170 predicts time series data of the objective variable (hereinafter also referred to as "predicted data") based on the similar data searched by the search unit 160. The prediction unit 170 may calculate the predicted data based on the time series data of the objective variable included in the similar data.
[0048] The prediction unit 170 may calculate the predicted data by extracting time series data of the objective variable from the similar data and calculating the average value of the time series data of the objective variable at each time point. The prediction unit 170 may construct a statistical model or a machine learning model based on the similar data and infer the predicted data based on the model. If there is one similar data, the prediction unit 170 may output the time series data of the objective variable included in the similar data as the predicted data.
[0049] The visualization unit 180 outputs the prediction result by the prediction unit 170. The visualization unit 180 may display a display screen that visualizes the prediction result on the display device 506 of the terminal device 30. The visualization unit 180 may display a display screen that visualizes the prediction result on the display device 506 of the prediction device 20.
[0050] The prediction result includes the prediction data calculated by the prediction unit 170. The prediction result may also include information used to predict the prediction data. For example, the information used to predict may include the importance and weight calculated by the variable selection unit 130, the distance matrix calculated by the matrix calculation unit 140, the feature data calculated by the feature calculation unit 150, and the similar data searched for by the search unit 160.
[0051] <Processing Procedure> The processing procedure of the prediction method executed by the prediction system 1000 will be described with reference to Fig. 4. Fig. 4 is a flowchart showing an example of the prediction method.
[0052] In step S1, the prediction target 10 executes a batch process. The prediction target 10 generates batch process data during the execution of the batch process. The prediction target 10 transmits the generated batch process data to the prediction device 20.
[0053] The batch process data may include operation data or sensor data of the prediction target 10. The operation data may include normal or abnormal ranges related to a factory, plant, equipment, machinery or device, or event information such as operation or equipment inspection. The sensor data may include sensor values measured by various sensors provided in the prediction target 10.
[0054] FIG. 5 is a diagram showing an example of batch process data. FIG. 5 shows batch process data generated by two batch processes A and B that were executed at different times. The batch process data shown in FIG. 5 includes n+1 variables (Y, X1,...,Xn), where n is a natural number. Each of the variables Y, X1,...,Xn is a variable that changes over time, and is time-series data that can be represented on a graph with the horizontal axis representing time and the vertical axis representing the variable value. Note that the variable Y is a response variable, and the variables X1,...,Xn are variables other than the response variable.
[0055] In this embodiment, the objective variable Y may be temperature. The variables X1,...,Xn may include humidity, carbon dioxide concentration 1, carbon dioxide concentration 2, oxygen concentration 1, oxygen concentration 2, the amount of material A, the amount of material B, pressure 1, pressure 2, and outside temperature. The carbon dioxide concentration, oxygen concentration, amount of material, or pressure may include multiple variables depending on the number of measurement points, etc.
[0056] 4, in step S2, the acquisition unit 110 of the prediction device 20 receives batch process data from the prediction target 10. The acquisition unit 110 stores the received batch process data in the data storage unit 120.
[0057] A database for storing batch process data may be constructed in the data storage unit 120. The acquisition unit 110 may store the batch process data in the database in association with identification information for identifying the batch process. The identification information may be time information indicating the time when the batch process was executed.
[0058] Fig. 6 is a diagram showing an example of a database. As shown in Fig. 6, the database includes, as data items, a label DATE, a response variable Y, and n explanatory variables X1,...,Xn. The label DATE is an example of identification information. The response variable Y and the explanatory variables X1,...,Xn are batch process data.
[0059] In this embodiment, one day's operation is treated as a batch process, and sensor values measured at multiple points in time on the same day are treated as one batch process data. In the example shown in Fig. 6, 10 records with labels 20240101-1 to 20240101-10 correspond to one batch process data. The batch process data corresponding to the batch process with the most recent date is the batch process data to be predicted (hereinafter also referred to as "prediction target data").
[0060] The data to be predicted may be batch process data relating to a currently running batch process or a batch process to be executed in the future. The explanatory variables included in the batch process data relating to a batch process to be executed in the future may be values predicted based on a trained model.
[0061] Returning to FIG. 4 , in step S3, the user of the terminal device 30 performs an operation to request a prediction of the dependent variable. In response to the user's operation, the terminal device 30 transmits a request for prediction of the dependent variable to the prediction device 20. The prediction device 20 receives the prediction request from the terminal device 30.
[0062] In response to a prediction request from the terminal device 30, the variable selection unit 130 of the prediction device 20 reads batch process data from the data storage unit 120. The variable selection unit 130 selects one or more explanatory variables from multiple variables included in the batch process data. In this embodiment, the variable selection unit 130 selects one or more explanatory variables based on variable importance calculated by a decision tree. The variable selection unit 130 sends the selected explanatory variables to the matrix calculation unit 140.
[0063] 7 is a diagram showing an example of variable importance. As shown in Fig. 7, the variable importance calculated by the decision tree differs depending on the explanatory variables X1,...,Xn. The variable selection unit 130 may select variables whose variable importance is equal to or greater than a predetermined threshold as explanatory variables, or may select a predetermined number of variables in descending order of variable importance as explanatory variables.
[0064] 6, the batch process data is time-series data including variables acquired at multiple time points. The variable selection unit 130 may calculate the variable importance for each time point and integrate the variable importance for each time point. In this embodiment, as a result of integrating the variable importance using the decision tree, it is determined that the variable importance of carbon dioxide concentration 1, oxygen concentration 2, the amount of material A, the amount of material B, and the outside temperature is high relative to the target variable, temperature.
[0065] Returning to FIG. 4, the following description will be given. In step S4, the matrix calculation unit 140 of the prediction device 20 receives one or more explanatory variables from the variable selection unit 130. The matrix calculation unit 140 reads out m pieces of batch process data from the data storage unit 120. The matrix calculation unit 140 calculates, for each explanatory variable, a matrix whose elements represent the similarity between two pieces of batch process data out of the m pieces of batch process data. The matrix calculation unit 140 sends the distance matrix for each explanatory variable to the feature calculation unit 150.
[0066] In this embodiment, the matrix calculation unit 140 calculates the similarity for all combinations of two batch process data out of the m batch process data using the dynamic time warping method. The matrix calculation unit 140 generates a distance matrix whose elements are the similarities calculated for all combinations of each explanatory variable.
[0067] FIG. 8 is a diagram showing an example of a distance matrix. As shown in FIG. 8, the distance matrix includes a matrix for each explanatory variable, with elements representing distances between batch process data. The distance matrix is an m×m matrix whose vertical and horizontal axes correspond to m pieces of batch process data. Each element of the distance matrix indicates the distance between the batch process data on the horizontal axis and the batch process data on the vertical axis. Note that the diagonal elements of the distance matrix represent combinations of the same batch process data, so the distance is 0.
[0068] Returning to FIG. 4 , in step S5, the feature calculation unit 150 of the prediction device 20 receives a distance matrix for each explanatory variable from the matrix calculation unit 140. The feature calculation unit 150 calculates feature data for each batch process data based on the distance matrix for each explanatory variable. The feature calculation unit 150 sends the feature data for each batch process data to the search unit 160.
[0069] In this embodiment, the feature calculation unit 150 calculates eigenvectors based on multidimensional scaling. Multidimensional scaling is a technique that uses eigenvalue decomposition when the matrix based on similarity is a distance matrix. Multidimensional scaling is a method that, when the distance between any two pieces of data among a plurality of pieces of data is given, calculates the coordinates of each piece of data so that two pieces of data that are close in distance are placed close to each other and two pieces of data that are far from each other. The distance between the coordinates calculated by multidimensional scaling corresponds to the length of the relative distance between the m pieces of batch process data.
[0070] 9 is a diagram showing an example of an eigenvector. As shown in FIG. 9, the eigenvector is a label DATE for identifying a batch process and two variables X b 1,X b Contains 2. Variable X b 1,X b 2 is an example of feature data. The label DATE corresponds to the label DATE of the batch process data. Therefore, the eigenvector of the latest date corresponds to the data to be predicted. The eigenvector is b 1,X b It can be interpreted as a coordinate in a two-dimensional space with 2 as the X and Y coordinates. Note that a two-dimensional space is an example of a feature space. The number of dimensions of the feature space is the same as the number of dimensions of the eigenvector.
[0071] Returning to Fig. 4, in step S6, the search unit 160 of the prediction device 20 receives feature data for each batch process data from the feature calculation unit 150. The search unit 160 searches for batch process data similar to the data to be predicted based on the feature data. The search unit 160 sends the searched batch process data to the prediction unit 170 as similar data.
[0072] Specifically, the search unit 160 arranges feature data for each batch process data in a feature space. The search unit 160 searches for feature data in the feature space that has a short distance from the feature data of the prediction target data. The search unit 160 may search for feature data whose distance from the feature data of the prediction target data is equal to or less than a predetermined threshold. The search unit 160 may search for a predetermined number of feature data in order of shortest distance from the feature data of the prediction target data.
[0073] The search unit 160 reads out batch process data corresponding to the searched feature data from the data storage unit 120. The search unit 160 searches for feature data that has been dimensionally compressed by eigenvalue decomposition, but since it is not possible to predict a target variable from the feature data, it is necessary to acquire batch process data corresponding to the feature data. As shown in FIG. 9 , the feature data is associated with identification information (label) that is common to the batch process data. The search unit 160 can acquire batch process data similar to the data to be predicted by reading out batch process data associated with the same identification information as the searched feature data from the data storage unit 120.
[0074] The search unit 160 may search for similar data by a neighborhood search based on the distance between feature data. The distance used in the neighborhood search may be, for example, Euclidean distance or Mahalanobis distance. The search unit 160 may divide the feature data arranged in the feature space into clusters, and treat the cluster containing the feature data of the prediction target data as similar data.
[0075] Fig. 10 is a diagram showing an example of neighborhood search. As shown in Fig. 10, feature data corresponding to batch process data are arranged in a feature space FS, which is a two-dimensional space. Fig. 10 shows how four pieces of feature data D2 to D5 are searched for by performing neighborhood search from prediction target data D1.
[0076] Returning to Fig. 4, in step S7, the prediction unit 170 of the prediction device 20 receives the similar data from the search unit 160. The prediction unit 170 calculates predicted data based on the similar data. The prediction unit 170 sends the predicted data to the visualization unit 180.
[0077] In this embodiment, the prediction unit 170 extracts time-series data of the objective variables from multiple batch process data included in the similar data, and calculates the predicted data by averaging the extracted time-series data of the objective variables. Specifically, the prediction unit 170 calculates the average value of the objective variables included in the batch process data at each time point in the batch process data, and arranges the average values of the objective variables in chronological order to generate the predicted data.
[0078] Fig. 11 is a diagram showing an example of predicted data. Fig. 11 shows how, when four similar data are searched for, the temperatures contained in the four similar data are averaged at each time point, and time-series data of the average temperature is output as predicted data.
[0079] Returning to FIG. 4 , the explanation will be given. In step S8, the visualization unit 180 of the prediction device 20 receives the prediction data from the prediction unit 170. The visualization unit 180 generates a display screen that visualizes the prediction result including the prediction data. The visualization unit 180 may include a waveform diagram of the prediction data as the prediction result on the display screen. The visualization unit 180 transmits screen data for displaying the display screen to the terminal device 30.
[0080] The visualization unit 180 may include information used in the prediction along with the prediction result on the display screen. For example, the visualization unit 180 may acquire importance and weight from the variable selection unit 130 and include a graph showing the importance and weight on the display screen. For example, the visualization unit 180 may acquire a distance matrix from the matrix calculation unit 140 and include a table showing the distance matrix on the display screen. For example, the visualization unit 180 may acquire a feature space in which feature data is arranged from the feature calculation unit 150 and include a scatter plot of the feature data on the display screen. For example, the visualization unit 180 may acquire similar data from the search unit 160 and include a waveform diagram of the similar data on the display screen. When the similar data includes a large number of batch process data, only a predetermined number of batch process data may be acquired in descending order of distance from the prediction target data.
[0081] The terminal device 30 receives screen data for the display screen from the prediction device 20. The terminal device 30 displays the display screen on the display device 506 based on the screen data.
[0082] 12 is a diagram showing an example of a display screen. As shown in Fig. 12, a display screen 600 displays a variable importance 610 of explanatory variables, a scatter plot 620 of feature data, a waveform diagram 630 of similar data, and a waveform diagram 640 of predicted data. The display screen 600 may further display any information used by the prediction device 20 for prediction.
[0083] By visualizing the variable importance 610 of the explanatory variables, the reason for using the explanatory variables can be clearly explained to the user. By visualizing the scatter plot 620 of the feature data and the waveform diagram 630 of the similar data, the basis for the prediction results can be explained.
[0084] The user of the terminal device 30 may consider the operation of the prediction target 10 based on the prediction result displayed on the display screen 600. For example, the user of the terminal device 30 may perform an operation related to temperature control by referring to the temperature prediction result. Furthermore, the user of the terminal device 30 can easily determine the validity of the prediction result by referring to the information used for the prediction.
[0085] <Effects of the embodiment> The prediction device 20 according to this embodiment calculates a matrix for each explanatory variable, the elements of which represent the similarity between two batch process data sets each containing one or more explanatory variables, searches for similar data that is similar to the time series data to be predicted based on the feature data calculated based on the matrix for each explanatory variable, and predicts the time series data of a specified target variable based on the similar data.
[0086] According to one aspect, this embodiment can accurately predict time series data of a dependent variable. For example, this embodiment can sequentially search for similar data that is similar to the data to be predicted and build a prediction model based on the similar data. Therefore, the dependent variable can be predicted with high accuracy without the prediction model becoming outdated. Furthermore, for example, this embodiment searches for similar data based on feature data based on the similarity between batch process data, so that the entire time series data can be predicted without losing waveform features. Therefore, it is possible to accurately predict time series data of a dependent variable while taking into account the waveform features of similar data.
[0087] The prediction device 20 may select an explanatory variable from a plurality of variables. The prediction device 20 may select an explanatory variable based on the importance of each of the plurality of variables. According to one aspect, the present embodiment appropriately selects explanatory variables capable of predicting a dependent variable, thereby enabling the dependent variable to be predicted with high accuracy.
[0088] The prediction device 20 may calculate the similarity based on the waveform of the time-series data. The prediction device 20 may calculate the similarity using a dynamic time warping method. According to one aspect, this embodiment makes it possible to accurately search for similar data that is similar to the data to be predicted while taking into account the characteristics of the waveform.
[0089] The prediction device 20 may calculate feature data by compressing the dimensions of a matrix using eigenvalue decomposition. The prediction device 20 may search for similar data in a feature space in which the feature data is arranged. In one aspect, according to this embodiment, a neighborhood search for feature data can be performed in the feature space, making it possible to search for similar data with a small amount of calculation.
[0090] The prediction device 20 may visualize prediction results including time-series data of the dependent variable. The prediction results may include information used to predict the dependent variable. The information used to predict may include at least one of the variable importance of the explanatory variables, a scatter plot of feature data, or a waveform of similar data. In one aspect, according to this embodiment, the basis for the prediction is displayed along with the prediction data, allowing the user to easily determine the validity of the prediction.
[0091] [supplement] Each function of the above-described embodiments can be realized by one or more processing circuits. Here, the term "processing circuit" in this specification includes a processor programmed to perform each function by software, such as a processor implemented by an electronic circuit, as well as devices such as an ASIC (Application Specific Integrated Circuit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), and conventional circuit modules designed to perform each of the above-described functions.
[0092] Although the embodiments of the present invention have been described in detail above, the present invention is not limited to these embodiments, and various modifications and changes are possible within the scope of the gist of the present invention described in the claims. [Explanation of symbols]
[0093] 1000: Prediction System 10: Prediction target 20: Prediction device 30: Terminal device 110: Acquisition Department 120: Data storage unit 130: Variable selection section 140: Matrix calculation section 150: Feature calculation unit 160: Search Department 170: Prediction Department 180: Visualization section
Claims
1. an acquisition unit configured to acquire a plurality of time series data including one or more explanatory variables; a matrix calculation unit configured to calculate, for each of the explanatory variables, a matrix whose elements represent similarities between two of the plurality of time-series data; a feature calculation unit configured to calculate feature data for each of the time-series data based on a matrix for each of the explanatory variables; a search unit configured to search for similar data similar to the time series data to be predicted among the plurality of time series data based on feature data for each of the time series data; a prediction unit configured to predict time series data of a predetermined objective variable based on the similarity data; A prediction device comprising:
2. a variable selection unit configured to select the explanatory variables from a plurality of variables; The prediction device according to claim 1 .
3. the variable selection unit is configured to select the explanatory variables based on the importance of each of the plurality of variables. The prediction device according to claim 2 .
4. the matrix calculation unit is configured to calculate the similarity based on a waveform of the time-series data. The prediction device according to claim 1 .
5. the matrix calculation unit is configured to calculate the similarity using a dynamic time warping method. The prediction device according to claim 4 .
6. the feature calculation unit is configured to calculate the feature data by dimensionally compressing the matrix by eigenvalue decomposition. The prediction device according to claim 1 .
7. the search unit is configured to search for the similar data in a feature space in which the feature data is arranged. The prediction device according to claim 1 .
8. a visualization unit configured to visualize the prediction result including the time-series data of the dependent variable, The prediction device according to claim 1 .
9. The prediction result includes information used to predict the dependent variable. The prediction device according to claim 8 .
10. the information used for the prediction includes at least one of the variable importance of the explanatory variables, a scatter plot of the feature data, or a waveform of the similar data; The prediction device according to claim 9 .
11. The computer Obtaining multiple time series data including one or more explanatory variables; a step of calculating a matrix having elements each representing a similarity between two pieces of time series data among the plurality of time series data for each of the explanatory variables; calculating feature data for each of the time-series data based on a matrix for each of the explanatory variables; a step of searching for similar data similar to the time series data to be predicted from the plurality of time series data based on feature data for each of the time series data; a step of predicting time series data of a predetermined objective variable based on the similar data; A forecasting method that performs.
12. On the computer, Obtaining multiple time series data including one or more explanatory variables; a step of calculating a matrix having elements each representing a similarity between two pieces of time series data among the plurality of time series data for each of the explanatory variables; calculating feature data for each of the time-series data based on a matrix for each of the explanatory variables; a step of searching for similar data similar to the time series data to be predicted from the plurality of time series data based on feature data for each of the time series data; a step of predicting time series data of a predetermined objective variable based on the similar data; A program to execute.
Citation Information
Patent Citations
2*66 toransu fuarunesooruno seizohoho
JP1976076206A
Cluster division evaluation device, cluster division evaluation method, and cluster division evaluation program
JP6637206B1