WO2021025075A1 - 訓練装置、推定装置、訓練方法、推定方法、プログラム及びコンピュータ読み取り可能な非一時的記憶媒体 - Google Patents

訓練装置、推定装置、訓練方法、推定方法、プログラム及びコンピュータ読み取り可能な非一時的記憶媒体 Download PDF

Info

Publication number
WO2021025075A1
WO2021025075A1 PCT/JP2020/030065 JP2020030065W WO2021025075A1 WO 2021025075 A1 WO2021025075 A1 WO 2021025075A1 JP 2020030065 W JP2020030065 W JP 2020030065W WO 2021025075 A1 WO2021025075 A1 WO 2021025075A1
Authority
WO
WIPO (PCT)
Prior art keywords
network
input
matrix
mask
processors
Prior art date
Application number
PCT/JP2020/030065
Other languages
English (en)
French (fr)
Inventor
真史 吉川
政裕 酒井
Original Assignee
株式会社 Preferred Networks
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 株式会社 Preferred Networks filed Critical 株式会社 Preferred Networks
Priority to JP2021537354A priority Critical patent/JPWO2021025075A1/ja
Publication of WO2021025075A1 publication Critical patent/WO2021025075A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Definitions

  • This disclosure relates to training equipment, estimation equipment, training methods, estimation methods and programs.
  • Physics simulators are widely used to reproduce events such as various accidents in a computer. These physics simulators reproduce physical phenomena by actually assuming the underlying physics law and performing iterative operations, but the amount of calculation is large, and for example, when used for training plant operators, the calculation time is long. Therefore, the training time of the operator becomes long. Moreover, in general, it is difficult to obtain the derivative of these events, and it is difficult to simulate them when there is external control.
  • the present disclosure provides a training device, an estimation device, a training method, an estimation method, a program, and a computer-readable non-temporary storage medium that realizes a highly accurate simulator by machine learning.
  • the estimator comprises one or more memories and one or more processors.
  • the one or more processors input a time-series input variable and a latent variable which is an output of the first network to the first network, extract a latent variable in the current step, and send the latent variable to the second network. It is configured to input a variable and estimate the state of the time series with respect to the input variable.
  • GRU block diagram The figure which shows the structure of the function of the estimation apparatus which concerns on one Embodiment.
  • the block diagram which shows the function of the estimation apparatus which concerns on one Embodiment.
  • the block diagram which shows the function of the training apparatus which concerns on one Embodiment.
  • the flowchart which shows the processing of the training apparatus which concerns on one Embodiment.
  • the block diagram which shows the function of the training apparatus which concerns on one Embodiment.
  • the flowchart which shows the processing of the training apparatus which concerns on one Embodiment.
  • the figure which shows an example of the reduction graph which concerns on one Embodiment.
  • the equipment related to the plant will be described as an example, but the present invention is not limited to this, and the same method can be applied to any object where an event occurs deterministically to some extent.
  • the present embodiment can be applied to, for example, electric circuits, water supply systems, automobiles, production equipment, robots, sensor networks, smart grids, ships, airplanes, industrial machinery, and various other fields.
  • the training target in this embodiment is a recurrent neural network (RNN) which is an autoregressive model.
  • RNN recurrent neural network
  • This training target is an example of a GRU (Gated Recurrent Unit) model, but is not limited to this, and can be applied to other configurations such as LSTM (Long Short Term Memory).
  • FIG. 1 is a block diagram of an autoregressive portion (GRU) of an autoregressive model in an unlimited embodiment.
  • the squared operation indicates the neural network layer
  • the circled operation indicates the pointwise operation
  • the arrow indicates the vector transfer
  • the rounded angle to h t .
  • those connected at an acute angle indicate a connection of vectors
  • those exiting from x t or h t-1 at an acute angle and at an acute angle indicate a copy of the vector.
  • the previous output data (hereinafter referred to as latent variable) h t-1 and the input variable x t at the current stage are input, and the latent variable h t of the current unit is generated.
  • the data output by the previous self is input to the network to generate a new output, and this output becomes the input of the next stage. In this way, data is input to the GRU in an autoregressive manner, and a new output is generated.
  • the value of each vector in the GRU can be calculated as follows.
  • W r , W z , and W are matrices that transform the data in the input variable space (input variable x) into the data in the latent variable space (latent variable h in the first network), and U r , U z , and U. Is a matrix that transforms the data in the latent variable space into the data in the latent variable space.
  • the subject of training is a matrix of parameters represented by W r , Ur , W z , U z , W, and U.
  • the outline of the training is the same as that of general machine learning, especially deep learning, so details are omitted. For example, it is performed by supervised backpropagation, but is not limited to this, and any method can be used as long as it is properly trained.
  • a network is configured based on this GRU, and a physics simulator using a deterministic autoregressive model and a random sparse matrix mask is implemented.
  • each parameter matrix is treated as a sparse matrix.
  • this mask will be referred to as a sparse matrix mask.
  • the sparse matrix mask has the same number of elements as the corresponding parameter matrix, each of which has a value of 0 or 1.
  • applying a mask refers to the process of taking the product of the parameter matrix and the corresponding sparse matrix mask for each element.
  • the sparse matrix mask may be designed based on the structure of the system of interest, for example, the structure of the plant.
  • the structure of the plant is fixed for each plant, and the connection relationship between each element can be understood. Therefore, a sparse matrix mask may be generated using this connection relationship and applied to each parameter matrix.
  • a sparse matrix mask may be generated by setting 1 to connect the components of the vector to which the directly connected elements are related and 0 to the other points.
  • a sparse matrix mask may be randomly generated in order to deterministically reproduce the physical phenomenon.
  • a sparse matrix mask may be generated using a binomial distribution.
  • a random number with a normal distribution in which the mean value and the variance are determined may be generated and binarized using a certain threshold value to generate a sparse matrix mask.
  • a sparse matrix mask may be generated based on another random number generator based on the Mersenne Twister or the like, which has higher randomness, regardless of the physical phenomenon.
  • the sparse matrix mask By applying the sparse matrix mask to the parameter matrix in this way, it is possible to limit which element of the preceding latent variable the latent variable obtained as a result of autoregressive is based on, and improve the generalization performance of autoregressive. It becomes possible to do.
  • the structure of the plant can be applied to the model.
  • the parameter matrix instead of applying a sparse matrix mask, the parameter matrix itself may be defined as a sparse matrix. That is, any parameter matrix may be used as long as it can be a sparse matrix.
  • FIG. 2 is a diagram showing a functional configuration of an estimation device (physical simulator) according to this embodiment. As shown in FIG. 2, the estimation device includes a first network, a second network, and a third network.
  • the input variable of the prediction device is, for example, time-series data (time-series input variable) x t including at least one of noise representing uncertain factors such as the behavior of the plant operator and the weather.
  • time-series data time-series input variable
  • x t time-series input variable
  • the behavior and noise data strings corresponding to times 1, 2, ..., t, t + 1, ..., T are input.
  • an action operated by a plant operator may interrupt the event as an input.
  • time t this is not limited to time, and may be a step for a system exhibiting deterministic behavior.
  • time series data is a sequence of actions
  • this may be, for example, a time series of how much the valve of the plant is opened, or the plant is controlled by PID control (Proportional-Integral-Differential Controller). If so, it may be the set value. In addition, it may be data controlled by the user, time-series data related to other actions such as a voltage value at each location.
  • PID control Proportional-Integral-Differential Controller
  • this may be environmental information such as temperature and atmospheric pressure. Further, for example, it may be data related to a lifeline, data such as where and how much resources are used, or a noise sequence related to the behavior of each device of the plant.
  • the noise sequence is not limited to these, and may be a noise sequence related to the plant.
  • the first network is a GRU (or other autoregressive neural network) in which a sparse matrix mask is applied to the above-mentioned parameter matrix. For example, let us focus on the state at time t.
  • the first network takes time t-1, that is, the output h t-1 from the immediately preceding first network and the input variable x t at time t as inputs.
  • the result h t output at time t is output to the second network and the first network at the next time.
  • the second network is, for example, a neural network comprising a total binding layer, the latent variable h t is the output of the first network is input, a network for outputting the state s t at time t. That is, the second network is a network that acquires an amount indicating the actual state of the plant from the deterministic feature amount of the state of the plant output from the first network.
  • the second network is provided with a fully connected layer, but the present invention is not limited to this, and any network that can appropriately convert features into states may be used.
  • the final output s is input as regression data, but in the present embodiment, the final state is not input to the first network, but simply the first network. Is input recursively. That is, while the amount output by the first network is input to the first network, the amount output by the second network is not input.
  • the estimated final state quantity (for example, the state quantity represented by a dense vector) is not input to the first network, and the deterministically estimated feature quantity is regressed. , It is possible to extract deterministic features over time.
  • the third network is a network having a fully connected layer like the second network and converting the initial state s 0 into the latent variable h 0 which is the first input of the first network.
  • This third network appropriately extracts the features of the vector input as the initial state by, for example, a fully connected layer having a parameter matrix and a bias vector, and the latent variable h 0 which is the input of the first network at time 1. Convert to. Similar to the second network, the network is not limited to the fully connected layer, and any network that can appropriately extract the input amount of the first network may be used.
  • the initial state is, for example, basically the same amount as the estimated state quantity. However, this is not limited to this, and for example, it may be provided with other observed values such as a temperature system grounded at various parts of the plant and a flow meter of a substance.
  • FIG. 3 is a block diagram showing the functions of the estimation device including the above network in the present embodiment.
  • the estimation device 1 includes an input unit 100, a storage unit 102, a third network 104, a first network 106, a second network 108, and an output unit 110.
  • the estimation device 1 receives various input variables via the input unit 100.
  • the input variables are, for example, data about the initial state and time series data of behavior and noise, as described above.
  • the input variable may be stored in the storage unit 102 as needed and read from each element at the required timing.
  • the input unit 100 may accept the input variable via the network or the like each time in time for the required timing.
  • the storage unit 102 stores data, programs, etc. required for the estimation device 1. For example, when information processing by software is specifically realized by hardware resources by executing a program by the estimation device 1, necessary programs and execution files may be stored in the storage unit 102. Further, as described above, the data received by the input unit 100 may be stored in the storage unit 102.
  • the third network 104 converts the vector in the initial state so as to match the input of the first network 106.
  • the third network 104 may be configured by, for example, a neural network including a fully connected layer.
  • the first network 106 is configured to include an autoregressive neural network that receives its own output value as an input.
  • the second network 108 converts the deterministically processed feature quantity output from the first network 106 into a state quantity.
  • the second network 108 may be composed of, for example, a neural network including a fully connected layer.
  • the second network 108 outputs a time-series state quantity to the time-series input variable input from the input unit 100 via the first network 106.
  • the output unit 110 outputs the time-series state quantity output by the second network 108.
  • the output is a concept including not only the output to the outside of the estimation device 1 via the interface but also the storage of time series data in the storage unit 102, for example.
  • the state quantity output by the estimation device 1, that is, the quantity converted by the second network 108 is the quantity required as a physics simulator. For example, in the case of a plant, the voltage of which device rises, how much heat is generated in which region, how much power is generated as a whole, or the yield of the product is manufactured. It is data such as whether it is done.
  • the estimation device 1 may operate as a simulator of another physical system in which an event occurs deterministically.
  • the input unit 100 may appropriately accept input.
  • the simulated state may be output to a display or the like via the output unit 110, and the operator may refer to the display or the like to simulate the control.
  • the control value may be input by the operator from the input unit 100 at an arbitrary timing.
  • the control value input by the operator is converted into time-series data indicating the behavior, and is input to the estimation device 1 via the input unit 100. Further, the present invention is not limited to this, and when the input unit 100 receives the control from the operator, it may be converted into time-series data indicating the behavior and used as the input of the first network 106. In this way, when operating as a physical simulator that accepts control from the outside, the estimation device 1 may accept a control signal or the like from the outside as a time-series input variable.
  • a system simulation may be executed by inputting random noise as noise data.
  • the control input from the outside is not indispensable, and it is possible to simulate what kind of phenomenon can occur.
  • both the time-series data of the behavior, which is the control operation, and the time-series data of the noise may be input. In this case, it is also possible to simulate the physical system under various conditions.
  • the estimation device 1 it is possible to implement a physics simulator using an autoregressive model. Since this physics simulator can simulate a physical phenomenon simply by inputting input variables of the initial state and time series and converting these data by a neural network, it estimates the physical phenomenon at high speed. be able to. Moreover, in addition to the time cost, it is possible to realize the cost reduction of the memory resource for acquiring the required feature amount.
  • FIG. 4 is a block diagram showing the functions of the training device 2 according to the present embodiment.
  • the training device 2 is a device that trains the estimation device 1 by machine learning, and is an input unit 200, a storage unit 202, a mask generation unit 204, a third network 206, a first network 208, and a second network 210.
  • An error calculation unit 212, a parameter update unit 214, and an output unit 216 are provided.
  • the input unit 200 accepts data input.
  • the data to be input is data to be trained, for example, initial state data, time-series behavior and noise data, and time-series state quantity data which is teacher data. If necessary, the input data may be stored in the storage unit 202.
  • the storage unit 202 stores the data required for the training device 2. For example, the data input from the input unit 200 may be stored. Further, if the training device 2 is executed by software, data such as a program, an execution file, etc. required for execution, and initial parameters of each network may be stored. Further, the storage unit 202 may store various parameters during the training of the network.
  • the mask generation unit 204 generates a sparse matrix mask to be applied to the parameter matrix in the first network. As described above, the sparse matrix mask may be generated based on the target system, or may be randomly generated. The mask generation unit 204 outputs the generated mask to the first network 208, and applies the mask to each parameter matrix.
  • the details of the third network 206, the first network 208, and the second network 210 are omitted because they are the same as the above description.
  • the initial state input from the input unit 200 is converted by the third network 206 and output to the first network 208.
  • the first network 208 extracts a deterministic feature amount from a parameter matrix to which a sparse matrix mask is applied, based on the time-series behavior and noise data input from the input unit 200 and its own output value.
  • the second network 210 converts the output of the first network 208 into a state quantity.
  • the error calculation unit 212 calculates, for example, an error with the teacher data for the state quantity output by the second network 210, and outputs it to the parameter update unit 214. If the teacher data does not exist, the error from the appropriate reference data may be calculated.
  • the parameter update unit 214 updates the parameters based on the error obtained by the error calculation unit 212, for example, by back-propagating the error and obtaining the gradient of each parameter in each network.
  • the parameter update unit 214 continues to update the network until a predetermined condition is satisfied. After satisfying the predetermined conditions, the updated parameters, the sparse matrix mask used for training, and other information necessary for network configuration are output via the output unit 216.
  • the output unit 216 outputs the parameters updated by the parameter update unit 214 to the inside or the outside of the training device 2.
  • FIG. 5 is a flowchart showing a processing flow of the training device 2 according to the present embodiment. The processing of the training device 2 will be described with reference to FIG.
  • the training data is received via the input unit 200 (S100).
  • the mask generation unit 204 generates a sparse matrix mask (S102).
  • the initial state data input from the input unit 200 is input to the third network 206, and the feature amount for the initial state data is extracted (S104).
  • the data output from the third network 206 and the data of time 1 in the time series data of the behavior and noise are input to the first network 208, and the deterministically determined feature amount is extracted (S106).
  • the deterministically determined feature quantity output by the first network 208 is input to the second network 210 and converted into state quantity data (S108).
  • the process returns to S106 and the processing at the next time is performed. For example, when processing the time t following the time t-1, the output value of the first network 208 at the time t-1 and the input variables at the time t of the behavior and noise are input to the first network 208. , The output value at time t of the first network 208 is acquired. As described above, although the output of the third network 206 is used in the first S106, the output of the first network 208 is input from the next time without inputting the output of the third network 206.
  • the error calculation unit 212 sets an error between the output of the second network 210 at each time and the teacher data or the appropriate reference data. Calculate (S112).
  • the parameter update unit 214 updates the parameter based on the error calculated by the error calculation unit 212 (S114). For example, the parameters of each network are updated by appropriately back-propagating the error calculated by the error calculation unit 212.
  • the parameter update unit 214 determines whether or not the training has been completed (S118).
  • the end of the training is generally performed, for example, the processing of a predetermined number of epochs is completed, the error is less than the predetermined error by mutual verification, or the error calculated by the error calculation unit 212 is less than the predetermined value. It may be judged in the same manner as the machine learning method used.
  • the updated parameters and other data necessary for configuring each network are output to the outside or inside of the training device 2 via the output unit 216. (S118), the process is terminated.
  • the output unit 216 may also output the information of the sparse matrix mask.
  • each of the first network 106, the second network 108, and the third network 104 of the estimation device 1 in FIG. 3 is generated. be able to.
  • connection relationship between variables is determined by using a mask, as compared with connecting all the various variables that should be considered for the physics simulator by a fully connected layer or the like. It is considered that the limitation is caused by deleting the unnecessary connection relationship.
  • the speed and accuracy are improved by generating a deterministic autoregressive model by applying the mask generated by the mask generation unit 204. It was.
  • the accuracy is to be improved by training to model the differential equation in the training of the first network 208.
  • x When x represents the state of a plant, etc., x can generally be represented by the following differential equation.
  • f (x) is not self-evident, but modeling is performed using training data.
  • x (0) of x is expressed by x 0
  • the state to be obtained can be expressed as follows.
  • f (x) can be modeled in this way, it is possible to estimate the state x (t) at an arbitrary time t by obtaining the integral for t.
  • x (t) By obtaining the integral calculation by numerical calculation, it is possible to estimate x (t) even if f (x) is an arbitrary function.
  • f (x) By applying f (x) to a differentiable model such as a neural network, x (t) becomes differentiable, and f (x) is estimated from the input variable by an optimization method such as gradient descent. can do.
  • the time series data of the input variable and the output of the first network itself are input, and the feature amount at the current time is output.
  • the output feature amount is converted into a state in the second network and output.
  • the parameters of the first network are optimized by obtaining the error between the output value of the second network and the teacher data.
  • the input data should be continuous data.
  • the training is performed based on the input variables and states discretized for each unit time. This discretization may be performed before the input of the data, or may be performed in the training device or the estimation device after the input of the data.
  • the quantity between time t and time t + 1 is converted into the value of time t and input.
  • the average value from time t to time t + 1 may be calculated and used as the value at time t, or any method as long as an appropriately discretized value can be used. It may be discretized with.
  • the first network is configured as an autoregressive neural network that outputs the integral value of the mathematical formula shown in Eq. (7) as a result of training, that is, outputs the feature amount h (t).
  • the configuration of the estimation device 1 is basically the same as that of the estimation device 1 shown in FIG.
  • the first network 106 of the estimation device 1 is formed.
  • the second network 108 and the third network 104 are trained and formed as a network that converts the output from the autoregressive model into a state and a network that extracts features from the initial state, respectively, as in the above-described embodiment. Will be done.
  • FIG. 6 is a block diagram showing the functions of the training device 2 according to the present embodiment. It is basically the same as the training device 2 according to the first embodiment shown in FIG. 4, but includes a discretization unit 218 instead of the mask generation unit.
  • the discretization unit 218 discretizes the data and inputs it to the network as needed.
  • Other elements other than the configuration of the first network 208 have the same functions as the elements having the same reference numerals in the first embodiment.
  • FIG. 7 is a flowchart showing a processing flow of the training device 2 according to the present embodiment.
  • the parts with the same reference numerals as those in FIG. 5 represent the same processing.
  • the difference is the process of discretizing this data (S120) after receiving the training data (S100).
  • S120 discretizing this data
  • S100 training data
  • the present embodiment it is possible to simulate a physical phenomenon for each time by using an autoregressive neural network that models a differential equation.
  • the behavior of a plant can be expressed by a differential equation.
  • this differential equation By training this differential equation as a network, only numerical processing is performed via the network, so that it is possible to simulate faster than solving the differential equation by numerical calculation for each time and acquiring the state.
  • an estimation device that performs reinforcement learning and reproduces the operation of the simulator at high speed by training each of the above-described embodiments based on a data set output by a simulator or the like that has obtained a certain degree of accuracy. It is also possible to implement.
  • reinforcement learning that enables better control of the data predicted by the prediction model can be performed using the methods described in each of the above-described embodiments.
  • a better control value can be searched by using a time series search method such as beam search or Monte Carlo tree search.
  • the estimation device 1 and the training device 2 have been described as separate devices, but the present invention is not limited to this.
  • the device itself trained as the training device 2 may be used to function as the estimation device 1.
  • the sparse matrix mask can also be used, for example, for any time series prediction task.
  • a sparse matrix mask can be used from this viewpoint. More specifically, an effective mask may be applied to an element having a causal relationship with the weather, and modeling may be performed on the masked element.
  • the sparse matrix mask may be used for a matrix representing a graph (for example, a matrix representing an edge).
  • modeling may be performed using this sparse matrix mask when the connections to each other are restricted as in an electric circuit or the like, or when the connection relationship between rooms and rooms and corridors in a building is shown.
  • this sparse matrix mask for modeling that can be expressed using a graph like a language.
  • the sparse matrix mask may be applied to a model that performs sequential calculations as yet another example.
  • the processing of variables may be deterministically defined.
  • a sparse matrix mask can be applied to the parameter matrix.
  • the parameter matrix may be a parameter including an operator, a connection between variables may be expressed by a sparse matrix mask, and operations between variables may be defined by a sparse matrix mask and a parameter matrix.
  • the sparse matrix mask may be applied not only to time series but also to discrete continuous quantities defined spatially or conceptually.
  • FIG. 8 is a flowchart showing a sparse matrix mask generation process according to the present embodiment. As an example, an example of performing optimization in a plant will be described.
  • the mask generation unit 204 calculates a graph G with the components of the plant as vertices and the dependencies between them as edges (S1020).
  • the mask generation unit 204 defines a component as a vertex, and for example, if the component A affects the component B, the mask generation unit 204 generates a graph G in which the side A ⁇ B exists.
  • this graph G can be constructed based on the plant simulation model. Most simulation models are described by connecting the components based on their connection relationships. The connection relationship and the parameter dependency relationship can be obtained from the simulation model, and by using these information, the mask generation unit 204 can generate the graph G.
  • the mask generation unit 204 can generate the graph G based on these drawings.
  • the mask generation unit 204 generates a reduction graph (S1022).
  • This process may be a two-step process of calculating a subgraph G'and generating a graph G', which is a reduction of this G'.
  • the mask generation unit 204 calculates the shortest path that does not pass through other observation variables between the vertices corresponding to each observation variable.
  • the condition of not passing through other observed variables is not a mandatory condition.
  • the mask generation unit 204 calculates a subgraph G'consisting of only the vertices on those paths.
  • the mask generation unit 204 contracts the graph so that the vertices connected without branching become the same vertex in the subgraph G', and acquires the contracted graph G'.
  • the mask generation unit 204 can generate a contraction graph that can appropriately express the causal relationship. That is, the influence from a certain vertex on the path can be appropriately expressed, and the influence between the vertices having no dependence on each other can be suppressed.
  • the dimension of the latent variable is determined. This dimension determination is performed, for example, by hyperparameter tuning, meta-learning, or the like. As a more specific example, based on the training data, the training is executed while changing the hyperparameters in various ways, and the dimension of the latent variable is determined from the hyperparameters for which good results can be obtained.
  • the mask generation unit 204 executes vertex clustering and acquires a cluster of the number of vertices corresponding to the desired latent variable dimension.
  • a spectral clustering method may be used for this clustering. The method is not limited to this, and any method such as K-means or Ward's method that can appropriately cluster vertices corresponding to latent variables may be used.
  • the mask generation unit 204 acquires the contraction graph G ′′ with the vertices belonging to the cluster as the same vertex.
  • the first example has the advantage that prior learning is not required.
  • the second example has an advantage that the dimension of the latent variable can be set.
  • the mask generator 204 uses a sparse matrix mask (second sparse matrix) for U, Ur , and U z (second parameter matrix) in equations (1) to (4).
  • Mask is generated (S1024).
  • FIG. 9 is a diagram showing an example of the contraction graph G ′′.
  • indicates a vertex
  • the number inside indicates the number of the vertex
  • the straight line between the vertices indicates the side.
  • Edges are represented as undirected, but may be directed, as described above. When valid, the graph may be one-way according to the dependency, or bi-directional according to the dependency.
  • the mask generation unit 204 generates a mask based on this contraction graph G ′′ in the sparse matrix mask generation process for U and the like.
  • the reduction graph G'' when the distance from the j-th vertex to the i-th vertex is n or less, the component in the i-th row and j-th column is set to 1, and in other cases, it is 0. Get the matrix.
  • n 1
  • the distance to itself may be considered to be 0, and a sparse matrix mask having a diagonal component of 1 may be used as shown below.
  • 1 may be set for one's own apex, and learning may be executed so that a diagonal component such as U approaches 0 during training.
  • n 1, 2, etc. may be set.
  • the value may be larger than this. This may be determined in consideration of how far the apex is affected based on the dependency in the target system. Further, a slightly larger value may be set as n so as to have redundancy of influence between data.
  • the mask generation unit 204 then generates a sparse matrix mask (first sparse matrix mask) for W, W r , and W z (first parameter matrix) (S1026).
  • This W etc. is a matrix that transforms an input variable into a latent variable.
  • the sparse matrix mask for W and the like is a mask indicating to which vertex on G'' the vertices of the graph G belonging to each vertex of the contraction graph G'' have a dependency relationship.
  • each vertex of the graph G belonging to the vertex 1 in the contraction graph G ′′ depends on the vertices 2 and 5 of the contraction graph G ′′, respectively.
  • the vertices 1, 2, and 3 in the graph G belong to the vertex 1 of the reduction graph G ′′.
  • the vertices 1, 2 and 3 of the graph G may affect the vertices 2 and 5 of the reduced graph G ′′.
  • the mask generation unit 204 generates a sparse matrix mask so as to pass a value from an input variable to a latent variable that can have such an influence.
  • the mask generation unit 204 uses the following sparse matrix mask. To generate. However, it is assumed that each vertex of the graph G belongs to any vertex of the reduced graph G''.
  • the mask generation unit 204 assumes that, for example, the vertex j of the graph G is the j-th column, and the vertex of the reduced graph G'' to which this vertex belongs has a dependency on the vertex i. In this case, the component of the i-by-j column of the sparse matrix mask for W etc. is set to 1. The elements of the matrix that have no dependency are set to 0.
  • equation (10) focusing on the first column corresponding to the vertex 1 of the graph G, since it has a dependency on the vertices 2 and 5 of the reduced graph G'', the components in the second and fifth rows. Is 1 and the other components are 0. Similarly, the components are determined in the second and third columns. For example, assume that the last column belongs to vertex 6 of the reduction graph G''. In this case, as shown in equation (10), the component of the last column is [0 0 1 1 0 0] T.
  • the vertices of the graph G may have a dependency on the vertices of the reduced graph G'' to which they belong.
  • the sparse matrix mask for W and the like can be expressed as in Eq. (11).
  • n can be set appropriately, or it can be a directed graph having one of the dependencies.
  • the mask generation unit 204 generates a sparse matrix mask for W and the like in this way.
  • the mask generation unit 204 generates a sparse matrix mask.
  • the sparse matrix mask is applied to the vertices of U, which is a parameter that converts between latent variables, and W, etc., which is a parameter that converts from an input variable to a latent variable. It is possible to generate appropriately based on the dependency of.
  • By generating the sparse matrix mask in this way it is possible to reduce the number of parameters to be optimized while applying the influence between the variables appropriately converted from the parameters.
  • it can be executed as a random number as in each of the above-described embodiments, it is possible to realize faster and more accurate training by generating a mask based on the dependency as in the present embodiment. It becomes.
  • the subgraph G ′′ may be generated as in the first example. By generating the subgraph in this way, it is possible to reduce the influence of the components from the components that are considered to have no influence on the prediction target, as compared with the case where the configuration of the plant or the like is used as it is.
  • the dimension of the latent variable can be adjusted by reducing the graph.
  • clustering can be used to perform this dimensional adjustment.
  • the model can be appropriately optimized according to the present embodiment.
  • the latent variable is also used in training. The accuracy can be improved by performing the conversion with a width.
  • the mask generation unit 204 appropriately generates a sparse matrix mask for each parameter.
  • the third network in FIG. 2 is deleted, and the latent variable h 0, which is the first input, is acquired by using the past state instead of the initial state. May be good. For example, using the past state sequences s [-n], s [-n + 1], ..., s [-1], s [0], the first autoregressive network as shown in FIG. You may get the latent variable h 0 that is the input of.
  • This network may also be a model using a sparse matrix mask. For example, a method for generating a sparse matrix mask as described in the third embodiment is effective.
  • a model that has the characteristics of each of the above-described embodiments describes the dynamics of each element constituting the plant, and the dynamics of the entire plant as a physical model, etc., and performs simulation ( Compared to the white box model), the cost of creating the model is smaller. Further, as compared with a model (black box model) that trains a model that makes predictions by machine learning only from data without giving these at all, it is possible to train from a small amount of data, and data efficiency can be improved. In addition, by reflecting the physical configuration, it is possible to train a model that is difficult to overfit and is resistant to extrapolation.
  • Each function of the estimation device 1 and the training device 2 in the above-described embodiment may be realized by an analog circuit, a digital circuit, or a mixed circuit of an analog circuit and a digital circuit. Further, the estimation device 1 and the training device 2 may include a control circuit for controlling each function. Each of these circuits may be implemented by an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or the like.
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • a part or all of the estimation device 1 and the training device 2 may be composed of hardware, or may be composed of information processing of software (program) executed by a CPU or the like. ..
  • the estimation device 1, the training device 2, and the software that realizes at least a part of the functions are stored in a storage medium such as a flexible disk or a CD-ROM and read by a computer.
  • software information processing may be executed.
  • the software may be downloaded via a communication network.
  • the computer can be the device of the above embodiment. Further, in this way, information processing by software may be concretely realized by using hardware resources.
  • the information processing that is supposed to be executed by the software may be executed by the hardware.
  • the generation of the model and the processing using the generated model may be performed by using an accelerator such as a GPU, for example.
  • the type of storage medium that stores the software is not particularly limited.
  • the storage medium is not limited to a removable one such as a magnetic disk or an optical disk, and may be a fixed storage medium such as a hard disk or a memory.
  • the storage medium may be provided inside the computer or may be provided outside the computer.
  • FIG. 10 is a block diagram showing an example of the hardware configuration in one embodiment.
  • the estimation device 1 and the training device 2 include a processor 71, a main storage device 72, an auxiliary storage device 73, a network interface 74, and a device interface 75, and a computer 7 to which these are connected via a bus 76.
  • a processor 71 a main storage device 72
  • an auxiliary storage device 73 a main storage device 72
  • auxiliary storage device 73 to which these are connected via a bus 76.
  • a computer 7 to which these are connected via a bus 76.
  • the computer 7 in FIG. 10 includes one component for each component, the computer 7 may include a plurality of the same components. Further, although one computer 7 is shown in FIG. 10, software may be installed on a plurality of computers, and each of the plurality of computers may perform the same or different parts of the software. .. In this case, it may be a form of distributed computing in which each computer communicates via a network interface 74 or the like to execute processing.
  • Various operations of the estimation device 1 and the training device 2 may be executed in parallel processing by using one or a plurality of processors (for example, an accelerator such as a GPU) or by using a plurality of computers via a network. .. Further, various operations may be distributed to a plurality of arithmetic cores in the processor and executed in parallel processing. In addition, some or all of the processes, means, etc. of the present disclosure are executed or functioned by at least one of a processing circuit and a storage device provided on a cloud capable of communicating with the computer 7 via a network. You may. As described above, it may be a form of parallel computing by one or a plurality of computers.
  • the processor 71 may be an electronic circuit (processing circuit, Processing circuitry) including a computer control device and an arithmetic unit. Further, the processor 71 may be a CPU or GPU whose number of cores is not limited, or may be a semiconductor device or the like including a dedicated processing circuit. The processor 71 can perform arithmetic processing based on data and programs input from each device and the like having an internal configuration of the computer 7, and output the arithmetic result and a control signal to each device and the like. The processor 71 may control each component constituting the computer 7 by executing an OS (Operating System) of the computer 7, an application, or the like.
  • OS Operating System
  • the estimation device 1 and the training device 2, and their respective hardware configurations may be realized by one or more processors 71.
  • the processing circuit may refer to one or more electric circuits arranged on one chip, or may refer to one or more electric circuits arranged on two or more chips or devices. .. When a plurality of electronic circuits are used, each electronic circuit may communicate by wire or wirelessly.
  • the main storage device 72 is a storage device that stores instructions executed by the processor 71, various data, and the like, and the information stored in the main storage device 72 is read out by the processor 71.
  • the auxiliary storage device 73 is a storage device other than the main storage device 72. Note that these storage devices mean arbitrary electronic components capable of storing electronic information, and may be memory or storage. Further, the memory includes a volatile memory and a non-volatile memory, but any of them may be used.
  • the memory for storing various data in the estimation device 1 and the training device 2 may be realized by the main storage device 72 or the auxiliary storage device 73.
  • the storage units 102 and 202 may be mounted on the main storage device 72 or the auxiliary storage device 73.
  • the storage units 102 and 202 may be mounted in the memory provided in the accelerator.
  • a plurality of processors may be physically or electrically connected to one memory (storage device), or a single processor may be physically or electrically connected.
  • a plurality of memories (storage devices) may be physically or electrically connected to one processor.
  • the hardware in one embodiment is composed of at least one memory (storage device) and a plurality of processors connected to the memory (storage device)
  • at least one processor among the plurality of processors is at least one memory. It may include a configuration that is physically or electrically connected to (storage device). Further, this configuration may be realized by a memory (storage device) and a processor included in a plurality of computers.
  • the memory may include a configuration in which the memory (storage device) is integrated with the processor (for example, a cache memory including an L1 cache and an L2 cache). In this case, a memory that controls access to these memories (storage device).
  • a controller may be further included.
  • the network interface 74 is an interface for connecting to the communication network 8 wirelessly or by wire. As the network interface 74, one conforming to the existing communication standard may be used. Information may be exchanged by the network interface 74 with the external device 9A which is communicated and connected via the communication network 8.
  • the external device 9A includes, for example, a camera, motion capture, an output destination device, an external sensor, an input source device, and the like.
  • an external memory storage device
  • the external device 9A may be a device having some functions of the components of the estimation device 1 and the training device 2.
  • the computer 7 may receive a part or all of the processing results of the estimation device 1 and the training device 2 via the communication network 8 like a cloud service, or transmit the processing results to the outside of the computer 7. May be good.
  • the device interface 75 is an interface such as USB (Universal Serial Bus) that directly connects to the external device 9B.
  • the external device 9B may be an external storage medium or a storage device.
  • the storage units 102 and 202 may be realized by the external device 9B.
  • the external device 9B may be an output device.
  • the output device may be, for example, a display device for displaying an image, a device for outputting audio or the like, or the like.
  • LCD Liquid Crystal Display
  • CRT Cathode Ray Tube
  • PDP Plasma Display Panel
  • speaker etc., but the present invention is not limited to these.
  • the external device 9B may be an input device.
  • the input device includes devices such as a keyboard, a mouse, and a touch panel, and gives the information input by these devices to the computer 7.
  • the signal from the input device is output to the processor 71.
  • the expressions "at least one of a, b and c (one)” or “at least one of a, b or c (one)” are a, b, c. , Ab, ac, bc, any combination of abc. It also covers combinations with multiple instances of any element such as a-a, a-b-b, a-a-b-b-c-c, etc. Further, it covers combinations having d further, such as a-b-c-d, that is, combinations to which other elements other than a, b and / or c are added.
  • the expression "based on data” means that various data itself is used as an input, or that various data are processed in some way (for example, unless otherwise specified). This includes the case where noise is added, normalized, intermediate representation of various data, etc.) is used as input.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

