WO2020158032A1 - 推定装置、学習装置、それらの方法、およびプログラム - Google Patents

推定装置、学習装置、それらの方法、およびプログラム Download PDF

Info

Publication number
WO2020158032A1
WO2020158032A1 PCT/JP2019/034216 JP2019034216W WO2020158032A1 WO 2020158032 A1 WO2020158032 A1 WO 2020158032A1 JP 2019034216 W JP2019034216 W JP 2019034216W WO 2020158032 A1 WO2020158032 A1 WO 2020158032A1
Authority
WO
WIPO (PCT)
Prior art keywords
state
parameter
observation
amount
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2019/034216
Other languages
English (en)
French (fr)
Inventor
村田 伸
悠馬 小泉
登 原田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to US17/425,684 priority Critical patent/US20240028872A1/en
Priority to JP2020569354A priority patent/JP7163977B2/ja
Publication of WO2020158032A1 publication Critical patent/WO2020158032A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Definitions

  • the present invention relates to an estimation device, a learning device, a method thereof, and a program for estimating a state from an observed amount using a state space model.
  • a framework called a state space model is widely used to analyze the properties of objects from series data.
  • the state space model consists of hidden “state models” that cannot be observed and “observation models” that are the results of observation.
  • a quantity called a state evolves over time, and the observed quantities (for example, current and sound pressure) are evolved from these states through the observation process.
  • -A model that thinks that "quantity" series data such as images will be generated.
  • the state is non-linear and changes over time (time evolution), and the observed amount can be obtained (through the observation process) by performing observation processing that changes non-linearly over time with the time transition of the state. Due to the non-linearity of the observation process and time evolution, it is difficult to learn all state-space models from observables only without prior assumptions. On the other hand, a technique called Koopman mode decomposition, which has been studied in recent years, can avoid the above-mentioned nonlinearity by considering a state space model in another region (function space) (Non-Patent Document 1, 2).
  • the present invention provides a learning device that learns an observation process, time evolution, and a state from only an observation amount, an estimation device that estimates a state from an observation amount using an observation process, a time evolution, and a state that is learned only from an observation amount, and
  • the purpose is to provide a method and a program.
  • an estimation apparatus uses an encoder to estimate an observation amount from a state using a state estimation unit that estimates a state from an observation amount, and a decoder.
  • An observing quantity estimating unit for estimating and a future observing quantity estimating unit for estimating a future observing quantity which is a value in which the observing quantity fluctuates with time using the parameter K representing the time expansion, and has an encoder parameter.
  • the parameter of the decoder and the parameter K are optimized at the same time.
  • the present invention it is possible to learn the observation process/time evolution/state only from the observation amount. Further, it is possible to estimate the state from the observed amount by using the observation process, time evolution, and state learned from only the observed amount.
  • FIG. 2A is a diagram for explaining a spatial state model of a conventional technique
  • FIG. 2B is a diagram for explaining a framework of the auto encoder of the first embodiment.
  • the functional block diagram of the learning device which concerns on 1st embodiment.
  • the functional block diagram of the estimation apparatus which concerns on 1st embodiment.
  • the figure for demonstrating the algorithm of an estimation stage The figure which shows the outline
  • FIG. 2A is a diagram for explaining a spatial state model of a conventional technique
  • FIG. 2B is a diagram for explaining a framework of the auto encoder of the first embodiment.
  • the functional block diagram of the abnormality detection apparatus which concerns on 2nd embodiment. The figure which shows the example of the process flow of the pre-process of the abnormality detection apparatus which concerns on 2nd embodiment.
  • the functional block diagram of the learning device which concerns on 3rd embodiment.
  • the functional block diagram of the estimation part of the estimation apparatus which concerns on 3rd embodiment.
  • the present embodiment makes it possible to learn not only the time evolution and the observation process but also the “inverse function” of the observation process at the same time, so that all of the observation process, the time evolution, and the state can be learned from only the observed amount.
  • the auto encoder network see Reference 1 is used.
  • Reference 1 G. E. Hinton. "Reducing the Dimensionality of Data with Neural Networks", Science, 313(5786):504-507, July 2006.
  • Auto-encoder converts a certain input into a low dimension by a network called an encoder and restores it by a network called a decoder.
  • the basic technology of the present embodiment is that both of them can be learned at the same time by regarding the encoder as an “inverse function” and the decoder as an observation process.
  • the state space model includes an observation model that estimates an observed amount from a state that changes over time and is unobservable, and a state model that estimates a state that changes over time.
  • the state space model is premised on estimating the observed amount from the state.
  • such a model cannot be constructed when the state is unknown.
  • the encoder is used as a model for estimating the state from the observed quantity
  • the decoder is By learning as a model for estimating the observed amount, we made it possible to construct a model for estimating the observed amount from the state. In other words, it may be said that the model is constructed so as to learn a model in which input and output are reversed.
  • the state may be abstract or concrete.
  • the state evolves over time as follows.
  • x t+1 f(x t ) (1)
  • the observed amount is a value that is digitized by some method (for example, current voltage, temperature, sound pressure, image, etc.), and may be multidimensional data obtained by a microphone array.
  • the goal in the framework of the state-space model is to obtain the sequence data ⁇ y 1 ,...,y T ⁇ of observables, ⁇ State series data ⁇ x 1 ,...,x T ⁇ ⁇ Time evolution function f(x t ) ⁇ Function of observation process g(x t ) Is to decide.
  • Koopman mode decomposition is a method that can avoid the aforementioned non-linearity. (Koopman mode decomposition) Basis functions
  • Koopman mode decomposition can avoid the above non-linearity by discussing it in the function space.
  • Koopman mode decomposition is applicable when the state x t is known. Therefore, even if Koopman mode decomposition is used, it is difficult to learn the time evolution, the observation process, and the state only from the series data of the observed amount.
  • a new state estimation method is devised based on the framework of Koopman mode decomposition.
  • FIG. 1 shows an outline of this embodiment.
  • the state data x t , observation process ( ⁇ ,B), and time evolution K are learned by inputting the observation data series data ⁇ y t ⁇ . After learning, it outputs the sequence data ⁇ y 1 (t) , ⁇ y 2 (t) , ... and the state x t of the observed amount predicted from a certain observed amount y t .
  • Is. B -1 (•) can be analytically obtained by pseudo-inverse matrix of B or Ridge regression.
  • An auto-encoder network is a neural network used to reduce the dimension of data. An input is transferred to an intermediate layer through an encoder and reconstructed through a decoder. That is,
  • the encoder ⁇ ⁇ 1 is the inverse function ⁇ ⁇ 1 ( ⁇ ) of the basis function and the decoder ⁇ is the basis function ⁇ ( ⁇ ).
  • the state x t is transformed into ⁇ z t on the basis, and the time elapses so as to obtain a spatial state model that derives the observed amount ⁇ y t predicted from ⁇ z t and the coefficient B.
  • a base was obtained which was linearly transformed according to (see FIGS. 1 and 2A).
  • it is learned using an encoder that outputs enter the observed quantity y t state x t, decoder for outputting enter the state x t observed quantity ⁇ y t, and so as the framework of Autoencoder (See FIGS. 1 and 2B).
  • This embodiment is divided into two stages.
  • One is a stage (hereinafter also referred to as a learning stage) for learning the time evolution, the observation process, and its inverse function from the time series data of the observed amount.
  • One is the stage of acquiring the state from the observed amount (hereinafter also referred to as the state acquisition stage).
  • the state acquisition system includes a learning device 100 and a state acquisition device 200 (see FIG. 3). Since the state acquisition device 200 estimates the state from the observed amount or the observed amount from the state, it is also referred to as the estimation device 200. Similarly, the state acquisition stage is also called an estimation stage, and the state acquisition system is also called an estimation system.
  • the learning device 100 executes the above-mentioned learning stage, and the estimation device 200 executes the above-mentioned estimation stage. First, the learning stage will be described.
  • FIG. 4 shows a functional block diagram of the learning device 100
  • FIG. 5 shows an example of its processing flow.
  • the learning device 100 includes an initialization unit 110, an estimation unit 120, an objective function calculation unit 130, and a parameter updating unit 140.
  • the learning device 100 receives the series data ⁇ y t (L) ⁇ of the observation amount for learning, and outputs the parameters (w enc , w dec , K, B) as the learning result.
  • w enc is the parameter used in the encoder (the parameter of the inverse function ⁇ ⁇ 1 )
  • w dec is the parameter used in the decoder (the parameter of the basis function ⁇ )
  • K is the parameter representing the time evolution
  • B is the expansion coefficient. ..
  • the learning stage is performed as in Algorithm 1 of FIG.
  • An example is shown in which the observation amount for learning is data based on image data.
  • the data y t based on the image data may be, for example, data having a pixel value of each pixel and having dimensions corresponding to the number of pixels, or a feature amount obtained from the image data or a feature amount obtained from the moving image data.
  • the state represents an abstract state corresponding to the observed amount y t , and this abstract state has a physical meaning (e.g., lower than the observed amount). Dimension value).
  • the state represents an amount similar to the size and position of a periodic pattern or object appearing in the image data, or an amount similar to the phase of the moving object in the moving image data including the image data (when periodically operating).
  • the estimation unit 120 inputs the observation observation series data ⁇ y t (L) ⁇ and the initialized or updated parameters w enc (k) ,w dec (k) ,K (k) ,B (k) . , (1) Estimating the value of the basis function (estimated value z t ), (2) Estimating the state (estimated value x t ), (3) Estimating the value of the reconstructed basis function (estimated value ⁇ z t ).
  • B (k)+ (•) represents solving the regression problem.
  • B (k) + ( ⁇ ) (B (k) T B (k) + ⁇ I) -1
  • B (k) T ⁇ is a problem in the Ridge regression, using the pseudo-inverse matrix
  • a sparse estimation algorithm such as linear regression or LASSO may be used.
  • is a predetermined weighting parameter in Ridge regression.
  • the objective function calculation unit 130 uses the observation observation series data ⁇ y t+ ⁇ (L) ⁇ and the estimated value series data ⁇ z t+ ⁇ ⁇ , ⁇ x t+ ⁇ ⁇ , ⁇ z t+ ⁇ ⁇ , predicted value series data ⁇ z ⁇ (t) ⁇ , ⁇ y ⁇ (t) ⁇ , parameters w enc (k) and w dec (k) are input, and the value of the objective function J( ⁇ ) Is calculated (S130) and output.
  • is a set of parameters w enc (k) , w dec (k) , K (k) , and B (k) .
  • ⁇ ⁇ is 0 ⁇ ⁇ ⁇ 1, and is a weighting parameter for setting so that the error at the time t+ ⁇ closer to the current time t is evaluated larger, and E[ ⁇ ] represents the expected value calculation.
  • the updated parameters w enc (k+1) , w dec (k+1) ,K (k+1) ,B (k+1) is provided to the estimation unit 120, and updated parameters w enc (k+1) ,w dec (k+1 ) for calculating the regularization term ⁇ 1 are calculated.
  • the parameter update is aborted and the model learning is terminated.
  • the latest parameters w enc (k) ,w dec (k) ,K (k) ,B (k) are output to the estimation device 200 as parameters (w enc ,w dec ,K,B) which are learning results. ..
  • FIG. 7 shows a functional block diagram of the estimation device 200, and FIG. 8 shows an example of the processing flow thereof.
  • the estimation device 200 includes an estimation unit 220.
  • estimation device 200 sets the parameters (w enc , w dec , K, B) received from the learning device 100 in the estimation unit 220 prior to the estimation and prediction.
  • Algorithm 2 When running the algorithm 2 in FIG. 9, the estimating apparatus 200 inputs the observed quantity y t, estimates the state corresponding to the observed quantity y t, predicting time series data of the observed quantity after y t, the estimated value Output x t , the predicted series data ⁇ y ⁇ (t) ⁇ .
  • the estimation unit 220 can predict the image data at the T-step ahead by using the data based on appropriate image data as the observed amount y t .
  • observation series data y t ,y t+1 ,...,y t+N and estimating series data x t ,x t+1 ,...,x t+N and predicted N
  • the series data ⁇ y ⁇ (t) ⁇ , ⁇ y ⁇ (t+1) ⁇ ,..., ⁇ y ⁇ (t+N) ⁇ may be output.
  • the estimation unit 220 receives the observed amount y t as input, and estimates the state by performing a predetermined process on the observed amount y t (S220).
  • the predetermined processing is (1) estimation of the value of the basis function (estimated value z t ) and (2) estimation of the state (estimated value x t ).
  • the estimation unit 220 includes (3) estimation of the value of the reconstructed basis function (estimated value ⁇ z t ), (4) prediction of the basis function (predicted value ⁇ z ⁇ (t) ), (5) observed amount Is performed (predicted value ⁇ y ⁇ (t) ) (S220), and the estimated value xt and predicted value series data ⁇ y ⁇ (t) ⁇ are output.
  • processes (3) to (5) above are processes that obtain the observed amount from the state, and can be said to be the reverse process of the above processes (1) and (2).
  • FIG. 10 shows an example of actually generating series data by learning parameters by inputting series data of data based on image data.
  • the upper part of FIG. 10 is the series data of the data based on the actual image data (the series data of the observed amount for learning).
  • Algorithm 3 When executing the algorithm 3 of FIG. 11, the estimation apparatus 200 receives the state x t as input, predicts the observed amount corresponding to the state x t , and outputs the predicted series data ⁇ y ⁇ (t) ⁇ . In Algorithm 3 of FIG. 11, it is possible to give an appropriate state x t to the estimation unit 220 and predict an image up to T steps ahead.
  • the estimation unit 220 receives a certain state x t as input, (1) estimation of the value of the reconstructed basis function (estimated value ⁇ z t ), (2) prediction of the basis function (predicted value ⁇ z ⁇ (t) ). , (3) prediction of the observed amount (predicted value ⁇ y ⁇ (t) ) is performed (S220), and the series data ⁇ y ⁇ (t) ⁇ of the predicted value is output.
  • the state can be estimated from the observed amount by using the observation process, time evolution, and state (learned model) learned from only the observed amount.
  • the observed quantity can be predicted from the estimated state and the given state. That is, the sequence data can be predicted by estimating the state from the current observed amount, simulating the time evolution, and observing the state. Further, by giving an observation amount and a state, it is possible to artificially generate data (state, observation amount).
  • State can be estimated from series data observed by sensors, etc., and can be used for analysis of observed quantities. In addition, it is easy to visually grasp the observed amount by estimating the state (for example, the number of dimensions is small) from the series data that is difficult to visually grasp (for example, the number of dimensions is large) and presenting the estimated state. Can be converted to (visualized).
  • ⁇ Modification> the case where the observation amount is data based on image data has been described, but other data may be used.
  • data based on acoustic data, data based on vibration data, a combination of data based on acoustic data and data based on vibration data, and the like can be considered. The details will be described below.
  • the sound pressure waveform data obtained from the microphone or its characteristic amount STFT, log-Mel power, etc.
  • STFT log-Mel power, etc.
  • a vector obtained by combining sound pressure waveform data or its characteristic amount by the number of elements is used as the input y t .
  • the state represents an abstract state corresponding to the observed amount y t
  • this abstract state can be a value having a physical meaning (for example, a value of a lower dimension than the observed amount).
  • the state represents an amount similar to the waveform of the sound source, an amount similar to the position of the sound source (when the sound source moves), and an amount similar to the phase (when the sound is periodic).
  • the state represents an abstract state corresponding to the observed amount y t
  • this abstract state can be a value having a physical meaning (for example, a value of a lower dimension than the observed amount).
  • the state represents an amount similar to a mode of vibration, an amount similar to a phase (in the case of vibration of a quasi-periodically moving object), and the like.
  • the state x t represents an abstract state corresponding to the observed amount y t
  • this abstract state can be a value having a physical meaning (for example, a value of a lower dimension than the observed amount).
  • the state represents an amount similar to a waveform of a sound source (vibration source), an amount similar to a vibration mode, and the like.
  • the present invention is applied to abnormality detection.
  • FIG. 12 shows a functional block diagram of the abnormality detection device according to the present embodiment.
  • the learning device 100 learns the parameters (w enc ,w dec ,K,B) by using the observation observation series data ⁇ y t (L) ⁇ for learning as an input. And output.
  • the estimation device 200 sets the parameters (w enc , w dec , K, B) received from the learning device 100 in the estimation unit 220 prior to estimation and prediction.
  • the abnormality detection device 300 includes an error vector calculation unit 310, an average variance/covariance matrix calculation unit 320, and a detection unit 330 (see FIG. 12 ).
  • the abnormality detection device 300 executes an abnormality detection process and a pre-process for obtaining a parameter in advance before the abnormality detection process. First, the preprocessing will be described.
  • the subscript A_B means A B.
  • Fig. 13 shows an example of the processing flow of preprocessing.
  • the anomaly detection apparatus 300 collects T 1 -L partial series D t and T 1 -L predicted series data P t obtained from the data set D normal of the observed amount at the normal time. As an input, a mean ⁇ and a variance-covariance matrix S described later are calculated.
  • the error vector e t is a vector of length (D ⁇ L) when the dimension of the observation amount y t is D.
  • the above error vector calculation is performed for all T 1 -L subseries D t and series data P t .
  • FIG. 14 shows an example of the processing flow of abnormality detection processing.
  • the anomaly detection apparatus 300 uses the T 2 -L partial series D' t' and the T 2 -L predicted series data obtained from the data set D new of the observed amount to be anomaly detected.
  • P 't' ⁇ y '(t') 1, ..., ⁇ y '(t') L ⁇ as input and outputs a detection result of the partial sequence D 't' and series data P 't' ..
  • the detection unit 330 receives the average ⁇ and the variance-covariance matrix S prior to the abnormality detection.
  • L t ' logdet (S) + (e' t '- ⁇ ) T S -1 (e' t '- ⁇ ) T
  • the abnormality degree L t ′ is an amount proportional to the negative logarithmic likelihood when the error vector is fitted with a normal distribution.
  • the detection unit 330 determines whether or not there is an abnormality based on the magnitude relationship between the value corresponding to the abnormality degree L t ′ and the threshold value p, detects the abnormality (S330-2), and outputs the detection result. .. For example, when the degree of abnormality L t′ >p, it is determined to be abnormal, and when L t′ ⁇ p, it is determined not to be abnormal.
  • the threshold p is appropriately determined in advance by experiments, simulations, etc.
  • the present invention can be applied to abnormality detection.
  • the prediction value ⁇ y ⁇ (t) are considering if predicted from the state x t observables of the inverse function to a function for outputting (the prediction value ⁇ y ⁇ (t)) is present.
  • the state x t has a lower dimension than the prediction of the observed quantity (predicted value ⁇ y ⁇ (t) )
  • FIG. 15 shows an extended dynamic mode decomposition (EDMD) part which is a numerical calculation method of Koopman mode decomposition.
  • EDMD extended dynamic mode decomposition
  • the mean and variance parameters are estimated from the observed quantities y t and y t+1 using a neural network (( ⁇ t , ⁇ t ) ⁇ (y t ,y t+1 )).
  • This process corresponds to the encoding of the variational auto encoder, and the part that realizes this process is called an encoder.
  • the latent variable (state x t ) is sampled from the multivariate normal distribution according to the obtained mean estimate ⁇ t and variance parameter estimate ⁇ t .
  • e t in the figure is a random number obtained from a normal distribution with mean 0 and variance 1.
  • a normal variational auto encoder learns the weighting parameter ⁇ of the neural network so as to minimize the following objective function.
  • B] represents the Kullback-Leibler divergence of distributions A and B
  • N( ⁇ , ⁇ ) represents the distribution of mean ⁇ and variance ⁇
  • ⁇ ⁇ (y t ) represents the distribution of mean ⁇ and variance ⁇
  • ⁇ ⁇ (y t ) represents the mean and variance parameters estimated by giving the observed amount y t+ ⁇ to the neural network with the weight parameter ⁇ .
  • the expansion coefficient B and the parameter K are learned and optimized at the same time as the weighting parameter ⁇ . That is,
  • ⁇ y ⁇ (t) BK ⁇ ⁇ z t
  • ⁇ ⁇ (y t+ ⁇ ,y t+ ⁇ +1 ) and ⁇ ⁇ (y t+ ⁇ ,y t+ ⁇ +1 ) are respectively Mean and variance parameters estimated by giving the observed quantities y t+ ⁇ and y t+ ⁇ +1 to the neural network of the weight parameter ⁇ are shown. The following two points can be mentioned as the difference between the first embodiment and this embodiment.
  • the first embodiment assumed an inverse function, but this embodiment assumes a stochastic generative model.
  • the reconstruction error was minimized as an objective function, but in this embodiment, a Kullback-Leibler divergence term that measures the closeness of the distribution is added to the reconstruction error.
  • the estimation system includes a learning device 100 and an estimation device 200 (see FIG. 3).
  • the learning device 100 executes the learning stage, and the estimation device 200 executes the estimation stage. First, the learning stage will be described.
  • FIG. 16 is a functional block diagram of the learning device 100, and FIG. 5 shows an example of the processing flow.
  • the learning device 100 includes an initialization unit 110, an estimation unit 120, an objective function calculation unit 130, and a parameter updating unit 140.
  • the learning device 100 inputs the series data ⁇ y t ⁇ of the observation amount for learning and outputs the parameters (w enc , w dec , K, B) which are the learning results.
  • w enc is a parameter used in the encoder
  • w dec is a parameter used in the decoder (parameter of the basis function ⁇ )
  • K is a parameter representing time evolution
  • B is an expansion coefficient.
  • the learning phase is as follows.
  • the parameter updating unit 140 receives and processes the objective function L(B (k) , K (k) , ⁇ (k) ) instead of the objective function J( ⁇ (k) ).
  • the estimation unit 120 receives as input the observation observation series data ⁇ y t ⁇ and the initialized or updated parameters w enc (k) ,w dec (k) ,K (k) ,B (k). 1) State mean and variance parameter estimation (estimated values ⁇ t , ⁇ t ), (2) State estimation (estimated value x t ), (3) Reconstructed basis function value estimation (estimated value ⁇ z t ), (4) Basis function prediction (predicted value ⁇ z ⁇ (t) ), (5) Observed amount prediction (predicted value ⁇ y ⁇ (t) ) (S120), predicted value ⁇ y ⁇ ( output t) . Since (3) to (5) are the same as those in the first embodiment, (1) and (2) will be described.
  • the objective function calculation unit 130 receives the learning observation series data ⁇ y t+ ⁇ ⁇ , the predicted value series data ⁇ y ⁇ (t) ⁇ , and the parameter w enc (k) as input, The value L(B (k) , K (k) , ⁇ (k) ) is calculated (S130) and output. Note that ⁇ (k) is a set of parameters w enc (k) and w dec (k) .
  • ⁇ y ⁇ (t) B (k) K (k) ⁇ ⁇ z t .
  • y ⁇ and y ⁇ +1 are required to update K (k) at the same time, and ⁇ is any integer of 1 or more.
  • c and d are parameters for deciding how much importance is attached to each term, and are set appropriately by using experimental results, simulation results, and the like.
  • FIG. 7 shows a functional block diagram of the estimation device 200, and FIG. 8 shows an example of the processing flow thereof.
  • the estimation device 200 includes an estimation unit 220.
  • estimation device 200 sets the parameters (w enc , w dec , K, B) received from the learning device 100 in the estimation unit 220 prior to the estimation and prediction.
  • observation series data y t ,y t+1 ,...,y t+N and estimating series data x t ,x t+1 ,...,x t+N and predicted N
  • the series data ⁇ y ⁇ (t) ⁇ , ⁇ y ⁇ (t+1) ⁇ ,..., ⁇ y ⁇ (t+N) ⁇ may be output.
  • the estimation unit 220 receives the observed amount y t as input, and estimates the state by performing a predetermined process on the observed amount y t (S220).
  • the predetermined processing is the estimation of the average and variance parameters of states (estimated values ⁇ t , ⁇ t ) and (2) the estimation of states (estimated values x t ).
  • the estimation unit 220 includes (3) estimation of the value of the reconstructed basis function (estimated value ⁇ z t ), (4) prediction of the basis function (predicted value ⁇ z ⁇ (t) ), (5) observed amount Is performed (predicted value ⁇ y ⁇ (t) ) (S220), and the estimated value xt and predicted value series data ⁇ y ⁇ (t) ⁇ are output. Since (3) to (5) are the same as those in the first embodiment, (1) and (2) will be described.
  • the input may be two or more observation amounts y t , and the number of observation amounts y t corresponding to the neural network learned by the learning device 100 is input.
  • the estimation unit 220 of the first and third embodiments can also be expressed by the functional block diagram of FIG. FIG. 18 shows an example of the processing flow of the estimation unit 220.
  • the estimation unit 220 includes a state estimation unit 221, an observed amount estimation unit 222, and a future observed amount estimation unit 223. Further, the observed amount estimation unit 222 includes an intermediate value estimation unit 222A and an intermediate observation value estimation unit 222B.
  • the state estimation unit 221 differs in the processing content between the first embodiment and the third embodiment.
  • the observation amount estimation unit 222 and the future observation amount estimation unit 223 have the same processing contents in the first embodiment and the third embodiment.
  • the state estimation unit 221 estimates the state from the observed amount using the encoder of the auto encoder (S221) and outputs it.
  • the state estimation unit 221 receives the neural network parameter wenc and the expansion coefficient B prior to the estimation process.
  • the state estimation unit 221 receives the neural network parameter w enc prior to the estimation process.
  • the state estimation unit 221 estimates the state x t by sampling from the multivariate normal distribution according to ( ⁇ t , ⁇ t ).
  • observation amount estimation unit 222 The observation amount estimation unit 222 estimates the observation amount from the state using the decoder of the auto encoder (S222) and outputs it.
  • the process performed by the state estimation unit 221 is defined by the first function
  • the process performed by the observation amount estimation unit 222 is defined by the second function
  • the first function is the second function. It is an inverse function.
  • the intermediate value estimation unit 222A receives the neural network parameter w dec prior to the estimation process.
  • the estimated value of the reconstructed basis function value is also referred to as an intermediate value.
  • the intermediate observation value estimation unit 222B receives the expansion coefficient B prior to the estimation process.
  • the intermediate observed value estimation unit 222B receives the estimated value ⁇ z t as an input, estimates the observed value from the estimated value ⁇ z t (S222B), and outputs the estimated value ⁇ y t .
  • 0.
  • the future observation amount estimation unit 223 receives K and B prior to the estimation process.
  • the future observation amount estimation unit 223 estimates the future observation amount, which is a value in which the observation amount fluctuates over time, using the parameter K representing the time evolution (S223), and outputs it.
  • estimation units 120 of the learning devices of the first and third embodiments can be similarly expressed. However, processing is performed using the learning observation amount and the learning target parameter.
  • the learning device and the estimation device are configured by loading a special program into a known or dedicated computer having, for example, a central processing unit (CPU) and a main storage device (RAM: Random Access Memory). It is a special device.
  • the learning device and the estimation device execute each process under the control of the central processing unit, for example.
  • the data input to the learning device and the estimation device and the data obtained by each process are stored in, for example, the main storage device, and the data stored in the main storage device are read to the central processing unit as necessary. Used for other processing.
  • At least a part of each processing unit of the learning device and the estimation device may be configured by hardware such as an integrated circuit.
  • Each storage unit included in the learning device and the estimation device can be configured by a main storage device such as a RAM (Random Access Memory) or middleware such as a relational database or a key-value store.
  • a main storage device such as a RAM (Random Access Memory) or middleware such as a relational database or a key-value store.
  • middleware such as a relational database or a key-value store.
  • each storage unit does not necessarily have to be provided inside the learning device and the estimation device, and is configured by an auxiliary storage device configured by a semiconductor memory device such as a hard disk, an optical disk, or a flash memory (Flash Memory), The configuration may be provided outside the device and the estimation device.
  • flash Memory Flash Memory
  • the program describing this processing content can be recorded in a computer-readable recording medium.
  • the computer-readable recording medium may be, for example, a magnetic recording device, an optical disc, a magneto-optical recording medium, a semiconductor memory, or the like.
  • Distribution of this program is carried out by selling, transferring, or lending a portable recording medium such as a DVD or a CD-ROM in which the program is recorded. Further, this program may be stored in a storage device of a server computer, and the program may be distributed by transferring the program from the server computer to another computer via a network.
  • a computer that executes such a program first stores, for example, the program recorded in a portable recording medium or the program transferred from the server computer in its own storage unit. Then, when executing the process, this computer reads the program stored in its own storage unit and executes the process according to the read program. Further, as another embodiment of this program, a computer may directly read the program from a portable recording medium and execute processing according to the program. Further, each time a program is transferred from the server computer to this computer, the processing according to the received program may be executed successively.
  • ASP Application Service Provider
  • the program includes information used for processing by an electronic computer and equivalent to the program (data that is not a direct command to a computer but has the property of defining the processing of the computer).
  • each device is configured by executing a predetermined program on a computer, at least a part of the processing contents may be realized by hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

