[go: up one dir, main page]

JP2010067033A - Data processor, data processing method, and program - Google Patents

Data processor, data processing method, and program Download PDF

Info

Publication number
JP2010067033A
JP2010067033A JP2008233126A JP2008233126A JP2010067033A JP 2010067033 A JP2010067033 A JP 2010067033A JP 2008233126 A JP2008233126 A JP 2008233126A JP 2008233126 A JP2008233126 A JP 2008233126A JP 2010067033 A JP2010067033 A JP 2010067033A
Authority
JP
Japan
Prior art keywords
model
learning
data
time series
generation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2008233126A
Other languages
Japanese (ja)
Inventor
Kuniaki Noda
邦昭 野田
Masato Ito
真人 伊藤
Kazumi Aoyama
一美 青山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2008233126A priority Critical patent/JP2010067033A/en
Publication of JP2010067033A publication Critical patent/JP2010067033A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

【課題】複雑で、長時間の時系列データを、容易に学習し、滑らかな時系列データを生成する。
【解決手段】教師データ分割部12は、時系列データである教師データを、一部がオーバラップする複数のモデル学習用データに分割する。学習部14は、1つのモデル学習用データを、1つの学習モデルに割り当て、学習モデルの学習を、その学習モデルに割り当てられたモデル学習用データを用いて行う。コネクティビティ算出部16は、1つの学習モデルが生成する時系列データの最後の一部分と、他の1つの学習モデルが生成する時系列データの最初の一部分との誤差を、1つの学習モデルの後に、他の1つの学習モデルが接続する適切さを表すコネクティビティとして算出する。本発明は、例えば、時系列データの学習、及び生成に適用できる。
【選択図】図1
Complex and long time series data is easily learned to generate smooth time series data.
A teacher data dividing unit 12 divides teacher data, which is time-series data, into a plurality of model learning data partially overlapping. The learning unit 14 assigns one model learning data to one learning model, and learns the learning model using the model learning data assigned to the learning model. The connectivity calculation unit 16 determines an error between the last part of the time series data generated by one learning model and the first part of the time series data generated by the other learning model after the one learning model. It is calculated as connectivity representing the appropriateness of connection with one other learning model. The present invention can be applied to learning and generation of time-series data, for example.
[Selection] Figure 1

Description

本発明は、データ処理装置、データ処理方法、及び、プログラムに関し、特に、例えば、複雑で、長時間の時系列データを、容易に学習すること、及び、学習結果に基づき、滑らかな時系列データを、精度良く生成することができるようにするデータ処理装置、データ処理方法、及び、プログラムに関する。   The present invention relates to a data processing device, a data processing method, and a program, and in particular, for example, easily learning complicated time series data for a long time, and smooth time series data based on a learning result. The present invention relates to a data processing apparatus, a data processing method, and a program.

例えば、時系列パターンを、時間差分方程式の形で関数近似し、ダイナミクスとして学習(記憶)する学習モデルしては、例えば、RNN(Recurrent Neural Network)や、SVR(Support Vector Regression)等がある(例えば、特許文献1や2を参照)。   For example, learning models for approximating time series patterns in the form of time difference equations and learning (memory) as dynamics include RNN (Recurrent Neural Network), SVR (Support Vector Regression), etc. ( For example, see Patent Documents 1 and 2.)

例えば、RNNの学習を、時系列データを用いて行うことで、RNNは、学習に用いられた時系列データの時系列パターンを獲得(記憶)(学習)する。   For example, by performing RNN learning using time-series data, the RNN acquires (stores) (learns) a time-series pattern of time-series data used for learning.

時系列パターンを学習したRNNによれば、その時系列パターンの時系列データを生成することができる。   According to the RNN that has learned the time series pattern, the time series data of the time series pattern can be generated.

また、RNNをSOM(Self-Organizing Maps)のノードとし、勝者ノード(winner)が有するRNNから時系列データを生成するデータ生成の技術が、先に提案されている(例えば、特許文献3や4を参照)。   In addition, a data generation technique for generating time-series data from an RNN included in a winner node (winner) using an RNN as a node of SOM (Self-Organizing Maps) has been proposed (for example, Patent Documents 3 and 4). See).

特開2007-265345号公報JP 2007-265345 JP 特開2006-318319号公報JP 2006-318319 A 特開2007-280066号公報JP 2007-280066 A 特開2007-280067号公報Japanese Unexamined Patent Publication No. 2007-280067

ところで、RNN等では、時系列パターンの記憶のメカニズムに、記憶容量の限界がある。そのため、ある程度の規模のRNNによって、複雑で(非線形性が強い)(多次元で)、かつ長時間の時系列パターンを記憶し、そのような時系列パターンの時系列データを、精度良く再構成(生成)することは、困難である。   By the way, in RNN and the like, the storage mechanism of the time series pattern has a storage capacity limit. For this reason, complex (strong non-linearity) (multi-dimensional) and long-time time-series patterns are stored by RNNs of a certain scale, and time-series data of such time-series patterns are accurately reconstructed. It is difficult to (generate).

すなわち、複雑で、かつ長時間の時系列パターンを記憶し、そのような時系列パターンの時系列データを、精度良く生成するには、大規模なRNNが必要となる。しかしながら、大規模なRNNの学習には、膨大な演算量と時間が必要となる。   That is, a large-scale RNN is required to store a complicated and long time series pattern and to generate time series data of such a time series pattern with high accuracy. However, large-scale RNN learning requires a large amount of computation and time.

一方、上述したデータ生成の技術によれば、勝者ノードを順次決定し、勝者ノードが有するRNNから時系列データを生成して、順次出力することで、長時間の時系列データを出力することができる。   On the other hand, according to the data generation technique described above, it is possible to output long-time time-series data by sequentially determining the winner node, generating time-series data from the RNN possessed by the winner node, and sequentially outputting it. it can.

しかしながら、この場合、勝者ノードとなるノードが切り替わると、その切り替わりの前後で、時系列データが不連続となる。   However, in this case, when the node that becomes the winner node is switched, the time-series data becomes discontinuous before and after the switching.

そこで、滑らかな時系列データを出力する方法として、勝者ノードとなるノードの切り替わりを抑制する方法(特許文献3)や、時系列データが不連続になっている部分(不連続部分)をスムージングする方法(特許文献4)がある。   Therefore, as a method of outputting smooth time-series data, a method of suppressing switching of a node that becomes a winner node (Patent Document 3), or a portion in which time-series data is discontinuous (discontinuous portion) is smoothed. There is a method (Patent Document 4).

しかしながら、勝者ノードとなるノードの切り替わりを抑制する方法では、不連続部分の数が減少するだけで、勝者ノードとなるノードが切り替われば、不連続部分が生じる。   However, in the method of suppressing the switching of the node that becomes the winner node, only the number of discontinuous portions is reduced, and if the node that becomes the winner node is switched, a discontinuous portion is generated.

また、不連続部分をスムージングするのでは、勝者ノードとなったノードが有するRNNが記憶している時系列パターンとは異なる時系列パターンの時系列データ(RNNが記憶していない時系列パターンの時系列データ)が得られることがある。   In addition, smoothing the discontinuous part is because the time-series data of the time-series pattern different from the time-series pattern stored in the RNN of the node that has become the winner node (the time-series pattern time not stored in the RNN). Series data) may be obtained.

本発明は、このような状況に鑑みてなされたものであり、複雑で、長時間の時系列データを、容易に学習し、また、学習結果に基づき、滑らかな時系列データを、精度良く生成することができるようにするものである。   The present invention has been made in view of such a situation, and easily learns complex and long-time time-series data, and generates smooth time-series data with high accuracy based on the learning result. It is something that can be done.

本発明の第1の側面のデータ処理装置、又は、プログラムは、時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力し、1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行うことにより得られる、学習後の複数の前記学習モデルのうちの、1つの前記学習モデルを、時系列データの生成に用いる前記学習モデルのシーケンスである生成用モデルシーケンスの始点となる始点モデルとして選択する始点モデル選択手段と、複数の前記学習モデルのうちの、他の1つの前記学習モデルを、前記生成用モデルシーケンスの終点となる終点モデルとして選択する終点モデル選択手段と、複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を表す値を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出することにより得られる前記コネクティビティに対応する値を、1つの前記学習モデルの後に、他の1つの前記学習モデルを接続する接続コストとして、前記接続コストの累積値を最小にする、前記始点モデルから前記終点モデルまでの前記学習モデルの並びを、前記生成用モデルシーケンスとして求める生成用モデルシーケンス算出手段と、前記生成用モデルシーケンスを構成する前記学習モデルについて、前記学習モデルが生成する時系列データの最後の一部分のデータ列と、後に接続される前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を小さくするように、前記学習モデルの前記内部状態の初期値を決定し、その初期値を、前記学習モデルに与えて、時系列データを生成する時系列データ生成手段とを備えるデータ処理装置、又は、データ処理装置として、コンピュータを機能させるためのプログラムである。   A data processing apparatus or program according to the first aspect of the present invention is a learning model for dividing time-series data into a plurality of pieces of data partially overlapping and learning a time-series pattern, wherein an internal state is A plurality of model learnings obtained by dividing the time-series data so as to be output as model learning data for use in learning of a learning model having and to assign one model learning data to one learning model Data is assigned to a plurality of learning models, and learning of a time-series pattern by the learning model is performed using the model learning data assigned to the learning model. One of the learning models is used for generating a learning model sequence used for generating time-series data. A start point model selecting means for selecting a start point model to be a start point of a Dell sequence, and an end point for selecting another one of the learning models as an end point model to be an end point of the generating model sequence For all of the plurality of learning models, the model selection means, the last part of the time series data generated by one of the learning models, and the first part of the time series data generated by the other learning model A value representing an error with respect to the data sequence is calculated as connectivity representing the appropriateness of connection of the time series pattern learned by the other learning model after the time series pattern learned by one of the learning models. A value corresponding to the connectivity obtained by performing one learning model after one learning model. As a connection cost for connecting the learning model, a generation model sequence calculation means for obtaining, as the generation model sequence, an arrangement of the learning models from the start point model to the end point model, which minimizes the cumulative value of the connection costs. , With respect to the learning model constituting the generating model sequence, the last part of the time series data generated by the learning model and the first part of the time series data generated by the learning model connected later Time series data generating means for determining an initial value of the internal state of the learning model and giving the initial value to the learning model so as to reduce an error with a data string, and generating time series data; A program for causing a computer to function as a data processing device or a data processing device.

本発明の第1の側面のデータ処理方法は、データ処理装置が、時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力し、1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行うことにより得られる、学習後の複数の前記学習モデルのうちの、1つの前記学習モデルを、時系列データの生成に用いる前記学習モデルのシーケンスである生成用モデルシーケンスの始点となる始点モデルとして選択し、複数の前記学習モデルのうちの、他の1つの前記学習モデルを、前記生成用モデルシーケンスの終点となる終点モデルとして選択し、複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を表す値を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出することにより得られる前記コネクティビティに対応する値を、1つの前記学習モデルの後に、他の1つの前記学習モデルを接続する接続コストとして、前記接続コストの累積値を最小にする、前記始点モデルから前記終点モデルまでの前記学習モデルの並びを、前記生成用モデルシーケンスとして求め、前記生成用モデルシーケンスを構成する前記学習モデルについて、前記学習モデルが生成する時系列データの最後の一部分のデータ列と、後に接続される前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を小さくするように、前記学習モデルの前記内部状態の初期値を決定し、その初期値を、前記学習モデルに与えて、時系列データを生成するステップを含むデータ処理方法である。   A data processing method according to a first aspect of the present invention is a learning model in which a data processing device divides time-series data into a plurality of pieces of partially overlapping data, and learns a time-series pattern. A plurality of models obtained by dividing the time-series data so that one model learning data is assigned to one learning model, and is output as model learning data used for learning a learning model having A plurality of learned models obtained by assigning learning data to a plurality of learning models, and learning a time-series pattern by the learning model using the model learning data assigned to the learning model. One of the learning models is a generation model that is a sequence of the learning model used for generating time-series data. Selecting as a start point model to be a start point of a Dell sequence, selecting another one of the plurality of learning models as an end point model to be an end point of the generating model sequence, and a plurality of the learning models For all, a value representing an error between the data sequence of the last part of the time series data generated by one learning model and the data sequence of the first part of the time series data generated by the other learning model Corresponding to the connectivity obtained by calculating the connectivity indicating the appropriateness of connection of the time series pattern learned by one other learning model after the time series pattern learned by one learning model As a connection cost for connecting one learning model to another learning model after the one learning model, For the learning model constituting the generation model sequence, an array of the learning models from the start point model to the end point model that minimizes the cumulative value of the continuation cost is obtained as the generation model sequence. The internal part of the learning model is reduced so as to reduce an error between the last part of the time series data generated by the time series data and the first part of the time series data generated by the learning model connected later. A data processing method including the steps of determining an initial value of a state and providing the initial value to the learning model to generate time-series data.

以上のような第1の側面においては、学習後の複数の前記学習モデルのうちの、1つの前記学習モデルが、始点モデルとして選択されるとともに、他の1つの前記学習モデルが、終点モデルとして選択される。さらに、前記コネクティビティに対応する値を、1つの前記学習モデルの後に、他の1つの前記学習モデルを接続する接続コストとして、前記接続コストの累積値を最小にする、前記始点モデルから前記終点モデルまでの前記学習モデルの並びが、前記生成用モデルシーケンスとして求められる。そして、前記生成用モデルシーケンスを構成する前記学習モデルについて、前記学習モデルが生成する時系列データの最後の一部分のデータ列と、後に接続される前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を小さくするように、前記学習モデルの前記内部状態の初期値が決定され、その初期値を、前記学習モデルに与えて、時系列データが生成される。   In the first aspect as described above, one of the learning models after learning is selected as a starting point model, and the other learning model is used as an end point model. Selected. Further, the value corresponding to the connectivity is set as a connection cost for connecting the other learning model after the one learning model, and the accumulated value of the connection cost is minimized. The sequence of the learning models up to is obtained as the generation model sequence. For the learning model constituting the generation model sequence, the last part of the time series data generated by the learning model and the first part of the time series data generated by the learning model connected later The initial value of the internal state of the learning model is determined so as to reduce the error from the data sequence of the data, and the initial value is given to the learning model to generate time series data.

本発明の第2の側面のデータ処理装置、又は、プログラムは、時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力する分割手段と、1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行う学習手段と、複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出するコネクティビティ算出手段とを備えるデータ処理装置、又は、データ処理装置として、コンピュータを機能させるためのプログラムである。   A data processing apparatus or program according to a second aspect of the present invention is a learning model for dividing time-series data into a plurality of pieces of data partially overlapping and learning a time-series pattern, wherein an internal state is Dividing means for outputting as model learning data for use in learning of a learning model having a plurality of time series data obtained by dividing the time series data so as to assign one model learning data to one learning model Learning means for assigning the model learning data to the plurality of learning models, and learning the time-series pattern by the learning model using the model learning data assigned to the learning model; and a plurality of the learning For all models, the last part of the time series data generated by one learning model and the other one The time series pattern learned by one of the other learning models is connected after the time series pattern learned by one of the learning models for an error from the first partial data sequence of the time series data generated by the model It is a program for causing a computer to function as a data processing device or a data processing device that includes connectivity calculation means for calculating connectivity representing appropriateness.

本発明の第2の側面のデータ処理方法は、データ処理装置が、時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力し、1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行い、複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出するステップを含むデータ処理方法である。   A data processing method according to a second aspect of the present invention is a learning model in which a data processing device divides time-series data into a plurality of pieces of overlapping data, and learns a time-series pattern. A plurality of models obtained by dividing the time-series data so that one model learning data is assigned to one learning model, and is output as model learning data used for learning a learning model having Data for learning is assigned to a plurality of the learning models, and learning of a time series pattern by the learning model is performed using the data for model learning assigned to the learning model. A data sequence of the last part of the time series data generated by one learning model and a time system generated by the other learning model Connectivity representing the adequacy of connecting the time series pattern learned by one of the other learning models after the time series pattern learned by one of the learning models of the error from the data sequence of the first part of the data Is a data processing method including a step of calculating as follows.

以上のような第2の側面においては、時系列データが、一部がオーバラップする複数のデータに分割され、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力される。さらに、1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データが、複数の前記学習モデルに割り当てられ、前記学習モデルによる時系列パターンの学習が、その学習モデルに割り当てられた前記モデル学習用データを用いて行われる。また、複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差が、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出される。   In the second aspect as described above, the time series data is divided into a plurality of partially overlapping data, and is a learning model for learning a time series pattern, for learning a learning model having an internal state. Output as model learning data to be used. Further, a plurality of model learning data obtained by dividing the time series data so as to assign one model learning data to one learning model is assigned to the plurality of learning models, Learning of a time-series pattern by the learning model is performed using the model learning data assigned to the learning model. In addition, for all of the plurality of learning models, a data string of the last part of the time series data generated by one learning model and a data string of the first part of the time series data generated by the other learning model Is calculated as connectivity representing the adequacy of connection of the time series pattern learned by the other learning model after the time series pattern learned by one of the learning models.

なお、データ処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。   Note that the data processing device may be an independent device or an internal block constituting one device.

また、プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。   The program can be provided by being transmitted via a transmission medium or by being recorded on a recording medium.

本発明の第1及び第2の側面によれば、複雑で、長時間の時系列データを、容易に学習し、また、学習結果に基づき、滑らかな時系列データを、精度良く生成することができる。   According to the first and second aspects of the present invention, it is possible to easily learn complicated and long-time time-series data, and to generate smooth time-series data with high accuracy based on the learning result. it can.

[本発明を適用したデータ処理装置の全体構成]
図1は、本発明を適用したデータ処理装置の一実施の形態の構成例を示すブロック図である。
[Overall configuration of data processing apparatus to which the present invention is applied]
FIG. 1 is a block diagram showing a configuration example of an embodiment of a data processing apparatus to which the present invention is applied.

データ処理装置は、例えば、現実のロボット等を行動させるための時系列データ(例えば、アクチュエータを駆動するデータ等)や、ディスプレイに表示される仮想的なキャラクタ等を行動させるための時系列データを学習する。さらに、データ処理装置は、その学習結果に基づき、現実のロボットや仮想的なキャラクタを、自律的に行動させるための時系列データを生成し、ロボット等に供給することで、そのロボット等(の行動)を制御する。   The data processing device, for example, generates time-series data for causing a real robot or the like to act (for example, data for driving an actuator) or time-series data for causing a virtual character or the like displayed on the display to act. learn. Furthermore, the data processing device generates time-series data for making a real robot or a virtual character act autonomously based on the learning result, and supplies the time series data to the robot. Control).

すなわち、図1において、データ処理装置は、学習装置10とデータ生成装置20等から構成される。   That is, in FIG. 1, the data processing device includes a learning device 10 and a data generation device 20.

ここで、データ処理装置は、学習装置10、又は、データ生成装置20だけから構成することができる。   Here, the data processing device can be configured by only the learning device 10 or the data generation device 20.

なお、データ生成装置20では、学習装置10が、後述する学習処理を行うことにより得られる情報(データ)を用いて、後述するデータ生成処理を行う。したがって、データ処理装置を、データ生成装置20だけから構成する場合には、データ生成処理に必要な情報を、外部からデータ生成装置20に供給するか、又は、データ生成装置20の内部に記憶しておく必要がある。   In the data generation device 20, the learning device 10 performs data generation processing described later using information (data) obtained by performing learning processing described later. Therefore, when the data processing device is configured only from the data generation device 20, information necessary for the data generation processing is supplied to the data generation device 20 from the outside or stored inside the data generation device 20. It is necessary to keep.

学習装置10は、時系列パターンの学習のために用意された時系列データ(以下、教師データともいう)を用い、時系列パターンを学習する学習モデルであって、内部状態を有する複数の学習モデルの学習を行い、学習後の複数の学習モデルすべてについて、任意の2つの学習モデルそれぞれが学習(記憶)した時系列パターンどうしが接続する適切さを表すコネクティビティを求める学習処理を行う。   The learning device 10 is a learning model that learns a time-series pattern using time-series data (hereinafter also referred to as teacher data) prepared for learning a time-series pattern, and includes a plurality of learning models having internal states. The learning process is performed for all the plurality of learning models after learning to obtain connectivity indicating the appropriateness of connecting the time series patterns learned (stored) by any two learning models.

すなわち、学習装置10は、学習処理として、例えば、複雑で、長時間の時系列データ等である教師データを、複数の学習モデルで分担して学習し、その複数の学習モデルのそれぞれに、ダイナミクスである時系列パターンを獲得(記憶)させる処理を行う。   That is, the learning device 10 learns, for example, teacher data that is complex, long-time time-series data, etc. as a learning process by sharing a plurality of learning models, and each of the plurality of learning models has a dynamics. A process of acquiring (storing) a time series pattern is performed.

さらに、学習装置10は、学習処理として、複数の学習モデルのそれぞれが獲得したダイナミクスとしての時系列パターンどうしが接続する適切さ(自然さ)(接続性)を表すコネクティビティを求める処理を行う。   Furthermore, the learning device 10 performs a process of obtaining connectivity representing appropriateness (naturalness) (connectivity) of connecting time series patterns as dynamics acquired by each of a plurality of learning models as a learning process.

ここで、ダイナミクスは、時間変化する力学系を表すもので、例えば、具体的な関数によって表現することができる。学習モデルでは、時系列データの時間変化の特徴、つまり、時系列パターンが、ダイナミクスとして記憶される。   Here, the dynamics represents a dynamic system that changes with time, and can be expressed by a specific function, for example. In the learning model, the temporal change feature of the time series data, that is, the time series pattern is stored as dynamics.

学習装置10は、教師データ保存部11、教師データ分割部12、モデル学習用データ保存部13、学習部14、モデルパラメータ保存部15、コネクティビティ算出部16、及び、コネクティビティ保存部17等から構成される。   The learning device 10 includes a teacher data storage unit 11, a teacher data division unit 12, a model learning data storage unit 13, a learning unit 14, a model parameter storage unit 15, a connectivity calculation unit 16, and a connectivity storage unit 17. The

教師データ保存部11には、外部から教師データが供給される。教師データ保存部11は、そこに供給される教師データを記憶(保存)する。   Teacher data is supplied to the teacher data storage unit 11 from the outside. The teacher data storage unit 11 stores (saves) teacher data supplied thereto.

ここで、教師データとしては、複雑で、長時間の時系列データを採用することができる。なお、教師データは、その他、例えば、単純で、短時間の時系列データであっても良いし、複雑であるが、それほど長時間ではない時系列データ等であっても良い。   Here, as the teacher data, complicated and long-time time series data can be adopted. The teacher data may be, for example, simple and short time series data, or may be complex but time series data that is not so long.

また、データ処理装置において、例えば、現実のロボットを、ある環境下で、自律的に行動させるための時系列データを生成する場合には、例えば、ロボットを行動させる環境下で、行動の教示を行うユーザがロボットを実際に移動させることで得られる時系列データが、教師データとして用いられる。   Further, in the data processing apparatus, for example, when generating time-series data for making an actual robot act autonomously in a certain environment, for example, teaching the action in an environment causing the robot to act. Time series data obtained by the user who actually moves the robot is used as teacher data.

すなわち、ユーザがロボットを移動させているときに、ロボットがセンシングすることができる物理量のデータ(以下、センサデータともいう)や、移動のために、ロボットのアクチュエータに与えられるデータ(信号)(以下、アクションデータともいう)等をコンポーネントとするベクトルの時系列が、教師データとして用いられる。   That is, data of physical quantities that can be sensed by the robot when the user is moving the robot (hereinafter also referred to as sensor data), and data (signals) (hereinafter referred to as the actuator) of the robot for movement. A time series of vectors having components such as action data) is used as teacher data.

ここで、以上のようなセンサデータとアクションデータとをコンポーネントとするベクトルの時系列を、以下、センサモータデータともいう。   Here, a vector time series having the sensor data and action data as components as described above is also referred to as sensor motor data.

教師データ分割部12は、教師データ保存部11に記憶された教師データとしての時系列データを、一部がオーバラップする複数のデータ(これも、時系列データである)に分割し、学習モデルの学習に用いるモデル学習用データとして、モデル学習用データ保存部13に供給する。   The teacher data division unit 12 divides the time series data as the teacher data stored in the teacher data storage unit 11 into a plurality of data partially overlapping (this is also the time series data), and the learning model Is supplied to the model learning data storage unit 13 as model learning data used for learning.

ここで、教師データ分割部12において、教師データを分割して得られる複数のモデル学習用データの長さ(サンプル数)は、同一であっても良いし、異なっていても良い。オーバラップの長さも同様である。   Here, the length (number of samples) of the plurality of model learning data obtained by dividing the teacher data in the teacher data dividing unit 12 may be the same or different. The same applies to the length of the overlap.

但し、以下では、説明を簡単にするため、教師データを分割して得られる複数のモデル学習用データは、すべて同一の固定長であることとし、また、オーバラップの長さも、固定長であることとする。   However, in the following, for simplicity of explanation, it is assumed that the plurality of model learning data obtained by dividing the teacher data are all the same fixed length, and the overlap length is also the fixed length. I will do it.

モデル学習用データ保存部13は、教師データ分割部12からの複数のモデル学習用データを記憶する。   The model learning data storage unit 13 stores a plurality of model learning data from the teacher data dividing unit 12.

学習部14は、1つのモデル学習用データを、1つの学習モデルに割り当てるように、モデル学習用データ保存部13に記憶された複数のモデル学習用データを、複数の学習モデルに割り当てる。さらに、学習部14は、学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられたモデル学習用データを用いて行うことで、学習モデルを定義するモデルパラメータを求める。そして、学習部14は、複数の学習モデルそれぞれのモデルパラメータを、モデルパラメータ保存部15に供給する。   The learning unit 14 assigns a plurality of model learning data stored in the model learning data storage unit 13 to a plurality of learning models so that one model learning data is assigned to one learning model. Further, the learning unit 14 obtains a model parameter that defines the learning model by performing learning of the time series pattern by the learning model using the model learning data assigned to the learning model. Then, the learning unit 14 supplies model parameters for each of the plurality of learning models to the model parameter storage unit 15.

ここで、学習部14が学習の対象とする複数の学習モデルの数Nは、教師データ分割部12で得られる複数の学習用モデルデータの数Nに一致する。   Here, the number N of the plurality of learning models to be learned by the learning unit 14 coincides with the number N of the plurality of learning model data obtained by the teacher data dividing unit 12.

したがって、例えば、教師データ分割部12では、教師データが、あらかじめ用意された学習モデルの数以下の数のモデル学習用データに分割される。あるいは、学習部14において、教師データ分割部12で得られた複数のモデル学習用データの数と同一の数の学習モデルが生成される。なお、学習モデルの実体は、メモリ等の記憶領域(例えば、オブジェクト指向プログラミングにおけるインスタンス)である。   Therefore, for example, in the teacher data dividing unit 12, the teacher data is divided into data for model learning equal to or less than the number of learning models prepared in advance. Alternatively, the learning unit 14 generates the same number of learning models as the number of model learning data obtained by the teacher data dividing unit 12. Note that the substance of the learning model is a storage area such as a memory (for example, an instance in object-oriented programming).

モデルパラメータ保存部15は、学習部14から供給されるモデルパラメータを記憶する。   The model parameter storage unit 15 stores model parameters supplied from the learning unit 14.

コネクティビティ算出部16は、モデル学習用データ保存部13に記憶されたモデル学習用データと、モデルパラメータ保存部15に記憶されたモデルパラメータとを用い、学習部14で学習が行われた複数の学習モデルすべてについて、コネクティビティを算出し、コネクティビティ保存部17に供給する。   The connectivity calculation unit 16 uses the model learning data stored in the model learning data storage unit 13 and the model parameters stored in the model parameter storage unit 15 to perform a plurality of learnings performed by the learning unit 14. For all the models, connectivity is calculated and supplied to the connectivity storage unit 17.

なお、コネクティビティとは、1つの学習モデルが学習した時系列パターンの後に、他の1つの学習モデルが学習した時系列パターンが接続する適切さを表す。コネクティビティ算出部16は、1つの学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を、コネクティビティとして算出する。   Note that connectivity represents the appropriateness of connecting a time series pattern learned by another learning model after a time series pattern learned by one learning model. The connectivity calculation unit 16 calculates the error between the last partial data sequence of the time series data generated by one learning model and the initial partial data sequence of the time series data generated by the other learning model. Calculate as

コネクティビティ保存部17は、コネクティビティ算出部16から供給されるコネクティビティを記憶する。   The connectivity storage unit 17 stores the connectivity supplied from the connectivity calculation unit 16.

データ生成装置20は、学習装置10で得られた学習後の複数の学習モデル(モデルパラメータ)と、その複数の学習モデルについて算出されたコネクティビティとに基づき、教師データに相当するような、複雑で、長時間の、滑らかな時系列データを生成するデータ生成処理を行う。   The data generation device 20 is complex and corresponds to teacher data based on a plurality of learning models (model parameters) after learning obtained by the learning device 10 and connectivity calculated for the plurality of learning models. Data generation processing for generating long time, smooth time-series data is performed.

すなわち、データ生成装置20は、データ生成処理として、学習後の複数の学習モデルのうちの、1つの学習モデルを、時系列データの生成に用いる学習モデルのシーケンスである生成用モデルシーケンスの始点となる始点モデルとして選択する処理を行う。さらに、データ生成装置20は、データ生成処理として、複数の学習モデルのうちの、他の1つの学習モデルを、生成用モデルシーケンスの終点となる終点モデルとして選択する処理を行う。   That is, as a data generation process, the data generation device 20 uses one learning model among a plurality of learning models after learning as a starting point of a generation model sequence that is a sequence of learning models used for generating time-series data. A process of selecting as a starting point model is performed. Further, as the data generation process, the data generation apparatus 20 performs a process of selecting another one of the plurality of learning models as an end point model that is an end point of the generation model sequence.

また、データ生成装置20は、データ生成処理として、コネクティビティに基づき、始点モデルから終点モデルまでの、ある学習モデルの並びを、生成用モデルシーケンスとして求める処理を行う。   In addition, as the data generation process, the data generation device 20 performs a process of obtaining an arrangement of a certain learning model from the start point model to the end point model as a generation model sequence based on the connectivity.

さらに、データ生成装置20は、データ生成処理として、生成用モデルシーケンスに基づき、教師データに相当するような、複雑で、長時間の、滑らかな時系列データを生成する処理を行う。   Further, the data generation device 20 performs a process of generating complex, long-time, smooth time-series data corresponding to the teacher data based on the generation model sequence as the data generation process.

データ生成装置20は、現在データ供給部21、目標データ供給部22、始点モデル選択部23、終点モデル選択部24、生成用モデルシーケンス算出部25、時系列データ生成部26、及び、時系列データ出力部27等から構成される。   The data generation device 20 includes a current data supply unit 21, a target data supply unit 22, a start point model selection unit 23, an end point model selection unit 24, a generation model sequence calculation unit 25, a time series data generation unit 26, and time series data. The output unit 27 and the like are included.

現在データ供給部21は、時系列データである現在データを、始点モデル選択部23、及び、時系列データ生成部26に供給する。   The current data supply unit 21 supplies current data, which is time series data, to the start point model selection unit 23 and the time series data generation unit 26.

ここで、データ処理装置が制御するロボット等は、教師データを構成するのと同様のベクトルの時系列を、観測可能なデータとして、データ処理装置に提供するようになっている。現在データとは、例えば、データ処理装置が制御するロボット等が提供する観測可能なセンサモータデータのうちの、現在時刻のサンプル(ベクトル)を含む、連続する複数のサンプルである。   Here, a robot or the like controlled by the data processing apparatus provides a time series of vectors similar to that constituting the teacher data to the data processing apparatus as observable data. The current data is, for example, a plurality of consecutive samples including samples (vectors) of the current time among observable sensor motor data provided by a robot or the like controlled by the data processing device.

なお、現在データを構成するサンプルの数は、例えば、モデル学習用データを構成するサンプルの数よりも少ないこととする。   Note that the number of samples constituting the current data is, for example, smaller than the number of samples constituting the model learning data.

現在データ供給部21は、例えば、データ処理装置が制御するロボット等が提供する観測可能なセンサモータデータから、現在データを抽出し、始点モデル選択部23、及び、時系列データ生成部26に供給する。   For example, the current data supply unit 21 extracts current data from observable sensor motor data provided by a robot or the like controlled by the data processing apparatus, and supplies the current data to the start point model selection unit 23 and the time-series data generation unit 26. To do.

目標データ供給部21は、時系列データである目標データを、終点モデル選択部24に供給する。   The target data supply unit 21 supplies target data that is time-series data to the end point model selection unit 24.

ここで、目標データは、現在データと同様(同一次元)のデータであり、例えば、ユーザ等の外部から、目標データ供給部21に提供される。   Here, the target data is the same data (same dimension) as the current data, and is provided to the target data supply unit 21 from the outside such as a user, for example.

例えば、データ生成装置20において、データ処理装置が制御するロボットがいる現在位置から、ユーザ等の外部から指定された位置(以下、目標位置ともいう)まで、ロボットを移動させるための時系列データであるセンサモータデータを生成する場合には、ロボットが、現在位置で得るセンサモータデータ(数サンプルのセンサモータデータ)が、現在データとなり、目標位置で得られるであろうセンサモータデータが、目標データとなる。   For example, in the data generation device 20, time-series data for moving the robot from a current position where the robot controlled by the data processing device is located to a position designated from the outside such as a user (hereinafter also referred to as a target position). When generating certain sensor motor data, the sensor motor data (several samples of sensor motor data) obtained by the robot at the current position becomes the current data, and the sensor motor data that would be obtained at the target position is the target data. It becomes.

始点モデル選択部23は、現在データ供給部21からの現在データに基づき、モデルパラメータ保存部15にモデルパラメータが記憶された複数の学習モデル、すなわち、学習後の複数の学習モデルのうちの、1つの学習モデルを、始点モデルとして選択する。さらに、始点モデル選択部23は、始点モデルを特定する始点モデルID(Identification)を、生成用モデルシーケンス算出部25に供給する。   The starting point model selection unit 23 is based on the current data from the current data supply unit 21, and among the plurality of learning models whose model parameters are stored in the model parameter storage unit 15, that is, among the learning models after learning, 1 One learning model is selected as the starting point model. Furthermore, the start point model selection unit 23 supplies a start point model ID (Identification) for specifying the start point model to the generation model sequence calculation unit 25.

終点モデル選択部24は、目標データ供給部22からの目標データに基づき、モデルパラメータ保存部15にモデルパラメータが記憶された複数の学習モデル、すなわち、学習後の複数の学習モデルのうちの、1つの学習モデルを、終点モデルとして選択する。さらに、終点モデル選択部24は、終点モデルを特定する終点モデルIDを、生成用モデルシーケンス算出部25に供給する。   The end point model selection unit 24 is based on the target data from the target data supply unit 22, and among the plurality of learning models whose model parameters are stored in the model parameter storage unit 15, that is, among the learning models after learning, 1 One learning model is selected as the end point model. Further, the end point model selection unit 24 supplies an end point model ID for specifying the end point model to the generation model sequence calculation unit 25.

ここで、始点モデルとは、時系列データの生成に用いる学習モデルのシーケンスである生成用モデルシーケンスの始点となる学習モデルであり、終点モデルとは、生成用モデルシーケンスの終点となる学習モデルである。   Here, the starting point model is a learning model that is the starting point of a generating model sequence that is a sequence of learning models used for generating time-series data, and the end point model is a learning model that is an end point of a generating model sequence. is there.

始点モデルは、時系列データ生成部26で生成される(長時間の)時系列データ(以下、生成時系列データともいう)の最初の部分を生成するのに用いられ、終点モデルは、生成時系列データの最後の部分を生成するのに用いられる。   The start point model is used to generate the first part of time series data (hereinafter also referred to as generation time series data) generated by the time series data generation unit 26, and the end point model is Used to generate the last part of the series data.

生成用モデルシーケンス算出部25は、始点モデル選択部23からの始点モデルIDによって特定される始点モデルから、終点モデル選択部24からの終点モデルIDによって特定される終点モデルまでの、複数の学習モデルの、ある並びを、生成用モデルシーケンスとして求める。   The generation model sequence calculation unit 25 has a plurality of learning models from the start point model specified by the start point model ID from the start point model selection unit 23 to the end point model specified by the end point model ID from the end point model selection unit 24. Is obtained as a generation model sequence.