[課題]機械学習により精度の高いシミュレータを実現する。 [解決手段]推定装置は、1又は複数のメモリと、1又は複数のプロセッサと、を備える。前記1又は複数のプロセッサは、第1ネットワークに、時系列の入力変数及び前記第1ネットワークの出力である潜在変数を入力して、現ステップにおける潜在変数を抽出し、第2ネットワークに、前記潜在変数を入力して、前記入力変数に対する時系列の状態を推定する、ように構成される。

Description

訓練装置、推定装置、訓練方法、推定方法、プログラム及びコンピュータ読み取り可能な非一時的記憶媒体
 本開示は、訓練装置、推定装置、訓練方法、推定方法及びプログラムに関する。
 様々な事故等の事象をコンピュータ内で再現するために、物理シミュレータが広く用いられている。これらの物理シミュレータは、実際に背後にある物理法則を仮定して反復演算を行うことにより物理現象を再現するが、計算量が多く、例えば、プラントのオペレータの訓練に用いる場合、計算時間が長くなるためオペレータの訓練時間が長くなる。また、一般的にこれらの事象は、微分を求めることが難しく、外部からの制御がある場合にシミュレーションするのが困難である。
 一方、機械学習によるニューラルネットワークをこのような現象に応用することは、確率的挙動が少なく、データも少ない場合には、確率的なモデリングを行うことにより汎化性能が低くなる。また、制御等による外部からの影響の反映は、一般的には即時的に起きることはなく、ニューラルネットワークによる挙動の推定及びモデリングも困難である。
