Information processing device, information processing method, and program
By specifying intervals in time-series data and optimizing the objective function through masking, the device addresses the issue of fragmented intervals in conventional analysis techniques, improving the explicability and reducing learning parameters, leading to a clearer understanding of the analysis basis.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- KK TOSHIBA
- Filing Date
- 2023-09-05
- Publication Date
- 2026-04-13
AI Technical Summary
Conventional techniques for analyzing time-series data, such as unsupervised abnormal waveform detection and time-series classification, often fail to adequately identify the sections that form the basis of the analysis, leading to fragmented intervals and increased learning parameters, which complicates the explicability of the analysis process.
The information processing device specifies a number of intervals in the time series data as the basis for analysis, using a masking process to determine these intervals by minimizing prediction error and optimizing the objective function, thereby reducing the number of learning parameters and ensuring that the identified intervals are meaningful.
This approach allows for more appropriate determination of the points that serve as the basis for analysis, reducing the number of short intervals and improving the explicability of the analysis process by specifying the number of intervals that contribute to the analysis, thus enhancing the understanding of the analysis results.
Smart Images

Figure 0007844406000023 
Figure 0007844406000024 
Figure 0007844406000025
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to an information processing apparatus, an information processing method, and a program.
Background Art
[0002] There is an increasing need for an analysis technique that analyzes (diagnoses) time-series data (time-series waveform data) by machine learning. The analysis includes processes such as estimating (detecting, predicting) whether time-series data is in a specific state (e.g., normal or abnormal) (such as abnormal waveform detection), and classifying time-series data into classes (time-series classification). In such techniques, in addition to improving analysis performance, an improvement in the explicability of clearly presenting the basis of the analysis is desired.
[0003] On the other hand, in fields such as unsupervised abnormal waveform detection and time-series classification, high-performance waveform analysis methods are mainly black-box technologies without explicability. Therefore, techniques for imparting explicability to models learned by black-box analysis techniques have been proposed. For example, a technique using a saliency map that highlights locations (locations serving as the basis for analysis) that contributed to prediction in time-series data to be analyzed has been proposed.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Non-Patent Documents
[0005]
Non-Patent Document 1
Summary of the Invention
[0006] However, conventional techniques sometimes failed to adequately identify the sections that formed the basis of the analysis. For example, conventional techniques sometimes did not allow for the determination of how many sections would be extracted as evidence. Furthermore, depending on the data and parameter settings, the evidence sections could be found as numerous fragmented intervals.
[0007] The present invention aims to provide an information processing device, an information processing method, and a program that can more appropriately determine the points that serve as the basis for the analysis of time-series data. [Means for solving the problem]
[0008] The information processing device of this embodiment includes a processing unit. The processing unit performs an update process for a specified number of first intervals based on a first estimation result of the estimation model when first time series data is input, and a second estimation result of the estimation model when second time series data is input, which is obtained by applying a masking process to a specified number of partial time series data of second intervals other than the first interval from the first time series data. [Brief explanation of the drawing]
[0009] [Figure 1] A diagram illustrating the function of the embodiment. [Figure 2] Block diagram of the information processing device of the first embodiment. [Figure 3] A flowchart of the estimation process in the first embodiment. [Figure 4] This figure shows an example of a display screen that shows the processing results. [Figure 5] A block diagram of the configuration of the information processing device according to the second embodiment. [Figure 6] A flowchart showing an example of the estimation process in the second embodiment. [Figure 7] A diagram showing an example of the display screen of the second embodiment. [Figure 8]Hardware configuration diagram of an information processing device according to the first or second embodiment. [Modes for carrying out the invention]
[0010] A preferred embodiment of the information processing device according to this invention will be described in detail below with reference to the attached drawings.
[0011] The basis for analyzing time series data is determined by updating parameters to optimize the objective function, similar to how the model used for analysis is trained. Therefore, the process of determining this basis is sometimes called training, and the parameters updated during this process are sometimes called trained parameters.
[0012] As described above, conventional techniques sometimes failed to adequately determine the points that formed the basis for analyzing time series data. For example, one proposed technique uses the importance of each point in the time series data as a learning parameter, and during training, reduces the prediction error and the importance of each point while adjusting the data so that points with high importance are grouped together as subsequences (intervals containing multiple points) using a method called Fused Lasso (Least Absolute Shrinkage and Selection Operator). Fused Lasso is a technique that uses a regularization term such that adjacent parameters have similar values. However, with such a technique, it is not possible to adjust how many subsequences are generated. For example, a large number of very short subsequences may be generated. Also, with such a technique, the number of learning parameters increases in a linear order with respect to the time series length.
[0013] Therefore, in the following embodiment, the number of intervals SA (first intervals) corresponding to the points that serve as the basis for the analysis of time series data can be specified, and the specified number of intervals SA are obtained as the basis for the analysis. Because the number of intervals can be specified, situations such as the generation of many short intervals can be avoided, and the points that serve as the basis for the analysis can be determined more appropriately. In addition, since the number of learning parameters increases in a linear order with the number of intervals containing multiple points, it can be reduced compared to the above technique in which each point is used as a learning parameter.
[0014] First, we will describe the functions common to each of the following embodiments (the first embodiment and the second embodiment). Figure 1 is a diagram illustrating the common functions.
[0015] The estimation model f in Figure 1 is a model that takes time series data X (first time series data) as input and outputs the estimation result (first estimation result) f(X). Estimation model f is a black box model that does not output the basis for the estimation result. Estimation model f also takes time series data Π(X) (second time series data) obtained by applying mask processing to a specified number of partial time series data of intervals SB (second interval) other than interval SA from the time series data X as input and outputs the estimation result (second estimation result) f(Π(X)).
[0016] In conventional techniques, each point in time-series data is learned as a learning parameter. In contrast, in this embodiment, first, the number of intervals SA to be obtained (hereinafter referred to as the number K) is specified. Figure 1 shows an example where K is specified as 2. Then, for the k-th interval SA (where k is an integer satisfying 1 ≤ k ≤ K), the parameters that define the interval SA are learned as learning parameters.
[0017] The parameters that define the interval SA can be any parameters, but for example, the following parameters can be used. • Two endpoints on the time series data (left endpoint a) k and rightmost point b k A parameter indicating the position of ). • One endpoint (left endpoint a) on the time series data k , or rightmost point b k A parameter indicating the position of ) and a parameter indicating the length of the interval.
[0018] In the following, the leftmost point a k and rightmost point b k Let's explain using an example where section SA is defined by the following. In Figure 1, section 11, defined by the left endpoint a1 and the right endpoint b1, and section 12, defined by the left endpoint a2 and the right endpoint b2, are shown as examples of section SA.
[0019] For learning the learning parameters, for example, gradient descent is used. In order to apply gradient descent, the endpoints of the interval SA (left endpoint a) k and rightmost point b k The function is defined smoothly (differentiably). Any method can be used to define the endpoints smoothly, but for example, one method can be applied that uses the sigmoid function.
[0020] The time series data X to be processed is a D-variable time series data containing D variables (where D is an integer greater than or equal to 1). Figure 1 shows an example where the time series data X is a univariate time series data 21 with only one variable (D=1).
[0021] Note that Graph 22 in Figure 1 shows the weights of interval SA when the weights of interval SA are also updated as parameters (details will be described later). Hereafter, the weights of interval SA will be referred to as interval weights. Interval weights can also be interpreted as an indicator representing the importance of interval SA.
[0022] In this embodiment, the interval SA (both endpoints) is learned such that the difference (prediction error) between the estimation result f(X) of the estimation model f for time series data X and the estimation result f(Π(X)) of the estimation model f for time series data Π(X) to which mask processing has been applied is minimized. In other words, the interval SA is learned such that the estimation result does not change even if the time series data of interval SB other than interval SA is ignored.
[0023] When monitoring data from multiple sensors, the time series data X to be processed will be multivariate time series data (where D is 2 or more). When dealing with multivariate time series data, there are two ways to specify the number of intervals SA: (M1) Specify the number of interval SAs individually for each variable. (M2) Specify a single value common to the D variables as the number of intervals SA.
[0024] Here, we will outline the two methods. Details will be explained in each embodiment below. In (M1), for example, the user can specify the number of interval SAs for each variable (e.g., each sensor) in detail. In (M1), the method for univariate time series data described in Figure 1 can be applied independently to each of the multiple variables.
[0025] In (M2), for example, the user specifies a common value for all multiple variables (e.g., multiple sensors) as the number of interval SAs. This method is effective when it is unclear which variables contribute to the prediction. In (M2), all variables are combined into one and each interval SA is learned, while weights indicating which variables are effective for each interval SA are learned simultaneously.
[0026] Either of the two methods described above may be used, or they may be used in combination. If used in combination, each method may be performed in the following procedure, for example. First, interval SA is calculated across all variables in (M2). For example, the user checks the requested interval SA and determines and specifies the number of interval SAs and the proportion of the time series data length that each interval SA occupies for each variable. (M1) is then executed according to the specifications.
[0027] The following describes embodiments corresponding to the two methods described above. (M1) and (M2) correspond to the first and second embodiments, respectively.
[0028] (First embodiment) The information processing device of the first embodiment learns a specified number of intervals SA for each of the D variables in the D-variable time series data.
[0029] Figure 2 is a block diagram showing an example of the configuration of the information processing device 100 according to the first embodiment. As shown in Figure 2, the information processing device 100 includes a reception unit 101, an estimation unit 120, an output control unit 102, a storage unit 131, and a display unit 132.
[0030] The reception unit 101 accepts input of various types of information used by the information processing device 100. For example, the reception unit 101 accepts a trained estimation model f, the time series data X to be estimated, and the number of intervals SA specified by the user or others.
[0031] The estimation model f can be any model that takes time-series data X as input and outputs estimation results, regardless of how it was constructed (trained). For example, the estimation model f could be a model that performs unsupervised anomaly detection or a model that performs time-series classification.
[0032] In the case of a model that performs unsupervised anomaly waveform detection, the estimation model f outputs, for example, an anomaly score or a normality score as an estimated result. The estimation model f may be a model implemented using unsupervised waveform features generated using Minirocket, and employing the following techniques. ·DeepSVDD(Deep Support Vector Data Discription) ·ECOD(Empirical-Cumulative-distribution-based Outlier Detection)
[0033] In the case of a time-series classification model, the estimation model f outputs the probability of belonging to each of several classes as the estimation result, for example, calculated using the softmax function.
[0034] The estimation unit 120 estimates (learns) an interval SA corresponding to a location that serves as the basis for the estimation result for the time-series data X using the estimation model f. The estimation unit 120 includes a mask application unit 121, a calculation unit 122, and an update unit 123.
[0035] The mask application unit 121 applies a masking process to the partial time-series data of the interval SB other than the interval SA in the time-series data X. For example, the mask application unit 121 applies the masking process such that the application rate of the masking process increases as it goes out from the endpoints of the interval SA to the outside of the interval SA and decreases as it goes inside the interval SA.
[0036] The calculation unit 122 calculates the difference (prediction error) between the estimation result f(X) of the estimation model f when the time-series data X is input and the estimation result f(Π(X)) of the estimation model f when the time-series data Π(X) to which the masking process is applied by the mask application unit 121 is input.
[0037] The update unit 123 executes an update process of updating the specified K intervals SA so as to optimize the objective function including the difference calculated by the calculation unit 122. The update of the interval SA corresponds to updating the parameters (the positions of the left endpoint a k and the right endpoint b k ). Any method can be applied to the process of updating the parameters. For example, the gradient descent method can be applied. The details of the objective function used in the update process will be described later.
[0038] The output control unit 102 controls the output of various information used in the information processing apparatus 100. For example, the output control unit 102 outputs (displays, visualizes) the K intervals SA, which are the result of the update process, to the display unit 132.
[0039] At least a portion of each of the above components (reception unit 101, estimation unit 120, and output control unit 102) may be implemented by one or more processing units. Each of the above components may be implemented by, for example, one or more processors. For example, each of the above components may be implemented by having a processor such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit) execute a program, i.e., by software. Each of the above components may be implemented by a dedicated processor such as an IC (Integrated Circuit), i.e., by hardware. Each of the above components may be implemented by using both software and hardware. When multiple processors are used, each processor may implement one of the above components, or two or more of the above components.
[0040] The memory unit 131 stores various types of information used by the information processing device 100. For example, the memory unit 131 stores information indicating a trained estimation model f, and time-series data X, etc.
[0041] The storage unit 131 can be composed of any commonly used storage medium, such as flash memory, memory card, RAM (Random Access Memory), HDD (Hard Disk Drive), and optical disc.
[0042] The display unit 132 is an example of a device that outputs various types of information used by the information processing device 100. The display unit 132 is implemented by a display device such as a liquid crystal display.
[0043] The information processing device 100 may be composed of one physical device or multiple physical devices. For example, the information processing device 100 may be built on a cloud environment. Furthermore, each part of the information processing device 100 may be distributed and provided on multiple devices.
[0044] Next, we will describe the various data used in the estimation process by the information processing device 100 of the first embodiment. The estimation process is a process of estimating (learning) the locations (positions of both endpoints of interval SA) that form the basis of the estimation result of time series data X by the trained estimation model f.
[0045] In the following, let D be the number of variables, and let d be the index of a variable (where d is an integer satisfying 1 ≤ d ≤ D). The d-th variable is sometimes referred to as variable d. Let K be the number of intervals SA in variable d. d Let k be the index of the interval SA (where k is 1 ≤ k ≤ K d Let a be an integer that satisfies the following condition. That is, the left endpoint a of the interval SA. k、d and rightmost point b k、d The position is K1 + K2 + ... K D All of these positions are collectively described as A and B. A and B are generally K over d=1,2,...,D. d It can be expressed as the direct product of continuous vectors of dimension, and in particular K=K1=K2=···=K D In this case, it can be concisely represented as a continuous matrix of size K × D.
[0046] Here, if D=1, the time series data X is univariate time series data, and if D is a number greater than or equal to 2, the time series data X is multivariate time series data. Note that when considering the interval weights of each interval SA, the interval weight v k、d is K1 + K2 + ...K D The total interval weights of all intervals are denoted as V. V is generally K over d=1,2,...,D. d It can be expressed as the direct product of continuous vectors of dimension, and in particular K=K1=K2=···=K D In this case, it can be concisely represented as a continuous-value matrix of K × D.
[0047] For example, the positions of the left endpoint, right endpoint, and interval weight of the k-th interval SA in the d-th variable are a, respectively. k、d , b k、d , and, v k、d This is how it is described. The interval weight V is determined, for example, to satisfy the following condition (C1). (C1) k=1, 2, ..., K and d=1, 2, ..., D k、d ≥ 0, v 1、d +v 2、d +···+v k、d =1
[0048] Next, we will explain an example of an objective function. Equation (1) below is an example of an objective function used by the update unit 123.
number
[0049] Minimize indicates minimizing the objective function written on the right (an example of optimization). A and B are the leftmost endpoint a, respectively. k、d and rightmost point b k、d This is a notation that combines k=1, 2, ..., K and d=1, 2, ..., D. The error function L(x, y) is a function that calculates the difference between x and y.
[0050] The first term of the objective function shown in equation (1) corresponds to the error function L, which represents the difference (prediction error) between the estimated result f(X) of the estimation model f for time series data X and the estimated result f(Π(X)) of the estimation model f for time series data Π(X) to which mask processing has been applied. The second term of the objective function corresponds to a regularization term whose value decreases as the length of the interval SA decreases. λ is a non-negative hyperparameter.
[0051] The masking operation, represented by Π(X), is expressed by equation (2) below. The right-hand side of equation (2) is expressed by equation (3) below. Also, m() in equation (3) is expressed by equation (4) below.
number
number
number
[0052] t represents time. x d μ represents the time series data of variable d included in the time series data X. d μ represents time-series data corresponding to a pre-determined mask. d The coefficient multiplied by (1-m(t,a k、d ,b k、d )) corresponds to the application rate of the masking process. σ() in equation (4) corresponds to the sigmoid function expressed in equation (5) below. β represents the temperature parameter of the sigmoid function.
number
[0053] The objective function is the K × D interval weights v corresponding to each interval SA. k、d The term may include a term in which the application rate of the masking process changes depending on the interval weight V (first weight) that includes the interval weight v. k、d The smaller the interval SA, the larger the application rate is set. In this case, the update unit 123 updates the interval SA and interval weight V to minimize this objective function.
[0054] Equation (6) below shows an example of an objective function that includes a term relating to interval weights, where V is the interval weight v k、d This is a notation that combines k=1, 2, ..., K and d=1, 2, ..., D.
number
[0055] Equation (7) below shows an example of Π(X) used in equation (6). The right-hand side of equation (7) is expressed by equation (8) below. Also, m() in equation (8) is expressed by equation (9) below. v~ (a variable v with a tilde sign "~" above it) in equation (9) is expressed by equation (10) below.
number
number
number
number
[0056] Equation (10) gives interval weight v k、d This corresponds to the process of normalizing such that the variable d takes a value greater than or equal to 0, and the sum of all K intervals SA for each variable is 1.
[0057] Next, the flow of the estimation process by the information processing device 100 of the first embodiment will be explained using Figure 3. Figure 3 is a flowchart showing an example of the estimation process in the first embodiment.
[0058] The reception unit 101 receives the trained estimation model f, the time series data X of the D variables to be processed, and the number K of intervals SA for each of the D variables d. d Obtain the result (step S101). In this embodiment, since the user specifies the number of interval SAs for each variable, the total for all variables is K1 + K2 + ... + K D A service area (SA) is required for each section.
[0059] Next, the estimation unit 120 calculates the interval [a k、d , b k、d Initialize ]. Note that the interval weight v of each interval SA k、d When considering this, the estimation unit 120 calculates the interval weight v for each interval SA. k、d Also initialize (step S102).
[0060] The initialization method can be any method, but for example, it can be set to a random value or to a predetermined value (fixed value, default value). For example, a common fixed value may be set for each variable, or different fixed values may be set for each variable. Also, for the interval SA, the interval representing the entire range of the time series data X may be set as the initial value. As will be described later, in this embodiment, learning is performed so that the length of the interval SA decreases. Therefore, it is possible to prevent the entire range of the time series data X from being obtained as the final interval SA.
[0061] From here on, for each variable d (d=1, 2, ..., D), K d The positions of the endpoints of each interval SA (a k、d , b k、d This is learned by repeating the process from steps S103 to S107.
[0062] First, the mask application unit 121 sets the smoothness of both endpoints of the interval SA (step S103). For example, if the endpoints are defined using a sigmoid function, the mask application unit 121 sets the smoothness using the temperature parameter of the sigmoid function (β in equation (5) above). The value of the temperature parameter may be a fixed value, or the value may be adjusted so that the smoothness decreases as the iterations progress.
[0063] The mask application unit 121 applies a mask to the time series data for the unprocessed variable d, taking into account the interval SA. For example, the mask application unit 121 applies the mask process to the partial time series data of the interval SB, which is not interval SA, within the time series data X (step S104). Let the time series data to which the mask process has been applied be Π(X).
[0064] For example, the mask application unit 121 applies almost no masking within section SA, and increases the application rate of masking as it moves away from section SA. The application rate of masking can be interpreted as changing according to the smoothness of the endpoints. For example, as you move from the endpoints of section SA outward from section SA, the application rate of masking increases according to the smoothness, and as you move inward from section SA, the application rate decreases according to the smoothness. Therefore, the smoothness of the endpoints can be interpreted as representing the degree of increase and decrease in the application rate. The mask application unit 121 may apply masking in such a way that the smoothness, which represents the degree of increase and decrease in the application rate, becomes steeper as the iterations progress.
[0065] When interval weight V is considered, the mask application unit 121 considers the interval weight v k、d You may perform masking so that the application rate increases for sections with smaller SA values.
[0066] The calculation unit 122 calculates the difference (prediction error) of the estimation result by the estimation model f between the case when mask processing is not applied and the case when it is applied (step S105). For example, the calculation unit 122 inputs time series data X without mask processing to the estimation model f and calculates f(X) obtained as the output. The calculation unit 122 inputs time series data Π(X) with mask processing applied to the estimation model f and calculates f(Π(X)) obtained as the output. The calculation unit 122 calculates the prediction error, which is the difference between f(X) and f(Π(X)). In equation (1) above, the value of the error function L in the first term of the objective function corresponds to the prediction error.
[0067] The update unit 123 updates the specified K intervals SA to minimize the objective function (step S106). When equation (1) is used, the update unit 123 updates the intervals SA such that the prediction error is small (first term) and the length is small (second term). Interval weight v of each interval SA k、d When considering this, the update unit 123 reduces the prediction error for each interval SA by, for example, using equation (6), by applying interval weight v for each interval SA. k、d I will also update this.
[0068] Note that updating section SA to reduce prediction error and updating section SA to reduce length may be performed simultaneously or at different times. In the latter case, the update unit 123 may, for example, reduce the prediction error for each section SA by adjusting the leftmost point a k、d and rightmost point b k、d The update unit 123 then updates the leftmost point a for each section SA so that the length of section SA becomes smaller. k、d and rightmost point b k、d Updates the left endpoint a. For example, the update unit 123 applies Fused Lasso regularization to the time series data and uses a gradient descent method or the like to reduce this regularization term. k、d and rightmost point b k、d Update.
[0069] The estimation unit 120 determines whether all variables d have been processed (step S107). If all variables d have not been processed (step S107: No), the process returns to step S104 and the processing is repeated for the next unprocessed variable d. The next unprocessed variable d can be determined, for example, by setting the initial value d=1 and adding 1 to d (d=d+1).
[0070] If all variables d have been processed (step S107: Yes), the estimation unit 120 determines whether or not to terminate the iteration (step S108). For example, the estimation unit 120 determines to terminate the iteration when the number of iterations using the gradient descent method reaches a specified number.
[0071] If the iteration is not terminated (step S108: No), the estimation unit 120 returns to step S103, returns all variables d to their unprocessed state, and repeats the process.
[0072] If the iteration is terminated (step S108: Yes), the output control unit 102 outputs the processing result from the iterative processing (step S109) and terminates the estimation process. For example, the output control unit 102 displays the K intervals SA obtained by the iterative update processing by the update unit 123 on the display unit 132.
[0073] Figure 4 shows an example of a display screen showing the processing results. Note that Figure 4 is an example of a display screen when dealing with time series data where the number of variables D is 2 (bivariate time series data). Furthermore, Figure 4 shows an example where 2 is specified as the number of intervals SA for variable 1, and 1 is specified as the number of intervals SA for variable 2.
[0074] As shown in Figure 4, the output control unit 102 outputs intervals 411-1, 411-2, and 412-1, which correspond to interval SA that contributed to the prediction in the time series data X, and the endpoints obtained through learning (left endpoint a k、d , right end point b k、d It displays a screen containing information indicating ) and .
[0075] Graph 401 represents the time series data for the first variable, 1. Graph 402 represents the time series data for the second variable, 2. Graph 421 shows the interval weights for variable 1. Graph 422 shows the interval weights for variable 2.
[0076] Thus, when considering the interval weight V of interval SA, the interval weight V can also be visualized. Based on the visualized processing results, the user can confirm which interval SA of the time series data the estimation model f based its prediction on.
[0077] Next, we will explain an example of masking. Masking can be any process that replaces the time series data in interval SB in such a way that the estimation result does not change even when masking is applied. The specific method of masking depends on the context. In other words, any mask appropriate to the context may be used. Below, μ in equation (3) d Here are two examples of masks that correspond to this.
[0078] (Mask example 1) In this example, the estimation model is a model that estimates which of several classes the input time series data belongs to (for example, a time series classification model). In this case, the masking process is performed by calculating the time series data μ based on multiple pre-calculated time series data corresponding to classes other than the estimated class, using the partial time series data of interval SB. d This process replaces the time series data μ with a different time series data. For example, the average value of a certain number of time series data from a different class than the class being processed (the estimated class) that are similar to time series data X is used to replace the time series data μ. d It is calculated as follows.
[0079] (Mask example 2) In this example, the estimation model is a model that estimates whether the input time series data is in a specific state (for example, a model that performs unsupervised anomaly detection). The specific state is, for example, a normal state or an abnormal state. In this case, the masking process is performed by masking the partial time series data of interval SB with time series data μ calculated based on multiple pre-determined time series data that are not in the specific state. d This process replaces the data with μ. For example, in the case of unsupervised abnormal waveform detection, the average value of a certain number of normal time series data (time series data that are not in a specific state) is used to replace the time series data μ. d It is calculated as follows.
[0080] The objective function is not limited to the function described above. Below, we will describe variations of the objective function. Note that the modifications described below can be applied not only to the objective function of the first embodiment, but also to the objective function of the second embodiment.
[0081] (modified version) In the modified example, the update unit 123 updates interval SA to minimize the regularization term included in the objective function within the limits of the difference (prediction error) value. Furthermore, the update unit 123 updates interval SA to minimize the difference (prediction error) included in the objective function within the limits of the interval SA length.
[0082] Equation (11) below is an example of an objective function that can be used in this modified example. Compared to equation (1), equation (11) adds a third and fourth term. The third term corresponds to a term that takes into account the constraint on the value of the difference. The fourth term corresponds to a term that takes into account the constraint on the length of the interval SA.
number
[0083] In equation (11), ν and μ are newly introduced as non-negative hyperparameters in addition to λ. P corresponds to the maximum acceptable prediction error. Q corresponds to the maximum sum (maximum length) of multiple intervals SA. The maximum value Q can also be interpreted as the proportion of the time series data length of the interval SA. P and Q are set, for example, by the user.
[0084] For the third term, for example, if the prediction error does not exceed the maximum value P, it becomes 0 and is invalid. For the fourth term, for example, if the sum of interval SA does not exceed the maximum value Q, it becomes 0 and is invalid.
[0085] The update unit 123 may be configured to consider either a limit on the value of the difference (prediction error) or a limit on the length of the interval SA. Such a configuration can be achieved, for example, by setting either the hyperparameter ν or μ to 0.
[0086] Equation (11) is an example that considers the restriction on the sum of multiple intervals SA, but the length restriction may also be considered for each of the multiple intervals SA. Equation (12) below is an example of an objective function that can be used in this case. In equation (12), the fourth term is changed compared to equation (11).
number
[0087] In this example, the user can, for instance, determine the maximum length Q of the interval SA for each variable d. dSpecify (d=1, 2, ..., D). For the fourth term of equation (12), for example, the length of each interval SA is the corresponding maximum value Q. d If it does not exceed this value, it will be 0 and invalid. Furthermore, if it is not necessary to specify the maximum length of the interval SA individually for each variable, a common maximum length may be specified for all variables, or a common maximum length may be specified for some variables.
[0088] As described above, in the first embodiment, the number of interval SAs to be output as the basis for analysis can be specified, and the specified number of interval SAs are updated to reduce the prediction error. The interval SAs may be updated while limiting their maximum length. Since the number of interval SAs is a parameter that is easy for the user to understand, the basis that the user expects can be output more appropriately. In other words, the parts that serve as the basis for the analysis of time series data can be determined more appropriately.
[0089] (Second embodiment) Next, a second embodiment corresponding to (M2) above will be described. The information processing device of the second embodiment learns a number of intervals SA that are commonly specified for D variables. At this time, the weights for each variable are also learned. The weights of the variables can also be interpreted as an indicator of the importance of the variables, or whether or not the variables are valid. In this way, in the second embodiment, it is possible to identify important variables by considering the weights of the variables.
[0090] Figure 5 is a block diagram showing an example of the configuration of the information processing device 100-2 according to the second embodiment. As shown in Figure 5, the information processing device 100-2 includes a reception unit 101, an estimation unit 120-2, an output control unit 102, a storage unit 131, and a display unit 132. The estimation unit 120-2 includes a mask application unit 121-2, a calculation unit 122, and an update unit 123-2.
[0091] In the second embodiment, the functions of the mask application unit 121-2 and the update unit 123-2 within the estimation unit 120-2 differ from those in the first embodiment. Other configurations and functions are the same as those in Figure 2, which is a block diagram of the information processing device 100 of the first embodiment, and are therefore given the same reference numerals, and their description is omitted here.
[0092] The mask application unit 121-2 differs from the mask application unit 121 of the first embodiment in that it applies mask processing while considering the weights of the variables. For example, the mask application unit 121-2 applies mask processing by increasing the application rate for variables with small weights and decreasing the application rate for variables with large weights. This makes it possible to identify intervals SA that contribute to the prediction by focusing on variables with large weights.
[0093] The update unit 123-2 updates the interval SA to optimize the objective function, which further includes terms relating to the weights of the variables.
[0094] The objective variable in this embodiment includes a term in which the application rate of the masking process changes according to, for example, D weights w (second weights) for each of the D variables. Hereafter, the weights of the variables will be referred to as variable weights w. Equation (13) below is an example of an objective function that can be used in this embodiment.
number
[0095] Equation (13) is different from equation (1) of the first embodiment in that a third term is added, which is a term relating to the maximum value of the variable weight w, and the variable weight w is also updated to minimize the prediction error (W∈R under minimize). K×D ) are different.
[0096] The third term corresponds to the term used to update the interval SA and the variable weights w so that the variable weight w that has the maximum value approaches a specified value (1 in the example of equation (13)), and the variable weight w that does not have the maximum value approaches 0. α is a non-negative hyperparameter. Note that the objective function may be constructed without including the third term.
[0097] The masking process in this embodiment, represented by Π(X), is expressed by equation (14) below. The right-hand side of equation (14) is expressed by equation (15) below. Furthermore, m() in equation (15) is expressed by equation (16) below.
number
number
number
[0098] (16) w in equation k、d ~(w k、d Variables with a tilde symbol "~" above them are represented by equation (17) below.
number
[0099] Equation (17) corresponds to the process of normalizing such that each variable weight w takes a value greater than or equal to 0, and for each k=1, 2, ..., K, the sum of all D variables is 1.
[0100] Equation (16) differs from equation (4) of the first embodiment in that it is multiplied by the normalized value w~ of the variable weight w. This enables a function (mask application unit 121-2) in which the application rate of the masking process changes according to the variable weight w.
[0101] Similar to the first embodiment, the objective function may include a term in which the application rate of masking changes depending on the interval weights. In the second embodiment, the interval SA is common to D variables. Therefore, the interval weights are represented by K-dimensional continuous vectors corresponding to K intervals. Hereafter, the interval weights represented by continuous vectors will be denoted as interval weights v. Equation (18) below shows an example of an objective function that includes a term relating to interval weights v.
number
[0102] Equation (19) below shows an example of Π(X) used in equation (18). The right-hand side of equation (19) is expressed by equation (20) below. Also, m() in equation (20) is expressed by equation (21) below. v~ in equation (21) is expressed by equation (22) below.
number
number
number
number
[0103] The update unit 123-2 uses the objective function described above to minimize the difference (prediction error) and updates the interval SA and the variable weights w such that the variable weight w that has the maximum value approaches a specified value (e.g., 1), and the variable weight w that does not have the maximum value approaches 0.
[0104] The update unit 123-2 may change α in accordance with the progress of the repeated update process. Changing α is equivalent to adjusting whether to prioritize minimizing the difference (term 1) or prioritizing the process in which the variable weight with the maximum value approaches a specified value and the variable weight that does not have the maximum value approaches 0 (term 3). For example, in the early stages of the update process (e.g., when the number of iterations is below a threshold), the update unit 123-2 prioritizes minimizing the difference (prediction error) by making α small. Then, in the later stages of the update process (e.g., when the number of iterations exceeds a threshold), the update unit 123-2 prioritizes the process in term 3, which brings the variable weight with the maximum value closer to a specified value, by making α large.
[0105] Next, we will describe the various data used in the estimation process by the information processing device 100-2 of the second embodiment. The estimation process of this embodiment is a process that estimates (learns) which variable the interval SA corresponds to, along with the location that forms the basis of the estimation result (the positions of both endpoints of the interval SA), based on the estimation result of the time series data X by the trained estimation model f.
[0106] In this embodiment, the number of intervals SA is specified as a number K common to all variables. Therefore, in this embodiment, the positions of the left endpoint a and the right endpoint b of interval SA are each represented by a continuous value vector of K dimensions.
[0107] For each interval SA, the variable weights w for each variable are represented by a K × D continuous matrix. When considering the interval weights v for each interval SA, the interval weights v are represented as K-dimensional continuous vectors.
[0108] For example, the positions of the left endpoint and right endpoint of the k-th interval SA, the variable weights w and v for the variable d are, respectively, a k , b k , w k、d , and, v k This is how it is described. Note that the variable weights w and interval weights v are determined such that they satisfy, for example, the following conditions (C2) and (C3), respectively. (C2) k=1, 2, ..., K and d=1, 2, ..., D with w k、d ≥ 0, w k、1 + w k、2 +···+w k、D =1 (C3) k=1, 2, ..., K k ≥ 0, and v1 + v2 + ... + v k =1
[0109] Next, the estimation process by the information processing device 100-2 of the second embodiment will be explained with reference to Figure 6. Figure 6 is a flowchart showing an example of the estimation process in the second embodiment.
[0110] In this embodiment, the reception unit 101 obtains the trained estimation model f, the time series data X of the D variable to be processed, and the number K of intervals SA common to the variables (step S201).
[0111] Estimation unit 120-2 calculates the interval SA (interval [a k , b k In addition to ]), the variable weights w k、d Initialize the interval weight v. If interval weight v is to be considered, the estimation unit 120-2 initializes the interval weight v. k Also initialize (step S202).
[0112] Step S203 is the same as step S103 in the flowchart of the estimation process of the first embodiment (Figure 3).
[0113] The mask application unit 121-2 applies mask processing to the partial time series data of interval SB other than interval SA in the time series data X (step S204). In this embodiment, the mask application unit 121-2 applies mask processing so that the application rate changes according to the variable weight w. For example, the mask application unit 121-2 increases the application rate for variables with small variable weight w and decreases the application rate for variables with large variable weight w. This makes it possible to focus on variables with large variable weights and identify interval SA that contributes to the prediction.
[0114] Steps S205 and S206 are the same as steps S105 and S106 in the flowchart of the estimation process of the first embodiment (Figure 3).
[0115] In this embodiment, the update unit 123-2 adjusts the variable weight w so that the prediction error is reduced. k、1 , w k、2 ...w k、D Update (step S207). As shown in the third term of equation (13), the update unit 123-2 updates the variable weight w for each interval SA. k、d The maximum value approaches a specified value (e.g., 1), and the variable weights other than the maximum value w k、d’It may be updated so as to approach 0. As a result, it becomes possible to associate the finally output section SA with a specific variable.
[0116] Note that the process of updating the section SA in step S206 and the process of updating the variable weight w in step S207 may be executed simultaneously or at different timings.
[0117] Steps S208 to S210 are the same as steps S107 to S109 in the flowchart of the estimation process of the first embodiment (FIG. 3), so the description thereof is omitted.
[0118] FIG. 7 is a diagram showing an example of the display screen of the present embodiment. Note that FIG. 7 is an example of a display screen in the case of targeting time series data (two-variable time series data) where the number D of variables is 2. Further, FIG. 7 shows an example in which 1 is specified as the number K of sections SA common to the variables.
[0119] As shown in FIG. 7, the output control unit 102 displays a display screen including a section 711 corresponding to the section SA that contributed to the prediction in the time series data X and information indicating both endpoints (left endpoint a k , right endpoint b k ) obtained by learning.
[0120] Graph 701 corresponds to the time series data for the first variable 1. Graph 702 corresponds to the time series data for the second variable 2. Graph 721 represents the variable weight w for variable 1. Graph 722 represents the variable weight w for variable 2. In FIG. 7, an example where the variable weight of variable 1 is larger than that of variable 2 is shown. When considering the section weight v of each section SA, for example, similar to graph 22 in FIG. 1, the section weight v may be further visualized.
[0121] Based on the visualized on the visualized processing result, the user can confirm which variable of the time series data and which section SA the estimation model f predicted based on.
[0122] Thus, in the second embodiment, a common value can be specified as the number of interval SAs for multiple variables, and the specified number of interval SAs are updated to reduce the prediction error. In addition, the weights (variate weights) of each of the multiple variables are updated to reduce the prediction error. This makes it possible to identify important variables.
[0123] As explained above, according to the first and second embodiments, the parts that serve as the basis for the analysis of time-series data can be determined more appropriately.
[0124] Next, the hardware configuration of the information processing device according to the first or second embodiment will be described using Figure 8. Figure 8 is an explanatory diagram showing an example of the hardware configuration of the information processing device according to the first or second embodiment.
[0125] The information processing device in the first or second embodiment includes a control device such as a CPU 51, a storage device such as a ROM (Read Only Memory) 52 or RAM 53, a communication I / F 54 for communication via a network, and a bus 61 for connecting the various parts.
[0126] The program to be executed in the information processing device of the first or second embodiment is provided pre-installed in a ROM 52 or the like.
[0127] The program executed by the information processing device of the first or second embodiment may be configured to be provided as a computer program product by recording it in an installable or executable file format onto a computer-readable recording medium such as a CD-ROM (Compact Disk Read Only Memory), a flexible disk (FD), a CD-R (Compact Disk Recordable), or a DVD (Digital Versatile Disk).
[0128] Furthermore, the information processing device of the first or second embodiment may be configured to store the program on a computer connected to a network such as the Internet and provide it by allowing download via the network. Alternatively, the information processing device of the first or second embodiment may be configured to provide or distribute the program via a network such as the Internet.
[0129] A program executed in the information processing device of the first or second embodiment can cause a computer to function as a part of the information processing device described above. This computer can read a program from a computer-readable storage medium onto its main memory and execute it using the CPU 51.
[0130] An example of the configuration of the embodiment is described below. (Configuration Example 1) Based on the first estimation result of the estimation model when the first time series data is input, and the second estimation result of the estimation model when the second time series data obtained by applying mask processing to a specified number of partial time series data of the second interval other than the first interval from the first time series data is input, the update process for the specified number of first intervals is executed. Processing unit, An information processing device equipped with the following features. (Configuration example 2) The aforementioned processing unit, The update process is executed based on an objective function that includes the difference between the first estimation result and the second estimation result. The information processing device described in Configuration Example 1. (Configuration Example 3) The aforementioned processing unit, The update process is executed to optimize the objective function. The information processing device described in Configuration Example 2. (Configuration example 4) The aforementioned processing unit, The masking process is applied to the partial time series data of the second interval, The difference between the first estimation result and the second estimation result is calculated, Based on the objective function including the difference, the update process is executed. The information processing device described in Configuration Example 1. (Configuration example 5) The aforementioned processing unit, The masking process is applied such that the application rate of the masking process increases as one moves from the endpoint of the first section outward from the first section, and decreases as one moves inward from the first section. The information processing device described in Configuration Example 4. (Configuration example 6) The aforementioned processing unit, The update process described above is repeatedly executed, As the update process is repeated, the masking process is applied such that the smoothness representing the degree of increase and decrease in the application rate becomes steeper. The information processing device described in Configuration Example 5. (Configuration example 7) The first interval is determined by the positions of two endpoints on the first time series data, or by one endpoint and the length of the interval. An information processing device as described in any one of Configuration Examples 1 to 6. (Configuration example 8) The aforementioned processing unit, The first interval is updated based on an objective function that includes the difference between the first estimation result and the second estimation result, and a regularization term whose value decreases as the length of the first interval decreases. An information processing device as described in any one of Configuration Examples 1 to 7. (Configuration example 9) The aforementioned processing unit, Within the limit of the difference value, the first interval is updated to optimize the regularization term included in the objective function. The information processing device described in Configuration Example 8. (Configuration example 10) The aforementioned processing unit, Within the limit on the length of the first interval, the first interval is updated to minimize the difference between the first estimation result and the second estimation result. An information processing device as described in any one of Configuration Examples 1 to 9. (Configuration Example 11) The aforementioned processing unit, The first interval and the first weights are updated based on an objective function that includes the difference between the first estimation result and the second estimation result, and a term in which the application rate of the masking process changes according to the number of first weights corresponding to each of the first intervals. An information processing device as described in any one of Configuration Examples 1 to 10. (Configuration Example 12) The first time series data is a D-variable time series data containing D variables (where D is an integer greater than or equal to 1), The aforementioned number is specified for each of the D variables. An information processing device as described in any one of Configuration Examples 1 to 11. (Configuration Example 13) The first time series data is a D-variable time series data containing D variables (where D is an integer greater than or equal to 1), The aforementioned number is one value common to D variables. An information processing device as described in any one of Configuration Examples 1 to 11. (Configuration Example 14) The aforementioned processing unit, Based on an objective function that includes the difference between the first estimation result and the second estimation result, and a term in which the application rate of the masking process changes according to the D second weights for each of the D variables, the first interval and the second weights are updated such that the difference is minimized, the second weight that is the maximum value approaches a specified value, and the second weight that is not the maximum value approaches 0. The information processing device described in Configuration Example 13. (Configuration example 15) The aforementioned processing unit, The update process described above is repeatedly executed, Depending on the progress of the update process, the system adjusts whether to prioritize minimizing the difference or to prioritize a process in which the second weight that becomes the maximum value approaches a predetermined value, and the second weight that does not become the maximum value approaches 0. The information processing device described in Configuration Example 14. (Configuration Example 16) The aforementioned estimation model is a model that estimates whether or not the input time series data is in a specific state. The masking process involves replacing the partial time series data of the second interval with time series data calculated based on a plurality of pre-determined time series data that are not in the specified state. An information processing device as described in any one of Configuration Examples 1 to 15. (Configuration Example 17) The aforementioned estimation model is a model that estimates which of several classes the input time series data belongs to. The masking process involves replacing the partial time series data of the second interval with time series data calculated based on a plurality of pre-determined time series data corresponding to classes other than the class corresponding to the first estimation result. An information processing device as described in any one of Configuration Examples 1 to 15. (Configuration Example 18) The aforementioned processing unit, The output of the first section of the number of items that are the result of the update process is controlled. An information processing device as described in any one of Configuration Examples 1 to 16. (Configuration example 19) The aforementioned processing unit, The system includes an update unit that performs the update process based on the first estimation result and the second estimation result, An information processing device as described in any one of Configuration Examples 1 to 18. (Configuration example 20) An information processing method performed by an information processing device, A step of performing an update process for the specified number of first intervals based on the first estimation result of the estimation model when the first time series data is input, and the second estimation result of the estimation model when the second time series data obtained by applying mask processing to a specified number of partial time series data of the second interval other than the first interval from the first time series data is input. Information processing methods including (Configuration Example 21) On the computer, A step of performing an update process for the specified number of first intervals based on the first estimation result of the estimation model when the first time series data is input, and the second estimation result of the estimation model when the second time series data obtained by applying mask processing to a specified number of partial time series data of the second interval other than the first interval from the first time series data is input. A program to execute.
[0131] While several embodiments of the present invention have been described, these embodiments are presented as examples only and are not intended to limit the scope of the invention. These novel embodiments can be carried out in a variety of other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims of the invention and its equivalents. [Explanation of symbols]
[0132] 100, 100-2 Information Processing Device 101 Reception Department 102 Output control unit 120, 120-2 Estimation part 121, 121-2 Mask application area 122 Calculation Section 123, 123-2 Update section 131 Storage section 132 Display section
Claims
1. Based on the first estimation result of the estimation model when the first time series data is input, and the second estimation result of the estimation model when the second time series data obtained by applying mask processing to a specified number of partial time series data of the second interval other than the first interval from the first time series data is input, the update process for the specified number of first intervals is executed. Processing unit, An information processing device equipped with the following features.
2. The aforementioned processing unit, The update process is executed based on an objective function that includes the difference between the first estimation result and the second estimation result. The information processing apparatus according to claim 1.
3. The aforementioned processing unit, The update process is executed to optimize the objective function. The information processing apparatus according to claim 2.
4. The aforementioned processing unit, The masking process is applied to the partial time series data of the second interval, The difference between the first estimation result and the second estimation result is calculated, Based on the objective function including the difference, the update process is executed. The information processing apparatus according to claim 1.
5. The aforementioned processing unit, The masking process is applied such that the application rate of the masking process increases as one moves from the endpoint of the first section outward from the first section, and decreases as one moves inward from the first section. The information processing apparatus according to claim 4.
6. The aforementioned processing unit, The update process described above is repeatedly executed, As the update process is repeated, the masking process is applied such that the smoothness representing the degree of increase and decrease in the application rate becomes steeper. The information processing apparatus according to claim 5.
7. The first interval is determined by the positions of two endpoints on the first time series data, or by one endpoint and the length of the interval. The information processing apparatus according to claim 1.
8. The aforementioned processing unit, The first interval is updated based on an objective function that includes the difference between the first estimation result and the second estimation result, and a regularization term whose value decreases as the length of the first interval decreases. The information processing apparatus according to claim 1.
9. The aforementioned processing unit, Within the limit of the difference value, the first interval is updated to optimize the regularization term included in the objective function. The information processing apparatus according to claim 8.
10. The aforementioned processing unit, Within the limit on the length of the first interval, the first interval is updated to minimize the difference between the first estimation result and the second estimation result. The information processing apparatus according to claim 1.
11. The aforementioned processing unit, The first interval and the first weights are updated based on an objective function that includes the difference between the first estimation result and the second estimation result, and a term in which the application rate of the masking process changes according to the number of first weights corresponding to each of the first intervals. The information processing apparatus according to claim 1.
12. The first time series data is a D-variable time series data containing D variables (where D is an integer greater than or equal to 1), The aforementioned number is specified for each of the D variables. The information processing apparatus according to claim 1.
13. The first time series data is a D-variable time series data containing D variables (where D is an integer greater than or equal to 1), The aforementioned number is one value common to D variables. The information processing apparatus according to claim 1.
14. The aforementioned processing unit, Based on an objective function that includes the difference between the first estimation result and the second estimation result, and a term in which the application rate of the masking process changes according to D second weights for each of the D variables, the first interval and the second weights are updated such that the difference is minimized, the second weight that is the maximum value approaches a specified value, and the second weight that is not the maximum value approaches 0. The information processing apparatus according to claim 13.
15. The aforementioned processing unit, The update process described above is repeatedly executed, Depending on the progress of the update process, the system adjusts whether to prioritize minimizing the difference or to prioritize a process in which the second weight that becomes the maximum value approaches a predetermined value, and the second weight that does not become the maximum value approaches zero. The information processing apparatus according to claim 14.
16. The aforementioned estimation model is a model that estimates whether or not the input time series data is in a specific state. The masking process involves replacing the partial time series data of the second interval with time series data calculated based on a plurality of pre-determined time series data that are not in the specified state. The information processing apparatus according to claim 1.
17. The aforementioned estimation model is a model that estimates which of several classes the input time series data belongs to. The masking process involves replacing the partial time series data of the second interval with time series data calculated based on a plurality of pre-determined time series data corresponding to classes other than the class corresponding to the first estimation result. The information processing apparatus according to claim 1.
18. The aforementioned processing unit, The output of the number of first intervals, which is the result of the update process, is controlled. The information processing apparatus according to claim 1.
19. The aforementioned processing unit, The system includes an update unit that performs the update process based on the first estimation result and the second estimation result. The information processing apparatus according to claim 1.
20. An information processing method performed by an information processing device, A step of performing an update process for the specified number of first intervals based on the first estimation result of the estimation model when the first time series data is input, and the second estimation result of the estimation model when the second time series data obtained by applying mask processing to a specified number of partial time series data of the second interval other than the first interval from the first time series data is input. Information processing methods including
21. On the computer, A step of performing an update process for the specified number of first intervals based on the first estimation result of the estimation model when the first time series data is input, and the second estimation result of the estimation model when the second time series data obtained by applying mask processing to a specified number of partial time series data of the second interval other than the first interval from the first time series data is input. A program to execute.
Citation Information
Patent Citations
User characterization method and system
CN114169942A
Monitoring device, monitoring method, and monitoring program
JP2022048326A
Evaluating black box modeling of time-series data
US20230244962A1
Information processing device, information processing method, and program
WO2019130974A1