推定装置は、エンコーダを用いて、観測量から状態を推定する状態推定部と、デコーダとを用いて、状態から観測量を推定する観測量推定部と、時間展開を表すパラメータKを用いて、観測量が時間推移により変動した値である未来観測量を推定する未来観測量推定部と、を有し、エンコーダのパラメータと、デコーダのパラメータと、パラメータKとは、同時に最適化されたものである。

Description

推定装置、学習装置、それらの方法、およびプログラム
 本発明は、状態空間モデルを用いて観測量から状態を推定する推定装置、学習装置、それらの方法、およびプログラムに関する。
 系列データから対象の性質を解析するために、状態空間モデルと呼ばれる枠組みが広く用いられている。状態空間モデルは、観測できない隠れた「状態モデル」と観測した結果である「観測モデル」からなり、状態と呼ばれる量が時間発展し、それらの状態から観測過程を通じて観測量(たとえば電流・音圧・画像などの「量」)の系列データが生成されると考えるモデルである。
 状態は非線形で時間推移(時間発展)するものであり、観測量は状態の時間推移に伴い非線形で時間推移する観測処理を行うことで得る(観測過程を通じて得る)ことができるものである。観測過程と時間発展の非線形性から、事前の仮定なしに状態空間モデルを観測量だけからすべて学習することは困難である。一方、近年研究が進んでいるKoopmanモード分解と呼ばれる手法は、状態空間モデルを別の領域(関数空間)で考えることにより、上述の非線形性を回避することが可能である(非特許文献1、2参照)。