F. Gers, "Long Short-Term Memory in Recurrent Neural Networks," 2001, [インターネット], 2019年7月1日確認, http://www.felixgers.de/papers/phd.pdf
 本開示は、機械学習により精度の高いシミュレータを実現する、訓練装置、推定装置、訓練方法、推定方法、プログラム及びコンピュータ読み取り可能な非一時的記憶媒体を提供する。
 一実施形態によれば、推定装置は、1又は複数のメモリと、1又は複数のプロセッサと、を備える。前記1又は複数のプロセッサは、第1ネットワークに、時系列の入力変数及び前記第1ネットワークの出力である潜在変数を入力して、現ステップにおける潜在変数を抽出し、第2ネットワークに、前記潜在変数を入力して、前記入力変数に対する時系列の状態を推定する、ように構成される。
GRUの構成図。 一実施形態に係る推定装置の機能の構成を示す図。 一実施形態に係る推定装置の機能を示すブロック図。 一実施形態に係る訓練装置の機能を示すブロック図。 一実施形態に係る訓練装置の処理を示すフローチャート。 一実施形態に係る訓練装置の機能を示すブロック図。 一実施形態に係る訓練装置の処理を示すフローチャート。 一実施形態に係る訓練装置の処理を示すフローチャート。 一実施形態に係る縮約グラフの一例を示す図。 一実施形態に係るハードウェア実装例を示す図。
 以下、図面を参照して本発明の実施形態について説明する。図面及び実施形態の説明は一例として示すものであり、本発明を限定するものではない。
 例えば、全ての実施形態において、一例としてプラントに関する装置等について説明するが、これには限られず、ある程度決定論的に事象が発生する対象であれば、同じ手法を適用することが可能である。本実施形態は、プラント以外では、例えば、電気回路、水道システム、自動車、生産装置、ロボット、センサ・ネットワーク、スマートグリッド、船舶、飛行機、産業機械等及びその他種々の分野に適用することができる。
 (第1実施形態)
 本実施形態における訓練対象は、自己回帰モデルであるリカレントニューラルネットワーク(RNN:Recurrent Neural Network)である。この訓練対象は、一例としてGRU(Gated Recurrent Unit)モデルとするが、これには限られず、例えば、LSTM(Long Short Term Memory)等の他の構成であっても適用することが可能である。
 図1は、限定されない実施形態における自己回帰モデルの自己回帰部分(GRU)の構成図である。図の右に記載しているように、四角で囲まれたオペレーションはニューラルネットワークレイヤを示し、丸で囲まれたオペレーションはポイントワイズオペレーションを示し、矢印はベクトルトランスファを示し、htへと丸角かつ鋭角で接続されるものはベクトルの結合を示し、xt又はht-1から鋭角かつ丸角で出て行くものはベクトルのコピーを示す。
 GRUは、直前の自己の出力データ(以下、潜在変数と記載する)ht-1と、現段階における入力変数xtとが入力され、現時点のユニットの潜在変数htを生成する。直前の自己の出力するデータをネットワークへと入力して新たな出力をし、この出力が次の段階の入力となる。このように、GRUには、自己回帰的にデータが入力され、新たな出力を生成する。
 GRU内の各ベクトルの値は、次のように求めることができる。
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000004
 ここで、記号odot(丸の中にドット)は、ベクトルの成分同士の積を表し、σは、シグモイド関数を表す。Wr、Wz、Wは、入力変数空間のデータ(入力変数x)を、潜在変数空間のデータ(第1ネットワークの潜在変数h)へと変換する行列であり、Ur、Uz、Uは、潜在変数空間のデータを潜在変数空間のデータへと変換する行列である。
 訓練の対象となるのは、Wr、Ur、Wz、Uz、W、Uで示されるパラメータの行列である。訓練の大筋については一般的な機械学習、特にディープラーニングの手法と同等であるので、詳細は省略する。例えば、教師ありのバックプロパゲーションにより実行されるが、これに限られず、適切に訓練されるものであればどのような手法でもよい。本実施形態においては、このGRUに基づいて、ネットワークを構成し、決定論的な自己回帰とランダム疎行列マスクと、を用いた物理シミュレータを実装する。
 本実施形態では、決定論的にGRUを機能させるために、パラメータ行列Wr、Ur、Wz、Uz、W、Uにマスクを適用し、各パラメータ行列を疎行列として処理する。以下、このマスクを疎行列マスクと記載する。疎行列マスクは、対応するパラメータ行列と同じ要素数を有し、要素のそれぞれは、0又は1の値を有する。
 なお、マスクを適用するとは、パラメータ行列と対応する疎行列マスクとをその要素ごとに積を取る処理のことを言う。
 疎行列マスクは、着目している系、例えば、プラントの構造に基づいて設計されてもよい。プラントの構造は、プラントごとに固定されたものであり、また、各要素同士の接続関係が分かるものである。そこで、この接続関係を用いて疎行列マスクを生成し、各パラメータ行列に適用してもよい。例えば、直接接続している要素が関連するベクトルの成分同士を接続する箇所を1とし、それ以外の箇所を0として疎行列マスクを生成してもよい。
 一方、ベクトル及びパラメータ行列の成分は、プラントにおける種々の状況等により莫大な数となることがある。このような場合は、上記のようにプラントの構造に基づいてマスクを精製することが困難となる。このような場合に、決定論的に物理現象を再現するため、ランダムに疎行列マスクを生成してもよい。例えば、二項分布を用いて疎行列マスクを生成してもよい。pythonのnumpyライブラリを用いた疑似コードとして、
 m_wr = numpy.random.binomial(1, ratio, size=wr.shape)