すなわち、生成用モデルシーケンス算出部25は、コネクティビティ保存部17に記憶されたコネクティビティに対応する値を、1つの学習モデルの後に、他の1つの学習モデルを接続する接続コストとして、接続コストの累積値を最小にする、始点モデルから終点モデルまでの学習モデルの並びを、生成用モデルシーケンスとして求める。   That is, the generation model sequence calculation unit 25 accumulates the connection cost using the value corresponding to the connectivity stored in the connectivity storage unit 17 as the connection cost for connecting one learning model to another learning model. The sequence of learning models from the start point model to the end point model that minimizes the value is obtained as a generation model sequence.

生成用モデルシーケンス算出部25は、生成用モデルシーケンスを、時系列データ生成部26に供給する。   The generation model sequence calculation unit 25 supplies the generation model sequence to the time series data generation unit 26.

時系列データ生成部26は、生成用モデルシーケンス算出部25からの生成用モデルシーケンスを構成する学習モデル(始点モデル)に、現在データ供給部21からの現在データを与えることで、生成用モデルシーケンスを構成する各学習モデルに、時系列データを生成させる。   The time-series data generation unit 26 gives the current data from the current data supply unit 21 to the learning model (starting point model) constituting the generation model sequence from the generation model sequence calculation unit 25, thereby generating the generation model sequence. The time series data is generated in each learning model that constitutes.

さらに、時系列データ生成部26は、生成用モデルシーケンスを構成する各学習モデルが生成した時系列データ(以下、モデル生成データともいう)を、生成用モデルシーケンスとしての学習モデルの並びの順に接続した生成時系列データを、時系列データ出力部27に供給する。   Further, the time series data generation unit 26 connects the time series data generated by each learning model constituting the generation model sequence (hereinafter also referred to as model generation data) in the order of the learning models as the generation model sequence. The generated time-series data is supplied to the time-series data output unit 27.

なお、時系列データ生成部26は、生成用モデルシーケンス算出部25からの生成用モデルシーケンスを構成する学習モデルに、現在データ供給部21からの現在データを与えて、モデル生成データを生成する前に、生成用モデルシーケンスを構成する学習モデルについて、学習モデルが生成する時系列データ(モデル生成データ)の最後の一部分のデータ列と、後(直後)に接続される学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を小さくするように、学習モデルの内部状態の初期値を決定する。   The time series data generation unit 26 gives the current data from the current data supply unit 21 to the learning model constituting the generation model sequence from the generation model sequence calculation unit 25 before generating model generation data. In addition, with respect to the learning model that constitutes the generation model sequence, the last part of the time series data (model generation data) generated by the learning model and the time series generated by the learning model connected after (immediately after) The initial value of the internal state of the learning model is determined so as to reduce the error from the data string of the first part of the data.

そして、時系列データ生成部26は、その初期値を、学習モデルに与えて、時系列データ(モデル生成データ)を生成する。その結果、生成用モデルシーケンスを構成する各学習モデルが生成したモデル生成データを、生成用モデルシーケンスとしての学習モデルの並びの順に接続した生成時系列データは、滑らかな時系列データとなる。   Then, the time series data generation unit 26 gives the initial value to the learning model, and generates time series data (model generation data). As a result, the generation time series data obtained by connecting the model generation data generated by each learning model constituting the generation model sequence in the order of the learning models as the generation model sequence becomes smooth time series data.

[学習装置10の詳細構成例]
図2は、図1の学習装置10のより詳細な構成例を示している。
[Detailed Configuration Example of Learning Device 10]
FIG. 2 shows a more detailed configuration example of the learning device 10 of FIG.

なお、図2では、教師データ分割部12において、教師データが、複数であるN個のモデル学習用データに分割されることとする。   In FIG. 2, the teacher data dividing unit 12 divides the teacher data into a plurality of N pieces of model learning data.

ここで、N個のモデル学習用データの、時系列順で、n番目を、以下、モデル学習用データ#nとも記載する。   Here, the nth of the N pieces of model learning data in time series order is also referred to as model learning data #n.

上述のように、教師データ分割部12において、教師データが、N個のモデル学習用データ#1,#2,・・・,#Nに分割される場合、モデル学習用データ保存部13では、そのN個のモデル学習用データ#1ないし#Nが記憶される。   As described above, when the teacher data is divided into N pieces of model learning data # 1, # 2,..., #N in the teacher data dividing unit 12, the model learning data storage unit 13 The N pieces of model learning data # 1 to #N are stored.

学習部14は、データ割り当て部41と、モデル学習用データ#1ないし#Nの数に等しいN個の演算部421,422,・・・42N等から構成される。 The learning unit 14 includes a data allocating unit 41 and N arithmetic units 42 1 , 42 2 ,... 42 N equal to the number of model learning data # 1 to #N.

データ割り当て部41は、モデル学習用データ保存部13に記憶されたN個のモデル学習用データ#1ないし#Nを読み出す。さらに、データ割り当て部41は、1つのモデル学習用データ#nを、1つの学習モデル#nに割り当てるように、N個のモデル学習用データ#1ないし#Nを、N個の学習モデル#1ないし#Nに割り当てる。   The data allocation unit 41 reads out N pieces of model learning data # 1 to #N stored in the model learning data storage unit 13. Further, the data allocation unit 41 allocates N model learning data # 1 to #N to N learning models # 1 so that one model learning data #n is allocated to one learning model #n. Assign to #N.

そして、データ割り当て部41は、モデル学習用データ#nを、学習モデル#nのモデルパラメータを演算する演算部42nに供給する。 Then, the data allocation unit 41 supplies the model learning data #n to the calculation unit 42 n that calculates the model parameter of the learning model #n.

演算部42nは、学習モデル#nによる時系列パターンの学習を、その学習モデル#nに割り当てられたモデル学習用データ#nを用いて行うことで、学習モデル#nを定義するモデルパラメータ#nを求め(演算し)、モデルパラメータ保存部15に供給する。 The calculation unit 42 n performs learning of the time series pattern by the learning model #n by using the model learning data #n assigned to the learning model #n, so that the model parameter # that defines the learning model #n is used. n is obtained (calculated) and supplied to the model parameter storage unit 15.

モデルパラメータ保存部15は、学習部14の演算部421ないし42Nから供給される、学習モデル#1ないし#Nそれぞれを定義するモデルパラメータ#1ないし#Nを記憶する。 The model parameter storage unit 15 stores model parameters # 1 to #N defining the learning models # 1 to #N supplied from the calculation units 42 1 to 42 N of the learning unit 14, respectively.

コネクティビティ算出部16は、モデルペア選択部51、モデルパラメータ供給部52、2個の認識生成部53及び54、並びに、コネクティビティ演算部55等から構成される。   The connectivity calculation unit 16 includes a model pair selection unit 51, a model parameter supply unit 52, two recognition generation units 53 and 54, a connectivity calculation unit 55, and the like.

モデルペア選択部51は、N個の学習モデル#1ないし#Nから、任意の2つの学習モデルの並び(順列)を、モデルペアとして選択し、モデルパラメータ供給部52に供給する。   The model pair selection unit 51 selects an arbitrary two learning model sequence (permutation) from the N learning models # 1 to #N as a model pair and supplies the model pair to the model parameter supply unit 52.

すなわち、モデルペア選択部51は、N個の学習モデル#1ないし#Nのうちの1つの学習モデルを、順次、注目モデルとして選択する。さらに、モデルペア選択部51は、注目モデルに対して、N個の学習モデル#1ないし#Nのうちの、注目モデルの他の1つの学習モデルを、注目モデルの後に接続される後モデルとして選択する。そして、モデルペア選択部51は、注目モデルと、後モデルとの並び(順列)を、モデルペアとして、モデルパラメータ供給部52に供給する。   That is, the model pair selection unit 51 sequentially selects one learning model among the N learning models # 1 to #N as the attention model. Further, the model pair selection unit 51 selects one of the N learning models # 1 to #N as the subsequent model connected to the target model after the target model. select. The model pair selection unit 51 then supplies the model parameter supply unit 52 with the arrangement (permutation) of the model of interest and the subsequent model as a model pair.

モデルパラメータ供給部52は、モデルペ選択部51からのモデルペアを構成する2つの学習モデルのモデルパラメータを、モデルパラメータ保存部15から読み出す。さらに、モデルパラメータ供給部52は、モデルパラメータ保存部15から読み出したモデルパラメータのうちの、モデルペアを構成する2つの学習モデルの並びのうちの1番目の学習モデル(以下、前モデルともいう)のモデルパラメータを、認識生成部53に供給する。   The model parameter supply unit 52 reads out the model parameters of the two learning models constituting the model pair from the model pair selection unit 51 from the model parameter storage unit 15. Further, the model parameter supply unit 52 is the first learning model (hereinafter also referred to as the previous model) in the sequence of two learning models constituting the model pair among the model parameters read from the model parameter storage unit 15. Are supplied to the recognition generation unit 53.

また、モデルパラメータ供給部52は、モデルパラメータ保存部15から読み出したモデルパラメータのうちの、後モデル(モデルペアを構成する2つの学習モデルの並びのうちの2番目の学習モデル)のモデルパラメータを、認識生成部54に供給する。   In addition, the model parameter supply unit 52 sets the model parameters of the subsequent model (second learning model in the sequence of two learning models constituting the model pair) out of the model parameters read from the model parameter storage unit 15. To the recognition generation unit 54.

認識生成部53は、モデルパラメータ供給部52からの、前モデルのモデルパラメータを、学習モデルに設定することで、前モデルを生成する(例えば、オブジェクト指向プログラミングにおける、前モデルとしての学習モデルのインスタンスを生成する)。   The recognition generation unit 53 generates the previous model by setting the model parameter of the previous model from the model parameter supply unit 52 in the learning model (for example, an instance of the learning model as the previous model in object-oriented programming). Generate).

また、認識生成部53は、前モデルに割り当てられたモデル学習用データを、モデル学習用データ保存部13から読み込み、前モデルに与えることで、前モデルから、時系列データであるモデル生成データを生成する。   In addition, the recognition generation unit 53 reads the model learning data assigned to the previous model from the model learning data storage unit 13 and gives it to the previous model, so that the model generation data that is time-series data is obtained from the previous model. Generate.

ここで、本実施の形態では、学習モデルは、内部状態を有し、時系列データ(モデル生成データ)の生成時には、内部状態の初期値が、学習モデルに与えられる。学習モデルから生成されるモデル生成データは、内部状態の初期値によって異なり、認識生成部53は、前モデルが生成するモデル生成データの最後の一部分のデータ列(複数サンプル)と、認識生成部54が後モデルから生成するモデル生成データの最初の一部分のデータ列との誤差(以下、接続誤差ともいう)が小さくなるように、前モデルに与える内部状態の初期値を決定する(更新する)。   Here, in the present embodiment, the learning model has an internal state, and an initial value of the internal state is given to the learning model when generating time-series data (model generation data). The model generation data generated from the learning model differs depending on the initial value of the internal state. The recognition generation unit 53 includes a data string (a plurality of samples) of the last part of the model generation data generated by the previous model, and the recognition generation unit 54. The initial value of the internal state given to the previous model is determined (updated) so that the error (hereinafter also referred to as a connection error) with the data string of the first part of the model generation data generated from the subsequent model is reduced.

そして、認識生成部53は、接続誤差が小さくなったときの内部状態の初期値を、前モデルに与えて、その前モデルから、モデル生成データを生成し、コネクティビティ演算部55に供給する。   Then, the recognition generation unit 53 gives the initial value of the internal state when the connection error becomes small to the previous model, generates model generation data from the previous model, and supplies it to the connectivity calculation unit 55.

認識生成部54は、モデルパラメータ供給部52からの、後モデルのモデルパラメータを、学習モデルに設定することで、後モデルを生成する(例えば、オブジェクト指向プログラミングにおける、後モデルとしての学習モデルのインスタンスを生成する)。   The recognition generation unit 54 generates a post model by setting the model parameter of the post model from the model parameter supply unit 52 in the learning model (for example, an instance of the learning model as the post model in object-oriented programming). Generate).

また、認識生成部54は、後モデルに割り当てられたモデル学習用データを、モデル学習用データ保存部13から読み込み、後モデルに与えることで、後モデルから、時系列データであるモデル生成データを生成する。   Further, the recognition generation unit 54 reads the model learning data assigned to the post model from the model learning data storage unit 13 and gives it to the post model, so that the model generation data that is time-series data is obtained from the post model. Generate.

ここで、認識生成部54も、認識生成部53と同様に、後モデルが生成するモデル生成データの最初の一部分のデータ列と、認識生成部53が前モデルから生成するモデル生成データの最後の一部分のデータ列との誤差(接続誤差)が小さくなるように、後モデルに与える内部状態の初期値を決定する(更新する)。   Here, similarly to the recognition generation unit 53, the recognition generation unit 54 also includes the first partial data string of the model generation data generated by the subsequent model and the last model generation data generated by the recognition generation unit 53 from the previous model. An initial value of an internal state to be given to the subsequent model is determined (updated) so that an error (connection error) with a partial data string is reduced.

そして、認識生成部54は、接続誤差が小さくなったときの内部状態の初期値を、後モデルに与えて、その後モデルから、モデル生成データを生成し、コネクティビティ演算部55に供給する。   Then, the recognition generation unit 54 gives the initial value of the internal state when the connection error becomes small to the subsequent model, and then generates model generation data from the model and supplies it to the connectivity calculation unit 55.

コネクティビティ演算部55は、認識生成部53からの、前モデルから生成されたモデル生成データの最後の一部分のデータ列と、認識生成部54からの、後モデルから生成されたモデル生成データの最初の一部分のデータ列との接続誤差を求める。そして、コネクティビティ演算部55は、その接続誤差を、前モデルに対する後モデルのコネクティビティとして、コネクティビティ保存部17に供給する。   The connectivity calculation unit 55 includes a data string of the last part of the model generation data generated from the previous model from the recognition generation unit 53 and the first model generation data generated from the rear model from the recognition generation unit 54. Find the connection error with a part of the data string. Then, the connectivity calculation unit 55 supplies the connection error to the connectivity storage unit 17 as the connectivity of the rear model with respect to the previous model.

ここで、学習モデル#iに対する学習モデル#jのコネクティビティを、cijと表す(i=1,2,・・・,N:j=1,2,・・・,N:i≠j)。 Here, the connectivity of the learning model #j for learning model #i, expressed as c ij (i = 1,2, ··· , N: j = 1,2, ···, N: i ≠ j).

コネクティビティ保存部17は、コネクティビティ算出部16(のコネクティビティ演算部55)から供給される、N個の学習モデルについての、N×N−N個のコネクティビティcijを記憶する。 The connectivity storage unit 17 stores N × N−N connectivity c ij for N learning models supplied from the connectivity calculation unit 16 (the connectivity calculation unit 55).

[学習モデルの説明]
次に、図1の学習装置10で学習に用いられる学習モデルについて説明する。
[Description of learning model]
Next, a learning model used for learning in the learning apparatus 10 of FIG. 1 will be described.

学習モデルとしては、力学系を近似することができるモデル(力学系近似モデル)のうちの、内部状態を有する力学系近似モデルを採用することができる。   As a learning model, a dynamic system approximation model having an internal state among models capable of approximating a dynamic system (dynamic system approximation model) can be adopted.

内部状態を有する力学系近似モデルとしては、例えば、RNNがある。   An example of a dynamic system approximation model having an internal state is RNN.

図3は、RNNの構成例を示している。   FIG. 3 shows a configuration example of the RNN.

ここで、あるシステム(系)にデータを入力したときに、そのデータに対して、システムから出力されるデータを、出力データというとともに、システムに入力されるデータを、入力データという。   Here, when data is input to a certain system (system), data output from the system with respect to the data is referred to as output data, and data input to the system is referred to as input data.

図3では、RNNは、入力層、隠れ層(中間層)、及び出力層の3層で構成されている。入力層、隠れ層、及び出力層は、それぞれ任意の数の、ニューロンに相当するユニットにより構成される。   In FIG. 3, the RNN is composed of three layers: an input layer, a hidden layer (intermediate layer), and an output layer. Each of the input layer, the hidden layer, and the output layer is configured by an arbitrary number of units corresponding to neurons.

RNNでは、入力層の一部のユニットである入力ユニットに、外部から入力データxtが入力(供給)される。ここで、入力データxtは、時刻tのサンプル(値)を表す。 In the RNN, input data xt is input (supplied) from the outside to an input unit that is a part of the input layer. Here, the input data x t represents the sample time t (value).

入力層の、入力データxtが入力される入力ユニット以外の、残りのユニットは、コンテキストユニットであり、コンテキストユニットには、出力層の一部のユニットの出力が、内部状態を表すコンテキストとしてフィードバックされる。 The remaining units of the input layer other than the input unit to which the input data xt is input are context units, and the output of some units of the output layer is fed back to the context unit as a context representing the internal state. Is done.

ここで、時刻tの入力データxtが入力層の入力ユニットに入力されるときに入力層のコンテキストユニットに入力される時刻tのコンテキストを、ctと記載する。 Here, the context of the time t which is input to the context unit of the input layer when the input data x t at time t is input to the input unit of the input layer, referred to as c t.

隠れ層のユニットは、入力層に入力される入力データxtとコンテキストctを対象として、所定のウエイト(重み)を用いた重み付け加算を行い、その重み付け加算の結果を引数とする非線形関数の演算を行って、その演算結果を、出力層のユニットに出力する。 The hidden layer unit performs weighted addition using predetermined weights (weights) for the input data x t and context c t input to the input layer, and the function of the nonlinear function using the result of the weighted addition as an argument. An operation is performed, and the operation result is output to the output layer unit.

出力層のユニットでは、隠れ層のユニットが出力するデータを対象として、隠れ層のユニットと同様の処理が行われる。そして、出力層の一部のユニットからは、上述したように、次の時刻t+1のコンテキストct+1が出力され、入力層にフィードバックされる。また、出力層の残りのユニットからは、例えば、入力データxtに対する出力データが出力される。 In the output layer unit, the same processing as the hidden layer unit is performed on the data output from the hidden layer unit. Then, as described above, the context c t + 1 at the next time t + 1 is output from some units in the output layer and fed back to the input layer. Further, from the remaining units of the output layer, for example, output data corresponding to input data x t is output.

すなわち、RNNの学習は、例えば、RNNに対して、ある時系列データの時刻tのサンプルを、入力データとして与えるとともに、その時系列データの、次の時刻t+1のサンプルを、出力データの真値として与え、出力データの、真値に対する誤差を小さくするように行われる。   In other words, RNN learning is performed by, for example, giving RNN a sample at time t of certain time-series data as input data, and adding a sample at time t + 1 of the time-series data to the true of output data. The value is given as a value, and the error of the output data with respect to the true value is reduced.

このような学習が行われたRNNでは、入力データxtに対する出力データとして、その入力データxtの次の時刻t+1の入力データxt+1の予測値x* t+1が出力される。 In such learning is performed RNN, as output data to the input data x t, predicted value x * t + 1 of the input data x t + 1 at the next time t + 1 of the input data x t is output The

なお、上述したように、RNNでは、ユニットへの入力が重み付け加算されるが、この重み付け加算に用いられるウエイト(重み)が、RNNのモデルパラメータである。RNNのモデルパラメータとしてのウエイトには、入力ユニットから隠れ層のユニットへのウエイト、コンテキストユニットから隠れ層のユニットへウエイト、隠れ層のユニットから出力層のユニットへのウエイト等がある。   As described above, in the RNN, the input to the unit is weighted and added. The weight (weight) used for the weighted addition is a model parameter of the RNN. The weights as model parameters of the RNN include weights from the input unit to the hidden layer unit, weights from the context unit to the hidden layer unit, weights from the hidden layer unit to the output layer unit, and the like.

以上のようなRNNを、学習モデルとして採用する場合には、そのRNNの学習時には、入力データ及び出力データの真値として、時系列データであるモデル学習用データ(学習モデルに割り当てられたモデル学習用データ)が与えられる。   When the above RNN is adopted as a learning model, model learning data (model learning assigned to the learning model) that is time-series data is used as the true value of the input data and output data when learning the RNN. Data).

そして、RNNの学習では、モデル学習用データ#nの時刻tのサンプル(先頭からt番目のサンプル)を入力データとして、RNNに与えたときに、RNNが出力する出力データとしての時刻t+1のサンプルの予測値の予測誤差を小さくするウエイトが、例えば、BPTT(Back-Propagation Through Time)法により求められる。   In the learning of the RNN, the sample at the time t of the model learning data #n (t-th sample from the beginning) is used as the input data, and when given to the RNN, the time t + 1 as the output data output by the RNN The weight for reducing the prediction error of the predicted value of the sample is obtained by, for example, the BPTT (Back-Propagation Through Time) method.

また、RNNの学習時において、コンテキストの初期値(以下、初期コンテキストともいう)は、例えば、入力データに対する出力データ(入力データに対してRNNが出力する出力データ)の、出力データの真値に対する誤差が小さくなるように、自己組織的に決定(更新)される。   Further, when learning the RNN, the initial value of the context (hereinafter also referred to as the initial context) is, for example, the output data for the input data (the output data output by the RNN for the input data) with respect to the true value of the output data. It is determined (updated) in a self-organized manner so as to reduce the error.

ここで、自己組織的に決定されるとは、外部からの制御なしに、いわば自発的に決定されることを意味する。   Here, being determined in a self-organized manner means that it is determined spontaneously without any external control.

なお、RNNからの時系列データ(モデル生成データ)の生成は、外部から与えられるデータを、入力データとして、RNNに与えることや、RNNが出力する出力データを、入力データとして、RNNに与えることによって行われる。   In addition, generation of time series data (model generation data) from RNN is to give externally supplied data to RNN as input data, or to give output data output by RNN to RNN as input data Is done by.

以下では、学習モデルは、RNNであるとする。   In the following, it is assumed that the learning model is RNN.

[教師データの分割と、学習モデルの学習の説明]
図4を参照して、教師データ分割部12(図1)による教師データの分割と、その分割によって得られるモデル学習用データを用いた学習モデルの学習について説明する。
[Explanation of teacher data division and learning model learning]
With reference to FIG. 4, the division of the teacher data by the teacher data dividing unit 12 (FIG. 1) and learning of the learning model using the model learning data obtained by the division will be described.

図4は、教師データと、その教師データを分割して得られるモデル学習用データの、学習モデルへの割り当てとを示している。   FIG. 4 shows teacher data and assignment of model learning data obtained by dividing the teacher data to a learning model.

図4において、教師データは、2つのコンポーネントを有するベクトルの時系列になっている。   In FIG. 4, the teacher data is a time series of vectors having two components.

教師データ分割部12(図1)は、複数の学習モデルに、教師データを分担して学習させるために、教師データを、Lサンプルがオーバラップする、S(>L)サンプルのモデル学習用データに分割する。   The teacher data dividing unit 12 (FIG. 1) uses S (> L) sample model learning data in which L samples overlap in order to share the learning data with a plurality of learning models. Divide into

図4では、教師データは、4つのモデル学習用データ#1ないし#4に分割されている。   In FIG. 4, the teacher data is divided into four model learning data # 1 to # 4.

ここで、モデル学習用データにおいて、そのモデル学習用データと隣接するモデル学習用データとオーバラップしているLサンプルを、以下、モデル学習用データのオーバラップ部分ともいう。   Here, in the model learning data, the L sample that overlaps the model learning data and the adjacent model learning data is also referred to as an overlap portion of the model learning data.

Sサンプルの時系列であるモデル学習用データでは、その最初のLサンプルと、最後のLサンプルが、オーバラップ部分となっている(但し、正確には、教師データから分割された最初のモデル学習用データでは、最後のLサンプルだけがオーバラップ部分となっており、最後のモデル学習用データでは、最初のLサンプルだけがオーバラップ部分となっている)。   In the model learning data, which is a time series of S samples, the first L sample and the last L sample are overlapped parts (however, to be exact, the first model learning divided from the teacher data) In the data for use, only the last L sample is an overlap part, and in the last model learning data, only the first L sample is an overlap part).

学習部14(図1)は、モデル学習用データ#1を、学習モデル#1に、モデル学習用データ#2を、学習モデル#2に、モデル学習用データ#3を、学習モデル#3に、モデル学習用データ#4を、学習モデル#4に、それぞれ割り当てる。   The learning unit 14 (FIG. 1) converts the model learning data # 1 into the learning model # 1, the model learning data # 2, the learning model # 2, the model learning data # 3, and the learning model # 3. The model learning data # 4 is assigned to the learning model # 4.

そして、学習部14は、学習モデル#nによる時系列パターンの学習を、その学習モデル#nに割り当てられたモデル学習用データ#nを用いて行うことで、モデル学習用データ#nのダイナミクスとしての時系列パターンを、学習モデル#nの学習則に従って、時間発展方程式の関数近似モデルとして獲得する。   Then, the learning unit 14 performs learning of the time series pattern by the learning model #n by using the model learning data #n assigned to the learning model #n, thereby obtaining the dynamics of the model learning data #n. Is obtained as a function approximation model of the time evolution equation according to the learning rule of the learning model #n.

すなわち、学習モデル#nが、RNNである場合には、学習部14は、モデル学習用データ#nを用いて、RNNのモデルパラメータであるウエイト(例えば、モデル学習用データ#nの時刻tのサンプルを入力データとして、RNNに与えたときに、RNNが出力する出力データとしての時刻t+1のサンプルの予測値の予測誤差を小さくするウエイト)が、例えば、BPTT法により求められる。   That is, when the learning model #n is an RNN, the learning unit 14 uses the model learning data #n to determine the weight that is the model parameter of the RNN (for example, at the time t of the model learning data #n. When the sample is given to the RNN as input data, a weight for reducing the prediction error of the prediction value of the sample at time t + 1 as output data output by the RNN is obtained by, for example, the BPTT method.

したがって、学習部14では、隣接(連続)するモデル学習用データ#n及び#n+1がそれぞれ割り当てられる2つの学習モデル#n及び#n+1に注目した場合、学習モデル#n+1の学習は、最初のオーバラップ部分としてのLサンプルが、学習モデル#nの学習に用いられるモデル学習用データ#nの最後のオーバラップ部分としてのLサンプルに一致しているモデル学習用データ#n+1を用いて行われる。   Therefore, in the learning unit 14, when attention is paid to two learning models #n and # n + 1 to which the adjacent (continuous) model learning data #n and # n + 1 are assigned, the learning model # n + 1 Learning is model learning data #n where the L sample as the first overlap part matches the L sample as the last overlap part of model learning data #n used for learning learning model #n This is done using +1.

[コネクティビティの算出の方法]
図5を参照して、コネクティビティ算出部16(図1)によるコネクティビティの算出の方法について説明する。
[Method of calculating connectivity]
With reference to FIG. 5, the connectivity calculation method by the connectivity calculation unit 16 (FIG. 1) will be described.

コネクティビティ算出部16は、学習部14による学習によって複数の学習モデル#1ないし#Nのそれぞれに記憶されたダイナミクスとしての時系列パターンどうしが接続する接続性(適切さ)を表すコネクティビティを求める。   The connectivity calculation unit 16 obtains connectivity representing connectivity (appropriateness) between time-series patterns as dynamics stored in each of the plurality of learning models # 1 to #N by learning by the learning unit 14.

すなわち、コネクティビティ算出部16は、複数の学習モデル#1ないし#Nから、2つの学習モデル#iと#j(i≠j)の並び(順列)を、モデルペアとして選択する。   That is, the connectivity calculation unit 16 selects, from the plurality of learning models # 1 to #N, an arrangement (permutation) of two learning models #i and #j (i ≠ j) as a model pair.

さらに、コネクティビティ算出部16は、モデルペアを構成する学習モデル#iと#jが生成するモデル生成データ#iと#jそれぞれの一部分のデータ列(複数サンプル)であるオーバラップ部分の、いわば順伝播と逆伝播(順伝搬と逆伝搬)を繰り返す。これにより、コネクティビティ算出部16は、学習モデル#iと#jそれぞれが生成するモデル生成データ#iと#jどうしを、なるべく繋がりやすくする、学習モデル#iと#jの初期コンテキスト(以下、最適初期コンテキストともいう)を求める。   In addition, the connectivity calculation unit 16 performs the order of the overlapping portion, which is a partial data string (a plurality of samples) of the model generation data #i and #j generated by the learning models #i and #j constituting the model pair. Repeat propagation and back propagation (forward and back propagation). Thereby, the connectivity calculation unit 16 makes it possible to connect the model generation data #i and #j generated by the learning models #i and #j, respectively, as much as possible. Also called initial context).

ここで、モデル生成データのオーバラップ部分とは、学習モデルの学習に用いられたモデル学習用データのオーバラップ部分に相当する部分である。   Here, the overlap part of the model generation data is a part corresponding to the overlap part of the model learning data used for learning the learning model.

すなわち、図4で説明したように、学習モデルの学習は、オーバラップ部分を有するSサンプルのモデル学習用データを用いて行われる。したがって、学習モデルから、Sサンプルの時系列を、モデル生成データとして生成させた場合、そのモデル生成データは、学習に用いられたモデル学習用データのオーバラップ部分に相当する部分を有する。この、モデル生成データが有する、モデル学習用データのオーバラップ部分に相当する部分が、モデル生成データのオーバラップ部分である。   That is, as described with reference to FIG. 4, learning of the learning model is performed using model learning data of S samples having overlapping portions. Therefore, when a time series of S samples is generated as model generation data from a learning model, the model generation data has a portion corresponding to an overlap portion of model learning data used for learning. The part corresponding to the overlap part of the model learning data included in the model generation data is the overlap part of the model generation data.

コネクティビティ算出部16は、最適初期コンテキストを求めた後、学習モデル#iと#jに、それぞれの最適初期コンテキストを与えて、モデル生成データ#iと#jを生成する。   After calculating the optimal initial context, the connectivity calculation unit 16 assigns the respective optimal initial contexts to the learning models #i and #j to generate model generation data #i and #j.

そして、コネクティビティ算出部16は、モデルペアを構成する前モデル、つまり、モデルペアの1番目の学習モデル#iが生成したモデル生成データ#iの最後のオーバラップ部分(最後のLサンプル)と、後モデル、つまり、モデルペアの2番目の学習モデル#jが生成したモデル生成データ#jの最初のオーバラップ部分(最初のLサンプル)との誤差(接続誤差)を、前モデルとしての学習モデル#iに対する、後モデルとしての学習モデル#jのコネクティビティcijとして求める。 Then, the connectivity calculation unit 16 includes the last overlap part (last L sample) of the model generated data #i generated by the first model constituting the model pair, that is, the first learning model #i of the model pair, The learning model as the previous model is the error (connection error) with the first overlap part (first L sample) of the model generation data #j generated by the second learning model #j of the model pair, that is, the second model. It is obtained as connectivity c ij of learning model #j as a post model for #i.

ここで、学習モデルの学習では、図4で説明したように、2つの学習モデル#n及び#n+1に注目した場合、学習モデル#n+1の学習は、最初のオーバラップ部分としてのLサンプルが、学習モデル#nの学習に用いられるモデル学習用データ#nの最後のオーバラップ部分としてのLサンプルに一致しているモデル学習用データ#nを用いて行われる。   Here, in learning of the learning model, as described with reference to FIG. 4, when attention is paid to the two learning models #n and # n + 1, learning of the learning model # n + 1 is performed as the first overlap part. The L sample is performed using the model learning data #n that matches the L sample as the last overlap portion of the model learning data #n used for learning the learning model #n.

この場合、学習モデル#nが生成するモデル生成データ#nの最後のオーバラップ部分としてのLサンプルと、学習モデル#n+1が生成するモデル生成データ#n+1の最初のオーバラップ部分としてのLサンプルとは、理想的には、一致し、誤差(接続誤差)は0となる。   In this case, the L sample as the last overlap part of model generation data #n generated by learning model #n and the first overlap part of model generation data # n + 1 generated by learning model # n + 1 Ideally, the L samples match, and the error (connection error) is zero.

一方、最初のオーバラップ部分が、学習モデル#nの学習に用いられるモデル学習用データ#nの最後のオーバラップ部分に一致していないモデル学習用データ#n'(n'≠n,n'≠n-1,n'≠n+1)を用いて学習が行われた学習モデル#n'が生成するモデル生成データ#n'の最初のオーバラップ部分は、学習モデル#nが生成するモデル生成データ#nの最後のオーバラップ部分とは一致しない。そして、その一致しない度合い(程度)は、学習モデル#n'の学習に用いられたモデル学習用データ#n'の最初のオーバラップ部分と、学習モデル#nの学習に用いられるモデル学習用データ#nの最後のオーバラップ部分とが一致しない程度に相当する。   On the other hand, model learning data #n ′ (n ′ ≠ n, n ′) in which the first overlap portion does not match the last overlap portion of model learning data #n used for learning learning model #n ≠ n-1, n ′ ≠ n + 1), the first overlap part of the model generation data #n ′ generated by the learning model #n ′ generated by learning is the model generated by the learning model #n It does not match the last overlap part of generated data #n. The degree (degree) of the mismatch is determined by the first overlap portion of the model learning data #n ′ used for learning the learning model #n ′ and the model learning data used for learning the learning model #n. Corresponds to the extent that the last overlap part of #n does not match.

以上から、モデルペアを構成する学習モデル#i及び#jについては、学習モデル#iが生成したモデル生成データ#iの最後のオーバラップ部分と、学習モデル#jが生成したモデル生成データ#jの最初のオーバラップ部分とが一致する(一致しない)度合いは、学習モデル#iの学習に用いられたモデル学習用データ#iの最後のオーバラップ部分と、学習モデル#jの学習に用いられたモデル学習用データ#jの最初のオーバラップ部分とが一致する(一致しない)程度に相当する。   From the above, for learning models #i and #j that make up a model pair, the last overlap part of model generation data #i generated by learning model #i and model generation data #j generated by learning model #j The degree of coincidence (disagreement) with the first overlap part of is used for learning the last overlap part of model learning data #i used for learning learning model #i and learning model #j. This corresponds to the degree to which the first overlap portion of the model learning data #j matches (does not match).

ここで、学習モデル#iが生成したモデル生成データ#iの最後のオーバラップ部分と、学習モデル#jが生成したモデル生成データ#jの最初のオーバラップ部分とが一致しない度合いとしての誤差(接続誤差)を、学習モデル#iが学習した時系列パターンの時系列データの直後に、学習モデル#jが学習した時系列パターンの時系列データが接続する接続性を表すコネクティビティとして採用するために、教師データ分割部12(図1)では、教師データが、オーバラップ部分を有するモデル学習用データに分割される。   Here, an error as a degree that the last overlap part of the model generation data #i generated by the learning model #i does not match the first overlap part of the model generation data #j generated by the learning model #j ( Connection error) as the connectivity representing the connectivity that connects the time series data of the time series pattern learned by the learning model #j immediately after the time series data of the time series pattern learned by the learning model #i In the teacher data dividing unit 12 (FIG. 1), the teacher data is divided into model learning data having an overlap portion.

すなわち、教師データ分割部12において、教師データを、オーバラップ部分を有するモデル学習用データに分割するのは、コネクティビティを算出するためである。   That is, the reason why the teacher data dividing unit 12 divides the teacher data into model learning data having an overlap portion is to calculate connectivity.

図5を参照して、コネクティビティ算出部16(図1)によるコネクティビティの算出について、さらに説明する。   With reference to FIG. 5, the calculation of connectivity by the connectivity calculation unit 16 (FIG. 1) will be further described.

コネクティビティ算出部16は、N個の学習モデル#1ないし#Nのうちの1つの学習モデルから、前モデルとなる学習モデル#iを選択するとともに、その学習モデル#i以外の学習モデル#jを、後モデルとして選択する。   The connectivity calculation unit 16 selects a learning model #i as a previous model from one of N learning models # 1 to #N, and selects a learning model #j other than the learning model #i. Select as a post model.

そして、コネクティビティ算出部16は、前モデルである学習モデル#iの入力データの最初の1サンプルとして、学習モデル#iに割り当てられたモデル学習用データ#iの最初の1サンプルを設定する。   Then, the connectivity calculation unit 16 sets the first one sample of the model learning data #i assigned to the learning model #i as the first one sample of the input data of the learning model #i that is the previous model.

さらに、コネクティビティ算出部16は、後モデルである学習モデル#jの出力データの最後の1サンプルの真値として、学習モデル#jに割り当てられたモデル学習用データ#jの最後の1サンプルを設定する。   Further, the connectivity calculation unit 16 sets the last one sample of the model learning data #j assigned to the learning model #j as the true value of the last one sample of the output data of the learning model #j, which is the subsequent model. To do.

