WO2023112086A1 - 情報処理装置、プログラム及び情報処理方法 - Google Patents

情報処理装置、プログラム及び情報処理方法 Download PDF

Info

Publication number
WO2023112086A1
WO2023112086A1 PCT/JP2021/045819 JP2021045819W WO2023112086A1 WO 2023112086 A1 WO2023112086 A1 WO 2023112086A1 JP 2021045819 W JP2021045819 W JP 2021045819W WO 2023112086 A1 WO2023112086 A1 WO 2023112086A1
Authority
WO
WIPO (PCT)
Prior art keywords
matrix
likelihood
moving
probability
log
Prior art date
Application number
PCT/JP2021/045819
Other languages
English (en)
French (fr)
Inventor
美帆 川村
雄一 佐々木
Original Assignee
三菱電機株式会社
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 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to JP2023546398A priority Critical patent/JP7408025B2/ja
Priority to PCT/JP2021/045819 priority patent/WO2023112086A1/ja
Priority to CN202180104803.XA priority patent/CN118369671A/zh
Priority to DE112021008320.1T priority patent/DE112021008320T5/de
Priority to KR1020247018161A priority patent/KR20240096612A/ko
Priority to TW111121790A priority patent/TWI829195B/zh
Publication of WO2023112086A1 publication Critical patent/WO2023112086A1/ja
Priority to US18/656,785 priority patent/US20240289657A1/en

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
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • 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
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0985Hyperparameter optimisation; Meta-learning; Learning-to-learn