等として記載される。
 二項分布に限られず、他の乱数分布であってもよい。例えば、平均値と分散を決めた正規分布の乱数を発生させて、あるしきい値を用いて二値化して疎行列マスクを生成してもよい。同様に、ポアッソン分布、ベータ分布等に基づいてもよい。また、物理現象にとらわれず、よりランダム性の高いメルセンヌツイスター等に基づいた他の乱数発生器に基づいて疎行列マスクを生成してもよい。
 このように疎行列マスクをパラメータ行列に適用することにより、自己回帰の結果として取得される潜在変数が先行する潜在変数のいずれの要素に基づいているかを制限し、自己回帰の汎化性能を向上することが可能となる。例えば、プラントの構造をモデルに適用することができる。また、疎行列マスクを適用するのではなく、パラメータ行列そのものを疎行列として定義してもよい。すなわち、パラメータ行列をスパースな行列とできるものであればよい。
 図2は、本実施形態に係る推定装置(物理シミュレータ)の機能構成を示す図である。この図2に示すように、推定装置は、第1ネットワークと、第2ネットワークと、第3ネットワークと、を備える。
 予測装置の入力変数は、例えば、プラントのオペレータの行動及び天候等の不確実な要素を表すノイズ、のうち少なくとも一方を備える時系列データ(時系列の入力変数)xtである。例えば、時刻1、2、・・・、t、t+1、・・・、T、に対応する行動とノイズのデータ列が入力される。物理シミュレータとして用いる場合、任意の時刻において、例えば、起こっている事象に対してプラントオペレータによりオペレーションされた行動が入力として割り込んでもよい。なお、時刻tとして説明しているが、これは時刻には限られず、決定論的な挙動を示す系に対するステップ等としてもよい。
 時系列データが行動列である場合、これは、例えば、プラントのバルブがどの程度開けられているかの時系列であってもよいし、プラントがPID制御(Proportional-Integral-Differential Controller)により制御される場合には、その設定値であってもよい。この他、ユーザが制御するデータ、各箇所における電圧値等のその他の行動に関する時系列データであってもよい。
 ノイズ列である場合、これは、気温、気圧等の環境情報であってもよい。また、例えば、ライフラインに関するデータであり、どこでどの程度の資源が使用されているか等のデータであってもよいし、プラントの各装置における挙動に関するノイズ列であってもよい。これらには限られず、プラントに関するノイズ列であってもよい。
 第1ネットワークは、上述したパラメータ行列に疎行列マスクを適用したGRU(又は、他の自己回帰ニューラルネットワーク)である。例えば、時刻tにおける状態に着目してみる。第1ネットワークは、時刻t-1、すなわち、直前の第1ネットワークからの出力ht-1及び時刻tにおける入力変数xtを入力とする。時刻tにおいて出力された結果htは、第2ネットワーク及び次の時刻の第1ネットワークへと出力される。
 第2ネットワークは、例えば、全結合層を備えるニューラルネットワークであり、第1ネットワークの出力である潜在変数htが入力されると、時刻tにおける状態stを出力するネットワークである。すなわち、第2ネットワークは、第1ネットワークから出力される決定論的なプラントの状態の特徴量から、実際のプラントの状態を示す量を取得するネットワークである。第2ネットワークは、全結合層を備えるとしたが、これには限られず、特徴量を状態へと適切に変換できるネットワークであればよい。
 ここで、一般的なGRUにおいては、最終的な出力sが回帰するデータとして入力されるが、本実施形態においては、最終的な状態は、第1ネットワークへと入力されず、単に第1ネットワークの入力が回帰的に入力される。すなわち、第1ネットワークへは、第1ネットワークの出力する量が入力される一方で、第2ネットワークの出力する量は入力されない。このような処理により、推定された最終的な状態量(例えば、密なベクトルで表される状態量)が第1ネットワークに入力されずに、決定論的に推定された特徴量を回帰するので、時系列にわたって決定論的な特徴量を抽出することが可能となる。
 第3ネットワークは、第2ネットワークと同様に全結合層を備え、初期状態s0を第1ネットワークの最初の入力となる潜在変数h0へと変換するネットワークである。この第3ネットワークは、初期状態として入力されたベクトルを、例えば、パラメータ行列とバイアスベクトルを備える全結合層により適切に特徴量を抽出し、時刻1における第1ネットワークの入力となる潜在変数h0へと変換する。第2ネットワークと同様に、全結合層には限られず、適切に第1ネットワークの入力となる量を抽出できるネットワークであればよい。
 初期状態は、例えば、基本的には推定する状態量と同じ量である。ただし、これには限られるものではなく、例えば、プラントの各所に接地されている温度系、物質の流量計等の他の観測値を備えるものであってもよい。
 図3は、本実施形態における上記のネットワークを備える推定装置の機能を示すブロック図である。推定装置1は、入力部100と、記憶部102と、第3ネットワーク104と、第1ネットワーク106と、第2ネットワーク108と、出力部110と、を備える。
 推定装置1は、入力部100を介して各種入力変数を受信する。入力変数は、例えば、上記で説明したように、初期状態に関するデータと、行動及びノイズの時系列データである。入力変数は、必要に応じて記憶部102に格納され、必要となったタイミングで各要素から読み出されてもよい。別の例として、必要となるタイミングに間に合うように、都度入力部100がネットワーク等を介して入力変数を受け付けてもよい。
 記憶部102は、推定装置1に必要となるデータ、プログラム等を記憶する。例えば、推定装置1がプログラムを実行することによりソフトウェアによる情報処理がハードウェア資源により具体的に実現される場合には、必要となるプログラムや実行ファイルが記憶部102に記憶されていてもよい。また、上述したように、入力部100が受け付けたデータを記憶部102に記憶してもよい。
 第3ネットワーク104は、初期状態のベクトルを第1ネットワーク106の入力に合うように変換する。第3ネットワーク104は、上述したように、例えば、全結合層を備えるニューラルネットワークにより構成されてもよい。
 第1ネットワーク106は、第3ネットワーク104からの出力又は第1ネットワーク106自身からの出力、及び、入力部100から入力された時系列の入力変数を入力すると、決定論的に処理された特徴量を出力する。第1ネットワーク106は、自己の出力値を入力とする、自己回帰ニューラルネットワークを備えて構成される。
 第2ネットワーク108は、第1ネットワーク106から出力された決定論的に処理された特徴量を状態量へと変換する。第2ネットワーク108は、上述したように、例えば、全結合層を備えるニューラルネットワークにより構成されてもよい。この第2ネットワーク108は、入力部100から入力された時系列の入力変数に対して、第1ネットワーク106を介して時系列の状態量を出力する。
 出力部110は、第2ネットワーク108が出力した時系列の状態量を出力する。ここで、出力とは、インタフェースを介した推定装置1の外部への出力はもちろん、例えば、記憶部102に時系列データを記憶させることをも含む概念であるとする。
 推定装置1が出力する状態量、すなわち、第2ネットワーク108が変換する量は、物理シミュレータとして必要となる量である。例えば、プラントであれば、どのデバイスの電圧がどれだけあがり、どの領域の熱発生がどの程度であり、全体としての発電量がどの程度であるか、又は、製造物がどの程度の歩留まりで製造されているか、等のデータである。もちろん、推定装置1は、決定論的に事象が発生する他の物理系のシミュレータとして動作してもよい。
 物理シミュレータとして動作する場合、入力部100は、適宜入力を受け付けてもよい。例えば、出力部110を介してシミュレートされている状態をディスプレイ等に出力し、オペレータが当該ディスプレイ等を参照して、制御のシミュレーションをしてもよい。この場合、制御値を入力部100から任意のタイミングにおいてオペレータが入力できるようにしてもよい。
 オペレータが入力した制御値は、行動を示す時系列データへと変換され、入力部100を介して推定装置1へと入力される。また、これには限られず、入力部100は、オペレータからの制御を受け付けると、行動を示す時系列データへと変換して第1ネットワーク106の入力としてもよい。このように、外部からの制御を受け付ける物理シミュレータとして動作する場合には、推定装置1は、外部からの制御信号等を時系列の入力変数として受け付けてもよい。
 また、ノイズデータとして、ランダムなノイズを入力することにより、系のシミュレーションを実行してもよい。この場合、外部からの制御入力は、必須ではなく、どのような現象が発生しうるかをシミュレートすることができる。もっとも、制御操作である行動の時系列データと、ノイズの時系列データの双方を入力してもよく、この場合、さらに様々な条件においての物理系のシミュレーションを行うことも可能である。
 以上のように、本実施形態に係る推定装置1によれば、自己回帰モデルを用いる物理シミュレータを実装することが可能である。この物理シミュレータは、初期状態と時系列の入力変数を入力して、ニューラルネットワークによりこれらのデータを変換するだけで物理現象をシミュレートすることが可能であるので、高速な物理現象の推定を行うことができる。また、時間的コストに加え、必要な特徴量を取得するためのメモリ資源のコスト削減をも実現することが可能である。
 図4は、本実施形態に係る訓練装置2の機能を示すブロック図である。訓練装置2は、推定装置1を機械学習により訓練する装置であり、入力部200と、記憶部202と、マスク生成部204と、第3ネットワーク206と、第1ネットワーク208と、第2ネットワーク210と、誤差算出部212と、パラメータ更新部214と、出力部216と、を備える。
 入力部200は、データの入力を受け付ける。入力されるデータは、訓練の対象となるデータであり、例えば、初期状態データ、時系列の行動及びノイズデータ、並びに、教師データである時系列の状態量のデータである。必要であれば、入力されたデータは、記憶部202に格納されてもよい。
 記憶部202は、訓練装置2に必要なデータを記憶する。例えば、入力部200から入力されたデータを記憶してもよい。また、訓練装置2がソフトウェアにより実行されるのであれば、実行に必要なプログラム、実行ファイル等、また、各ネットワークの初期パラメータ等のデータを記憶してもよい。また、ネットワークの訓練途中における各種パラメータを記憶部202が記憶してもよい。
 マスク生成部204は、第1ネットワークにおいてパラメータ行列に適用する疎行列マスクを生成する。疎行列マスクは、上述したように、対象となる系に基づいて生成されてもよいし、ランダムに生成されてもよい。マスク生成部204は、生成したマスクを第1ネットワーク208に出力し、各パラメータ行列にマスクを適用させる。
 第3ネットワーク206、第1ネットワーク208、第2ネットワーク210に関しては、上述の説明と同様であるので詳細は省略する。入力部200から入力された初期状態を第3ネットワーク206で変換して第1ネットワーク208に出力する。第1ネットワーク208は、入力部200から入力された時系列の行動、ノイズデータと、自らの出力値に基づいて、疎行列マスクを適用されたパラメータ行列により決定論的な特徴量を抽出する。第2ネットワーク210は、第1ネットワーク208の出力を状態量へと変換する。
 誤差算出部212は、第2ネットワーク210が出力した状態量について、例えば、教師データとの誤差を算出し、パラメータ更新部214へと出力する。教師データが存在しない場合には、適切な参照データとの誤差を算出してもよい。
 パラメータ更新部214は、誤差算出部212が求めた誤差に基づいて、例えば、誤差を逆伝播し、各ネットワークにおける各パラメータの勾配を求めることによりパラメータを更新する。パラメータ更新部214は、所定の条件を満たすまで、ネットワークの更新を継続する。所定の条件を満たした後、出力部216を介して更新されたパラメータ、訓練に用いた疎行列マスク及びその他ネットワークの構成に必要な情報等を出力する。
 出力部216は、パラメータ更新部214が更新したパラメータ等を訓練装置2の内部又は外部へと出力する。
 図5は、本実施形態に係る訓練装置2の処理の流れを示すフローチャートである。この図5を用いて訓練装置2の処理について説明する。
 まず、入力部200を介して訓練データを受け付ける(S100)。
 次に、マスク生成部204は、疎行列マスクを生成する(S102)。
 次に、第3ネットワーク206に入力部200から入力された初期状態データを入力し、初期状態データに対する特徴量を抽出する(S104)。
 次に、第1ネットワーク208に第3ネットワーク206から出力されたデータ及び行動、ノイズの時系列データにおける時刻1のデータを入力し、決定論的に定められた特徴量を抽出する(S106)。
 次に、第2ネットワーク210に第1ネットワーク208が出力した決定論的に定められた特徴量を入力し、状態量データへと変換する(S108)。
 次に、全ての時系列データの処理が終了しているか否かを判断する(S110)。時系列データの処理が終了していない場合(S110:NO)、S106へと戻り、次の時刻の処理を行う。例えば、時刻t-1に続いて時刻tの処理をする場合、第1ネットワーク208に、時刻t-1における第1ネットワーク208の出力値、及び、行動、ノイズの時刻tにおける入力変数を入力し、第1ネットワーク208の時刻tにおける出力値を取得する。このように、最初のS106においては、第3ネットワーク206の出力を用いるものの、次の時刻からは、第3ネットワーク206の出力を入力することなく、第1ネットワーク208の出力が入力される。
 一方で、全ての時系列データの処理が終了している場合(S110:YES)、誤差算出部212は、各時刻における第2ネットワーク210の出力と、教師データ或いは適正な参照データとの誤差を算出する(S112)。
 次に、パラメータ更新部214は、誤差算出部212が算出した誤差に基づいて、パラメータを更新する(S114)。例えば、誤差算出部212が算出した誤差を適切に誤差逆伝播することにより各ネットワークのパラメータを更新する。
 次に、パラメータ更新部214は、訓練が終了したか否かを判断する(S118)。訓練の終了は、例えば、所定のエポック数の処理が終了した、相互検証により所定のエラーを下回った、又は、誤差算出部212の算出した誤差が所定値を下回った、等、一般的に行われている機械学習手法と同様に判断されてもよい。
 訓練が終了していない場合(S116:NO)、S106へと戻り、更新されたパラメータを用いて初期状態から処理を繰り返す。
 訓練が終了している場合(S116:YES)、出力部216を介して訓練装置2の外部又は内部に、更新されたパラメータ、及び、その他各ネットワークを構成するのに必要なデータを出力して(S118)、処理を終了する。なお、出力部216は、疎行列マスクの情報を併せて出力してもよい。
 出力された第1ネットワーク208、第2ネットワーク210及び第3ネットワーク206のパラメータを用いることにより、図3における推定装置1の第1ネットワーク106、第2ネットワーク108及び第3ネットワーク104のそれぞれを生成することができる。
 以上のように、本実施形態によれば、疎行列マスクを用い、特徴量を決定論的に定めて処理を行うことにより、教師データが少ない場合においても、精度の高い推定を行うネットワークを訓練することが可能となる。
 これは、決定論的に結果が定められる物理系において、物理シミュレータについて考慮すべき種々の変数等の全てを全結合層等により結合することに比べて、マスクを用いて変数同士の接続関係を制限することにより、余計な接続関係を削除することに起因すると考えられる。
 また、上述の推定装置1について述べたように、この訓練装置2により生成されたネットワークを推定装置1に適用することにより、高速な物理現象のシミュレートが可能となる。
 (第2実施形態)
 前述においては、GRU、すなわち、第1ネットワーク208の訓練については、マスク生成部204が生成したマスクを適用することにより決定論的な自己回帰モデルを生成することにより、速度向上及び精度向上を図った。本実施形態においては、第1ネットワーク208の訓練において微分方程式をモデリングする訓練を行うことにより、精度を高めようとするものである。
 例えば、プラントの挙動の大部分は、微分方程式で表現することができる。そこで、微分方程式を用いたモデリングを行うことにより、より物理現象に即したモデリングを行うことができる。
 xがプラントの状態等を表すとき、一般的に以下のような微分方程式によりxを表現することができる。