また、コネクティビティ算出部16は、前モデルである学習モデル#iと、後モデルである学習モデル#jのそれぞれの初期コンテキストとして、ランダムな値を設定する。   In addition, the connectivity calculation unit 16 sets random values as initial contexts of the learning model #i that is the previous model and the learning model #j that is the subsequent model.

そして、コネクティビティ算出部16は、前モデルである学習モデル#iに、入力データと初期コンテキストを与えて、例えば、モデル学習用データ#iと同一の長さのSサンプルのモデル生成データ#iを生成する。   Then, the connectivity calculation unit 16 gives input data and initial context to the learning model #i, which is the previous model, and, for example, generates model generation data #i of S samples having the same length as the model learning data #i. Generate.

前モデルである学習モデル#iから、Sサンプルのモデル生成データ#iを生成した後、コネクティビティ算出部16は、そのモデル生成データ#iの最後のオーバラップ部分であるLサンプルを、後モデルである学習モデル#jの入力データの最初のLサンプルとして設定する。   After generating the S sample model generation data #i from the learning model #i, which is the previous model, the connectivity calculation unit 16 converts the L sample, which is the last overlap portion of the model generation data #i, into the subsequent model. Set as the first L sample of the input data of a learning model #j.

そして、コネクティビティ算出部16は、後モデルである学習モデル#jに、入力データと初期コンテキストを与えて、例えば、モデル学習用データ#jと同一の長さのSサンプルのモデル生成データ#jを生成する。   Then, the connectivity calculation unit 16 gives the input data and the initial context to the learning model #j, which is the subsequent model, and, for example, generates the model generation data #j of S samples having the same length as the model learning data #j. Generate.

ここで、以上のように、前モデルである学習モデル#iから生成されたモデル生成データ#iの最後のオーバラップ部分であるLサンプルを、後モデルである学習モデル#jの入力データの最初のLサンプルとして設定し、後モデルである学習モデル#jから、モデル生成データ#jを生成することが、上述した、オーバラップ部分の順伝播である。   Here, as described above, the L sample that is the last overlap part of the model generation data #i generated from the learning model #i that is the previous model is used as the first input data of the learning model #j that is the subsequent model. The generation of the model generation data #j from the learning model #j, which is the subsequent model, is the above-described forward propagation of the overlap portion.

後モデルである学習モデル#jから、Sサンプルのモデル生成データ#jを生成した後、コネクティビティ算出部16は、そのモデル生成データ#jの最後のサンプルの、後モデルの出力データの最後の1サンプルの真値(上述したように、学習モデル#jに割り当てられたモデル学習用データ#jの最後の1サンプル)に対する予測誤差を求める。   After generating the model generation data #j of the S sample from the learning model #j that is the rear model, the connectivity calculation unit 16 adds the last one of the output data of the rear model of the last sample of the model generation data #j. A prediction error for the true value of the sample (the last one sample of the model learning data #j assigned to the learning model #j as described above) is obtained.

そして、コネクティビティ算出部16は、モデル生成データ#jの最後の1サンプルの予測誤差を、例えば、BPTT法に基づき、モデル生成データ#jの最初の1サンプルまで逆伝播(誤差の逆伝播)することで、その予測誤差を小さくするように、後モデルである学習モデル#jの初期コンテキストを更新する。   Then, the connectivity calculation unit 16 back propagates the prediction error of the last one sample of the model generation data #j to the first one sample of the model generation data #j based on the BPTT method, for example. Thus, the initial context of the learning model #j, which is the subsequent model, is updated so as to reduce the prediction error.

学習モデル#jの初期コンテキストの更新後、コネクティビティ算出部16は、学習モデル#jに、入力データ(上述したように、前モデルである学習モデル#iから生成されたモデル生成データ#iの最後のオーバラップ部分であるLサンプル)と、更新後の初期コンテキストを与えて、Sサンプルのモデル生成データ#jを生成する。   After the initial context of the learning model #j is updated, the connectivity calculation unit 16 adds the input data (as described above, the last of the model generation data #i generated from the previous model learning model #i) to the learning model #j. L sample) which is the overlap portion of) and the initial context after update are given, and model generation data #j of S sample is generated.

さらに、コネクティビティ算出部16は、後モデルである学習モデル#jから生成されたモデル生成データ#jの最初のオーバラップ部分であるLサンプルを、前モデルである学習モデル#iの最後のLサンプルの真値として設定する。   Furthermore, the connectivity calculation unit 16 uses the L sample that is the first overlap portion of the model generation data #j generated from the learning model #j that is the subsequent model as the last L sample of the learning model #i that is the previous model. Set as the true value of.

その後、コネクティビティ算出部16は、前モデルである学習モデル#iから生成されたモデル生成データ#iの最後のLサンプルの、前モデルの出力データの最後のLサンプルの真値(上述したように、初期コンテキストの更新後の学習モデル#jから生成されたモデル生成データ#jの最初のオーバラップ部分であるLサンプル)に対する予測誤差を求める。   Thereafter, the connectivity calculation unit 16 calculates the true value of the last L sample of the output data of the previous model (as described above) of the last L sample of the model generation data #i generated from the learning model #i that is the previous model. Then, a prediction error is obtained for the L sample that is the first overlap portion of the model generation data #j generated from the learning model #j after the initial context update.

そして、コネクティビティ算出部16は、モデル生成データ#iの最後のLサンプルの予測誤差を、例えば、BPTT法に基づき、モデル生成データ#iの最初の1サンプルまで逆伝播(誤差の逆伝播)することで、その予測誤差を小さくするように、前モデルである学習モデル#iの初期コンテキストを更新する。   Then, the connectivity calculation unit 16 back-propagates the prediction error of the last L sample of the model generation data #i to the first sample of the model generation data #i based on the BPTT method, for example. Thus, the initial context of the learning model #i that is the previous model is updated so as to reduce the prediction error.

学習モデル#iの初期コンテキストの更新後、コネクティビティ算出部16は、学習モデル#iに、入力データ(上述したように、前モデルである学習モデル#iに割り当てられたモデル学習用データ#iの最初の1サンプル)と、更新後の初期コンテキストを与えて、Sサンプルのモデル生成データ#iを生成する。   After updating the initial context of the learning model #i, the connectivity calculation unit 16 adds the input data (as described above, the model learning data #i assigned to the learning model #i, which is the previous model), to the learning model #i. The first sample) and the updated initial context are given, and model generation data #i of S samples is generated.

ここで、以上のように、後モデルである学習モデル#jから生成されたモデル生成データ#jの最初のオーバラップ部分であるLサンプルを、前モデルである学習モデル#iの出力データの最後のLサンプルの真値として設定し、その真値に対する、モデル生成データ#iの最後のLサンプルの予測誤差が小さくなるように、学習モデル#iの初期コンテキストを更新して、モデル生成データ#iを生成することが、上述した、オーバラップ部分の逆伝播である。   Here, as described above, the L sample that is the first overlap part of the model generation data #j generated from the learning model #j that is the subsequent model is used as the last of the output data of the learning model #i that is the previous model. Update the initial context of learning model #i so that the prediction error of the last L sample of model generation data #i for that true value is small, and set the model generation data # Generating i is the above-described back propagation of the overlap portion.

コネクティビティ算出部16は、前モデルである学習モデル#iから、Sサンプルのモデル生成データ#iを生成した後、そのモデル生成データ#iの最後のオーバラップ部分であるLサンプルを、後モデルである学習モデル#jの入力データの最初のLサンプルとして設定し、以下、同様の処理を繰り返す。   The connectivity calculation unit 16 generates the S sample model generation data #i from the learning model #i that is the previous model, and then uses the L model that is the last overlap portion of the model generation data #i as the subsequent model. This is set as the first L sample of input data of a learning model #j, and the same processing is repeated thereafter.

そして、コネクティビティ算出部16は、学習モデル#iから生成されるモデル生成データ#iの最後のLサンプルの予測誤差と、学習モデル#jから生成されるモデル生成データ#jの最後の1サンプルの予測誤差とが、例えば、収束すると、そのとき得られている初期コンテキストを、最適初期コンテキストとする。   The connectivity calculating unit 16 then predicts the prediction error of the last L sample of the model generation data #i generated from the learning model #i and the last one sample of the model generation data #j generated from the learning model #j. When the prediction error converges, for example, the initial context obtained at that time is set as the optimum initial context.

さらに、コネクティビティ算出部16は、学習モデル#iと#jのそれぞれに最適初期コンテキストを与えて、モデル生成データ#iと#jを生成する。   Furthermore, the connectivity calculation unit 16 gives the optimal initial context to each of the learning models #i and #j, and generates model generation data #i and #j.

そして、コネクティビティ算出部16は、モデル生成データ#iの最後のLサンプルと、モデル生成データ#jの最初のLサンプルとの誤差(接続誤差)を、学習モデル#iに対する学習モデル#jのコネクティビティcijとして求める。 Then, the connectivity calculation unit 16 converts the error (connection error) between the last L sample of the model generation data #i and the first L sample of the model generation data #j to the connectivity of the learning model #j with respect to the learning model #i. c Calculate as ij .

以上のように、コネクティビティ算出部16では、モデル生成データ#iの最後のLサンプルと、モデル生成データ#jの最初のLサンプルとの接続誤差を小さくするように、学習モデル#iと#jそれぞれの初期コンテキストが決定される。そして、その初期コンテキスト(最適初期コンテキスト)を、学習モデル#iと#jに与えて生成されるモデル生成データ#iと#jとの接続誤差が、学習モデル#iに対する学習モデル#jのコネクティビティcijとして求められる。 As described above, the connectivity calculation unit 16 reduces the connection error between the last L sample of the model generation data #i and the first L sample of the model generation data #j so as to reduce the connection model #i and #j. Each initial context is determined. The connection error between model generation data #i and #j generated by giving the initial context (optimal initial context) to learning models #i and #j is the connectivity of learning model #j to learning model #i. It is calculated as c ij .

なお、コネクティビティcij、すなわち、学習モデル#iが生成したモデル生成データ#iの最後のオーバラップ部分のLサンプルと、学習モデル#jが生成したモデル生成データ#jの最初のオーバラップ部分のLサンプルとの接続誤差は、例えば、式(1)に従って計算される。 Note that connectivity c ij , that is, the L overlap of the last overlap part of model generation data #i generated by learning model #i and the first overlap part of model generation data #j generated by learning model #j The connection error with the L sample is calculated, for example, according to Equation (1).

cij=Σ|yj(t)-yi(t+T)|
・・・(1)
c ij = Σ | y j (t) -y i (t + T) |
... (1)

ここで、式(1)において、Σは、変数tを、1ないしLの整数に変えての総和を表す。また、yj(t)は、学習モデル#jから生成されるモデル生成データ#jの時刻tのサンプル(モデル生成データ#jの先頭からtサンプル目)を表し、yi(t+T)は、学習モデル#iから生成されるモデル生成データ#iの時刻t+Tのサンプルを表す。 Here, in Equation (1), Σ represents the total sum when the variable t is changed to an integer of 1 to L. Y j (t) represents a sample at time t of model generation data #j generated from learning model #j (t sample from the top of model generation data #j), and y i (t + T) Represents a sample at time t + T of model generation data #i generated from learning model #i.

なお、式(1)において、Tは、式S-T=Lを満たす値である。この場合、モデル生成データ#iの最後のオーバラップ部分のLサンプルは、yi(1+T),yi(2+T),・・・,yi(L+T)(=yi(s))で表される。 In Equation (1), T is a value that satisfies Equation ST = L. In this case, the L sample of the last overlap part of the model generation data #i is y i (1 + T), y i (2 + T), ..., y i (L + T) (= y i (s)).

また、式(1)のコネクティビティcijは、値が小さいほど、学習モデル#iから生成されるモデル生成データ#iの直後に、学習モデル#jから生成されたモデル生成データ#jが続く(接続する)ことが、より適切である(自然である)ことを表す。 Further, the smaller the value of the connectivity c ij in the equation (1), the model generation data #j generated from the learning model #j immediately follows the model generation data #i generated from the learning model #i ( Connecting) is more appropriate (natural).

[学習装置10の動作]
図6を参照して、学習装置10(図1)の処理(学習処理)について説明する。
[Operation of Learning Device 10]
The process (learning process) of the learning device 10 (FIG. 1) will be described with reference to FIG.

学習処理では、ステップS11において、教師データ保存部11が、教師データを、教師データ分割部12に供給して、処理は、ステップS12に進む。   In the learning process, in step S11, the teacher data storage unit 11 supplies the teacher data to the teacher data dividing unit 12, and the process proceeds to step S12.

ステップS12では、教師データ分割部12は、教師データ保存部11からの時系列データを、例えば、図4で説明したように、Lサンプルのオーバラップ部分を有するN個のモデル学習用データ#1ないし#Nに分割する。さらに、教師データ分割部12は、N個のモデル学習用データ#1ないし#Nを、モデル学習用データ保存部13に供給して記憶させ、処理は、ステップS12からステップS13に進む。   In step S12, the teacher data dividing unit 12 converts the time-series data from the teacher data storage unit 11 into N pieces of model learning data # 1 having an overlap portion of L samples as described with reference to FIG. Or split into #N. Further, the teacher data dividing unit 12 supplies and stores the N model learning data # 1 to #N to the model learning data storage unit 13, and the process proceeds from step S12 to step S13.

ステップS13では、学習部14が、モデル学習用データを用いて、学習モデルの学習を行う。   In step S13, the learning unit 14 learns a learning model using the model learning data.

すなわち、学習部14は、1つのモデル学習用データ#nを、1つの学習モデル#nに割り当てるように、モデル学習用データ保存部13に記憶されたモデル学習用データ#1ないし#Nを、学習モデル#1ないし#Nに割り当てる。さらに、学習部14は、学習モデル#nによる時系列パターンの学習を、その学習モデル#nに割り当てられたモデル学習用データ#nを用いて行うことで、学習モデル#nを定義するモデルパラメータ#nを求める。そして、学習部14は、学習モデル#1ないし#Nそれぞれのモデルパラメータ#1ないし#Nを、モデルパラメータ保存部15に供給する。   That is, the learning unit 14 uses the model learning data # 1 to #N stored in the model learning data storage unit 13 so as to assign one model learning data #n to one learning model #n. Assign to learning models # 1 to #N. Further, the learning unit 14 performs learning of the time series pattern by the learning model #n using the model learning data #n assigned to the learning model #n, so that the model parameter that defines the learning model #n is used. Ask for #n. Then, the learning unit 14 supplies the model parameters # 1 to #N of the learning models # 1 to #N to the model parameter storage unit 15, respectively.

その後、処理は、ステップS13からステップS14に進み、モデルパラメータ保存部15は、学習部14から供給されるモデルパラメータ#1ないし#Nを記憶して、処理は、ステップS15に進む。   Thereafter, the process proceeds from step S13 to step S14, the model parameter storage unit 15 stores the model parameters # 1 to #N supplied from the learning unit 14, and the process proceeds to step S15.

ステップS15では、コネクティビティ算出部16が、モデル学習用データ保存部13に記憶されたモデル学習用データ#1ないし#Nと、モデルパラメータ保存部15に記憶されたモデルパラメータ#1ないし#Nとを用い、学習部14で学習が行われた学習モデル#1ないし#Nすべてについて、コネクティビティcijを算出するコネクティビティ算出処理を行い、学習処理は、終了する。 In step S 15, the connectivity calculation unit 16 uses the model learning data # 1 to #N stored in the model learning data storage unit 13 and the model parameters # 1 to #N stored in the model parameter storage unit 15. The connectivity calculation process for calculating the connectivity c ij is performed for all the learning models # 1 to #N that have been used and learned by the learning unit 14, and the learning process ends.

[コネクティビティ算出処理の説明]
図7ないし図9を参照して、図6のステップS15で行われるコネクティビティ算出処理について説明する。
[Explanation of connectivity calculation processing]
With reference to FIG. 7 thru | or FIG. 9, the connectivity calculation process performed by FIG.6 S15 is demonstrated.

図7は、コネクティビティ算出処理を説明するフローチャートである。   FIG. 7 is a flowchart for explaining connectivity calculation processing.

コネクティビティ算出処理では、ステップS21において、コネクティビティ算出部16(図1)が、N個の学習モデル#1ないし#Nから、まだ、モデルペアとして選択していない順列となる2つの学習モデル#iと#jの並びを選択して、処理は、ステップS22に進む。   In the connectivity calculation process, in step S21, the connectivity calculation unit 16 (FIG. 1) selects two learning models #i that are permutations not yet selected as model pairs from the N learning models # 1 to #N. The sequence of #j is selected, and the process proceeds to step S22.

すなわち、コネクティビティ算出部16は、N個の学習モデル#1ないし#Nのうちの1つの学習モデルから、モデルペアの前モデルとなる学習モデル#iを選択するとともに、その学習モデル#i以外の学習モデル#jを、モデルペアの後モデルとして選択する。   That is, the connectivity calculation unit 16 selects a learning model #i that is a previous model of the model pair from one learning model among the N learning models # 1 to #N, and other than the learning model #i. Learning model #j is selected as the model after the model pair.

ステップS22では、コネクティビティ算出部16は、モデル学習用データ保存部13(図1)から、モデルペアを構成する2つの学習モデルである前モデルと後モデルのそれぞれに割り当てられたモデル学習用データを読み込み、処理は、ステップS23に進む。   In step S22, the connectivity calculation unit 16 receives, from the model learning data storage unit 13 (FIG. 1), model learning data assigned to each of the previous model and the rear model, which are two learning models constituting the model pair. The reading and processing proceeds to step S23.

ステップS23では、コネクティビティ算出部16は、モデルペアを構成する前モデルと後モデルそれぞれのモデルパラメータを、モデルパラメータ保存部15(図1)から読み出し、処理は、ステップS24に進む。   In step S23, the connectivity calculation unit 16 reads out the model parameters of the previous model and the rear model constituting the model pair from the model parameter storage unit 15 (FIG. 1), and the process proceeds to step S24.

ステップS24では、コネクティビティ算出部16は、前モデルの入力データの最初の1サンプルとして、前モデルに割り当てられたモデル学習用データの最初の1サンプルを設定して、処理は、ステップS25に進む。   In step S24, the connectivity calculation unit 16 sets the first one sample of the model learning data assigned to the previous model as the first one sample of the input data of the previous model, and the process proceeds to step S25.

ステップS25では、コネクティビティ算出部16は、前モデルのモデルパラメータを、学習モデルに設定することで、前モデルを生成し(例えば、オブジェクト指向プログラミングにおける、前モデルとしての学習モデルのインスタンスを生成し)、処理は、ステップS26に進む。   In step S25, the connectivity calculation unit 16 generates the previous model by setting the model parameters of the previous model in the learning model (for example, generates an instance of the learning model as the previous model in object-oriented programming). The process proceeds to step S26.

ステップS26では、コネクティビティ算出部16は、後モデルの出力データの最後の1サンプルの真値として、後モデルに割り当てられたモデル学習用データの最後の1サンプルを設定し、処理は、ステップS27に進む。   In step S26, the connectivity calculation unit 16 sets the last one sample of the model learning data assigned to the subsequent model as the true value of the last one sample of the output data of the subsequent model, and the process proceeds to step S27. move on.

ステップS27では、コネクティビティ算出部16は、後モデルのモデルパラメータを、学習モデルに設定することで、後モデルを生成し(例えば、オブジェクト指向プログラミングにおける、後モデルとしての学習モデルのインスタンスを生成し)、処理は、ステップS28に進む。   In step S27, the connectivity calculation unit 16 sets the model parameters of the post model in the learning model, thereby generating the post model (for example, generating an instance of the learning model as the post model in object-oriented programming). The process proceeds to step S28.

ステップS28では、コネクティビティ算出部16は、前モデルと後モデルのそれぞれの初期コンテキストとして、ランダムな値を設定して、処理は、図8のステップS31に進む。   In step S28, the connectivity calculation unit 16 sets a random value as the initial context of each of the previous model and the subsequent model, and the process proceeds to step S31 in FIG.

すなわち、図8は、図7に続くフローチャートである。   That is, FIG. 8 is a flowchart following FIG.

ステップS31では、コネクティビティ算出部16は、前モデルに、ステップS24(図7)で設定された入力データと、初期コンテキスト(いまの場合、ステップS28で設定された初期コンテキスト)を与えて、モデル生成データを生成し、処理は、ステップS32に進む。   In step S31, the connectivity calculation unit 16 gives the input data set in step S24 (FIG. 7) and the initial context (in this case, the initial context set in step S28) to the previous model to generate a model. Data is generated, and the process proceeds to step S32.

ステップS32では、コネクティビティ算出部16は、前モデルから生成されたモデル生成データの最後のオーバラップ部分であるLサンプルを、後モデルの入力データの最初のLサンプルとして設定し、処理は、ステップS33に進む。   In step S32, the connectivity calculation unit 16 sets the L sample that is the last overlap part of the model generation data generated from the previous model as the first L sample of the input data of the subsequent model, and the processing is performed in step S33. Proceed to

ステップS33では、コネクティビティ算出部16は、後モデルに、ステップS32で設定された入力データ(前モデルから生成されたモデル生成データの最後のオーバラップ部分であるLサンプル)と、初期コンテキストを与えて、モデル生成データを生成し、処理は、ステップS34に進む。   In step S33, the connectivity calculation unit 16 gives the subsequent model the input data set in step S32 (L sample which is the last overlap portion of the model generation data generated from the previous model) and the initial context. Then, model generation data is generated, and the process proceeds to step S34.

なお、ステップS33において、後モデルに与えられる初期コンテキストは、モデルペアについて、後述するステップS35の処理が既に行われている場合には、そのステップS35での更新後の初期コンテキストであり、ステップS35の処理が、まだ行われていない場合には、ステップS28(図7)で設定された初期コンテキストである。   In step S33, the initial context given to the subsequent model is the updated initial context in step S35 when the process of step S35 described later has already been performed for the model pair. If the above process has not been performed yet, it is the initial context set in step S28 (FIG. 7).

ステップS34では、コネクティビティ算出部16は、後モデルから生成されたモデル生成データの最後の1サンプルの、ステップS26(図7)で設定された真値に対する予測誤差を求め、処理は、ステップS35に進む。   In step S34, the connectivity calculation unit 16 obtains a prediction error for the true value set in step S26 (FIG. 7) of the last sample of the model generation data generated from the subsequent model, and the process proceeds to step S35. move on.

ステップS35では、コネクティビティ算出部16は、ステップS34で求められた予測誤差を、BPTT法に基づき、後モデルから生成されたモデル生成データの最初の1サンプルまで逆伝播することで、その予測誤差を小さくするように、後モデルの初期コンテキストを更新し、処理は、ステップS36に進む。   In step S35, the connectivity calculation unit 16 back-propagates the prediction error obtained in step S34 to the first one sample of the model generation data generated from the subsequent model based on the BPTT method. The initial context of the subsequent model is updated so as to decrease, and the process proceeds to step S36.

ステップS36では、コネクティビティ算出部16は、後モデルに、ステップS32で設定された入力データと、ステップS35での更新後の初期コンテキストを与えて、モデル生成データを生成して、処理は、ステップS37に進む。   In step S36, the connectivity calculating unit 16 generates the model generation data by giving the input data set in step S32 and the initial context updated in step S35 to the subsequent model, and the processing is performed in step S37. Proceed to

ステップS37では、コネクティビティ算出部16は、後モデルから生成されたモデル生成データの最初のオーバラップ部分のLサンプルを、前モデルの最後のLサンプルの真値として設定し、処理は、ステップS38に進む。   In step S37, the connectivity calculation unit 16 sets the L sample of the first overlap portion of the model generation data generated from the subsequent model as the true value of the last L sample of the previous model, and the process proceeds to step S38. move on.

ステップS38では、コネクティビティ算出部16は、前モデルから生成されたモデル生成データの最後のLサンプルの、ステップS37で設定された真値(初期コンテキストの更新後の後モデルから生成されたモデル生成データの最初のオーバラップ部分のLサンプル)に対する予測誤差を求め、処理は、ステップS39に進む。   In step S38, the connectivity calculation unit 16 calculates the true value set in step S37 of the last L sample of the model generation data generated from the previous model (model generation data generated from the subsequent model after updating the initial context). And the process proceeds to step S39.

ステップS39では、コネクティビティ算出部16は、ステップS38で求められた予測誤差を、例えば、BPTT法に基づき、前モデルから生成されたモデル生成データの最初の1サンプルまで逆伝播することで、その予測誤差を小さくするように、前モデルの初期コンテキストを更新し、処理は、図9のステップS41に進む。   In step S39, the connectivity calculation unit 16 propagates the prediction error obtained in step S38 by back-propagating to the first sample of model generation data generated from the previous model based on, for example, the BPTT method. The initial context of the previous model is updated so as to reduce the error, and the process proceeds to step S41 in FIG.

すなわち、図9は、図8に続くフローチャートである。   That is, FIG. 9 is a flowchart following FIG.

ステップS41では、コネクティビティ算出部16は、前モデル及び後モデルの初期コンテキストの更新を終了する条件(以下、更新終了条件ともいう)が満たされているかどうかを判定する。   In step S41, the connectivity calculation unit 16 determines whether a condition for ending the update of the initial context of the previous model and the subsequent model (hereinafter also referred to as an update end condition) is satisfied.

ここで、更新終了条件としては、ステップS34及びS38(図8)で求められる予測誤差が、ある程度収束している状態にあることを採用することができる。具体的には、更新終了条件としては、所定の繰り返し回数だけ、モデルペアを構成する前モデル及び後モデルの初期コンテキストの更新が行われたことや、ステップS34及びS38で求められる予測誤差が、前回と今回とで、ほとんど変化しないこと、等を採用することができる。   Here, as the update end condition, it is possible to adopt that the prediction error obtained in steps S34 and S38 (FIG. 8) is in a state of being converged to some extent. Specifically, as the update end condition, the update of the initial context of the previous model and the subsequent model constituting the model pair is performed a predetermined number of times, and the prediction error obtained in steps S34 and S38 is: It can be adopted that there is almost no change between the previous time and this time.

ステップS41において、更新終了条件が満たされていないと判定された場合、処理は、図8のステップS31に戻り、コネクティビティ算出部16は、前モデルに、ステップS24(図7)で設定された入力データと、初期コンテキスト(いまの場合、ステップS39(図8)での更新後の初期コンテキスト)を与えて、モデル生成データを生成し、以下、同様の処理が繰り返される。   If it is determined in step S41 that the update end condition is not satisfied, the process returns to step S31 in FIG. 8, and the connectivity calculation unit 16 inputs the previous model to the input set in step S24 (FIG. 7). Data and initial context (in this case, the initial context updated in step S39 (FIG. 8)) are given to generate model generation data, and the same processing is repeated thereafter.

また、ステップS41において、更新終了条件が満たされていると判定された場合、コネクティビティ算出部16は、前モデルの現在の初期コンテキストを、前モデルの最適初期コンテキストとするとともに、後モデルの現在の初期コンテキストを、後モデルの最適初期コンテキストとして、処理は、ステップS42に進む。   If it is determined in step S41 that the update termination condition is satisfied, the connectivity calculation unit 16 sets the current model's current initial context as the previous model's optimal initial context and the subsequent model's current initial context. The process proceeds to step S42 with the initial context as the optimal initial context of the subsequent model.

ステップS42では、コネクティビティ算出部16は、前モデルに、ステップS24(図7)で設定された入力データと、前モデルの最適初期コンテキスト(最後に行われたステップS39(図8)で更新された初期コンテキスト)を与えて、モデル生成データを生成し、処理は、ステップS43に進む。   In step S42, the connectivity calculation unit 16 updates the previous model with the input data set in step S24 (FIG. 7) and the optimal initial context of the previous model (last step S39 (FIG. 8)). (Initial context) is given to generate model generation data, and the process proceeds to step S43.

ステップS43では、コネクティビティ算出部16は、前モデルから生成されたモデル生成データの最後のオーバラップ部分であるLサンプルを、後モデルの入力データの最初のLサンプルとして設定し、処理は、ステップS44に進む。   In step S43, the connectivity calculation unit 16 sets the L sample that is the last overlap portion of the model generation data generated from the previous model as the first L sample of the input data of the subsequent model, and the processing is performed in step S44. Proceed to

ステップS44では、コネクティビティ算出部16は、後モデルに、ステップS43で設定された入力データ(前モデルから生成されたモデル生成データの最後のオーバラップ部分であるLサンプル)と、後モデルの最適初期コンテキスト(最後に行われたステップS35で更新された初期コンテキスト)を与えて、モデル生成データを生成し、処理は、ステップS45に進む。   In step S44, the connectivity calculation unit 16 adds the input data set in step S43 (L sample which is the last overlap part of the model generation data generated from the previous model) to the rear model and the optimal initial of the rear model. Given the context (initial context updated in the last performed step S35) to generate model generation data, the process proceeds to step S45.

ステップS45では、コネクティビティ算出部16は、ステップS42で前モデルから生成されたモデル生成データの最後のLサンプルと、ステップS44で後モデルから生成されたモデル生成データの最初のLサンプルとの接続誤差を、式(1)に従って求める。   In step S45, the connectivity calculation unit 16 connects the last L sample of the model generation data generated from the previous model in step S42 and the first L sample of the model generation data generated from the subsequent model in step S44. Is determined according to equation (1).

そして、コネクティビティ算出部16は、その接続誤差を、前モデルに対する後モデルのコネクティビティcijとして、処理は、ステップS45からステップS46に進む。 Then, the connectivity calculation unit 16 sets the connection error as the connectivity c ij of the subsequent model with respect to the previous model, and the process proceeds from step S45 to step S46.

ステップS46では、コネクティビティ算出部16は、ステップS45で求めたコネクティビティcijを、コネクティビティ保存部17に供給して記憶させ、処理は、ステップS47に進む。 In step S46, the connectivity calculation unit 16 supplies the connectivity c ij obtained in step S45 to the connectivity storage unit 17 for storage, and the process proceeds to step S47.

ステップS47では、コネクティビティ算出部16は、N個の学習モデル#1ないし#Nが取り得る、2つの学習モデルの順列のすべてを、モデルペアとして、コネクティビティを求めたかどうかがを判定する。   In step S47, the connectivity calculation unit 16 determines whether connectivity has been obtained by using all the permutations of the two learning models that can be taken by the N learning models # 1 to #N as model pairs.

ステップS47において、まだ、モデルペアとしていない2つの学習モデルの順列があると判定された場合、処理は、図7のステップS21に戻り、以下、同様の処理が繰り返される。   If it is determined in step S47 that there is still a permutation of two learning models that are not model pairs, the process returns to step S21 in FIG. 7, and the same process is repeated thereafter.

また、ステップS47において、モデルペアとしていない2つの学習モデルの順列がないと判定された場合、処理はリターンする。   If it is determined in step S47 that there is no permutation of two learning models that are not model pairs, the process returns.

[データ生成装置20の詳細構成例]
図10は、図1のデータ生成装置20のより詳細な構成例を示している。
[Detailed Configuration Example of Data Generation Device 20]
FIG. 10 shows a more detailed configuration example of the data generation apparatus 20 of FIG.

なお、図10では、教師データが、複数であるN個のモデル学習用データ#1ないし#Nに分割され、そのN個のモデル学習用データ#1ないし#Nを用いての、N個の学習モデル#1ないし#Nの学習が、コネクティビティの算出も含めて、既に済んでいることとする。   In FIG. 10, the teacher data is divided into a plurality of N pieces of model learning data # 1 to #N, and N pieces of model learning data # 1 to #N are used. It is assumed that learning of learning models # 1 to #N has already been completed, including calculation of connectivity.

始点モデル選択部23は、現在データ分配部61、モデルパラメータ供給部62、N個の認識生成部631ないし63N、及び、始点モデル決定部64等から構成される。 The start point model selection unit 23 includes a current data distribution unit 61, a model parameter supply unit 62, N recognition generation units 63 1 to 63 N , a start point model determination unit 64, and the like.

現在データ分配部61は、現在データ供給部21から始点モデル選択部23に供給される現在データを、N個の認識生成部631ないし63Nすべてに供給(分配)する。 The current data distribution unit 61 supplies (distributes) the current data supplied from the current data supply unit 21 to the start point model selection unit 23 to all the N recognition generation units 63 1 to 63 N.

モデルパラメータ供給部62は、N個の学習モデル#1ないし#Nのモデルパラメータ#1ないし#Nを、モデルパラメータ保存部15から読み出す。さらに、モデルパラメータ供給部62は、モデルパラメータ保存部15から読み出したモデルパラメータ#nを、認識生成部63nに供給する。 The model parameter supply unit 62 reads the model parameters # 1 to #N of the N learning models # 1 to #N from the model parameter storage unit 15. Further, the model parameter supply unit 62 supplies the model parameter #n read from the model parameter storage unit 15 to the recognition generation unit 63 n .

認識生成部63nは、モデルパラメータ供給部62からのモデルパラメータ#nを、学習モデルに設定することで、学習モデル#nを生成する(例えば、モデル学習用データ#nを用いた学習が済んだ学習モデル#nの、オブジェクト指向プログラミングにおけるインスタンスを生成する)。 The recognition generation unit 63 n generates a learning model #n by setting the model parameter #n from the model parameter supply unit 62 in the learning model (for example, learning using the model learning data #n has been completed). Create an instance of learning model #n in object-oriented programming).

そして、認識生成部63nは、現在データ分配部61から供給される現在データを、学習モデル#nに与えることで、学習モデル#nから、現在データの予測値#nを生成する。 The recognition generating unit 63 n is the current data currently supplied from the data distribution unit 61, by giving the training model #n, the learning model #n, generates a predicted value #n current data.

なお、学習モデル#nからの、現在データの予測値#nの生成において、学習モデル#nに与える初期コンテキストとしては、例えば、ランダムな値を採用することができる。また、学習モデル#nに与える初期コンテキストとしては、その他、例えば、現在データの予測値#nを小さくする初期コンテキスト(最適初期コンテキスト)を求め、その最適初期コンテキストを採用することができる。   For example, a random value can be adopted as the initial context given to the learning model #n in the generation of the predicted value #n of the current data from the learning model #n. In addition, as the initial context to be given to the learning model #n, for example, an initial context (optimum initial context) for reducing the predicted value #n of the current data can be obtained and the optimal initial context can be adopted.

認識生成部63nは、学習モデル#nから、現在データの予測値#nを生成すると、その予測値#nの予測誤差を求め、始点モデル決定部64に供給する。 When the recognition generation unit 63 n generates a prediction value #n of the current data from the learning model #n, the recognition generation unit 63 n obtains a prediction error of the prediction value #n and supplies it to the start point model determination unit 64.

始点モデル決定部64は、認識生成部631ないし63Nからそれぞれ供給される、現在データの予測値#1ないし#Nの予測誤差が小さい上位1個以上の学習モデルを、始点モデルとして選択し、その始点モデルの始点モデルIDを、生成用モデルシーケンス算出部25に供給する。 The start point model determination unit 64 selects, as start point models, the top one or more learning models with small prediction errors of the prediction values # 1 to #N of the current data supplied from the recognition generation units 63 1 to 63 N , respectively. The start point model ID of the start point model is supplied to the generation model sequence calculation unit 25.

終点モデル選択部24は、目標データ分配部71、モデルパラメータ供給部72、N個の認識生成部731ないし73N、及び、終点モデル決定部74等から構成される。 The end point model selection unit 24 includes a target data distribution unit 71, a model parameter supply unit 72, N recognition generation units 73 1 to 73 N , an end point model determination unit 74, and the like.

目標データ分配部71は、目標データ供給部22から終点モデル選択部24に供給される目標データを、N個の認識生成部731ないし73Nすべてに供給(分配)する。 The target data distribution unit 71 supplies (distributes) the target data supplied from the target data supply unit 22 to the end point model selection unit 24 to all the N recognition generation units 73 1 to 73 N.

モデルパラメータ供給部72は、N個の学習モデル#1ないし#Nのモデルパラメータ#1ないし#Nを、モデルパラメータ保存部15から読み出す。さらに、モデルパラメータ供給部72は、モデルパラメータ保存部15から読み出したモデルパラメータ#nを、認識生成部73nに供給する。 The model parameter supply unit 72 reads the model parameters # 1 to #N of the N learning models # 1 to #N from the model parameter storage unit 15. Further, the model parameter supply unit 72 supplies the model parameter #n read from the model parameter storage unit 15 to the recognition generation unit 73 n .