Matthew O. Williams, Clarence W. Rowley, and Ioannis G. Kevrekidis., "A Kernel-Based Approach to Data-Driven Koopman Spectral Analysis", Journal of Computational Dynamic, 2:247-265, 2015. arXiv: 1411.2260. Matthew O. Williams, Ioannis G. Kevrekidis, and Clarence W. Rowley., "A Data-Driven Approximation of the Koopman Operator: Extending Dynamic Mode Decomposition", Journal of Nonlinear Science, 25(6):1307-1346, 2015.
 しかしながら、状態が未知の場合にはKoopmanモード分解を適用できないため、依然として観測量だけから観測過程・時間発展・状態の全てを学習することはできない。
 本発明は、観測量だけから観測過程・時間発展・状態を学習する学習装置、観測量だけから学習した観測過程・時間発展・状態を用いて、観測量から状態を推定する推定装置、それらの方法、およびプログラムを提供することを目的とする。
 上記の課題を解決するために、本発明の一態様によれば、推定装置は、エンコーダを用いて、観測量から状態を推定する状態推定部と、デコーダとを用いて、状態から観測量を推定する観測量推定部と、時間展開を表すパラメータKを用いて、観測量が時間推移により変動した値である未来観測量を推定する未来観測量推定部と、を有し、エンコーダのパラメータと、デコーダのパラメータと、パラメータKとは、同時に最適化されたものである。
 本発明によれば、観測量だけから観測過程・時間発展・状態を学習することができる。また、観測量だけから学習した観測過程・時間発展・状態を用いて、観測量から状態を推定することができるという効果を奏する。