Figure JPOXMLDOC01-appb-M000005
 ここで、f(x)は自明ではないが、訓練データを用いることによりモデリングを行う。xの初期状態x(0)をx0で表すと、求めるべき状態は、以下のように表すことができる。
Figure JPOXMLDOC01-appb-M000006
 このように、f(x)のモデリングができれば、tについての積分を求めることにより、任意の時刻tにおける状態x(t)を推定することが可能となる。
 積分計算を数値計算によって求めることにより、f(x)を任意の関数としてもx(t)を推定することが可能となる。ここで、f(x)をニューラルネットワーク等の微分可能なモデルに適用することにより、x(t)が微分可能となり、勾配降下法等の最適化手法により、入力変数からf(x)を推定することができる。
 このようにネットワークを構成するために、図2における第1ネットワークとして、以下のような微分方程式をモデリングするネットワークを構成する。
Figure JPOXMLDOC01-appb-M000007
 すなわち、入力変数の時系列データと、第1ネットワーク自らの出力を入力して、現時刻における特徴量を出力する。出力された特徴量は、第2ネットワークにおいて状態へと変換されて出力される。この第2ネットワークの出力値と教師データとの誤差を求めることにより、第1ネットワークのパラメータを最適化する。
 入力されるデータは、理想的には連続したデータであることが望ましい。本実施形態においては、単位時刻ごとに数値計算を行うので、例えば、単位時刻ごとに離散化された入力変数及び状態に基づいて訓練を行う。この離散化は、データの入力前に行われてもよいし、データの入力後に訓練装置又は推定装置において行われてもよい。例えば、時刻tから時刻t+1までの間の量は、時刻tの値に変換されて入力される。これには限られず、時刻tから時刻t+1までの平均値を算出して、時刻tの値としてもよいし、適切に離散化した値を用いることができるのであれば、どのような手法で離散化してもよい。
 第1ネットワークは、訓練された結果、式(7)で示す数式の積分値を出力する、すなわち、特徴量h(t)を出力する自己回帰型のニューラルネットワークとして構成される。
 推定装置1の構成は、基本的に図3に示す推定装置1と同様の構成である。上記のように微分方程式をモデリングしたニューラルネットワークを訓練することにより、推定装置1の第1ネットワーク106が形成される。第2ネットワーク108及び第3ネットワーク104については、前述の実施形態と同様に、それぞれ、自己回帰モデルからの出力を状態へと変換するネットワーク及び初期状態から特徴量を抽出するネットワークとして訓練され、形成される。
 図6は、本実施形態に係る訓練装置2の機能を示すブロック図である。基本的には図4に示す第1実施形態に係る訓練装置2と同等であるが、マスク生成部の代わりに、離散化部218を備える。離散化部218は必要に応じて、データを離散化してネットワークへと入力する。第1ネットワーク208の構成以外の他の要素については、第1実施形態の同じ符号の要素と同等の機能を有する。
 図7は、本実施形態に係る訓練装置2の処理の流れを示すフローチャートである。図5と同じ符号が付されている箇所は、同じ処理を表す。異なる箇所は、訓練データを受け付けた(S100)後に、このデータを離散化する(S120)処理である。上述のように、データを離散化することにより、数値計算により微分方程式をモデリングすることが可能となる。
 以上のように、本実施形態によれば、微分方程式をモデリングした自己回帰型のニューラルネットワークを用いることにより、時刻ごとに物理現象をシミュレートすることが可能となる。例えば、プラントの挙動等は、微分方程式で表現することができる。この微分方程式をネットワークとして訓練することにより、ネットワークを介した数値処理をするだけであるので、時刻ごとに微分方程式を数値計算により解いて状態を取得するよりも高速にシミュレートすることができる。
 前述の全ての実施形態によれば、データ数が少なくモデル生成が困難でシミュレーションがしづらいものに対しても対応が可能となる。第1実施形態においては、決定論的に変数同士の結合を疎結合とすることができ、あまり意味がない変数同士の結合を抑制することができるためである。第2実施形態においては、微分方程式自体を機械学習の対象とすることにより、機械学習によらない回帰分析等であれば十分でない量の離散的なデータからも、値を外挿することができるためである。
 これらの実施形態は、強化学習や探索に用いることもできる。
 例えば、ある程度の精度が得られているシミュレータ等により出力されたデータセットに基づいて、前述の各実施形態の訓練を行うことにより、強化学習を行い、当該シミュレータの動作を高速に再現する推定装置を実装することも可能である。
 これは、既に取得されている予測モデルを用いたモデルベースの強化学習にも適用することが可能である。例えば、予測モデルにより予測されたデータに対して、よりよく制御が実行できるような強化学習を、前述の各実施形態に記載の方法を用いて実行することができる。別の例として、予測モデルに対してあるノイズが存在する場合に、よりよい制御値を、ビームサーチ、モンテカルロ木探索等の時系列の探索手法を用いて探索することができる。
 例えば、入力変数として過去及び現在のデータをモニタリングして、前述の推定装置の入力とすることにより、将来的な実機の挙動を予想することも可能である。
 なお、前述の各実施形態においては、推定装置1及び訓練装置2は、それぞれ別の装置であるとして説明したが、これには限られない。例えば、訓練装置2として訓練した装置そのものを用いて推定装置1として機能させてもよい。
 (変形例)
 前述においては、例えば、決定論的な推定をする場合に、訓練において疎行列マスクをパラメータ行列に対して適用することを説明したが、この疎行列マスクは、別の用途として用いることも可能である。
 疎行列マスクは、例えば、任意の時系列予測タスクにも利用可能である。一例として、需要予測等では、天候が需要に因果関係をもつ要素とそうでは無い要素とがあるが、このような観点において疎行列マスクを用いることができる。より具体的には、天候と因果関係を有する要素に対して有効となるマスクを適用し、このマスクを掛けた要素についてモデリングを実行してもよい。
 疎行列マスクは、別の例としては、グラフを表す行列(例えば、エッジを表す行列)に対して用いてもよい。一例として、電気回路等のように互いに接続が制限される場合や、建築における部屋同士及び部屋と廊下との接続関係を示す場合にも、この疎行列マスクを用いてモデリングをしてもよい。もちろん、言語のようにグラフを用いて表すことのできるモデリングにもこの疎行列マスクを用いることが可能である。
 疎行列マスクは、さらに別の例として、逐次的な計算を実行するモデルに適用してもよい。逐次的な計算の場合、変数同士の処理が決定論的に定義できることがある。このような場合に、疎行列マスクをパラメータ行列に適用することができる。パラメータ行列は、演算子を含むパラメータであってもよく、疎行列マスクにより変数同士の接続を表現し、変数同士の演算を疎行列マスクとパラメータ行列によって定義してもよい。このように、時系列のみならず、空間的或いは概念的に定義される離散的な連続量に対して疎行列マスクを適用してもよい。
 上記に限られず、パラメータ行列により変数の関係が定義される種々の場合に、疎行列マスクを適用することが可能である。
 以上のように、本変形例によれば、モデリングにおいて、スパースなパラメータを用いることにより、隠れ変数の次元に対するパラメータの数を抑制させることが可能となり、汎化性能を向上させることが可能となる。同様に、過学習をしてしまう可能性を抑制することもできる。
 (第3実施形態)
 次に、第1実施形態で説明した疎行列マスクについて、さらに一般化した手法について説明する。本実施形態においては、式(1)から式(4)のそれぞれのパラメータ行列に対する疎行列マスクの生成方法を説明する。
 図8は、本実施形態に係る疎行列マスクの生成処理を示すフローチャートである。一例として、プラントにおける最適化を実行する例について説明する。
 まず、マスク生成部204は、プラントの構成要素を頂点、その間の依存関係を辺とするグラフGを計算する(S1020)。マスク生成部204は、構成要素を頂点として定義し、例えば、構成要素Aが構成要素Bに影響を及ぼすのであれば、A → Bという辺が存在するグラフGを生成する。
 このグラフGは、プラントのシミュレータが存在する場合には、プラントのシミュレーションモデルに基づいて構築することができる。シミュレーションモデルの多くは、構成要同士を、その接続関係に基づいて接続することにより記述されている。この接続関係、パラメータの依存関係を、シミュレーションモデルから取得することが可能であり、これらの情報を用いることにより、マスク生成部204は、グラフGを生成することが可能となる。
 プラントのシミュレータが存在しない場合であっても、プラントの設計は、一般的に、P&ID(Piping and instrumentation diagram)、又は、配線計装図若しくは配管計装図等と呼ばれる図面を用いて記述されている。マスク生成部204は、これらの図面に基づいてグラフGを生成することができる。
 上記の例において、構成要素Aと構成要素Bとの間に接続関係があることは取得できるが、その依存関係の向きが不明な場合には、A → B及びB → Aの双方向の辺を有するグラフとして扱ってもよい。また、別の例として、依存関係の方向に拘わらず、全ての接続される頂点同士が、双方向の辺により接続されるとしてもよい。
 次に、マスク生成部204は、縮約グラフを生成する(S1022)。本処理は、部分グラフG’を計算し、このG’を縮約したグラフG’’を生成する2段階の処理であってもよい。
 (縮約グラフ生成の第1例)
 まず、マスク生成部204は、各観測変数に対応する頂点間において、他の観測変数を通らない最短経路を計算する。他の観測変数を通らないという条件は、必須の条件ではない。
 次に、マスク生成部204は、それらの経路上の頂点だけからなる部分グラフG’を計算する。
 そして、マスク生成部204は、部分グラフG’において、分岐することなく接続されている頂点群が同一の頂点となるように、グラフを縮約して、縮約グラフG’’を取得する。
 このよう処理を経ることにより、マスク生成部204は、因果関係を適切に表現できる縮約グラフを生成することが可能となる。すなわち、経路上のある頂点からの影響を適切に表現できるとともに、互いに依存性を有しない頂点間における影響を抑制することができる。
 (縮約グラフ生成の第2例)
 まず、潜在変数の次元が決定される。この次元の決定は、例えば、ハイパーパラメータチューニング、メタラーニング等により実行される。より具体的な一例としては、訓練データに基づいて、ハイパーパラメータを種々に変化させながら訓練を実行し、よい結果が取得できたハイパーパラメータから、潜在変数の次元を決定する。
 次に、マスク生成部204は、頂点のクラスタリングを実行し、望ましい潜在変数の次元に対応する個数の頂点のクラスタを取得する。このクラスタリングには、一例として、スペクトラルクラスタリングの手法を用いてもよい。これには限られず、K-means、ウォード法等、適切に潜在変数に対応して頂点のクラスタリングをできる手法であればよい。
 そして、マスク生成部204は、クラスタに属する頂点を同一の頂点として、縮約グラフG’’を取得する。
 第1例では、事前の学習等が必要ないという利点がある。一方で、第2例では、潜在変数の次元を設定することができるという利点がある。
 縮約グラフG’’が生成された後、マスク生成部204は、式(1)~式(4)のU、Ur、Uz(第2パラメータ行列)に対する疎行列マスク(第2疎行列マスク)を生成する(S1024)。
 図9は、縮約グラフG’’の一例を示す図である。○は、頂点を示し、中の数字が頂点の番号を、頂点間の直線が辺をしめす。辺は、無向で表されているが、上述したように、有向であってもよい。有効の場合、依存関係にしたがって片方向へ、又は、依存関係によらず双方向へのグラフであってもよい。
 マスク生成部204は、U等に対する疎行列マスクの生成処理においては、この縮約グラフG’’に基づいてマスクを生成する。縮約グラフG’’において、j番目の頂点からi番目の頂点までの距離がn以下である場合に、i行j列目の成分を1とし、それ以外である場合に、0である疎行列を取得する。
 以下に示す式は、図9において、n = 1とした場合の疎行列マスクの例を示す。