認識生成部73nは、モデルパラメータ供給部72からのモデルパラメータ#nを、学習モデルに設定することで、学習モデル#nを生成する。 The recognition generation unit 73 n generates the learning model #n by setting the model parameter #n from the model parameter supply unit 72 in the learning model.

そして、認識生成部73nは、目標データ分配部71から供給される目標データを、学習モデル#nに与えることで、学習モデル#nから、目標データの予測値#nを生成する。 Then, the recognition generation unit 73 n generates the predicted value #n of the target data from the learning model #n by giving the target data supplied from the target data distribution unit 71 to the learning model #n.

なお、学習モデル#nからの、目標データの予測値#nの生成において、学習モデル#nに与える初期コンテキストとしては、現在データの予測値#nの生成の場合と同様に、ランダムな値や、最適初期コンテキストを採用することができる。   In the generation of the target data prediction value #n from the learning model #n, the initial context given to the learning model #n is a random value or the same as in the generation of the current data prediction value #n. The optimal initial context can be employed.

認識生成部73nは、学習モデル#nから、目標データの予測値#nを生成すると、その予測値#nの予測誤差を求め、終点モデル決定部74に供給する。 When the recognition generation unit 73 n generates the prediction value #n of the target data from the learning model #n, the recognition generation unit 73 n obtains a prediction error of the prediction value #n and supplies it to the end point model determination unit 74.

終点モデル決定部74は、認識生成部731ないし73Nからそれぞれ供給される、目標データの予測値#1ないし#Nの予測誤差が小さい上位1個以上の学習モデルを、終点モデルとして選択し、その終点モデルの終点モデルIDを、生成用モデルシーケンス算出部25に供給する。 Endpoint model determination unit 74, are supplied from the recognition generating unit 73 1 to 73 N, the predicted values # 1 through #N learning model prediction error is small upper one or more of the target data is selected as the end point model The end point model ID of the end point model is supplied to the generation model sequence calculation unit 25.

生成用モデルシーケンス算出部25は、始点モデルID供給部81、終点モデルID供給部82、及び、シーケンス算出部83等から構成される。   The generation model sequence calculation unit 25 includes a start point model ID supply unit 81, an end point model ID supply unit 82, a sequence calculation unit 83, and the like.

始点モデルID供給部81は、始点モデル選択部23(の始点モデル決定部64)から生成用モデルシーケンス算出部25に供給される始点モデルIDを受信し、シーケンス算出部83に供給する。   The start point model ID supply unit 81 receives the start point model ID supplied to the generation model sequence calculation unit 25 from the start point model selection unit 23 (the start point model determination unit 64), and supplies it to the sequence calculation unit 83.

終点モデルID供給部82は、終点モデル選択部24(の終点モデル決定部74)から生成用モデルシーケンス算出部25に供給される終点モデルIDを受信し、シーケンス算出部83に供給する。   The end point model ID supply unit 82 receives the end point model ID supplied from the end point model selection unit 24 (the end point model determination unit 74) to the generation model sequence calculation unit 25 and supplies it to the sequence calculation unit 83.

シーケンス算出部83は、始点モデルID供給部81からの始点モデルIDによって特定される始点モデルから、終点モデルID供給部82からの終点モデルIDによって特定される終点モデルまでの、複数の学習モデルの、ある並びを、生成用モデルシーケンスとして求める。   The sequence calculation unit 83 includes a plurality of learning models from the start point model specified by the start point model ID from the start point model ID supply unit 81 to the end point model specified by the end point model ID from the end point model ID supply unit 82. A certain sequence is obtained as a model sequence for generation.

すなわち、シーケンス算出部83は、コネクティビティ保存部17に記憶されたコネクティビティcijに対応する値を、学習モデル#iの後に、学習モデル#jを接続するのに要するコスト(以下、接続コストともいう)として、接続コストの累積値を最小にする、始点モデルから終点モデルまでの学習モデルの並びを、生成用モデルシーケンスとして求める。 That is, the sequence calculation unit 83 uses the cost corresponding to connecting the learning model #j to the value corresponding to the connectivity c ij stored in the connectivity storage unit 17 after the learning model #i (hereinafter also referred to as connection cost). ), A sequence of learning models from the start point model to the end point model that minimizes the cumulative value of the connection cost is obtained as a generation model sequence.

そして、シーケンス算出部83は、生成用モデルシーケンスを、時系列データ生成部26に供給する。   Then, the sequence calculation unit 83 supplies the generation model sequence to the time series data generation unit 26.

ここで、シーケンス算出部83では、上述のように、学習モデル#iの後に、学習モデル#jを接続するのに要する接続コストとして、コネクティビティcijに対応する値を採用し、その接続コストを、ノード(学習モデル)どうしの距離とみなすことで、接続コストの累積値を最小にする、始点モデルから終点モデルまでの学習モデルの並びである生成用モデルシーケンスを、一般的な経路探索アルゴリズムによって求める。 Here, as described above, the sequence calculation unit 83 employs a value corresponding to the connectivity c ij as the connection cost required to connect the learning model #j after the learning model #i, and calculates the connection cost. By using a general route search algorithm, a generation model sequence that is an array of learning models from the start point model to the end point model that minimizes the cumulative connection cost by considering the distance between nodes (learning models) Ask.

生成用モデルシーケンスを求めるための経路探索アルゴリズムとしては、例えば、ダイクストラ法や、ビタビアルゴリズムを採用することができる。   As a route search algorithm for obtaining the generation model sequence, for example, the Dijkstra method or the Viterbi algorithm can be employed.

なお、生成用モデルシーケンス算出部25は、始点モデル選択部23から、複数の始点モデルIDが供給される場合や、終点モデル選択部24から、複数の終点モデルIDが供給される場合、つまり、複数の学習モデルが、始点モデルや終点モデルとして選択された場合、その複数の始点と終点の組み合わせすべてについて、生成用モデルシーケンスを算出する。   The generation model sequence calculation unit 25 is supplied when a plurality of start point model IDs are supplied from the start point model selection unit 23, or when a plurality of end point model IDs are supplied from the end point model selection unit 24, that is, When a plurality of learning models are selected as a start point model or an end point model, a generation model sequence is calculated for all combinations of the plurality of start points and end points.

すなわち、始点モデルとして選択された学習モデルの数をAと表すとともに、終点モデルとして選択された学習モデルの数をBと表すこととすると、生成用モデルシーケンス算出部25は、A×B個の生成用モデルシーケンスを算出する。   That is, when the number of learning models selected as the start point model is represented as A and the number of learning models selected as the end point model is represented as B, the generation model sequence calculation unit 25 generates A × B pieces. A generation model sequence is calculated.

そして、生成用モデルシーケンス算出部25は、A×B個の生成用モデルシーケンスのうちの、接続コストの累積値が最小の生成用モデルシーケンスを、時系列データの生成に用いる生成用モデルシーケンスに決定し、時系列データ生成部26に供給する。   Then, the generation model sequence calculation unit 25 uses the generation model sequence having the minimum cumulative connection cost among the A × B generation model sequences as a generation model sequence used for generating time-series data. It is determined and supplied to the time-series data generation unit 26.

時系列データ生成部26は、シーケンス供給部91、モデルパラメータ供給部92、N個の認識生成部931ないし93N、及び、統合生成部94等から構成される。 The time series data generation unit 26 includes a sequence supply unit 91, a model parameter supply unit 92, N recognition generation units 93 1 to 93 N , an integrated generation unit 94, and the like.

シーケンス供給部91は、生成用モデルシーケンス算出部25(のシーケンス算出部83)から供給される生成用モデルシーケンスを受信し、モデルパラメータ供給部92に供給する。   The sequence supply unit 91 receives the generation model sequence supplied from the generation model sequence calculation unit 25 (the sequence calculation unit 83) and supplies the generated model sequence to the model parameter supply unit 92.

モデルパラメータ供給部92は、シーケンス供給部91からの生成用モデルシーケンスを構成する学習モデル(以下、構成モデルともいう)のモデルパラメータを、モデルパラメータ保存部15から読み出し、認識生成部931ないし93Nのうちの必要なブロックに供給する。 The model parameter supply unit 92 reads out model parameters of a learning model (hereinafter also referred to as a configuration model) constituting the generation model sequence from the sequence supply unit 91 from the model parameter storage unit 15, and recognizes and generates the generation units 93 1 to 93. Supply the necessary blocks of N.

すなわち、生成用モデルシーケンスが、K(≦N)個の構成モデル#1ないし#Kの並びで構成されることとすると、モデルパラメータ供給部92は、構成モデル#1ないし#Kのモデルパラメータ#1ないし#Kを、モデルパラメータ保存部15から読み出す。   That is, if the generating model sequence is configured by an array of K (≦ N) configuration models # 1 to #K, the model parameter supply unit 92 includes model parameters # 1 to #K of configuration models # 1 to #K. 1 to #K are read from the model parameter storage unit 15.

さらに、モデルパラメータ供給部92は、構成モデル#k(k=1,2,・・・,K)のモデルパラメータ#kを、認識生成部931ないし93Nのうちの認識生成部93kに供給する。 Furthermore, the model parameter supply unit 92, configuration model #k (k = 1,2, ···, K) the model parameters #k of recognition generating unit 93 1 to the recognition generating unit 93 k of 93 N Supply.

認識生成部93kは、モデルパラメータ供給部92からのモデルパラメータ#kを、学習モデルに設定することで、構成モデル#kを生成する(例えば、モデル学習用データ#kを用いた学習が済んだ学習モデル#kの、オブジェクト指向プログラミングにおけるインスタンスを生成する)。 The recognition generation unit 93 k generates the configuration model #k by setting the model parameter #k from the model parameter supply unit 92 in the learning model (for example, learning using the model learning data #k has been completed). Create an instance of learning model #k in object-oriented programming).

さらに、認識生成部93kは、構成モデル#kから、モデル生成データ#kを生成し、そのモデル生成データ#kの最後のオーバラップ部分と、認識生成部93k+1が構成モデル#k+1から生成するモデル生成データ#k+1、すなわち、モデル生成データ#kに接続されるモデル生成データ#k+1の最初のオーバラップ部分との誤差を小さくするように、構成モデル#kの初期コンテキストを更新することで、コネクティビティ算出処理(図7ないし図9)の場合と同様にして、最適初期コンテキストを求める。 Furthermore, the recognition generation unit 93 k generates model generation data #k from the configuration model #k, and the recognition data generation unit 93 k + 1 includes the last overlap portion of the model generation data #k and the configuration model #k. The model generation data # k + 1 generated from +1, that is, the constituent model #k so as to reduce the error from the first overlap portion of the model generation data # k + 1 connected to the model generation data #k By updating the initial context, the optimal initial context is obtained in the same manner as in the connectivity calculation process (FIGS. 7 to 9).

そして、認識生成部931は、構成モデル#1に、その構成モデル#1の最適初期コンテキストを与えるとともに、現在データ供給部21から供給される現在データを入力データとして与えることで、モデル生成データ#1を生成して、統合生成部94に供給する。 The recognition generating unit 93 1, the configuration model # 1, along with providing optimal initial context of the configuration model # 1, by giving the current data supplied from the current data supplying unit 21 as input data, the model generated data # 1 is generated and supplied to the integrated generation unit 94.

認識生成部931ないし93Kのうちの、認識生成部931以外の認識生成部93kは、構成モデル#kに、その構成モデル#kの最適初期コンテキストを与えるとともに、前段の認識生成部93k-1が構成モデル#k-1から生成したモデル生成データ#k-1の最後のオーバラップ部分を入力データの最初のLサンプルとして与えることで、モデル生成データ#kを生成して、統合生成部94に供給する。 Recognition generating unit 93 k of, other than the recognition generating unit 93 1 of the to recognition generating unit 93 to 1 93 K is the configuration model #k, with providing the optimum initial context of the configuration model #k, preceding recognition generating unit 93 k-1 generates the model generation data #k by giving the last overlap part of the model generation data # k-1 generated from the configuration model # k-1 as the first L sample of the input data. The integrated generation unit 94 is supplied.

統合生成部94は、認識生成部931ないし93Kから供給されるモデル生成データ#1ないし#Kを、オーバラップ部分を考慮して接続することにより、滑らかな生成時系列データを構成(生成)し、時系列データ出力部27に供給する。 Integrated generator 94, the to model without generating data # 1 supplied from to 93 to 1 recognition generating unit 93 K #K, configuration by connecting in consideration of the overlapped portion, a smooth product time-series data (generated ) And supply to the time-series data output unit 27.

[生成用モデルシーケンスの算出]
次に、生成用モデルシーケンス算出部25(図1)において、生成用モデルシーケンスを、例えば、ビタビアルゴリズムに基づいて求める方法について説明する。
[Calculation of model sequence for generation]
Next, a method for obtaining the generation model sequence based on, for example, the Viterbi algorithm in the generation model sequence calculation unit 25 (FIG. 1) will be described.

ここで、ビタビアルゴリズムは、観測結果について、1つの最も尤もらしい説明を与える動的計画法のアルゴリズムであり、ビタビアルゴリズムで扱う事象(状態)の系列について、時刻tでの事象の計算は、直前の時刻t-1での事象の系列のみに依存していることを前提とする。すなわち、ビタビアルゴリズムで扱う事象は、未来の挙動が現在の値だけで決定され、過去の挙動と無関係であるという性質を持つマルコフ性を前提とする確率過程である。   Here, the Viterbi algorithm is a dynamic programming algorithm that gives one most plausible explanation for the observation result. For the sequence of events (states) handled by the Viterbi algorithm, the calculation of the event at time t It is assumed that it depends only on the sequence of events at time t-1. In other words, the event handled by the Viterbi algorithm is a stochastic process based on Markov property that has the property that the future behavior is determined only by the current value and is independent of the past behavior.

また、ビタビアルゴリズムは状態機械を仮定して動作する。すなわち、モデルとしたシステムは任意の時刻で何らかの状態を持つ。状態数は膨大であっても有限であり、リストアップ可能である。各状態はノードとして表される。与えられた状態に対応する状態の複数の系列(経路)が複数考えられるとしても、最も尤もらしい状態経路が1つある。ビタビアルゴリズムでは、ある状態に到達するあらゆる経路を調べ、最も尤もらしい経路を選ぶ。これを状態の並びに対して順次適用するため、あらゆる経路を保持しておく必要はなく、1つの状態につき1つの経路だけを保持すれば足りる。   The Viterbi algorithm operates assuming a state machine. That is, the modeled system has some state at an arbitrary time. Even if the number of states is enormous, it is finite and can be listed. Each state is represented as a node. Even if a plurality of sequences (routes) of states corresponding to a given state can be considered, there is one state route that is most likely. The Viterbi algorithm examines every route that reaches a certain state and selects the most likely route. Since this is applied sequentially to the sequence of states, it is not necessary to hold every route, and it is sufficient to hold only one route per state.

さらに、ビタビアルゴリズムでは、ある状態から別の状態への遷移について増分(通常、数)を付与する。この遷移は事象から求められる。また、ビタビアルゴリズムでは、事象は一般に加算的な意味で経路上で累積するとされる。ビタビアルゴリズムでは、各状態についての数を保持するとともに、ある事象が起きたとき、これまでの状態経路の持つ値と新たな遷移における増分を考慮し、最も良い状態を選択する。事象に対応した増分は、ある状態から別の状態への遷移確率に依存して決定される。   Further, in the Viterbi algorithm, an increment (usually a number) is given for a transition from one state to another. This transition is determined from the event. In the Viterbi algorithm, events are generally accumulated on the route in an additive sense. In the Viterbi algorithm, the number for each state is held, and when a certain event occurs, the best state is selected in consideration of the value of the state path so far and the increment in the new transition. The increment corresponding to the event is determined depending on the transition probability from one state to another.

生成用モデルシーケンスを、ビタビアルゴリズムに基づいて求める場合、学習後の学習モデル#1ないし#Nのそれぞれが、ビタビアルゴリズムにおける状態機械の状態(ノード)に相当する。したがって、学習後の学習モデル#1ないし#Nの数Nが、ビタビアルゴリズムの全状態数になる。   When the generation model sequence is obtained based on the Viterbi algorithm, each of the learned models # 1 to #N after learning corresponds to the state (node) of the state machine in the Viterbi algorithm. Therefore, the number N of learning models # 1 to #N after learning is the total number of states of the Viterbi algorithm.

また、ある状態から別の状態に遷移する際の事象に対応した増分、すなわち、ビタビアルゴリズムにおける遷移確率としては、接続コスト、すなわち、コネクティビティcijを用いることができる。但し、遷移確率と接続コスト(コネクティビティcij)とは、値の増減が逆の関係にある。すなわち、遷移確率は、値が大きいほど、状態遷移が生じやすいが、接続コストは、値が小さいほど、状態遷移に相当する、学習モデル#iと#jの接続が生じやすい(力学的接続可能性が高い)。 Also, it increments corresponding to the event at the time of transition from one state to another, i.e., the transition probability in the Viterbi algorithm, the connection cost, i.e., can be used connectivity c ij. However, the transition probability and the connection cost (connectivity c ij ) are inversely related to the increase or decrease in value. In other words, state transitions are more likely to occur as the transition probability is larger, but the connection between learning models #i and #j, corresponding to state transitions, is likely to occur as the connection cost is smaller (mechanical connection possible) High).

ビタビアルゴリズムでは、ある始点となる状態から目標とする状態への全経路のうちの、遷移確率の総和が最大となる経路を最も尤もらしい経路(ビタビパス(Vitarbi path))として採用する。これと同様に、生成用モデルシーケンスの算出では、接続コストの累積値、つまり、コネクティビティcijの総和が最小となる経路をコストが最小の経路として採用し、その経路上の状態に相当する学習モデルの並びを、生成用モデルシーケンスとする。 In the Viterbi algorithm, a path with the maximum sum of transition probabilities among all paths from a certain starting point state to a target state is adopted as the most likely path (Vitarbi path). Similarly, in the generation of the model sequence for generation, the route with the minimum connection cost, that is, the sum of the connectivity c ij is adopted as the route with the lowest cost, and learning corresponding to the state on the route is performed. The model sequence is a generation model sequence.

すなわち、生成用モデルシーケンス算出部25は、始点モデルから終点モデルまでの接続コストの累積値が最小になる、学習モデルの並びを、生成用モデルシーケンスとして求める。   In other words, the generation model sequence calculation unit 25 obtains, as a generation model sequence, a sequence of learning models that minimizes the cumulative value of the connection costs from the start point model to the end point model.

いま、最初の時刻t=1(始点モデルに相当する状態の時刻)から、ある時刻t=τまでの、状態#nごとの接続コストの累積値δn(τ)をコンポーネントとするベクトルを、累積値ベクトルd(τ)=(δ1(τ),δ2(τ),・・・,δN(τ))ということとする。生成用モデルシーケンス算出部25は、累積値ベクトルd(τ)=(δ1(τ),δ2(τ),・・・,δN(τ))を保持する。 Now, a vector whose component is the cumulative value δ n (τ) of the connection cost for each state #n from the first time t = 1 (the time of the state corresponding to the start point model) to a certain time t = τ, cumulative value vector d (τ) = (δ 1 (τ), δ 2 (τ), ···, δ N (τ)) will be referred to. The generation model sequence calculation unit 25 holds a cumulative value vector d (τ) = (δ 1 (τ), δ 2 (τ),..., Δ N (τ)).

また、状態#iから状態#jへの状態遷移のコスト、すなわち、状態#iに相当する学習モデル#i(が生成するモデル生成データ#i)の直後に、状態#jに相当する学習モデル#j(が生成するモデル生成データ#j)が接続する接続コストを、bijで表す。接続コストbijの集合は、接続コストbijを、第i行第j列のコンポーネントとするマトリクスで表すことができる。 In addition, the cost of state transition from state #i to state #j, that is, the learning model corresponding to state #j immediately after learning model #i corresponding to state #i (model generation data #i generated by) the concatenation cost #j (model generation data #j that but produce) are connected, represented by b ij. Set of connection cost b ij is the connection cost b ij, it can be represented by a matrix of the components of the i-th row and j column.

ここで、接続コストbijを、第i行第j列のコンポーネントとするマトリクスを、接続コストマトリクスともいう。 Here, a matrix having the connection cost b ij as a component in the i-th row and j-th column is also referred to as a connection cost matrix.

いま、学習モデル#iの直後に学習モデル#jが接続するのが不自然でないとみなすことができるコネクティビティcijの最大値を、cmaxと表し、その最大値cmaxを、コネクティビティcijの閾値とする。コネクティビティcijが、閾値cmax以下である場合には、接続コストbijとして、コネクティビティcijが採用される。また、コネクティビティcijが、閾値cmaxを超える場合には、接続コストbijとして、閾値cmaxより十分大きな値である接続不可能値cinfが採用される。 Now, the maximum value of the connectivity c ij which that learning model #j is connected can be considered not to be unnatural immediately after learning model #i, expressed as c max, the maximum value c max, connectivity c ij The threshold is used. When the connectivity c ij is equal to or less than the threshold value c max , the connectivity c ij is employed as the connection cost b ij . Moreover, connectivity c ij is if it exceeds the threshold value c max is a connection cost b ij, unreachable value c inf is employed than the threshold value c max is a sufficiently large value.

ここで、閾値cmaxや接続不可能値cinfは、シミュレーション等によって求められる。 Here, the threshold value c max and the inaccessible value c inf are obtained by simulation or the like.

すなわち、例えば、多数の教師データを用いて、学習モデル#iから生成されるモデル生成データの最後のオーバラップ部分と、学習モデル#jから生成されるモデル生成データの最初のオーバラップ部分とが似ていない場合(学習モデル#iから生成されるモデル生成データの直後に、学習モデル#jから生成されるモデル生成データが繋がることが不自然である場合)のコネクティビティcijの平均値等が、シミュレーションによって求められ、閾値cmaxとして採用される。 That is, for example, using a lot of teacher data, the last overlap part of the model generation data generated from the learning model #i and the first overlap part of the model generation data generated from the learning model #j The average value of connectivity c ij in the case where it is not similar (when it is unnatural that the model generation data generated from the learning model #j is connected immediately after the model generation data generated from the learning model #i) Obtained by simulation and adopted as the threshold c max .

また、例えば、多数の教師データを用いて、複数の学習モデルのすべてを接続した場合のコネクティビティの総和の最大値が求められ、その最大値よりも大きい値(生成用モデルシーケンスを構成する学習モデルのコネクティビティcijの総和として取り得ない大きな値)が、接続不可能値cinfとして採用される。 In addition, for example, the maximum value of the sum of the connectivity when all of the plurality of learning models are connected using a large number of teacher data is obtained, and a value larger than the maximum value (the learning model constituting the generation model sequence) (A large value that cannot be taken as the sum of the connectivity c ij ) is adopted as the inaccessible value c inf .

以上のように、コネクティビティcijが、閾値cmax以下である場合には、接続コストbijとして、コネクティビティcijを採用し、コネクティビティcijが、閾値cmaxを超える場合には、接続コストbijとして、接続不可能値cinfを採用することで、生成用モデルシーケンスにおいて、ある学習モデルの直後に接続され得る学習モデルと、接続されることがない学習モデルとを明確に区別することができる。 As described above, connectivity c ij is equal to or less than the threshold value c max is a connection cost b ij, if adopted connectivity c ij, where connectivity c ij is greater than the threshold value c max is connected cost b By adopting the inaccessible value c inf as ij , it is possible to clearly distinguish between a learning model that can be connected immediately after a certain learning model and a learning model that is not connected in the generation model sequence. it can.

生成用モデルシーケンス算出部25は、生成用モデルシーケンスを求めるにあたり、まず、上述したような接続コストマトリクスを生成するとともに、累積値ベクトルd(t)を初期化する。   In determining the generation model sequence, the generation model sequence calculation unit 25 first generates the connection cost matrix as described above and initializes the accumulated value vector d (t).

ここで、累積値ベクトルd(t)の初期化とは、時刻t=1のときの、累積値ベクトルd(1)のコンポーネントδ1(1),δ2(1),・・・,δN(1)の値を設定(セット)することである。累積値ベクトルd(t)の初期化では、コンポーネントδ1(1)ないしδN(1)のうちの、始点モデルとなっている学習モデルに対応するコンポーネントが、0とされ、その他のコンポーネントは、接続不可能値cinfとされる。 Here, initialization of the accumulated value vector d (t) means that the components δ 1 (1), δ 2 (1),..., Δ of the accumulated value vector d (1) at time t = 1. N Set (set) the value of (1). In the initialization of the cumulative vector d (t), the component corresponding to the learning model that is the starting point model among the components δ 1 (1) to δ N (1) is set to 0, and the other components are The inaccessible value c inf is used.

接続コストマトリクスの生成と、累積値ベクトルd(t)の初期化が終了すると、生成用モデルシーケンス算出部25は、前向き計算(前向き方向(未来方向)の計算)を行うことで、各時刻tの累積値ベクトルd(t)を求める。   When the generation of the connection cost matrix and the initialization of the accumulated value vector d (t) are completed, the generation model sequence calculation unit 25 performs forward calculation (calculation of the forward direction (future direction)), so that each time t The accumulated value vector d (t) is obtained.

図11は、生成用モデルシーケンス算出部25による前向き計算を説明する図である。   FIG. 11 is a diagram for explaining the forward calculation by the generation model sequence calculation unit 25.

図11において、横軸は、時刻tを表し、縦軸は、状態に相当する学習モデルを表す。   In FIG. 11, the horizontal axis represents time t, and the vertical axis represents a learning model corresponding to the state.

生成用モデルシーケンス算出部25は、累積値ベクトルd(t)のコンポーネントδj(t)を、式(2)に従って、コンポーネントδj(t+1)に更新することで、時刻tの累積値ベクトルd(t)を、時刻t+1の累積値ベクトルd(t+1)に更新する。 The generation model sequence calculation unit 25 updates the component δ j (t) of the accumulated value vector d (t) to the component δ j (t + 1) according to the equation (2), thereby obtaining the accumulated value at time t. The vector d (t) is updated to the accumulated value vector d (t + 1) at time t + 1.

δj(t+1)=minii(t)+bij)
・・・(2)
δ j (t + 1) = min ii (t) + b ij )
... (2)

ここで、式(2)において、mini()は、変数iを、1ないしNの整数に変えたときのかっこ内の値の最小値を表す。 Here, in the formula (2), min i () represents the minimum value of the values in parentheses when the variable i, was changed to an integer from 1 to N.

式(2)によれば、時刻t+1の、学習モデル#jまでの接続コストの累積値δj(t+1)は、時刻tの、学習モデル#iまでの接続コストの累積値δi(t)と、学習モデル#iに対する学習モデル#jの接続コストbijとを用いて求められる。 According to Equation (2), the cumulative value δ j (t + 1) of the connection cost up to the learning model #j at time t + 1 is the cumulative value δ of the connection cost up to the learning model #i at time t + 1. i (t) and the connection cost b ij of the learning model #j with respect to the learning model #i.

すなわち、式(2)によれば、時刻t+1において、学習モデル#jに至る、時刻tのすべての学習モデル#1ないし#Nからの接続(状態遷移に相当する)のうちの、時刻t+1の、学習モデル#jまでの接続コストの累積値が最小になる接続(以下、最小接続ともいう)が選択される。そして、その最小接続を介して、時刻t+1に、学習モデル#jに至るまでの接続コストの累積値が、時刻t+1の、学習モデル#jまでの接続コストの累積値δj(t+1)として用いられる。 That is, according to Equation (2), at time t + 1, the time of all connections (corresponding to state transitions) from all learning models # 1 to #N at time t that reach learning model #j. A connection (hereinafter also referred to as the minimum connection) that minimizes the cumulative value of the connection cost of t + 1 up to the learning model #j is selected. Then, via the minimum connection, at time t + 1, the cumulative value of the connection cost up to learning model #j is the cumulative value of connection cost δ j (up to learning model #j at time t + 1. t + 1).

これにより、生成用モデルシーケンス算出部25では、時刻t+1に、学習モデル#jに至る全経路を保持することなく、最小接続だけを選択することによって、時刻t+1の、学習モデル#jまでの接続コストの累積値δj(t+1)を求めることができる。 As a result, the generation model sequence calculation unit 25 selects only the minimum connection at time t + 1 without holding all the routes to the learning model #j, so that the learning model # at time t + 1 is selected. A cumulative value δ j (t + 1) of connection costs up to j can be obtained.

なお、生成用モデルシーケンス算出部25は、式(2)によって、接続コストの累積値δj(t+1)を求めた学習モデル#1ないし#Nそれぞれに至るまでの学習モデルの系列(並び)の情報(以下、系列情報ともいう)を保持する。 Note that the generation model sequence calculation unit 25 uses learning formulas # 2 to #N for which the cumulative value δ j (t + 1) of the connection cost is obtained according to Equation (2). ) Information (hereinafter also referred to as sequence information).

すなわち、生成用モデルシーケンス算出部25は、学習モデル#1ないし#Nそれぞれについて、時刻t+1の学習モデル#jへの最小接続となる、時刻tの学習モデル#iの情報(以下、最小接続元情報ともいう)を、時刻ごとに記憶する。   That is, the generation model sequence calculation unit 25 obtains information about the learning model #i at time t (hereinafter referred to as the minimum) for each of the learning models # 1 to #N, which is the minimum connection to the learning model #j at time t + 1. (Also referred to as connection source information) is stored for each time.

以上のような前向き計算の開始後、生成用モデルシーケンス算出部25は、前向き計算を終了するための条件(以下、計算終了条件ともいう)の判定を開始し、計算終了条件が満たされたときに、前向き計算を終了する。   After the start of the forward calculation as described above, the generation model sequence calculation unit 25 starts determining a condition for ending the forward calculation (hereinafter also referred to as a calculation end condition), and the calculation end condition is satisfied. Finally, the forward calculation ends.

ここで、生成用モデルシーケンス算出部25では、始点モデルから終点モデルまでの学習モデルの並びが、生成用モデルシーケンスとして求められるが、始点モデルから、何時刻後に、終点モデルに到達するかは、未知である。したがって、前向き計算を行うべき回数を、あらかじめ知ることは困難であり、そのため、前向き計算を終了するのに、計算終了条件が必要となる。   Here, in the generation model sequence calculation unit 25, the sequence of learning models from the start point model to the end point model is obtained as a generation model sequence. How many times later from the start point model the end point model is reached Is unknown. Therefore, it is difficult to know in advance the number of times that the forward calculation should be performed. Therefore, a calculation end condition is required to end the forward calculation.

計算終了条件としては、学習モデル#1ないし#Nのうちの、終点モデルに至るまでの接続コストの累積値δgoal(t)が、閾値δth以下になったこと(式δgoal(t)≦δthが満たされること)が採用される。 The calculation end condition is that the cumulative value δ goal (t) of the connection cost up to the end point model among the learning models # 1 to #N is less than the threshold δ th (formula δ goal (t) ≦ δ th is satisfied).

ここで、累積値ベクトルd(t)の初期化では、接続コストの累積値δ1(1)ないしδN(1)のうちの、始点モデルの接続コストの累積値が、0とされ、始点モデル以外の学習モデルの接続コストの累積値は、接続不可能値cinfとされる。 Here, in the initialization of the cumulative value vector d (t), the cumulative value of the connection cost of the starting model among the cumulative values δ 1 (1) to δ N (1) of the connection cost is set to 0, and the starting point A cumulative value of connection costs of learning models other than the model is set to an inaccessible value c inf .

したがって、例えば、終点モデルに至るまでの系列情報が表す学習モデルの系列(並び)のうちの最初の学習モデル(時刻t=1の状態に対応する学習モデル)が、始点モデルになっていない場合には、終点モデルに至るまでの接続コストの累積値は、接続不可能値cinf以上の値となる。 Therefore, for example, when the first learning model (the learning model corresponding to the state at time t = 1) in the learning model sequence (arrangement) represented by the sequence information up to the end point model is not the start point model the cumulative value of the connection cost to reaching the end point model, a connection impossible value c inf or more.

一方、終点モデルに至るまでの系列情報が表す学習モデルの系列のうちの最初の学習モデルが、始点モデルになった場合、すなわち、始点モデルから終点モデルまでの学習モデルの並びとして、接続コストの累積値を小にする適切な学習モデルの並びが得られた場合、終点モデルに至るまでの接続コストの累積値は、接続不可能値cinfよりも十分小さいコネクティビティcijの累積値となって、接続不可能値cinfより小さな値となる。 On the other hand, when the first learning model of the learning model sequence represented by the sequence information up to the end point model becomes the start point model, that is, as a sequence of learning models from the start point model to the end point model, When an appropriate sequence of learning models with a small cumulative value is obtained, the cumulative value of the connection cost up to the end point model is the cumulative value of connectivity c ij that is sufficiently smaller than the inaccessible value c inf. The connection impossible value c inf is smaller.

したがって、終点モデルに至るまでの系列情報が表す学習モデルの系列のうちの最初の学習モデルが、始点モデルになる場合の、終点モデルに至るまでの接続コストの累積値の一般的な値(例えば、平均値等)より大で、かつ、接続不可能値cinfより小さい値を、閾値δthとして採用し、式δgoal(t)≦δthで表される計算終了条件を判定することにより、始点モデルから終点モデルまでの、適切な学習モデルの並び、すなわち、生成用モデルシーケンスを得ることができる。 Therefore, when the first learning model among the series of learning models represented by the sequence information up to the end point model becomes the start point model, a general value of the cumulative value of the connection cost up to the end point model (for example, By adopting a value larger than the average value) and smaller than the inaccessible value c inf as the threshold value δ th and determining the calculation end condition represented by the formula δ goal (t) ≦ δ th An appropriate sequence of learning models from the start point model to the end point model, that is, a generation model sequence can be obtained.

なお、閾値δthは、シミュレーション等によって求められる。また、閾値δthとしては、固定の値を採用することもできるし、可変の値を採用することもできる。可変な値の閾値δthとしては、接続コストの累積回数(式(2)による前向き計算時の時刻t)に応じて増加する値等を採用することができる。 The threshold value δ th is obtained by simulation or the like. Further, as the threshold value δ th , a fixed value can be adopted, or a variable value can be adopted. As the variable value threshold δ th , a value that increases according to the cumulative number of connection costs (time t during forward calculation according to equation (2)) can be employed.

生成用モデルシーケンス算出部25は、前向き計算の開始後、計算終了条件が満たされると、前向き計算を終了し、バックトラック処理を行うことで、生成用モデルシーケンスを求める。   When the calculation end condition is satisfied after the start of the forward calculation, the generation model sequence calculation unit 25 ends the forward calculation and performs backtrack processing to obtain the generation model sequence.

すなわち、生成用モデルシーケンス算出部25は、上述したように、前向き計算において、学習モデル#1ないし#Nそれぞれについて、時刻ごとに最小接続元情報を記憶する。   That is, as described above, the generation model sequence calculation unit 25 stores the minimum connection source information for each learning model # 1 to #N in the forward calculation for each time.

バックトラック処理では、生成用モデルシーケンス算出部25は、終点モデルから、時刻を遡る方向に、最小接続元情報を、1時刻ずつ、始点モデルまで辿っていく。そして、生成用モデルシーケンス算出部25は、最小接続元情報を、辿った順の逆の順番に並び替えることで、時刻順の並びとし、その時刻順の並びの最小接続元情報が表す、始点モデルから終点モデルまでの学習モデルの並びを、生成用モデルシーケンスとして求める。   In the backtrack process, the generation model sequence calculation unit 25 traces the minimum connection source information from the end point model to the start point model one time at a time in the direction of going back in time. Then, the generation model sequence calculation unit 25 rearranges the minimum connection source information in the reverse order of the traced order so that the order is in the order of time, and the start point represented by the minimum connection source information in the order of the time order The sequence of learning models from the model to the end point model is obtained as a generating model sequence.

なお、生成用モデルシーケンスは、時系列データ生成部26で時系列データの生成に用いられる学習モデルの順番を表す。したがって、生成用モデルシーケンスは、時系列データの生成に用いる学習モデルの順番のプランということができる。   The generation model sequence represents the order of learning models used for generating time-series data by the time-series data generating unit 26. Therefore, it can be said that the generation model sequence is a plan of the order of learning models used for generating time-series data.