第一実施形態の概要を示す図。 図2Aは従来技術の空間状態モデルを説明するための図、図2Bは第一実施形態のオートエンコーダの枠組みを説明するための図。 第一実施形態に係る推定システムの構成例を示す図。 第一実施形態に係る学習装置の機能ブロック図。 第一実施形態に係る学習装置の処理フローの例を示す図。 学習段階のアルゴリズムを説明するための図。 第一実施形態に係る推定装置の機能ブロック図。 第一実施形態に係る推定装置の処理フローの例を示す図。 推定段階のアルゴリズムを説明するための図。 実際に画像データに基づくデータの系列データを入力としてパラメータを学習し、系列データの生成を行なった例を示す図。 状態に対応する観測量を予測するアルゴリズムを説明するための図。 第二実施形態に係る異常検知装置の機能ブロック図。 第二実施形態に係る異常検知装置の前処理の処理フローの例を示す図。 第二実施形態に係る異常検知装置の異常検知処理の処理フローの例を示す図。 第三実施形態の概要を示す図。 第三実施形態に係る学習装置の機能ブロック図。 第三実施形態に係る推定装置の推定部の機能ブロック図。 第三実施形態に係る推定装置の推定部の処理フローの例を示す図。
 以下、本発明の実施形態について、説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。以下の説明において、テキスト中で使用する記号「^」等は、本来直後の文字の真上に記載されるべきものであるが、テキスト記法の制限により、当該文字の直前に記載する。式中においてはこれらの記号は本来の位置に記述している。また、ベクトルや行列の各要素単位で行われる処理は、特に断りが無い限り、そのベクトルやその行列の全ての要素に対して適用されるものとする。
<第一実施形態のポイント>
 本実施形態は、時間発展と観測過程だけでなく、同時に観測過程の「逆関数」を学習することで、観測量だけから観測過程・時間発展・状態の全てを学習することを可能とする。具体的にはオートエンコーダネットワーク(参考文献1参照)を用いる。
(参考文献1)G. E. Hinton. "Reducing the Dimensionality of Data with Neural Networks", Science, 313(5786):504-507, July 2006.
 オートエンコーダはある入力をエンコーダと呼ばれるネットワークで低次元に変換し、デコーダと呼ばれるネットワークで復元する。ここで、エンコーダを「逆関数」、デコーダを観測過程とみなすことで、両方を同時に学習可能としたことが本実施形態の基礎技術である。上述したように、状態空間モデルは、時間経過で変化するかつ観測不能な状態から観測量を推定する観測モデルと、時間経過で変化する状態を推定する状態モデルからなる。つまり、状態空間モデルは状態から観測量を推定することが前提となる。しかしながら、前述したように状態が未知である場合にはそのようなモデルを構築することができないため、オートエンコーダの枠組みを利用し、エンコーダを観測量から状態を推定するモデルとし、デコーダを状態から観測量を推定するモデルとして学習することで、状態から観測量を推定するモデルの構築を可能とした。入出力を逆転させたモデルを学習するように構築したと言い換えてもよい。
 以下で本実施形態の基礎技術の説明をする。
 状態xtを考える。このとき状態は抽象・具体を問わない。状態は次のように時間発展する。
xt+1 =f(xt)        (1)
この状態xtから、観測量ytが観測過程、
yt=g(xt)        (2)
を通じて得られる。このとき、観測量は何らかの方法で数値化されるもの(たとえば電流電圧、温度、音圧、画像など)であり、マイクロホンアレイで得られるような多次元データでもよい。
 状態空間モデルの枠組みにおける目標は、観測量の系列データ{y1,…,yT}が得られたときに、
・状態の系列データ{x1,…,xT}
・時間発展の関数f(xt)
・観測過程の関数g(xt)
を決定することである。
 ただし、観測量だけから状態空間モデルをすべて決めるのは一般には難しい。これは、時間発展f(xt)と観測過程g(xt)が一般に非線形であり、事前知識なしに定めることが困難なことが一因である。
 Koopmanモード分解は、前述の非線形性を回避可能な手法である。
(Koopmanモード分解)
 基底関数
Figure JPOXMLDOC01-appb-M000001
で観測過程の関数を
Figure JPOXMLDOC01-appb-M000002
のように展開する。このとき、Koopman作用素の考え方を用いると、基底関数の時間発展は
Ψ(xt+1)=Ψ(f(xt))= KΨ(xt)        (4)
のように書き直すことができる。
 まとめると適切な変換zt=Ψ(xt)を用いて(無限次元の)関数空間上で議論をすることで、元の状態空間モデル
Figure JPOXMLDOC01-appb-M000003
が、線形の状態空間モデル
Figure JPOXMLDOC01-appb-M000004
と書き直せる。
 前述の通り、状態空間モデルでは時間発展と観測過程の非線形性から、事前情報なしに生成モデルを学習することは困難である。一方、Koopmanモード分解は、上記の非線形性を、関数空間上で議論することで回避することが可能である。しかし、Koopmanモード分解は、状態xtが既知な場合に適用可能である。そのため、Koopmanモード分解を用いても、観測量の系列データだけから、時間発展・観測過程・状態を学習することは困難である。
 そこで本実施形態では、Koopmanモード分解の枠組みに基づく、新たな状態推定手法を考案する。本実施形態を用いることで、観測量の系列データだけから、時間発展・観測過程・状態のすべてを同時に学習することが可能となる。
(基本的なアイデア)
 図1に本実施形態の概要を記載している。観測量の系列データ{yt}を入力とし、状態xt、観測過程(^Ψ,B)、時間発展Kを学習する。学習後はある観測量ytから予測した観測量の系列データ^y1 (t),^y2 (t),…や状態xtを出力する。
 状態xtから観測量^yt
Figure JPOXMLDOC01-appb-M000005
と生成されるので、現在の観測量ytから状態xtを推定するには上記の逆問題を解く必要がある。すなわち、
Figure JPOXMLDOC01-appb-M000006
である。B-1(・)はBの擬似逆行列や、Ridge回帰で解析的に求めることができる。一方で、基底関数Ψ(・)の逆関数  Ψ-1(・)は一般に求めることは困難である。ここで、逆関数・基底関数・状態を決めるためにオートエンコーダネットワークの枠組みを利用した実装例を説明する。オートエンコーダネットワークはデータの次元削減に使われるニューラルネットワークであり、エンコーダを通して入力が中間層に写され、デコーダを通じて復元される。すなわち、
Figure JPOXMLDOC01-appb-M000007
である。ここで、エンコーダΦ-1を基底関数の逆関数Ψ-1(・)、デコーダΦを基底関数Ψ(・)とみなす。
 別の言い方をすると、従来技術では、状態xtを基底で^ztに変換し、^ztと係数Bから予測した観測量^ytを導くような空間状態モデルになるよう、時間経過に応じて線形変換されるような基底を得ていた(図1、図2A参照)。一方、本実施形態では、観測量ytを入力し状態xtを出力するエンコーダ、状態xtを入力し観測量^ytを出力するデコーダ、となるようオートエンコーダの枠組みを用いて学習する(図1、図2B参照)。
<第一実施形態>
 本実施形態は二段階に分かれている。一つは観測量の時系列データから時間発展と観測過程ならびにその逆関数を学習する段階(以下、学習段階ともいう)である。一つは観測量から状態を取得する段階(以下、状態取得段階ともいう)である。
 本実施形態に係る状態取得システムは、学習装置100と状態取得装置200とを含む(図3参照)。なお、状態取得装置200は、観測量から状態、または、状態から観測量を推定するので、推定装置200ともいう。同様に、状態取得段階を推定段階、状態取得システムを推定システムともいう。
 学習装置100により前述の学習段階を実行し、推定装置200により前述の推定段階を実行する。まず、学習段階について説明する。