Figure JPOXMLDOC01-appb-M000008
例えば、図9の縮約グラフG’’が無向グラフである、又は、双方に方向を有する有向グラフである場合、式(8)のように疎行列マスクが表される。このような場合、グラフは、対象行列となる。一方で、頂点から頂点への一方的な依存関係が存在し、それを有向グラフとして表す場合には、対象行列であるとは限らない。
 また、n = 1の場合、自らまでの距離が0であると考えて、以下に示すように、対角成分が1である疎行列マスクとしてもよい。
Figure JPOXMLDOC01-appb-M000009
例えば、このように、自らの頂点に対して1を設定しておき、訓練中にU等の対角成分が0に近づくように学習を実行してもよい。
 ただし、疎行列マスクにおいて1の成分が多くなるとオーバーフィッティングをする可能性が高くなる。このため、疎行列マスクの1の成分が適切になるようにnを設定することが望ましい。例えば、n = 1、2等としてもよい。また、パラメータ行列の成分が多い場合には、これよりも大きい値であっても構わない。これは、対象とする系において、依存関係に基づき、どの程度の距離の頂点まで影響を及ぼすかを考慮して決定してもよい。また、データ同士の影響の冗長性を有するように、多少大きな値をnとして設定してもよい。
 図8に戻り、次に、マスク生成部204は、W、Wr、Wz(第1パラメータ行列)に対する疎行列マスク(第1疎行列マスク)を生成する(S1026)。このW等は、入力変数から潜在変数へと変換する行列である。このW等に対する疎行列マスクは、縮約グラフG’’の各頂点に属するグラフGの頂点が、G’’上におけるどの頂点まで依存関係を持たせるかを示すマスクとなる。
 例えば、図9の例において、縮約グラフG’’における頂点1に属するグラフGの各頂点は、縮約グラフG’’の頂点2、5にそれぞれ依存する。例えば、縮約グラフG’’の頂点1にグラフGにおける、頂点1、2、3が属していたとする。この場合、グラフGの頂点1、2、3から、縮約グラフG’’の頂点2、5には、影響を及ぼす可能性があると考えることができる。マスク生成部204は、このような影響を及ぼしうる潜在変数に対して、入力変数からの値を渡すように、疎行列マスクを生成する。
 例えば、上記のように、グラフGの頂点1、2、3から、縮約グラフG’’の頂点2、5に影響があるとする場合、マスク生成部204は、以下のような疎行列マスクを生成する。ただし、グラフGの各頂点は、縮約グラフG’’のいずれかの頂点に属するものとする。
Figure JPOXMLDOC01-appb-M000010
マスク生成部204は、例えば、グラフGの頂点jをj列目として、この頂点が属する縮約グラフG’’の頂点が頂点iに依存性を有するとする。この場合、W等に対する疎行列マスクのi行j列の成分を1とする。依存性の有しない行列の要素は、0とする。
 例えば、式(10)において、グラフGの頂点1に対応する1列目に着目すると、縮約グラフG’’の頂点2、5に対して依存性を有するため、2、5行目の成分が1となり、他の成分は0となる。同様に、2、3列目も成分を決定する。例えば、最後の列は、縮約グラフG’’の頂点6に属するとする。この場合、式(10)に示すように、最後の列の成分は、[0 0 1 1 0 0]Tとなる。
 上記と同様に、グラフGの頂点が、自らが属する縮約グラフG’’の頂点に対して依存性を有するとしてもよい。この場合、W等に対する疎行列マスクは、式(11)のように表すことができる。