[生成用モデルシーケンスを用いた時系列データの生成]
図12を参照して、時系列データ生成部26による、生成用モデルシーケンスを用いた時系列データ(生成時系列データ)の生成について説明する。
[Generate time-series data using a model sequence for generation]
With reference to FIG. 12, generation of time series data (generation time series data) using a generation model sequence by the time series data generation unit 26 will be described.

図12は、生成用モデルシーケンスが、4つの構成モデル(学習モデル)#1ないし#4の並びである場合に、その生成用モデルシーケンスを用いて生成される生成時系列データを示している。   FIG. 12 shows generation time-series data generated using the generation model sequence when the generation model sequence is an arrangement of four constituent models (learning models) # 1 to # 4.

時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデル#1ないし#4について、コネクティビティを算出する場合と同様の、モデル生成データのオーバラップ部分の順伝播と逆伝播を繰り返す。これにより、時系列データ生成部26は、隣接する構成モデル#kと#k+1それぞれが生成するモデル生成データ#kと#k+1どうしを、なるべく繋がりやすくする、構成モデル#1ないし#4それぞれの初期コンテキスト(最適初期コンテキスト)を求める。   The time-series data generation unit 26 repeats the forward propagation and the reverse propagation of the overlap portion of the model generation data, similar to the case of calculating the connectivity for the configuration models # 1 to # 4 constituting the generation model sequence. As a result, the time series data generation unit 26 makes it easy to connect the model generation data #k and # k + 1 generated by the adjacent configuration models #k and # k + 1, respectively, as much as possible. 4 Find each initial context (optimal initial context).

そして、時系列データ生成部26は、最適初期コンテキストを、構成モデル#1ないし#4に与えて、構成モデル#1ないし#4からモデル生成データ#1ないし#4を生成し、そのモデル生成データ#1ないし#4を接続することで、生成時系列データを生成する。   Then, the time series data generation unit 26 gives the optimal initial context to the configuration models # 1 to # 4, generates model generation data # 1 to # 4 from the configuration models # 1 to # 4, and the model generation data Generate time series data by connecting # 1 to # 4.

すなわち、時系列データ生成部26は、まず、生成用モデルシーケンスを構成する始点モデルである構成モデル#1の入力データの最初の1サンプルとして、構成モデル#1に割り当てられたモデル学習用データ#iの最初の1サンプルを設定する。   That is, the time-series data generation unit 26 first stores the model learning data # assigned to the configuration model # 1 as the first sample of the input data of the configuration model # 1 that is the starting point model constituting the generation model sequence. Set the first sample of i.

さらに、時系列データ生成部26は、生成用モデルシーケンスを構成する終点モデルである構成モデル#4の出力データの最後の1サンプルの真値として、構成モデル#4に割り当てられたモデル学習用データ#4の最後の1サンプルを設定する。   Further, the time series data generation unit 26 uses the model learning data assigned to the configuration model # 4 as the true value of the last one sample of the output data of the configuration model # 4 that is the end point model constituting the generation model sequence. Set the last sample of # 4.

また、時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデル#1ないし#4のそれぞれの初期コンテキストとして、ランダムな値を設定する。   In addition, the time-series data generation unit 26 sets a random value as the initial context of each of the configuration models # 1 to # 4 constituting the generation model sequence.

そして、時系列データ生成部26は、始点モデルである構成モデル#1に、入力データと初期コンテキストを与えて、Sサンプルのモデル生成データ#1を生成する。   Then, the time-series data generation unit 26 gives the input data and the initial context to the configuration model # 1 that is the start point model, and generates model generation data # 1 of S samples.

始点モデルである構成モデル#1から、Sサンプルのモデル生成データ#1を生成した後、時系列データ生成部26は、そのモデル生成データ#1の最後のオーバラップ部分であるLサンプルを、直後の構成モデル#2の入力データの最初のLサンプルとして設定する。   After generating S-sample model generation data # 1 from the configuration model # 1 that is the starting point model, the time-series data generation unit 26 immediately follows the L sample that is the last overlap portion of the model generation data # 1. Set as the first L sample of the input data of configuration model # 2.

そして、時系列データ生成部26は、構成モデル#2に、入力データと初期コンテキストを与えて、Sサンプルのモデル生成データ#2を生成する。   Then, the time-series data generation unit 26 gives input data and an initial context to the configuration model # 2, and generates model generation data # 2 of S samples.

その後、時系列データ生成部26は、構成モデル#2から生成されたモデル生成データ#2の最後のオーバラップ部分であるLサンプルを、直後の構成モデル#3の入力データの最初のLサンプルとして設定する。   Thereafter, the time-series data generation unit 26 uses the L sample that is the last overlap part of the model generation data # 2 generated from the configuration model # 2 as the first L sample of the input data of the immediately subsequent configuration model # 3. Set.

そして、時系列データ生成部26は、構成モデル#3に、入力データと初期コンテキストを与えて、Sサンプルのモデル生成データ#3を生成する。   Then, the time-series data generation unit 26 gives input data and initial context to the configuration model # 3, and generates model generation data # 3 of S samples.

さらに、構成モデル#3から生成されたモデル生成データ#3の最後のオーバラップ部分であるLサンプルを、直後の構成モデル#4の入力データの最初のLサンプルとして設定する。   Further, the L sample which is the last overlap part of the model generation data # 3 generated from the configuration model # 3 is set as the first L sample of the input data of the immediately subsequent configuration model # 4.

そして、時系列データ生成部26は、構成モデル#4に、入力データと初期コンテキストを与えて、Sサンプルのモデル生成データ#4を生成する。   Then, the time-series data generation unit 26 gives input data and initial context to the configuration model # 4, and generates model generation data # 4 of S samples.

以上のように、時系列データ生成部26は、終点モデルである構成モデル#4から、モデル生成データ#4を生成すると、そのモデル生成データ#4の最後のサンプルの、構成モデル#4の出力データの最後の1サンプルの真値(上述したように、構成モデル#4に割り当てられたモデル学習用データ#4の最後の1サンプル)に対する予測誤差を求める。   As described above, when generating the model generation data # 4 from the configuration model # 4 that is the end point model, the time series data generation unit 26 outputs the configuration model # 4 of the last sample of the model generation data # 4. A prediction error for the true value of the last one sample of data (the last one sample of model learning data # 4 assigned to the constituent model # 4 as described above) is obtained.

そして、時系列データ生成部26は、モデル生成データ#4の最後の1サンプルの予測誤差を、例えば、BPTT法に基づき、モデル生成データ#4の最初の1サンプルまで逆伝播(誤差の逆伝播)することで、その予測誤差を小さくするように、終点モデルである構成モデル#4の初期コンテキストを更新する。   Then, the time-series data generation unit 26 propagates the prediction error of the last one sample of the model generation data # 4 back to the first sample of the model generation data # 4 based on, for example, the BPTT method (error propagation back) ), The initial context of the constituent model # 4 that is the end point model is updated so as to reduce the prediction error.

構成モデル#4の初期コンテキストの更新後、時系列データ生成部26は、構成モデル#4に、入力データ(上述したように、直前の構成モデル#3から生成されたモデル生成データ#3の最後のオーバラップ部分であるLサンプル)と、更新後の初期コンテキストを与えて、Sサンプルのモデル生成データ#4を生成する。   After updating the initial context of the configuration model # 4, the time series data generation unit 26 adds the input data (the last of the model generation data # 3 generated from the immediately previous configuration model # 3 as described above) to the configuration model # 4. L sample) that is the overlap portion of) and the initial context after the update are given, and model generation data # 4 of S sample is generated.

さらに、時系列データ生成部26は、構成モデル#4から生成されたモデル生成データ#4の最初のオーバラップ部分であるLサンプルを、直前の構成モデル#3の最後のLサンプルの真値として設定する。   Further, the time-series data generation unit 26 sets the L sample that is the first overlap portion of the model generation data # 4 generated from the configuration model # 4 as the true value of the last L sample of the immediately previous configuration model # 3. Set.

その後、時系列データ生成部26は、構成モデル#3から生成されたモデル生成データ#3の最後のLサンプルの、構成モデル#3の出力データの最後のLサンプルの真値(上述したように、初期コンテキストの更新後の学習モデル#4から生成されたモデル生成データ#4の最初のオーバラップ部分であるLサンプル)に対する予測誤差を求める。   Thereafter, the time-series data generating unit 26 calculates the true value of the last L sample of the output data of the configuration model # 3 of the last L sample of the model generation data # 3 generated from the configuration model # 3 (as described above). Then, a prediction error is obtained for the L sample which is the first overlap portion of the model generation data # 4 generated from the learning model # 4 after the initial context update.

そして、時系列データ生成部26は、モデル生成データ#3の最後のLサンプルの予測誤差を、例えば、BPTT法に基づき、モデル生成データ#3の最初の1サンプルまで逆伝播(誤差の逆伝播)することで、その予測誤差を小さくするように、構成モデル#3の初期コンテキストを更新する。   Then, the time series data generation unit 26 propagates the prediction error of the last L sample of the model generation data # 3 back to the first one sample of the model generation data # 3 based on, for example, the BPTT method. ), The initial context of the configuration model # 3 is updated so as to reduce the prediction error.

その後、時系列データ生成部26は、構成モデル#3から生成されたモデル生成データ#3の最初のオーバラップ部分であるLサンプルを、直前の構成モデル#2の最後のLサンプルの真値として設定する。   Thereafter, the time-series data generation unit 26 uses the L sample that is the first overlap portion of the model generation data # 3 generated from the configuration model # 3 as the true value of the last L sample of the immediately previous configuration model # 2. Set.

さらに、時系列データ生成部26は、構成モデル#2から生成されたモデル生成データ#2の最後のLサンプルの、構成モデル#2の出力データの最後のLサンプルの真値(上述したように、初期コンテキストの更新後の学習モデル#3から生成されたモデル生成データ#3の最初のオーバラップ部分であるLサンプル)に対する予測誤差を求める。   Further, the time-series data generation unit 26 calculates the true value of the last L sample of the output data of the configuration model # 2 of the last L sample of the model generation data # 2 generated from the configuration model # 2 (as described above). Then, a prediction error is obtained for the L sample that is the first overlap portion of the model generation data # 3 generated from the learning model # 3 after the initial context update.

そして、時系列データ生成部26は、モデル生成データ#2の最後のLサンプルの予測誤差を、例えば、BPTT法に基づき、モデル生成データ#2の最初の1サンプルまで逆伝播することで、その予測誤差を小さくするように、構成モデル#2の初期コンテキストを更新する。   Then, the time series data generation unit 26 propagates the prediction error of the last L sample of the model generation data # 2 back to the first one sample of the model generation data # 2 based on, for example, the BPTT method. The initial context of the configuration model # 2 is updated so as to reduce the prediction error.

その後、時系列データ生成部26は、構成モデル#2から生成されたモデル生成データ#2の最初のオーバラップ部分であるLサンプルを、直前の構成モデル#1の最後のLサンプルの真値として設定する。   Thereafter, the time-series data generation unit 26 sets the L sample that is the first overlap portion of the model generation data # 2 generated from the configuration model # 2 as the true value of the last L sample of the immediately previous configuration model # 1. Set.

さらに、時系列データ生成部26は、構成モデル#1から生成されたモデル生成データ#1の最後のLサンプルの、構成モデル#1の出力データの最後のLサンプルの真値(上述したように、初期コンテキストの更新後の学習モデル#2から生成されたモデル生成データ#2の最初のオーバラップ部分であるLサンプル)に対する予測誤差を求める。   Furthermore, the time-series data generation unit 26 calculates the true value of the last L sample of the output data of the configuration model # 1 of the last L sample of the model generation data # 1 generated from the configuration model # 1 (as described above). Then, a prediction error is obtained for the L sample that is the first overlap portion of the model generation data # 2 generated from the learning model # 2 after the initial context update.

そして、時系列データ生成部26は、モデル生成データ#1の最後のLサンプルの予測誤差を、例えば、BPTT法に基づき、モデル生成データ#1の最初の1サンプルまで逆伝播することで、その予測誤差を小さくするように、構成モデル#1の初期コンテキストを更新する。   Then, the time series data generation unit 26 propagates the prediction error of the last L sample of the model generation data # 1 back to the first one sample of the model generation data # 1 based on, for example, the BPTT method. The initial context of the configuration model # 1 is updated so as to reduce the prediction error.

以上のように、終点モデルである構成モデル#4から、始点モデルである構成モデル#1までの初期コンテキストの更新が終了すると、時系列データ生成部26は、構成モデル#1に、入力データ(上述したように、始点モデルである構成モデル#1に割り当てられたモデル学習用データ#1の最初の1サンプル)と、更新後の初期コンテキストを与えて、Sサンプルのモデル生成データ#1を生成する。   As described above, when the update of the initial context from the configuration model # 4 that is the end point model to the configuration model # 1 that is the start point model is completed, the time-series data generation unit 26 stores the input data ( As described above, the first sample of the model learning data # 1 assigned to the configuration model # 1 that is the starting point model) and the updated initial context are given to generate the model generation data # 1 of the S sample To do.

さらに、時系列データ生成部26は、始点モデルである構成モデル#1から生成されたモデル生成データ#1の最後のオーバラップ部分であるLサンプルを、直後の構成モデル#2の入力データの最初のLサンプルとして設定し、以下、同様の処理を繰り返す。   Further, the time-series data generation unit 26 uses the L sample that is the last overlap part of the model generation data # 1 generated from the configuration model # 1 that is the start point model, as the first input data of the immediately subsequent configuration model # 2. The same processing is repeated thereafter.

そして、時系列データ生成部26は、例えば、生成用モデルシーケンスを構成する構成モデル#1ないし#4それぞれで得られる予測誤差が収束すると、そのとき得られている初期コンテキストを、構成モデル#1ないし#4それぞれの最適初期コンテキストとする。   Then, for example, when the prediction error obtained in each of the configuration models # 1 to # 4 constituting the generation model sequence converges, the time series data generation unit 26 uses the initial context obtained at that time as the configuration model # 1. Or # 4 as the optimal initial context for each.

その後、時系列データ生成部26は、始点モデルである構成モデル#1に、入力データとして、現在データを支えるとともに、最適初期コンテキストを与えて、モデル生成データ#1を生成する。   Thereafter, the time-series data generation unit 26 generates the model generation data # 1 by supporting the current data as the input data and providing the optimum initial context to the configuration model # 1 that is the start point model.

そして、時系列データ生成部26は、構成モデル#1から生成されたモデル生成データ#1の最後のオーバラップ部分であるLサンプルを、直後の構成モデル#2の入力データの最初のLサンプルとして設定する。   Then, the time-series data generation unit 26 uses the L sample which is the last overlap part of the model generation data # 1 generated from the configuration model # 1 as the first L sample of the input data of the immediately subsequent configuration model # 2. Set.

さらに、時系列データ生成部26は、構成モデル#2に、入力データと、最適初期コンテキストとを与えて、モデル生成データ#2を生成する。   Furthermore, the time-series data generation unit 26 generates model generation data # 2 by giving input data and an optimal initial context to the configuration model # 2.

そして、時系列データ生成部26は、構成モデル#2から生成されたモデル生成データ#2の最後のオーバラップ部分であるLサンプルを、直後の構成モデル#3の入力データの最初のLサンプルとして設定する。   Then, the time-series data generation unit 26 uses the L sample that is the last overlap part of the model generation data # 2 generated from the configuration model # 2 as the first L sample of the input data of the immediately subsequent configuration model # 3. Set.

さらに、時系列データ生成部26は、構成モデル#3に、入力データと、最適初期コンテキストとを与えて、モデル生成データ#3を生成する。   Further, the time-series data generation unit 26 generates model generation data # 3 by giving input data and an optimal initial context to the configuration model # 3.

そして、時系列データ生成部26は、構成モデル#3から生成されたモデル生成データ#3の最後のオーバラップ部分であるLサンプルを、直後の構成モデル#4の入力データの最初のLサンプルとして設定する。   Then, the time-series data generation unit 26 uses the L sample that is the last overlap part of the model generation data # 3 generated from the configuration model # 3 as the first L sample of the input data of the immediately subsequent configuration model # 4. Set.

さらに、時系列データ生成部26は、構成モデル#4に、入力データと、最適初期コンテキストとを与えて、モデル生成データ#4を生成する。   Furthermore, the time-series data generation unit 26 generates model generation data # 4 by giving input data and an optimal initial context to the configuration model # 4.

以上のように、生成用モデルシーケンスを構成する構成モデル#1ないし#4のそれぞれに、最適初期コンテキストを与えて、モデル生成データ#1ないし#4が生成されると、時系列データ生成部26は、そのモデル生成データ#1ないし#4を接続して、生成時系列データを生成する。   As described above, when the model generation data # 1 to # 4 is generated by giving the optimum initial context to each of the configuration models # 1 to # 4 constituting the generation model sequence, the time-series data generation unit 26 Connects the model generation data # 1 to # 4 to generate generation time-series data.

すなわち、時系列データ生成部26は、例えば、構成モデル#kから生成されたモデル生成データ#kの後に、直後の構成モデル#k+1から生成されたモデル生成データ#k+1の最初のオーバラップ部分より後のサンプル(モデル生成データ#k+1の先頭からL+1サンプル以降のサンプル)を接続することで、生成時系列データを生成する。   That is, the time-series data generation unit 26, for example, after the model generation data #k generated from the configuration model #k, the first model generation data # k + 1 generated from the immediately subsequent configuration model # k + 1. The generation time series data is generated by connecting the samples after the overlap portion (samples after the L + 1 sample from the top of the model generation data # k + 1).

[データ生成装置20の動作]
図13を参照して、データ生成装置20の処理(データ生成処理)について説明する。
[Operation of Data Generation Device 20]
With reference to FIG. 13, the process (data generation process) of the data generation apparatus 20 will be described.

データ生成装置20では、ステップS61において、現在データ供給部21、目標データ供給部22、始点モデル選択部23、終点モデル選択部24、及び、生成用モデルシーケンス算出部25が、生成用モデルシーケンスを算出する算出処理を行う。   In the data generation device 20, in step S61, the current data supply unit 21, the target data supply unit 22, the start point model selection unit 23, the end point model selection unit 24, and the generation model sequence calculation unit 25 generate the generation model sequence. A calculation process for calculating is performed.

さらに、ステップS61では、生成用モデルシーケンス算出部25が、生成用モデルシーケンスの算出処理において得られる生成用モデルシーケンスを、時系列データ生成部26に供給して、処理は、ステップS62に進む。   Further, in step S61, the generation model sequence calculation unit 25 supplies the generation model sequence obtained in the generation model sequence calculation process to the time-series data generation unit 26, and the process proceeds to step S62.

ステップS62では、時系列データ生成部26が、生成用モデルシーケンス算出部25からの生成用モデルシーケンスを用いて、生成時系列データを生成し、時系列データ出力部27に供給する時系列データ生成処理を行い、処理は、ステップS63に進む。   In step S 62, the time series data generation unit 26 generates generation time series data using the generation model sequence from the generation model sequence calculation unit 25 and supplies the time series data output unit 27 to the time series data output unit 27. A process is performed, and the process proceeds to step S63.

ステップS63では、時系列データ出力部27が、時系列データ生成部26からの生成時系列データを、図1のデータ処理装置が制御するロボットに出力して、データ生成処理は終了する。   In step S63, the time-series data output unit 27 outputs the generated time-series data from the time-series data generation unit 26 to the robot controlled by the data processing apparatus in FIG. 1, and the data generation process ends.

図1のデータ処理装置が制御するロボットは、時系列データ出力部27からの生成時系列データ(センサモータデータ)のコンポーネントのうちのアクションデータに従って駆動する。これにより、ロボットは、所定の行動、すなわち、ロボットでセンシングされるセンサデータとして、現在データが得られている状態から、目標データが得られる状態となるのに適切な行動をとる。   The robot controlled by the data processing apparatus of FIG. 1 is driven according to action data among the components of the generated time series data (sensor motor data) from the time series data output unit 27. As a result, the robot takes a predetermined action, that is, an action appropriate for obtaining target data from a state in which data is currently obtained as sensor data sensed by the robot.

[生成用モデルシーケンスの算出処理]
図14を参照して、図13のステップS61で行われる、生成用モデルシーケンスの算出処理について説明する。
[Generation of model sequence for generation]
With reference to FIG. 14, the generation model sequence calculation process performed in step S61 of FIG. 13 will be described.

ステップS71において、現在データ供給部21は、現在データを、始点モデル選択部23、及び、時系列データ生成部26に供給して、処理は、ステップS72に進む。   In step S71, the current data supply unit 21 supplies the current data to the start point model selection unit 23 and the time series data generation unit 26, and the process proceeds to step S72.

ステップS72では、始点モデル選択部23は、現在データ供給部21からの現在データを入力データとし、モデルパラメータ保存部15にモデルパラメータが記憶されたN個の学習モデル#1ないし#Nのそれぞれから、現在データの予測値であるモデル生成データ#1ないし#Nを生成(認識生成)する。   In step S72, the start point model selection unit 23 uses the current data from the current data supply unit 21 as input data, and from each of the N learning models # 1 to #N whose model parameters are stored in the model parameter storage unit 15. Then, model generation data # 1 to #N, which are predicted values of the current data, are generated (recognized and generated).

そして、処理は、ステップS72からステップS73に進み、始点モデル選択部23は、モデル生成データ#1ないし#Nそれぞれの、現在データの予測値の予測誤差を求める。さらに、始点モデル選択部23は、N個の学習モデル#1ないし#Nのうちの、予測誤差が小さい、例えば、上位1個の学習モデルを始点モデルとして選択し、処理は、ステップS73からステップS74に進む。   Then, the process proceeds from step S72 to step S73, and the start point model selection unit 23 obtains a prediction error of the prediction value of the current data for each of the model generation data # 1 to #N. Furthermore, the start point model selection unit 23 selects, for example, the top one learning model having a small prediction error from among the N learning models # 1 to #N as the start point model, and the processing is performed from step S73 to step S73. Proceed to S74.

ステップS74では、目標データ供給部22は、目標データを、終点モデル選択部24に供給して、処理は、ステップS75に進む。   In step S74, the target data supply unit 22 supplies the target data to the end point model selection unit 24, and the process proceeds to step S75.

ステップS75では、終点モデル選択部24は、目標データ供給部22からの目標データを入力データとし、モデルパラメータ保存部15にモデルパラメータが記憶されたN個の学習モデル#1ないし#Nのそれぞれから、目標データの予測値であるモデル生成データ#1ないし#Nを生成(認識生成)する。   In step S75, the end point model selection unit 24 uses the target data from the target data supply unit 22 as input data, and from each of the N learning models # 1 to #N whose model parameters are stored in the model parameter storage unit 15. Then, model generation data # 1 to #N, which are predicted values of the target data, are generated (recognized and generated).

そして、処理は、ステップS75からステップS76に進み、終点モデル選択部24は、モデル生成データ#1ないし#Nそれぞれの、目標データの予測値の予測誤差を求める。さらに、終点モデル選択部24は、N個の学習モデル#1ないし#Nのうちの、予測誤差が小さい、例えば、上位1個の学習モデルを終点モデルとして選択し、処理は、ステップS76からステップS77に進む。   Then, the process proceeds from step S75 to step S76, and the end point model selection unit 24 obtains the prediction error of the predicted value of the target data for each of the model generation data # 1 to #N. Further, the end point model selection unit 24 selects, for example, the top one learning model having a small prediction error among the N learning models # 1 to #N as the end point model, and the processing is performed from step S76 to step S76. Proceed to S77.

ステップS77では、始点モデル選択部23が、始点モデルの始点モデルIDを、生成用モデルシーケンス算出部25に供給する。さらに、ステップS77では、終点モデル選択部24が、終点モデルの終点モデルIDを、生成用モデルシーケンス算出部25に供給して、処理は、ステップS77からステップS78に進む。   In step S 77, the start point model selection unit 23 supplies the start point model ID of the start point model to the generation model sequence calculation unit 25. Furthermore, in step S77, the end point model selection unit 24 supplies the end point model ID of the end point model to the generation model sequence calculation unit 25, and the process proceeds from step S77 to step S78.

ステップS78では、生成用モデルシーケンス算出部25が、始点モデル選択部23からの始点モデルIDによって始点モデルを特定するとともに、終点モデル選択部24からの終点モデルIDによって終点モデルを特定する。   In step S 78, the generation model sequence calculation unit 25 specifies the start point model based on the start point model ID from the start point model selection unit 23 and specifies the end point model based on the end point model ID from the end point model selection unit 24.

さらに、生成用モデルシーケンス算出部25は、始点モデルから終点モデルまでの、複数の学習モデルの、ある並びを、生成用モデルシーケンスとして求める。   Further, the generation model sequence calculation unit 25 obtains a certain arrangement of a plurality of learning models from the start point model to the end point model as a generation model sequence.

すなわち、生成用モデルシーケンス算出部25は、上述したように、コネクティビティ保存部17に記憶されたコネクティビティに対応する値を、1つの学習モデルの後に、他の1つの学習モデルを接続する接続コストとして、接続コストの累積値を最小にする、始点モデルから終点モデルまでの学習モデルの並びを、生成用モデルシーケンスとして求める。   That is, as described above, the generation model sequence calculation unit 25 uses the value corresponding to the connectivity stored in the connectivity storage unit 17 as the connection cost for connecting one learning model to another learning model. The sequence of learning models from the start point model to the end point model that minimizes the cumulative value of connection costs is obtained as a generation model sequence.

そして、生成用モデルシーケンス算出部25は、生成用モデルシーケンスを、時系列データ生成部26に供給して、処理はリターンする。   Then, the generation model sequence calculation unit 25 supplies the generation model sequence to the time series data generation unit 26, and the process returns.

[時系列データ生成処理]
図15ないし図18を参照して、図13のステップS62で行われる時系列データ生成処理について説明する。
[Time-series data generation processing]
With reference to FIGS. 15 to 18, the time-series data generation process performed in step S62 of FIG. 13 will be described.

図15は、時系列データ生成処理を説明するフローチャートである。   FIG. 15 is a flowchart for explaining time-series data generation processing.

時系列データ生成処理では、ステップS81において、時系列データ生成部26が、生成用モデルシーケンス算出部25から供給される生成用モデルシーケンスを受信し、処理は、ステップS82に進む。   In the time-series data generation process, in step S81, the time-series data generation unit 26 receives the generation model sequence supplied from the generation model sequence calculation unit 25, and the process proceeds to step S82.

ステップS82では、時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデルのうちの、始点モデルと終点モデルのそれぞれに割り当てられたモデル学習用データを、モデル学習用データ保存部13(図1)から読み込み、処理は、ステップS83に進む。   In step S82, the time-series data generation unit 26 uses the model learning data storage unit 13 (the model learning data assigned to each of the start point model and the end point model among the constituent models constituting the generation model sequence. After reading from FIG. 1), the process proceeds to step S83.

ステップS83では、時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデルそれぞれのモデルパラメータを、モデルパラメータ保存部15(図1)から読み出し、処理は、ステップS84に進む。   In step S83, the time-series data generation unit 26 reads out the model parameters of each of the constituent models constituting the generation model sequence from the model parameter storage unit 15 (FIG. 1), and the process proceeds to step S84.

ステップS84では、時系列データ生成部26は、始点モデルの入力データの最初の1サンプルとして、始点モデルに割り当てられたモデル学習用データの最初の1サンプルを設定して、処理は、ステップS85に進む。   In step S84, the time-series data generation unit 26 sets the first one sample of the model learning data assigned to the start point model as the first one sample of the input data of the start point model, and the process proceeds to step S85. move on.

ステップS85では、時系列データ生成部26は、終点モデルの出力データの最後の1サンプルの真値として、終点モデルに割り当てられたモデル学習用データの最後の1サンプルを設定して、処理は、ステップS86に進む。   In step S85, the time-series data generation unit 26 sets the last one sample of the model learning data assigned to the end point model as the true value of the last one sample of the output data of the end point model. Proceed to step S86.

ステップS86では、時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデルのモデルパラメータを、学習モデルに設定することで、生成用モデルシーケンスを構成する構成モデルを生成し(例えば、オブジェクト指向プログラミングにおける、構成モデルとしての学習モデルのインスタンスを生成し)、処理は、ステップS87に進む。   In step S86, the time-series data generation unit 26 generates a configuration model that constitutes the generation model sequence by setting model parameters of the configuration model that constitutes the generation model sequence in the learning model (for example, object In the oriented programming, an instance of a learning model as a configuration model is generated), and the process proceeds to step S87.

ステップS88では、時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデルのそれぞれの初期コンテキストとして、ランダムな値を設定して、処理は、図16のステップS91に進む。   In step S88, the time-series data generation unit 26 sets a random value as the initial context of each of the constituent models constituting the generation model sequence, and the process proceeds to step S91 in FIG.

すなわち、図16は、図15に続くフローチャートである。   That is, FIG. 16 is a flowchart following FIG.

ステップS91では、時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデルのうちの、始点モデルを、注目する注目モデルに選択する。さらに、ステップS91では、注目モデルである始点モデルに、ステップS84(図15)で設定された入力データと、初期コンテキスト(いまの場合、ステップS87で設定された初期コンテキスト)を与えて、モデル生成データを生成し、処理は、ステップS92に進む。   In step S91, the time-series data generation unit 26 selects a start point model among the constituent models constituting the generation model sequence as a target model of interest. Further, in step S91, the input model set in step S84 (FIG. 15) and the initial context (in this case, the initial context set in step S87) are given to the starting point model that is the model of interest to generate a model. Data is generated, and the process proceeds to step S92.

ステップS92では、時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデルのうちの、現在の注目モデルの直後の構成モデル(以下、直後モデルともいう)を、新たに、注目モデルに選択する。   In step S92, the time-series data generation unit 26 newly sets a configuration model immediately after the current model of interest (hereinafter also referred to as a model immediately after) of the configuration models constituting the generation model sequence as a model of interest. select.

さらに、時系列データ生成部26は、注目モデルの入力データの最初のLサンプルとして、生成用モデルシーケンスを構成する構成モデルのうちの、現在の注目モデルの直前の構成モデル(以下、直前モデルともいう)から生成されたモデル生成データの最後のオーバラップ部分であるLサンプルを設定し、処理は、ステップS92からステップS93に進む。   Further, the time-series data generation unit 26 uses, as the first L sample of the input data of the model of interest, the configuration model immediately before the current model of interest among the configuration models constituting the generation model sequence (hereinafter referred to as the previous model) The L sample which is the last overlap part of the model generation data generated from the above is set, and the process proceeds from step S92 to step S93.

ステップS93では、時系列データ生成部26は、注目モデルに、ステップS92で設定された入力データ(直前モデルから生成されたモデル生成データの最後のオーバラップ部分であるLサンプル)と、初期コンテキストを与えて、モデル生成データを生成し、処理は、ステップS94に進む。   In step S93, the time-series data generation unit 26 uses the input data set in step S92 (L sample that is the last overlap part of the model generation data generated from the immediately preceding model) and the initial context as the target model. Given, model generation data is generated, and the process proceeds to step S94.

なお、ステップS91及びS93において、注目モデルに与えられる初期コンテキストは、後述するステップS102とS106(図17)の処理が既に行われている場合には、そのステップS102とS106での更新後の初期コンテキストであり、ステップS102とS106の処理が、まだ行われていない場合には、ステップS87(図15)で設定された初期コンテキストである。   Note that in steps S91 and S93, the initial context given to the model of interest is the initial context after the update in steps S102 and S106 if the processing in steps S102 and S106 (FIG. 17) described later has already been performed. If it is a context and the processing of steps S102 and S106 has not been performed yet, it is the initial context set in step S87 (FIG. 15).

ステップS94では、時系列データ生成部26が、注目モデルが、終点モデルであるかどうかを判定する。ステップS94において、注目モデルが、終点モデルでないと判定された場合、処理は、ステップS92に戻り、以下、同様の処理が繰り返される。   In step S94, the time-series data generation unit 26 determines whether the model of interest is an end point model. If it is determined in step S94 that the model of interest is not the end point model, the process returns to step S92, and the same process is repeated thereafter.

また、ステップS94において、注目モデルが、終点モデルであると判定された場合、つまり、生成用モデルシーケンスを構成する構成モデルのすべてから、モデル生成用データを生成した場合、処理は、図17のステップS101に進む。   If it is determined in step S94 that the model of interest is an end point model, that is, if model generation data is generated from all of the constituent models constituting the generation model sequence, the process is as shown in FIG. Proceed to step S101.

すなわち、図17は、図16に続くフローチャートである。   That is, FIG. 17 is a flowchart following FIG.

ステップS101では、時系列データ生成部26は、終点モデルから生成されたモデル生成データの最後の1サンプルの、ステップS85(図15)で設定された真値に対する予測誤差を求め、処理は、ステップS102に進む。   In step S101, the time-series data generation unit 26 obtains a prediction error for the true value set in step S85 (FIG. 15) of the last one sample of the model generation data generated from the end point model. Proceed to S102.

ステップS102では、時系列データ生成部26は、ステップS102で求められた予測誤差を、BPTT法に基づき、終点モデルから生成されたモデル生成データの最初の1サンプルまで逆伝播することで、その予測誤差を小さくするように、終点モデルの初期コンテキストを更新し、処理は、ステップS103に進む。   In step S102, the time-series data generation unit 26 propagates the prediction error obtained in step S102 back to the first sample of model generation data generated from the end point model based on the BPTT method. The initial context of the end point model is updated so as to reduce the error, and the process proceeds to step S103.

ステップS103では、時系列データ生成部26は、終点モデルを、注目モデルに選択する。さらに、ステップS103では、時系列データ生成部26は、注目モデルである終点モデルに、ステップS92(図16)で設定された入力データと、ステップS102での更新後の初期コンテキストを与えて、モデル生成データを生成する。   In step S103, the time series data generation unit 26 selects the end point model as the model of interest. Further, in step S103, the time-series data generation unit 26 gives the input model set in step S92 (FIG. 16) and the updated initial context in step S102 to the end point model that is the model of interest, and the model Generate generated data.

そして、処理は、ステップS103からステップS104に進み、時系列データ生成部26は、注目モデルの直前モデルを、新たに、注目モデルに選択する。さらに、ステップS104では、時系列データ生成部26は、直前モデルから生成されたモデル生成データの最初のオーバラップ部分のLサンプルを、注目モデルの最後のLサンプルの真値として設定し、処理は、ステップS105に進む。   Then, the process proceeds from step S103 to step S104, and the time-series data generation unit 26 newly selects a model immediately before the target model as the target model. Further, in step S104, the time-series data generation unit 26 sets the L sample of the first overlap portion of the model generation data generated from the immediately preceding model as the true value of the last L sample of the model of interest. The process proceeds to step S105.

ステップS105では、時系列データ生成部26は、注目モデルから生成されたモデル生成データの最後のLサンプルの、ステップS104で設定された真値(初期コンテキストの更新後の直後モデルから生成されたモデル生成データの最初のオーバラップ部分のLサンプル)に対する予測誤差を求め、処理は、ステップS106に進む。   In step S105, the time series data generation unit 26 calculates the true value set in step S104 of the last L sample of the model generation data generated from the model of interest (the model generated from the model immediately after the initial context is updated). The prediction error for L sample of the first overlap portion of the generated data is obtained, and the process proceeds to step S106.

ステップS106では、時系列データ生成部26は、ステップS105で求められた予測誤差を、例えば、BPTT法に基づき、注目モデルから生成されたモデル生成データの最初の1サンプルまで逆伝播することで、その予測誤差を小さくするように、注目モデルの初期コンテキストを更新し、処理は、ステップS107に進む。   In step S106, the time series data generation unit 26 propagates the prediction error obtained in step S105 back to the first sample of model generation data generated from the model of interest based on, for example, the BPTT method. The initial context of the model of interest is updated so as to reduce the prediction error, and the process proceeds to step S107.

ステップS107では、時系列データ生成部26が、注目モデルが、始点モデルであるかどうかを判定する。ステップS107において、注目モデルが、始点モデルでないと判定された場合、処理は、ステップS104に戻り、以下、同様の処理が繰り返される。   In step S107, the time-series data generation unit 26 determines whether the model of interest is a start point model. If it is determined in step S107 that the model of interest is not the start point model, the process returns to step S104, and the same process is repeated thereafter.