(学習段階)
 図4は学習装置100の機能ブロック図を、図5はその処理フローの例を示す。学習装置100は、初期化部110、推定部120、目的関数計算部130、パラメータ更新部140とを含む。
 学習装置100は、学習用の観測量の系列データ{yt (L)}を入力とし、学習結果であるパラメータ(wenc,wdec,K,B)を出力する。wencはエンコーダで用いられるパラメータ(逆関数Ψ-1のパラメータ)を、wdecはデコーダで用いられるパラメータ(基底関数Ψのパラメータ)を、Kは時間発展を表すパラメータ、Bは展開係数を表す。
 学習段階は図6のアルゴリズム1のように行われる。学習用の観測量が画像データに基づくデータである例を示す。ここでは、入力データとして画像データに基づくデータからなる系列データ{yt}(e.g.動画データ)を考える。画像データに基づくデータytは、例えば、各画素の画素値からなる、画素数だけの次元を持つデータでもよいし、画像データから得られる特徴量や動画データから得られる特徴量等でもよい。画像データに基づくデータを入力データとする場合、状態は、観測量ytに対応する抽象的な状態を表し、この抽象的な状態が物理的な意味を持つ値(例えば、観測量に比べ低次元の値)となり得る。例えば、状態は、画像データに表れる周期的な模様や物体の大きさや位置に類する量、画像データからなる動画データ内での動体の位相に類する量(周期的に動作する場合)を表す。
<初期化部110>
 初期化部110は、学習に先立ち、推論に用いるパラメータwenc (k),wdec (k),K(k),B(k)を初期化し(S110)、初期化したパラメータwenc (0),wdec (0),K(0),B(0)を推定部120に出力する。また、更新回数を示すインデックスkをk=0とする。
<推定部120>
 推定部120は、学習用の観測量の系列データ{yt (L)}と初期化または更新したパラメータwenc (k),wdec (k),K(k),B(k)を入力とし、(1)基底関数の値の推定(推定値zt)、(2)状態の推定(推定値xt)、(3)再構成した基底関数の値の推定(推定値^zt)、(4)基底関数の予測(予測値^zτ (t))、(5)観測量の予測(予測値^yτ (t))を行い(S120)、推定値zt、xt、^zt、予測値^zτ (t)、^yτ (t)を出力する。以下、推定および予測を合わせて推定ともいう。以下、推定の詳細を説明する。
 (1)まず、推定部120は、現在の展開係数B(k)を用いて基底関数の値ztを推定する。すなわち、zt=B(k)+(yt (L))である。ここで、B(k)+(・)は回帰問題を解くことを表す。本実施形態ではRidge回帰の問題としてB(k)+(・)=(B(k)TB(k)+σI)-1B(k)T・とするが、擬似逆行列を用いた通常の線形回帰やLASSOなどのスパース推定アルゴリズムを用いてもよい。ただし、σはRidge回帰における所定の重みパラメータである。
 (2)次に、式(9)のニューラルネットワークを用いて、状態の推定をxt-1(zt;wenc (k))として行う。
 (3)更に、式(9)のニューラルネットワークを用いて、再構成された基底関数の値の推定を^zt=Φ(xt;wdec (k))として行う。
 (4)次にτ=0,…,Τとして、基底関数の値の線形予測を行い、基底関数の値の予測値^zτ (t)=K(k)τ^ztを得る。
 (5)予測値^zτ (t)をもとに、観測量の予測値^yτ (t) = B(k)^zτ (t)を得る。
<目的関数計算部130>
 目的関数計算部130は、学習用の観測量の系列データ{yt+τ (L)}と、推定値の系列データ{zt+τ}、{xt+τ}、{^zt+τ}、予測値の系列データ{^zτ (t)}、{^yτ (t)}、パラメータwenc (k)、wdec (k)を入力とし、目的関数の値J(Θ)を計算し(S130)、出力する。なお、Θはパラメータwenc (k),wdec (k),K(k),B(k)の集合である。
 (i)まず、観測量の予測誤差を次式により求める。
Figure JPOXMLDOC01-appb-M000008
ただし、δτは0<δτ<1であり、現時点tから近い時刻t+τの誤差ほど大きく評価するように設定するための重みパラメータであり、E[・]は期待値計算を表す。
 (ii)また、基底関数の予測誤差を次式により求める。
Figure JPOXMLDOC01-appb-M000009
 (iii)また、正則化項として、ニューラルネットワークの重みに対する正則化項Ω1を導入する。なお、Ω1=||wenc (k)||2 2+||wdec (k)||2 2である。
 (iv)また、状態に構造を導入する。本実施形態では滑らかさΩ2=E[||xt+1-xt||2 2]と非ガウス性Ω3=E[log cosh(xt)]を導入する。ただし、cosh(・)は双曲線関数を表す。
 (v)以上の項を重みづけした目的関数J(Θ)=aJ1+bJ2+p1Ω1+p2Ω2+p3Ω3の値を求める。ただし、a,b,p1,p2,p3は、それぞれJ1,J2123をどの程度重視するかを決定するためのパラメータであり、実験結果やシミュレーション結果等を用いて適宜設定する。
<パラメータ更新部140>
 パラメータ更新部140は、目的関数J(Θ)を受け取り、各パラメータwenc (k),wdec (k),K(k),B(k)を更新する(S140)。例えば、Back propagationを用いて各パラメータに対する勾配ΔΘJを計算し、各パラメータwenc (k),wdec (k),K(k),B(k)を更新する(Θ(k+1)(k)ΘJ)。
 所定の条件(例えば、所定の回数のループを終えるか、目的関数が変化しなくなる等)を満たさない場合には(S141のnoの場合)、更新したパラメータwenc (k+1),wdec (k+1),K(k+1),B(k+1)を推定部120に、正則化項Ω1算出用に更新したパラメータwenc (k+1),wdec (k+1)を目的関数計算部130に出力し、k←k+1とし、S120~S140を繰り返す。
 所定の条件を満たす場合には(S141のyesの場合)、パラメータの更新を打ち切り、モデルの学習を終える。最新の各パラメータwenc (k),wdec (k),K(k),B(k)を学習結果であるパラメータ(wenc,wdec,K,B)として、推定装置200に出力する。
(推定段階)
 図7は推定装置200の機能ブロック図を、図8はその処理フローの例を示す。推定装置200は、推定部220を含む。
 なお、推定装置200は、推定、予測に先立ち、学習装置100から受け取ったパラメータ(wenc,wdec,K,B)を推定部220に設定する。
 (アルゴリズム2)
 図9のアルゴリズム2を実行する場合、推定装置200は、観測量ytを入力とし、観測量ytに対応する状態を推定し、yt以降の観測量の系列データを予測し、推定値xt、予測した系列データ{^yτ (t)}を出力する。図9のアルゴリズム2では、推定部220に適当な画像データに基づくデータを観測量ytとして、Τステップ先の画像データまで予測することができる。例えば、観測量の系列データyt,yt+1,…,yt+Nを入力とし、推定値の系列データxt,xt+1,…,xt+Nと、予測したN個の系列データ{^yτ (t)},{^yτ (t+1)},…,{^yτ (t+N)}を出力してもよい。
<推定部220>
 推定部220は、観測量ytを入力とし、観測量ytに対して所定の処理を行うことで状態を推定する(S220)。本実施形態では、所定の処理は、(1)基底関数の値の推定(推定値zt)、(2)状態の推定(推定値xt)である。さらに、推定部220は、(3)再構成した基底関数の値の推定(推定値^zt)、(4)基底関数の予測(予測値^zτ (t))、(5)観測量の予測(予測値^yτ (t))を行い(S220)、推定値xt、予測値の系列データ{^yτ (t)}を出力する。
 (1)まず、推定部220は、展開係数Bを用いて基底関数の値ztを推定する。すなわち、zt=B+(yt)である。
 (2)次に、式(9)のニューラルネットワークを用いて、状態の推定をxt-1(zt;wenc)として行う。
 (3)更に、式(9)のニューラルネットワークを用いて、再構成された基底関数の値の推定を^zt=Φ(xt;wdec)として行う。
 (4)次にτ=0,…,Τとして、基底関数の値の線形予測を行い基底関数の値の予測値^zτ (t)=Kτ^ztを得る。
 (5)予測値^zτ (t)をもとに、観測量の予測値^yτ (t) = B^zτ (t)を得る。
 なお、上述の(3)~(5)の処理は、状態から観測量を得る処理であり、上述の(1),(2)の処理の逆処理と言える。
 図10は、実際に画像データに基づくデータの系列データを入力としてパラメータを学習し、系列データの生成を行なった例を示す。
 図10の上段は実際の画像データに基づくデータの系列データ(学習用の観測量の系列データ)である。一方で下段は、上段左端"Input"として与えられた画像データをアルゴリズム2のytとして入力し、τ=1,…,10だけ生成した系列データ(予測した系列データ)である。
(アルゴリズム3)
 図11のアルゴリズム3を実行する場合、推定装置200は、状態xtを入力とし、状態xtに対応する観測量を予測し、予測した系列データ{^yτ (t)}を出力する。図11のアルゴリズム3では、推定部220に適当な状態xtを与え、Τステップ先の画像まで予測することができる。
 推定部220は、ある状態xtを入力とし、(1)再構成した基底関数の値の推定(推定値^zt)、(2)基底関数の予測(予測値^zτ (t))、(3)観測量の予測(予測値^yτ (t))を行い(S220)、予測値の系列データ{^yτ (t)}を出力する。
 (1)式(9)のニューラルネットワークを用いて、再構成された基底関数の値の推定を^zt=Φ(xt;wdec)として行う。
 (2)次にτ=0,…,Τとして、基底関数の値の線形予測を行い、基底関数の値の予測値^zτ (t)=Kτ^ztを得る。
 (3)予測値^zτ (t)をもとに、観測量の予測値^yτ (t) = B^zτ (t)を得る。
<効果>
 学習段階では、観測量だけから観測過程・時間発展・状態を学習することができる。
 推定段階では、観測量だけから学習した観測過程・時間発展・状態(学習したモデル)を用いて、観測量から状態を推定することができる。また、推定した状態や与えられた状態から観測量を予測することができる。すなわち、現在の観測量から状態を推定し、時間発展をシミュレートし、その状態を観測することで、系列データを予測できる。また、観測量や状態を与えることで、人工的にデータ(状態、観測量)を生成することができる。
 センサなどで観測される系列データから状態を推定することができ、観測量の分析等に用いることができる。また、視覚的に把握しずらい(例えば次元数が多い)系列データから、(例えば次元数が少ない)状態を推定し、推定した状態を提示することで観測量を視覚的に把握しやすいものに変換する(可視化)ことができる。
 さらに予測した値と実際の観測量との距離を適切に定義することで、系列データの異常検知へと応用することも可能である。