Figure JPOXMLDOC01-appb-M000011
もちろん、上述したようにnを適切に設定することもできるし、片方の依存性を持たせる有向グラフとすることもできる。これらの適用については、上述に記載するU等に対する疎行列マスクの成分の決定と同様に計算すればよい。
 マスク生成部204は、このように、W等に対する疎行列マスクを生成する。
 以上のように、マスク生成部204は、疎行列マスクを生成する。このように疎行列マスクを生成することにより、潜在変数同士の変換を行うパラメータであるU等、また、入力変数から潜在変数への変換を行うパラメータであるW等について、疎行列マスクを、頂点の依存性に基づいて適切に生成することが可能となる。このように疎行列マスクを生成することにより、適切にパラメータから変換される変数同士における影響を適用しつつ、最適化をするパラメータ数を削減することが可能となる。前述の各実施形態のように、乱数として実行することもできるが、本実施形態のように、依存性に基づいたマスクを生成することにより、より高速かつ精度の高い訓練を実現することが可能となる。
 また、縮約グラフG’’を生成する場合に、第1例のように、部分グラフG’を生成してもよい。このように部分グラフを生成することにより、プラント等の構成をそのまま用いる場合と比較して、予測対象に影響がないと考えられる構成要素からのパラメータを介しての影響を小さくすることができる。
 また、グラフの縮約をすることにより、潜在変数の次元を調整することができる。特に、クラスタリングを用いることにより、この次元の調整を実行することができる。また、直接的にだけではなく、間接的に接続された要素間での影響を考えたモデルを生成することも可能となる。さらに、1単位時刻内で要素間の影響が伝わり得る場合においても、本実施形態によれば、適切にモデルの最適化をすることができる。また、1単位時刻内で要素間の影響がない場合であっても、潜在変数の成分と構成要素との対応関係に幅を持たせることが可能であり、この結果、訓練において潜在変数にも幅を持たせた変換をすることにより精度を向上させることができる。
 なお、上記においては、GRUの例を挙げたが、前述の実施形態で記載したように、LSTM、RNN等を用いても同様に処理することが可能である。この場合、マスク生成部204は、適切に各パラメータに対して疎行列マスクを生成する。
 上記のようにグラフを用いた接続関係の代わりに、グレンジャー因果、グラフィカルLasso等、他の手法を用いることも可能である。
 第1実施形態から第3実施形態の全ての態様において、図2における第3ネットワークを削除し、初期状態ではなく、過去の状態を用いて、最初の入力となる潜在変数h0を取得してもよい。例えば、過去の状態列s[-n]、s[-n + 1]、・・・、s[-1]、s[0]を用いて、図2に示されるような自己回帰ネットワークを最初の入力となる潜在変数h0を取得してもよい。このネットワークも疎行列マスクを用いたモデルであってもよい。例えば、第3実施形態で説明したような、疎行列マスクの生成方法が有効である。
 以上のように、本開示における態様によれば、前述の各実施形態の特徴を有するとともに、プラントを構成する各要素のダイナミクス、プラント全体のダイナミクスを物理モデル等として記述してシミュレーションを行うモデル(ホワイトボックスモデル)と比較して、モデル作成のコストが小さくなる。また、これらを全く与えずにデータのみから機械学習により予測を行うモデルを訓練するモデル(ブラックボックスモデル)と比較して、少量のデータから訓練可能であり、データ効率を向上させることができる。また、物理的な構成を反映することにより、過学習しづらく、外挿に強いモデルを訓練することが可能となる。
 このように、より高精度な予測を実行することにより、より安全、又は、より経済性の高い制御、運転等を行うことができる。さらに、詳細なモデリングを必要としないで精度を高めることができるので、モデリングの工数を削減し、様々な設備への展開を容易にすることもできる。また、省データにおける訓練を実現することが可能であるので、蓄積されたヒストリデータが少ない場合、又は、シミュレータが存在しないか、存在はするが低速である場合等にも容易に展開を行うことができる。
 前述した実施形態における推定装置1及び訓練装置2の各機能は、アナログ回路、デジタル回路又はアナログ回路とデジタル回路の混合回路で実現されてもよい。また、推定装置1及び訓練装置2は各機能の制御を行う制御回路を備えていてもよい。これらの各回路は、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等により実装されてもよい。
 上記の全ての記載において、推定装置1及び訓練装置2の一部または全部は、ハードウェアで構成されていてもよいし、CPU等が実行するソフトウェア(プログラム)の情報処理で構成されてもよい。ソフトウェアの情報処理で構成される場合には、推定装置1、訓練装置2及びそれらの少なくとも一部の機能を実現するソフトウェアをフレキシブルディスクやCD-ROM等の記憶媒体に収納し、コンピュータに読み込ませることにより、ソフトウェアの情報処理が実行されてもよい。また、通信ネットワークを介して当該ソフトウェアがダウンロードされてもよい。このようにして、コンピュータを上記の実施形態の装置とすることができる。また、このようにして、ソフトウェアによる情報処理がハードウェア資源を用いて具体的に実現されてもよい。さらに、ソフトウェアがASIC、FPGA等の回路に実装されることにより、ソフトウェアにより実行されることを想定していた情報処理がハードウェアにより実行されてもよい。モデルの生成や、生成したモデルを利用した処理は、例えば、GPU等のアクセラレータを使用して行ってもよい。
ソフトウェアを収納する記憶媒体の種類は特に限定されるものではない。記憶媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスクやメモリ等の固定型の記憶媒体であってもよい。記憶媒体は、コンピュータ内部に備えられてもよいし、コンピュータ外部に備えられてもよい。
 図10は、一実施形態におけるハードウェア構成の一例を示すブロック図である。推定装置1及び訓練装置2は、プロセッサ71と、主記憶装置72と、補助記憶装置73と、ネットワークインタフェース74と、デバイスインタフェース75と、を備え、これらがバス76を介して接続されたコンピュータ7として実現できる。
 なお、図10のコンピュータ7は、各構成要素を一つ備えているが、同じ構成要素を複数備えていてもよい。また、図10では、1台のコンピュータ7が示されているが、ソフトウェアが複数のコンピュータにインストールされて、当該複数のコンピュータそれぞれがソフトウェアの同一の又は異なる一部の処理を実行してもよい。この場合、コンピュータそれぞれがネットワークインタフェース74等を介して通信して処理を実行する分散コンピューティングの形態であってもよい。
 推定装置1及び訓練装置2の各種演算は、1又は複数のプロセッサ(例えば、GPU等のアクセラレータ)を用いて、又は、ネットワークを介した複数のコンピュータを用いて、並列処理で実行されてもよい。また、各種演算が、プロセッサ内に複数ある演算コアに振り分けられて、並列処理で実行されてもよい。また、本開示の処理、手段等の一部又は全部は、ネットワークを介してコンピュータ7と通信可能なクラウド上に設けられた処理回路及び記憶装置の少なくとも一方により実行され又は機能されるものであってもよい。このように、1台又は複数台のコンピュータによる並列コンピューティングの形態であってもよい。
 プロセッサ71は、コンピュータの制御装置及び演算装置を含む電子回路(処理回路、Processing circuit、Processing circuitry)であってもよい。また、プロセッサ71は、コア数を限定しないCPU又はGPUであってもよいし、専用の処理回路を含む半導体装置等であってもよい。プロセッサ71は、コンピュータ7の内部構成の各装置等から入力されたデータやプログラムに基づいて演算処理を行い、演算結果や制御信号を各装置等に出力することができる。プロセッサ71は、コンピュータ7のOS(Operating System)や、アプリケーション等を実行することにより、コンピュータ7を構成する各構成要素を制御してもよい。換言すると、推定装置1及び訓練装置2、並びにそれらの各ハードウェア構成は、1又は複数のプロセッサ71により実現されてもよい。ここで、処理回路は、1チップ上に配置された1又は複数の電気回路を指してもよいし、2つ以上のチップあるいはデバイス上に配置された1又は複数の電気回路を指してもよい。複数の電子回路を用いる場合、各電子回路は有線又は無線により通信してもよい。
 主記憶装置72は、プロセッサ71が実行する命令及び各種データ等を記憶する記憶装置であり、主記憶装置72に記憶された情報がプロセッサ71により読み出される。補助記憶装置73は、主記憶装置72以外の記憶装置である。なお、これらの記憶装置は、電子情報を格納可能な任意の電子部品を意味するものとし、メモリでもストレージでもよい。また、メモリには、揮発性メモリと、不揮発性メモリがあるが、いずれでもよい。推定装置1及び訓練装置2内において各種データを保存するためのメモリは、主記憶装置72又は補助記憶装置73により実現されてもよい。例えば、記憶部102、202は、この主記憶装置72又は補助記憶装置73に実装されていてもよい。別の例として、コンピュータ7がアクセラレータを備える場合には、記憶部102、202は、当該アクセラレータに備えられているメモリ内に実装されていてもよい。
  また、メモリ(記憶装置)1つに対して、複数のプロセッサが物理的又は電気的に接続されてもよいし、単数のプロセッサが物理的又は電気的に接続されてもよい。プロセッサ1つに対して、複数のメモリ(記憶装置)が物理的又は電気的に接続されてもよい。一実施形態におけるハードウェアが少なくとも1つのメモリ(記憶装置)とこのメモリ(記憶装置)に接続される複数のプロセッサで構成される場合、複数のプロセッサのうち少なくとも1つのプロセッサが、少なくとも1つのメモリ(記憶装置)に物理的に又は電気的に接続される構成を含んでもよい。また、複数のコンピュータに含まれるメモリ(記憶装置)とプロセッサによって、この構成が実現されてもよい。さらに、メモリ(記憶装置)がプロセッサと一体になっている構成(例えば、L1キャッシュ、L2キャッシュを含むキャッシュメモリ)を含んでもよく、この場合、これらメモリ(記憶装置)へのアクセスを制御するメモリコントローラをさらに含んでもよい。
 ネットワークインタフェース74は、無線又は有線により、通信ネットワーク8に接続するためのインタフェースである。ネットワークインタフェース74は、既存の通信規格に適合したものを用いればよい。ネットワークインタフェース74により、通信ネットワーク8を介して通信接続された外部装置9Aと情報のやり取りが行われてもよい。
 外部装置9Aは、例えば、カメラ、モーションキャプチャ、出力先デバイス、外部のセンサ、入力元デバイス等が含まれる。外部装置9Aとして、外部のメモリ(記憶装置)、例えば、ネットワークストレージ等を備えてもよい。また、外部装置9Aは、推定装置1及び訓練装置2の構成要素の一部の機能を有する装置でもよい。そして、コンピュータ7は、推定装置1及び訓練装置2の処理結果の一部又は全部を、クラウドサービスのように通信ネットワーク8を介して受信してもよいし、コンピュータ7の外部へと送信してもよい。
 デバイスインタフェース75は、外部装置9Bと直接接続するUSB(Universal Serial Bus)等のインタフェースである。外部装置9Bは、外部記憶媒体でもよいし、ストレージ装置でもよい。記憶部102、202は、外部装置9Bにより実現されてもよい。
 外部装置9Bは出力装置でもよい。出力装置は、例えば、画像を表示するための表示装置でもよいし、音声等を出力する装置等でもよい。例えば、LCD(Liquid Crystal Display)、CRT(Cathode Ray Tube)、PDP(Plasma Display Panel)、スピーカ等があるが、これらに限られるものではない。
 なお、外部装置9Bは入力装置でもよい。入力装置は、キーボード、マウス、タッチパネル等のデバイスを備え、これらのデバイスにより入力された情報をコンピュータ7に与える。入力装置からの信号はプロセッサ71に出力される。
 本明細書において、「a、b及びcの少なくとも1つ(一方)」又は「a、b又はcの少なくとも1つ(一方)」の表現(同様な表現を含む)は、a、b、c、a-b、a-c、b-c、a-b-cのいずれかの組み合わせを含む。また、a-a、a-b-b、a-a-b-b-c-c等のいずれかの要素の複数のインスタンスとの組み合わせをカバーする。さらに、a-b-c-dのように、さらにdを有する組み合わせ、すなわち、a、b及び/又はc以外の他の要素が加えられた組み合わせをカバーする。
 本明細書において、「データに基づいて」の表現(同様な表現を含む)は、特に断りがない場合、各種データそのものを入力として用いる場合や、各種データに何らかの処理を行ったもの(例えば、ノイズ加算したもの、正規化したもの、各種データの中間表現等)を入力として用いる場合を含む。
 以上、本開示の実施形態について詳述したが、本開示は上記した個々の実施形態に限定されるものではない。特許請求の範囲に規定された内容及びその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲において種々の追加、変更、置き換え及び部分的削除等が可能である。例えば、前述した全ての実施形態において、説明に用いた数値は、一例として示したものであり、これらに限られるものではない。
1:推定装置、
100:入力部、102:記憶部、
104:第3ネットワーク、106:第1ネットワーク、108:第2ネットワーク、
110:出力部、
2:訓練装置、
200:入力部、202:記憶部、204:マスク生成部、
206:第3ネットワーク、208:第1ネットワーク、210:第2ネットワーク、
212:誤差算出部、214:パラメータ更新部、216:出力部、218:離散化部