また、ステップS107において、注目モデルが、始点モデルであると判定された場合、すなわち、ステップS101ないしS106において、終点モデルから、始点モデルに向かって、生成用モデルシーケンスを構成する構成モデルのすべての初期コンテキストを更新した場合、処理は、ステップS108に進み、時系列データ生成部26は、生成用モデルシーケンスを構成する構成モデルの初期コンテキストの更新を終了する条件(更新終了条件)が満たされているかどうかを判定する。   If it is determined in step S107 that the model of interest is the start point model, that is, in steps S101 to S106, all of the constituent models constituting the generation model sequence from the end point model toward the start point model are displayed. When the initial context is updated, the process proceeds to step S108, and the time-series data generation unit 26 satisfies a condition (update end condition) for ending the update of the initial context of the configuration model constituting the generation model sequence. Determine whether or not.

ここで、ステップS108での更新終了条件としては、ステップS101及びS105で求められる予測誤差が、ある程度収束している状態にあることを採用することができる。具体的には、更新終了条件としては、所定の繰り返し回数だけ、生成用モデルシーケンスを構成する構成モデルの初期コンテキストの更新が行われたことや、ステップS101及びS105で求められる予測誤差が、前回と今回とで、ほとんど変化しないこと、等を採用することができる。   Here, as the update end condition in Step S108, it can be adopted that the prediction error obtained in Steps S101 and S105 is in a state of being converged to some extent. Specifically, as the update end condition, the initial context of the configuration model constituting the generation model sequence has been updated by a predetermined number of repetitions, and the prediction error obtained in steps S101 and S105 is the previous time. And this time, it can be adopted that there is almost no change.

ステップS108において、更新終了条件が満たされていないと判定された場合、処理は、図16のステップS91に戻り、時系列データ生成部26は、始点モデルに、ステップS84(図15)で設定された入力データと、初期コンテキスト(いまの場合、ステップS106での更新後の初期コンテキスト)を与えて、モデル生成データを生成し、以下、同様の処理が繰り返される。   If it is determined in step S108 that the update end condition is not satisfied, the process returns to step S91 in FIG. 16, and the time-series data generation unit 26 is set in the start point model in step S84 (FIG. 15). The input data and the initial context (in this case, the initial context after the update in step S106) are given to generate model generation data. Thereafter, the same processing is repeated.

また、ステップS108において、更新終了条件が満たされていると判定された場合、時系列データ生成部26は、構成モデルの現在の初期コンテキストを、その構成モデルの最適初期コンテキストとして、処理は、図18のステップS111に進む。   If it is determined in step S108 that the update end condition is satisfied, the time-series data generation unit 26 uses the current initial context of the configuration model as the optimal initial context of the configuration model, and the process is as shown in FIG. Proceed to step S111 of FIG.

すなわち、図18は、図17に続く図である。   That is, FIG. 18 is a diagram following FIG.

ステップS111において、時系列データ生成部26は、現在データ供給部21(図1)から供給される現在データを、始点モデルの入力データの最初の複数サンプル(現在データと同一のサンプル数だけのサンプル)として設定して、処理は、ステップS112に進む。   In step S111, the time-series data generation unit 26 uses the current data supplied from the current data supply unit 21 (FIG. 1) as the first plurality of samples of the input data of the start point model (the same number of samples as the current data). ) And the process proceeds to step S112.

ステップS112では、時系列データ生成部26は、始点モデルを、注目モデルに選択する。   In step S112, the time series data generation unit 26 selects the start point model as the model of interest.

さらに、ステップS112では、時系列データ生成部26は、注目モデルである始点モデルに、ステップS111で設定された入力データと、始点モデルの最適初期コンテキストを与えて、Sサンプルのモデル生成データを生成し、処理は、ステップS113に進む。   Further, in step S112, the time-series data generation unit 26 generates the S sample model generation data by giving the input model set in step S111 and the optimal initial context of the start point model to the start point model that is the model of interest. Then, the process proceeds to step S113.

ステップS113では、時系列データ生成部26は、ステップS112で生成したSサンプルのモデル生成データを、生成時系列データ(の一部)として、時系列データ出力部27(図1)に出力して、処理は、ステップS114に進む。   In step S113, the time series data generation unit 26 outputs the model generation data of the S samples generated in step S112 to the time series data output unit 27 (FIG. 1) as (part of) the generation time series data. The process proceeds to step S114.

ステップS114では、時系列データ生成部26は、注目モデルの直後モデルを、新たに、注目モデルに選択する。   In step S114, the time-series data generation unit 26 newly selects a model immediately after the target model as the target model.

さらに、ステップS114では、時系列データ生成部26は、注目モデルの直前モデルから生成されたモデル生成データの最後のオーバラップ部分であるLサンプルを、注目モデルの入力データの最初のLサンプルとして設定し、処理は、ステップS115に進む。   Further, in step S114, the time-series data generation unit 26 sets the L sample that is the last overlap portion of the model generation data generated from the model immediately before the target model as the first L sample of the input data of the target model. Then, the process proceeds to step S115.

ステップS115では、時系列データ生成部26は、注目モデルに、ステップS114で設定された入力データ(直前モデルから生成されたモデル生成データの最後のオーバラップ部分であるLサンプル)と、注目モデルの最適初期コンテキストを与えて、モデル生成データを生成し、処理は、ステップS116に進む。   In step S115, the time-series data generation unit 26 adds the input data set in step S114 (L sample that is the last overlap part of the model generation data generated from the immediately preceding model) to the target model and the target model. An optimal initial context is given to generate model generation data, and the process proceeds to step S116.

ステップS116では、時系列データ生成部26は、ステップS115で注目モデルから生成されたモデル生成データのうちの、L+1サンプル以降のサンプルを、直前に出力された生成時系列データに続く生成時系列データとして、時系列データ出力部27(図1)に出力して、処理は、ステップS117に進む。   In step S116, the time series data generation unit 26 generates a sample after the L + 1 sample from the model generation data generated from the target model in step S115, following the generation time series data output immediately before. It outputs to the time series data output part 27 (FIG. 1) as series data, and a process progresses to step S117.

ステップS117では、時系列データ生成部26は、注目モデルが、終点モデルであるかどうかを判定する。ステップS117において、注目モデルが、終点モデルでないと判定された場合、処理は、ステップS114に戻り、以下、同様の処理が繰り返される。   In step S117, the time-series data generation unit 26 determines whether the model of interest is an end point model. If it is determined in step S117 that the model of interest is not the end point model, the process returns to step S114, and the same process is repeated thereafter.

また、ステップS117において、注目モデルが、終点モデルであると判定された場合、すなわち、生成用モデルシーケンスを構成する構成モデルのすべてから、モデル生成用データを生成した場合、処理はリターンする。   If it is determined in step S117 that the model of interest is an end point model, that is, if model generation data is generated from all of the constituent models constituting the generation model sequence, the process returns.

以上のように、データ処理装置10(図1)では、教師データ分割部12が、時系列データである教師データを、一部がオーバラップする複数のデータに分割し、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力する。さらに、学習部14が、1つのモデル学習用データを、1つの学習モデルに割り当てるように、複数のモデル学習用データを、複数の学習モデルに割り当て、学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられたモデル学習用データを用いて行う。そして、コネクティビティ算出部16が、複数の学習モデルすべてについて、1つの学習モデルが生成する時系列データの最後の一部分のデータ列であるオーバラップ部分と、他の1つの学習モデルが生成する時系列データの最初のオーバラップ部分との誤差を、1つの学習モデルが学習した時系列パターンの後に、他の1つの学習モデルが学習した時系列パターンが接続する適切さを表すコネクティビティとして算出する。   As described above, in the data processing device 10 (FIG. 1), the teacher data dividing unit 12 divides the teacher data, which is time series data, into a plurality of partially overlapping data, and has a learning model having an internal state. Is output as model learning data used for learning. Further, the learning unit 14 assigns a plurality of model learning data to a plurality of learning models so that one model learning data is assigned to one learning model, and the learning of the time series pattern by the learning model is performed. The model learning data assigned to the learning model is used. Then, the connectivity calculation unit 16 includes, for all of the plurality of learning models, an overlap part that is a data string of the last part of the time series data generated by one learning model and a time series generated by the other learning model. The error from the first overlap portion of the data is calculated as connectivity representing the appropriateness of connection of the time series pattern learned by one other learning model after the time series pattern learned by one learning model.

一方、データ生成装置20(図1)では、始点モデル選択部23が、学習後の複数の学習モデルのうちの、1つの学習モデルを、始点モデルとして選択するとともに、終点モデル選択部24が、他の1つの学習モデルを、終点モデルとして選択する。さらに、生成用モデルシーケンス算出部25が、コネクティビティに対応する値を、1つの学習モデルの後に、他の1つの学習モデルを接続する接続コストとして、接続コストの累積値を最小にする、始点モデルから終点モデルまでの学習モデルの並びを、生成用モデルシーケンスとして求める。そして、時系列データ生成部26が、生成用モデルシーケンスを構成する学習モデル(構成モデル)について、学習モデルが生成する時系列データの最後のオーバラップ部分と、後に接続される学習モデルが生成する時系列データの最初のオーバラップ部分との誤差を小さくするように、学習モデルの内部状態の初期値を決定し、その初期値を、学習モデルに与えて、時系列データを生成する。   On the other hand, in the data generation device 20 (FIG. 1), the start point model selection unit 23 selects one learning model as a start point model from among a plurality of learning models after learning, and the end point model selection unit 24 One other learning model is selected as the end point model. Further, the generation model sequence calculation unit 25 uses the value corresponding to the connectivity as the connection cost for connecting another learning model after one learning model, and minimizes the cumulative value of the connection cost. The sequence of learning models from to the end model is obtained as a generation model sequence. Then, the time series data generation unit 26 generates, for the learning model (configuration model) constituting the generation model sequence, the last overlapping portion of the time series data generated by the learning model and the learning model connected later. The initial value of the internal state of the learning model is determined so as to reduce the error from the first overlap portion of the time series data, and the initial value is given to the learning model to generate time series data.

したがって、複雑で、長時間の時系列データを、容易に学習し、また、学習結果に基づき、滑らかな時系列データを、精度良く生成することができる。   Therefore, it is possible to easily learn complicated and long-time time-series data, and to generate smooth time-series data with high accuracy based on the learning result.

すなわち、学習装置10では、1つの学習モデルでは記憶しきれない複雑(非線形、多次元)かつ長時間のダイナミクスを、複数の学習モデルで時間方向に分担して記憶する学習を行い、データ生成装置20では、そのような学習後の学習モデルの並びである生成用モデルシーケンスを算出し、その生成用モデルシーケンスを構成する学習モデルを用いて、生成時系列データを生成する。   In other words, the learning device 10 performs learning by storing in a time direction the complex (non-linear, multi-dimensional) and long-time dynamics that cannot be stored by one learning model by using a plurality of learning models. In 20, a generation model sequence that is an array of such learning models after learning is calculated, and generation time-series data is generated using the learning models constituting the generation model sequence.

そして、生成用モデルシーケンスの算出では、学習モデルどうしの接続性に関する、いわば評価値であるコネクティビティに基づき、各学習モデルが記憶しているダイナミクスをなるべくスムーズに、かつ、始点から終点までより短いパスで接続するように、未経験のプラン(教師データの全部又は一部に相当する生成時系列データを生成する学習モデルの並び以外の学習モデルの並び)をも含む、学習モデルの並びが求められる。   In the calculation of the model sequence for generation, the dynamics stored in each learning model are as smooth as possible based on the connectivity that is the evaluation value for the connectivity between the learning models, and the path from the start point to the end point is as short as possible. As shown in FIG. 1, the learning model sequence including the inexperienced plan (the learning model sequence other than the learning model sequence generating generation time series data corresponding to all or part of the teacher data) is obtained.

さらに、生成時系列データの生成では、直前モデルから生成されたモデル生成データの最後のオーバラップ部分を、注目モデルの入力データの最初の部分として引き継ぐ順方向の伝播によって、順方向にモデル生成データを生成する一方、順方向に生成したモデル生成データをもとに、終点モデルで計算された予測誤差を、逆方向、つまり、始点モデル側の学習モデルに伝播することで、生成用モデルシーケンスを構成する学習モデルの初期コンテキストが修正(更新)される。そして、この順方向、及び逆方向の伝播を繰り返すことにより、生成用モデルシーケンスが、教師データの全部又は一部に相当する生成時系列データを生成する学習モデルの並び以外の学習モデルの並びであっても、生成用モデルシーケンスを構成する学習モデルから生成されるモデル生成データを滑らかに接続するように、初期コンテキストが修正され、滑らかな生成時系列データが生成(再構成)される。   Furthermore, in generation time series data generation, the model generation data in the forward direction is transferred by forward propagation that takes over the last overlap part of the model generation data generated from the immediately preceding model as the first part of the input data of the model of interest. On the other hand, based on the model generation data generated in the forward direction, the prediction error calculated by the end point model is propagated in the reverse direction, that is, the learning model on the start point model side, thereby generating the model sequence for generation. The initial context of the configured learning model is corrected (updated). Then, by repeating this forward and reverse propagation, the generation model sequence is a sequence of learning models other than the sequence of learning models that generate generation time-series data corresponding to all or part of the teacher data. Even in such a case, the initial context is modified so that the model generation data generated from the learning model constituting the generation model sequence is smoothly connected, and smooth generation time-series data is generated (reconstructed).

より具体的には、データ学習装置10では、時系列データである教師データが、一部がオーバラップする複数のモデル学習用データに分割される。そして、1つのモデル学習用データを、1つの学習モデルに割り当てるように、複数のモデル学習用データが、複数の学習モデルに割り当てられ、学習モデルによる時系列パターンの学習が、その学習モデルに割り当てられたモデル学習用データを用いて行われる。   More specifically, in the data learning device 10, the teacher data that is time-series data is divided into a plurality of model learning data that partially overlap. Then, a plurality of model learning data is assigned to a plurality of learning models so that one model learning data is assigned to one learning model, and time-series pattern learning by the learning model is assigned to the learning model. The model learning data is used.

したがって、時系列データが、複数の学習モデルによって、いわば分担して学習(関数近似学習)されるので、時系列パターンの記憶容量の限界をなくし、複雑で、長時間の時系列パターンを、短時間の(短い)時系列パターンに分けて記憶することができる。さらに、そのような短時間の時系列パターンを記憶した学習モデルを用いて、複雑で、長時間の時系列パターンの時系列データを、精度良く生成(再構成)することができる。   Therefore, since time series data is shared and learned by multiple learning models (function approximation learning), the storage capacity of time series patterns is eliminated, and complicated and long time series patterns are reduced. The time (short) time-series pattern can be divided and stored. Furthermore, it is possible to accurately generate (reconstruct) time-series data of a complicated and long-time time series pattern using a learning model that stores such a short-time time-series pattern.

すなわち、1つの学習モデルが学習を担当する時系列パターンの長さが制限されるので、学習モデルが規模の小さいRNN等であっても、時系列パターンを精度良く学習(記憶)することができる。さらに、学習モデルを増加することで、複数の学習モデルの全体の記憶容量を増加することができるので、1つの学習モデルの記憶容量に左右されずに、複雑で長時間の時系列パターンを記憶することができる。   That is, since the length of the time series pattern in which one learning model is in charge of learning is limited, the time series pattern can be accurately learned (stored) even if the learning model is a small-scale RNN or the like. . Furthermore, by increasing the number of learning models, it is possible to increase the overall storage capacity of a plurality of learning models, so that complex and long time series patterns can be stored without being influenced by the storage capacity of one learning model. can do.

また、学習装置10において、コネクティビティを求め、データ生成装置20において、コネクティビティに基づき、生成用モデルシーケンスを算出するので、学習モデルが学習を担当したモデル学習用データが、教師データのどの位置のデータであるのかに依存することなく、時系列データの生成に用いる学習モデルの並びとしての生成用モデルシーケンスを算出することができる。   In addition, the learning device 10 obtains connectivity, and the data generation device 20 calculates a generation model sequence based on the connectivity. Therefore, the model learning data for which the learning model is responsible for learning is the data at which position of the teacher data. It is possible to calculate a generation model sequence as an array of learning models used for generating time-series data without depending on whether or not.

すなわち、例えば、ある環境において移動する移動ロボットが、現在位置から、ゴールとなるゴール位置まで移動するタスク(ナビゲーションタスク)を実行するには、教師データとして与えられた経験から、現在位置からゴール位置まで移動する経路のプラン(計画)をたてる必要がある。   That is, for example, in order for a mobile robot moving in a certain environment to execute a task (navigation task) that moves from the current position to the goal position that is the goal, from the experience given as teacher data, It is necessary to make a plan of the route to travel to.

例えば、移動ロボットが移動する環境(以下、移動環境ともいう)内の任意の2点の間を、移動ロボットが移動するときに、その移動の経路の各位置で、移動ロボットが獲得することができるセンサモータデータを、教師データとして与えて、学習を行うことにより、移動ロボットは、学習時の経験、つまり、教師データとしてのセンサモータデータを観測することができる経路に沿って、自律的に移動することができる。   For example, when the mobile robot moves between any two points in the environment in which the mobile robot moves (hereinafter also referred to as the mobile environment), the mobile robot may acquire at each position of the movement route. By providing sensor motor data that can be used as teacher data and performing learning, the mobile robot autonomously follows the learning experience, that is, along the path through which sensor motor data as teacher data can be observed. Can move.

すなわち、移動を開始するスタート位置として、学習時の経路上のある位置が与えられ、かつ、移動を終了するゴール位置として、学習時の経路上の、スタート位置よりも、移動方向が後の位置が与えられた場合、移動ロボットは、スタート位置からゴール位置まで移動する経路のプランをたてることができる。   In other words, a certain position on the learning path is given as the start position for starting movement, and the movement position is later on the learning path than the start position on the learning path as the goal position to end movement. Is given, the mobile robot can plan a route for moving from the start position to the goal position.

しかしながら、移動環境では、学習時の経路上の位置が、スタート位置及びゴール位置として与えられるとは限らず、また、ゴール位置として、学習時の経路上の、スタート位置よりも後の位置が与えられるとも限らない。   However, in the mobile environment, the position on the path at the time of learning is not always given as the start position and the goal position, and the position after the start position on the path at the time of learning is given as the goal position. It is not necessarily done.

すなわち、移動ロボットが自律的に移動する場合には、現在位置がスタート位置となるが、現在位置が、学習時の経路上の位置であるとは限らない。   That is, when the mobile robot moves autonomously, the current position becomes the start position, but the current position is not necessarily the position on the route at the time of learning.

さらに、スタート位置、及びゴール位置が、学習時の経路上の位置であったとしても、学習時に通ったスタート位置よりも前に通った位置が、ゴール位置として与えられることがある。   Furthermore, even if the start position and the goal position are positions on the route at the time of learning, a position that has passed before the start position that has been passed at the time of learning may be given as the goal position.

また、学習時の経路に沿って、スタート位置からゴール位置まで移動する経路が冗長で、スタート位置からゴール位置まで移動するのに、不必要に遠回りをする場合には、そのような遠回りをしない経路のプランをたてることが望ましい。   Also, if the path from the start position to the goal position is redundant along the learning path, and if you make an unnecessarily detour to move from the start position to the goal position, do not make such a detour. It is desirable to have a route plan.

従来の経路のプランをたてる方法としては、例えば、移動環境の地図上で移動可能な領域を求め、その領域を通過する線分をアークとしてグラフを生成し、そのグラフ上での経路の探索問題に帰着させる方法がある。   As a conventional method of planning a route, for example, a movable area is obtained on a map of a moving environment, a graph is generated by using a line segment passing through the region as an arc, and a route is searched on the graph. There is a way to bring it back to the problem.

グラフ上での経路の探索をする方法としては、各アークにコストを設定し、スタート位置からゴール位置までの経路のうちの、経路を構成するアークのコストの総和が最小となる経路を求める方法がある。アークのコストとしては、アークに対応する地図上の距離(アークの両端の間の距離)が用いられる。   As a method of searching for a route on the graph, a cost is set for each arc, and a route in which the sum of the costs of the arcs constituting the route is the smallest among the routes from the start position to the goal position is obtained. There is. As the arc cost, a distance on the map corresponding to the arc (distance between both ends of the arc) is used.

しかしながら、アークに対応する地図上の距離を求めるには、移動環境の地図(ひいては、その地図上での、アークの両端の位置の座標)が必要であり、地図が与えられていない場合には、地図上の距離を求めることが困難となる。   However, in order to obtain the distance on the map corresponding to the arc, a map of the moving environment (and consequently the coordinates of the positions of both ends of the arc on the map) is required, and if no map is given It becomes difficult to find the distance on the map.

したがって、地図が与えられない場合に備え、アークのコストとしては、アークに対応する地図上の距離に代わる指標を採用することが望ましい。   Therefore, in preparation for the case where no map is given, it is desirable to adopt an index instead of the distance on the map corresponding to the arc as the cost of the arc.

そこで、学習装置10では、1つの学習モデルが学習した時系列パターンの後に、他の1つの学習モデルが学習した時系列パターンが接続する適切さを表すコネクティビティが求められる。   Therefore, in the learning device 10, connectivity representing the appropriateness of connection of the time series pattern learned by one other learning model is obtained after the time series pattern learned by one learning model.

そして、データ生成装置20では、コネクティビティが、アークのコストとして採用され、ビタビアルゴリズムやダイクストラ法等の、グラフの経路探索アルゴリズムで、コスト(接続コスト)の累積値を最小にする経路(最短経路)としての生成用モデルシーケンスが探索される。   In the data generation device 20, the connectivity is adopted as the cost of the arc, and the route (shortest route) that minimizes the accumulated value of the cost (connection cost) by the graph route search algorithm such as the Viterbi algorithm or the Dijkstra method. A model sequence for generation as is searched.

すなわち、データ生成装置20では、コネクティビティに対応する値を接続コストとして、接続コストの累積値を最小にする、始点モデルから終点モデルまでの学習モデルの並びが、生成用モデルシーケンスとして算出される。   That is, in the data generation device 20, a value corresponding to connectivity is used as a connection cost, and an arrangement of learning models from the start point model to the end point model that minimizes the cumulative value of the connection cost is calculated as a generation model sequence.

生成用モデルシーケンスの算出に用いられるコネクティビティは、一部がオーバラップするように教師データを分割して得られるモデル学習用データを用いて学習がされた2つの学習モデルのうちの一方の学習モデルが生成する時系列データの最後のオーバラップ部分と、他方の学習モデルが生成する時系列データの最初のオーバラップ部分との誤差であり、一方の学習モデルの学習に用いられたモデル学習用データと、他方の学習モデルの学習に用いられたモデル学習用データとが、教師データにおいて連続していたかどうかに依存しない(但し、教師データにおいて、他方の学習モデルの学習に用いられたモデル学習用データが、一方の学習モデルの学習に用いられたモデル学習用データに続くデータであれば、一方の学習モデルを前モデルとするとともに、他方の学習モデルを後モデルとするモデルペアのコネクティビティは、小になる)。   The connectivity used to calculate the model sequence for generation is one of the two learning models trained using the model learning data obtained by dividing the teacher data so that some of them overlap. Is the error between the last overlap part of the time series data generated by and the first overlap part of the time series data generated by the other learning model, and the model learning data used for learning one of the learning models And the model learning data used for learning of the other learning model do not depend on whether or not the training data is continuous in the teacher data (however, in the teacher data, the model learning data used for learning of the other learning model is used. If the data follows the model learning data used to learn one learning model, one learning model is With the Le, the connectivity model pair to the rear model the other learning models, becomes small).

すなわち、教師データにおいて、他方の学習モデルの学習に用いられたモデル学習用データが、一方の学習モデルの学習に用いられたモデル学習用データに続くデータでなくても、一方の学習モデルが生成する時系列データ(の時系列パターン)の最後のオーバラップ部分と、他方の学習モデルが生成する時系列データの最初のオーバラップ部分とが類似していれば、一方の学習モデルを前モデルとするとともに、他方の学習モデルを後モデルとするモデルペアのコネクティビティは、前モデルに後モデルを接続することが適切であることを表す小さな値となる。   That is, in the teacher data, one learning model is generated even if the model learning data used for learning the other learning model is not the data following the model learning data used for learning one learning model. If the last overlap part of the time series data (time series pattern) and the first overlap part of the time series data generated by the other learning model are similar, one learning model is In addition, the connectivity of the model pair having the other learning model as the rear model is a small value indicating that it is appropriate to connect the rear model to the previous model.

その結果、コネクティビティに基づいて算出される生成用モデルシーケンスとしての学習モデルの並びは、学習モデルの学習に用いられたモデル学習用データの、教師データ上の順番に依存しない。   As a result, the arrangement of the learning models as the generation model sequence calculated based on the connectivity does not depend on the order of the model learning data used for learning the learning model on the teacher data.

そして、学習モデルが記憶するのは、教師データの時系列パターンの、いわば断片である、モデル学習用データの時系列パターンであるが、データ生成装置20では、その断片を使い回して、接続コストの累積値が小さい生成用モデルシーケンスを算出することができる。   The learning model stores the time series pattern of the model learning data, which is a so-called fragment of the time series pattern of the teacher data, but the data generation device 20 uses the fragment and reuses the connection cost. It is possible to calculate a generating model sequence having a small accumulated value.

すなわち、学習時には経験していない、例えば、スタート位置からゴール位置まで移動するのに、不必要に遠回りをしない経路に相当する生成用モデルシーケンスを算出することができる。また、例えば、学習時に経験した経路とは逆方向に移動する経路が、接続コストの累積値を小さくする経路であるのであれば、そのような経路に相当する生成用モデルシーケンスを算出することができる。   That is, it is possible to calculate a generation model sequence that is not experienced during learning, for example, corresponding to a route that does not travel unnecessarily when moving from the start position to the goal position. In addition, for example, if a route moving in the opposite direction to the route experienced during learning is a route that reduces the cumulative value of connection costs, a generation model sequence corresponding to such a route can be calculated. it can.

さらに、データ処理装置20では、生成用モデルシーケンスとしての学習モデルの並びが、コネクティビティに基づいて算出されるため、生成用モデルシーケンスを構成するある構成モデル#kが生成するモデル生成データの後に、その直後の構成モデル#k+1が生成するモデル生成データを接続することが適切であること(接続部分の波形が似ていること)が保証される。   Furthermore, in the data processing device 20, since the arrangement of the learning models as the generation model sequence is calculated based on the connectivity, after the model generation data generated by a certain configuration model #k constituting the generation model sequence, It is ensured that it is appropriate to connect the model generation data generated by the immediately following configuration model # k + 1 (the waveform of the connected portion is similar).

但し、生成用モデルシーケンスを、コネクティビティに基づいて算出することによっては、構成モデル#kが生成するモデル生成データの後に、構成モデル#k+1が生成するモデル生成データを接続したときに、その接続部分が滑らかになることまでは、保証されない。   However, by calculating the model sequence for generation based on connectivity, when the model generation data generated by the configuration model # k + 1 is connected to the model generation data generated by the configuration model #k, There is no guarantee that the connection will be smooth.

すなわち、コネクティビティに基づいて算出される生成用モデルシーケンスの構成モデルの並びが、構成モデルの学習に用いられたモデル学習用データの、教師データ上の順番に一致している場合には、構成モデル#kが生成するモデル生成データの後に、構成モデル#k+1が生成するモデル生成データを接続したときに、その接続部分は滑らかになる。   That is, when the arrangement of the configuration model of the generation model sequence calculated based on connectivity matches the order of the model learning data used for learning the configuration model on the teacher data, the configuration model When the model generation data generated by the constituent model # k + 1 is connected after the model generation data generated by #k, the connected portion becomes smooth.

しかしながら、コネクティビティに基づいて算出される生成用モデルシーケンスの構成モデル(学習モデル)の並びが、構成モデルの学習に用いられたモデル学習用データの、教師データ上の順番に一致していない場合には、構成モデル#kが生成するモデル生成データの後に、構成モデル#k+1が生成するモデル生成データを接続したときに、その接続部分は滑らかになるとは限らない。   However, when the arrangement of the configuration model (learning model) of the generation model sequence calculated based on the connectivity does not match the order of the model learning data used for learning the configuration model on the teacher data When the model generation data generated by the configuration model # k + 1 is connected after the model generation data generated by the configuration model #k, the connection portion is not always smooth.

ここで、学習モデルが、モデル学習用データを、そのままテンプレートとして記憶する場合や、調節可能な内部状態を持たずに、関数近似で記憶する場合には、その記憶しているままの時系列データ(モデル生成データ)しか生成することができない。   Here, when the learning model stores the model learning data as a template as it is or when it is stored by function approximation without having an adjustable internal state, the time series data as it is stored (Model generation data) can only be generated.

そのため、そのような学習モデルの複数から生成されたモデル生成データを接続したときに、その接続部分が滑らかになるとは限らない。   For this reason, when model generation data generated from a plurality of such learning models is connected, the connected portion is not always smooth.

一方、データ生成装置20では、学習モデルとして、時間発展するダイナミクスを関数近似の形で記憶することが可能で、内部状態としてのコンテキストを有するRNNを採用する。さらに、データ生成装置20では、構成モデル#kが生成するモデル生成データの最後のオーバラップ部分と、後に接続される構成モデル#k+1が生成するモデル生成データの最初のオーバラップ部分との誤差を小さくするように、構成モデルとしてのRNNの初期コンテキストを決定し、その初期コンテキスト(最適初期コンテキスト)を、構成モデルに与えて、時系列データを生成する。   On the other hand, the data generation apparatus 20 employs an RNN having a context as an internal state that can store dynamics that evolve over time in the form of function approximation as a learning model. Further, in the data generation device 20, the last overlap portion of the model generation data generated by the configuration model #k and the first overlap portion of the model generation data generated by the configuration model # k + 1 connected later In order to reduce the error, an initial context of the RNN as a configuration model is determined, and the initial context (optimum initial context) is given to the configuration model to generate time series data.

したがって、構成モデル#kが生成するモデル生成データの後に、構成モデル#k+1が生成するモデル生成データを接続したときに、その接続部分を滑らかにすることができ、その結果、滑らかな生成時系列データを生成することができる。   Therefore, when the model generation data generated by the configuration model # k + 1 is connected after the model generation data generated by the configuration model #k, the connected portion can be smoothed. Time series data can be generated.

[データ生成装置20が生成する生成時系列データ]
図19は、教師データとしての時系列データと、その時系列データを用いた学習を行った学習モデルを用いて生成される生成時系列データとを示している。
[Generation time series data generated by the data generation device 20]
FIG. 19 shows time-series data as teacher data and generated time-series data generated using a learning model obtained by learning using the time-series data.

図19Aは、教師データとしての経路(以下、教示経路ともいう)を模式的に示している。   FIG. 19A schematically shows a route (hereinafter also referred to as a teaching route) as teacher data.

教示経路は、位置P1からP2までの経路の1つで、図19Aでは、7つの経路Q1,Q2,Q3,Q4,Q5,Q6、及びQ7としてのモデル学習用データに分割されている。学習時には、経路Qnが、学習モデル#nで学習される。 The teaching path is one of the paths from positions P 1 to P 2 , and in FIG. 19A, model learning as seven paths Q 1 , Q 2 , Q 3 , Q 4 , Q 5 , Q 6 , and Q 7 is performed. Is divided into data. At the time of learning, the route Q n is learned by the learning model #n.

なお、図19では、オーバラップ部分の図示は省略してある。   In FIG. 19, the overlap portion is not shown.

RNNである学習モデル#nは、パラメータa付きの時間発展方程式F(x,a)を近似する関数近似器とみなすことができる。そこで、経路Qnを学習した学習モデル#nを、以下、Fn(x,an)とも表す。 The learning model #n, which is an RNN, can be regarded as a function approximator that approximates the time evolution equation F (x, a) with the parameter a. Therefore, the learning model #n that has learned the route Q n is hereinafter also expressed as F n (x, a n ).

ここで、時間発展方程式F(x,a)の引数xは、入力データを表し、パラメータaは、内部状態の初期値(初期コンテキスト)を表す。   Here, the argument x of the time evolution equation F (x, a) represents input data, and the parameter a represents an initial value (initial context) of the internal state.

また、図19Aにおいて、学習モデルFn(x,an)のパラメータanは、例えば、その学習モデルFn(x,an)が学習した経路Qnになるべく一致するモデル生成データを生成することができるときの内部状態の初期値を表す。 Further, in FIG. 19A, learning model F n (x, a n) parameters a n are, for example, generates the learning model F n (x, a n) is the model generating data as possible matching path Q n learned It represents the initial value of the internal state when it can be done.