<変形例>
 本実施形態では、観測量が画像データに基づくデータの場合について説明したが、他のデータであってもよい。例えば、音響データに基づくデータ、振動データに基づくデータ、音響データに基づくデータと振動データに基づくデータとの組合せなどが考えられる。以下に、より詳しく説明する。
(音響データ)
 観測量を音響データに基づくデータとした場合、マイクから取れた音圧の波形データまたはその特徴量(STFT やlog-Mel power など)を入力ytとする。なお、マイクロホンアレイで収音する場合、音圧の波形データまたはその特徴量を素子数分だけ結合したベクトルを入力ytとする。
 この場合、状態は、観測量ytに対応する抽象的な状態を表し、この抽象的な状態が物理的な意味を持つ値(例えば、観測量に比べ低次元の値)となり得る。例えば、状態は、音源の波形に類する量、音源位置に類する量(音源が動く場合)、位相に類する量(周期的な音の場合)を表す。
(振動データ)
 観測量を振動データに基づくデータとした場合、振動ピックアップから取れた加速度の波形データまたはその特徴量(STFT やlog-Melpower など)を入力ytとする。複数の振動ピックアップでの収録する場合、波形データや特徴量を素子数分だけ結合したベクトルを入力とする。
 この場合、状態は、観測量ytに対応する抽象的な状態を表し、この抽象的な状態が物理的な意味を持つ値(例えば、観測量に比べ低次元の値)となり得る。例えば、状態は、振動のモードに類する量、位相に類する量(準周期的に動く物体の振動の場合)などを表す。
(音響・振動データ)
 観測量を上述の音響データに基づくデータと振動データに基づくデータとの組合せとした場合、振動ピックアップから取れた加速度の波形データまたはその特徴量とマイクから取れた音圧の波形データまたはその特徴量を素子数分だけ結合したベクトルを入力ytとする。
 この場合、状態xtは、観測量ytに対応する抽象的な状態を表し、この抽象的な状態が物理的な意味を持つ値(例えば、観測量に比べ低次元の値)となり得る。例えば、状態は、音源(振動源)の波形に類する量、振動のモードに類する量などを表す。
<第二実施形態>
 第一実施形態と異なる部分を中心に説明する。
 本実施形態では、本発明を異常検知に適用する。
 図12は本実施形態に係る異常検知装置の機能ブロック図をを示す。
 まず、第一実施形態で説明した方法により、学習装置100は、学習用の観測量の系列データ{yt (L)}を入力とし、パラメータ(wenc,wdec,K,B)を学習し、出力する。
 第一実施形態で説明した方法により、推定装置200は、推定、予測に先立ち、学習装置100から受け取ったパラメータ(wenc,wdec,K,B)を推定部220に設定する。
<異常検知装置300>
 異常検知装置300は、誤差ベクトル計算部310と平均分散共分散行列計算部320と検知部330とを含む(図12参照)。
 異常検知装置300は、異常検知処理と、異常検知処理の前に予めパラメータを求める前処理とを実行する。まず、前処理について説明する。
<前処理>
 まず、正常時の観測量のデータセットDnormal={y1,y2,…,yT_1}を用意する。ただし、下付き添え字A_BはABを意味する。ここから,系列の長さLの部分系列Dt={yt+1,…,yt+L}、t=1,2,…,T1-Lを取り出す。
 次に、第一実施形態で説明した方法により、推定装置200は、観測量ytを入力とし、yt以降の観測量の系列データを予測し、長さLの予測した系列データPt={^y(t) 1,…,^y(t) L}を出力する。
 図13は前処理の処理フローの例を示す。
 異常検知処理に先立ち、異常検知装置300は、正常時の観測量のデータセットDnormalから得られるT1-L個の部分系列DtとT1-L個の予測した系列データPtとを入力とし、後述する平均μと分散共分散行列Sとを計算しておく。
 誤差ベクトル計算部310は、T1-L個の部分系列Dt={yt+1,…,yt+L}とT1-L個の系列データPt={^y(t) 1,…,^y(t) L}とを入力とし、部分系列Dt={yt+1,…,yt+L}と予測した系列データPt={^y(t) 1,…,^y(t) L}の各要素で誤差を計算し(S310-A)、誤差ベクトルet=[e(t) 1…e(t) L]Tを出力する。なお、e(t) i=yt+i-^y(t) i、i=1,…,Lである。観測量ytを入力としたとき(ここでは、観測量ytから予測した系列データPt={^y(t) 1,…,^y(t) L}と系列データPtに対応する部分系列Dt={yt+1,…,yt+L}を入力としたとき)の誤差ベクトルをet=[e(t) 1…e(t) L]Tと定める。このとき、誤差ベクトルetは観測量ytの次元がDのとき(D×L)の長さのベクトルである。上記の誤差ベクトルの計算をT1-L個の部分系列Dt及び系列データPtすべてに対して計算する。
 平均分散共分散行列計算部320は、T1-L個の誤差ベクトルet=[e(t) 1…e(t) L]Tを入力とし、平均μと分散共分散行列Sを次式により計算し(S320)、検知部330に出力する。