Definitions

  • the present disclosure relates to an information processing device, a program, and an information processing method.
  • FFBS Forward Filtering-Backward Sampling
  • An information processing device is described that adjusts the parameters that the FFBS execution unit uses when identifying unit series data and classes by executing BGS (Blocked Gibbs Sampler) processing with an execution unit.
  • BGS Block Gibbs Sampler
  • Such an information processing device can be used as a learning device for learning the movement of a robot.
  • the forward probability ⁇ [t][k][c] that a unit sequence xj of length k is classified into class c is obtained with a certain time step t as the end point.
  • the length and class of the unit sequence are sampled backward according to the forward probability ⁇ [t][k][c].
  • the length k of the unit sequence xj obtained by segmenting the observation sequence S and the class c of each unit sequence xj are determined.
  • an object of one or more aspects of the present disclosure is to enable efficient calculation of forward probabilities.
  • An information processing device is a prediction value that is a value obtained by predicting a phenomenon for each length up to the maximum length of a predetermined unit sequence for dividing a time series of a predetermined phenomenon. and the variance of the predicted value, the logarithmic likelihood obtained by transforming the likelihood of generating the observed value, which is the value obtained from the phenomenon at each time step, into a logarithm, the length and the time step as elements of a matrix arranged in ascending order; a first matrix moving unit for generating a moved log-likelihood matrix by performing a moving process of moving the log-likelihoods other than the top of the one line in the log-likelihood matrix so as to line up in the In the log-likelihood matrix, by adding the log-likelihood from the beginning of the line to each component for each line, the continuous generation probability of each component is calculated, and a continuous generation probability matrix is obtained.
  • a continuous generation probability calculation unit that generates and, in the continuous generation probability matrix, move the continuous generation probability so that the movement destination and the movement source of the component whose value is moved in the movement processing are reversed, a second matrix moving unit that generates a continuously generated probability matrix; and in the moving continuously generated probability matrix, values obtained by adding the continuously generated probability to each component in the ascending order of the length for each time step.
  • a forward probability calculation unit that calculates a forward probability that a unit sequence of a certain length is classified into a certain class with a certain time step as an end point.
  • a program causes a computer to perform a prediction value, which is a value obtained by predicting the phenomenon for each length of a predetermined unit series for dividing a time series of a predetermined phenomenon, and the prediction Logarithmic likelihood obtained by transforming the likelihood of generating an observed value, which is a value obtained from the phenomenon at each time step, into a logarithm in a combination of the variances of the values, in ascending order of the length and the time step.
  • a first matrix moving unit for generating a moving log-likelihood matrix by performing a moving process of moving the log-likelihoods other than the head of the one line in the log-likelihood matrix, in the moving log-likelihood matrix , for each line, by adding the logarithmic likelihood from the beginning of the one line to each component, the continuous generation probability of each component is calculated, and a continuous generation probability matrix is generated.
  • the calculation unit generates a moving continuously generated probability matrix by moving the continuously generated probability in the continuously generated probability matrix so that the moving destination and the moving source of the components whose values are moved in the moving process are reversed.
  • a certain time step is an end point, and functions as a forward probability calculation unit that calculates the forward probability that a unit sequence of a certain length is classified into a certain class.
  • An information processing method includes a predicted value that is a value obtained by predicting the phenomenon for each length of a predetermined unit series for dividing a time series of a predetermined phenomenon, and the predicted value
  • the logarithmic likelihood obtained by converting the likelihood, which is the probability of generating the observed value, which is the value obtained from the phenomenon at each timestep, into logarithm is arranged in ascending order of the length and the timestep
  • a log-likelihood matrix shown as an element of the matrix the log-likelihood when the length and the time step increase by one unit are arranged in one line in ascending order of the length.
  • a moving log-likelihood matrix is generated by performing moving processing to move the log-likelihoods other than the top of the line, and in the moving log-likelihood matrix, each line from the top of the line is By adding the logarithmic likelihood up to the component, the continuous generation probability of each component is calculated to generate a continuous generation probability matrix, and in the continuous generation probability matrix, the component whose value is moved by the movement processing By moving the continuous generation probability so that the movement destination and the movement source are reversed, a moving continuous generation probability matrix is generated, and in the moving continuous generation probability matrix, at each time step, the length of It is characterized by calculating a forward probability that a unit sequence of a certain length is classified into a certain class with a certain time step as an end point using values obtained by adding the successive generation probabilities to each component in ascending order.
  • forward probabilities can be efficiently calculated.
  • FIG. 1 is a block diagram schematically showing the configuration of an information processing device according to an embodiment
  • FIG. FIG. 4 is a schematic diagram showing an example of a log-likelihood matrix
  • It is a block diagram which shows the structure of a computer roughly.
  • 4 is a flowchart showing operations in an information processing device
  • FIG. 4 is a schematic diagram for explaining a multi-dimensional array of log-likelihood matrices
  • It is a schematic diagram for explaining left rotation operation.
  • FIG. 4 is a schematic diagram showing an example of a rotated log-likelihood matrix
  • FIG. 4 is a schematic diagram showing an example of a continuously generated probability matrix
  • It is the schematic for demonstrating right rotation operation
  • FIG. 4 is a schematic diagram showing an example of a rotation continuation generation probability matrix
  • FIG. 2 is a schematic diagram showing a graphical model using a Gaussian process in which an observation series is a unit series, a class of the unit series, and parameters of the Gaussian process of the class;
  • FIG. 1 is a block diagram schematically showing the configuration of an information processing apparatus 100 according to an embodiment.
  • Information processing apparatus 100 includes likelihood matrix calculation section 101 , storage section 102 , matrix rotation operation section 103 , continuous generation probability parallel calculation section 104 , and forward probability sequential parallel calculation section 105 .
  • an observation sequence S be changes in observed values over time.
  • the observed series S can be segmented into predetermined classes based on waveforms with similar shapes, and can be classified into unit series xj representing waveforms of respective predetermined shapes.
  • the observed value is the value obtained from the phenomenon for each time step and the length up to the maximum length of the predetermined unit series for dividing the time series of the phenomenon.
  • a model in which one state expresses one continuous unit sequence x j can be used by making the output of the hidden semi-Markov model a Gaussian process. .
  • each class can be represented by a Gaussian process, and the observation sequence S is generated by connecting the unit sequences xj generated from each class. Then, by learning the parameters of the model based only on the observation sequence S, it is possible to estimate the segmentation points that segment the observation sequence S into the unit sequence x j and the class of the unit sequence x j without supervision. can.
  • the time series data is generated by a hidden semi-Markov model whose output distribution is a Gaussian process
  • the class c j is determined by the following equation (1)
  • the unit series x j is the following (2) is generated by the formula.
  • the observation sequence S is segmented into unit sequences x j , and each unit sequence x j is divided into classes c Classification becomes possible.
  • the output value x i at the time step i of the unit sequence is expressed as a continuous trajectory by learning with Gaussian process regression. Therefore, in a Gaussian process, when a set (i, x) of output values x at time step i of unit sequences belonging to the same class is obtained, the predicted distribution of output values x' at time step i' is as follows ( 3) It becomes a Gaussian distribution represented by the formula.
  • k is a vector having k (i p , i q ) as elements
  • c is a scalar that becomes k (i', i')
  • C is the following ( 4) It is a matrix with elements as shown in the formula.
  • is a hyperparameter representing the precision of noise included in the observed value.
  • a Gaussian kernel represented by the following equation (5), which is widely used for Gaussian process regression, can be used.
  • equation (5) ⁇ 0 , ⁇ 2 and ⁇ 3 are kernel parameters.
  • the length of the unit sequence x j classified into one class c differs depending on the class c . must also be estimated.
  • the length k of the unit sequence xj can be determined by sampling from the probability that the unit sequence xj of length k ending at the data point at time step t is classified into class c. Therefore, in order to determine the length k of the unit sequence x j , the probabilities of combinations of various lengths k and all classes c are subjected to FFBS (Forward Filtering-Backward Sampling) as described later. must be calculated by FFBS (Forward Filtering-Backward Sampling) as described later. must be calculated by FFBS (Forward Filtering-Backward Sampling) as described later.
  • the unit series xj can be classified into class c.
  • FFBS FFBS
  • ⁇ [t][k][c] which is the probability that a unit sequence x j of length k is classified into class c with the data point at time step t as the end point, is calculated forward, and the probability The length k and the class c of the unit sequence x j can be sampled and determined from the rear according to ⁇ [t][k][c].
  • the forward probability ⁇ [t][k][c] is recursively obtained by marginalizing the possibility of transition from time step tk to time step t, as shown in equation (11) below. can be calculated.
  • All probabilities ⁇ [t][k][c] can be obtained by performing such calculations forward from the probability ⁇ [0][*][*] using dynamic programming.
  • sampling based on the probability ⁇ [t][k][c] is sequentially performed from the rear, so that the length k and class c of all unit sequences xj can be determined.
  • BGS Block Gibbs Sampler
  • the parameter N(c n,j ) and the parameter N(c n,j ,c n,j+1 ) used when calculating the transition probability by the equation (13) described later are specified. .
  • parameter N(c n,j ) represents the number of segments that fell into class c n,j
  • parameter N(c n,j , c n,j+1 ) represents the number of segments from class c n,j to class c n , j+1
  • the parameters N(c n,j ) and N(c n,j ,c n,j+1 ) as the current parameters N(c′) and N(c′,c).
  • both the length k of the unit sequence xj when segmenting the observation sequence S and the class c of each unit sequence xj are regarded as hidden variables and sampling is performed simultaneously.
  • the probability ⁇ [t][k][c] that a unit sequence xj of length k is classified into class c is obtained with a certain time step t as the end point.
  • the probability ⁇ [ t ] [ k][c] can be obtained by calculating the following equation (7).
  • Equation (7) C is the number of classes, and K is the maximum length of the unit sequence.
  • Xc) is the probability that segment s′ t ⁇ k:k is generated from class c, and is obtained by the following equation (8).
  • ⁇ ) in equation (8) is a Poisson distribution with an average of ⁇ , which is a probability distribution of the segment length.
  • c') in the equation (11) represents the transition probability of the class, and is obtained by the following equation (9).
  • N(c') represents the number of segments that have become class c'
  • N(c', c) represents the number of transitions from class c' to class c. ing.
  • k' represents the length of the segment before segment s'tk:k
  • c' represents the class of the segment before segment s'tk:k
  • it is marginalized for all lengths k and classes c.
  • Formula (7) is a recurrence formula, and all patterns can be calculated by dynamic programming by calculating from the probability ⁇ [1][1][*].
  • the length of the unit sequence and the class are sampled backward to obtain the length of the unit sequence x j segmented from the observed sequence S. , and the class c of each unit sequence xj can be determined.
  • K' is an integer of 2 or more.
  • likelihood matrix calculation section 101 obtains probability p k,t for all combinations of unit sequence length k and time step t, and obtains logarithmic likelihood matrix D1.
  • FIG. 2 is a schematic diagram showing an example of the log-likelihood matrix D1.
  • the logarithmic-likelihood matrix D1 is calculated for each length k up to the maximum length K′ of a predetermined unit sequence for dividing the time series of a predetermined phenomenon.
  • logarithmically _ _ We denote the transformed log-likelihoods as elements of a matrix of increasing length k and timestep t.
  • the storage unit 102 stores information necessary for processing in the information processing device 100 .
  • storage section 102 stores log-likelihood matrix D ⁇ b>1 calculated by likelihood matrix calculation section 101 .
  • a matrix rotation operation unit 103 rotates the log-likelihood matrix D1 in order to realize parallel computation.
  • matrix rotation operation section 103 acquires log-likelihood matrix D1 from storage section 102 .
  • matrix rotation operation section 103 rotates the components of each row in the column direction according to a predetermined rule to generate a rotated log-likelihood matrix D2.
  • the rotated log-likelihood matrix D2 is stored in storage section 102 .
  • the matrix rotation operation unit 103 arranges the logarithmic likelihoods when the length k and the time step t increase by one unit in the logarithmic likelihood matrix D1 so that they line up in ascending order of the length k. In addition, it functions as a first matrix moving unit that performs moving processing to move the logarithmic likelihoods of the lines other than the leading one. Matrix rotation operation section 103 generates a rotated log-likelihood matrix D2 as a moving log-likelihood matrix from log-likelihood matrix D1 by the moving difference processing.
  • the matrix rotation operation unit 103 rotates a continuously generated probability matrix D3, which will be described later, in order to realize parallel computation.
  • the matrix rotation operation unit 103 acquires the continuously generated probability matrix D3 from the storage unit 102 .
  • the matrix rotation operation unit 103 rotates the components of each row in the column direction according to a predetermined rule to generate a continuously generated rotated probability matrix D4.
  • the rotation continuation generation probability matrix D4 is stored in the storage unit 102 .
  • the matrix rotation operation unit 103 rotates the continuously generated probability matrix D3 such that the movement destination and the movement source of the components whose values are moved by the movement processing for the log-likelihood matrix D1 are reversed.
  • it functions as a second matrix moving unit that generates a rotation continuously generated probability matrix D4, which is a moving continuously generated probability matrix.
  • the log-likelihood matrix D1 has the length k arranged in the row direction and the time step t arranged in the column direction.
  • the log-likelihood is shifted toward a smaller time step t by the number of columns corresponding to the number of rows minus 1.
  • the matrix rotation operation unit 103 shifts the continuous generation probability to a larger time step t by the number of columns corresponding to the value obtained by subtracting 1 from the number of rows in each row of the continuous generation probability matrix D3.
  • the continuously generated probability parallel calculation unit 104 uses the rotated log-likelihood matrix D2 to calculate the probability GP continuously generated from the Gaussian process from the time corresponding to a certain time step arranged in the same column. For example, the continuously generated probability parallel calculation unit 104 reads the rotated log-likelihood matrix D2 from the storage unit 102, and sequentially adds the values of each row from the first row for each column, thereby obtaining the continuously generated probability matrix D3. Generate. Continuous generation probability matrix D3 is stored in storage unit 102 .
  • the continuous generation probability parallel calculation unit 104 adds log-likelihoods from the beginning of each line to each component for each line in the column direction, By calculating the continuous generation probability of each component and setting it as the value of each component, it functions as a continuous generation probability calculation unit that generates a continuous generation probability matrix.
  • the forward probability sequential parallel calculation unit 105 uses the rotating continuous generation probability matrix D4 stored in the storage unit 102 to sequentially calculate the forward probability P forward for the time corresponding to the time step. For example, the forward probability sequential parallel calculation unit 105 reads the rotation continuous generation probability matrix D4 from the storage unit 102, multiplies each column by p(c
  • the marginal probability is the sum of probabilities over all unit sequence lengths and classes.
  • the forward-probability sequential parallel calculation unit 105 adds the continuous generation probabilities up to each component in ascending order of length k at each time step t in the rotation continuous generation probability matrix D4, It functions as a forward-probability calculator that calculates forward-probability.
  • the information processing apparatus 100 described above can be realized by, for example, a computer 110 as shown in FIG.
  • the computer 110 includes a processor 111 such as a CPU (Central Processing Unit), a memory 112 such as a RAM (Random Access Memory), an auxiliary storage device 113 such as a HDD (Hard Disk Drive), and inputs such as a keyboard, mouse or microphone. It includes an input device 114 functioning as a unit, an output device 115 such as a display or a speaker, and a communication device 116 such as a NIC (Network Interface Card) for connecting to a communication network.
  • a processor 111 such as a CPU (Central Processing Unit)
  • a memory 112 such as a RAM (Random Access Memory)
  • an auxiliary storage device 113 such as a HDD (Hard Disk Drive)
  • inputs such as a keyboard, mouse or microphone.
  • It includes an input device 114 functioning as a unit, an output device 115 such as a display or a speaker, and
  • the likelihood matrix calculation unit 101, the matrix rotation operation unit 103, the continuous generation probability parallel calculation unit 104, and the forward probability sequential parallel calculation unit 105 load the program stored in the auxiliary storage device 113 into the memory 112. It can be realized by executing it on the processor 111 as described above. Also, the storage unit 102 can be realized by the memory 112 or the auxiliary storage device 113 .
  • the above program may be provided through a network, or may be provided after being recorded on a recording medium. That is, such programs may be provided as program products, for example.
  • FIG. 4 is a flowchart showing the operation of the information processing apparatus 100.
  • the likelihood matrix calculation unit 101 obtains the probability p k,t that the observed value y t at each time step t is generated from ⁇ k and ⁇ k generated in step S10.
  • the probability p k,t assumes a Gaussian distribution, and decreases with distance from ⁇ k .
  • likelihood matrix calculation section 101 obtains probabilities p k,t for all combinations of unit sequence length k and time step t, converts the obtained probabilities p k,t into logarithms, and converts them into logarithms.
  • a logarithmic likelihood matrix D1 is obtained by associating the obtained logarithm with the length k and time step t used in the calculation (S11).
  • N be a function for obtaining the continuous generation probability of a Gaussian distribution
  • log be a function for obtaining a logarithm.
  • likelihood matrix calculation section 101 can obtain logarithmic likelihood matrix D1 by parallel calculation using the following equation (10).
  • Likelihood matrix calculation section 101 obtains log-likelihood matrix D1 as shown in FIG. You can ask for an array. As shown in FIG. 5, the multidimensional array of the log-likelihood matrix D1 is a multidimensional matrix of length k as the Gaussian process generation length, timestep t as the timestep, and class c as the state. It's becoming Then, likelihood matrix calculation section 101 causes storage section 102 to store the multidimensional array of logarithmic likelihood matrix D1.
  • matrix rotation operation section 103 sequentially reads log-likelihood matrix D1 one by one from the multidimensional array of log-likelihood matrix D1 from storage section 102, and in the read log-likelihood matrix D1, each Rotate the log-likelihood matrix D1 to the left by moving the value of the component corresponding to each column of the row to the component of the left column by the value obtained by subtracting "1" from the number of rows in that row.
  • a rotated log-likelihood matrix D2 is generated (S12).
  • matrix rotation operation section 103 causes storage section 102 to store the rotated log-likelihood matrix D2.
  • the storage unit 102 stores a multidimensional array of the rotation log-likelihood matrix D2.
  • FIG. 7 is a schematic diagram showing an example of the rotated log-likelihood matrix D2.
  • the continuous generation probability parallel calculation unit 104 sequentially reads out the rotated log-likelihood matrix D2 one by one from the multidimensional array of the rotated log-likelihood matrix D2 stored in the storage unit 102. , in the read-out rotated log-likelihood matrix D2, in each column, the values from the top row to the target row are added to calculate the continuous generation probability (S13).
  • the continuous generation probability parallel calculation unit 104 adds the probabilities up to each row, and the probability that the Gaussian process corresponding to each row is continuously generated from the top timestamp of each column It is possible to obtain the continuous generation probability.
  • the operation ":" indicates parallel computation for class c, unit sequence length k, and time step t.
  • a continuously generated probability matrix D3 is generated as shown in FIG. This is equivalent to probability GP(St:k
  • the continuously generated probability parallel calculation unit 104 causes the storage unit 102 to store the multidimensional array of the continuously generated probability matrix D3.
  • the matrix rotation operation unit 103 sequentially reads out the continuously generated probability matrix D3 one by one from the multidimensional array of the continuously generated probability matrix D3 stored in the storage unit 102, and reads out the continuously generated probability matrix D3.
  • the value of the component corresponding to each column of each row is shifted to the component of the right column by the value obtained by subtracting "1" from the number of rows in that row.
  • a rotated continuously generated probability matrix D4 is generated by rotating the generated probability matrix D3 to the right (S14).
  • Step S14 corresponds to the process of undoing the left rotation in step S12.
  • the matrix rotation operation unit 103 causes the storage unit 102 to store the rotation continuous generation probability matrix D4.
  • the storage unit 102 stores a multidimensional array of the continuous rotation generation probability matrix D4.
  • FIG. 9A and 9B are schematic diagrams for explaining the right rotation operation by the matrix rotation operation unit 103.
  • FIG. 10 is a schematic diagram showing an example of the rotation continuation generation probability matrix D4.
  • the forward-probability sequential parallel calculation unit 105 sequentially reads the rotation continuation generation probability matrix D4 one by one from the multidimensional array of the rotation continuation generation probability matrix D4 stored in the storage unit 102. , in the read rotation continuation probability matrix D4, for each column corresponding to each time step t, the probability p(c
  • storage section 102 stores respective log-likelihood matrices D1 in a plurality of dimensions corresponding to a plurality of classes of unit sequences. Then, the forward-probability sequential parallel calculation unit 105 can perform parallel processing on each dimension of the multidimensional array other than the time step t.
  • the matrix rotation operation unit 103 rearranges the matrix before the calculation of the continuous generation probability and the calculation of the forward probability, so that for all classes c, unit sequence length k and time step t, Parallel computing can be applied to conventional algorithms that required sequential P forward . For this reason, efficient processing can be performed, and processing can be speeded up.
  • rotation in the row direction is described as an example, but in the case of a likelihood matrix in which the time step t is arranged in the row direction and the unit sequence length k is arranged in the column direction, rotation in the column direction may be performed.
  • matrix rotation operation section 103 performs In each column, the log-likelihood is shifted toward smaller time steps t by the number of rows corresponding to the number of columns minus one.
  • the matrix rotation operation unit 103 shifts the continuous generation probability to a larger time step t by the number of rows corresponding to the value obtained by subtracting 1 from the number of columns in each column of the continuous generation probability matrix D3.
  • the method of calculating the forward probability by obtaining the predicted value ⁇ k and the variance ⁇ k for each time step k using a Gaussian process has been described.
  • the method of calculating the predicted value ⁇ k and variance ⁇ k is not limited to the Gaussian process.
  • the predicted values ⁇ k and variances ⁇ k may be determined for each time step k for these sequences.
  • the predicted value ⁇ k may be an expected value calculated in the Blocked Gibbs Sampler.
  • an expected value ⁇ k and a variance value ⁇ k may be obtained in RNN with Dropout and uncertainty introduced.
  • the predicted value ⁇ k may be a value predicted by a Recurrent Neural Network that introduces uncertainty by adding Dropout.
  • FIG. 11 is a schematic diagram showing a graphical model of the Gaussian process described above using the observation sequence S as the unit sequence x j , the class c j of the unit sequence x j , and the parameter X c of the Gaussian process of class c. . Then, an observation sequence S is generated by combining these unit sequences xj .
  • the Gaussian process parameter Xc is a set of unit sequences x classified into class c
  • the number of segments J is an integer representing the number of unit sequences x into which the observed sequence S is segmented.
  • time-series data are generated by a hidden semi-Markov model whose output distribution is a Gaussian process.
  • each class c has a Gaussian process parameter X c , and the output value x i at time step i of the unit sequence is learned by Gaussian process regression for each class.
  • the output value x i at time step i of the unit sequence is learned by Gaussian process regression for each class.
  • S n 1 to N: n is an integer of 1 or more and N is an integer of 2 or more)
  • BGS processing, forward filtering and backward sampling are repeated to optimally segment into unit sequences xj and classify for each class c.
  • observation sequences S n are divided into unit sequences x j of random length, and class c is randomly assigned to each unit sequence x j , so that the units classified into class c A set of sequences x, X c , is obtained.
  • the observation sequence S is randomly segmented into unit sequences Xj , and classified for each class c.
  • the observed series Sn is generated from a Gaussian process learned by omitting the observed series Sn .
  • the probability P forward that a continuous sequence is generated at a certain time step t and that its number of divisions is generated from the class is obtained by the following equation (14).
  • This formula (14) is the same as the above formula (7).
  • c' is the number of classes
  • K' is the maximum length of the unit sequence
  • Po ( ⁇ , k) is the Poisson distribution given the length k of the unit sequence with respect to the average length ⁇ at which breaks occur
  • N c ', c are the number of transitions from class c' to class c
  • is a parameter.
  • the first is that the inference of the Gaussian process and the likelihood calculation of the Gaussian distribution are performed one at each time step t.
  • the second is to obtain the sum of probabilities repeatedly each time the time step t, the length k of the unit series xj , or the class c is changed.
  • Equation (14) In order to speed up the processing, attention is focused on GP(S t ⁇ k:k
  • the inference range of the Gaussian process in forward filtering is up to the maximum K', and the calculation of equation (14) requires the calculation of the log-likelihood of the Gaussian distribution for the entire range. Use this to speed up.
  • the inference result (likelihood) by the Gaussian process of length k of the unit sequence xj is obtained by calculating the likelihood of the Gaussian distribution for all combinations of the length k of the unit sequence and the time step t.
  • the calculated likelihood matrix is shown in FIG.
  • the result of the likelihood P of the Gaussian process when advancing the time step t is arranged.
  • the values of the components included in each row are rotated counterclockwise in the column direction by (the number of rows ⁇ k), and each column is added together.
  • the probability of being generated from the Gaussian process continuously k times can be obtained by parallel calculation.
  • the value obtained by this calculation corresponds to the probability GP(S t ⁇ k:k
  • X c ) of the length k of the unit series x j is required. That is, as shown in FIG. 9, if the values of the components included in each row of the matrix of GP(S t:k
  • c'') is added to the matrix of GP(S t ⁇ k:k
  • class c and forward filtering are repeatedly calculated for each of the three variables of time step t and unit sequence x j length k, and calculation is performed for each variable. Therefore, it took a long time to calculate.
  • the logarithmic likelihood for length k and time step t of all unit sequences x j is obtained by Gaussian distribution likelihood calculation, and the result is stored in storage section 102 as a matrix.
  • the computation of P forward is parallelized by shifting the matrix, it is possible to speed up the likelihood computation of the Gaussian process. As a result, the effects of shortening the hyperparameter tuning time and enabling real-time work analysis of assembly work sites and the like are expected.
  • 100 information processing device 101 likelihood matrix calculation unit, 102 storage unit, 103 matrix rotation operation unit, 104 continuous generation probability parallel calculation unit, 105 forward probability sequential parallel calculation unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Complex Calculations (AREA)

Abstract

情報処理装置100は、対数尤度を、単位系列の長さ及びタイムステップを昇順に並べた行列の成分として示す対数尤度行列を記憶する記憶部(102)と、その長さ及びそのタイムステップが一単位ずつ増えた場合の対数尤度が、その長さの昇順において一ラインに並ぶように対数尤度を移動させる移動処理を行うことで、移動対数尤度行列を生成する行列回転操作部(103)と、移動対数尤度行列において、一ライン毎に、一ラインの先頭から各々の成分までの対数尤度を加算することで、連続生成確率行列を生成する連続生成確率並列計算部(104)と、連続生成確率行列において、移動処理で値を移動させた成分の移動先と移動元とが逆となるように連続生成確率を移動させることで、移動連続生成確率行列を生成する行列回転操作部(103)と、移動連続生成確率行列を用いて前向き確率を計算する前向き確率逐次並列計算部(105)とを備える。

Description

情報処理装置、プログラム及び情報処理方法
 本開示は、情報処理装置、プログラム及び情報処理方法に関する。
 従来から、ガウス過程の隠れセミマルコフモデルに基づいて、連続的な時系列データを単位系列へ教師なしで分節化する装置が知られている。
 例えば、特許文献1には、FFBS(Forward Filterring-Backward Sampling)処理を行うことで、時系列データを分節化した複数の単位系列データを特定するとともに、単位系列データを分類するクラスを特定するFFBS実行部と、BGS(Blocked Gibbs Sampler)処理を実行することにより、FFBS実行部が単位系列データ及びクラスを特定するときに利用するパラメータを調整する情報処理装置が記載されている。このような情報処理装置は、ロボットの動きを学習する学習装置として利用することができる。
 特許文献1では、フォワードフィルタリングとして、あるタイムステップtを終点として、長さkの単位系列xjがクラスcに分類される前向き確率α[t][k][c]が求められる。バックワードサンプリングとして、前向き確率α[t][k][c]に従い、後ろ向きに単位系列の長さ及びクラスがサンプリングされる。これにより、観測系列Sを分節化した単位系列xjの長さkと、それぞれの単位系列xjのクラスcとが決定される。
国際公開第2018/047863号
 従来の技術では、フォワードフィルタリングとして、タイムステップt、単位系列xjの長さk及びクラスcの3変数についてそれぞれ繰り返し計算が行われる。
 従って、変数一つ一つについて計算が行われるため、計算に時間がかかり、適用するデータセットに合わせたGP-HSMM(Gaussian Process-Hidden Semi Markov Model)のハイパーパラメータのチューニング又は組み立て作業現場でのリアルタイムな作業分析が難しくなる。
 そこで、本開示の一又は複数の態様は、前向き確率を効率的に計算できるようにすることを目的とする。
 本開示の一態様に係る情報処理装置は、予め定められた現象の時系列を分割するために予め定められた単位系列の最大長までの長さ毎に前記現象を予測した値である予測値及び前記予測値の分散の組み合わせにおいて、タイムステップ毎の前記現象から得られる値である観測値が生成される確率である尤度を対数に変換した対数尤度を、前記長さ及び前記タイムステップを昇順に並べた行列の成分として示す対数尤度行列を記憶する記憶部と、前記長さ及び前記タイムステップが一単位ずつ増えた場合の前記対数尤度が、前記長さの昇順において一ラインに並ぶように、前記対数尤度行列において前記一ラインの先頭以外の前記対数尤度を移動させる移動処理を行うことで、移動対数尤度行列を生成する第1の行列移動部と、前記移動対数尤度行列において、前記一ライン毎に、前記一ラインの先頭から各々の成分までの前記対数尤度を加算することで、それぞれの成分の連続生成確率を計算して、連続生成確率行列を生成する連続生成確率計算部と、前記連続生成確率行列において、前記移動処理で値を移動させた成分の移動先と移動元とが逆となるように前記連続生成確率を移動させることで、移動連続生成確率行列を生成する第2の行列移動部と、前記移動連続生成確率行列において、前記タイムステップ毎に、前記長さの昇順に、前記連続生成確率を各々の成分まで加算した値を用いて、あるタイムステップを終点として、ある長さの単位系列があるクラスに分類される前向き確率を計算する前向き確率計算部と、を備えることを特徴とする。
 本開示の一態様に係るプログラムは、コンピュータを、予め定められた現象の時系列を分割するために予め定められた単位系列の長さ毎に前記現象を予測した値である予測値及び前記予測値の分散の組み合わせにおいて、タイムステップ毎の前記現象から得られる値である観測値が生成される確率である尤度を対数に変換した対数尤度を、前記長さ及び前記タイムステップを昇順に並べた行列の成分として示す対数尤度行列を記憶する記憶部、前記長さ及び前記タイムステップが一単位ずつ増えた場合の前記対数尤度が、前記長さの昇順において一ラインに並ぶように、前記対数尤度行列において前記一ラインの先頭以外の前記対数尤度を移動させる移動処理を行うことで、移動対数尤度行列を生成する第1の行列移動部、前記移動対数尤度行列において、前記一ライン毎に、前記一ラインの先頭から各々の成分までの前記対数尤度を加算することで、それぞれの成分の連続生成確率を計算して、連続生成確率行列を生成する連続生成確率計算部、前記連続生成確率行列において、前記移動処理で値を移動させた成分の移動先と移動元とが逆となるように前記連続生成確率を移動させることで、移動連続生成確率行列を生成する第2の行列移動部、及び、前記移動連続生成確率行列において、前記タイムステップ毎に、前記長さの昇順に、前記連続生成確率を各々の成分まで加算した値を用いて、あるタイムステップを終点として、ある長さの単位系列があるクラスに分類される前向き確率を計算する前向き確率計算部、として機能させることを特徴とする。
 本開示の一態様に係る情報処理方法は、予め定められた現象の時系列を分割するために予め定められた単位系列の長さ毎に前記現象を予測した値である予測値及び前記予測値の分散の組み合わせにおいて、タイムステップ毎の前記現象から得られる値である観測値が生成される確率である尤度を対数に変換した対数尤度を、前記長さ及び前記タイムステップを昇順に並べた行列の成分として示す対数尤度行列を用いて、前記長さ及び前記タイムステップが一単位ずつ増えた場合の前記対数尤度が、前記長さの昇順において一ラインに並ぶように、前記一ラインの先頭以外の前記対数尤度を移動させる移動処理を行うことで、移動対数尤度行列を生成し、前記移動対数尤度行列において、前記一ライン毎に、前記一ラインの先頭から各々の成分までの前記対数尤度を加算することで、それぞれの成分の連続生成確率を計算して、連続生成確率行列を生成し、前記連続生成確率行列において、前記移動処理で値を移動させた成分の移動先と移動元とが逆となるように前記連続生成確率を移動させることで、移動連続生成確率行列を生成し、前記移動連続生成確率行列において、前記タイムステップ毎に、前記長さの昇順に、前記連続生成確率を各々の成分まで加算した値を用いて、あるタイムステップを終点として、ある長さの単位系列があるクラスに分類される前向き確率を計算することを特徴とする。
 本開示の一又は複数の態様によれば、前向き確率を効率的に計算することができる。
実施の形態に係る情報処理装置の構成を概略的に示すブロック図である。 対数尤度行列の一例を示す概略図である。 コンピュータの構成を概略的に示すブロック図である。 情報処理装置での動作を示すフローチャートである。 対数尤度行列の多次元配列を説明するための概略図である。 左回転動作を説明するための概略図である。 回転対数尤度行列の一例を示す概略図である。 連続生成確率行列の一例を示す概略図である。 右回転動作を説明するための概略図である。 回転連続生成確率行列の一例を示す概略図である。 ガウス過程において、観測系列を単位系列、単位系列のクラス、及び、クラスのガウス過程のパラメータを用いたグラフィカルモデルを示す概略図である。
 図1は、実施の形態に係る情報処理装置100の構成を概略的に示すブロック図である。
 情報処理装置100は、尤度行列計算部101と、記憶部102と、行列回転操作部103と、連続生成確率並列計算部104と、前向き確率逐次並列計算部105とを備える。
 ここで、まず、ガウス過程について説明する。
 時間の経過に従った観測値の変化を観測系列Sとする。
 観測系列Sは、形状の類似する波形により予め定められたクラス毎に分節化して、それぞれの所定形状の波形を表す単位系列xごとに分類することができる。
 具体的には、予め定められた現象の時系列を分割するために予め定められた単位系列の最大長までの長さ及びタイムステップ毎に、その現象から得られる値が観測値である。
 このような分節化を行う手法としては、例えば、隠れセミマルコフモデルにおける出力をガウス過程とすることで、1つの状態が1つの連続的な単位系列xを表現するモデルを利用することができる。
 即ち、各クラスはガウス過程で表現することができ、観測系列Sは、それぞれのクラスから生成された単位系列xを繋ぎ合わせることで生成される。そして、観測系列Sのみに基づいてモデルのパラメータを学習することで、観測系列Sを単位系列xへ分節化する分節点、および、単位系列xのクラスを、教師なしで推定することができる。
 ここで、時系列データは、ガウス過程を出力分布とする隠れセミマルコフモデルによって生成されると仮定すると、クラスcは、次の(1)式により決定され、単位系列xは、次の(2)式により生成される。
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000002
 そして、隠れセミマルコフモデルと、(2)式に示すガウス過程のパラメータXを推定することで、観測系列Sを単位系列xへ分節化して、それぞれの単位系列xをクラスc毎に分類することが可能となる。
 また、例えば、単位系列のタイムステップiにおける出力値xはガウス過程回帰で学習することによって、連続的な軌道として表現される。従って、ガウス過程では、同一クラスに属する単位系列のタイムステップiにおける出力値xの組(i,x)が得られたとき、タイムステップi’における出力値x’の予測分布は、次の(3)式により表されるガウス分布となる。
Figure JPOXMLDOC01-appb-M000003
 なお、(3)式において、kは、k(i,i)を要素に持つベクトルであり、cは、k(i’,i’)となるスカラーであり、Cは、次の(4)式に示すような要素を持つ行列である。
Figure JPOXMLDOC01-appb-M000004
 但し、(4)式において、βは、観測値に含まれるノイズの精度を表すハイパーパラメータである。
 また、ガウス過程では、カーネルを用いることで複雑に変化する系列データであっても学習することができる。例えば、ガウス過程回帰に広く使用されている次の(5)式で表されるガウスカーネルを用いることができる。但し、(5)式において、θ、θ及びθは、カーネルのパラメータである。
Figure JPOXMLDOC01-appb-M000005
 そして、出力値xが多次元のベクトル(x=xi,0,xi,1,・・・)である場合には、各次元が独立に生成されると仮定して、タイムステップiの観測値xがクラスcに対応するガウス過程から生成される確率GPは、次の(6)式を演算することで求められる。
Figure JPOXMLDOC01-appb-M000006
 このようにして求められる確率GPを用いることで、類似する単位系列を、同一のクラスに分類することができる。
 ところで、隠れセミマルコフモデルでは、1つのクラスcに分類される単位系列xの長さは、クラスcによって異なることより、ガウス過程のパラメータXを推定する際に、単位系列xの長さも推定する必要がある。
 単位系列xの長さkは、タイムステップtのデータ点を終点とした長さkの単位系列xがクラスcに分類される確率からサンプリングすることによって決定することができる。従って、単位系列xの長さkを決定するためには、様々な長さkと、全てのクラスcとの組み合わせの確率を、後述するようなFFBS(Forward Filtering-Backward Sampling)を利用して計算する必要がある。
 そして、ガウス過程のパラメータXを推定することにより、単位系列xを、クラスcに分類することができる。
 次に、FFBSについて説明する。
 例えば、FFBSでは、タイムステップtのデータ点を終点として長さkの単位系列xがクラスcに分類される確率であるα[t][k][c]を前向きに計算し、その確率α[t][k][c]に従って後ろから順に、単位系列xの長さk及びクラスcをサンプリングして決定することができる。例えば、前向き確率α[t][k][c]は、後述の(11)式に示すように、タイムステップt-kからタイムステップtへ遷移する可能性を周辺化することで再帰的に計算することができる。
 例えば、タイムステップtにおける長さk=2かつクラスc=2の単位系列xに遷移する可能性について、タイムステップt-2における長さk=1かつクラスc=1の単位系列xからの遷移の可能性は、p(2|1)α[t-2][1][1]である。
 タイムステップt-2における長さk=2かつクラスc=1の単位系列xからの遷移の可能性はp(2|1)α[t-2][2][1]である。
 タイムステップt-2における長さk=3かつクラスc=1の単位系列xからの遷移の可能性はp(2|1)α[t-2][3][1]である。
 タイムステップt-2における長さk=1かつクラスc=2の単位系列xからの遷移の可能性はp(2|2)α[t-2][1][2]である。
 タイムステップt-2における長さk=2かつクラスc=2の単位系列xからの遷移の可能性はp(2|2)α[t-2][2][2]である。
 タイムステップt-2における長さk=3かつクラスc=2の単位系列xからの遷移の可能性はp(2|2)α[t-2][3][2]である。
 このような計算を、確率α[0][*][*]から動的計画法で前向きに行うことで、あらゆる確率α[t][k][c]を求めることができる。
 ここで、例えば、タイムステップt-3において長さk=2かつクラスc=2の単位系列xが決定されたとする。この場合、その単位系列xへの遷移は、長さk=2であることより、タイムステップt-5の単位系列xのいずれかが可能であり、それらの確率α[t-5][*][*]から決定することができる。
 このように、確率α[t][k][c]に基づいたサンプリングを後ろから順に行うことで、全ての単位系列xの長さkおよびクラスcを決定することができる。
 次に、観測系列Sを分節化する際の単位系列xの長さkと、それぞれの単位系列xのクラスcとをサンプリングすることにより推定するBGS(Blocked Gibbs Sampler)が実行される。
 BGSでは、効率的な計算を行うために、1つの観測系列Sを分節化する際の単位系列xの長さkと、それぞれの単位系列xのクラスcとをまとめてサンプリングすることができる。
 そして、BGSでは、後述するFFBSにおいて、後述する(13)式により遷移確率を求める際に用いるパラメータN(cn,j)及びパラメータN(cn,j,cn,j+1)が特定される。
 例えば、パラメータN(cn,j)は、クラスcn,jとなった分節の数を表し、パラメータN(cn,j,cn,j+1)は、クラスcn,jからクラスcn,j+1に遷移した回数を表している。さらに、BGSでは、パラメータN(cn,j)及びパラメータN(cn,j,cn,j+1)を、現在のパラメータN(c’)及びパラメータN(c’,c)として特定する。
 FFBSでは、観測系列Sを分節化する際の単位系列xの長さkと、それぞれの単位系列xのクラスcとの両方を隠れ変数とみなして同時にサンプリングが行われる。
 FFBSでは、あるタイムステップtを終点として、長さkの単位系列xがクラスcに分類される確率α[t][k][c]が求められる。
 例えば、ベクトルp’に基づいた分節s’t-k:k(=p’t-k,p’t-k+1,・・・,p’)が、クラスcとなる確率α[t][k][c]は、次の(7)式を演算することにより、求めることができる。
Figure JPOXMLDOC01-appb-M000007
 但し、(7)式において、Cは、クラス数であり、Kは、単位系列の最大の長さである。また、P(s’t-k:k|Xc)は、クラスcから分節s’t-k:kが生成される確率であり、次の(8)式で求められる。
Figure JPOXMLDOC01-appb-M000008
 但し、(8)式のPlen(k|λ)は、平均をλとするポアソン分布であり、分節長の確率分布である。また、(11)式のp(c|c’)は、クラスの遷移確率を表しており、次の(9)式で求められる。
Figure JPOXMLDOC01-appb-M000009
 但し、(9)式において、N(c’)は、クラスc’となった分節の数を表しており、N(c’,c)は、クラスc’からクラスcに遷移した回数を表している。これらとして、BGSで特定されたパラメータN(cn,j)及びN(cn,j,cn,j+1)がそれぞれ用いられる。また、k’は、分節s’t-k:kの前の分節の長さを表し、c’は、分節s’t-k:kの前の分節のクラスを表しており、(7)式では、全ての長さk及びクラスcにおいて周辺化されている。
 なお、t-k<0となる場合、確率α[t][k][*]=0であり、確率α[0][0][*]=1.0である。そして、(7)式は、漸化式になっており、確率α[1][1][*]から計算をすることで、全てのパターンを動的計画法により計算することができる。
 以上のように計算される前向き確率α[t][k][c]に従い、後ろ向きに単位系列の長さ及びクラスをサンプリングを行うことで、観測系列Sを分節化した単位系列xの長さkと、それぞれの単位系列xjのクラスcとを決定することができる。
 以上のようなガウス過程における演算を並列に行うための、図1に示されている構成について説明する。
 尤度行列計算部101は、対数尤度をガウス分布の尤度計算により求める。
 具体的には、尤度行列計算部101は、ガウス過程により各タイムステップにおける予想値μと、予想値の分散σを長さk(k=1,2,・・・,K’)分求める。ここで、K’は、2以上の整数である。
 次に、尤度行列計算部101は、ガウス分布を仮定し、生成されたμとσから各タイムステップt(t=1,2,・・・,T)の観測値yが生成される確率pk,tを求める。Tは、2以上の整数である。ここでは、尤度行列計算部101は、確率pk,tを単位系列の長さkと、タイムステップtとの全ての組み合わせについて求め、対数尤度行列D1を求める。
 図2は、対数尤度行列D1の一例を示す概略図である。
 図2に示されているように、対数尤度行列D1は、予め定められた現象の時系列を分割するために予め定められた単位系列の最大長K’までの長さk毎にその現象を予測した値である予測値μ及びその予測値の分散σの組み合わせにおいて、タイムステップt毎のその現象から得られる値である観測値yが生成される確率である尤度を対数に変換した対数尤度を、長さk及びタイムステップtを昇順に並べた行列の成分として示す。
 記憶部102は、情報処理装置100での処理で必要な情報を記憶する。例えば、記憶部102は、尤度行列計算部101で計算された対数尤度行列D1を記憶する。
 行列回転操作部103は、並列計算を実現するために、対数尤度行列D1を回転させる。
 例えば、行列回転操作部103は、記憶部102から対数尤度行列D1を取得する。そして、行列回転操作部103は、対数尤度行列D1を基にして、その列方向への各行の成分を予め定められた法則で回転させることで、回転対数尤度行列D2を生成する。回転対数尤度行列D2は、記憶部102に記憶される。
 具体的には、行列回転操作部103は、対数尤度行列D1において、長さk及びタイムステップtが一単位ずつ増えた場合の対数尤度が、長さkの昇順において一ラインに並ぶように、その一ラインの先頭以外の対数尤度を移動させる移動処理を行う第1の行列移動部として機能する。行列回転操作部103は、その移動差処理により、対数尤度行列D1から移動対数尤度行列としての回転対数尤度行列D2を生成する。
 また、行列回転操作部103は、並列計算を実現するために、後述する連続生成確率行列D3を回転させる。
 例えば、行列回転操作部103は、記憶部102から連続生成確率行列D3を取得する。そして、行列回転操作部103は、連続生成確率行列D3を基にして、その列方向への各行の成分を予め定められた法則で回転させることで、回転連続生成確率行列D4を生成する。回転連続生成確率行列D4は、記憶部102に記憶される。
 具体的には、行列回転操作部103は、連続生成確率行列D3において、対数尤度行列D1に対する移動処理で値を移動させた成分の移動先と移動元とが逆となるように連続生成確率を移動させることで、移動連続生成確率行列である回転連続生成確率行列D4を生成する第2の行列移動部として機能する。
 ここでは、対数尤度行列D1は、図2に示されているように、長さkが行方向に配置され、タイムステップtが列方向に配置されているため、行列回転操作部103は、対数尤度行列D1の各々の行において、行数から1を引いた値に対応する列数だけ、対数尤度をタイムステップtが小さくなる方に移動させる。また、行列回転操作部103は、連続生成確率行列D3の各々の行において、行数から1を引いた値に対応する列数だけ、連続生成確率をタイムステップtが大きくなる方に移動させる。
 連続生成確率並列計算部104は、回転対数尤度行列D2を用いて、同一列に配置されたあるタイムステップに対応する時刻から連続してガウス過程から生成される確率GPを計算する。
 例えば、連続生成確率並列計算部104は、回転対数尤度行列D2を記憶部102から読み込み、列毎に、1行目から各行の値を逐次足し合わせていくことで、連続生成確率行列D3を生成する。連続生成確率行列D3は、記憶部102に記憶される。
 具体的には、連続生成確率並列計算部104は、回転対数尤度行列D2において、列方向の一ライン毎に、その一ラインの先頭から各々の成分までの対数尤度を加算することで、それぞれの成分の連続生成確率を計算し、それぞれの成分の値とすることで、連続生成確率行列を生成する連続生成確率計算部として機能する。
 前向き確率逐次並列計算部105は、記憶部102に記憶されている回転連続生成確率行列D4を用いて、タイムステップに対応する時刻について前向き確率Pforwardを逐次計算する。
 例えば、前向き確率逐次並列計算部105は、回転連続生成確率行列D4を記憶部102から読み込み、列毎に、クラスc’からクラスcへの遷移確率であるp(c|c’)を掛け、kステップ前の周辺確率を求め、これを現在のタイムステップtに逐次加えていくことで、前向き確率Pforwardを求める。ここで、周辺確率は、すべての単位系列長及びクラスについての確率和である。
 具体的には、前向き確率逐次並列計算部105は、回転連続生成確率行列D4において、タイムステップt毎に、長さkの昇順に、連続生成確率を各々の成分まで加算した値を用いて、前向き確率を計算する前向き確率計算部として機能する。
 以上に記載した情報処理装置100は、例えば、図3に示されているようなコンピュータ110により実現することができる。
 コンピュータ110は、CPU(Central Processing Unit)等のプロセッサ111と、RAM(Random Access Memory)等のメモリ112と、HDD(Hard Disk Drive)等の補助記憶装置113と、キーボード、マウス又はマイクロホン等の入力部として機能する入力装置114と、ディスプレイ又はスピーカ等の出力装置115と、通信ネットワークに接続するためのNIC(Network Interface Card)等の通信装置116とを備える。
 具体的には、尤度行列計算部101、行列回転操作部103、連続生成確率並列計算部104及び前向き確率逐次並列計算部105は、補助記憶装置113に記憶されているプログラムをメモリ112にロードしてプロセッサ111で実行することで実現可能である。
 また、記憶部102は、メモリ112又は補助記憶装置113により実現可能である。
 以上のようなプログラムは、ネットワークを通じて提供されてもよく、また、記録媒体に記録されて提供されてもよい。即ち、このようなプログラムは、例えば、プログラムプロダクトとして提供されてもよい。
 図4は、情報処理装置100での動作を示すフローチャートである。
 まず、尤度行列計算部101は、全てのクラスcのガウス過程により、各タイムステップtにおける予想値μと、予想値の分散σを長さk(k=1,2,・・・,K’)個分だけ求める(S10)。
 次に、尤度行列計算部101は、ステップS10で生成されたμとσから各タイムステップtの観測値yが生成される確率pk,tを求める。ここで確率pk,tは、ガウス分布を仮定しており、μから離れるほど低くなる。ここでは、尤度行列計算部101は、確率pk,tを、単位系列の長さkとタイムステップtの全ての組み合わせについて求め、取得した確率pk,tを対数に変換し、変換された対数を、その算出に用いられた長さk及びタイムステップtに対応付けることで、対数尤度行列D1を求める(S11)。
 具体的には、全タイムステップの予想値と分散を、それぞれμ=(μ,μ,・・・,μK’)、σ=(σ,σ,・・・,σK’)とする。また、ガウス分布の連続生成確率を求める関数をNとし、対数を求める関数をlogとする。このような場合、尤度行列計算部101は、下記の(10)式で、並列計算により対数尤度行列D1を得ることができる。
Figure JPOXMLDOC01-appb-M000010
 尤度行列計算部101は、図2に示されているような対数尤度行列D1を全てのクラスcについて求めることにより、図5に示されているような、対数尤度行列D1の多次元配列を求めることができる。図5に示されているように、対数尤度行列D1の多次元配列は、ガウス過程生成長としての長さk、時間ステップとしてのタイムステップt及び状態としてのクラスcの多次元の行列となっている。そして、尤度行列計算部101は、対数尤度行列D1の多次元配列を記憶部102に記憶させる。
 次に、行列回転操作部103は、記憶部102から対数尤度行列D1の多次元配列から、順番に一つずつ対数尤度行列D1を読み出し、読み出された対数尤度行列D1において、各々の行のそれぞれの列に対応する成分の値を、その行の行数から「1」を減算した値だけ左側の列の成分に移動させることで、その対数尤度行列D1を左に回転させた回転対数尤度行列D2を生成する(S12)。そして、行列回転操作部103は、その回転対数尤度行列D2を記憶部102に記憶させる。これにより、記憶部102には、回転対数尤度行列D2の多次元配列が記憶されることになる。
 図6は、行列回転操作部103による左回転動作を説明するための概略図である。
 行数=1、言い換えると、k=1となるμ及びσの行では、(行数-1)=0となるため、行列回転操作部103は、回転を行わない。
 行数=2、言い換えると、k=2となるμ及びσの行では、(行数-1)=1となるため、行列回転操作部103は、各々の列の成分の値を、一つ左の列の成分に移動させる。
 行数=3、言い換えると、k=3となるμ及びσの行では、(行数-1)=2となるため、行列回転操作部103は、各々の列の成分の値を、二つ左の列の成分に移動させる。
 行列回転操作部103は、同様の処理を、最後の行であるk=K’の行まで繰り返す。
 これにより、回転対数尤度行列D2では、各々の列において、最も上の行に格納されているタイムステップtからタイムステップで示される時間順で、確率pk,tの対数が格納させることとなる。
 図7は、回転対数尤度行列D2の一例を示す概略図である。
 図4に戻り、次に、連続生成確率並列計算部104は、記憶部102に記憶されている回転対数尤度行列D2の多次元配列から、順番に一つずつ回転対数尤度行列D2を読み出し、読み出された回転対数尤度行列D2において、各々の列で、最も上の行から対象となる行までの値を加算することで、連続生成確率を算出する(S13)。
 ここで、回転対数尤度行列D2では、例えば、タイムステップt=1の列では、図7に示されているように、最も上の行であるk=1(μ、σ)及びタイムステップt=1に対応する対数尤度P1,1、次の行であるk=2(μ、σ)及びタイムステップt=2に対応する対数尤度P2,2、次の行であるk=3(μ、σ)及びタイムステップt=3に対応する対数尤度P3,3、・・・といったように、タイムステップtで示される時間順で対数尤度が格納されている。これは、例えば、図2の楕円で囲った対数尤度が一列に並べられていることになる。このため、連続生成確率並列計算部104は、それぞれの行までの確率を加算することで、それぞれの列の最も上のタイムスタンプから、それぞれの行に対応するガウス過程が連続で生成される確率である連続生成確率を求めることができる。言い換えると、連続生成確率並列計算部104は、各行(k=1,2,・・・,K’)まで、回転対数尤度行列D2の成分の値を、下記の(11)式のように行方向に逐次足し合わせることで、あるタイムステップから連続して生成される確率を並列計算することができる。
Figure JPOXMLDOC01-appb-M000011
 ここで演算「:」はクラスc、単位系列長k及びタイムステップtについて並列計算を実行することを示している。
 ステップS13により、図8に示されているように、連続生成確率行列D3が生成される。
 そして、これは後述する確率GP(St:k|Xc)と等価となる。
 連続生成確率並列計算部104は、連続生成確率行列D3の多次元配列を、記憶部102に記憶させる。
 図4に戻り、次に、行列回転操作部103は、記憶部102に記憶されている連続生成確率行列D3の多次元配列から、順番に一つずつ連続生成確率行列D3を読み出し、読み出された連続生成確率行列D3において、各々の行のそれぞれの列に対応する成分の値を、その行の行数から「1」を減算した値だけ右側の列の成分に移動させることで、その連続生成確率行列D3を右に回転させた回転連続生成確率行列D4を生成する(S14)。ステップS14は、ステップS12における左回転を元に戻す処理に相当する。そして、行列回転操作部103は、その回転連続生成確率行列D4を記憶部102に記憶させる。これにより、記憶部102には、回転連続生成確率行列D4の多次元配列が記憶されることになる。
 図9は、行列回転操作部103による右回転動作を説明するための概略図である。
 行数=1、言い換えると、k=1となるμ及びσの行では、(行数-1)=0となるため、行列回転操作部103は、回転を行わない。
 行数=2、言い換えると、k=2となるμ及びσの行では、(行数-1)=1となるため、行列回転操作部103は、各々の列の成分の値を、一つ右の列の成分に移動させる。
 行数=3、言い換えると、k=3となるμ及びσの行では、(行数-1)=2となるため、行列回転操作部103は、各々の列の成分の値を、二つ右の列の成分に移動させる。
 行列回転操作部103は、同様の処理を、最後の行であるk=K’の行まで繰り返す。
 これにより、回転連続生成確率行列D4では、GP(St:k|X)をGP(St-k:k|X)の並びになるように置き換えられている。これにより、上記の(11)式におけるFFBSにおけるPforwardを回転連続生成確率行列D4の列毎の並列計算により求め出すことができるようになる。
 図10は、回転連続生成確率行列D4の一例を示す概略図である。
 図4に戻り、次に、前向き確率逐次並列計算部105は、記憶部102に記憶されている回転連続生成確率行列D4の多次元配列から、順番に一つずつ回転連続生成確率行列D4を読み出し、読み出された回転連続生成確率行列D4において、各タイムステップtに対応する各列について、(12)式のように、あるガウス過程のクラスcからクラスc’に遷移する確率p(c|c‘)を掛けることで、周辺確率Mを求め、下記の(13)式のように、確率の和を計算することでPforwardを求める(S15)。
Figure JPOXMLDOC01-appb-M000012
Figure JPOXMLDOC01-appb-M000013
 ここで、求められたDが、Pforwardとなる。このようにして、タイムステップt以外の多次元配列の各次元に対して並列計算が実現される。
 言い換えると、記憶部102は、単位系列の複数のクラスに対応する複数の次元において、それぞれの対数尤度行列D1を記憶する。そして、前向き確率逐次並列計算部105は、タイムステップt以外の多次元配列の各次元に対して並列して処理を行うことができる。
 以上のステップS10~S15により、行列回転操作部103が連続生成確率の計算及び前向き確率の計算の前に、行列を並べ変えることで、すべてのクラスc、単位系列長k及びタイムステップtについて、逐次Pforwardを求めていた従来のアルゴリズムに対して、並列計算を適用することができる。このため、効率的な処理を行うことができ、処理の高速化が可能となる。
 また、上記の実施の形態では、多次元配列の回転又はメモリ上での再配置により並列計算を実現する例を述べたが、これは計算を並列化するための一例である。例えば、メモリ上での再配置をせずに、行列の参照アドレスを列数分ずらして読み込み、読み込まれた値を計算に利用すること等でも、演算を容易に行うことができる。このような方法も、本実施の形態の範疇である。具体的には、図4に示されている対数尤度行列D1が与えられた場合に、μ、σの行は、1列目からのアドレスを読み込み、μ、σの行は、2列目からアドレスを読み込み、μ、σの行はN目からのアドレスを読み込んでおき、読み込んだアドレスを1列分ずつずらした値を並列計算してもよい。
 また、本願では行方向の回転を例に述べたが、行方向にタイムステップt、列方向に単位系列長kを並べた尤度行列の場合、列方向への回転が行われてもよい。
 具体的には、行列回転操作部103は、対数尤度行列D1において、長さkが列方向に配置され、タイムステップtが行方向に配置されている場合には、対数尤度行列D1の各々の列において、列数から1を引いた値に対応する行数だけ、対数尤度をタイムステップtが小さくなる方に移動させる。また、行列回転操作部103は、連続生成確率行列D3の各々の列において、列数から1を引いた値に対応する行数だけ、連続生成確率をタイムステップtが大きくなる方に移動させる。
 以上の実施の形態では、ガウス過程を用いて各タイムステップkについての予測値μと、分散σとを求めて、前向き確率を計算する方法を述べた。一方で、予測値μと分散σの計算方法は、ガウス過程に限定されない。例えば、Blocked Gibbs Samplerで各クラスcについて観測値yの複数のシーケンスが与えられた場合、これらのシーケンスについて各タイムステップkについて、予測値μ及び分散σが求められてもよい。言い換えると、予測値μは、Blocked Gibbs Samplerにおいて算出される期待値であってもよい。
 あるいは、各クラスcに対して、Dropoutを加え不確実性を導入したRNNで予想値μと分散値σとが取得されてもよい。言い換えると、予測値μは、Dropoutを加えて不確実性を導入したRecurrent Neural Networkで予測される値であってもよい。
 図11は、上記のガウス過程において、観測系列Sを単位系列x、単位系列xのクラスc、及び、クラスcのガウス過程のパラメータXを用いたグラフィカルモデルを示す概略図である。
 そして、これらの単位系列xを結合することで、観測系列Sが生成される。
 なお、ガウス過程のパラメータXは、クラスcに分類された単位系列xの集合であり、分節数Jは、観測系列Sが分節化された単位系列xの個数を表す整数である。ここで、時系列データは、ガウス過程を出力分布とする隠れセミマルコフモデルによって生成されると仮定する。そして、ガウス過程のパラメータXを推定することで、観測系列Sを単位系列xへ分節化して、それぞれの単位系列Xをクラスc毎に分類することが可能になる。
 例えば、各クラスcがガウス過程のパラメータXを持ち、クラス毎に単位系列のタイムステップiにおける出力値xをガウス過程回帰で学習する。
 上記のガウス過程に関する従来の技術では、初期化ステップで複数の観測系列S(n=1~N:nは、1以上の整数で、Nは、2以上の整数)の全てに対して、ランダムに分節化及び分類した後、BGS処理、フォワードフィルタリング及びバックワードサンプリングの繰り返しにより、最適に単位系列xに分節化し、クラスc毎に分類している。
 ここで、初期化ステップでは、全ての観測系列Sをランダムな長さの単位系列xに区切り、それぞれの単位系列xにクラスcをランダムに割り振ることで、クラスcに分類された単位系列xの集合であるXが得られる。このように観測系列Sに対して、ランダムに単位系列Xに分節化し、クラスc毎に分類している。
 BGS処理では、ランダムに分割したある観測系列Sを分節化して得られた全ての単位系列xをその部分の観測系列Sは観測されなかったものとみなし、ガウス過程のパラメータXから省く。
 フォワードフィルタリングでは、観測系列Sを省いて学習したガウス過程からその観測系列Sを生成する。あるタイムステップt番目で連続系列が生成され、かつその個分の区切りがクラスから生成される確率Pforwardは、下記の(14)式により求められる。この(14)式は、上記の(7)式と同様である。
Figure JPOXMLDOC01-appb-M000014
 ここで、c’はクラス数、K’は単位系列の最大長、Po(λ,k)は区切り目が発生する平均長λに対して単位系列の長さkを与えたポアソン分布、Nc’,cはクラスc’からcへの遷移回数、αはパラメータである。この計算では、各クラスcに対し、全てのタイムステップtを起点にして、k回分の単位系列xが同じガウス過程から連続して生成される確率がGP(St-k:k|X)Po(λ,k)で求められている。
 バックワードサンプリングでは、前向き確率Pforwardに基づき、単位系列xの長さkとクラスcのサンプリングがタイムステップt=Tから後ろ向きに繰り返し行われる。
 ここで、フォワードフィルタリングについて、処理速度の性能を落としている原因は2つある。1つ目は、ガウス過程の推論及びガウス分布の尤度計算をタイムステップt毎に1つずつ行っていることである。2つ目は、タイムステップt、単位系列xの長さk又はクラスcを変更するたびに繰り返し、確率の和を求めていることである。
 処理の高速化のため、(14)式のGP(St-k:k|X)に着目する。
 フォワードフィルタリングにおけるガウス過程の推論範囲は、最大K’までであり、(14)式の計算には全ての範囲分のガウス分布の対数尤度の計算が必要である。これを利用して、高速化を行う。ここで、単位系列xの長さkのガウス過程による推論結果(尤度)を単位系列の長さkと、タイムステップtとの全ての組み合わせについてガウス分布の尤度計算により求める。求めた尤度の行列は、図2のようになる。
 ここで、この行列を斜めに見てみると、タイムステップt、単位系列xの長さkをそれぞれ一つずつ進めていった場合のガウス過程の尤度Pの結果が配置されていることが分かる。つまり、この行列を図6に示されているように、各行に含まれる成分の値を(行数-k)個分、列方向において左回転して、各列を足し合わせていくことで、全てのタイムステップtを起点にして、k回連続してガウス過程から生成される確率を並列計算で求めることができる。この計算で求められた値が確率GP(St-k:k|X)に相当する。
 そして、(14)式からタイムステップtのPforwardを求めるためには、単位系列xの長さk分遡った確率GP(St-k:k|X)が必要となる。つまり、図9に示されているように、GP(St:k|X)の行列の各行に含まれている成分の値を(行数-1)個分、列方向において右回転すると、タイムステップt(言い換えると、t列目)に並んだデータがPforwardを求める上で必要な確率GP(St-k:k|X)となる。
 次に、上記のガウス過程に関する従来の技術では、全てのタイムステップt、単位系列xの長さk、クラスcについて下記の(15)式が計算されている。
Figure JPOXMLDOC01-appb-M000015
 これに対して、本実施の形態では、タイムステップt毎にGP(St-k:k|X)の行列にp(c|c’’)を足して、単位系列xの長さk’、クラスc’についてlogsumexpで確率和を求めることで、単位系列xの長さk’、クラスc’について並列計算が可能となる。さらに、この計算結果である下記の(16)式で算出された値を記憶し、これを次回以降のPforwardを計算するときに利用することで効率化を図ることができる。
Figure JPOXMLDOC01-appb-M000016
 上記のガウス過程に関する従来の技術では、クラスc、フォワードフィルタリングはタイムステップt及び単位系列xの長さkの3変数についてそれぞれ繰り返し計算をしており、変数一つ一つについて計算を行っているため、計算に時間がかかっていた。
 これに対して、本実施の形態では、全ての単位系列xの長さkとタイムステップtについての対数尤度をガウス分布の尤度計算により求め、その結果を行列として記憶部102に保存し、行列のシフトによってPforwardの計算を並列化しているので、ガウス過程の尤度計算の処理の高速化を実現することができる。これにより、ハイパーパラメータのチューニングの時間短縮、及び、組み立て作業現場等のリアルタイムな作業分析を可能とする効果が見込まれる。
 100 情報処理装置、 101 尤度行列計算部、 102 記憶部、 103 行列回転操作部、 104 連続生成確率並列計算部、 105 前向き確率逐次並列計算部。

Claims (9)

  1.  予め定められた現象の時系列を分割するために予め定められた単位系列の最大長までの長さ毎に前記現象を予測した値である予測値及び前記予測値の分散の組み合わせにおいて、タイムステップ毎の前記現象から得られる値である観測値が生成される確率である尤度を対数に変換した対数尤度を、前記長さ及び前記タイムステップを昇順に並べた行列の成分として示す対数尤度行列を記憶する記憶部と、
     前記長さ及び前記タイムステップが一単位ずつ増えた場合の前記対数尤度が、前記長さの昇順において一ラインに並ぶように、前記対数尤度行列において前記一ラインの先頭以外の前記対数尤度を移動させる移動処理を行うことで、移動対数尤度行列を生成する第1の行列移動部と、
     前記移動対数尤度行列において、前記一ライン毎に、前記一ラインの先頭から各々の成分までの前記対数尤度を加算することで、それぞれの成分の連続生成確率を計算して、連続生成確率行列を生成する連続生成確率計算部と、
     前記連続生成確率行列において、前記移動処理で値を移動させた成分の移動先と移動元とが逆となるように前記連続生成確率を移動させることで、移動連続生成確率行列を生成する第2の行列移動部と、
     前記移動連続生成確率行列において、前記タイムステップ毎に、前記長さの昇順に、前記連続生成確率を各々の成分まで加算した値を用いて、あるタイムステップを終点として、ある長さの単位系列があるクラスに分類される前向き確率を計算する前向き確率計算部と、を備えること
     を特徴とする情報処理装置。
  2.  前記対数尤度行列において、前記長さが行方向に配置され、前記タイムステップが列方向に配置されている場合には、前記第1の行列移動部は、各々の行において、行数から1を引いた値に対応する列数だけ、前記対数尤度を前記タイムステップが小さくなる方に移動させ、
     前記第2の行列移動部は、各々の行において、行数から1を引いた値に対応する列数だけ、前記連続生成確率を前記タイムステップが大きくなる方に移動させること
     を特徴とする請求項1に記載の情報処理装置。
  3.  前記対数尤度行列において、前記長さが列方向に配置され、前記タイムステップが行方向に配置されている場合には、前記第1の行列移動部は、各々の列において、列数から1を引いた値に対応する行数だけ、前記対数尤度を前記タイムステップが小さくなる方に移動させ、
     前記第2の行列移動部は、各々の列において、列数から1を引いた値に対応する行数だけ、前記連続生成確率を前記タイムステップが大きくなる方に移動させること
     を特徴とする請求項1に記載の情報処理装置。
  4.  前記予測値は、ガウス分布の尤度計算により求められた値であること
     を特徴とする請求項1から3の何れか一項に記載の情報処理装置。
  5.  前記予測値は、Blocked Gibbs Samplerにおいて算出される期待値であること
     を特徴とする請求項1から3の何れか一項に記載の情報処理装置。
  6.  前記予測値は、Dropoutを加えて不確実性を導入したRecurrent Neural Networkで予測されること
     を特徴とする請求項1から3の何れか一項に記載の情報処理装置。
  7.  前記記憶部は、前記単位系列の複数のクラスに対応する複数の次元において、それぞれの前記対数尤度行列を記憶し、
     前記前向き確率計算部は、前記タイムステップt以外の前記複数の次元のそれぞれにおいて並列して処理を行うこと
     を特徴とする請求項1から6の何れか一項に記載の情報処理装置。
  8.  コンピュータを、
     予め定められた現象の時系列を分割するために予め定められた単位系列の長さ毎に前記現象を予測した値である予測値及び前記予測値の分散の組み合わせにおいて、タイムステップ毎の前記現象から得られる値である観測値が生成される確率である尤度を対数に変換した対数尤度を、前記長さ及び前記タイムステップを昇順に並べた行列の成分として示す対数尤度行列を記憶する記憶部、
     前記長さ及び前記タイムステップが一単位ずつ増えた場合の前記対数尤度が、前記長さの昇順において一ラインに並ぶように、前記対数尤度行列において前記一ラインの先頭以外の前記対数尤度を移動させる移動処理を行うことで、移動対数尤度行列を生成する第1の行列移動部、
     前記移動対数尤度行列において、前記一ライン毎に、前記一ラインの先頭から各々の成分までの前記対数尤度を加算することで、それぞれの成分の連続生成確率を計算して、連続生成確率行列を生成する連続生成確率計算部、
     前記連続生成確率行列において、前記移動処理で値を移動させた成分の移動先と移動元とが逆となるように前記連続生成確率を移動させることで、移動連続生成確率行列を生成する第2の行列移動部、及び、
     前記移動連続生成確率行列において、前記タイムステップ毎に、前記長さの昇順に、前記連続生成確率を各々の成分まで加算した値を用いて、あるタイムステップを終点として、ある長さの単位系列があるクラスに分類される前向き確率を計算する前向き確率計算部、として機能させること
     を特徴とするプログラム。
  9.  予め定められた現象の時系列を分割するために予め定められた単位系列の長さ毎に前記現象を予測した値である予測値及び前記予測値の分散の組み合わせにおいて、タイムステップ毎の前記現象から得られる値である観測値が生成される確率である尤度を対数に変換した対数尤度を、前記長さ及び前記タイムステップを昇順に並べた行列の成分として示す対数尤度行列を用いて、前記長さ及び前記タイムステップが一単位ずつ増えた場合の前記対数尤度が、前記長さの昇順において一ラインに並ぶように、前記一ラインの先頭以外の前記対数尤度を移動させる移動処理を行うことで、移動対数尤度行列を生成し、
     前記移動対数尤度行列において、前記一ライン毎に、前記一ラインの先頭から各々の成分までの前記対数尤度を加算することで、それぞれの成分の連続生成確率を計算して、連続生成確率行列を生成し、
     前記連続生成確率行列において、前記移動処理で値を移動させた成分の移動先と移動元とが逆となるように前記連続生成確率を移動させることで、移動連続生成確率行列を生成し、
     前記移動連続生成確率行列において、前記タイムステップ毎に、前記長さの昇順に、前記連続生成確率を各々の成分まで加算した値を用いて、あるタイムステップを終点として、ある長さの単位系列があるクラスに分類される前向き確率を計算すること
     を特徴とする情報処理方法。
PCT/JP2021/045819 2021-12-13 2021-12-13 情報処理装置、プログラム及び情報処理方法 WO2023112086A1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2023546398A JP7408025B2 (ja) 2021-12-13 2021-12-13 情報処理装置、プログラム及び情報処理方法
PCT/JP2021/045819 WO2023112086A1 (ja) 2021-12-13 2021-12-13 情報処理装置、プログラム及び情報処理方法
CN202180104803.XA CN118369671A (zh) 2021-12-13 2021-12-13 信息处理装置、程序和信息处理方法
DE112021008320.1T DE112021008320T5 (de) 2021-12-13 2021-12-13 Informationsverarbeitungsvorrichtung, programm und informationsverarbeitungsverfahren
KR1020247018161A KR20240096612A (ko) 2021-12-13 2021-12-13 정보 처리 장치, 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 정보 처리 방법
TW111121790A TWI829195B (zh) 2021-12-13 2022-06-13 資訊處理裝置、程式產品及資訊處理方法
US18/656,785 US20240289657A1 (en) 2021-12-13 2024-05-07 Information processing device, non-transitory computer-readable storage medium, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/045819 WO2023112086A1 (ja) 2021-12-13 2021-12-13 情報処理装置、プログラム及び情報処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/656,785 Continuation US20240289657A1 (en) 2021-12-13 2024-05-07 Information processing device, non-transitory computer-readable storage medium, and information processing method

Publications (1)

Publication Number Publication Date
WO2023112086A1 true WO2023112086A1 (ja) 2023-06-22

Family

ID=86773952

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/045819 WO2023112086A1 (ja) 2021-12-13 2021-12-13 情報処理装置、プログラム及び情報処理方法

Country Status (7)

Country Link
US (1) US20240289657A1 (ja)
JP (1) JP7408025B2 (ja)
KR (1) KR20240096612A (ja)
CN (1) CN118369671A (ja)
DE (1) DE112021008320T5 (ja)
TW (1) TWI829195B (ja)
WO (1) WO2023112086A1 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013205171A (ja) * 2012-03-28 2013-10-07 Sony Corp 情報処理装置、情報処理方法、およびプログラム
JP2018047863A (ja) 2016-09-23 2018-03-29 株式会社デンソー 車両用前照灯制御装置
PL3563235T3 (pl) * 2016-12-31 2023-03-13 Intel Corporation Systemy, sposoby i aparaty do obliczania heterogenicznego
CN113254877A (zh) * 2021-05-18 2021-08-13 北京达佳互联信息技术有限公司 异常数据检测方法、装置、电子设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NAGANO MASATOSHI; NAKAMURA TOMOAKI; NAGAI TAKAYUKI; MOCHIHASHI DAICHI; KOBAYASHI ICHIRO; KANEKO MASAHIDE: "Sequence Pattern Extraction by Segmenting Time Series Data Using GP-HSMM with Hierarchical Dirichlet Process", 2018 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS (IROS), IEEE, 1 October 2018 (2018-10-01), pages 4067 - 4074, XP033491314, DOI: 10.1109/IROS.2018.8594029 *
SILVA TAVARES DE LEMOS: "Hierarchical Bayesian Methods for the Marine Sciences: Analyses of Climate Variability and Fish Abundance ", TESE UNIVERSIDADE DE LISBOA, 1 January 2010 (2010-01-01), pages 1 - 182, XP093071981 *

Also Published As

Publication number Publication date
TWI829195B (zh) 2024-01-11
US20240289657A1 (en) 2024-08-29
JPWO2023112086A1 (ja) 2023-06-22
TW202324142A (zh) 2023-06-16
DE112021008320T5 (de) 2024-08-08
KR20240096612A (ko) 2024-06-26
CN118369671A (zh) 2024-07-19
JP7408025B2 (ja) 2024-01-04

Similar Documents

Publication Publication Date Title
Melki et al. Multi-target support vector regression via correlation regressor chains
US11341424B2 (en) Method, apparatus and system for estimating causality among observed variables
US11593611B2 (en) Neural network cooperation
CN116686017A (zh) 一种用于视频动作识别的时间瓶颈注意力体系结构
CN114372577B (zh) 用于管理量子系统的状态的方法、设备、装置和介质
JP2015197702A (ja) 情報処理装置、情報処理方法
CN113516019B (zh) 高光谱图像解混方法、装置及电子设备
WO2022097230A1 (ja) 予測方法、予測装置及びプログラム
WO2021149528A1 (ja) イベント予測システム、イベント予測方法およびプログラム
WO2022036520A1 (en) Method and apparatus for enhancing performance of machine learning classification task
CN112651418B (zh) 数据分类方法、分类器训练方法及系统
US20200074277A1 (en) Fuzzy input for autoencoders
WO2023112086A1 (ja) 情報処理装置、プログラム及び情報処理方法
Wang et al. Deep learning-based state prediction of the Lorenz system with control parameters
WO2020218246A1 (ja) 最適化装置、最適化方法、及びプログラム
Bora et al. SLICE: Stabilized LIME for Consistent Explanations for Image Classification
JP7452648B2 (ja) 学習方法、学習装置及びプログラム
Rios et al. Back to meshes: Optimal simulation-ready mesh prototypes for autoencoder-based 3D car point clouds
CN112633464A (zh) 用于识别图像的计算系统和方法
JP2020177290A (ja) モデル学習装置、データ分析装置、モデル学習方法、及びプログラム
Esposito et al. Bellman residuals minimization using online support vector machines
JP7548440B2 (ja) 最適化方法、最適化装置、及びプログラム
Bhardwaj et al. Improved lenet model for flower classification using gpu computing
JP2019095894A (ja) 推定装置、学習装置、学習済みモデル、推定方法、学習方法、及びプログラム
JP7448023B2 (ja) 学習方法、学習装置及びプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2023546398

Country of ref document: JP

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

Ref document number: 21968009

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202447039189

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 112021008320

Country of ref document: DE