図19Bは、データ生成装置20のデータ生成処理によって、学習モデルF1(x,a)ないしF7(x,a)を用いて生成される生成時系列データとしての経路(以下、生成経路ともいう)を模式的に示している。 Figure 19B by the data generating process of the data generating apparatus 20, learning model F 1 (x, a) to F 7 (x, a) the path of the generated time-series data generated using (hereinafter, both generation path Is schematically shown.

図19Bにおいて、生成経路は、位置P1からP2までの経路ではあるが、図19Aの教示経路とは異なる経路になっている。 In FIG. 19B, generation path, albeit in a path from the position P 1 to P 2, which is a different path from the taught path in FIG 19A.

すなわち、生成経路は、5つの経路Q'1,Q'2,Q'3,Q'6、及びQ'7としてのモデル生成データが、その順番で接続されて構成されている。 That is, the generation path is configured by connecting model generation data as five paths Q ′ 1 , Q ′ 2 , Q ′ 3 , Q ′ 6 , and Q ′ 7 in that order.

図19Bでは、データ生成装置20において、7つの学習モデルF1(x,a)ないしF7(x,a)から、冗長な経路を生成する学習モデルF4(x,a),及びF5(x,a)を除外した学習モデルF1(x,a),F2(x,a),F3(x,a),F6(x,a),F7(x,a)の並びが、生成用モデルシーケンスとして求められている。 In FIG. 19B, the data generating apparatus 20, seven learning model F 1 (x, a) learning model F 4 from to no F 7 (x, a), which generates a redundant path (x, a), and F 5 Learning models F 1 (x, a), F 2 (x, a), F 3 (x, a), F 6 (x, a), F 7 (x, a) excluding (x, a) A sequence is required as a model sequence for generation.

さらに、データ生成装置20では、生成経路の生成にあたって、図12等で説明した、モデル生成データのオーバラップ部分の順伝播と逆伝播を繰り返すことで、生成用モデルシーケンスを構成する学習モデルF1(x,a),F2(x,a),F3(x,a),F6(x,a),F7(x,a)それぞれから生成されるモデル生成データのオーバラップ部分を滑らかに接続するパラメータaが求められる。 Further, in the generation of the generation path, the data generation apparatus 20 repeats the forward propagation and the reverse propagation of the overlap portion of the model generation data described in FIG. 12 and the like, thereby learning model F 1 constituting the generation model sequence. (x, a), F 2 (x, a), F 3 (x, a), F 6 (x, a), F 7 (x, a) the overlapped portion of the model generation data generated from each of A parameter a for smooth connection is obtained.

図19Bでは、オーバラップ部分が滑らかに接続するパラメータaとして、学習モデルF1(x,a)については、値a1が、学習モデルF2(x,a)については、値a2が、学習モデルF3(x,a)については、値a'3が、学習モデルF6(x,a)については、値a'6が、学習モデルF7(x,a)については、値a7がそれぞれ求められている。 In FIG. 19B, as parameters a overlapped portion is smoothly connected, the learning model F 1 (x, a) the value a 1 is the learning model F 2 (x, a) is the value a 2, For the learning model F 3 (x, a) the value a ' 3 is for the learning model F 6 (x, a), the value a' 6 is for the learning model F 7 (x, a), the value a 7 is required for each.

そして、学習モデルF1(x,a1)からは、経路Q'1が、学習モデルF2(x,a2)からは、経路Q'2が、については、学習モデルF3(x,a'3)からは、経路Q'3が、学習モデルF6(x,a'6)からは、経路Q'6が、学習モデルF7(x,a7)からは、経路Q'7が、それぞれ、モデル生成データとして生成されている。 The learning model F 1 (x, a 1) from the path Q '1 are, learning model F 2 (x, a 2) from the path Q' is 2, for the learning model F 3 (x, From a ′ 3 ), the path Q ′ 3 is from the learning model F 6 (x, a ′ 6 ), the path Q ′ 6 is from the learning model F 7 (x, a 7 ), and the path Q ′ 7 Are generated as model generation data.

図19Bにおいて、パラメータaが図19Aの場合と一致している学習モデルF1(x,a1),F2(x,a2)、及びF7(x,a7)から生成される経路Q'1,Q'2、及びQ'7は、それぞれ、図19Aの、対応する経路Q1,Q2、及びQ7と一致している。 In FIG. 19B, a path generated from the learning models F 1 (x, a 1 ), F 2 (x, a 2 ), and F 7 (x, a 7 ) in which the parameter a matches that in FIG. 19A. Q ′ 1 , Q ′ 2 , and Q ′ 7 respectively correspond to the corresponding paths Q 1 , Q 2 , and Q 7 in FIG. 19A.

一方、図19Bにおいて、パラメータaが図19Aの場合と異なる学習モデルF3(x,a'3)から生成される経路Q'3は、図19Aの、対応する経路Q3と異なっている。 On the other hand, in FIG. 19B, 3 parameter a 'path Q is generated from (3 different learning models F 3 in the case of FIG 19A x, a)' is in Figure 19A, are different from the corresponding path Q 3.

すなわち、図19Aの経路Q3は、その始点側(位置P1に近い側)が、経路Q2に滑らかに接続するようになっているとともに、終点側(位置P2に近い側)が、経路Q4に滑らかに接続するようになっている。 That is, the route Q 3 in FIG. 19A has its start point side (side closer to the position P 1 ) smoothly connected to the route Q 2 , and the end point side (side closer to the position P 2 ) It is adapted to smoothly connected to a path Q 4.

これに対して、図19Bの経路Q'3は、始点側が、経路Q2と同一のQ'2に滑らかに接続するようになっている点は、経路Q3と一致するが、終点側が、経路Q'6に滑らかに接続するようになっている点で、経路Q3と異なる。 In contrast, the path Q in FIG. 19B '3 the starting-point side, the same Q and path Q 2' is a point that is adapted to smoothly connect to 2, but consistent with the path Q 3, is the end point, It is different from the route Q 3 in that the route Q ′ 6 is smoothly connected.

さらに、図19Bにおいて、パラメータaが図19Aの場合と異なる学習モデルF6(x,a'6)から生成される経路Q'6は、図19Aの、対応する経路Q6と異なっている。 Further, in FIG. 19B, a path Q ′ 6 generated from a learning model F 6 (x, a ′ 6 ) having a parameter a different from that in FIG. 19A is different from the corresponding path Q 6 in FIG. 19A.

すなわち、図19Aの経路Q6は、その始点側が、経路Q5に滑らかに接続するようになっているとともに、終点側が、経路Q7に滑らかに接続するようになっている。 That is, the route Q 6 in FIG. 19A has its start point side smoothly connected to the route Q 5 and its end point side smoothly connected to the route Q 7 .

これに対して、図19Bの経路Q'6は、終点側が、経路Q7と同一のQ'7に滑らかに接続するようになっている点は、経路Q6と一致するが、始点側が、経路Q'3に滑らかに接続するようになっている点で、経路Q6と異なる。 In contrast, the path Q in FIG. 19B '6 is the end point side, the same Q and path Q 7' is that adapted to smoothly connect to 7, but consistent with the path Q 6, is the starting point side, This is different from the route Q 6 in that the route Q ′ 3 is smoothly connected.

以上のようにして、データ生成装置20では、冗長な経路が除外され、かつ滑らかに接続する生成経路が生成される。   As described above, in the data generation device 20, redundant paths are excluded, and generation paths that are smoothly connected are generated.

[シミュレーション結果]
次に、本件発明者が、図1のデータ処理装置について行ったシミュレーションについて説明する。
[simulation result]
Next, a simulation performed by the inventor on the data processing apparatus shown in FIG. 1 will be described.

シミュレーションでは、移動ロボットに、ナビゲーションタスクを行わせた。   In the simulation, the mobile robot performed navigation tasks.

図20は、移動ロボットがナビゲーションタスクを行う移動環境の概要を示している。   FIG. 20 shows an outline of a mobile environment in which a mobile robot performs a navigation task.

移動環境としては、光源が設置され、四方が壁で囲まれた2次元平面を採用した。移動ロボットは、移動環境を自由に移動することができるが、壁をすり抜けて移動することはできない。なお、移動環境には、四方を囲む壁の他にも、障害物となる壁が存在する。   As a moving environment, a two-dimensional plane in which light sources were installed and four sides were surrounded by walls was adopted. A mobile robot can move freely in a moving environment, but cannot move through a wall. In the mobile environment, there are walls that become obstacles in addition to the walls that surround the four sides.

また、移動ロボットには、移動ロボットから周囲の8方向それぞれについて、壁(移動環境を囲む壁と、移動環境中の障害物としての壁との両方を含む)までの距離をセンシングする距離センサ、及び、光の強度をセンシングする光センサと、エネルギをセンシングするエネルギセンサとを搭載した。なお、エネルギとは、ここでは、光センサが出力する、8方向それぞれについての光の強度のうちの最大値に比例する物理量である。   In addition, the mobile robot includes a distance sensor that senses the distance from the mobile robot to the wall (including both the wall surrounding the mobile environment and the wall as an obstacle in the mobile environment) in each of the eight surrounding directions. And the optical sensor which senses the intensity | strength of light, and the energy sensor which senses energy were mounted. Here, the energy is a physical quantity proportional to the maximum value of the light intensity in each of the eight directions output from the optical sensor.

また、移動ロボットは、水平方向(x方向)の移動量mxと、垂直方向(y方向)の移動量myとを表すベクトルである移動ベクトル(mx,my)を、モータデータとして与えると、その移動ベクトル(mx,my)だけ移動する。 The mobile robot includes a moving amount m x in the horizontal direction (x-direction), the moving vector (m x, m y) is a vector representing the movement amount m y in the vertical direction (y-direction), and as the motor data Given, the movement vector (m x, m y) moves only.

シミュレーションでは、以上のような移動ロボットを採用し、教師データ、現在データ、及び目標データとなるセンサモータデータとしては、モータデータとしての移動ベクトル(mx,my)、並びに、センサデータとしての、距離センサが出力する、8方向それぞれについての距離d1,d2,d3,d4,d5,d6,d7,d8、光センサが出力する、8方向それぞれについての光の強度l1,l2,l3,l4,l5,l6,l7,l8、及び、エネルギセンサが出力するエネルギEをコンポーネントとする19次元のベクトル(mx,my,d1,d2,d3,d4,d5,d6,d7,d8,l1,l2,l3,l4,l5,l6,l7,l8,E)を採用した。 In the simulation, adopts above-described mobile robot, teacher data, as the present data, and the sensor motor data serving as the target data, the movement vector as a motor data (m x, m y), and, as a sensor data The distance sensor outputs the distances d 1 , d 2 , d 3 , d 4 , d 5 , d 6 , d 7 , d 8 for each of the eight directions, and the light sensor outputs the light in each of the eight directions. intensity l 1, l 2, l 3 , l 4, l 5, l 6, l 7, l 8, and 19-dimensional vector having a component of the energy E of the energy sensor output (m x, m y, d 1 , d 2 , d 3 , d 4 , d 5 , d 6 , d 7 , d 8 , l 1 , l 2 , l 3 , l 4 , l 5 , l 6 , l 7 , l 8 , E) Adopted.

なお、センサモータデータは、人が手動で、移動ロボットを移動させた場合を含め、移動ロボットから観測される。   The sensor motor data is observed from the mobile robot including a case where the human has manually moved the mobile robot.

図21は、シミュレーションで採用した移動環境を示す平面図である。   FIG. 21 is a plan view showing a moving environment adopted in the simulation.

移動環境は、四方が壁で囲まれた2次元平面であり、移動環境内には、幾つかの光源と、幾つかの障害物としての壁が存在する。   The moving environment is a two-dimensional plane surrounded by walls on all sides, and there are several light sources and several obstacle walls in the moving environment.

学習処理においては、移動環境内において、移動ロボットを、15010回だけ移動させることで得られる15010サンプルのセンサモータデータの時系列を教師データとした。   In the learning process, the time series of sensor motor data of 15010 samples obtained by moving the mobile robot only 15010 times in the mobile environment was used as teacher data.

教師データは、前後の10サンプルがオーバラップする、40サンプルのモデル学習用データに分割し、その結果得られる500個のモデル学習用データを、それぞれ、500個の学習モデルとしてのRNNに学習させた。   The teacher data is divided into 40 samples of model learning data where the previous and next 10 samples overlap, and the resulting 500 model learning data are trained by the RNN as 500 learning models, respectively. It was.

図21において、3桁の数字は、500個の学習モデルを特定するためのモデルIDである。また、モデルIDが付されている線(実線や、点線、太線、細線等)は、そのモデルIDの学習モデルが学習したモデル学習用データが観測されたときの、移動ロボットの移動軌跡を表している。   In FIG. 21, a three-digit number is a model ID for identifying 500 learning models. A line with a model ID (solid line, dotted line, thick line, thin line, etc.) represents the movement trajectory of the mobile robot when the model learning data learned by the learning model with that model ID is observed. ing.

ここで、あるモデル学習用データが観測されたときの、移動ロボットの移動軌跡を、モデル学習用データに対応する移動軌跡ともいう。また、モデルIDが3桁の数字nの学習モデルを、学習モデル#nとも記載する。   Here, the movement trajectory of the mobile robot when certain model learning data is observed is also referred to as a movement trajectory corresponding to the model learning data. Also, a learning model with a model ID of a three-digit number n is also described as a learning model #n.

図21では、個々の学習モデルが学習したモデル学習用データを分かりやすくするために、モデル学習用データを学習する学習モデルが切り替わるごとに、モデル学習用データに対応する移動軌跡を、その移動軌跡を表す線の種類(実線や、点線、太線、細線等)を変えて図示してある。   In FIG. 21, in order to make the model learning data learned by each learning model easy to understand, each time the learning model for learning the model learning data is switched, the movement locus corresponding to the model learning data is changed to the movement locus. The line types (solid line, dotted line, thick line, thin line, etc.) that represent are changed.

また、図21では、図が煩雑になるのを避けるため、500個の学習モデル#001ないし#500のうちの、最初の80個の学習モデル#001ないし#080が学習したモデル学習用データに対応する移動軌跡だけを図示してある。   Further, in FIG. 21, in order to avoid complication of the figure, the model learning data obtained by learning the first 80 learning models # 001 to # 080 out of 500 learning models # 001 to # 500 is shown. Only the corresponding movement trajectory is shown.

図22は、学習処理により得られたコネクティビティを表した移動環境を示している。   FIG. 22 shows a mobile environment representing connectivity obtained by learning processing.

図22において、丸印(○印)は、学習モデルが学習したモデル学習用データに対応する移動軌跡上のある位置を表し、そのモデル学習用データを学習した学習モデルに対応する。   In FIG. 22, a circle (circle) represents a certain position on the movement trajectory corresponding to the model learning data learned by the learning model, and corresponds to the learning model learned from the model learning data.

図22では、500個の学習モデル#001ないし#500から得られる500×499個のモデルペアについて求められたコネクティビティを閾値処理することによって、接続性が高いコネクティビティ(値が閾値以下のコネクティビティ)だけを抽出し、その接続性が高いコネクティビティを有するモデルペアを構成する2つの学習モデルどうしを、点線で結んである。   In FIG. 22, only connectivity with high connectivity (connectivity with a value equal to or less than the threshold) is obtained by thresholding the connectivity obtained for 500 × 499 model pairs obtained from 500 learning models # 001 to # 500. Are extracted, and two learning models constituting a model pair having connectivity with high connectivity are connected by a dotted line.

移動ロボットは、壁の配置等の、移動環境の状況を知らないが、コネクティビティとしては、移動ロボットに壁を跨ぐ移動をさせる、学習モデルどうしの接続を生じさせるような値は、存在しない。   The mobile robot does not know the situation of the mobile environment, such as the arrangement of walls, but there is no value for connectivity that causes the mobile robot to move across the wall and cause the connection between learning models.

また、接続性が高いコネクティビティを有するモデルペアを構成する2つの学習モデルどうしを、点線で結んだグラフには、移動環境の状況(構造)が表現されている(埋め込まれている)。   In addition, the situation (structure) of the mobile environment is expressed (embedded) in a graph in which two learning models constituting a model pair having connectivity with high connectivity are connected by a dotted line.

図23は、ビタビアルゴリズムに基づき、コネクティビティを用いて算出された生成用モデルシーケンスを表した移動環境を示している。   FIG. 23 shows a mobile environment representing a generation model sequence calculated using connectivity based on the Viterbi algorithm.

図23において、丸印(○印)は、図22と同様に、学習モデルが学習したモデル学習用データに対応する移動軌跡上のある位置を表し、そのモデル学習用データを学習した学習モデルに対応する。   In FIG. 23, as in FIG. 22, circles (◯) represent a certain position on the movement trajectory corresponding to the model learning data learned by the learning model, and the learning model obtained by learning the model learning data. Correspond.

図23では、生成用モデルシーケンスを構成する学習モデル(構成モデル)が、線分で結ばれている。   In FIG. 23, learning models (constitutive models) constituting the generation model sequence are connected by line segments.

図24は、生成用モデルシーケンスを構成する学習モデルが学習したモデル学習用データに対応する移動軌跡を表した移動環境を示している。   FIG. 24 shows a movement environment representing a movement locus corresponding to the model learning data learned by the learning model constituting the generation model sequence.

図24において、1桁の数字c、コロン(:)、及び、3桁の数字nからなる記号列c:nは、生成用モデルシーケンスを構成する学習モデルの順番と、その学習モデルのモデルIDを表す。   In FIG. 24, a symbol string c: n consisting of a one-digit number c, a colon (:), and a three-digit number n indicates the order of learning models constituting the generation model sequence and the model ID of the learning model. Represents.

すなわち、記号列c:nにおいて、1桁の数字cは、学習モデルが、生成用モデルシーケンスの先頭からc番目の学習モデルであることを表し、その後のコロンに続く3桁の数字nは、生成用モデルシーケンスの先頭からc番目の学習モデルが、学習モデル#nであることを表す。   That is, in the symbol string c: n, a one-digit number c indicates that the learning model is the c-th learning model from the beginning of the generation model sequence, and the three-digit number n following the colon after that is This represents that the c-th learning model from the top of the generation model sequence is learning model #n.

また、記号列c:nが付されている線は、学習モデル#nが学習したモデル学習用データに対応する移動軌跡を表している。   Also, the line with the symbol string c: n represents a movement locus corresponding to the model learning data learned by the learning model #n.

なお、図24でも、図21と同様に、個々の学習モデルが学習したモデル学習用データを分かりやすくするために、モデル学習用データを学習する学習モデルが切り替わるごとに、モデル学習用データに対応する移動軌跡を、その移動軌跡を表す線の種類を変えて図示してある。   In FIG. 24, as in FIG. 21, in order to make the model learning data learned by each learning model easy to understand, each time the learning model for learning the model learning data is switched, the model learning data is handled. The movement trajectory is shown by changing the type of line representing the movement trajectory.

シミュレーションでは、学習モデル#049を始点モデルとするとともに、学習モデル#277を終点モデルとして、生成用モデルシーケンスの算出を行い、学習モデル#049,#236,#209,#274,#275,#276,#277の並びが、生成用モデルシーケンスとして得られた。   In the simulation, the learning model # 049 is used as the start point model, the learning model # 277 is used as the end point model, the generation model sequence is calculated, and the learning models # 049, # 236, # 209, # 274, # 275, # A sequence of 276 and # 277 was obtained as a model sequence for generation.

始点モデルである学習モデル#049から、終点モデルである学習モデル#277に到達するためには、教師データによる経験によれば、227個の学習モデル#050ないし#276を経由することが必要である。   In order to reach learning model # 277, which is the end point model, from learning model # 049, which is the start point model, it is necessary to go through 227 learning models # 050 to # 276 according to experience with teacher data. is there.

しかしながら、コネクティビティを用いて生成用モデルシーケンスが算出される場合には、オーバラップ部分が類似している、接続性が高いコネクティビティの学習モデルどうしが、接続コストの累積値を小さくするように接続される結果、教師データによる経験がない接続(2つの学習モデルの並び)を含む生成用モデルシーケンスを得ることができる。   However, when the generation model sequence is calculated using connectivity, connectivity models with high connectivity and similar connectivity are connected to reduce the cumulative connection cost. As a result, it is possible to obtain a generation model sequence including a connection (a sequence of two learning models) that has no experience with teacher data.

すなわち、移動ロボットは、学習モデル#049,#236の並び、学習モデル#236,#209の並び、及び、学習モデル#209,#274の並びについては、教師データによる経験をしていないが、図24では、そのような並びを含む生成用モデルシーケンスが得られている。   That is, the mobile robot has no experience with teacher data about the alignment of learning models # 049, # 236, the alignment of learning models # 236, # 209, and the alignment of learning models # 209, # 274, In FIG. 24, a generation model sequence including such a sequence is obtained.

ここで、教師データによる経験がない学習モデル#049,#236の並び、学習モデル#236,#209の並び、及び、学習モデル#209,#274並びのうちの、学習モデル#049,#236の並びと、学習モデル#209,#274の並びとしてのモデルペアについては、そのモデルペアを構成する前モデルと後モデルがそれぞれ学習したモデル学習用データの、教師データ上の位置が、時系列順になっている。これに対して、学習モデル#236,#209の並びとしてのモデルペアについては、そのモデルペアを構成する前モデルと後モデルがそれぞれ学習したモデル学習用データの、教師データ上の位置が、時系列順の逆順になっている。   Here, learning models # 049, # 236 out of the arrangement of learning models # 049, # 236, the arrangement of learning models # 236, # 209, and the arrangement of learning models # 209, # 274 that have no experience with teacher data And the model pair as a sequence of learning models # 209 and # 274, the position on the teacher data of the model learning data learned by the previous model and the rear model that make up the model pair is the time series It is in order. On the other hand, for the model pair as an array of learning models # 236 and # 209, the position of the model learning data learned by the previous model and the rear model that make up the model pair on the teacher data is It is in the reverse order of the sequence order.

以上のように、生成用モデルシーケンスの算出では、学習モデルが、接続コストの累積値を小さくするように接続されるので、学習に用いられたモデル学習用データの、教師データ上の位置が、時系列順の逆順になっている学習モデルの並び等を含む、教師データによる経験がない学習モデルの並びで構成される生成用モデルシーケンスが得られる。   As described above, in the calculation of the generation model sequence, since the learning model is connected so as to reduce the cumulative value of the connection cost, the position of the model learning data used for learning on the teacher data is A generation model sequence composed of a sequence of learning models that have no experience with teacher data, including a sequence of learning models that are in reverse order of time series, is obtained.

その結果、生成用モデルシーケンスは、始点モデルである学習モデル#049に対応する位置(現在データが観測される位置)から、終点モデルである学習モデル#277に対応する位置(目標データが観測される位置)に効率良く到達する経路として、教師データが観測される経路よりも短い経路が得られる学習モデルの並びとなる。   As a result, the generation model sequence has a position (target data is observed) corresponding to the learning model # 277, which is the end point model, from the position corresponding to the learning model # 049, which is the starting point model (where the current data is observed). As a route that efficiently arrives at a position), a learning model is obtained in which a route shorter than the route where the teacher data is observed is obtained.

図25は、生成用モデルシーケンスから生成された生成時系列データが観測されるように、移動ロボットを移動した移動軌跡を表した移動環境を示している。   FIG. 25 shows a movement environment representing a movement locus of the movement of the mobile robot so that generation time series data generated from the generation model sequence is observed.

図25において、1桁の数字c、コロン(:)、及び、3桁の数字nからなる記号列c:nは、図24と同様に、生成用モデルシーケンスを構成する学習モデルの順番と、その学習モデルのモデルIDを表す。   In FIG. 25, a symbol string c: n consisting of a single-digit number c, a colon (:), and a three-digit number n is similar to FIG. Indicates the model ID of the learning model.

また、図25において、○印は、移動ロボットが移動を開始したスタート位置を表す。   Further, in FIG. 25, a circle mark represents a start position where the mobile robot starts moving.

図24で説明したように、生成用モデルシーケンスにおける学習モデル#049,#236の並び、学習モデル#236,#209の並び、及び、学習モデル#209,#274の並びについては、教師データによる経験をしていないが、学習モデル#049から学習モデル#236への切り替わり、学習モデル#236から学習モデル#209への切り替わり、及び、学習モデル#209から学習モデル#274への切り替わりにおいて、滑らかに接続する移動軌跡が描かれており、したがって、滑らかな生成時系列データが生成されることを確認することができる。   As described in FIG. 24, the arrangement of the learning models # 049 and # 236, the arrangement of the learning models # 236 and # 209, and the arrangement of the learning models # 209 and # 274 in the generation model sequence depend on the teacher data. Not experienced, but smooth in switching from learning model # 049 to learning model # 236, switching from learning model # 236 to learning model # 209, and switching from learning model # 209 to learning model # 274 Therefore, it is possible to confirm that smooth generation time-series data is generated.

[モデルパラメータの共有]
上述の実施の形態では、教師データを分割して得られる複数のモデル学習用データを、複数の学習モデルでそれぞれ学習し、学習モデルごとに、独立のモデルパラメータを求めたが、複数の学習モデルのモデルパラメータについては、モデルパラメータの共有を行うことができる。
[Sharing model parameters]
In the above-described embodiment, a plurality of model learning data obtained by dividing the teacher data is learned using a plurality of learning models, and independent model parameters are obtained for each learning model. Model parameters can be shared for the model parameters.

以下、モデルパラメータの共有について説明する。   Hereinafter, sharing of model parameters will be described.

図26は、モデルパラメータの共有を行う学習装置の一実施の形態の構成例を示している。   FIG. 26 illustrates a configuration example of an embodiment of a learning apparatus that shares model parameters.

図26において、学習装置は、複数であるN個の学習モジュール2101ないし210Nと、モデルパラメータ共有部220とから構成される。 In FIG. 26, the learning apparatus includes a plurality of N learning modules 210 1 to 210 N and a model parameter sharing unit 220.

学習モジュール210i(i=1,2,・・・,N)は、パターン入力部211i、モデル学習部212i、及びモデル記憶部213iから構成され、モデル学習用データを用いて、学習モデルの学習を行い、学習モデルのモデルパラメータを求める。 Learning module 210 i (i = 1,2, ··· , N) , the pattern input unit 211 i, the model learning unit 212 i, and is configured from the model storage unit 213 i, using the model learning data, learning The model is learned, and model parameters of the learning model are obtained.

すなわち、パターン入力部211iには、モデル記憶部213iに記憶された学習モデルの学習に用いるモデル学習用データが供給される。 That is, the pattern input unit 211 i, for model learning data is supplied for use in the learning of the stored learning model in the model storage unit 213 i.

パターン入力部211iは、そこに供給されるモデル学習用データを、モデル学習部212iに供給する。 The pattern input unit 211 i supplies the model learning data supplied thereto to the model learning unit 212 i .

モデル学習部212iは、パターン入力部211iからのモデル学習用データを用いて、モデル記憶部213iに記憶された学習モデルの学習を行い、その学習モデルのモデルパラメータを求める。 The model learning unit 212 i uses the model learning data from the pattern input unit 211 i to learn the learning model stored in the model storage unit 213 i and obtains model parameters of the learning model.

モデル記憶部213iは、モデルパラメータによって定義される、パターンを学習する学習モデルを記憶する。すなわち、モデル記憶部213iは、学習モデルのモデルパラメータを記憶する。 The model storage unit 213 i stores a learning model defined by model parameters for learning a pattern. That is, the model storage unit 213 i stores model parameters of the learning model.

ここで、モデル記憶部213iに記憶される学習モデルの実体は、その学習モデルのモデルパラメータである。 Here, the substance of the learning model stored in the model storage unit 213 i is a model parameter of the learning model.

モデルパラメータ共有部220は、N個の学習モジュール2101ないし210Nのうちの、2以上の学習モジュールに、モデルパラメータを共有させる共有処理を行う。モデルパラメータ共有部220が共有処理を行うことにより、N個の学習モジュール2101ないし210Nのうちの、2以上の学習モジュールは、モデルパラメータを共有する。 The model parameter sharing unit 220 performs a sharing process in which two or more learning modules out of the N learning modules 210 1 to 210 N share model parameters. When the model parameter sharing unit 220 performs the sharing process, two or more learning modules among the N learning modules 210 1 to 210 N share the model parameters.

なお、以下では、説明を簡単にするため、モデルパラメータ共有部220は、N個の学習モジュール2101ないし210Nのすべてに、モデルパラメータを共有させる共有処理を行うこととする。 Hereinafter, in order to simplify the description, the model parameter sharing unit 220 performs a sharing process in which all N learning modules 210 1 to 210 N share model parameters.

次に、図27のフローチャートを参照して、図26の学習装置が行う、学習モデルの学習について説明する。   Next, learning of a learning model performed by the learning device of FIG. 26 will be described with reference to the flowchart of FIG.

ステップS211において、学習モジュール210iのモデル学習部212iは、モデル記憶部213iに記憶されたモデルパラメータを、例えば、乱数等によって初期化して、処理は、ステップS212に進む。 In step S211, the model learning unit 212 i of the learning module 210 i initializes the model parameters stored in the model storage unit 213 i with, for example, random numbers, and the process proceeds to step S212.

ステップS212では、学習モジュール210iが、その学習モジュール210iで学習すべきモデル学習用データが供給(入力)されるのを待って、そのモデル学習用データを用いて、学習モデルの学習、すなわち、モデル記憶部213iに記憶されたモデルパラメータを初期値として、学習モデルのモデルパラメータを更新する。 In step S212, the learning module 210 i waits for supply (input) of model learning data to be learned by the learning module 210 i , and learning of the learning model using the model learning data, that is, The model parameters of the learning model are updated using the model parameters stored in the model storage unit 213 i as initial values.

すなわち、ステップS212では、学習モジュール210iにおいて、パターン入力部211iが、学習モジュール210iに供給されたモデル学習用データを、モデル学習部212iに供給する。 That is, in step S212, in the learning module 210 i , the pattern input unit 211 i supplies the model learning data supplied to the learning module 210 i to the model learning unit 212 i .

さらに、ステップS212では、モデル学習部212iが、パターン入力部211iからのモデル学習用データを用いて、モデル記憶部213iに記憶された学習モデルのモデルパラメータを更新し、その更新によって得られた新たなモデルパラメータによって、モデル記憶部213iの記憶内容を更新する(上書きする)。 Further, in step S212, the model learning unit 212 i updates the model parameters of the learning model stored in the model storage unit 213 i using the model learning data from the pattern input unit 211 i, and is obtained by the update. The stored contents of the model storage unit 213 i are updated (overwritten) with the new model parameters thus obtained.

ここで、ステップS211及びS212の処理は、N個の学習モジュール2101ないし210Nのすべてで行われる。 Here, the processes of steps S211 and S212 are performed by all of the N learning modules 210 1 to 210 N.

ステップS212の後、処理は、ステップS213に進み、モデルパラメータ共有部220は、N個の学習モジュール2101ないし210Nのすべてに、モデルパラメータを共有させる共有処理を行う。 After step S212, the process proceeds to step S213, and the model parameter sharing unit 220 performs a sharing process in which all the N learning modules 210 1 to 210 N share the model parameter.

すなわち、学習モジュール210iは、複数のモデルパラメータを有する(複数のモデルパラメータによって定義される)。学習モジュール210iが有する複数のモデルパラメータのうちの、例えば、m番目のモデルパラメータに注目すると、モデルパラメータ共有部220は、N個の学習モジュール2101ないし210Nそれぞれのm番目のモデルパラメータに基づいて、学習モジュール2101のm番目のモデルパラメータを補正する。 That is, the learning module 210 i is (defined by a plurality of model parameters) having a plurality of model parameters. When attention is paid to, for example, the m-th model parameter among the plurality of model parameters of the learning module 210 i , the model parameter sharing unit 220 determines the m-th model parameter of each of the N learning modules 210 1 to 210 N. based on, for correcting the m-th model parameter of the learning module 210 1.

さらに、モデルパラメータ共有部220は、N個の学習モジュール2101ないし210Nそれぞれのm番目のモデルパラメータに基づいて、学習モジュール2102のm番目のモデルパラメータを補正し、以下、同様にして、学習モジュール2103ないし210Nそれぞれのm番目のモデルパラメータを補正する。 Further, the model parameter sharing unit 220 corrects the m-th model parameter of the learning module 210 2 based on the m-th model parameter of each of the N learning modules 210 1 to 210 N , and so on. The mth model parameter of each of the learning modules 210 3 to 210 N is corrected.

以上のように、モデルパラメータ共有部220が、学習モジュール210iのm番目のモデルパラメータを、N個の学習モジュール2101ないし210Nそれぞれのm番目のモデルパラメータに基づいて補正することで、N個の学習モジュール2101ないし210Nのm番目のモデルパラメータのそれぞれは、N個の学習モジュール2101ないし210Nのm番目のモデルパラメータのすべての影響を受ける(N個の学習モジュール2101ないし210Nのm番目のモデルパラメータのそれぞれに、N個の学習モジュール2101ないし210Nのm番目のモデルパラメータのすべてを影響させる)。 As described above, the model parameter sharing unit 220 corrects the m-th model parameter of the learning module 210 i based on the m-th model parameter of each of the N learning modules 210 1 to 210 N , so that N each number of learning modules 210 1 to 210 N m-th model parameters are to 210 1 to N learning modules all affected the m-th model parameter of 210 N (to N learning module 210 no 1 210 N each of the m-th model parameters, to 210 no 1 N pieces of learning modules to affect all 210 N m-th model parameters).

このように、複数の学習モジュールのモデルパラメータすべてを、その複数の学習モジュールのモデルパラメータのそれぞれに影響させること(複数の学習モジュールのモデルパラメータのそれぞれが、その複数の学習モジュールのモデルパラメータすべての影響を受けること)が、複数の学習モジュールによるモデルパラメータの共有である。   In this way, all the model parameters of a plurality of learning modules are affected by each of the model parameters of the plurality of learning modules (each of the model parameters of the plurality of learning modules is It is the sharing of model parameters by multiple learning modules.

モデルパラメータ共有部220は、ステップS213において、学習モジュール210iのモデル記憶部213iに記憶された複数のモデルパラメータのすべてを対象に、共有処理を行い、その共有処理によって得られたモデルパラメータによって、モデル記憶部2131ないし213Nの記憶内容を更新する。 In step S213, the model parameter sharing unit 220 performs a sharing process on all of the plurality of model parameters stored in the model storage unit 213 i of the learning module 210 i , and uses the model parameters obtained by the sharing process. , model storage unit 213 1 to update the memory content of 213 N.

ステップS213の後、処理は、ステップS214に進み、図26の学習装置は、学習の終了条件が満たされているかどうかを判定する。   After step S213, the process proceeds to step S214, and the learning device in FIG. 26 determines whether the learning end condition is satisfied.

ここで、ステップS214での学習の終了条件としては、例えば、学習の回数、つまり、ステップS212及びS213が繰り返された回数が、あらかじめ定められた所定の回数となったことを採用することができる。また、学習の終了条件としては、モデル学習用データに対して出力されるべき出力データ(モデル学習用データを入力データとしたときの、その入力データに対する出力データ)の真値が分かっている場合に、そのモデル学習用データに対して学習モデルから出力される出力データの、真値に対する誤差が所定値以下であること、等を採用することができる。   Here, as the learning end condition in step S214, for example, it is possible to adopt that the number of times of learning, that is, the number of times that steps S212 and S213 are repeated has reached a predetermined number of times. . In addition, as the learning termination condition, when the true value of the output data to be output for the model learning data (output data for the input data when the model learning data is used as input data) is known In addition, it is possible to adopt that the error of the output data output from the learning model with respect to the model learning data is less than or equal to a predetermined value.

ステップS214において、学習の終了条件が満たされていないと判定された場合、処理は、ステップS212に戻り、以下、同様の処理が繰り返される。   If it is determined in step S214 that the learning termination condition is not satisfied, the process returns to step S212, and the same process is repeated thereafter.

また、ステップS214において、学習の終了条件が満たされていると判定された場合、処理は終了する。   If it is determined in step S214 that the learning end condition is satisfied, the process ends.

次に、図28は、学習モデルとして、RNNPB(RNN with Parametric Bias)を採用した場合の、図26の学習装置の構成例を示している。   Next, FIG. 28 shows a configuration example of the learning apparatus in FIG. 26 when RNNPB (RNN with Parametric Bias) is adopted as a learning model.

なお、図28においては、学習モジュール210iのパターン入力部211i及びモデル学習部212iの図示を省略してある。 Incidentally, in FIG. 28, is not shown in the learning module 210 i of the pattern input section 211 i and the model learning unit 212 i.

モデル記憶部213iには、RNNPB(を定義する複数のモデルパラメータ)が記憶されている。ここで、モデル記憶部213iに記憶されたRNNPBを、以下、適宜、RNNPB#iとも記載する。 The model storage unit 213 i stores RNNPB (a plurality of model parameters that define RNNPB). Here, the RNNPB stored in the model storage unit 213 i is hereinafter also referred to as RNNPB # i as appropriate.

図28では、RNNPBは、入力層、隠れ層(中間層)、及び出力層の3層で構成されている。入力層、隠れ層、及び出力層は、それぞれ任意の数の、ニューロンに相当するユニットにより構成されている。   In FIG. 28, the RNNPB is composed of three layers: an input layer, a hidden layer (intermediate layer), and an output layer. Each of the input layer, the hidden layer, and the output layer is configured by an arbitrary number of units corresponding to neurons.

RNNPBでは、入力層の一部のユニットである入力ユニットに、モデル学習用データxtが入力データとして入力(供給)される。 In RNNPB, the part of the unit is input units of the input layer, the model learning data x t is input (supplied) as input data.

また、入力層の、モデル学習用データxtが入力される入力ユニット以外のユニットの一部であるPBユニットには、PB(Parametric Bias)が入力される。PBによれば、同一の状態のRNNPBに対して、同一のモデル学習用データxtが入力されても、PBを変更することにより、異なる出力データx* t+1を得ることができる。 Further, the input layer, the PB unit is part of a unit other than the input unit model learning data x t is input, PB (Parametric Bias) is input. According to PB, even if the same model learning data x t is input to RNNPB in the same state, different output data x * t + 1 can be obtained by changing PB.

入力層の、モデル学習用データxtが入力される入力ユニット以外のユニットの残りであるコンテキストユニットには、出力層の一部のユニットより出力される出力データが、内部状態を表すコンテキストとしてフィードバックされる。 Output data output from some units in the output layer is fed back to the context unit, which is the rest of the units other than the input unit to which the model learning data x t is input, as the context representing the internal state. Is done.

ここで、時刻tのモデル学習用データxtが入力層の入力ユニットに入力されるときに入力層のPBユニットとコンテキストユニットに入力される時刻tのPBとコンテキストを、それぞれ、PBtとctと記載する。 Here, when the model learning data xt at time t is input to the input unit of the input layer, the PB and context at time t input to the PB unit and context unit of the input layer are respectively expressed as PB t and c Indicated as t .

隠れ層のユニットは、入力層に入力されるモデル学習用データxt,PBt,コンテキストctを対象として、所定のウエイト(重み)を用いた重み付け加算を行い、その重み付け加算の結果を引数とする非線形関数の演算を行って、その演算結果を、出力層のユニットに出力する。 The hidden layer unit performs weighted addition using predetermined weights (weights) for model learning data x t , PB t , and context c t input to the input layer, and the result of the weighted addition is an argument. And the result of the calculation is output to the output layer unit.

出力層の一部のユニットからは、上述したように、次の時刻t+1のコンテキストct+1となる出力データが出力され、入力層にフィードバックされる。また、出力層の残りのユニットからは、例えば、入力データとしてのモデル学習用データxtに対する出力データとして、そのモデル学習用データxtの次の時刻t+1のモデル学習用データxt+1の予測値x* t+1が出力される。 As described above, output data serving as the context c t + 1 at the next time t + 1 is output from some units in the output layer and fed back to the input layer. Further, from the remaining units of the output layer, for example, as output data to the model learning data x t as input data, data for the model training x t at the next time t + 1 of the model learning data x t + predicted value x * t + 1 of 1 is output.

ここで、RNNPBでは、ユニットへの入力が重み付け加算されるが、この重み付け加算に用いられるウエイト(重み)が、RNNPBのモデルパラメータである。RNNPBのモデルパラメータとしてのウエイトには、例えば、入力ユニットから隠れ層のユニットへのウエイト、PBユニットから隠れ層のユニットへのウエイト、コンテキストユニットから隠れ層のユニットへウエイト、隠れ層のユニットから出力層のユニットへのウエイト、及び、隠れ層のユニットからコンテキストユニットへのウエイトがある。   Here, in RNNPB, the input to the unit is weighted and added, and the weight (weight) used for this weighted addition is a model parameter of RNNPB. Weights as model parameters of RNNPB include, for example, weights from input units to hidden layer units, weights from PB units to hidden layer units, weights from context units to hidden layer units, and outputs from hidden layer units. There is a weight to the layer unit and a weight from the hidden layer unit to the context unit.

学習モデルとして、以上のようなRNNPBを採用した場合、モデルパラメータ共有部220には、RNNPBのモデルパラメータとしてのウエイトを、学習モジュール2101ないし210Nに共有させるウエイトマトリクス共有部21が設けられる。 When RNNPB as described above is adopted as the learning model, the model parameter sharing unit 220 is provided with a weight matrix sharing unit 21 that allows the learning modules 210 1 to 210 N to share weights as model parameters of the RNNPB.

ここで、RNNPBのモデルパラメータとしてのウエイトは、複数あるが、その複数のウエイトをコンポーネントとするマトリクスを、ウエイトマトリクスという。   Here, there are a plurality of weights as model parameters of the RNNPB, but a matrix having the plurality of weights as components is called a weight matrix.

ウエイトマトリクス共有部21は、モデル記憶部2131ないし213Nに記憶されたRNNPB#1ないしRNNPB#Nの複数のモデルパラメータとしてのウエイトマトリクスすべてを、学習モジュール2101ないし210Nのそれぞれに共有させる。 Weight matrix sharing unit 21 to RNNPB # 1 stored in the model storage unit 213 1 to 213 N all weight matrix as a plurality of model parameters RNNPB # N, is shared by each of the learning modules 210 1 to 210 N .

すなわち、RNNPB#iのウエイトマトリクスをwiと表すこととすると、ウエイトマトリクス共有部21は、ウエイトマトリクスwiを、N個の学習モジュール2101ないし210Nそれぞれのウエイトマトリクスw1ないしwNのすべてに基づいて補正することで、ウエイトマトリクスwiに、ウエイトマトリクスw1ないしwNのすべてを影響させる共有処理を行う。 That is, if the weight matrix of RNNPB # i is expressed as w i , the weight matrix sharing unit 21 sets the weight matrix w i to the weight matrices w 1 to w N of the N learning modules 210 1 to 210 N, respectively. By performing correction based on all of them, a sharing process that affects all of the weight matrices w 1 to w N is performed on the weight matrix w i .

具体的には、ウエイトマトリクス共有部21は、例えば、次式(3)に従い、RNNPB#iのウエイトマトリクスwiを補正する。 Specifically, the weight matrix sharing unit 21 corrects the weight matrix w i of RNNPB # i, for example, according to the following equation (3).

wi=wi+Δwi
・・・(3)
w i = w i + Δw i
... (3)

ここで、式(3)において、△wiは、ウエイトマトリクスwiを補正する補正成分であり、例えば、式(4)に従って求められる。 Here, in equation (3), Δw i is a correction component for correcting the weight matrix w i and is obtained, for example, according to equation (4).

Δwi=αiΣβij(wj-wi)
・・・(4)
Δw i = α i Σβ ij (w j -w i )
... (4)

式(4)において、Σは、変数jを、1からNの範囲の整数に変えての総和を表す。   In Equation (4), Σ represents the total sum when the variable j is changed to an integer in the range of 1 to N.

また、式(4)において、βijは、RNNPB#iのウエイトマトリクスwiに、RNNPB#j(j=1,2,・・・,N)のウエイトマトリクスwjを影響させる度合いを表す係数である。 The coefficient in the formula (4), beta ij is representative of the weight matrix w i of RNNPB # i, RNNPB # j ( j = 1,2, ···, N) the degree to which the influence of the weight matrix w j of It is.

したがって、式(4)の右辺のサメーションΣβij(wj-wi)は、係数βijを重みとした、RNNPB#iのウエイトマトリクスwjに対するRNNPB#1ないしRNNPB#Nのウエイトマトリクスw1ないしwNそれぞれの偏差(差分)の重み付け平均値を表し、αiは、その重み付け平均値Σβij(wj-wi)を、ウエイトマトリクスwiに影響させる度合いを表す係数である。 Therefore, the summation Σβ ij (w j -w i ) on the right side of the equation (4) is the weight matrix w of RNNPB # 1 to RNNPB # N with respect to the weight matrix w j of RNNPB # i using the coefficient β ij as a weight. 1 to w N represents a weighted average value of deviations (differences), and α i is a coefficient representing the degree of influence of the weighted average value Σβ ij (w j −w i ) on the weight matrix w i .

係数αi及びβijとしては、例えば、0.0より大で1.0より小の値を採用することができる。 As the coefficients α i and β ij , for example, values larger than 0.0 and smaller than 1.0 can be adopted.

式(4)によれば、係数αiが小であるほど、いわば共有が弱くなり(ウエイトマトリクスwiが受ける重み付け平均値Σβij(wj-wi)の影響が小さくなり)、係数αiが大であるほど、いわば共有が強まる。 According to the equation (4), the smaller the coefficient α i , the weaker the sharing (the influence of the weighted average value Σβ ij (w j −w i ) on the weight matrix w i becomes smaller), and the coefficient α as i is large, so to speak, sharing becomes stronger.

なお、ウエイトマトリクスwiの補正の方法は、式(3)に限定されるものではなく、例えば、式(5)に従って行うことが可能である。 Note that the method of correcting the weight matrix w i is not limited to the equation (3), and can be performed, for example, according to the equation (5).

wi=α'iwi+(1-α'i)Σβ'ijwj
・・・(5)
w i = α ' i w i + (1-α' i ) Σβ ' ij w j
... (5)

式(5)において、Σは、変数jを、1からNの範囲の整数に変えての総和を表す。   In Equation (5), Σ represents the total sum when the variable j is changed to an integer in the range of 1 to N.

また、式(5)において、β' ijは、RNNPB#iのウエイトマトリクスwiに、RNNPB#j(j=1,2,・・・,N)のウエイトマトリクスwjを影響させる度合いを表す係数である。 Further, in the equation (5), β 'ij is the weight matrix w i of RNNPB # i, represents the degree to which the influence RNNPB # j (j = 1,2, ···, N) of the weight matrix w j of It is a coefficient.

したがって、式(5)の右辺の第2項におけるサメーションΣβ' ijwjは、係数β' ijを重みとした、RNNPB#1ないしRNNPB#Nのウエイトマトリクスw1ないしwNの重み付け平均値を表し、α' iは、その重み付け平均値Σβ' ijwjを、ウエイトマトリクスwiに影響させる度合いを表す係数である。 Therefore, the summation Σβ ij w j in the second term on the right side of the equation (5) is the weighted average value of the weight matrices w 1 to w N of the RNNPB # 1 to RNNPB # N with the coefficient β ij as the weight. Α i is a coefficient representing the degree of influence of the weighted average value Σβ ij w j on the weight matrix w i .

係数α' i及びβ' ijとしては、例えば、0.0より大で1.0より小の値を採用することができる。 As the coefficients α i and β ij , for example, values larger than 0.0 and smaller than 1.0 can be adopted.

式(5)によれば、係数α' iが大であるほど、共有が弱くなり(ウエイトマトリクスwiが受ける重み付け平均値Σβ' ijwjの影響が小さくなり)、係数α' iが小であるほど、共有が強まる。 According to Equation (5), the larger the coefficient α i , the weaker the sharing (the influence of the weighted average value Σβ ij w j received by the weight matrix w i becomes smaller), and the smaller the coefficient α i. The more it becomes, the stronger the sharing.

複数の学習モジュール2101ないし210Nは、全体として、新たなパターンを学習することを容易に行うことができるという規模拡張性に優れる。 The plurality of learning modules 210 1 to 210 N as a whole is excellent in scale extensibility that a new pattern can be easily learned.

そして、全体として規模拡張性に優れた複数の学習モジュール2101ないし210Nそれぞれにおいて、モデルパラメータを共有しながら、その複数の学習モジュール2101ないし210Nそれぞれのモデルパラメータを更新すること(学習モデルの学習)により、1つの学習モジュールだけで行われる学習で得られる汎化特性が、複数の学習モジュール2101ないし210Nの全体で得ることができ、その結果、全体として、規模拡張性があり、同時に、汎化特性を有する学習モデルを得ることができる。 Then, each of the plurality of learning modules 210 1 to 210 N excellent in scale extensibility as a whole updates the model parameters of the plurality of learning modules 210 1 to 210 N while sharing the model parameters (learning model). Learning), generalization characteristics obtained by learning performed by only one learning module can be obtained by the whole of the plurality of learning modules 210 1 to 210 N , and as a result, there is a scalability as a whole. At the same time, a learning model having generalization characteristics can be obtained.

次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。   Next, the series of processes described above can be performed by hardware or software. When a series of processing is performed by software, a program constituting the software is installed in a general-purpose computer or the like.

そこで、図29は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。   Therefore, FIG. 29 shows a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.

プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク105やROM103に予め記録しておくことができる。   The program can be recorded in advance on a hard disk 105 or a ROM 103 as a recording medium built in the computer.

あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体111に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体111は、いわゆるパッケージソフトウエアとして提供することができる。   Alternatively, the program is stored temporarily on a removable recording medium 111 such as a flexible disk, a CD-ROM (Compact Disc Read Only Memory), a MO (Magneto Optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, or a semiconductor memory. It can be stored permanently (recorded). Such a removable recording medium 111 can be provided as so-called package software.

なお、プログラムは、上述したようなリムーバブル記録媒体111からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部108で受信し、内蔵するハードディスク105にインストールすることができる。   The program is installed in the computer from the removable recording medium 111 as described above, or transferred from the download site to the computer wirelessly via a digital satellite broadcasting artificial satellite, LAN (Local Area Network), The program can be transferred to a computer via a network such as the Internet, and the computer can receive the program transferred in this way by the communication unit 108 and install it in the built-in hard disk 105.

コンピュータは、CPU(Central Processing Unit)102を内蔵している。CPU102には、バス101を介して、入出力インタフェース110が接続されており、CPU102は、入出力インタフェース110を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部107が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)103に格納されているプログラムを実行する。あるいは、また、CPU102は、ハードディスク105に格納されているプログラム、衛星若しくはネットワークから転送され、通信部108で受信されてハードディスク105にインストールされたプログラム、またはドライブ109に装着されたリムーバブル記録媒体111から読み出されてハードディスク105にインストールされたプログラムを、RAM(Random Access Memory)104にロードして実行する。これにより、CPU102は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU102は、その処理結果を、必要に応じて、例えば、入出力インタフェース110を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部106から出力、あるいは、通信部108から送信、さらには、ハードディスク105に記録等させる。   The computer includes a CPU (Central Processing Unit) 102. An input / output interface 110 is connected to the CPU 102 via the bus 101, and the CPU 102 operates an input unit 107 including a keyboard, a mouse, a microphone, and the like by the user via the input / output interface 110. When a command is input by the equalization, a program stored in a ROM (Read Only Memory) 103 is executed accordingly. Alternatively, the CPU 102 also transfers from a program stored in the hard disk 105, a program transferred from a satellite or a network, received by the communication unit 108 and installed in the hard disk 105, or a removable recording medium 111 attached to the drive 109. The program read and installed in the hard disk 105 is loaded into a RAM (Random Access Memory) 104 and executed. Thus, the CPU 102 performs processing according to the above-described flowchart or processing performed by the configuration of the above-described block diagram. Then, the CPU 102 outputs the processing result from the output unit 106 configured with an LCD (Liquid Crystal Display), a speaker, or the like, for example, via the input / output interface 110, or from the communication unit 108 as necessary. Transmission and further recording on the hard disk 105 are performed.

ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。   Here, in the present specification, the processing steps for describing a program for causing the computer to perform various processes do not necessarily have to be processed in time series in the order described in the flowcharts, but in parallel or individually. This includes processing to be executed (for example, parallel processing or processing by an object).

また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。   Further, the program may be processed by one computer or may be distributedly processed by a plurality of computers. Furthermore, the program may be transferred to a remote computer and executed.

なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。   The embodiment of the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present invention.

すなわち、例えば、コネクティビティの算出や、生成時系列データの生成において、モデル生成データのオーバラップ部分としては、モデル学習用データのオーバラップ部分に等しいLサンプルを採用する他、そのLサンプル未満の複数サンプルを採用することが可能である。   That is, for example, in the calculation of connectivity and generation of generation time series data, as the overlap part of the model generation data, an L sample equal to the overlap part of the model learning data is adopted, and a plurality of less than the L sample is used. Samples can be employed.

本発明を適用したデータ処理装置の一実施の形態の構成例を示すブロック図である。It is a block diagram which shows the structural example of one Embodiment of the data processor to which this invention is applied. 学習装置10のより詳細な構成例を示すブロック図である。3 is a block diagram illustrating a more detailed configuration example of a learning device 10. FIG. 学習モデルとしてのRNNの構成例を示す図である。It is a figure which shows the structural example of RNN as a learning model. 教師データの分割と、その分割によって得られるモデル学習用データを用いた学習モデルの学習とを説明する図である。It is a figure explaining the division | segmentation of teacher data, and learning of the learning model using the data for model learning obtained by the division | segmentation. コネクティビティの算出の方法を説明する図である。It is a figure explaining the method of calculating connectivity. 学習処理を説明するフローチャートである。It is a flowchart explaining a learning process. コネクティビティ算出処理を説明するフローチャートである。It is a flowchart explaining a connectivity calculation process. コネクティビティ算出処理を説明するフローチャートである。It is a flowchart explaining a connectivity calculation process. コネクティビティ算出処理を説明するフローチャートである。It is a flowchart explaining a connectivity calculation process. データ生成装置20のより詳細な構成例を示すブロック図である。3 is a block diagram illustrating a more detailed configuration example of a data generation device 20. FIG. 生成用モデルシーケンスの算出のために行われる前向き計算を説明する図である。It is a figure explaining the forward calculation performed for calculation of the model sequence for production | generation. 生成用モデルシーケンスを用いた生成時系列データの生成を説明する図である。It is a figure explaining the production | generation of the production | generation time series data using the model sequence for production | generation. データ生成処理を説明するフローチャートである。It is a flowchart explaining a data generation process. 生成用モデルシーケンスの算出処理を説明するフローチャートである。It is a flowchart explaining the calculation process of the model sequence for production | generation. 時系列データ生成処理を説明するフローチャートである。It is a flowchart explaining a time series data generation process. 時系列データ生成処理を説明するフローチャートである。It is a flowchart explaining a time series data generation process. 時系列データ生成処理を説明するフローチャートである。It is a flowchart explaining a time series data generation process. 時系列データ生成処理を説明するフローチャートである。It is a flowchart explaining a time series data generation process. 教師データとしての時系列データと、その時系列データを用いた学習を行った学習モデルを用いて生成される生成時系列データとを示す図である。It is a figure which shows the time series data as teacher data, and the production | generation time series data produced | generated using the learning model which performed learning using the time series data. 移動ロボットがナビゲーションタスクを行う移動環境の概要を示す図である。It is a figure which shows the outline | summary of the mobile environment where a mobile robot performs a navigation task. シミュレーションで採用した移動環境を示す平面図である。It is a top view which shows the movement environment employ | adopted by simulation. 学習処理により得られたコネクティビティを表した移動環境を示す図である。It is a figure which shows the movement environment showing connectivity obtained by the learning process. コネクティビティを用いて算出された生成用モデルシーケンスを表した移動環境を示す図である。It is a figure which shows the movement environment showing the model sequence for production | generation calculated using connectivity. 生成用モデルシーケンスを構成する学習モデルが学習したモデル学習用データに対応する移動軌跡を表した移動環境を示す図である。It is a figure which shows the movement environment showing the movement locus | trajectory corresponding to the data for model learning which the learning model which comprises the model sequence for production | generation learned. 生成用モデルシーケンスから生成された生成時系列データが観測されるように、移動ロボットを移動した移動軌跡を表した移動環境を示す図である。It is a figure which shows the movement environment showing the movement locus | trajectory which moved the mobile robot so that the production | generation time series data produced | generated from the model model for production | generation may be observed. モデルパラメータの共有を行う学習装置の一実施の形態の構成例を示すブロック図である。It is a block diagram which shows the structural example of one Embodiment of the learning apparatus which shares a model parameter. 学習装置による学習を説明するフローチャートである。It is a flowchart explaining the learning by a learning apparatus. 学習モデルとして、RNNPBを採用した場合の学習装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the learning apparatus at the time of employ | adopting RNNPB as a learning model. 本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。It is a block diagram which shows the structural example of one Embodiment of the computer to which this invention is applied.

符号の説明Explanation of symbols

10 学習装置, 11 教師データ保存部, 12 教師データ分割部, 13 モデル学習用データ保存部, 14 学習部, 15 モデルパラメータ保存部, 16 コネクティビティ算出部, 17 コネクティビティ保存部, 20 データ生成装置, 21 現在データ供給部, 22 目標データ供給部, 23 始点モデル選択部, 24 終点モデル選択部, 25 生成用モデルシーケンス算出部, 26 時系列データ生成部, 27 時系列データ出力部, 41 データ割り当て部, 421ないし42N 演算部, 51 モデルペア選択部, 52 モデルパラメータ供給部, 53,54 認識生成部7, 55 コネクティビティ演算部, 61 現在データ分配部, 62 モデルパラメータ供給部, 631ないし63N 認識生成部, 64 始点モデル決定部, 71 目標データ分配部, 72 モデルパラメータ供給部, 731ないし73N 認識生成部, 74 終点モデル決定部, 81 始点モデルID供給部, 82 終点モデルID供給部, 83 シーケンス算出部, 91 シーケンス供給部, 92 モデルパラメータ供給部, 931ないし93N 認識生成部, 94 統合生成部, 101 バス, 102 CPU, 103 ROM, 104 RAM, 105 ハードディスク, 106 出力部, 107 入力部, 108 通信部, 109 ドライブ, 110 入出力インタフェース, 111 リムーバブル記録媒体, 2101ないし210N 学習モジュール, 2111ないし211N パターン入力部, 2121ないし212N モデル学習部, 2131ないし213N モデル記憶部, 220 モデルパラメータ共有部, 221 ウエイトマトリクス共有部 DESCRIPTION OF SYMBOLS 10 Learning apparatus, 11 Teacher data preservation | save part, 12 Teacher data division | segmentation part, 13 Model learning data preservation | save part, 14 Learning part, 15 Model parameter preservation | save part, 16 Connectivity calculation part, 17 Connectivity preservation | save part, 20 Data generation apparatus, 21 Current data supply unit, 22 target data supply unit, 23 start point model selection unit, 24 end point model selection unit, 25 generation model sequence calculation unit, 26 time series data generation unit, 27 time series data output unit, 41 data allocation unit, 42 1 to 42 N calculation unit, 51 model pair selection unit, 52 model parameter supply unit, 53, 54 recognition generation unit 7, 55 connectivity calculation unit, 61 current data distribution unit, 62 model parameter supply unit, 63 1 to 63 N Recognition generation unit, 64 start point model determination unit, 71 target data Data distributing section, 72 model parameter supply section, 73 1 to 73 N recognition generating unit, 74 an end point model determining unit 81 start the model ID supply unit, 82 an end point model ID supply unit, 83 sequence calculation unit, 91 sequence supplying section, 92 the model parameter supply section, 93 1 to 93 N recognition generating unit 94 integrated generator, 101 bus, 102 CPU, 103 ROM, 104 RAM, 105 hard disk, 106 output unit, 107 input unit, 108 communication unit, 109 drive, 110 I / O interface, 111 removable recording medium, 210 1 to 210 N learning module, 211 1 to 211 N pattern input unit, 212 1 to 212 N model learning unit, 213 1 to 213 N model storage unit, 220 model parameter sharing unit, 221 Weight matrix sharing part

Claims (8)

時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力し、
1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行う
ことにより得られる、学習後の複数の前記学習モデルのうちの、1つの前記学習モデルを、時系列データの生成に用いる前記学習モデルのシーケンスである生成用モデルシーケンスの始点となる始点モデルとして選択する始点モデル選択手段と、
複数の前記学習モデルのうちの、他の1つの前記学習モデルを、前記生成用モデルシーケンスの終点となる終点モデルとして選択する終点モデル選択手段と、
複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を表す値を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出する
ことにより得られる前記コネクティビティに対応する値を、1つの前記学習モデルの後に、他の1つの前記学習モデルを接続する接続コストとして、前記接続コストの累積値を最小にする、前記始点モデルから前記終点モデルまでの前記学習モデルの並びを、前記生成用モデルシーケンスとして求める生成用モデルシーケンス算出手段と、
前記生成用モデルシーケンスを構成する前記学習モデルについて、前記学習モデルが生成する時系列データの最後の一部分のデータ列と、後に接続される前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を小さくするように、前記学習モデルの前記内部状態の初期値を決定し、その初期値を、前記学習モデルに与えて、時系列データを生成する時系列データ生成手段と
を備えるデータ処理装置。
The time series data is a learning model that divides time series data into a plurality of partially overlapping data and learns a time series pattern, and outputs it as model learning data used for learning a learning model having an internal state,
A plurality of model learning data obtained by dividing the time series data so as to assign one model learning data to one learning model, and assign the plurality of learning models to the learning model; One of the plurality of learning models after learning obtained by performing the learning of the time-series pattern by using the model learning data assigned to the learning model is time-series. Starting point model selecting means for selecting as a starting point model to be a starting point of a generating model sequence that is a sequence of the learning model used for generating data;
End point model selecting means for selecting one of the plurality of learning models as the end point model to be the end point of the generating model sequence;
For all of the plurality of learning models, a data string of the last part of the time series data generated by one learning model and a data string of the first part of the time series data generated by one other learning model A value representing an error is obtained by calculating the connectivity indicating the appropriateness of connection of the time series pattern learned by one other learning model after the time series pattern learned by one learning model. A value corresponding to the connectivity is set as a connection cost for connecting the other learning model after one learning model, and a cumulative value of the connection cost is minimized, from the start point model to the end point model. A generating model sequence calculating means for obtaining the sequence of the learning models as the generating model sequence;
For the learning model constituting the generation model sequence, the last partial data sequence of the time series data generated by the learning model and the first partial data of the time series data generated by the learning model connected later Time series data generating means for determining an initial value of the internal state of the learning model and giving the initial value to the learning model so as to reduce an error with a column, and generating time series data. Data processing device.
前記学習モデルは、RNN(Recurrent Neural Network)である
請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, wherein the learning model is an RNN (Recurrent Neural Network).
データ処理装置が、
時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力し、
1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行う
ことにより得られる、学習後の複数の前記学習モデルのうちの、1つの前記学習モデルを、時系列データの生成に用いる前記学習モデルのシーケンスである生成用モデルシーケンスの始点となる始点モデルとして選択し、
複数の前記学習モデルのうちの、他の1つの前記学習モデルを、前記生成用モデルシーケンスの終点となる終点モデルとして選択し、
複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を表す値を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出する
ことにより得られる前記コネクティビティに対応する値を、1つの前記学習モデルの後に、他の1つの前記学習モデルを接続する接続コストとして、前記接続コストの累積値を最小にする、前記始点モデルから前記終点モデルまでの前記学習モデルの並びを、前記生成用モデルシーケンスとして求め、
前記生成用モデルシーケンスを構成する前記学習モデルについて、前記学習モデルが生成する時系列データの最後の一部分のデータ列と、後に接続される前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を小さくするように、前記学習モデルの前記内部状態の初期値を決定し、その初期値を、前記学習モデルに与えて、時系列データを生成する
ステップを含むデータ処理方法。
Data processing device
The time series data is a learning model that divides time series data into a plurality of partially overlapping data and learns a time series pattern, and outputs it as model learning data used for learning a learning model having an internal state,
A plurality of model learning data obtained by dividing the time series data so as to assign one model learning data to one learning model, and assign the plurality of learning models to the learning model; One of the plurality of learning models after learning obtained by performing the learning of the time-series pattern by using the model learning data assigned to the learning model is time-series. Select as the starting point model to be the starting point of the generating model sequence that is a sequence of the learning model used for data generation,
The other one of the learning models is selected as an end point model that is an end point of the generation model sequence,
For all of the plurality of learning models, a data string of the last part of the time series data generated by one learning model and a data string of the first part of the time series data generated by one other learning model A value representing an error is obtained by calculating the connectivity indicating the appropriateness of connection of the time series pattern learned by one other learning model after the time series pattern learned by one learning model. A value corresponding to the connectivity is set as a connection cost for connecting the other learning model after one learning model, and a cumulative value of the connection cost is minimized, from the start point model to the end point model. Obtaining the sequence of the learning models as the generating model sequence;
For the learning model constituting the generation model sequence, the last partial data sequence of the time series data generated by the learning model and the first partial data of the time series data generated by the learning model connected later A data processing method comprising the steps of: determining an initial value of the internal state of the learning model so as to reduce an error with a column; and providing the initial value to the learning model to generate time series data.
時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力し、
1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行う
ことにより得られる、学習後の複数の前記学習モデルのうちの、1つの前記学習モデルを、時系列データの生成に用いる前記学習モデルのシーケンスである生成用モデルシーケンスの始点となる始点モデルとして選択する始点モデル選択手段と、
複数の前記学習モデルのうちの、他の1つの前記学習モデルを、前記生成用モデルシーケンスの終点となる終点モデルとして選択する終点モデル選択手段と、
複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を表す値を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出する
ことにより得られる前記コネクティビティに対応する値を、1つの前記学習モデルの後に、他の1つの前記学習モデルを接続する接続コストとして、前記接続コストの累積値を最小にする、前記始点モデルから前記終点モデルまでの前記学習モデルの並びを、前記生成用モデルシーケンスとして求める生成用モデルシーケンス算出手段と、
前記生成用モデルシーケンスを構成する前記学習モデルについて、前記学習モデルが生成する時系列データの最後の一部分のデータ列と、後に接続される前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を小さくするように、前記学習モデルの前記内部状態の初期値を決定し、その初期値を、前記学習モデルに与えて、時系列データを生成する時系列データ生成手段と
して、コンピュータを機能させるためのプログラム。
The time series data is a learning model that divides time series data into a plurality of partially overlapping data and learns a time series pattern, and outputs it as model learning data used for learning a learning model having an internal state,
A plurality of model learning data obtained by dividing the time series data so as to assign one model learning data to one learning model, and assign the plurality of learning models to the learning model; One of the plurality of learning models after learning obtained by performing the learning of the time-series pattern by using the model learning data assigned to the learning model is time-series. Starting point model selecting means for selecting as a starting point model to be a starting point of a generating model sequence that is a sequence of the learning model used for generating data;
End point model selecting means for selecting one of the plurality of learning models as the end point model to be the end point of the generating model sequence;
For all of the plurality of learning models, a data string of the last part of the time series data generated by one learning model and a data string of the first part of the time series data generated by one other learning model A value representing an error is obtained by calculating the connectivity indicating the appropriateness of connection of the time series pattern learned by one other learning model after the time series pattern learned by one learning model. A value corresponding to the connectivity is set as a connection cost for connecting the other learning model after one learning model, and a cumulative value of the connection cost is minimized, from the start point model to the end point model. A generating model sequence calculating means for obtaining the sequence of the learning models as the generating model sequence;
For the learning model constituting the generation model sequence, the last partial data sequence of the time series data generated by the learning model and the first partial data of the time series data generated by the learning model connected later Time series data generating means for determining an initial value of the internal state of the learning model and giving the initial value to the learning model to generate time series data so as to reduce an error with a column. , A program to make a computer function.
時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力する分割手段と、
1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行う学習手段と、
複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出するコネクティビティ算出手段と
を備えるデータ処理装置。
A learning model that divides time series data into a plurality of partially overlapping data and learns a time series pattern, and outputs a model learning data used for learning a learning model having an internal state; ,
A plurality of model learning data obtained by dividing the time series data so as to assign one model learning data to one learning model, and assign the plurality of learning models to the learning model; Learning means for learning the time-series pattern by using the model learning data assigned to the learning model;
For all of the plurality of learning models, a data string of the last part of the time series data generated by one learning model and a data string of the first part of the time series data generated by one other learning model Connectivity calculation means for calculating an error as a connectivity representing the appropriateness of connection of the time series pattern learned by another one of the learning models after the time series pattern learned by one of the learning models; Processing equipment.
前記学習モデルは、RNN(Recurrent Neural Network)である
請求項5に記載のデータ処理装置。
The data processing apparatus according to claim 5, wherein the learning model is an RNN (Recurrent Neural Network).
データ処理装置が、
時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力し、
1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行い、
複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出する
ステップを含むデータ処理方法。
Data processing device
The time series data is a learning model that divides time series data into a plurality of partially overlapping data and learns a time series pattern, and outputs it as model learning data used for learning a learning model having an internal state,
A plurality of model learning data obtained by dividing the time series data so as to assign one model learning data to one learning model, and assign the plurality of learning models to the learning model; The time-series pattern learning is performed using the model learning data assigned to the learning model,
For all of the plurality of learning models, a data string of the last part of the time series data generated by one learning model and a data string of the first part of the time series data generated by one other learning model A data processing method including a step of calculating an error as connectivity representing appropriateness of connection of the time series pattern learned by one other learning model after the time series pattern learned by one learning model.
時系列データを、一部がオーバラップする複数のデータに分割し、時系列パターンを学習する学習モデルであって、内部状態を有する学習モデルの学習に用いるモデル学習用データとして出力する分割手段と、
1つの前記モデル学習用データを、1つの前記学習モデルに割り当てるように、前記時系列データを分割することにより得られる複数の前記モデル学習用データを、複数の前記学習モデルに割り当て、前記学習モデルによる時系列パターンの学習を、その学習モデルに割り当てられた前記モデル学習用データを用いて行う学習手段と、
複数の前記学習モデルすべてについて、1つの前記学習モデルが生成する時系列データの最後の一部分のデータ列と、他の1つの前記学習モデルが生成する時系列データの最初の一部分のデータ列との誤差を、1つの前記学習モデルが学習した前記時系列パターンの後に、他の1つの前記学習モデルが学習した前記時系列パターンが接続する適切さを表すコネクティビティとして算出するコネクティビティ算出手段と
して、コンピュータを機能させるためのプログラム。
A learning model that divides time series data into a plurality of partially overlapping data and learns a time series pattern, and outputs a model learning data used for learning a learning model having an internal state; ,
A plurality of model learning data obtained by dividing the time series data so as to assign one model learning data to one learning model, and assign the plurality of learning models to the learning model; Learning means for learning the time-series pattern by using the model learning data assigned to the learning model;
For all of the plurality of learning models, a data string of the last part of the time series data generated by one learning model and a data string of the first part of the time series data generated by one other learning model Connectivity calculation means for calculating an error as connectivity representing the appropriateness of connection of the time series pattern learned by one other learning model after the time series pattern learned by one of the learning models, A program that allows a computer to function.
JP2008233126A 2008-09-11 2008-09-11 Data processor, data processing method, and program Withdrawn JP2010067033A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008233126A JP2010067033A (en) 2008-09-11 2008-09-11 Data processor, data processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008233126A JP2010067033A (en) 2008-09-11 2008-09-11 Data processor, data processing method, and program

Publications (1)

Publication Number Publication Date
JP2010067033A true JP2010067033A (en) 2010-03-25

Family

ID=42192566

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008233126A Withdrawn JP2010067033A (en) 2008-09-11 2008-09-11 Data processor, data processing method, and program

Country Status (1)

Country Link
JP (1) JP2010067033A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016105232A (en) * 2014-12-01 2016-06-09 日本電信電話株式会社 Language model creation device, language model creation method, program, and recording medium
US9922292B2 (en) 2014-09-22 2018-03-20 International Business Machines Corporation Information processing apparatus, program, and information processing method
JP2019209058A (en) * 2018-06-08 2019-12-12 株式会社ニコン Estimation device, estimation system, estimation method, and estimation program
WO2022065561A1 (en) * 2020-09-28 2022-03-31 주식회사 마인즈랩 Method for classifying intention of character string and computer program
JP2022548770A (en) * 2019-09-24 2022-11-21 インターナショナル・ビジネス・マシーンズ・コーポレーション Mitigating Adversarial Influence in Machine Learning Systems
WO2024055647A1 (en) * 2022-09-15 2024-03-21 International Business Machines Corporation Machine-derived insights from time series data
WO2025009420A1 (en) * 2023-07-05 2025-01-09 パナソニックIpマネジメント株式会社 Control device, information processing device, and method

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9922292B2 (en) 2014-09-22 2018-03-20 International Business Machines Corporation Information processing apparatus, program, and information processing method
US9928468B2 (en) 2014-09-22 2018-03-27 International Business Machines Corporation Information processing apparatus, program, and information processing method
US10282679B2 (en) 2014-09-22 2019-05-07 International Business Machines Corporation Information processing apparatus, program, and information processing method
US10289964B2 (en) 2014-09-22 2019-05-14 International Business Machines Corporation Information processing apparatus, program, and information processing method
US11907809B2 (en) 2014-09-22 2024-02-20 International Business Machines Corporation Information processing apparatus, program, and information processing method
JP2016105232A (en) * 2014-12-01 2016-06-09 日本電信電話株式会社 Language model creation device, language model creation method, program, and recording medium
JP7125050B2 (en) 2018-06-08 2022-08-24 株式会社ニコン Estimation device, estimation system, estimation method and estimation program
JP2019209058A (en) * 2018-06-08 2019-12-12 株式会社ニコン Estimation device, estimation system, estimation method, and estimation program
JP2022548770A (en) * 2019-09-24 2022-11-21 インターナショナル・ビジネス・マシーンズ・コーポレーション Mitigating Adversarial Influence in Machine Learning Systems
JP7507851B2 (en) 2019-09-24 2024-06-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Mitigating Adversarial Influence in Machine Learning Systems
KR20220042940A (en) * 2020-09-28 2022-04-05 주식회사 마인즈랩 Method and computer program for classifying the intent of strings
WO2022065561A1 (en) * 2020-09-28 2022-03-31 주식회사 마인즈랩 Method for classifying intention of character string and computer program
KR102456646B1 (en) * 2020-09-28 2022-10-21 주식회사 마인즈랩 Method and computer program for classifying the intent of strings
WO2024055647A1 (en) * 2022-09-15 2024-03-21 International Business Machines Corporation Machine-derived insights from time series data
GB2636668A (en) * 2022-09-15 2025-06-25 Ibm Machine-derived insights from time series data
WO2025009420A1 (en) * 2023-07-05 2025-01-09 パナソニックIpマネジメント株式会社 Control device, information processing device, and method

Similar Documents

Publication Publication Date Title
JP4803212B2 (en) Data processing apparatus, data processing method, and program
JP4169063B2 (en) Data processing apparatus, data processing method, and program
KR20070100160A (en) Learning devices, learning methods, and programs
JP2010067033A (en) Data processor, data processing method, and program
JP4710931B2 (en) Learning device, learning method, and program
JP4710933B2 (en) Learning device, learning method, and program
JP4710932B2 (en) Learning device, learning method, and program
Henaff et al. Model-based planning with discrete and continuous actions
US20180181089A1 (en) Control device and control method
JP4201012B2 (en) Data processing apparatus, data processing method, and program
US11670403B2 (en) Method and apparatus for generating chemical structure using neural network
JP2010266975A (en) Learning device, learning method, data generation device, data generation method, and program
JP2010266974A (en) Information processing apparatus, information processing method, and program
JP2009140454A (en) Data processing apparatus, data processing method, and program
JP4169038B2 (en) Information processing apparatus, information processing method, and program
Comanici et al. Knowledge representation for reinforcement learning using general value functions
Malazgirt et al. Tauriel: Targeting traveling salesman problem with a deep reinforcement learning inspired architecture
US20220164639A1 (en) A system for mapping a neural network architecture onto a computing core and a method of mapping a neural network architecture onto a computing core
JP2009053782A (en) Data processing apparatus, data processing method, and program
CN112352248A (en) Apparatus and method for constructing a neural network with feedforward and feedback paths using a parametric genome characterizing neural network connections as building blocks
JP2010282556A (en) Information processing apparatus, information processing method, and program
Schaff Neural approaches to co-optimization in robotics
CN121348713A (en) Intelligent body control method and related device
JP2007280057A (en) Data processing apparatus, data processing method, and program
Das Path planning in a simple grid in static environment using policy iteration

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20111206