Figure JPOXMLDOC01-appb-M000010
Figure JPOXMLDOC01-appb-M000011
<異常検知処理>
 異常検知の対象となる観測量のデータセットDnew={y'1,y'2,…,yT_2}が得られたとき、前処理のときと同様に、系列の長さLの部分系列D't'={yt'+1,…,yt'+L}、t'=1,2,…,T2-Lを取り出す。
 次に、第一実施形態で説明した方法により、推定装置200は、観測量y't'を入力とし、y't'以降の観測量の系列データを予測し、長さLの予測した系列データP't'={^y'(t') 1,…,^y'(t') L}を出力する。
 図14は異常検知処理の処理フローの例を示す。
 異常検知処理時には、異常検知装置300は、異常検知の対象となる観測量のデータセットDnewから得られるT2-L個の部分系列D't'とT2-L個の予測した系列データP't'={^y'(t') 1,…,^y'(t') L}とを入力とし、部分系列D't'と系列データP't'に対する検知結果を出力する。なお、系列データP't'は観測量y't'から予測したものであり、部分系列D't'は系列データP't'に対応するものなので、部分系列D't'と系列データP't'に対する検知結果は、観測量y't'に対する検知結果といってもよい。
 誤差ベクトル計算部310は、T2-L個の部分系列D't'={y't'+1,…,yt'+L}とT2-L個の系列データPt'={^y'(t') 1,…,^y'(t') L}とを入力とし、部分系列D't'={y't'+1,…,yt'+L}と予測した系列データPt'={^y'(t') 1,…,^y'(t') L}の各要素で誤差を計算し(S310-B)、誤差ベクトルe't=[e'(t') 1…e'(t') L]Tを出力する。なお、e'(t') i=y't'+i-^y'(t') i、i=1,…,Lである。
 検知部330は、異常検知に先立ち平均μと分散共分散行列Sを受け取っておく。
 検知部330は、T2-L個の誤差ベクトルe't=[e'(t') 1…e'(t') L]Tを入力とし、平均μと分散共分散行列Sと誤差ベクトルe't'とを用いて、各時刻t'=1,…,T2-Lにおける以下の異常度合いLt'を計算する(S330-1)。
Lt'=logdet(S)+(e't'-μ)TS-1(e't'-μ)T
この異常度合いLt'は誤差ベクトルを正規分布でフィッティングしたときの負の対数尤度に比例する量である。
 次に、検知部330は、異常度合いLt'に対応する値と閾値pとの大小関係に基づき、異常か否かを判定し、異常を検知し(S330-2)、検知結果を出力する。例えば、異常度合いLt'>pのとき異常と判定し、Lt'≦pのとき異常ではないと判定する。閾値pは、実験やシミュレーション等により予め適切にさだめておく。
 以上の構成により、本発明を異常検知に適用することができる。
<第三実施形態>
 第一実施形態と異なる部分を中心に説明する。
 第一実施形態では、状態xtから観測量の予測(予測値^yτ (t))を出力する関数に逆関数が存在する場合を検討している。しかし、例えば、状態xtが観測量の予測(予測値^yτ (t))より低次元な場合、観測量ytから状態xtを推定する逆関数が存在するかは定かではない。
 また、基底関数の値ztの次元より観測量ytの次元が少ない場合、観測量ytから基底関数の値ztを定める問題は劣決定問題であり、適切に正則化項を導入する必要がある。
 そこで、本実施形態では、生成モデルを考えることで、逆関数を考えることなく観測量から状態を推定する。図15に提案するモデルを示す。図15の右(破線部分)がKoopmanモード分解の数値計算手法である拡張動的モード分解(EDMD)部分を表す。
 まず、観測量ytとyt+1からニューラルネットワークを用いて平均と分散パラメータを推定する((σtt)←~Ψ(yt,yt+1))。この処理が変分オートエンコーダのエンコードに相当し、この処理を実現する部分をエンコーダと呼ぶ。
 次に、得られた平均の推定値μtと分散パラメータの推定値σtに従う多変量正規分布から潜在変数(状態xt)をサンプリングする。なお、図中のetは平均0,分散1の正規分布から得られる乱数である。
 以降の処理は第一実施形態と同様である。以下に概略を説明する。
 (3)再構成した基底関数の値の推定(推定値^zt←Ψ(xt))、(4)基底関数の予測(予測値^zτ (t)=Kτ^zt)、(5)観測量の予測(予測値^yτ (t) = B^zτ (t)))を行い、推定値xt、予測値の系列データ{^yτ (t)}を出力する。状態xtから観測量の予測値^yτ (t)を得る処理が変分オートエンコーダのデコードに相当し、この処理を実現する部分をデコーダと呼ぶ。
 通常の変分オートエンコーダは、ニューラルネットワークの重みパラメータθを次の目的関数を最小化するように学習する。
Figure JPOXMLDOC01-appb-M000012
ただし、KL[A|B]は分布A、BのKullback-Leibler divergenceを表し、N(μ,σ)は平均μ、分散σの分布を表し、μθ(yt)、Σθ(yt)はそれぞれ重みパラメータθのニューラルネットワークに観測量yt+τを与えて推定した平均、分散パラメータを表す。
 一方、本実施形態の変分オートエンコーダでは展開係数B、パラメータKも重みパラメータθと同時に学習し、最適化する。すなわち、
Figure JPOXMLDOC01-appb-M000013
を最小化する。ただし、^yτ (t) = BKτ^ztであり、μθ(yt+τ,yt+τ+1)、Σθ(yt+τ,yt+τ+1)はそれぞれ重みパラメータθのニューラルネットワークに観測量yt+τ,yt+τ+1を与えて推定した平均、分散パラメータを表す。第一実施形態と本実施形態との差分としては次の二点が挙げられる。
 第一実施形態は逆関数を仮定していたが、本実施形態は確率的な生成モデルを仮定している。
 第一実施形態では再構成誤差を目的関数として最小化していたが、本実施形態は再構成誤差に分布の近さを測るKullback-Leibler divergence 項が追加されている。
 以下、本実施形態を実現する推定システムについて説明する。
 本実施形態に係る推定システムは、学習装置100と推定装置200とを含む(図3参照)。
 学習装置100により学習段階を実行し、推定装置200により推定段階を実行する。まず、学習段階について説明する。
(学習段階)
 図16は学習装置100の機能ブロック図を、図5はその処理フローの例を示す。学習装置100は、初期化部110、推定部120、目的関数計算部130、パラメータ更新部140とを含む。
 学習装置100は、学習用の観測量の系列データ{yt}を入力とし、学習結果であるパラメータ(wenc,wdec,K,B)を出力する。wencはエンコーダで用いられるパラメータを、wdecはデコーダで用いられるパラメータ(基底関数Ψのパラメータ)を、Kは時間発展を表すパラメータ、Bは展開係数を表す。
 学習段階は以下のように行われる。
 初期化部110およびパラメータ更新部140の処理内容は第一実施形態と同様なので、説明を省略する。ただし、パラメータ更新部140では、目的関数J(Θ(k))に代えて、目的関数L(B(k),K(k)(k))を受け取り、処理を行う。
<推定部120>
 推定部120は、学習用の観測量の系列データ{yt}と初期化または更新したパラメータwenc (k),wdec (k),K(k),B(k)を入力とし、(1)状態の平均と分散パラメータの推定(推定値σtt)、(2)状態の推定(推定値xt)、(3)再構成した基底関数の値の推定(推定値^zt)、(4)基底関数の予測(予測値^zτ (t))、(5)観測量の予測(予測値^yτ (t))を行い(S120)、予測値^yτ (t)を出力する。(3)~(5)は第一実施形態と同様なので、(1),(2)について説明する。
 (1)まず、推定部120は、学習用の観測量の系列データ{yt}と現在のパラメータwenc (k)とからニューラルネットワークを用いて、状態の平均と分散パラメータとを推定する。すなわち、(σtt)=~Ψ(yt;wenc (k))である。なお、本実施形態では、ニューラルネットワークを用いるため、入力を2つ以上の学習用の観測量ytとしてもよい。例えば、(σtt)=~Ψ(yt,yt+1;wenc (k))として、2つの学習用の観測量yt,yt+1から状態の平均と分散パラメータとを推定してもよい。このように、2つ以上の学習用の観測量を用いて状態の平均と分散パラメータとを推定することで、状態の特徴をより捉えやすくなると考えられる。
 (2)次に、(σtt)に従う多変量正規分布から状態xtをサンプリングする。
<目的関数計算部130>
 目的関数計算部130は、学習用の観測量の系列データ{yt+τ}と、予測値の系列データ{^yτ (t)}、パラメータwenc (k)を入力とし、目的関数の値L(B(k),K(k)(k))を計算し(S130)、出力する。なお、θ(k)はパラメータwenc (k),wdec (k)の集合である。
Figure JPOXMLDOC01-appb-M000014
ただし、^yτ (t) = B(k)K(k)τ^ztである。なお、ここでは、K(k)を同時に更新するために、すくなくとも2つ以上の時系列の観測量yτとyτ+1とを必要とし、Τは1以上の整数の何れかとする。c,dは、各項をどの程度重視するかを決定するためのパラメータであり、実験結果やシミュレーション結果等を用いて適宜設定する。
(推定段階)
 図7は推定装置200の機能ブロック図を、図8はその処理フローの例を示す。推定装置200は、推定部220を含む。
 なお、推定装置200は、推定、予測に先立ち、学習装置100から受け取ったパラメータ(wenc,wdec,K,B)を推定部220に設定する。
 (観測量から状態を推定し、観測量を予測)
 観測量から状態を推定し、観測量を予測する場合(第一実施形態のアルゴリズム2の場合)、推定装置200は、観測量ytを入力とし、観測量ytに対応する状態を推定し、yt以降の観測量の系列データを予測し、推定値xt、予測した系列データ{^yτ (t)}を出力する。例えば、観測量の系列データyt,yt+1,…,yt+Nを入力とし、推定値の系列データxt,xt+1,…,xt+Nと、予測したN個の系列データ{^yτ (t)},{^yτ (t+1)},…,{^yτ (t+N)}を出力してもよい。
<推定部220>
 推定部220は、観測量ytを入力とし、観測量ytに対して所定の処理を行うことで状態を推定する(S220)。本実施形態では、所定の処理は、状態の平均と分散パラメータの推定(推定値σtt)、(2)状態の推定(推定値xt)である。さらに、推定部220は、(3)再構成した基底関数の値の推定(推定値^zt)、(4)基底関数の予測(予測値^zτ (t))、(5)観測量の予測(予測値^yτ (t))を行い(S220)、推定値xt、予測値の系列データ{^yτ (t)}を出力する。(3)~(5)は第一実施形態と同様なので、(1),(2)について説明する。
 (1)まず、推定部220は、観測量ytとパラメータwencとからニューラルネットワークを用いて、状態の平均と分散パラメータとを推定する。すなわち、(σtt)=~Ψ(yt;wenc)である。なお、本実施形態では、入力を2つ以上の観測量ytとしてもよく、学習装置100で学習したニューラルネットワークに対応する個数の観測量ytを入力とする。
 (2)次に、(σtt)に従う多変量正規分布から状態xtをサンプリングする。
(観測量から観測量を予測)
 観測量から観測量を予測する場合(第一実施形態のアルゴリズム3の場合)、第一実施形態と同様である。
<効果>
 第一実施形態と同様の効果を得ることができる。生成モデルを考えることで、逆関数を考えることなく状態を推定する。なお、本実施形態と第一実施形態の変形例や第二実施形態を組合せてもよい。
<その他>
 第一実施形態および第三実施形態の推定部220を図17の機能ブロック図で表現することもできる。図18は推定部220の処理フローの例を示す。
 推定部220は、状態推定部221と、観測量推定部222と、未来観測量推定部223とを有する。さらに観測量推定部222は、中間値推定部222Aと、中間観測値推定部222Bとを含む。状態推定部221では、第一実施形態と第三実施形態とにおける処理内容が異なる。観測量推定部222および未来観測量推定部223では、第一実施形態と第三実施形態とにおける処理内容が同じである。
(状態推定部221)
 状態推定部221は、オートエンコーダのエンコーダを用いて、観測量から状態を推定し(S221)、出力する。
 第一実施形態では、状態推定部221は、推定処理に先立ちニューラルネットワークのパラメータwenc,展開係数Bを受け取る。状態推定部221は、観測量ytを入力とし、展開係数Bを用いて基底関数の値ztを推定する。すなわち、zt=B+(yt)である。さらに、式(9)のニューラルネットワークを用いて、状態の推定をxt-1(zt;wenc)として行う。
 第三実施形態では、状態推定部221は、推定処理に先立ちニューラルネットワークのパラメータwencを受け取る。状態推定部221は、1つ以上の観測量ytを入力とし、1つ以上の観測量ytとパラメータwencとからニューラルネットワークを用いて、状態の平均と分散パラメータとを推定する。例えば、2つの観測量yt、yt+1から(σtt)=~Ψ(yt,yt+1;wenc)として、状態の平均と分散パラメータとを推定する。次に、状態推定部221は、(σtt)に従う多変量正規分布からサンプリングすることで状態xtを推定する。
(観測量推定部222)
 観測量推定部222は、オートエンコーダのデコーダとを用いて、状態から観測量を推定し(S222)、出力する。
 なお、第一実施形態の場合、状態推定部221が行う処理を第一の関数で、観測量推定部222が行う処理を第二の関数で定義され、第一の関数は第二の関数の逆関数である。
 (中間値推定部222A)
 中間値推定部222Aは、推定処理に先立ちニューラルネットワークのパラメータwdecを受け取る。
 中間値推定部222Aは、状態xtを入力とし、式(9)のニューラルネットワークを用いて、再構成された基底関数の値の推定を^zt=Φ(xt;wdec)として行い(S222A)、推定値^ztを出力する。なお、再構成された基底関数の値の推定値を中間値ともいう。
 (中間観測値推定部222B)
 中間観測値推定部222Bは、推定処理に先立ち展開係数Bを受け取る。
 中間観測値推定部222Bは、推定値^ztを入力とし、推定値^ztから、観測値を推定し(S222B)、推定値^ytを出力する。以下の式において、τ=0に対応する。
^zτ (t)=Kτ^zt
^yτ (t) = B^zτ (t)
つまり、^yt  = B^ztである。
(未来観測量推定部223)
 未来観測量推定部223は、推定処理に先立ちK、Bを受け取る。
 未来観測量推定部223は、時間展開を表すパラメータKを用いて、観測量が時間推移により変動した値である未来観測量を推定し(S223)、出力する。
 まず、未来観測量推定部223は、パラメータKを用いて、推定値^ztが時間推移により変動した値である未来中間値^zτ (t)を得る。つまり、^zτ (t)=Kτ^ztである。ただし、τ=1,…,Τである。
 さらに、未来観測量推定部223は、展開係数Bを用いて、未来中間値^zτ (t)から未来観測量^yτ (t)を推定する。つまり、^yτ (t) = B^zτ (t)である。
 なお、第一実施形態および第三実施形態の学習装置の推定部120についても同様に表現することができる。ただし、学習用の観測量と、学習対象のパラメータを用いて処理を行う。
<ハードウェア構成>
 学習装置および推定装置は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。学習装置および推定装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。学習装置および推定装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。学習装置および推定装置の各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。学習装置および推定装置が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。ただし、各記憶部は、必ずしも学習装置および推定装置がその内部に備える必要はなく、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置により構成し、学習装置および推定装置の外部に備える構成としてもよい。
<その他の変形例>
 本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
<プログラム及び記録媒体>
 また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
 この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
 また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
 このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
 また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

Claims (7)

  1.  エンコーダを用いて、観測量から状態を推定する状態推定部と、
     前記デコーダとを用いて、状態から観測量を推定する観測量推定部と、
     時間展開を表すパラメータKを用いて、前記観測量が時間推移により変動した値である未来観測量を推定する未来観測量推定部と、を有し、
     前記エンコーダのパラメータと、前記デコーダのパラメータと、前記パラメータKとは、同時に最適化されたものである、
     推定装置。
  2.  請求項1の推定装置であって、
     前記状態推定部が行う処理は第一の関数で、前記観測量推定部が行う処理は第二の関数で定義され、
     前記第一の関数は前記第二の関数の逆関数である、
     推定装置。
  3.  請求項1の推定装置であって、
     前記エンコーダのパラメータと、前記デコーダのパラメータと、前記パラメータKとは、前記状態推定部をエンコーダとし、前記観測量推定部をデコータとする変分オートエンコーダにより最適化されたものであり、
     前記観測量は時系列観測量である、
     推定装置。
  4.  請求項1から請求項3の何れかの推定装置であって、
     前記観測量推定部は、
     前記状態から中間値を推定する中間値推定部と、
     推定した前記中間値から、前記観測値を推定する中間観測値推定部と、を含み、
     前記未来観測量推定部は、前記パラメータKを用いて得られる、前記中間値が時間推移により変動した値である未来中間値から前記未来観測量を推定する、
     推定装置。
  5.  請求項2の推定装置で用いるパラメータを学習する学習装置であって、
     前記第二の関数は前記オートエンコーダのデコーダのパラメータである、基底関数のパラメータを用い、前記第一の関数は前記オートエンコーダのエンコーダのパラメータである、前記基底関数の逆関数のパラメータを用い、
     学習用の観測量の系列データと、前記基底関数のパラメータ、前記逆関数のパラメータ、前記パラメータK、展開係数とを用いて、(1)基底関数の値の推定、(2)状態の推定、(3)再構成した基底関数の値の推定、(4)基底関数の予測、(5)観測量の予測を行う推定部と、
     前記学習用の観測量の系列データと、基底関数の推定値の系列データ、状態の推定値の系列データ、再構成した基底関数の推定値の系列データ、基底関数の予測値の系列データ、観測量の予測値の系列データを用いて、(i)観測量の予測誤差、(ii)基底関数の予測誤差、(iii)前記基底関数のパラメータ、前記逆関数のパラメータに基づくニューラルネットワークの重みに対する正則化項、(iv)前記状態の構造を求め、求めた値から目的関数の値を求める目的関数計算部と、
     前記目的関数に基づき、前記基底関数のパラメータ、前記逆関数のパラメータ、前記パラメータK、前記展開係数とを更新する更新部とを含み、
     前記状態は非線形で時間推移するものであり、
     前記観測量は状態の時間推移に伴い非線形で時間推移する観測処理を行うことで得ることができるものである、
     学習装置。
  6.  エンコーダを用いて、観測量から状態を推定する状態推定ステップと、
     前記デコーダとを用いて、状態から観測量を推定する観測量推定ステップと、
     時間展開を表すパラメータKを用いて、前記観測量が時間推移により変動した値である未来観測量を推定する未来観測量推定ステップと、を有し、
     前記エンコーダのパラメータと、前記デコーダのパラメータと、前記パラメータKとは、同時に最適化されたものである、
     推定方法。
  7.  請求項1から請求項4の何れかの推定装置、または、請求項5の学習装置としてコンピュータを機能させるためのプログラム。
PCT/JP2019/034216 2019-01-28 2019-08-30 推定装置、学習装置、それらの方法、およびプログラム Ceased WO2020158032A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/425,684 US20240028872A1 (en) 2019-01-28 2019-08-30 Estimation apparatus, learning apparatus, methods and programs for the same
JP2020569354A JP7163977B2 (ja) 2019-01-28 2019-08-30 推定装置、学習装置、それらの方法、およびプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019011981 2019-01-28
JP2019-011981 2019-01-28

Publications (1)

Publication Number Publication Date
WO2020158032A1 true WO2020158032A1 (ja) 2020-08-06

Family

ID=71840041

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/034216 Ceased WO2020158032A1 (ja) 2019-01-28 2019-08-30 推定装置、学習装置、それらの方法、およびプログラム

Country Status (3)

Country Link
US (1) US20240028872A1 (ja)
JP (1) JP7163977B2 (ja)
WO (1) WO2020158032A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022070386A (ja) * 2020-10-27 2022-05-13 日本電信電話株式会社 学習方法、系列解析方法、学習装置、系列解析装置、及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018052875A1 (en) * 2016-09-15 2018-03-22 Google Llc Image depth prediction neural networks
JP2019502212A (ja) * 2016-01-14 2019-01-24 株式会社Preferred Networks 時系列データ適合およびセンサ融合のシステム、方法、および装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8095210B2 (en) * 2007-01-19 2012-01-10 California Institute Of Technology Prosthetic devices and methods and systems related thereto
US10572830B2 (en) * 2017-04-24 2020-02-25 Virginia Tech Intellectual Properties, Inc. Learning and deploying compression of radio signals
US11334807B1 (en) * 2017-06-23 2022-05-17 Virginia Tech Intellectual Properties, Inc. Learning approximate estimation networks for communication channel state information
US20190228110A1 (en) * 2018-01-19 2019-07-25 General Electric Company System and method for abstracting characteristics of cyber-physical systems
US12033080B2 (en) * 2018-06-15 2024-07-09 Google Llc Sparse recovery autoencoder
US20200082272A1 (en) * 2018-09-11 2020-03-12 International Business Machines Corporation Enhancing Data Privacy in Remote Deep Learning Services
WO2020064990A1 (en) * 2018-09-27 2020-04-02 Deepmind Technologies Limited Committed information rate variational autoencoders
EP3667439A1 (en) * 2018-12-13 2020-06-17 ABB Schweiz AG Predictions for a process in an industrial plant
US11172195B2 (en) * 2019-01-26 2021-11-09 Qualcomm Incorporated Excluding intra coded reference samples from local illumination compensation parameter derivation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019502212A (ja) * 2016-01-14 2019-01-24 株式会社Preferred Networks 時系列データ適合およびセンサ融合のシステム、方法、および装置
WO2018052875A1 (en) * 2016-09-15 2018-03-22 Google Llc Image depth prediction neural networks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SHIN ISHIGURO; HARUKA KIKUCHI; YUSUKE FUKAZAWA: "Taxi Demand Forecast with Stacked denoising Auto encoders Using Real-time Population Data.", TRANSACTIONS OF THE INFORMATION PROCESSING SOCIETY OF JAPAN, vol. 60, no. 1, 15 January 2019 (2019-01-15), JP, pages 118 - 128, XP009522772, ISSN: 1882-7764 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022070386A (ja) * 2020-10-27 2022-05-13 日本電信電話株式会社 学習方法、系列解析方法、学習装置、系列解析装置、及びプログラム
JP7542821B2 (ja) 2020-10-27 2024-09-02 日本電信電話株式会社 学習方法、系列解析方法、学習装置、系列解析装置、及びプログラム

Also Published As

Publication number Publication date
JPWO2020158032A1 (ja) 2021-09-30
JP7163977B2 (ja) 2022-11-01
US20240028872A1 (en) 2024-01-25

Similar Documents

Publication Publication Date Title
CN113239022B (zh) 医疗诊断缺失数据补全方法及补全装置、电子设备、介质
Tang et al. Online weighted LS-SVM for hysteretic structural system identification
US20210089953A1 (en) Quantum bit prediction
Chen et al. Genetic algorithm with an improved fitness function for (N) ARX modelling
JP7542821B2 (ja) 学習方法、系列解析方法、学習装置、系列解析装置、及びプログラム
JP2022523484A (ja) 観測値の尤度を使用して環境を探索するためのエージェントを制御すること
CN111160459A (zh) 超参数的优化装置和方法
JPWO2019215904A1 (ja) 予測モデル作成装置、予測モデル作成方法、および予測モデル作成プログラム
Li et al. Structural damage quantification using long short-term memory (LSTM) auto-encoder and impulse response functions
JP7490185B2 (ja) 解析対象の3次元再構成装置、3次元再構成方法及び3次元再構成プログラム
CN113537614A (zh) 电网工程造价预测模型的构建方法、系统、设备及介质
JP2010092247A (ja) 制御器、制御方法及び制御プログラム
JP7163977B2 (ja) 推定装置、学習装置、それらの方法、およびプログラム
JP2019095894A (ja) 推定装置、学習装置、学習済みモデル、推定方法、学習方法、及びプログラム
JP7047665B2 (ja) 学習装置、学習方法及び学習プログラム
CN110309869A (zh) 面向未知场景的稳定识别方法及装置
CN120562316A (zh) 基于平衡优化的多模态轴承剩余寿命预测方法与系统
CN118839564B (zh) 基于少量测点加速度数据和生成对抗网络的结构全自由度振型识别方法
WO2018198298A1 (ja) パラメータ推定装置、パラメータ推定方法、及びコンピュータ読み取り可能な記録媒体
Li et al. Pygpphs: A python package for Bayesian modeling of port-Hamiltonian systems
Pastori et al. Quantum neural networks for cloud cover parameterizations in climate models
JP7672844B2 (ja) 性能予測装置、性能予測方法及び性能予測プログラム
JP2021082014A (ja) 推定装置、訓練装置、推定方法、訓練方法、プログラム及び非一時的コンピュータ可読媒体
Wilson et al. Hierarchical model verification and validation for structural health monitoring using dynamic substructuring
JP7331938B2 (ja) 学習装置、推定装置、学習方法及び学習プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19913132

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020569354

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 17425684

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19913132

Country of ref document: EP

Kind code of ref document: A1