Claims (31)

  1.  1又は複数のメモリと、
     1又は複数のプロセッサと、を備え、
     前記1又は複数のプロセッサは、
      第1ネットワークに、時系列の入力変数及び前記第1ネットワークの出力である潜在変数を入力して、現ステップにおける潜在変数を抽出し、
      第2ネットワークに、前記潜在変数を入力して、前記入力変数に対する時系列の状態を推定する、
     ように構成された、
     推定装置。
  2.  前記第1ネットワークは、その入力として前記第2ネットワークの出力を含まない、
     請求項1に記載の推定装置。
  3.  前記第1ネットワークは、パラメータ行列と同じ次元を有する疎行列で表されるマスクである疎行列マスクが適用された前記パラメータ行列を有する、自己回帰モデルを備える、
     請求項1又は請求項2に記載の推定装置。
  4.  前記疎行列マスクは、ランダムに要素が決定された行列である、
     請求項3に記載の推定装置。
  5.  前記疎行列マスクは、二項分布に基づいて要素が決定された行列である、
     請求項4に記載の推定装置。
  6.  前記疎行列マスクは、着目している系の構造に基づいて要素が決定された行列である、
     請求項3に記載の推定装置。
  7.  前記パラメータ行列は、前記入力変数から前記潜在変数へと変換する第1パラメータ行列と、前記潜在変数から前記潜在変数へと変換する第2パラメータ行列と、を備え、
     前記疎行列マスクは、前記第1パラメータ行列に適用する第1疎行列マスクと、前記第2パラメータ行列に適用する第2疎行列マスクと、を備える、
     請求項3に記載の推定装置。
  8.  前記1又は複数のプロセッサは、
      前記入力変数の各要素に対応するグラフを計算し、
      前記グラフを縮約した縮約グラフを計算し、
      前記縮約グラフの次元を前記潜在変数の次元として、前記第1疎行列マスク及び前記第2疎行列マスクを生成する、
     請求項7に記載の推定装置。
  9.  前記1又は複数のプロセッサは、
      前記入力変数のそれぞれの要素に対応する前記グラフの頂点と、当該要素に対応する前記グラフの頂点が属する前記縮約グラフの頂点から所定距離内に存在する前記縮約グラフの頂点を接続する要素を1とし、それら以外の要素を0として、前記第1疎行列マスクを生成する、
     請求項8に記載の推定装置。
  10.  前記1又は複数のプロセッサは、
      前記縮約グラフのそれぞれの頂点から、所定距離内に存在する前記縮約グラフの頂点を接続する要素を1とし、それら以外の要素を0として、前記第2疎行列マスクを生成する、
     請求項8に記載の推定装置。
  11.  前記1又は複数のプロセッサは、
      前記入力変数のそれぞれの要素から、他の要素を通過せずに到達できる要素に基づいて、前記グラフの部分グラフを生成し、
      前記部分グラフにおいて、分岐を含まない頂点同士を接続する頂点を有する前記縮約グラフを生成する、
     請求項8から請求項10のいずれかに記載の推定装置。
  12.  前記1又は複数のプロセッサは、
      前記グラフにおいて、クラスタリングをすることにより前記縮約グラフを生成する、
     請求項8から請求項10のいずれかに記載の推定装置。
  13.  前記第1ネットワークは、疎行列で表されるパラメータ行列を有する、自己回帰モデルを備える、
     請求項1又は請求項2に記載の推定装置。
  14.  前記第1ネットワークは、微分方程式の解を与えるモデルである、
     請求項1から請求項13のいずれかに記載の推定装置。
  15.  前記微分方程式は、前記第1ネットワークの解の微分が、離散化された前記入力変数及び前記第1ネットワークの出力の関数として表される、
     請求項14に記載の推定装置。
  16.  前記1又は複数のプロセッサは、
      第3ネットワークに、初期状態を入力し、前記初期状態の潜在変数を抽出し、
      前記第1ネットワークに、前記初期状態の潜在変数を入力する、
     請求項1から請求項15のいずれかに記載の推定装置。
  17.  1又は複数のメモリと、
     1又は複数のプロセッサと、を備え、
     前記1又は複数のプロセッサは、
      第1ネットワークに、入力変数及び前記第1ネットワークの出力を入力して潜在変数を抽出し、
      第2ネットワークに、前記潜在変数を入力して状態量を取得し、
      前記状態量に基づいて、前記第1ネットワーク及び前記第2ネットワークを訓練する、
     訓練装置。
  18.  前記第1ネットワークは、その入力として前記第2ネットワークの出力を含まない、
     請求項17に記載の訓練装置。
  19.  前記第1ネットワークは、自己回帰モデルを備え、
     前記1又は複数のプロセッサは、
      前記自己回帰モデルのパラメータ行列と同じ次元を有する疎行列で表されるマスクである疎行列マスクを生成し、
      前記疎行列マスクが適用された前記パラメータ行列を有する自己回帰モデルを訓練する、
     請求項17又は請求項18に記載の訓練装置。
  20.  前記第1ネットワークは、パラメータ行列が疎行列で表される自己回帰モデルを備え、
     前記1又は複数のプロセッサは、
      前記パラメータ行列を有する自己回帰モデルを訓練する、
     請求項17又は請求項18に記載の訓練装置。
  21.  前記第1ネットワークは、微分方程式の解を与えるモデルであり、
     前記1又は複数のプロセッサは、
      前記第1ネットワークに、前記入力変数を離散化して入力し、前記第1ネットワークを訓練する、
     請求項17又は請求項18のいずれかに記載の訓練装置。
  22.  前記微分方程式は、前記第1ネットワークの解の微分が、前記離散化された入力変数及び前記第1ネットワークの出力の関数として表される、
     請求項21に記載の訓練装置。
  23.  前記1又は複数のプロセッサは、
      第3ネットワークに、初期状態を入力し、前記初期状態の特徴量を抽出し、
      前記第1ネットワークに、前記初期状態の特徴量を入力する、
     請求項17から請求項22のいずれかに記載の訓練装置。
  24.  前記1又は複数のプロセッサは、
      前記状態量に基づいて、前記第1ネットワーク、前記第2ネットワーク及び前記第3ネットワークを訓練する、
     請求項23に記載の訓練装置。
  25.  1又は複数のプロセッサが、
      第1ネットワークに、時系列の入力変数及び前記第1ネットワークの出力を入力して特徴量を抽出し、
      第2ネットワークに、前記特徴量を入力して、前記入力変数に対する時系列の状態を推定する、
     ことを備える、推定方法。
  26.  1又は複数のプロセッサが、
      第1ネットワークに、入力変数及び前記第1ネットワークの出力を入力して特徴量を抽出し、
      第2ネットワークに、前記特徴量を入力して状態量を取得し、
      前記状態量に基づいて、前記第1ネットワーク及び前記第2ネットワークを訓練する、
     ことを備える、訓練方法。
  27.  請求項26に記載の訓練方法を用いて、前記第1ネットワーク及び前記第2ネットワークを生成する方法。
  28.  1又は複数のコンピュータに、
      第1ネットワークに、時系列の入力変数及び前記第1ネットワークの出力を入力して特徴量を抽出する手段、
      第2ネットワークに、前記特徴量を入力して、前記入力変数に対する時系列の状態を推定する手段、
     として機能させるプログラム。
  29.  1又は複数のコンピュータに、
      第1ネットワークに、入力変数及び前記第1ネットワークの出力を入力して特徴量を抽出する手段、
      第2ネットワークに、前記特徴量を入力して状態量を取得する手段、
      前記状態量に基づいて、前記第1ネットワーク及び前記第2ネットワークを訓練する手段、
     として機能させるプログラム。
  30.  1又は複数のメモリと、
     1又は複数のプロセッサと、を備え、
     前記1又は複数のプロセッサは、
      第1パラメータ行列により、現ステップの入力変数を潜在変数の次元へと変換し、
      第2パラメータ行列により、前ステップの前記潜在変数を変換し、
      前記第1パラメータ行列の変換及び前記第2パラメータ行列の変換に基づいて、現ステップの前記潜在変数を出力する、
     推定装置であって、
     前記第1パラメータ行列は、前記入力変数のそれぞれの要素と、前記潜在変数のそれぞれの要素との接続を表す第1疎行列マスクが適用された行列であり、
     前記第2パラメータ行列は、前記潜在変数のそれぞれの要素同士の接続を表す第2疎行列マスクが適用された行列である、
     推定装置。
  31.  1又は複数のメモリと、
     1又は複数のプロセッサと、を備え、
     前記1又は複数のプロセッサは、
      第1パラメータ行列により、現ステップの入力変数を潜在変数の次元へと変換し、
      第2パラメータ行列により、前ステップの前記潜在変数を変換し、
      前記第1パラメータ行列の変換及び前記第2パラメータ行列の変換に基づいて、現ステップの前記潜在変数を出力し、
      前記出力に基づいて、前記第1パラメータ行列及び前記第2パラメータ行列を訓練する、
     訓練装置であって、
     前記第1パラメータ行列は、前記入力変数のそれぞれの要素と、前記潜在変数のそれぞれの要素との接続を表す第1疎行列マスクが適用された行列であり、
     前記第2パラメータ行列は、前記潜在変数のそれぞれの要素同士の接続を表す第2疎行列マスクが適用された行列である、
     訓練装置。
PCT/JP2020/030065 2019-08-05 2020-08-05 訓練装置、推定装置、訓練方法、推定方法、プログラム及びコンピュータ読み取り可能な非一時的記憶媒体 WO2021025075A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021537354A JPWO2021025075A1 (ja) 2019-08-05 2020-08-05

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019143956 2019-08-05
JP2019-143956 2019-08-05

Publications (1)

Publication Number Publication Date
WO2021025075A1 true WO2021025075A1 (ja) 2021-02-11

Family

ID=74502730

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/030065 WO2021025075A1 (ja) 2019-08-05 2020-08-05 訓練装置、推定装置、訓練方法、推定方法、プログラム及びコンピュータ読み取り可能な非一時的記憶媒体

Country Status (2)

Country Link
JP (1) JPWO2021025075A1 (ja)
WO (1) WO2021025075A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220048A (zh) * 2021-05-31 2021-08-06 长安大学 一种基于数值微分的锅炉温度调整方法与系统
US11281722B2 (en) * 2020-01-06 2022-03-22 International Business Machines Corporation Cognitively generating parameter settings for a graph database
JP7088427B1 (ja) 2022-01-20 2022-06-21 富士電機株式会社 運転支援装置、運転支援方法及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190050734A1 (en) * 2017-08-08 2019-02-14 Beijing Deephi Intelligence Technology Co., Ltd. Compression method of deep neural networks
US20190108436A1 (en) * 2017-10-06 2019-04-11 Deepcube Ltd System and method for compact and efficient sparse neural networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190050734A1 (en) * 2017-08-08 2019-02-14 Beijing Deephi Intelligence Technology Co., Ltd. Compression method of deep neural networks
US20190108436A1 (en) * 2017-10-06 2019-04-11 Deepcube Ltd System and method for compact and efficient sparse neural networks

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YOTA MIZUTANI; YOSHIMASA TSURUOKA: "Introducing an Environment Model based on Hidden States for Model-Based Deep Reinforcement Learning", GAME PROGRAMMING WORKSHOP 2018 PROCEEDINGS; NOVEMBER 16-18, 2018, 9 November 2018 (2018-11-09), pages 72 - 79, XP009526765 *
ZHANG DINGSHENG, RUBANOVA YULIA, BETTENCOURT JESSE, DUVENAUD DAVID: "Neural ordinary differential equations", ARXIV.ORG/ABS/1806.07366V1, 19 June 2018 (2018-06-19), XP055791967, Retrieved from the Internet <URL:https://arxiv.org/pdf/1806.07366v1.pdf> [retrieved on 20201026] *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11281722B2 (en) * 2020-01-06 2022-03-22 International Business Machines Corporation Cognitively generating parameter settings for a graph database
CN113220048A (zh) * 2021-05-31 2021-08-06 长安大学 一种基于数值微分的锅炉温度调整方法与系统
JP7088427B1 (ja) 2022-01-20 2022-06-21 富士電機株式会社 運転支援装置、運転支援方法及びプログラム
JP2023106043A (ja) * 2022-01-20 2023-08-01 富士電機株式会社 運転支援装置、運転支援方法及びプログラム

Also Published As

Publication number Publication date
JPWO2021025075A1 (ja) 2021-02-11

Similar Documents

Publication Publication Date Title
Goswami et al. Transfer learning enhanced physics informed neural network for phase-field modeling of fracture
US11714937B2 (en) Estimating physical parameters of a physical system based on a spatial-temporal emulator
WO2021025075A1 (ja) 訓練装置、推定装置、訓練方法、推定方法、プログラム及びコンピュータ読み取り可能な非一時的記憶媒体
Ugalde et al. Computational cost improvement of neural network models in black box nonlinear system identification
US11720727B2 (en) Method and system for increasing the resolution of physical gridded data
KR102011788B1 (ko) 계층적 시각 특징을 이용한 시각 질의 응답 장치 및 방법
CN114219076A (zh) 量子神经网络训练方法及装置、电子设备和介质
JP2018195244A (ja) Odトラヒック予測装置、方法、及びプログラム
Thomison et al. A model reification approach to fusing information from multifidelity information sources
CN111566676A (zh) 量子计算设备设计
CN116324795A (zh) 使用网格表示和图形神经网络模拟物理环境
US10679119B2 (en) Handling signal saturation in spiking neural networks
US11675951B2 (en) Methods and systems for congestion prediction in logic synthesis using graph neural networks
JP7497516B2 (ja) 等式制約を代数モデルに課すための射影方法
Ororbia et al. Design synthesis of structural systems as a Markov decision process solved with deep reinforcement learning
JP6219528B2 (ja) シミュレーションシステム、及びシミュレーション方法
Duan et al. Non-intrusive data-driven reduced-order modeling for time-dependent parametrized problems
US20230059447A1 (en) Training device, plant, method of generating model, inference device, inference method, and method of controlling plant
Servadei et al. Using machine learning for predicting area and firmware metrics of hardware designs from abstract specifications
WO2021178402A1 (en) Automated design tool
CN116134415A (zh) 用于更新交叉阵列的脉冲生成
Qian et al. Frequency-domain physical constrained neural network for nonlinear system dynamic prediction
Takamoto et al. CAPE: channel-attention-based PDE parameter embeddings for SciML
Gladkov et al. The development of hybrid algorithms and program solutions of placement and routing problems
Volochiy et al. Formalized development of the state transition graphs using the Erlang phase method

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: 20849574

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021537354

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20849574

Country of ref document: EP

Kind code of ref document: A1