JP2010282556A - Information processor, information processing method, and program - Google Patents
Information processor, information processing method, and program Download PDFInfo
- Publication number
- JP2010282556A JP2010282556A JP2009137317A JP2009137317A JP2010282556A JP 2010282556 A JP2010282556 A JP 2010282556A JP 2009137317 A JP2009137317 A JP 2009137317A JP 2009137317 A JP2009137317 A JP 2009137317A JP 2010282556 A JP2010282556 A JP 2010282556A
- Authority
- JP
- Japan
- Prior art keywords
- learning
- model
- unit
- time
- prediction
- 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
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
Description
本発明は、情報処理装置、情報処理方法、及び、プログラムに関し、特に、例えば、時系列パターンの追加学習を、容易に行うことができるようにする情報処理装置、情報処理方法、及び、プログラムに関する。 The present invention relates to an information processing device, an information processing method, and a program, and more particularly, to an information processing device, an information processing method, and a program that make it possible to easily perform additional learning of a time series pattern, for example. .
時系列パターンを学習するパターン学習モデルとしては、例えば、RNN(Recurrent Neural Network)等のNN(Neural Network)や、HMM(Hidden Marcov Model)等の状態遷移確率モデル等がある。 Examples of pattern learning models for learning time series patterns include NN (Neural Network) such as RNN (Recurrent Neural Network), state transition probability model such as HMM (Hidden Marcov Model), and the like.
また、新たな時系列パターンの学習を行う規模拡張性に優れた学習方法として、パターン学習モデルをモジュール化した学習モジュールを複数用意し、複数の学習モジュールのそれぞれにおいて、個別の時系列パターンを学習するモジュール型学習がある。 In addition, as a learning method with excellent scalability to learn new time series patterns, multiple learning modules that modularize pattern learning models are prepared, and individual time series patterns are learned in each of the learning modules. There is modular learning.
モジュール型学習では、複数の学習モジュールの1つ1つが、1つの時系列パターンを学習し、これにより、1つの学習モジュールにおいて、1つのパターンが記憶(獲得)される。 In modular learning, each of a plurality of learning modules learns one time-series pattern, whereby one pattern is stored (acquired) in one learning module.
モジュール型学習においては、ある学習モジュールと、他の学習モジュールとの間で、時系列パターンの記憶の干渉がなく、時系列パターンの記憶の安定性が高い。そして、モジュール型学習は、学習モジュールを追加することにより、新たな時系列パターンを学習する追加学習を、容易に行うことができるという規模拡張性に優れる。 In modular learning, there is no interference in storing time series patterns between a certain learning module and other learning modules, and the storage stability of time series patterns is high. Module-type learning is excellent in scale extensibility that additional learning for learning a new time series pattern can be easily performed by adding a learning module.
モジュール型学習を利用した技術として、複数の学習モジュールを、階層構造を構成するように接続し、時系列パターンの階層的な記憶(階層記憶)を実現する階層化技術がある。 As a technique using modular learning, there is a hierarchization technique in which a plurality of learning modules are connected to form a hierarchical structure to realize hierarchical storage (hierarchical storage) of time series patterns.
階層化技術では、下位階層の複数の学習モジュールそれぞれにおいて、学習後のパターン学習モデルと、時系列データとを用いた予測(時系列データの予測、又は、時系列データが属するカテゴリ(パターン学習モデル)の予測(認識))が行われることにより、予測の尤度を表すスコアが、例えば、各時刻において求められる。 In the hierarchization technique, in each of a plurality of learning modules in the lower hierarchy, prediction using a learned pattern learning model and time series data (prediction of time series data or a category to which time series data belongs (pattern learning model ) Prediction (recognition)) is performed, for example, a score representing the likelihood of prediction is obtained at each time.
すなわち、パターン学習モデルが、例えば、RNNである場合には、学習モジュールでは、RNNを用いて、時系列データの予測値が求められ、その予測値の予測誤差(に反比例するような値)が、スコアとして求められる。また、パターン学習モデルが、例えば、HMMである場合には、学習モジュールでは、時系列データがHMMから観測される確率が、スコアとして求められる。 That is, when the pattern learning model is, for example, an RNN, the learning module uses the RNN to obtain the predicted value of the time series data, and the prediction error of the predicted value (a value that is inversely proportional to the predicted value) , As a score. Further, when the pattern learning model is, for example, an HMM, the probability that the time series data is observed from the HMM is obtained as a score in the learning module.
そして、下位階層の複数の学習モジュールのパターン学習モデルのうちの、最も良いスコアが得られるパターン学習モデルを識別するモデルID(Identification)に対応するコンポーネントだけが1で、他のモデルIDに対応するコンポーネントが0のベクトル(モデルIDベクトル)の系列や、複数の学習モジュールそれぞれで得られたスコアに対応する値をコンポーネントとするベクトル(重み付けベクトル)の系列が、上位階層の学習モジュールに対して、入力として与えられる(例えば、特許文献1を参照)。 Of the pattern learning models of multiple learning modules in the lower hierarchy, only the component corresponding to the model ID (Identification) that identifies the pattern learning model that obtains the best score is 1, corresponding to other model IDs A series of vectors with zero component (model ID vector) and a series of vectors (weighting vectors) whose components are values corresponding to scores obtained by each of a plurality of learning modules are It is given as an input (see, for example, Patent Document 1).
上位階層の学習モジュールでは、下位階層からの入力を用いて、下位階層の学習モジュールと同様の処理が行われる。 In the upper level learning module, processing similar to that of the lower level learning module is performed using input from the lower level.
階層化技術において、新たな時系列パターンを学習するために、下位階層の学習モジュールを追加する場合、上位階層の学習モジュールに対する入力の次元を変更する必要があることがある。 In the hierarchization technique, when a lower-level learning module is added in order to learn a new time-series pattern, it may be necessary to change the input dimension to the higher-level learning module.
すなわち、例えば、上述のモデルIDベクトルや、重み付けベクトルは、下位階層の学習モジュールの数に等しい次元のベクトルとなる。 That is, for example, the above-described model ID vector and weighting vector are vectors having dimensions equal to the number of learning modules in the lower hierarchy.
したがって、モデルIDベクトルや、重み付けベクトルを、上位階層の学習モジュールに対する入力とする場合において、下位階層に学習モジュールを追加すると、上位階層の学習モジュールに対する入力となるベクトル(モデルIDベクトル、重み付けベクトル)の次元が変更される。 Therefore, when a model ID vector or weighting vector is used as an input to a higher-level learning module, if a learning module is added to the lower-level hierarchy, a vector that becomes an input to the higher-level learning module (model ID vector, weighting vector) The dimension of is changed.
そして、上位階層の学習モジュールに対する入力となるベクトルの次元が変更されると、上位階層の学習モジュールのパターン学習モデルは、変更後の次元のベクトルを用いて、学習し直す必要がある。 When the dimension of a vector serving as an input to the upper hierarchy learning module is changed, the pattern learning model of the upper hierarchy learning module needs to be learned again using the changed dimension vector.
さらに、上位階層の学習モジュールに対して入力として与える、変更後の次元のベクトルを求めるために、下位階層の学習モジュールでも、学習をし直す必要がある。 Furthermore, in order to obtain the changed dimension vector to be given as an input to the upper hierarchy learning module, it is necessary to perform learning again in the lower hierarchy learning module.
ここで、モデルIDベクトルを、上位階層の学習モジュールに対する入力とする場合には、上位階層の学習モジュールでは、下位階層の各学習モジュール(のパターン学習モデル)が獲得した時系列パターンどうしの距離構造を反映した学習を行うことが困難である。 Here, when the model ID vector is used as an input to the higher-level learning module, the upper-level learning module uses a distance structure between time-series patterns acquired by each lower-level learning module (pattern learning model). It is difficult to perform learning that reflects.
すなわち、モデルIDは、下位階層の各学習モジュールが時系列パターンの学習に用いた時系列データの空間(入力空間)の距離構造、ひいては、各学習モジュールが獲得した時系列パターンどうしの距離構造とは無関係である。このため、そのようなモデルIDをコンポーネントとするモデルIDベクトルを、上位階層の学習モジュールに対する入力とする場合には、上位階層の学習モジュールの学習において、下位階層の各学習モジュールが獲得した時系列パターンどうしの距離構造は考慮されない(考慮することができない)。したがって、上位階層の学習モジュールのパターン学習モデルには、下位階層の各学習モジュールが獲得した時系列パターンどうしの距離構造は反映されない。 In other words, the model ID is the distance structure of the time series data space (input space) used by each lower learning module for learning the time series pattern, and the distance structure between the time series patterns acquired by each learning module. Is irrelevant. Therefore, when a model ID vector having such a model ID as a component is used as an input to a higher-level learning module, the time series acquired by each lower-level learning module in learning of the higher-level learning module The distance structure between patterns is not considered (cannot be considered). Therefore, the pattern learning model of the upper layer learning module does not reflect the distance structure between the time series patterns acquired by the lower layer learning modules.
本発明は、このような状況に鑑みてなされたものであり、時系列パターンの追加学習を、学習をし直すことなく(再学習なしに)、容易に行うことができるようにするものである。 The present invention has been made in view of such a situation, and makes it possible to easily perform additional learning of a time series pattern without re-learning (without re-learning). .
本発明の第1の側面の情報処理装置、又は、プログラムは、時系列パターンを学習するパターン学習モデルの学習を行う複数の学習モジュールを有する複数の学習手段が階層構造を構成するように接続されており、上位階層の前記学習手段が有する前記学習モジュールは、その上位階層の前記学習手段の下位階層の前記学習手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記パターン学習モデルの学習を行う情報処理装置、又は、情報処理装置として、コンピュータを機能させるためのプログラムである。 The information processing apparatus or the program according to the first aspect of the present invention is connected such that a plurality of learning units having a plurality of learning modules that learn a pattern learning model for learning a time-series pattern constitute a hierarchical structure. The learning module included in the learning unit in the upper layer uses the model parameter series that defines the pattern learning model included in the learning unit in the lower layer of the learning unit in the upper layer. It is a program for causing a computer to function as an information processing apparatus for learning a model or an information processing apparatus.
本発明の第1の側面の情報処理方法は、時系列パターンを学習するパターン学習モデルの学習を行う複数の学習モジュールを有する複数の学習手段が階層構造を構成するように接続されており、上位階層の前記学習手段が有する前記学習モジュールが、その上位階層の前記学習手段の下位階層の前記学習手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記パターン学習モデルの学習を行うステップを含む情報処理方法である。 In the information processing method according to the first aspect of the present invention, a plurality of learning units having a plurality of learning modules for learning a pattern learning model for learning a time series pattern are connected so as to form a hierarchical structure. The learning module of the learning means of the hierarchy uses the sequence of model parameters that define the pattern learning model of the learning means of the lower hierarchy of the learning means of the upper hierarchy to learn the pattern learning model. It is an information processing method including the step to perform.
以上のような第1の側面においては、時系列パターンを学習するパターン学習モデルの学習を行う複数の学習モジュールを有する複数の学習手段が、階層構造を構成するように接続されており、上位階層の前記学習手段が有する前記学習モジュールは、その上位階層の前記学習手段の下位階層の前記学習手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記パターン学習モデルの学習を行う。 In the first aspect as described above, a plurality of learning means having a plurality of learning modules for learning a pattern learning model for learning a time series pattern are connected to form a hierarchical structure, The learning module of the learning means learns the pattern learning model using a series of model parameters defining the pattern learning model of the learning means in the lower hierarchy of the learning means in the upper hierarchy. .
本発明の第2の側面の情報処理装置、又は、プログラムは、時系列パターンを学習するパターン学習モデルを用いて、時系列データを予測する複数の予測モジュールを有する複数の予測手段が階層構造を構成するように接続されており、上位階層の前記予測手段が有する前記予測モジュールは、その上位階層の前記予測手段の下位階層の前記予測手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記モデルパラメータを予測する情報処理装置、又は、情報処理装置として、コンピュータを機能させるためのプログラムである。 The information processing apparatus or the program according to the second aspect of the present invention uses a pattern learning model for learning a time-series pattern, and a plurality of prediction units having a plurality of prediction modules for predicting time-series data have a hierarchical structure. The prediction module, which is connected so as to be configured and is included in the prediction unit in the upper layer, has a series of model parameters defining the pattern learning model included in the prediction unit in the lower layer of the prediction unit in the upper layer. A program for causing a computer to function as an information processing apparatus that predicts the model parameter or as an information processing apparatus.
本発明の第2の側面の情報処理方法は、時系列パターンを学習するパターン学習モデルを用いて、時系列データを予測する複数の予測モジュールを有する複数の予測手段が階層構造を構成するように接続されており、上位階層の前記予測手段が有する前記予測モジュールが、その上位階層の前記予測手段の下位階層の前記予測手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記モデルパラメータを予測するステップを含む情報処理方法である。 The information processing method according to the second aspect of the present invention is such that a plurality of prediction means having a plurality of prediction modules for predicting time-series data form a hierarchical structure using a pattern learning model for learning time-series patterns. The prediction module included in the prediction unit connected to the upper layer uses a sequence of model parameters that defines the pattern learning model included in the prediction unit included in the prediction unit in the lower layer of the prediction unit in the upper layer, An information processing method including a step of predicting model parameters.
以上のような第2の側面においては、時系列パターンを学習するパターン学習モデルを用いて、時系列データを予測する複数の予測モジュールを有する複数の予測手段が、階層構造を構成するように接続されており、上位階層の前記予測手段が有する前記予測モジュールは、その上位階層の前記予測手段の下位階層の前記予測手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記モデルパラメータを予測する。 In the second aspect as described above, a plurality of prediction units having a plurality of prediction modules for predicting time-series data using a pattern learning model for learning a time-series pattern are connected to form a hierarchical structure. The prediction module included in the prediction unit in the upper layer uses the model parameter series that defines the pattern learning model included in the prediction unit included in the prediction unit in the lower layer of the prediction unit in the upper layer. Predict parameters.
なお、情報処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。 Note that the information processing apparatus may be an independent apparatus or may be an internal block constituting one apparatus.
また、プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。 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, additional learning of a time series pattern can be easily performed.
[学習装置の一実施の形態] [One Embodiment of Learning Device]
図1は、本発明の情報処理装置を適用した学習装置の一実施の形態の構成例を示すブロック図である。 FIG. 1 is a block diagram showing a configuration example of an embodiment of a learning apparatus to which an information processing apparatus of the present invention is applied.
図1において、学習装置は、時系列シーケンス学習部11、モデルパラメータシーケンス生成部12、及び、時系列シーケンス学習部13から構成される。
In FIG. 1, the learning device includes a time series
図1の学習装置では、時系列パターンを学習するパターン学習モデルの学習を行う複数の学習モジュールを有する複数の学習手段としての2つの時系列シーケンス学習部11及び13が、2階層の階層構造を構成するように接続されている。
In the learning apparatus of FIG. 1, two time-series
すなわち、図1では、最下位階層である第1階層の時系列シーケンス学習部11と、最上位階層である第2階層の時系列シーケンス学習部13とが、上位階層と下位階層との間のインタフェースとなるモデルパラメータシーケンス生成部12を介して接続されている。
That is, in FIG. 1, the time-series
最下位階層である第1階層の時系列シーケンス学習部11には、外部から、図1の学習装置での学習に用いられる時系列データが供給される。
The time series data used for learning in the learning apparatus of FIG. 1 is supplied from the outside to the time series
時系列シーケンス学習部11は、パターン学習モデルの学習を行う複数の学習モジュールを有し、学習モジュールは、外部からの時系列データを用いて、パターン学習モデルの学習を行う。
The time-series
すなわち、時系列シーケンス学習部11が有する学習モジュールは、外部からの時系列データを用いて、パターン学習モデルを定義するモデルパラメータを更新する更新学習を行い、そのモデルパラメータを、モデルパラメータシーケンス生成部12に供給する。
That is, the learning module included in the time-series
ここで、外部から、最下位階層の時系列シーケンス学習部11に与える時系列データとしては、例えば、ロボットに所定のアクションを行わせるために、各種のアクチュエータに与えるアクションデータや、ロボットが内蔵する各種のセンサが出力するセンサデータをコンポーネントとするベクトルを採用することができる。
Here, as time-series data to be given to the time-series
また、外部から、最下位階層の時系列シーケンス学習部11に与える時系列データとしては、例えば、テレビジョン放送その他の番組等のコンテンツを構成する画像や音声のAV(Audio Visual)データ(の各種の特徴量をコンポーネントとするベクトル)を採用することができる。
Further, as time-series data given to the time-series
外部からの時系列データとして、アクションデータやセンサデータをコンポーネントとするベクトルを採用する場合には、学習後のパターン学習モデルを用いて、次の時刻のアクションデータやセンサデータを予測し、そのアクションデータの予測値をロボットに与えて、ロボットに、自律的なアクション(行動)を行わせることが可能となる。 When adopting a vector with action data and sensor data as components as time series data from the outside, the action data and sensor data at the next time are predicted using the learned pattern learning model, and the action It is possible to give the robot a predicted value of the data and cause the robot to perform an autonomous action (action).
また、外部からの時系列データとして、コンテンツのAVデータを採用する場合には、学習後のパターン学習モデルを用いて、コンテンツ(の全体、又は、部分ごと)のクラスタリング等を行うことが可能となる。 In addition, when content AV data is adopted as time-series data from the outside, it is possible to perform clustering of content (entirely or partly) using a pattern learning model after learning. Become.
モデルパラメータシーケンス生成部12は、最下位階層である第1階層の時系列シーケンス学習部11から供給されるモデルパラメータから、上位階層である第2階層に時系列データとして与えるモデルパラメータの系列(時系列シーケンス学習部11のリソースダイナミクス)を生成し、第2階層の時系列シーケンス学習部13に供給する。
The model
すなわち、モデルパラメータシーケンス生成部12は、時系列シーケンス学習部11から供給されるモデルパラメータを一時記憶する。そして、モデルパラメータシーケンス生成部12は、外部からのある時系列データに対して、時系列シーケンス学習部11から供給されるモデルパラメータのすべてを記憶すると、そのモデルパラメータの系列を、時系列シーケンス学習部13に供給する。
That is, the model parameter
最上位階層である第2階層の時系列シーケンス学習部13は、時系列シーケンス学習部11と同様に、パターン学習モデルの学習を行う複数の学習モジュールを有する。
Similar to the time-series
そして、時系列シーケンス学習部13の学習モジュールは、モデルパラメータシーケンス生成部12からのモデルパラメータの系列、すなわち、下位階層(時系列シーケンス学習部13の階層の直下の階層)の時系列シーケンス学習部11が有するパターン学習モデルを定義するモデルパラメータの系列を用いて、時系列シーケンス学習部13のパターン学習モデルの学習を行う。
Then, the learning module of the time series
図2は、図1の学習装置の処理を説明するフローチャートである。 FIG. 2 is a flowchart for explaining processing of the learning apparatus in FIG.
第1階層の時系列シーケンス学習部11は、外部から、時系列データが供給されるのを待って、ステップS11において、外部からの時系列データを用いて、パターン学習モデルを学習する学習処理(第1階層の学習処理)を行う。
The time-series
さらに、第1階層の時系列シーケンス学習部11は、学習後のパターン学習モデルのモデルパラメータを、モデルパラメータシーケンス生成部12に供給して、処理は、ステップS11からステップS12に進む。
Furthermore, the time-series
ステップS12では、モデルパラメータシーケンス生成部12は、時系列シーケンス学習部11からのモデルパラメータの系列を生成し、第2階層の時系列シーケンス学習部13に供給して、処理は、ステップS13に進む。
In step S12, the model parameter
ステップS13では、第2階層の時系列シーケンス学習部13が、モデルパラメータシーケンス生成部12からのモデルパラメータの系列、つまり、下位階層(図1では、第1階層)の時系列シーケンス学習部11が有するパターン学習モデルのモデルパラメータの系列を用いて、パターン学習モデルを学習する学習処理(第2階層の学習処理)を行い、処理は終了する。
In step S13, the time-series
[時系列シーケンス学習部11の第1の構成例] [First Configuration Example of Time Series Sequence Learning Unit 11]
図3は、図1の最下位階層である第1階層(最上位階層以外の階層)の時系列シーケンス学習部11の第1の構成例を示すブロック図である。
FIG. 3 is a block diagram showing a first configuration example of the time-series
図3の時系列シーケンス学習部11は、競合学習によって、時系列パターンを獲得する。
The time-series
すなわち、図3において、時系列シーケンス学習部11は、時系列データ入力部21、複数であるN個の学習モジュール301ないし30N、担当モジュール決定部41、及び、モデルパラメータ出力部42から構成される。
3, the time-series
時系列データ入力部21には、外部からの時系列データが供給される。
The time series
時系列データ入力部21は、外部からの時系列データを受信し、時系列シーケンス学習部11での学習に用いる学習データとして、学習モジュール301ないし30Nのすべてに供給する。
The time series
学習モジュール30i(i=1,2,・・・,N)は、時系列データ入力部21からの学習用データを用いて、パターン学習モデルを定義する複数のモデルパラメータを更新する更新学習を、競合学習によって行う。
The learning module 30 i (i = 1, 2,..., N) uses the learning data from the time series
すなわち、学習モジュール30iは、学習データ入力部31i、モデル学習部32i、モデル記憶部33i、予測部34i、及び、予測誤差計算部35iから構成される。
That is, the learning module 30 i includes a learning data input unit 31 i , a
学習データ入力部31iは、時系列データ入力部21からの学習データを受信し、予測部34iに供給する。また、学習データ入力部31iは、担当モジュール決定部41からの指示に従い、時系列データ入力部21からの学習データを、モデル学習部32iに供給する。
The learning data input unit 31 i receives the learning data from the time series
モデル学習部32iは、学習データ入力部31iからの学習データを用いて、モデル記憶部33iに記憶されたパターン学習モデルの複数のモデルパラメータを更新する更新学習を行う。
The
モデル記憶部33iは、複数のモデルパラメータによって定義され、時系列パターンを学習(獲得)するパターン学習モデルを記憶する。すなわち、モデル記憶部33iは、パターン学習モデルを定義する複数のモデルパラメータを記憶する。 The model storage unit 33 i stores a pattern learning model that is defined by a plurality of model parameters and learns (acquires) a time-series pattern. That is, the model storage unit 33 i stores a plurality of model parameters that define the pattern learning model.
ここで、パターン学習モデルとしては、例えば、HMM(Hidden Markov Model)等の状態遷移確率モデル、RNN,FNN(Feed Forward Neural Network),RNNPB(RNN with Parametric Bias)等のニューラルネットワーク、SVR(Support Vector Regression)等の関数近似器等を採用することができる。 Here, as the pattern learning model, for example, a state transition probability model such as HMM (Hidden Markov Model), a neural network such as RNN, FNN (Feed Forward Neural Network), RNNPB (RNN with Parametric Bias), SVR (Support Vector) A function approximator such as Regression) can be employed.
例えば、HMMについては、HMMにおいて状態が遷移する確率を表す状態遷移確率や、状態が遷移するときに、HMMからある観測値が出力される確率を表す出力確率、又は確率密度を表す出力確率密度関数が、HMMのモデルパラメータである。 For example, for an HMM, a state transition probability that represents the probability that the state will transition in the HMM, an output probability that represents the probability that a certain observation value is output from the HMM when the state transitions, or an output probability density that represents the probability density The function is a model parameter of the HMM.
また、例えば、ニューラルネットワークについては、ニューロンに相当するユニット(ノード)において、他のユニットからの入力に付されるウエイト(重み)が、ニューラルネットワークのモデルパラメータである。 Further, for example, in a neural network, in a unit (node) corresponding to a neuron, a weight (weight) given to an input from another unit is a model parameter of the neural network.
なお、HMMの状態遷移確率や、出力確率、又は出力確率密度関数、ニューラルネットワークのウエイトは、いずれも複数存在する。 There are a plurality of HMM state transition probabilities, output probabilities, output probability density functions, and neural network weights.
予測部34iは、学習データ入力部31iからの学習データを入力データとして、モデル記憶部33iに記憶されたパターン学習モデルに与えることで、その入力データの予測値である出力データを求め、予測誤差計算部35iに供給する。 The prediction unit 34 i obtains output data which is a predicted value of the input data by giving the learning data from the learning data input unit 31 i as input data to the pattern learning model stored in the model storage unit 33 i. And supplied to the prediction error calculation unit 35 i .
予測誤差計算部35iは、予測部34iからの予測値の予測誤差を求め、担当モジュール決定部41に供給する。すなわち、予測誤差計算部35iは、予測部34iからの予測値と、学習データ入力部31iが予測部34iに供給する学習データとの差分をとることで、予測値の予測誤差を求めて、担当モジュール決定部41に供給する。
The prediction error calculation unit 35 i obtains the prediction error of the prediction value from the prediction unit 34 i and supplies it to the assigned
担当モジュール決定部41は、予測誤差計算部351ないし35Nそれぞれからの予測誤差に基づき、学習データの学習を担当させる担当モジュールとなる学習モジュール30iを決定する。
Representative
すなわち、担当モジュール決定部41は、予測誤差計算部351ないし35Nそれぞれからの予測誤差に基づき、学習モジュール301ないし30Nのうちの、予測誤差が最小の予測値が得られる学習モジュール30iを、担当モジュールに決定する。
In other words, the assigned
そして、担当モジュール決定部41は、担当モジュールを表す情報を、モデルパラメータ出力部42に供給するとともに、担当モジュールとなった学習モジュール30iに対して、学習の指示を供給する。
Then, the assigned
モデルパラメータ出力部42は、担当モジュール決定部41からの情報に基づき、担当モジュールとなった学習モジュール30iを認識する。さらに、モデルパラメータ出力部42は、担当モジュールとなった学習モジュール30iのモデル記憶部33iに記憶されたモデルパラメータを読み出し、モデルパラメータシーケンス生成部12(図1)に供給する。
The model parameter output unit 42 recognizes the learning module 30 i that has become the responsible module based on the information from the responsible
[時系列シーケンス学習部13の第1の構成例] [First Configuration Example of Time Series Sequence Learning Unit 13]
図4は、図1の最上位階層である第2階層の時系列シーケンス学習部13の第1の構成例を示すブロック図である。
FIG. 4 is a block diagram illustrating a first configuration example of the time-series
図4の時系列シーケンス学習部13は、図3の時系列シーケンス学習部11と同様に構成され、競合学習によって、時系列パターンを獲得する。
The time series
すなわち、図4において、時系列シーケンス学習部13は、時系列データ入力部51、複数であるN個の学習モジュール601ないし60N、及び、担当モジュール決定部71から構成される。
That is, in FIG. 4, the time-series
ここで、時系列シーケンス学習部13は、図3のモデルパラメータ出力部42に相当するブロックが設けられていないことを除いて、図3の時系列シーケンス学習部11と同様に構成される。
Here, the time series
また、本実施の形態では、説明を簡単にするため、学習装置において、上位階層の時系列シーケンス学習部13が有する学習モジュール60iの数を、下位階層の時系列シーケンス学習部11が有する学習モジュール30iの数と同一の数とするようにしたが、上位階層の時系列シーケンス学習部13が有する学習モジュール60iの数は、下位階層の時系列シーケンス学習部11が有する学習モジュール30iの数よりも少ない1以上の数、又は複数とすることができる。予測装置においても同様である。
Further, in the present embodiment, in order to simplify the explanation, the learning device has the number of learning modules 60 i included in the time-series
時系列データ入力部51には、第1階層の時系列シーケンス学習部11(図1)から、モデルパラメータシーケンス生成部12を経由して、モデルパラメータの系列が、時系列データとして供給される。
The time series data input unit 51 is supplied with a series of model parameters as time series data from the time series sequence learning unit 11 (FIG. 1) in the first hierarchy via the model parameter
時系列データ入力部51は、第1階層の時系列シーケンス学習部11から、モデルパラメータシーケンス生成部12を経由して供給されるモデルパラメータの系列を受信し、図4の時系列シーケンス学習部13での学習に用いる学習データとして、学習モジュール601ないし60Nのすべてに供給する。
The time-series data input unit 51 receives the model parameter sequence supplied from the time-series
学習モジュール60i(i=1,2,・・・,N)は、時系列データ入力部51からの学習用データを用いて、パターン学習モデルを定義する複数のモデルパラメータを更新する更新学習を、競合学習によって行う。 The learning module 60 i (i = 1, 2,..., N) uses the learning data from the time-series data input unit 51 to perform update learning for updating a plurality of model parameters that define the pattern learning model. , By competitive learning.
すなわち、学習モジュール60iは、学習データ入力部61i、モデル学習部62i、モデル記憶部63i、予測部64i、及び、予測誤差計算部65iから構成される。 That is, the learning module 60 i includes a learning data input unit 61 i , a model learning unit 62 i , a model storage unit 63 i , a prediction unit 64 i , and a prediction error calculation unit 65 i .
学習データ入力部61iないし予測誤差計算部65iは、それぞれ、図3の学習データ入力部31iないし予測誤差計算部35iと同様に構成される。 The learning data input unit 61 i or the prediction error calculation unit 65 i is configured similarly to the learning data input unit 31 i or the prediction error calculation unit 35 i of FIG.
すなわち、学習データ入力部61iは、時系列データ入力部51からの学習データを受信し、予測部64iに供給する。また、学習データ入力部61iは、担当モジュール決定部71からの指示に従い、時系列データ入力部51からの学習データを、モデル学習部62iに供給する。
That is, the learning data input unit 61 i receives the learning data from the time series data input unit 51 and supplies it to the prediction unit 64 i . In addition, the learning data input unit 61 i supplies the learning data from the time-series data input unit 51 to the model learning unit 62 i in accordance with an instruction from the assigned
モデル学習部62iは、学習データ入力部61iからの学習データを用いて、モデル記憶部63iに記憶されたパターン学習モデルの複数のモデルパラメータを更新する更新学習を行う。 The model learning unit 62 i uses the learning data from the learning data input unit 61 i to perform update learning that updates a plurality of model parameters of the pattern learning model stored in the model storage unit 63 i .
モデル記憶部63iは、複数のモデルパラメータによって定義され、時系列パターンを学習するパターン学習モデル(を定義するモデルパラメータ)を記憶する。 The model storage unit 63 i stores a pattern learning model (model parameter for defining) that is defined by a plurality of model parameters and learns a time-series pattern.
予測部64iは、学習データ入力部61iからの学習データを入力データとして、モデル記憶部63iに記憶されたパターン学習モデルに与えることで、その入力データの予測値である出力データを求め、予測誤差計算部65iに供給する。 The prediction unit 64 i uses the learning data from the learning data input unit 61 i as input data to the pattern learning model stored in the model storage unit 63 i to obtain output data that is a predicted value of the input data. To the prediction error calculator 65 i .
予測誤差計算部65iは、予測部64iからの予測値の予測誤差を求め、担当モジュール決定部71に供給する。
The prediction error calculation unit 65 i obtains the prediction error of the prediction value from the prediction unit 64 i and supplies it to the assigned
担当モジュール決定部71は、予測誤差計算部651ないし65Nそれぞれからの予測誤差に基づき、学習データの学習を担当させる担当モジュールとなる学習モジュール60iを決定する。
The assigned
すなわち、担当モジュール決定部71は、図3の担当モジュール決定部41と同様に、予測誤差計算部651ないし65Nそれぞれからの予測誤差に基づき、学習モジュール601ないし60Nのうちの、予測誤差が最小の予測値が得られる学習モジュール60iを、担当モジュールに決定する。
That is, the assigned
そして、担当モジュール決定部71は、担当モジュールとなった学習モジュール60iに対して、学習の指示を供給する。
Then, the assigned
[学習処理] [Learning process]
図5は、図3の時系列シーケンス学習部11が、図2のステップS11で行う第1階層の学習処理を説明するフローチャートである。
FIG. 5 is a flowchart illustrating the first-layer learning process performed by the time-series
時系列データ入力部21は、外部から、学習に用いるのに十分な数(複数)の時系列データが供給されるのを待って、ステップS21において、その時系列データを受信し、処理は、ステップS22に進む。
The time-series
ステップS22では、各学習モジュール30iのモデル学習部32iが、モデル記憶部33iに記憶されたパターン学習モデルのモデルパラメータを、例えば、乱数等によって初期化して、処理は、ステップS23に進む。
In step S22, the
ステップS23では、時系列データ入力部21は、外部からの複数の時系列データのうちの、まだ、学習に用いていない1つの時系列データを、学習データとして、時系列シーケンス学習部11を構成する学習モジュール301ないし30Nに供給する。
In step S23, the time-series
さらに、ステップS23では、各学習モジュール30iの予測部34iが、モデル記憶部33iに記憶されたモデルパラメータを読み込み、処理は、ステップS24に進む。 Further, in step S23, the prediction unit 34 i of each learning module 30 i is, reads the model parameters stored in the model storage unit 33 i, the process proceeds to step S24.
ステップS24では、各学習モジュール30iの予測部34iが、ステップS23でモデル記憶部33iから読み込んだモデルパラメータによって定義されるパターン学習モデルを用い、時系列データ入力部21からの学習データを、パターン学習モデルへの入力データとして、入力データの予測値である出力データを求め、予測誤差計算部35iに供給する。
In step S24, the prediction unit 34 i of each learning module 30 i is, using pattern learning model defined by the read model parameters from the model storage unit 33 i in a step S23, the learning data from the time-series
すなわち、各学習モジュール30iでは、学習データ入力部31iが、時系列データ入力部21からの学習データを、予測部34iに供給する。予測部34iは、学習データ入力部31iからの学習データを入力データとして、パターン学習モデルに与えることで、その入力データの予測値である出力データを求め、予測誤差計算部35iに供給する。
That is, in each learning module 30 i , the learning data input unit 31 i supplies the learning data from the time series
そして、処理は、ステップS24からステップS25に進み、各学習モジュール30iの予測誤差計算部35iが、予測部34iからの予測値の予測誤差を求める。さらに、予測誤差計算部35iは、予測誤差を、担当モジュール決定部41に供給して、処理は、ステップS25からS26に進む。
Then, the process proceeds from step S24 to step S25, and the prediction error calculation unit 35 i of each learning module 30 i obtains the prediction error of the prediction value from the prediction unit 34 i . Furthermore, the prediction error calculation unit 35 i supplies the prediction error to the responsible
ステップS26では、担当モジュール決定部41が、予測誤差計算部351ないし35Nそれぞれからの予測誤差に基づき、学習モジュール301ないし30Nの中から、担当モジュールとなる(1つの)学習モジュール30iを決定する。 In step S26, the assigned module determining unit 41 (one) learning module 30 that becomes the assigned module from the learning modules 30 1 to 30 N based on the prediction errors from the prediction error calculating units 35 1 to 35 N, respectively. i is determined.
さらに、担当モジュール決定部41は、担当モジュールを表す情報を、モデルパラメータ出力部42に供給するとともに、担当モジュールとなった学習モジュール30iの学習データ入力部31iに対して、学習の指示を供給し、処理は、ステップS26からステップS27に進む。
Further, the assigned
ステップS27では、担当モジュール(担当学習モジュール)となった学習モジュール30iが、担当モジュール決定部41からの指示に従い、時系列データ入力部21からの学習データを用いて、モデルパラメータを更新する更新学習を行う。
In step S27, the learning module 30 i that has become the responsible module (the responsible learning module) updates model parameters using the learning data from the time-series
すなわち、ステップS27では、担当モジュールとなった学習モジュール30iの学習データ入力部31iは、担当モジュール決定部41からの指示に従い、時系列データ入力部21からの学習データを、モデル学習部32iに供給する。
That is, in step S27, the learning data input unit 31 i of the learning module 30 i that has become the responsible module follows the instruction from the responsible
さらに、ステップS27では、モデル学習部32iが、学習データ入力部31iからの学習データを用いて、モデル記憶部33iに記憶されたパターン学習モデルのモデルパラメータを更新する更新学習を行う。そして、モデル学習部32iは、更新学習において、例えば、モデルパラメータが収束すると、その収束後の新たなモデルパラメータによって、モデル記憶部33iの記憶内容を更新する(上書きする)。
Further, in step S27, the
ステップS27の後、処理は、ステップS28に進み、モデルパラメータ出力部42は、担当モジュール決定部41からの情報に基づき、担当モジュールとなった学習モジュール30iを認識する。さらに、モデルパラメータ出力部42は、担当モジュールとなった学習モジュール30iのモデル記憶部33iに記憶されたモデルパラメータを読み出し、モデルパラメータシーケンス生成部12(図1)に供給(出力)して、処理は、ステップS28からステップS29に進む。
After step S27, the process proceeds to step S28, and the model parameter output unit 42 recognizes the learning module 30 i that has become the responsible module based on the information from the responsible
ここで、ステップS28では、モデルパラメータ出力部42において、担当モジュールとなった学習モジュール30iのモデル記憶部33iに記憶されたモデルパラメータだけではなく、モデル記憶部331ないし33Nに記憶されたモデルパラメータすべてを出力することが可能である。 Here, in step S28, the model parameter output unit 42 stores not only the model parameters stored in the model storage unit 33 i of the learning module 30 i serving as the responsible module but also the model storage units 33 1 to 33 N. It is possible to output all model parameters.
ステップS29では、時系列データ入力部21は、外部からの複数の時系列データの中に、まだ、学習に用いていない時系列データがあるかどうかを判定する。
In step S29, the time-series
ステップS29において、外部からの複数の時系列データの中に、まだ、学習に用いていない時系列データがあると判定された場合、処理は、ステップS23に戻り、以下、同様の処理が繰り返される。 In step S29, when it is determined that there is time-series data that is not yet used for learning among a plurality of external time-series data, the process returns to step S23, and the same process is repeated thereafter. .
また、ステップS29において、外部からの複数の時系列データの中に、学習に用いていない時系列データがないと判定された場合、学習処理は、終了する。 If it is determined in step S29 that there is no time-series data that is not used for learning among a plurality of external time-series data, the learning process ends.
なお、図4の時系列シーケンス学習部13が、図2のステップS13で行う第2階層の学習処理では、ステップS21で、時系列データ入力部51が受信するのが、時系列シーケンス学習部11から、モデルパラメータシーケンス生成部12を経由して供給されるモデルパラメータの系列である点と、ステップS28で、モデルパラメータを出力することが行われない(ステップS28の処理が行われない)点とを除けば、図5の学習処理と同様の処理が行われるため、説明を省略する。
In the second-layer learning process performed by the time-series
また、図3の時系列シーケンス学習部11において、追加学習を行う場合には、例えば、追加学習に用いる時系列データの数等に対して適切な数の学習モジュールを、時系列シーケンス学習部11に追加し、その追加した学習モジュールだけを対象として、学習処理を行えば良い。図4の時系列シーケンス学習部13でも同様である。
Further, in the case of performing additional learning in the time-series
このように、既に学習に用いた時系列データを再度用いて再学習を行うことなく、容易に、追加学習を行うことができる。 In this way, additional learning can be easily performed without re-learning using time-series data already used for learning.
[時系列シーケンス学習部11の第2の構成例] [Second Configuration Example of Time Series Sequence Learning Unit 11]
図6は、図1の最下位階層である第1階層の時系列シーケンス学習部11の第2の構成例を示すブロック図である。
FIG. 6 is a block diagram illustrating a second configuration example of the time-series
なお、図中、図3の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。 In the figure, portions corresponding to those in FIG. 3 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
図6の時系列シーケンス学習部11は、競合学習ではなく、分節学習によって、時系列パターンを獲得する。
The time series
すなわち、図6において、時系列シーケンス学習部11は、時系列データ入力部21、複数であるN個の学習モジュール301ないし30N、データ抽出部102、モデルパラメータ共有部121、及び、モデルパラメータ出力部122から構成される。
That is, in FIG. 6, the time-series
時系列データ入力部21は、図3で説明したように、外部から供給される時系列データを受信し、図1の学習装置での学習に用いる学習データとして、データ抽出部102に供給する。
As described with reference to FIG. 3, the time-series
データ抽出部102は、時系列データ入力部21からの学習データとしての時系列データから、所定のウインドウ長のウインドウ内のデータを、パターン学習モデルの学習用のモデル学習用データとして抽出し、学習モジュール301ないし30Nに分配する。
The
すなわち、データ抽出部102は、例えば、時系列データ入力部21からの時系列データにかけるウインドウの位置をずらすことで、その時系列データから、複数であるN個のモデル学習用データを抽出する。さらに、データ抽出部102は、1個のモデル学習用データを、1つのパターン学習モデルに割り当てるように、N個のモデル学習用データを学習モジュール30i(i=1,2,・・・,N)に供給(分配)する。
That is, the
具体的には、データ抽出部102は、ウインドウを、時系列データ入力部21からの時系列データの先頭から終わりの方向に順次ずらし、ウインドウ内のデータ(列)を、モデル学習用データとして抽出することで、N個(シーケンス)のモデル学習用データを得る。
Specifically, the
そして、データ抽出部102は、N個のモデル学習用データのうちのi番目のモデル学習用データを、学習モジュール30iに供給する。なお、データ抽出部102から学習モジュール30iに対して供給するモデル学習用データは、N個のモデル学習用データのうちのいずれであってもよい。
Then, the
ここで、データ抽出部102は、時系列データ入力部21からの時系列データの全体が網羅されるように、ウインドウの位置をずらす。したがって、N個のモデル学習用データの全体には、時系列データ入力部21からの時系列データの全体が含まれる。
Here, the
学習モジュール30i(i=1,2,・・・,N)は、学習データ入力部31i、モデル学習部32i、及びモデル記憶部33iから構成され、予測部34i、及び、予測誤差計算部35iを有していない点で、図3の場合と異なる。
The learning module 30 i (i = 1, 2,..., N) includes a learning data input unit 31 i , a
また、図6では、担当モジュールとなった1つの学習モジュール30iだけが、学習データの全体を学習する競合学習が行われるのではなく、各学習モジュール30iが、学習データの一部分ずつを、モデル学習用データとして分け合って学習する分節学習が行われる。 Further, in FIG. 6, only one learning module 30 i serving as the responsible module is not subjected to competitive learning for learning the entire learning data, but each learning module 30 i Segmental learning is performed to share and learn as model learning data.
すなわち、学習データ入力部31iには、データ抽出部102から、学習データとしての時系列データから抽出されたi番目のモデル学習用データが供給される。
That is, the i-th model learning data extracted from the time series data as the learning data is supplied from the
学習データ入力部31iは、データ抽出部102からのモデル学習用データを受信し、モデル学習部32iに供給する。
The learning data input unit 31 i receives the model learning data from the
モデル学習部32iは、学習データ入力部31iからのモデル学習用データを用いて、モデル記憶部33iに記憶されたパターン学習モデルのモデルパラメータを更新する更新学習を行う。
The
モデルパラメータ共有部121は、N個の学習モジュール301ないし30Nのうちの、2以上の学習モジュールに、モデルパラメータを共有させる共有処理を行う。モデルパラメータ共有部121が共有処理を行うことにより、N個の学習モジュール301ないし30Nのうちの、2以上の学習モジュールは、モデルパラメータを共有する。
The model
なお、以下では、説明を簡単にするため、モデルパラメータ共有部121は、N個の学習モジュール301ないし30Nのすべてに、モデルパラメータを共有させる共有処理を行うこととする。
In the following, for simplicity of explanation, the model
モデルパラメータ出力部122は、各学習モジュール30iのモデル記憶部33iに記憶されたモデルパラメータを読み出し、モデルパラメータシーケンス生成部12(図1)に供給(出力)する。 The model parameter output unit 122 reads the model parameters stored in the model storage unit 33 i of each learning module 30 i, is supplied to the model parameter sequence generating section 12 (Fig. 1) (Output).
ここで、モデル記憶部33iに記憶されたモデルパラメータを、モデルパラメータ#iと表すこととすると、モデルパラメータシーケンス生成部12(図1)は、例えば、モデルパラメータ#1,#2,・・・,#Nの並びを、モデルパラメータの系列として生成し、時系列シーケンス学習部13に供給する。
Here, if the model parameter stored in the model storage unit 33 i is expressed as model parameter #i, the model parameter sequence generation unit 12 (FIG. 1), for example, uses
[時系列シーケンス学習部13の第2の構成例] [Second Configuration Example of Time Series Sequence Learning Unit 13]
図7は、図1の最上位階層である第2階層の時系列シーケンス学習部13の第2の構成例を示すブロック図である。
FIG. 7 is a block diagram showing a second configuration example of the time-series
なお、図中、図4の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。 In the figure, portions corresponding to those in FIG. 4 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
図7の時系列シーケンス学習部13は、分節学習によって、時系列パターンを獲得する。
The time series
すなわち、図7において、時系列シーケンス学習部13は、時系列データ入力部51、複数であるN個の学習モジュール601ないし60N、データ抽出部132、及び、モデルパラメータ共有部151から構成される。
That is, in FIG. 7, the time-series
ここで、時系列シーケンス学習部13は、図6のモデルパラメータ出力部122に相当するブロックが設けられていないことを除いて、図6の時系列シーケンス学習部11と同様に構成される。
Here, the time series
時系列データ入力部51は、第1階層の時系列シーケンス学習部11(図6)から、モデルパラメータシーケンス生成部12(図1)を経由して供給されるモデルパラメータの系列を、時系列データとして受信する。さらに、時系列データ入力部51は、モデルパラメータシーケンス生成部12からのモデルパラメータの系列を、時系列シーケンス学習部13での学習に用いる学習データとして、データ抽出部132に供給する。
The time series data input unit 51 converts a series of model parameters supplied from the time series sequence learning unit 11 (FIG. 6) of the first hierarchy via the model parameter sequence generation unit 12 (FIG. 1) into time series data. As received. Further, the time series data input unit 51 supplies the model parameter series from the model parameter
データ抽出部132は、図6のデータ抽出部102と同様に、時系列データ入力部51からの学習データとしてのモデルパラメータの系列から、所定のウインドウ長のウインドウ内のデータを、パターン学習モデルの学習用のモデル学習用データとして抽出し、学習モジュール601ないし60Nに分配する。
Similar to the
なお、図6のデータ抽出部102で用いられるウインドウのウインドウ長と、図7のデータ抽出部132で用いられるウインドウのウインドウ長とは、同一であっても良いし、異なっていても良い。
Note that the window length of the window used in the
学習モジュール60i(i=1,2,・・・,N)は、学習データ入力部61i、モデル学習部62i、及びモデル記憶部63iから構成され、予測部64i、及び、予測誤差計算部65iを有していない点で、図4の場合と異なる。 The learning module 60 i (i = 1, 2,..., N) includes a learning data input unit 61 i , a model learning unit 62 i , and a model storage unit 63 i , and includes a prediction unit 64 i and a prediction. The difference from the case of FIG. 4 is that the error calculation unit 65 i is not provided.
また、図7では、担当モジュールとなった1つの学習モジュール60iだけが、学習データの全体を学習する競合学習が行われるのではなく、各学習モジュール60iが、学習データの一部分ずつを、モデル学習用データとして分け合って学習する分節学習が行われる。 In FIG. 7, only one learning module 60 i serving as the responsible module is not subjected to competitive learning for learning the entire learning data, but each learning module 60 i Segmental learning is performed to share and learn as model learning data.
すなわち、学習データ入力部61iには、データ抽出部132から、学習データとしての時系列データから抽出されたi番目のモデル学習用データが供給される。
That is, the i-th model learning data extracted from the time series data as learning data is supplied from the
学習データ入力部61iは、データ抽出部132からのモデル学習用データを受信し、モデル学習部62iに供給する。
The learning data input unit 61 i receives the model learning data from the
モデル学習部62iは、学習データ入力部61iからのモデル学習用データを用いて、モデル記憶部63iに記憶されたパターン学習モデルのモデルパラメータを更新する更新学習を行う。 The model learning unit 62 i performs update learning to update the model parameters of the pattern learning model stored in the model storage unit 63 i using the model learning data from the learning data input unit 61 i .
モデルパラメータ共有部151は、図6のモデルパラメータ供給部121と同様に、N個の学習モジュール601ないし60Nのうちの、2以上の学習モジュールに、モデルパラメータを共有させる共有処理を行う。モデルパラメータ共有部151が共有処理を行うことにより、N個の学習モジュール601ないし60Nのうちの、2以上の学習モジュールは、モデルパラメータを共有する。
Similar to the model
なお、以下では、説明を簡単にするため、モデルパラメータ共有部151は、N個の学習モジュール601ないし60Nのすべてに、モデルパラメータを共有させる共有処理を行うこととする。
Hereinafter, in order to simplify the description, the model
[モデル学習用データの抽出] [Extract model learning data]
図8は、図6のデータ抽出部102(及び、図7のデータ抽出部132)が、学習データとしての時系列データから、モデル学習用データを抽出するときの、ウインドウのずらし方(モデル学習用データの抽出の仕方)を説明する図である。
FIG. 8 shows how to shift the window (model learning) when the
データ抽出部102では、ウインドウの一部がオーバラップするように、又は、オーバラップしないように、ウインドウの位置をずらすことで、モデル学習用データを抽出することができる。
The
また、データ抽出部102では、可変長、又は固定長のウインドウ長のウインドウを用いて、モデル学習用データを抽出することができる。
The
すなわち、図8Aは、固定長のウインドウ長のウインドウの一部がオーバラップするように、ウインドウの位置をずらしながら、モデル学習用データを抽出する様子を示している。 That is, FIG. 8A shows a state in which model learning data is extracted while shifting the window position so that a part of the window having a fixed length window overlaps.
図8Bは、固定長のウインドウ長のウインドウがオーバラップしないように、ウインドウの位置をずらしながら、モデル学習用データを抽出する様子を示している。 FIG. 8B shows a state in which model learning data is extracted while shifting the position of the window so that the windows of the fixed window length do not overlap.
図8Cは、可変長のウインドウ長のウインドウがオーバラップしないように、ウインドウの位置をずらしながら、モデル学習用データを抽出する様子を示している。 FIG. 8C shows a state in which the model learning data is extracted while shifting the window positions so that the windows having variable window lengths do not overlap.
なお、可変長のウインドウ長のウインドウを用いることは、ウインドウ長が異なる複数の固定長のウインドウを用意しておき、その複数のウインドウを適宜選択することによって代用することができる。 The use of a variable-length window length can be substituted by preparing a plurality of fixed-length windows having different window lengths and selecting the plurality of windows as appropriate.
また、ウインドウは、その一部ではなく、全部がオーバラップするようにずらすことができる。 In addition, the windows can be shifted so that all but not a part of the windows overlap.
図8Dは、ウインドウの全部をオーバラップさせて、モデル学習用データを抽出する様子を示している。 FIG. 8D shows a state in which model learning data is extracted by overlapping all windows.
すなわち、図8Dでは、固定長の短いウインドウ長L1と長いウインドウ長L2との2つのウインドウを用い、ウインドウ長L1のウインドウの全部を、ウインドウ長L2のウインドウにオーバラップさせて、モデル学習用データが抽出されている。 That is, in FIG. 8D, two windows of a fixed short window length L 1 and a long window length L 2 are used, and all the windows of the window length L 1 are overlapped with the window of the window length L 2 . Model learning data has been extracted.
ここで、ウインドウ長は、学習データとしての時系列データを構成する構成要素となる時系列パターンの長さに無関係に、あらかじめ、適当な値に決めておくことができる。 Here, the window length can be determined in advance to an appropriate value regardless of the length of the time series pattern that is a constituent element of the time series data as the learning data.
また、学習データとしての時系列データの時定数が、なんらかの方法によって分かる場合には、ウインドウ長は、その時定数に比例した長さ等とすることができる。 Further, when the time constant of the time series data as learning data is known by some method, the window length can be set to a length proportional to the time constant.
さらに、ウインドウをオーバラップするか否かは、例えば、ウインドウ長に応じて決めることができる。 Furthermore, whether or not the windows are overlapped can be determined according to the window length, for example.
すなわち、ウインドウ長が短い場合には、オーバラップをなしにすることができ、ウインドウ長が長い場合には、ある程度の長さのオーバラップを設けるようにすることができる。 That is, when the window length is short, the overlap can be eliminated, and when the window length is long, a certain length of overlap can be provided.
ここで、学習データとしての時系列データに、例えば、周期的な時系列パターンが、含まれる場合には、ウインドウ長が短いとは、時系列パターンの周期の1/8や、1/2,3/4程度以下のウインドウ長を意味し、ウインドウ長が長いとは、時系列パターンの周期の2倍程度以上のウインドウ長を意味する。 Here, when the time series data as the learning data includes, for example, a periodic time series pattern, the short window length means that the period of the time series pattern is 1/8, 1/2, A window length of about 3/4 or less means that the window length is long means that the window length is about twice or more the period of the time series pattern.
なお、上述の場合には、データ抽出部102(図6)において、学習データとしての時系列データから、学習モジュール301ないし30Nと同一の数のN個のモデル学習用データを抽出することとしたが、学習データとしての時系列データからは、N個以外の複数個のモデル学習用データを抽出することが可能である。 Incidentally, in the above-described case, the data extraction unit 102 (FIG. 6), from the time series data as learning data, extracting learning module 30 1 to 30 N same number of N model learning data and However, a plurality of model learning data other than N can be extracted from the time-series data as learning data.
学習データとしての時系列データから、N個未満の数であるN'個のモデル学習用データが抽出される場合、データ抽出部102は、N個の学習モジュール301ないし30NのうちのN'個に対して、モデル学習用データを分配する。
When N ′ model learning data, which is a number less than N, is extracted from the time-series data as learning data, the
一方、学習データとしての時系列データから、N個を超える数であるN''個のモデル学習用データが抽出される場合、図6の時系列シーケンス学習部11では、学習モジュール30iと同様の学習モジュールが、N''-N個だけ追加され、学習モジュールが、全部で、N''個にされる。そして、そのN''個の学習モジュールに対して、モデル学習用データが分配される。
On the other hand, when N ″ model learning data, which is a number exceeding N, is extracted from the time series data as learning data, the time series
ここで、図6の時系列シーケンス学習部11を、コンピュータにプログラムを実行させることで(等価的に)実現するとすれば、学習モジュールの追加は、メモリに、学習モジュールとしての記憶領域を新たに確保すること(たとえば、オブジェクト指向プログラミングにおけるインスタンスの生成)によって行うことができる。
Here, if the time series
また、学習モジュール301ないし30Nの数Nを固定しておき、データ抽出部102において、学習データとしての時系列データから、N個のモデル学習用データを抽出することができるように、ウインドウのウインドウ長(及びオーバラップの長さ)を調整することができる。
In addition, the number N of learning modules 30 1 to 30 N is fixed, and the
[学習処理] [Learning process]
図9は、図6の時系列シーケンス学習部11が、図2のステップS11で行う第1階層の学習処理を説明するフローチャートである。
FIG. 9 is a flowchart illustrating the first-layer learning process performed by the time-series
時系列データ入力部21は、外部から、時系列データが供給されるのを待って、ステップS41において、その時系列データを受信し、学習データとして、データ抽出部102に供給して、処理は、ステップS42に進む。
The time-series
ステップS42では、データ抽出部102は、時系列データ入力部21からの学習データとしての時系列データから、例えば、N個のモデル学習用データを抽出する。さらに、データ抽出部102は、例えば、時間順で、i番目のモデル学習用データを、モデル記憶部33iに記憶されたパターン学習モデルに割り当てるように、モデル学習用データを、学習モジュール301ないし30Nに分配して、処理は、ステップS42からステップS43に進む。
In step S <b> 42, the
ステップS43では、学習モジュール30iのモデル学習部32iが、モデル記憶部33iに記憶されたモデルパラメータを、例えば、乱数等によって初期化して、処理は、ステップS44に進む。
At step S43, the learning module 30 i
ステップS44では、学習モジュール30iが、データ抽出部102からのモデル学習用データを用いて、モデルパラメータを更新する更新学習を行う。
In step S44, the learning module 30 i uses the model learning data from the
すなわち、ステップS44では、学習モジュール30iにおいて、学習データ入力部31iが、学習モジュール30iに供給されたモデル学習用データを受信し、モデル学習部32iに供給する。
That is, in step S44, in the learning module 30 i , the learning data input unit 31 i receives the model learning data supplied to the learning module 30 i and supplies it to the
さらに、ステップS44では、モデル学習部32iが、学習データ入力部31iからのモデル学習用データを用いて、モデル記憶部33iに記憶されたパターン学習モデルの複数のモデルパラメータを更新する更新学習を行い、その更新学習によって得られた新たな複数のモデルパラメータによって、モデル記憶部33iの記憶内容を更新する(上書きする)。
Furthermore, in step S44, the
ここで、ステップS43及びS44の処理は、データ抽出部102からモデル学習用データが分配された学習モジュール、すなわち、ここでは、N個の学習モジュール301ないし30Nのすべてで行われる。
Here, the processing of steps S43 and S44, the learning module model learning data is distributed from the
ステップS44の後、処理は、ステップS45に進み、モデルパラメータ共有部121は、直前のステップS14で、更新学習が行われた学習モジュール、すなわち、ここでは、N個の学習モジュール301ないし30Nのすべてに、モデルパラメータを共有させる共有処理を行う。
After step S44, the process proceeds to step S45, the model
ここで、学習モジュール30iが有する複数のモデルパラメータのうちの、例えば、m番目のモデルパラメータに注目すると、共有処理では、モデルパラメータ共有部121は、N個の学習モジュール301ないし30Nそれぞれのm番目のモデルパラメータに基づいて、学習モジュール301のm番目のモデルパラメータを補正する。
Here, when attention is paid to, for example, the m-th model parameter among the plurality of model parameters of the learning module 30 i , in the sharing process, the model
さらに、モデルパラメータ共有部121は、N個の学習モジュール301ないし30Nそれぞれのm番目のモデルパラメータに基づいて、学習モジュール302のm番目のモデルパラメータを補正し、以下、同様にして、学習モジュール303ないし30Nそれぞれのm番目のモデルパラメータを補正する。
Furthermore, the model
以上のように、モデルパラメータ共有部121が、学習モジュール30iのm番目のモデルパラメータを、N個の学習モジュール301ないし30Nそれぞれのm番目のモデルパラメータに基づいて補正することで、N個の学習モジュール301ないし30Nのm番目のモデルパラメータのそれぞれは、N個の学習モジュール301ないし30Nのm番目のモデルパラメータのすべての影響を受ける(N個の学習モジュール301ないし30Nのm番目のモデルパラメータのそれぞれに、N個の学習モジュール301ないし30Nのm番目のモデルパラメータのすべてを影響させる)。
As described above, the model
このように、複数の学習モジュールすべてのモデルパラメータを、その複数の学習モジュールのそれぞれのモデルパラメータに影響させること(複数の学習モジュールのそれぞれのモデルパラメータが、その複数の学習モジュールすべてのモデルパラメータの影響を受けること)が、複数の学習モジュールによるモデルパラメータの共有である。 In this way, the model parameters of all of the plurality of learning modules are affected by the model parameters of the plurality of learning modules (the model parameters of the plurality of learning modules are the same as the model parameters of all the plurality of learning modules). It is the sharing of model parameters by multiple learning modules.
モデルパラメータ共有部121は、ステップS45において、学習モジュール30iのモデル記憶部33iに記憶された複数のモデルパラメータのすべてを対象に、共有処理を行い、その共有処理によって得られたモデルパラメータによって、モデル記憶部331ないし13Nの記憶内容を更新する。
In step S45, the model
ステップS45の後、処理は、ステップS46に進み、図6の時系列シーケンス学習部11は、学習の終了条件が満たされているかどうかを判定する。
After step S45, the process proceeds to step S46, and the time-series
ここで、ステップS46での学習の終了条件としては、例えば、学習の回数、つまり、ステップS44及びS45が繰り返された回数が、あらかじめ定められた所定の回数となったことや、あるいは、パターン学習モデルがモデル学習用データの予測値を生成することができる場合に、その予測値の予測誤差が所定値以下に収束したこと、モデルパラメータが収束したこと等を採用することができる。 Here, as the learning end condition in step S46, for example, the number of times of learning, that is, the number of times that steps S44 and S45 are repeated becomes a predetermined number of times, or pattern learning When the model can generate a prediction value of model learning data, it can be adopted that the prediction error of the prediction value has converged to a predetermined value or less, the model parameter has converged, and the like.
ステップS46において、学習の終了条件が満たされていないと判定された場合、処理は、ステップS44に戻り、以下、同様の処理が繰り返される。 If it is determined in step S46 that the learning termination condition is not satisfied, the process returns to step S44, and the same process is repeated thereafter.
また、ステップS46において、学習の終了条件が満たされていると判定された場合、処理は、ステップS47に進み、モデルパラメータ出力部122は、モデル記憶部331ないし33Nに記憶されたモデルパラメータ#1ないし#Nを、例えば、その順に並べたモデルパラメータの系列を、モデルパラメータシーケンス生成部12(図1)に出力して、学習処理は終了する。 If it is determined in step S46 that the learning end condition is satisfied, the process proceeds to step S47, and the model parameter output unit 122 stores the model parameters stored in the model storage units 33 1 to 33 N. For example, a series of model parameters in which # 1 to #N are arranged in that order is output to the model parameter sequence generation unit 12 (FIG. 1), and the learning process ends.
なお、図7の時系列シーケンス学習部13が、図2のステップS13で行う第2階層の学習処理では、ステップS41で、時系列データ入力部51が受信するのが、時系列シーケンス学習部11から、モデルパラメータシーケンス生成部12を経由して供給されるモデルパラメータの系列である点と、ステップS47で、モデルパラメータを出力することが行われない(ステップS47の処理が行われない)点とを除けば、図9の学習処理と同様の処理が行われるため、説明を省略する。
In the second-layer learning process performed by the time-series
また、図6の時系列シーケンス学習部11において、追加学習を行う場合には、例えば、追加学習に用いる時系列データの数等に対して適切な数の学習モジュールを、時系列シーケンス学習部11に追加し、その追加した学習モジュールだけを対象として、学習処理を行えば良い。図7の時系列シーケンス学習部13でも同様である。
In addition, when performing additional learning in the time-series
このように、既に学習に用いた時系列データを再度用いて再学習を行うことなく、容易に、追加学習を行うことができる。 In this way, additional learning can be easily performed without re-learning using time-series data already used for learning.
図10は、パターン学習モデルとして、RNNを採用した場合の、図6の時系列シーケンス学習部11(図7の時系列シーケンス学習部13)の構成例を示す図である。
FIG. 10 is a diagram illustrating a configuration example of the time-series
なお、図10においては、時系列データ入力部21、学習モジュール30iの学習データ入力部31i及びモデル学習部32i、データ抽出部102、並びに、モデルパラメータ出力部122の図示を省略してある。
In FIG. 10, the time-series
モデル記憶部33iには、RNN(を定義するモデルパラメータ)が記憶されている。ここで、モデル記憶部33iに記憶されたRNNを、以下、適宜、RNN#iとも記載する。 The model storage unit 33 i, RNN (model parameters that define) is stored. Here, the RNN stored in the model storage unit 33 i is hereinafter also referred to as RNN # i as appropriate.
図10では、RNNは、入力層、隠れ層(中間層)、及び出力層の3つの層により構成されている。入力層、隠れ層、及び出力層は、それぞれ任意の数の、ニューロンに相当するユニットにより構成されている。 In FIG. 10, 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 data of the time t.
入力層の、入力データ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に対する出力データとして、例えば、その入力データxtの次の時刻t+1の入力データxt+1の予測値x* t+1が出力される。 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, as output data to the input data x t, for example, the 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.
ここで、RNNでは、ユニットへの入力が重み付け加算されるが、この重み付け加算に用いられるウエイト(重み)が、RNNのモデルパラメータである。RNNのモデルパラメータとしてのウエイトには、入力ユニットから隠れ層のユニットへのウエイト、コンテキストユニットから隠れ層のユニットへウエイト、隠れ層のユニットから出力層のユニットへのウエイト等がある。 Here, 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を採用した場合、モデルパラメータ共有部121には、RNNのモデルパラメータとしてのウエイトを、学習モジュール301ないし30Nに共有させるウエイトマトリクス共有部191が設けられる。
A pattern learning models, in the case of adopting the RNN as described above, the model
ここで、RNNのモデルパラメータとしてのウエイトは、複数あるが、その複数のウエイトをコンポーネントとするマトリクスを、ウエイトマトリクスという。 Here, there are a plurality of weights as model parameters of the RNN, but a matrix having the plurality of weights as components is called a weight matrix.
ウエイトマトリクス共有部191は、モデル記憶部331ないし33Nに記憶されたRNN#1ないしRNN#Nのすべての複数のモデルパラメータとしてのウエイトマトリクスを、学習モジュール301ないし30Nのそれぞれに共有させる。
Weight
すなわち、RNN#iのウエイトマトリクスをwiと表すこととすると、ウエイトマトリクス共有部191は、ウエイトマトリクスwiを、N個の学習モジュール301ないし30Nそれぞれのウエイトマトリクスw1ないしwNのすべてに基づいて補正することで、ウエイトマトリクスwiに、ウエイトマトリクスw1ないしwNのすべてを影響させる共有処理を行う。
That is, if the weight matrix of RNN # i is expressed as w i , the weight
具体的には、ウエイトマトリクス共有部191は、例えば、次式(1)に従い、RNN#iのウエイトマトリクスwiを補正する。
Specifically, the weight
ここで、式(1)において、△wiは、ウエイトマトリクスwiを補正する補正成分であり、例えば、式(2)に従って求められる。 Here, in Equation (1), Δw i is a correction component for correcting the weight matrix w i and is obtained, for example, according to Equation (2).
式(2)において、βijは、RNN#iのウエイトマトリクスwiに、RNN#j(j=1,2,・・・,N)のウエイトマトリクスwjを影響させる度合いを表す係数である。 In the formula (2), beta ij is the weight matrix w i of RNN # i, is a coefficient representing the degree to which the influence RNN # j (j = 1,2, ···, N) of the weight matrix w j of .
したがって、式(2)の右辺のサメーションΣβij(wj-wi)は、係数βijを重みとした、RNN#iのウエイトマトリクスwjに対するRNN#1ないしRNN#Nのウエイトマトリクスw1ないしwNそれぞれの偏差(差分)の重み付け平均値を表し、αiは、その重み付け平均値Σβij(wj-wi)を、ウエイトマトリクスwiに影響させる度合いを表す係数である。
Therefore, the summation Σβ ij (w j -w i ) on the right side of the equation (2) is the weight matrix w of
係数α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.
式(2)によれば、係数αiが小であるほど、いわば共有が弱くなり(ウエイトマトリクスwiが受ける重み付け平均値Σβij(wj-wi)の影響が小さくなり)、係数αiが大であるほど、いわば共有が強まる。 According to equation (2), the smaller the coefficient α i , the weaker the sharing (the weighted average value Σβ ij (w j −w i ) affected by the weight matrix w i becomes smaller), and the coefficient α The larger i is, the stronger the sharing.
なお、ウエイトマトリクスwiの補正の方法は、式(1)に限定されるものではなく、例えば、式(3)に従って行うことが可能である。 Note that the method of correcting the weight matrix w i is not limited to the equation (1), and can be performed according to the equation (3), for example.
ここで、式(3)において、βij 'は、RNN#iのウエイトマトリクスwiに、RNN#j(j=1,2,・・・,N)のウエイトマトリクスwjを影響させる度合いを表す係数である。 Here, in the formula (3), β ij 'is the weight matrix w i of RNN # i, RNN # j ( j = 1,2, ···, N) the degree to which the influence of the weight matrix w j of It is a coefficient to represent.
したがって、式(3)の右辺の第2項におけるサメーションΣβij 'wjは、係数βij 'を重みとした、RNN#1ないしRNN#Nのウエイトマトリクスw1ないしwNの重み付け平均値を表し、αi 'は、その重み付け平均値Σβij 'wjを、ウエイトマトリクスwiに影響させる度合いを表す係数である。
Therefore, the summation Σβ ij ′ w j in the second term on the right side of Equation (3) is the weighted average value of the weight matrices w 1 to w N of
係数α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.
式(3)によれば、係数αi 'が大であるほど、共有が弱くなり(ウエイトマトリクスwiが受ける重み付け平均値Σβij 'wjの影響が小さくなり)、係数αi 'が小であるほど、共有が強まる。 According to Expression (3), 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.
なお、パターン学習モデルとして、RNNを採用する場合、RNNの学習は、例えば、BPTT(Back-Propagation Through Time)法に従って行われ、RNN#iが出力する出力データとしての入力データxt+1の予測値の、真値である入力データxt+1に対する予測誤差を小さくするウエイトマトリクスwiが求められる。 When RNN is adopted as the pattern learning model, RNN learning is performed according to, for example, a BPTT (Back-Propagation Through Time) method, and input data x t + 1 as output data output by RNN # i is used. A weight matrix w i for reducing the prediction error of the predicted value with respect to the input data x t + 1 which is a true value is obtained.
図6の時系列シーケンス学習部11(及び、図7の時系列シーケンス学習部13)は、1つの学習モジュール30iが、1個のモデル学習データを学習するので、規模拡張性に優れる。そして、規模拡張性に優れた複数の学習モジュール301ないし30Nそれぞれにおいて、モデルパラメータを共有しながら、その複数の学習モジュール301ないし30Nそれぞれのモデルパラメータを更新する更新学習を行うことにより、1つの学習モジュール30iだけで行われる学習で得られる汎化特性が、複数の学習モジュール301ないし30Nの全体で得ることができ、その結果、規模拡張性があり、同時に、汎化特性を有するパターン学習モデルを得ることができる。
The time series
すなわち、多くの時系列パターンを獲得(記憶)することができ、かつ、複数の時系列パターンの共通性を獲得することができる。さらに、複数の時系列パターンの共通性を獲得することで、その共通性に基づいて、未学習の時系列パターンの認識や生成を行うことが可能となる。 That is, many time series patterns can be acquired (stored), and the commonality of a plurality of time series patterns can be acquired. Furthermore, by acquiring the commonality of a plurality of time series patterns, it is possible to recognize and generate an unlearned time series pattern based on the commonality.
また、図6の時系列シーケンス学習部11(及び、図7の時系列シーケンス学習部13)では、データ抽出部102が、ウインドウの位置をずらすことで、学習データとしての時系列データから、N個のモデル学習用データを抽出し、N個の学習モジュール301ないし30Nに分配する。そして、学習モジュール301ないし30Nそれぞれにおいて、データ抽出部102から分配されたモデル学習用データを用いて、モデルパラメータを更新する分節学習が行われる。
Further, in the time-series sequence learning unit 11 (and the time-series
その結果、N個のパターン学習モデルの全体において、学習データとしての時系列データに含まれる1以上の時系列パターンを獲得することができる。 As a result, one or more time-series patterns included in the time-series data as learning data can be acquired in the entire N pattern learning models.
図11は、時系列シーケンス学習部11及び13で行われる分節学習を説明する図である。
FIG. 11 is a diagram for explaining segment learning performed by the time-series
図11では、下位階層の時系列シーケンス学習部11は、複数のパターン学習モデルとして、6個のRNN#1-1,#1-2,#1-3,#1-4,#1-5,#1-6を有している。また、上位階層の時系列シーケンス学習部13は、複数のパターン学習モデルとして、3個のRNN#2-1,#2-2,#2-3を有している。
In FIG. 11, the time-series
そして、下位階層の時系列シーケンス学習部11では、外部からの時系列データから、時系列に、6つのモデル学習用データxtが抽出され、i番目のモデル学習用データxtを用いて、i番目のRNN#1-iの学習が行われる。これにより、RNN#1-iのモデルパラメータとして、i番目のモデル学習用データxtについて、時刻tのサンプルxtから、次の時刻t+1のサンプルxt+1を予測する関数xt+1=f1(xt)の係数となる、RNN#1-iのウエイトマトリクスwiが求められる。
Then, in the time-series
その後、下位階層の時系列シーケンス学習部11では、i番目のモデル学習用データxtを用いて学習が行われた、i番目のRNN#1-iのモデルパラメータとしてのウエイトマトリクスwiが、モデルパラメータシーケンス生成部12(図1)に出力される。
Thereafter, in the time-series
モデルパラメータシーケンス生成部12は、例えば、時系列シーケンス学習部11からのウエイトマトリクスwiを時系列(ウエイトマトリクスwiを求めるのに用いたモデル学習用データxtの時間順)に並べた、ウエイトマトリクスwiの系列w1,w2,w3,w4,w5,w6を、上位階層の時系列シーケンス学習部13に供給する。
For example, the model parameter
上位階層の時系列シーケンス学習部13では、モデルパラメータシーケンス生成部12からのウエイトマトリクスwiの系列w1ないしw6から、時系列に、3つのモデル学習用データwが抽出され、i番目のモデル学習用データwを用いて、i番目のRNN#2-jの学習が行われる。これにより、RNN#2-jのモデルパラメータとして、i番目のモデル学習用データwの、時刻tのサンプルw(t)から、次の時刻t+1のサンプルw(t+1)を予測する関数w(t+1)=f2(w(t))の係数となる、RNN#2-jのウエイトマトリクスが求められる。
In the time-series
以上のように、上位階層の時系列シーケンス学習部13では、その上位階層の時系列シーケンス学習部13の下位階層の時系列シーケンス学習部11が有するRNN#1-iを定義するウエイトマトリクスwiの時系列(ウエイトダイナミクス)を用いて、RNN#2-jの学習を行う。
As described above, in the time-series
このように、上位階層のRNN#2-jの学習が、下位階層のRNN#1-iのウエイトマトリクスwiの系列を用いて行われるので、上位階層の時系列シーケンス学習部13では、ウエイトマトリクスwiによって表現される、下位階層のRNN#1-iが獲得した時系列パターンどうしの距離構造を反映した学習を行うことができる。 In this way, learning of the upper layer RNN # 2-j is performed using the sequence of the weight matrix w i of the lower layer RNN # 1-i. Learning that reflects the distance structure between time series patterns acquired by the lower layer RNN # 1-i expressed by the matrix w i can be performed.
さらに、上位階層のRNN#2-jの学習が、下位階層のRNN#1-iのウエイトマトリクスwiの系列を用いて行われるので、追加学習は、学習モジュール、つまり、パターン学習モデルとしてのRNNの追加によって、既に学習済みのRNNの再学習をせずに行うことができる。 Furthermore, since learning of the upper layer RNN # 2-j is performed using the sequence of the weight matrix w i of the lower layer RNN # 1-i, additional learning is performed as a learning module, that is, as a pattern learning model. By adding RNN, it can be done without re-learning already learned RNN.
すなわち、図12は、時系列シーケンス学習部11及び13で行われる追加学習を説明する図である。
That is, FIG. 12 is a diagram for explaining additional learning performed by the time-series
図12では、下位階層の時系列シーケンス学習部11は、図11の6個のRNN#1-1ないし#1-6に、2個のRNN#1-7及び#1-8が新たに追加され、合計で、8個のRNN#1-1ないし1-8を有している。また、上位階層の時系列シーケンス学習部13は、図11の3個のRNN#2-1ないし#2-3に、1個のRNN#2-4が新たに追加され、合計で、4個のRNN#2-1ないし#2-4を有している。
In FIG. 12, the time-series
そして、下位階層の時系列シーケンス学習部11では、外部から、新たな時系列データが与えられると、その新たな時系列データから、時系列に、2つのモデル学習用データxtが抽出され、i(i=1,2)番目のモデル学習用データxtを用いて、新たに追加された2個のRNN#1-7及び#1-8のうちの、i番目のRNN#1-(i+6)の学習(追加学習)が行われる。これにより、新たに追加されたRNN#1-(i+6)のモデルパラメータとして、新たな時系列データから抽出されたi番目のモデル学習用データxtの、時刻tのサンプルxtから、次の時刻t+1のサンプルxt+1を予測する関数xt+1=f1(xt)の係数となる、RNN#1-(i+6)のウエイトマトリクスwi+6が求められる。
Then, in the time-series
その後、新たに追加された2個のRNN#1-7及び#1-8のウエイトマトリクスの系列w7,w8が、下位階層の時系列シーケンス学習部11から、モデルパラメータシーケンス生成部12(図1)を経由して、上位階層の時系列シーケンス学習部13に供給される。
Thereafter, the two newly added weight matrix sequences w 7 and w 8 of RNN # 1-7 and # 1-8 are transferred from the time-series
上位階層の時系列シーケンス学習部13では、モデルパラメータシーケンス生成部12からのウエイトマトリクスの系列w7,w8から、1つのモデル学習用データwが抽出され、その1つのモデル学習用データwを用いて、すなわち、ウエイトマトリクスの系列w7,w8を、そのまま、モデル学習用データwとして用いて、新たに追加された1個のRNN#2-4の学習が行われる。
In the time-series
以上のように、上位階層のRNN#2-jの学習が、下位階層のRNN#1-iのウエイトマトリクスwiの系列を用いて行われ、この下位階層のRNN#1-iのウエイトマトリクスwiの系列の次元は、下位階層のRNNの数に依存せず、したがって、RNNが追加されても変化しないので、下位階層の時系列シーケンス学習部11では、学習済みのRNN#1-1ないし#1-6の再学習をする必要はなく、上位階層の時系列シーケンス学習部13でも、学習済みのRNN#2-1ないし#2-3の再学習をする必要はない。
As described above, learning of the upper layer RNN # 2-j is performed using the sequence of the weight matrix w i of the lower layer RNN # 1-i, and the weight matrix of the lower layer RNN # 1-i The dimension of the sequence of w i does not depend on the number of RNNs in the lower layer, and therefore does not change even if an RNN is added. Therefore, the time-series
なお、上述の場合には、新たに追加された2個のRNN#1-7及び#1-8のウエイトマトリクスの系列w7,w8を、下位階層の時系列シーケンス学習部11から、モデルパラメータシーケンス生成部12(図1)を経由して、上位階層の時系列シーケンス学習部13に供給し、上位階層の時系列シーケンス学習部13において、モデルパラメータシーケンス生成部12からのウエイトマトリクスの系列w7,w8から、モデル学習用データwを抽出し、そのモデル学習用データwを用いて、新たに追加された1個のRNN#2-4の学習を行うようにしたが、下位階層の時系列シーケンス学習部11から上位階層の時系列シーケンス学習部13に対しては、新たに追加された2個のRNN#1-7及び#1-8のウエイトマトリクスの系列w7,w8ではなく、すべてのRNN#1-1及び#1-8のウエイトマトリクスの系列w1ないしw8を、モデルパラメータシーケンス生成部12(図1)を経由して供給することができる。
In the above case, the two newly added weight matrix sequences w 7 and w 8 of RNN # 1-7 and # 1-8 are transferred from the time-series
この場合、上位階層の時系列シーケンス学習部13では、学習済みの3個のRNN#2-1ないし#2-3を含むすべての4個のRNN#2-1ないし#2-4の学習を、モデルパラメータシーケンス生成部12からのウエイトマトリクスの時系列w1ないしw8を用いて行うこと(4個のRNN#2-1ないし#2-4のうちの、学習済みの3個のRNN#2-1ないし#2-3については、再学習すること)ができる。
In this case, the time-series
[学習装置の他の実施の形態] [Other Embodiments of Learning Device]
図1では、学習装置の階層構造を、2階層の階層構造としたが、学習装置の階層構造は、3階層以上の階層構造とすることができる。 In FIG. 1, the hierarchical structure of the learning device is a two-level hierarchical structure, but the hierarchical structure of the learning device can be a three-level or higher hierarchical structure.
すなわち、図13は、本発明の情報処理装置を適用した学習装置の他の一実施の形態の構成例を示すブロック図である。 That is, FIG. 13 is a block diagram showing a configuration example of another embodiment of a learning apparatus to which the information processing apparatus of the present invention is applied.
なお、図中、図1の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。 In the figure, portions corresponding to those in FIG. 1 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
図13の学習装置では、パターン学習モデルの学習を行う複数の学習モジュールを有する複数の学習手段としての3つの時系列シーケンス学習部11,13、及び14が、3階層の階層構造を構成するように接続されている。
In the learning apparatus of FIG. 13, the three time-series
すなわち、図13では、最下位階層である第1階層の時系列シーケンス学習部11と、最下位階層から2番目の階層である第2階層の時系列シーケンス学習部14とが、上位階層と下位階層との間のインタフェースとなるモデルパラメータシーケンス生成部12を介して接続されている。
That is, in FIG. 13, the time-series
さらに、図13では、第2階層の時系列シーケンス学習部14と、最上位階層である第3階層の時系列シーケンス学習部13とが、上位階層と下位階層との間のインタフェースとなるモデルパラメータシーケンス生成部15を介して接続されている。
Further, in FIG. 13, model parameters that serve as an interface between the upper hierarchy and the lower hierarchy are the time-series
第2階層の時系列シーケンス学習部14は、最下位階層である第1階層の時系列シーケンス学習部11と同様に構成される。
The time-series
そして、時系列シーケンス学習部14は、モデルパラメータシーケンス生成部12から供給されるモデルパラメータの系列を用いて、パターン学習モデルの学習を行い、学習後のパターン学習モデルのモデルパラメータを、モデルパラメータシーケンス生成部15に供給する。
Then, the time series
モデルパラメータシーケンス生成部15は、モデルパラメータシーケンス生成部12と同様に構成される。モデルパラメータシーケンス生成部15は、第2階層の時系列シーケンス学習部14から供給されるモデルパラメータから、最上位階層である第3階層に与える時系列データとするモデルパラメータの系列(時系列シーケンス学習部14のリソースダイナミクス)を生成し、第3階層の時系列シーケンス学習部13に供給する。
The model parameter
図13は、図12の学習装置の処理を説明するフローチャートである。 FIG. 13 is a flowchart for explaining processing of the learning apparatus in FIG.
第1階層の時系列シーケンス学習部11は、外部から、時系列データが供給されるのを待って、ステップS61において、外部からの時系列データを用いて、パターン学習モデルを学習する学習処理(第1階層の学習処理)を行う。
The time-series
さらに、第1階層の時系列シーケンス学習部11は、学習後のパターン学習モデルのモデルパラメータを、モデルパラメータシーケンス生成部12に供給して、処理は、ステップS61からステップS62に進む。
Furthermore, the time-series
ステップS62では、モデルパラメータシーケンス生成部12は、時系列シーケンス学習部11からのモデルパラメータの系列を生成し、第2階層の時系列シーケンス学習部14に供給して、処理は、ステップS63に進む。
In step S62, the model parameter
ステップS63では、第2階層の時系列シーケンス学習部14が、モデルパラメータシーケンス生成部12からのモデルパラメータの系列、つまり、下位階層(図12では、第1階層)の時系列シーケンス学習部11が有するパターン学習モデルのモデルパラメータの系列を用いて、パターン学習モデルを学習する学習処理(第2階層の学習処理)を行う。
In step S63, the time-series
さらに、第2階層の時系列シーケンス学習部14は、学習後のパターン学習モデルのモデルパラメータを、モデルパラメータシーケンス生成部15に供給して、処理は、ステップS63からステップS64に進む。
Further, the time-series
ステップS64では、モデルパラメータシーケンス生成部15は、時系列シーケンス学習部14からのモデルパラメータの系列を生成し、最上位階層である第3階層の時系列シーケンス学習部13に供給して、処理は、ステップS65に進む。
In step S64, the model parameter
ステップS65では、第3階層の時系列シーケンス学習部13が、モデルパラメータシーケンス生成部15からのモデルパラメータの系列、つまり、下位階層(図12では、第2階層)の時系列シーケンス学習部14が有するパターン学習モデルのモデルパラメータの系列を用いて、パターン学習モデルを学習する学習処理(第3階層の学習処理)を行い、処理は終了する。
In step S65, the time-series
[予測装置の一実施の形態] [One Embodiment of Prediction Device]
図15は、本発明の情報処理装置を適用した予測装置の一実施の形態の構成例を示すブロック図である。 FIG. 15 is a block diagram illustrating a configuration example of an embodiment of a prediction device to which the information processing device of the present invention is applied.
図15において、予測装置は、時系列シーケンス予測部201、モデルパラメータシーケンス生成部202、及び、時系列シーケンス予測部203から構成される。
In FIG. 15, the prediction apparatus includes a time series
図15の予測装置では、時系列パターンを学習するパターン学習モデルを用いて、時系列データを予測する複数の予測モジュールを有する複数の予測手段としての2つの時系列シーケンス予測部201及び203が、2階層の階層構造を構成するように接続されている。
In the prediction apparatus of FIG. 15, two time-series
すなわち、図15では、最下位階層である第1階層の時系列シーケンス予測部201と、最上位階層である第2階層の時系列シーケンス予測部203とが、上位階層と下位階層との間のインタフェースとなるモデルパラメータシーケンス生成部202を介して接続されている。
That is, in FIG. 15, the time-series
最下位階層である第1階層の時系列シーケンス予測部201には、外部から、図15の予測装置での予測に用いられる時系列データが供給される。
Time series data used for prediction in the prediction apparatus of FIG. 15 is supplied from the outside to the time series
時系列シーケンス予測部201は、パターン学習モデルを用いた予測を行う複数の予測モジュールを有する。時系列シーケンス予測部201の予測モジュールは、外部からの時系列データを、パターン学習モデルに与えて、時系列データの予測(又は認識)を行う。
The time-series
そして、時系列シーケンス予測部201は、予測モジュールが予測に用いたパターン学習モデルを定義するモデルパラメータを、モデルパラメータシーケンス生成部202に供給する。
Then, the time-series
モデルパラメータシーケンス生成部202は、第1階層の時系列シーケンス予測部201から供給されるモデルパラメータから、上位階層である第2階層に与えるモデルパラメータの系列(時系列シーケンス予測部201のリソースダイナミクス)を生成し、第2階層の時系列シーケンス予測部203に供給する。
The model parameter
すなわち、モデルパラメータシーケンス生成部202は、時系列シーケンス予測部201から供給されるモデルパラメータを一時記憶する。そして、モデルパラメータシーケンス生成部202は、外部からの時系列データに対して、時系列シーケンス予測部201から供給されるモデルパラメータのすべてを記憶すると、そのモデルパラメータの系列を、時系列シーケンス予測部203に供給する。
That is, the model parameter
最上位階層である第2階層の時系列シーケンス予測部203は、時系列シーケンス予測部201と同様に、パターン学習モデルを用いて、時系列データを予測する複数の予測モジュールを有する。
Similar to the time-series
そして、時系列シーケンス予測部203の予測モジュールは、モデルパラメータシーケンス生成部202からのモデルパラメータの系列、すなわち、下位階層(時系列シーケンス予測部203の階層の直下の階層)の時系列シーケンス予測部201が有するパターン学習モデルを定義するモデルパラメータの系列を用いて、時系列データとしてのモデルパラメータの予測を行う。
Then, the prediction module of the time series
図16は、図15の予測装置の処理を説明するフローチャートである。 FIG. 16 is a flowchart for explaining processing of the prediction apparatus in FIG. 15.
第1階層の時系列シーケンス予測部201は、外部から、時系列データが供給されるのを待って、ステップS101において、外部からの時系列データを、パターン学習モデルに与えて、その時系列データを予測する予測処理(第1階層の予測処理)を行う。
The time-series
さらに、第1階層の時系列シーケンス予測部201は、予測に用いたパターン学習モデルのモデルパラメータを、モデルパラメータシーケンス生成部202に供給して、処理は、ステップS101からステップS102に進む。
Furthermore, the time-series
ステップS102では、モデルパラメータシーケンス生成部202は、時系列シーケンス予測部201からのモデルパラメータの系列を生成し、第2階層の時系列シーケンス予測部203に供給して、処理は、ステップS103に進む。
In step S102, the model parameter
ステップS103では、第2階層の時系列シーケンス予測部203が、モデルパラメータシーケンス生成部202からのモデルパラメータの系列、つまり、下位階層(図15では、第1階層)の時系列シーケンス予測部201が予測に用いたパターン学習モデルのモデルパラメータの系列を用いて、そのモデルパラメータを予測する予測処理(第2階層の予測処理)を行い、処理は終了する。
In step S103, the time-series
[時系列シーケンス予測部201の構成例] [Configuration Example of Time Series Sequence Prediction Unit 201]
図17は、図15の最下位階層である第1階層(最上位階層以外の階層)の時系列シーケンス予測部201の構成例を示すブロック図である。
FIG. 17 is a block diagram illustrating a configuration example of the time-series
図17において、時系列シーケンス予測部201は、時系列データ入力部211、N個の予測モジュール2201ないし220N、担当モジュール決定部231、予測シーケンス出力部232、及び、モデルパラメータ出力部233から構成される。
In FIG. 17, the time series
時系列データ入力部211には、外部から、時系列データが供給される。時系列データ入力部211は、外部からの時系列データを受信し、N個の予測モジュール2201ないし220Nに供給する。 The time series data input unit 211 is supplied with time series data from the outside. The time series data input unit 211 receives time series data from the outside and supplies it to the N prediction modules 220 1 to 220 N.
予測モジュール220iは、モデル記憶部221i、予測部222i、予測値出力部223i、及び、予測誤差計算部224iから構成され、時系列データ入力部211からの時系列データに対して、その時系列データの予測値と、その予測値の予測誤差とを求める。 The prediction module 220 i includes a model storage unit 221 i , a prediction unit 222 i , a prediction value output unit 223 i , and a prediction error calculation unit 224 i , and performs time series data from the time series data input unit 211. The prediction value of the time series data and the prediction error of the prediction value are obtained.
すなわち、モデル記憶部221iは、図3又は図6の時系列シーケンス学習部11で学習が行われた後の、モデル記憶部33iに記憶されたパターン学習モデルとしての、例えば、RNN#i(のウエイトマトリクス)を記憶している。
That is, the model storage unit 221 i is, for example, RNN # i as a pattern learning model stored in the model storage unit 33 i after learning is performed by the time-series
予測部222iには、時系列データ入力部211からの時系列データが供給される。予測部222iは、時系列データ入力部211からの時系列データを入力データとして、モデル記憶部221iに記憶されたRNN#iに与えることで、その入力データの次の時刻の入力データの予測値である出力データを求め、予測値出力部223i、及び、予測誤差計算部224iに供給する。 The time series data from the time series data input unit 211 is supplied to the prediction unit 222 i . The prediction unit 222 i gives the time-series data from the time-series data input unit 211 as input data to the RNN # i stored in the model storage unit 221 i , so that the input data at the next time of the input data Output data that is a predicted value is obtained and supplied to the predicted value output unit 223 i and the prediction error calculation unit 224 i .
予測値出力部223iは、予測部222iからの予測値(以下、予測値#iともいう)を受信し、予測シーケンス出力部232に供給する。 The prediction value output unit 223 i receives the prediction value (hereinafter also referred to as prediction value #i) from the prediction unit 222 i and supplies it to the prediction sequence output unit 232.
予測誤差計算部224iは、予測部222iからの予測値#iの予測誤差を求め、担当モジュール決定部231に供給する。すなわち、予測誤差計算部224iは、予測部222iからの予測値#iと、時系列データ入力部211からの時系列データ(のうちの、予測値#iの真値)との差分をとることで、予測値#iの予測誤差を求めて、担当モジュール決定部231に供給する。 The prediction error calculation unit 224 i obtains the prediction error of the prediction value #i from the prediction unit 222 i and supplies it to the responsible module determination unit 231. That is, the prediction error calculation unit 224 i calculates the difference between the prediction value #i from the prediction unit 222 i and the time-series data from the time-series data input unit 211 (of which the true value of the prediction value #i). As a result, the prediction error of the prediction value #i is obtained and supplied to the assigned module determination unit 231.
担当モジュール決定部231は、予測誤差計算部2241ないし224Nそれぞれからの予測誤差に基づき、時系列データ入力部211からの時系列データの認識結果となる、その時系列データの予測を担当させることが適切な担当モジュールとなる予測モジュール220iを決定する。 The assigned module determining unit 231 is responsible for predicting the time-series data that is the recognition result of the time-series data from the time-series data input unit 211 based on the prediction error from each of the prediction error calculating units 224 1 to 224 N. Determines the prediction module 220 i to be an appropriate responsible module.
すなわち、担当モジュール決定部231は、予測誤差計算部2241ないし224Nそれぞれからの予測誤差に基づき、予測モジュール2201ないし30Nのうちの、予測誤差が最小の予測値が得られる予測モジュール220iを、担当モジュールに決定する。 That is, the assigned module determination unit 231 is based on the prediction error from each of the prediction error calculation units 224 1 to 224 N , and the prediction module 220 that obtains the prediction value with the smallest prediction error among the prediction modules 220 1 to 30 N. i is determined to be the module in charge.
そして、担当モジュール決定部231は、担当モジュールを表す情報を、予測シーケンス出力部232と、モデルパラメータ出力部233とに供給する。
Then, the assigned module determination unit 231 supplies information representing the assigned module to the prediction sequence output unit 232 and the model
ここで、担当モジュール決定部231では、例えば、1時刻ごと(時系列データ入力部211からの時系列データの1サンプルごと)に、担当モジュールを決定することができる。 Here, the responsible module determination unit 231 can determine the responsible module, for example, every time (each sample of time-series data from the time-series data input unit 211).
また、担当モジュール決定部231では、例えば、1時刻を越える所定の時間ごと(時系列データ入力部211からの時系列データの複数サンプルごと)に、担当モジュールを決定することができる。所定の時間ごとに、担当モジュールを決定する場合には、担当モジュール決定部231では、予測モジュール2201ないし220Nのうちの、例えば、予測誤差計算部224iからの、所定の時間分の予測誤差の総和が最小の予測モジュール220iが、担当モジュールに決定される。 In addition, the responsible module determination unit 231 can determine the responsible module for every predetermined time exceeding one time (for each of a plurality of samples of time-series data from the time-series data input unit 211). When the responsible module is determined every predetermined time, the responsible module determining unit 231 predicts a predetermined time from, for example, the prediction error calculation unit 224 i of the prediction modules 220 1 to 220 N. The prediction module 220 i with the smallest sum of errors is determined as the responsible module.
予測シーケンス出力部232は、担当モジュール決定部231からの情報に基づき、担当モジュールとなった予測モジュール220iを認識する。さらに、予測シーケンス出力部232は、担当モジュールとなった予測モジュール220iの予測値出力部2231から供給される予測値#iを、時系列データ入力部211からの時系列データの予測値として出力する。 The prediction sequence output unit 232 recognizes the prediction module 220 i that has become the responsible module based on the information from the responsible module determination unit 231. Furthermore, the prediction sequence output unit 232 uses the prediction value #i supplied from the prediction value output unit 223 1 of the prediction module 220 i serving as the module in charge as the prediction value of the time series data from the time series data input unit 211. Output.
ここで、時系列データ入力部211からの時系列データが、例えば、上述したような、ロボットのアクションデータとセンサデータをコンポーネントとするベクトル(以下、センサアクションデータともいう)である場合には、予測シーケンス出力部232が出力する時系列データの予測値、すなわち、センサアクションデータの予測値は、ロボットに供給される。ロボットは、そのセンサアクションデータの予測値のうちの、アクションデータの予測値に従ったアクションを行う。 Here, when the time-series data from the time-series data input unit 211 is, for example, a vector having the robot action data and sensor data as components (hereinafter also referred to as sensor action data) as described above, The predicted value of the time series data output from the predicted sequence output unit 232, that is, the predicted value of the sensor action data is supplied to the robot. The robot performs an action according to the predicted value of the action data among the predicted values of the sensor action data.
モデルパラメータ出力部233は、担当モジュール決定部231からの情報に基づき、担当モジュールとなった予測モジュール220iを認識する。さらに、モデルパラメータ出力部233は、担当モジュールとなった予測モジュール220iのモデル記憶部221iに記憶されたモデルパラメータとしての、例えば、ウエイトマトリクスを読み出し、モデルパラメータシーケンス生成部202(図15)に供給する。
The model
[時系列シーケンス予測部203の構成例] [Configuration Example of Time Series Sequence Prediction Unit 203]
図18は、図15の最上位階層である第2階層の時系列シーケンス予測部203の構成例を示すブロック図である。
18 is a block diagram illustrating a configuration example of the time-series
図18において、時系列シーケンス予測部203は、時系列データ入力部241、複数であるN個の予測モジュール2501ないし250N、及び、担当モジュール決定部261から構成される。
In FIG. 18, the time-series
ここで、時系列シーケンス予測部203は、図17の予測シーケンス出力部232、及び、モデルパラメータ出力部233に相当するブロックが設けられていないことを除いて、図17の時系列シーケンス予測部201と同様に構成される。
Here, the time-series
時系列データ入力部241には、第1階層の時系列シーケンス予測部201(図15)から、モデルパラメータシーケンス生成部202を経由して、モデルパラメータの系列が、時系列データとして供給される。
The time series data input unit 241 is supplied with a series of model parameters as time series data from the time series sequence prediction unit 201 (FIG. 15) in the first layer via the model parameter
時系列データ入力部241は、第1階層の時系列シーケンス予測部201から、モデルパラメータシーケンス生成部202を経由して供給されるモデルパラメータの系列を受信し、N個の予測モジュール2501ないし250Nに供給する。
The time series data input unit 241 receives a series of model parameters supplied from the time series
予測モジュール250iは、モデル記憶部251i、予測部252i、及び、予測誤差計算部254iから構成され、時系列データ入力部211からの時系列データ(モデルパラメータの系列)に対して、その時系列データの予測値、さらには、その予測値の予測誤差とを求める。 The prediction module 250 i includes a model storage unit 251 i , a prediction unit 252 i , and a prediction error calculation unit 254 i. For the time series data (model parameter series) from the time series data input unit 211, A predicted value of the time series data and a prediction error of the predicted value are obtained.
すなわち、モデル記憶部251iは、図4又は図7の時系列シーケンス学習部13で学習が行われた後の、モデル記憶部33iに記憶されたパターン学習モデルとしての、例えば、RNN#iを記憶している。
That is, the model storage unit 251 i uses, for example, RNN # i as a pattern learning model stored in the model storage unit 33 i after learning by the time-series
予測部252iには、時系列データ入力部241からの時系列データが供給される。予測部252iは、時系列データ入力部241からの時系列データを入力データとして、モデル記憶部251iに記憶されたRNN#iに与えることで、その入力データの次の時刻の入力データの予測値#iである出力データを求め、予測誤差計算部254iに供給する。 The time series data from the time series data input unit 241 is supplied to the prediction unit 252 i . The predicting unit 252 i gives the time series data from the time series data input unit 241 as input data to the RNN # i stored in the model storage unit 251 i , so that the input data at the next time of the input data Output data that is the predicted value #i is obtained and supplied to the prediction error calculator 254 i .
予測誤差計算部254iは、予測部252iからの予測値#iの予測誤差を求め、担当モジュール決定部261に供給する。すなわち、予測誤差計算部254iは、予測部252iからの予測値#iと、時系列データ入力部241からの時系列データ(のうちの、予測値#iの真値)との差分をとることで、予測値#iの予測誤差を求めて、担当モジュール決定部261に供給する。 The prediction error calculation unit 254 i obtains the prediction error of the prediction value #i from the prediction unit 252 i and supplies it to the responsible module determination unit 261. That is, the prediction error calculation unit 254 i calculates the difference between the prediction value #i from the prediction unit 252 i and the time-series data from the time-series data input unit 241 (of which the true value of the prediction value #i). As a result, the prediction error of the prediction value #i is obtained and supplied to the assigned module determination unit 261.
担当モジュール決定部261は、予測誤差計算部2541ないし254Nそれぞれからの予測誤差に基づき、時系列データ入力部241からの時系列データの認識結果となる、その時系列データの予測を担当させることが適切な担当モジュールとなる予測モジュール250iを決定する。 The assigned module determination unit 261 is responsible for the prediction of the time series data that is the recognition result of the time series data from the time series data input unit 241 based on the prediction error from each of the prediction error calculation units 254 1 to 254 N. Determines the prediction module 250 i that is the appropriate module.
すなわち、担当モジュール決定部261は、予測誤差計算部2541ないし254Nそれぞれからの予測誤差に基づき、予測モジュール2501ないし30Nのうちの、予測誤差が最小の予測値が得られる予測モジュール250iを、担当モジュールに決定する。 That is, the assigned module determination unit 261, based on the prediction error from each of the prediction error calculation units 254 1 to 254 N , of the prediction modules 250 1 to 30 N can obtain a prediction value with the smallest prediction error. i is determined to be the module in charge.
そして、担当モジュール決定部261は、担当モジュールを表す情報を、必要に応じて、時系列データ入力部241からの時系列データの認識結果として出力する。 Then, the assigned module determination unit 261 outputs information representing the assigned module as a recognition result of the time series data from the time series data input unit 241 as necessary.
ここで、担当モジュール決定部261では、図17の担当モジュール決定部231と同様に、例えば、1時刻ごとや、所定の時間ごとに、担当モジュールを決定することができる。 Here, the responsible module determination unit 261 can determine the responsible module, for example, every hour or every predetermined time, similarly to the responsible module determination unit 231 of FIG.
[予測処理] [Prediction processing]
図19は、図17の時系列シーケンス予測部201が、図16のステップS101で行う第1階層の予測処理を説明するフローチャートである。
FIG. 19 is a flowchart illustrating the first layer prediction process performed by the time-series
時系列データ入力部211は、外部から時系列データが供給されるのを待って、ステップS111において、その時系列データを受信し、N個の予測モジュール2201ないし220Nに供給して、処理は、ステップS112に進む。 The time-series data input unit 211 waits for the time-series data to be supplied from the outside, receives the time-series data in step S111, supplies it to the N prediction modules 220 1 to 220 N , and the process The process proceeds to step S112.
ステップS112では、各予測モジュール220iにおいて、予測部222iが、モデル記憶部221iから、パターン学習モデルのモデルパラメータとしての、例えば、RNN#iのウエイトマトリクスを読み込み、処理は、ステップS113に進む。 In step S112, in each prediction module 220 i , the prediction unit 222 i reads, for example, a weight matrix of RNN # i as a model parameter of the pattern learning model from the model storage unit 221 i , and the process proceeds to step S113. move on.
ステップS113では、各予測モジュール220iにおいて、予測部222iが、ステップS112で読み込んだウエイトマトリクスで定義されるRNN#iに対して、時系列データ入力部211から供給される時系列データを入力データとして与えることで、その入力データの次の時刻の入力データの予測値#iである出力データを求め、予測値出力部223i、及び、予測誤差計算部224iに供給する。 In step S113, in each prediction module 220 i , the prediction unit 222 i inputs time-series data supplied from the time-series data input unit 211 to RNN # i defined by the weight matrix read in step S112. By giving as data, output data that is the predicted value #i of the input data at the next time of the input data is obtained and supplied to the predicted value output unit 223 i and the prediction error calculation unit 224 i .
そして、予測値出力部223iが、予測部222iからの予測値#iを受信し、予測シーケンス出力部232に供給して、処理は、ステップS113からステップS114に進む。 Then, the prediction value output unit 223 i receives the prediction value #i from the prediction unit 222 i and supplies the prediction value #i to the prediction sequence output unit 232, and the process proceeds from step S113 to step S114.
ステップS114では、予測モジュール2201ないし220Nが、予測値#1ないし#Nの予測誤差を求め、担当モジュール決定部231に供給して、処理は、ステップS114からS115に進む。 In step S114, the prediction modules 220 1 to 220 N obtain prediction errors of the prediction values # 1 to #N and supply the prediction errors to the responsible module determination unit 231, and the process proceeds from step S114 to S115.
ステップS115では、担当モジュール決定部231が、予測誤差計算部2241ないし224Nそれぞれからの、予測値#1ないし#Nの予測誤差に基づき、例えば、1時刻ごとに、予測誤差が最小の予測値が得られた予測モジュール220iを担当モジュールに決定する。さらに、担当モジュール決定部231は、担当モジュールの情報を、予測シーケンス出力部232、及び、モデルパラメータ出力部233に供給して、処理は、ステップS115からステップS116に進む。
In step S115, the assigned module determination unit 231 performs prediction based on the prediction errors of the prediction values # 1 to #N from the prediction error calculation units 224 1 to 224 N , for example, with the smallest prediction error every time. The prediction module 220 i from which the value is obtained is determined as the responsible module. Further, the assigned module determination unit 231 supplies the assigned module information to the prediction sequence output unit 232 and the model
ステップS116では、モデルパラメータ出力部233は、担当モジュール決定部231からの情報に基づき、各時刻に担当モジュールとなった予測モジュール220iのモデル記憶部221iに記憶されたモデルパラメータとしての、例えば、RNN#iのウエイトマトリクスを読み出し、モデルパラメータシーケンス生成部202(図15)に供給する。
In step S116, the model
そして、処理は、ステップS116からステップステップS117に進み、予測シーケンス出力部232が、担当モジュール決定部231からの情報に基づき、各時刻に担当モジュールとなった予測モジュール220iの予測値出力部2231から供給される予測値#iを、時系列データ入力部211からの時系列データの予測値として出力して、予測処理は終了する。 Then, the process proceeds from step S116 to step S117, where the prediction sequence output unit 232 is based on the information from the responsible module determination unit 231, and the predicted value output unit 223 of the prediction module 220 i that becomes the responsible module at each time. The prediction value #i supplied from 1 is output as the prediction value of the time-series data from the time-series data input unit 211, and the prediction process ends.
なお、図10の時系列シーケンス予測部203が、図6のステップS103で行う第2階層の予測処理では、ステップS111で、時系列データ入力部241が受信するのが、時系列シーケンス予測部201から、モデルパラメータシーケンス生成部202を経由して供給されるモデルパラメータの系列である点、ステップS116で、モデルパラメータを出力することが行われない(ステップS116の処理が行われない)点、及び、ステップS117で、予測値を出力することが行われない(ステップS117の処理が行われない)点を除けば、図19の予測処理と同様の処理が行われるため、説明を省略する。
In the second layer prediction process performed by the time-series
[予測装置の他の実施の形態] [Another embodiment of the prediction apparatus]
図15では、予測装置の階層構造を、2階層の階層構造としたが、予測装置の階層構造は、3階層以上の階層構造とすることができる。 In FIG. 15, the hierarchical structure of the prediction device is a two-level hierarchical structure, but the hierarchical structure of the prediction device can be a three-layer or higher hierarchical structure.
すなわち、図20は、本発明の情報処理装置を適用した予測装置の他の一実施の形態の構成例を示すブロック図である。 That is, FIG. 20 is a block diagram illustrating a configuration example of another embodiment of the prediction device to which the information processing device of the present invention is applied.
なお、図中、図15の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。 In the figure, portions corresponding to those in the case of FIG. 15 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate.
図20の予測装置では、パターン学習モデルを用いた予測を行う複数の予測モジュールを有する複数の予測手段としての3つの時系列シーケンス予測部201,203、及び204が、3階層の階層構造を構成するように接続されている。
In the prediction apparatus of FIG. 20, three time-series
すなわち、図20では、最下位階層である第1階層の時系列シーケンス予測部201と、最下位階層から2番目の階層である第2階層の時系列シーケンス予測部204とが、上位階層と下位階層との間のインタフェースとなるモデルパラメータシーケンス生成部202を介して接続されている。
That is, in FIG. 20, the time-series
さらに、図20では、第2階層の時系列シーケンス予測部204と、最上位階層である第3階層の時系列シーケンス予測部203とが、上位階層と下位階層との間のインタフェースとなるモデルパラメータシーケンス生成部205を介して接続されている。
Further, in FIG. 20, model parameters that serve as an interface between the upper layer and the lower layer are the time-series
第2階層の時系列シーケンス予測部204は、最下位階層である第1階層の時系列シーケンス予測部201と同様に構成される。
The second layer time series
そして、時系列シーケンス予測部204は、モデルパラメータシーケンス生成部202から供給されるモデルパラメータの系列を、時系列データとして、パターン学習モデルに与えて、そのモデルパラメータの予測を行い、その予測に用いたパターン学習モデル(担当モジュールとなっている予測モジュールが有するパターン学習モデル)のモデルパラメータを、モデルパラメータシーケンス生成部205に供給する。
Then, the time series
モデルパラメータシーケンス生成部205は、モデルパラメータシーケンス生成部202と同様に構成される。モデルパラメータシーケンス生成部205は、第2階層の時系列シーケンス予測部204から供給されるモデルパラメータから、最上位階層である第3階層に与えるモデルパラメータの系列(時系列シーケンス予測部204のリソースダイナミクス)を生成し、第3階層の時系列シーケンス予測部203に供給する。
The model parameter
図21は、図20の予測装置の処理を説明するフローチャートである。 FIG. 21 is a flowchart for explaining processing of the prediction apparatus of FIG.
第1階層の時系列シーケンス予測部201は、外部から、時系列データが供給されるのを待って、ステップS131において、外部からの時系列データを、パターン学習モデルに与えて、その時系列データを予測する予測処理(第1階層の予測処理)を行う。
The time-series
さらに、第1階層の時系列シーケンス予測部201は、予測に用いたパターン学習モデルのモデルパラメータを、モデルパラメータシーケンス生成部202に供給して、処理は、ステップS131からステップS132に進む。
Furthermore, the time-series
ステップS132では、モデルパラメータシーケンス生成部202は、時系列シーケンス予測部201からのモデルパラメータの系列を生成し、第2階層の時系列シーケンス予測部204に供給して、処理は、ステップS133に進む。
In step S132, the model parameter
ステップS133では、第2階層の時系列シーケンス予測部204が、モデルパラメータシーケンス生成部202からのモデルパラメータの系列、つまり、下位階層(図20では、第1階層)の時系列シーケンス予測部201が予測に用いたパターン学習モデルのモデルパラメータの系列を用いて、そのモデルパラメータを予測する予測処理(第2階層の予測処理)を行う。
In step S133, the time-series
さらに、第2階層の時系列シーケンス予測部204は、予測に用いたパターン学習モデルのモデルパラメータを、モデルパラメータシーケンス生成部205に供給して、処理は、ステップS133からステップS134に進む。
Further, the time-series
ステップS134では、モデルパラメータシーケンス生成部205は、時系列シーケンス予測部204からのモデルパラメータの系列を生成し、最上位階層である第3階層の時系列シーケンス予測部203に供給して、処理は、ステップS135に進む。
In step S134, the model parameter
ステップS135では、第3階層の時系列シーケンス予測部203が、モデルパラメータシーケンス生成部205からのモデルパラメータの系列、つまり、下位階層(図20では、第2階層)の時系列シーケンス予測部204が予測に用いたパターン学習モデルのモデルパラメータの系列を用いて、そのモデルパラメータを予測する予測処理(第3階層の予測処理)を行い、処理は終了する。
In step S135, the time-series
[シミュレーション結果] [simulation result]
次に、本件発明者が、図1の学習装置、及び、図15の予測装置について行ったシミュレーションについて説明する。 Next, the simulation performed by the present inventor for the learning device in FIG. 1 and the prediction device in FIG. 15 will be described.
シミュレーションとしては、自律的に移動する移動ロボットを、所定の環境(移動環境)の中を移動させるシミュレーションを行った。 As a simulation, a simulation was performed in which a mobile robot that moves autonomously moves in a predetermined environment (mobile environment).
図22は、移動ロボットが移動する移動環境の概要を説明する図である。 FIG. 22 is a diagram for explaining an outline of a moving environment in which a mobile robot moves.
移動環境としては、光源が設置され、四方が壁で囲まれた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 addition, in the mobile environment, there are walls that become obstacles inside the mobile environment in addition to the walls that surround the four sides.
また、移動ロボットには、移動ロボットから周囲の8方向それぞれについて、壁(移動環境を囲む壁と、移動環境内の障害物としての壁との両方を含む)までの距離をセンシングする距離センサ、及び、光の強度をセンシングする光センサを搭載した。 The mobile robot includes a distance sensor that senses the distance from the mobile robot to a wall (including both a wall surrounding the mobile environment and a wall as an obstacle in the mobile environment) in each of the eight surrounding directions. And the optical sensor which senses the intensity of light was installed.
また、移動ロボットは、水平方向(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 action data If given, the movement vector (m x , m y ) moves.
シミュレーションでは、以上のような移動ロボットを採用し、移動ロボットに与えるセンサアクションデータ、及び、移動ロボットから観測されるセンサアクションデータとして、アクションデータとしての移動ベクトル(mx,my)、並びに、センサデータとしての、距離センサが出力する、8方向それぞれについての距離d1,d2,d3,d4,d5,d6,d7,d8、及び、光センサが出力する、8方向それぞれについての光の強度l1,l2,l3,l4,l5,l6,l7,l8をコンポーネントとする18次元のベクトル(mx,my,d1,d2,d3,d4,d5,d6,d7,d8,l1,l2,l3,l4,l5,l6,l7,l8)を採用した。
In the simulation, adopts above-described mobile robot, sensor action data to be supplied to the mobile robot, and, as a sensor action data observed from the mobile robot, the moving vector as action data (m x, m y), and, As the sensor data, distances d 1 , d 2 , d 3 , d 4 , d 5 , d 6 , d 7 , d 8 output from the distance sensor and the optical sensor output 8 the intensity of the light l 1 for each direction, l 2, l 3, l 4, l 5, l 6,
なお、センサアクションデータは、移動ロボットが自律的に移動した場合も、人が手動で、移動ロボットを移動させた場合も、移動ロボットから観測することができる。 Note that the sensor action data can be observed from the mobile robot both when the mobile robot moves autonomously and when the human moves the mobile robot manually.
図23は、シミュレーションで採用した移動環境を示す平面図である。 FIG. 23 is a plan view showing a moving environment employed in the simulation.
移動環境は、四方が壁で囲まれた長方形の2次元平面であり、移動環境内には、障害物としての2つの壁が存在する。2つの壁は、移動環境の下部に、移動ロボットの水平方向の移動を妨げるように設けられている。なお、2つの壁は、長方形の移動環境を2等分する垂直方向の直線に対して、線対称となるように、左側と右側とに設けられている。 The moving environment is a rectangular two-dimensional plane surrounded by walls on all sides, and there are two walls as obstacles in the moving environment. The two walls are provided at the bottom of the mobile environment so as to prevent the mobile robot from moving in the horizontal direction. The two walls are provided on the left side and the right side so as to be symmetrical with respect to a vertical straight line that bisects the rectangular moving environment.
さらに、移動環境内には、移動環境の下部の、長方形の移動環境を2等分する垂直方向の直線(以下、単に、垂直方向直線ともいう)上に、1つの光源が設けられている。 Further, in the moving environment, one light source is provided on a vertical straight line (hereinafter also simply referred to as a vertical straight line) that bisects the rectangular moving environment at the bottom of the moving environment.
したがって、移動環境は、垂直方向直線に対して、線対称になっており、移動環境のある位置と、その位置と垂直方向直線に対して線対称の位置とでは、同一のセンサデータが得られる。 Therefore, the moving environment is line-symmetric with respect to the vertical straight line, and the same sensor data can be obtained at a position where the moving environment is located and a position line-symmetric with respect to the position and the vertical straight line. .
図24は、図1の学習装置に与える、学習データとなる時系列データとしての、移動ロボットの、移動環境の移動の軌跡(行動シーケンス)を示す図である。 FIG. 24 is a diagram showing a movement path (behavior sequence) of the mobile environment of the mobile robot as time series data serving as learning data given to the learning apparatus of FIG.
なお、図1の学習装置に与えられる学習データは、図24の軌跡そのものではなく、図24の軌跡に沿って移動ロボットを移動させた場合に、移動ロボットにおいて観測されるセンサアクションデータの時系列である。 Note that the learning data given to the learning device in FIG. 1 is not the trajectory itself in FIG. 24 but the time series of sensor action data observed in the mobile robot when the mobile robot is moved along the trajectory in FIG. It is.
図24の軌跡(行動シーケンス)は、移動環境内を、壁を避けながら、円を描くように移動する反射行動が行われる場合に、移動環境内に描かれる軌跡であり、学習装置では、そのような反射行動が学習される。 The trajectory (behavior sequence) in FIG. 24 is a trajectory drawn in the moving environment when a reflective action that moves in a circle while avoiding walls in the moving environment is performed. Such reflex behavior is learned.
シミュレーションでは、3000サンプル(ステップ)の学習データ(3000時刻分の学習データ)を用い、最下位階層である第1階層の複数のパターン学習モデルとしての100個のRNNの学習を、分節学習によって行った。 In the simulation, learning of 100 RNNs as a plurality of pattern learning models in the first layer, which is the lowest layer, is performed by segmental learning using 3000 samples (steps) of learning data (3000 hours of learning data). It was.
図25は、最下位階層である第1階層の100個のRNNを、そのRNNのウエイトマトリクスを用い、k-means法によって、10個のクラスタ(カテゴリ)にクラスタリングした、その10個のクラスタを示す図である。 FIG. 25 shows the 10 clusters obtained by clustering the 100 RNNs of the first layer, which is the lowest layer, into 10 clusters (categories) by the k-means method using the weight matrix of the RNN. FIG.
なお、図25において、"C"と数字#kとでなる文字列C#kは、10個のクラスタのうちの、k番目のクラスタを表す。さらに、クラスタを表す文字列C#kの右側のかっこ内の数字は、クラスタC#kに属するRNNのウエイトマトリクスの分散に相当する値である。 In FIG. 25, a character string C # k consisting of “C” and the number #k represents the k-th cluster among the ten clusters. Furthermore, the number in parentheses on the right side of the character string C # k representing the cluster is a value corresponding to the variance of the weight matrix of the RNN belonging to the cluster C # k.
また、図25では、クラスタC#kを、そのクラスタC#kに属するRNNが学習した、移動環境中の軌跡(上述したように、学習するのは、軌跡そのものではなく、その軌跡に沿って移動ロボットを移動させた場合に、移動ロボットにおいて観測されるセンサアクションデータの時系列)によって表している。 In FIG. 25, the cluster C # k is learned by the RNN belonging to the cluster C # k in the moving environment (as described above, the learning is not performed on the trajectory itself but along the trajectory. This is represented by a time series of sensor action data observed in the mobile robot when the mobile robot is moved.
さらに、図25において、クラスタC#kとしての軌跡中に付してある3桁の数字は、その軌跡を学習(獲得)したRNNを識別するモデルIDである。 Further, in FIG. 25, a three-digit number added to the locus as the cluster C # k is a model ID for identifying the RNN that has learned (acquired) the locus.
図25によれば、最下位階層である第1階層の100個のRNNは、基本的に、移動環境中の、ある特定の領域内の軌跡を学習したRNNごとにクラスタリングされることを確認することができる。 According to FIG. 25, it is confirmed that the 100 RNNs in the first hierarchy, which is the lowest hierarchy, are basically clustered for each RNN that has learned a trajectory in a specific area in the mobile environment. be able to.
したがって、移動ロボットで観測されるセンサアクションデータを学習後のRNNの入力として、最下位階層である第1階層の100個のRNNの中から、予測誤差が最小になる予測値が得られるRNN(以下、勝者(winner)ともいう)を特定することによって、移動ロボットが存在する移動環境内の位置を同定することができる。 Therefore, the sensor action data observed by the mobile robot is used as the input of the RNN after learning, and an RNN (100) that provides the predicted value with the smallest prediction error is obtained from the 100 RNNs in the first hierarchy, which is the lowest hierarchy. In the following, the position in the mobile environment where the mobile robot exists can be identified.
なお、図25において、カテゴリC7には、移動環境中の左側の壁の左側の領域内の軌跡を学習したRNNと、右側の壁の右側の領域内の軌跡を学習したRNNとの両方がクラスタリングされている。これは、移動環境中の左側の壁の左側の領域と、右側の壁の右側の領域とでは、局所的には、同様のセンサアクションデータの時系列が観測されることが原因であると考えられる。 In FIG. 25, in category C7, both the RNN that has learned the trajectory in the left region of the left wall in the mobile environment and the RNN that has learned the trajectory in the right region of the right wall are clustered. Has been. This is considered to be caused by the fact that the same time series of sensor action data is observed locally in the left area of the left wall and the right area of the right wall in the mobile environment. It is done.
したがって、最下位階層である第1階層の100個のRNNのうちの、カテゴリC7に属するRNNが勝者となる場合には、その、最下位階層である第1階層の勝者だけからでは、移動環境中の左側の壁の左側の領域と、右側の壁の右側の領域とのうちの、いずれの領域に、移動ロボットが存在するのかを同定することが困難となる。 Therefore, when the RNN belonging to the category C7 among the 100 RNNs of the first hierarchy that is the lowest hierarchy is the winner, the mobile environment is determined only from the winner of the first hierarchy that is the lowest hierarchy. It is difficult to identify in which region the mobile robot exists in the left region of the left inner wall and the right region of the right wall.
シミュレーションでは、最上位階層である第2階層の複数のパターン学習モデルとして、32個のRNNを用意し、その32個のRNNの分節学習を、最下位階層である第1階層の100個のRNNのウエイトマトリクスの時系列を用いて行った。 In the simulation, 32 RNNs are prepared as a plurality of pattern learning models in the second hierarchy that is the highest hierarchy, and segmentation learning of the 32 RNNs is performed on 100 RNNs in the first hierarchy that is the lowest hierarchy. The time series of the weight matrix was used.
図26ないし図28は、最下位階層である第1階層の100個のRNN、及び、最上位階層である第2階層の32個のRNNの学習後の予測処理において、勝者となるRNN(担当モジュールとなる予測モジュールが有するRNN)が学習した、移動環境中の軌跡(上述したように、学習するのは、軌跡そのものではなく、その軌跡に沿って移動ロボットを移動させた場合に、移動ロボットにおいて観測されるセンサアクションデータの時系列)を示す図である。 26 to 28 show the RNN (in charge) that is the winner in the prediction process after learning of the 100 RNNs of the first hierarchy that is the lowest hierarchy and the 32 RNNs of the second hierarchy that is the highest hierarchy. The trajectory in the mobile environment learned by the RNN of the prediction module that is the module (as described above, learning is not the trajectory itself, but when the mobile robot is moved along that trajectory, the mobile robot It is a figure which shows the time series of the sensor action data observed in FIG.
すなわち、図26は、移動ロボットが、移動環境内の光源の近くに位置する場合に勝者となるRNNが学習した軌跡を示している。 That is, FIG. 26 shows a trajectory learned by the winner RNN when the mobile robot is located near the light source in the mobile environment.
図26Aは、移動ロボットが存在する移動環境中の位置を示している。図26Aでは、移動ロボットは、移動環境内の光源の近くに位置する。なお、図26Aにおいて(図27及び図28でも同様)、点線の円は、移動ロボットに搭載された距離センサと、光センサとがセンシングを行うことができる範囲を表す。 FIG. 26A shows the position in the mobile environment where the mobile robot exists. In FIG. 26A, the mobile robot is located near the light source in the mobile environment. In FIG. 26A (the same applies to FIGS. 27 and 28), a dotted circle represents a range where the distance sensor mounted on the mobile robot and the optical sensor can perform sensing.
図26Bは、移動ロボットが、図26Aの位置を移動している場合に、最下位階層である第1階層の100個のRNNの中で、勝者となるRNNが学習した軌跡と、そのRNNと同一のクラスタにクラスタリングされるRNNが学習した軌跡とを示している。 FIG. 26B shows a trajectory learned by the winner RNN among the 100 RNNs of the first hierarchy, which is the lowest hierarchy, when the mobile robot is moving the position of FIG. The trajectory learned by the RNN clustered in the same cluster is shown.
図26Cは、移動ロボットが、図26Aの位置を移動している場合に、最上位階層である第2階層の32個のRNNの中で、勝者となるRNNが学習した軌跡を示している。 FIG. 26C shows a trajectory learned by the winner RNN among the 32 RNNs of the second hierarchy, which is the highest hierarchy, when the mobile robot is moving the position of FIG. 26A.
ここで、最上位階層である第2階層のRNNは、移動環境中の軌跡を、いわば直接的に学習するのではなく、最下位階層である第1階層のRNNが学習した軌跡を、そのRNNのモデルパラメータの学習を通じて、いわば間接的に学習する。最上位階層である第2階層のRNNが学習した軌跡とは、そのような間接的に学習がされた軌跡である。 Here, the RNN of the second hierarchy, which is the highest hierarchy, does not directly learn the trajectory in the mobile environment, but the RNN learns the trajectory learned by the RNN of the first hierarchy, which is the lowest hierarchy. In other words, it learns indirectly through the learning of model parameters. The trajectory learned by the RNN of the second hierarchy, which is the highest hierarchy, is such a trajectory learned indirectly.
図26によれば、移動ロボットが、移動環境内の光源の近くに位置する場合に、その位置付近の軌跡を学習したRNNが、最下位階層である第1階層、及び、最上位階層である第2階層のいずれにおいても、勝者になっていることを確認することができる。 According to FIG. 26, when the mobile robot is located near the light source in the mobile environment, the RNN that learned the locus near the position is the first hierarchy and the highest hierarchy that are the lowest hierarchy. In any of the second tiers, it can be confirmed that the player is a winner.
図27は、移動ロボットが、移動環境内の左側の壁の左側に位置する場合に勝者となるRNNが学習した軌跡を示している。 FIG. 27 shows the trajectory learned by the winner RNN when the mobile robot is located on the left side of the left wall in the mobile environment.
図27Aは、移動ロボットが存在する移動環境中の位置を示している。図27Aでは、移動ロボットは、移動環境内の左側の壁の左側に位置する。 FIG. 27A shows the position in the mobile environment where the mobile robot exists. In FIG. 27A, the mobile robot is located on the left side of the left wall in the mobile environment.
図27Bは、移動ロボットが、図27Aの位置を移動している場合に、最下位階層である第1階層の100個のRNNの中で、勝者となるRNNが学習した軌跡と、そのRNNと同一のクラスタにクラスタリングされるRNNが学習した軌跡とを示している。 FIG. 27B shows the path learned by the winner RNN among the 100 RNNs in the first hierarchy, which is the lowest hierarchy, and the RNN when the mobile robot is moving the position of FIG. 27A. The trajectory learned by the RNN clustered in the same cluster is shown.
図27Cは、移動ロボットが、図27Aの位置を移動している場合に、最上位階層である第2階層の32個のRNNの中で、勝者となるRNNが学習した軌跡を示している。 FIG. 27C shows a trajectory learned by the winner RNN among the 32 RNNs of the second hierarchy, which is the highest hierarchy, when the mobile robot is moving the position of FIG. 27A.
図27Bによれば、移動ロボットが、移動環境内の左側の壁の左側に位置する場合に、最下位階層である第1階層では、移動ロボットが存在する位置付近の軌跡を学習したRNNが勝者になることもあるし、移動ロボットが存在する位置ではない、移動環境内の右側の壁の右側に位置付近の軌跡を学習したRNNが勝者になることもあって、移動ロボットの位置の同定が誤りやすいことを確認することができる。 According to FIG. 27B, when the mobile robot is located on the left side of the left wall in the mobile environment, the RNN who has learned the trajectory near the position where the mobile robot exists is the winner in the first hierarchy, which is the lowest hierarchy. The location of the mobile robot can be identified because the RNN who has learned the trajectory near the position on the right side of the right wall in the mobile environment is not the position where the mobile robot exists. It can be confirmed that it is easy to make mistakes.
一方、図27Cによれば、移動ロボットが、移動環境内の左側の壁の左側に位置する場合に、最上位階層である第2階層では、移動ロボットが存在する位置付近の軌跡を学習したRNNが勝者になり、移動ロボットの位置を同定することができることを確認することができる。 On the other hand, according to FIG. 27C, when the mobile robot is located on the left side of the left wall in the mobile environment, in the second hierarchy that is the highest hierarchy, the RNN that has learned the locus near the position where the mobile robot exists. Can be confirmed to be a winner and to be able to identify the position of the mobile robot.
図28は、移動ロボットが、移動環境内の右側の壁の右側に位置する場合に勝者となるRNNが学習した軌跡を示している。 FIG. 28 shows the trajectory learned by the winner RNN when the mobile robot is located on the right side of the right wall in the mobile environment.
図28Aは、移動ロボットが存在する移動環境中の位置を示している。図28Aでは、移動ロボットは、移動環境内の右側の壁の右側に位置する。 FIG. 28A shows the position in the mobile environment where the mobile robot exists. In FIG. 28A, the mobile robot is located on the right side of the right wall in the mobile environment.
図28Bは、移動ロボットが、図28Aの位置を移動している場合に、最下位階層である第1階層の100個のRNNの中で、勝者となるRNNが学習した軌跡と、そのRNNと同一のクラスタにクラスタリングされるRNNが学習した軌跡とを示している。 FIG. 28B shows a path that the winner RNN has learned among 100 RNNs in the first hierarchy, which is the lowest hierarchy, when the mobile robot is moving the position of FIG. The trajectory learned by the RNN clustered in the same cluster is shown.
図28Cは、移動ロボットが、図28Aの位置を移動している場合に、最上位階層である第2階層の32個のRNNの中で、勝者となるRNNが学習した軌跡を示している。 FIG. 28C shows a trajectory learned by the winner RNN among the 32 RNNs of the second hierarchy, which is the highest hierarchy, when the mobile robot is moving the position of FIG. 28A.
図28Bによれば、移動ロボットが、移動環境内の右側の壁の右側に位置する場合に、最下位階層である第1階層では、移動ロボットが存在する位置付近の軌跡を学習したRNNが勝者になることもあるし、移動ロボットが存在する位置ではない、移動環境内の左側の壁の左側に位置付近の軌跡を学習したRNNが勝者になることもあって、移動ロボットの位置の同定が誤りやすいことを確認することができる。 According to FIG. 28B, when the mobile robot is located on the right side of the right wall in the mobile environment, the RNN who has learned the trajectory near the position where the mobile robot exists is the winner in the first hierarchy, which is the lowest hierarchy. The location of the mobile robot can be identified because the RNN who has learned the locus near the position on the left side of the left wall in the mobile environment is not the location where the mobile robot exists. It can be confirmed that it is easy to make mistakes.
一方、図28Cによれば、移動ロボットが、移動環境内の右側の壁の右側に位置する場合に、最上位階層である第2階層では、移動ロボットが存在する位置付近の軌跡を学習したRNNが勝者になり、移動ロボットの位置を同定することができることを確認することができる。 On the other hand, according to FIG. 28C, when the mobile robot is located on the right side of the right wall in the mobile environment, the RNN that has learned the locus near the position where the mobile robot exists in the second hierarchy, which is the highest hierarchy. Can be confirmed to be a winner and to be able to identify the position of the mobile robot.
以上のように、階層構造の下位階層と上位階層との間のインタフェースとして、下位階層のパターン学習モデルのモデルパラメータの系列を用いることにより、容易に(再学習なしで)、追加学習を行うことが可能となる。 As described above, additional learning can be performed easily (without re-learning) by using the model parameter series of the pattern learning model of the lower layer as an interface between the lower layer and the upper layer of the hierarchical structure. Is possible.
また、下位階層のパターン学習モデル(のモデルパラメータ(最下位階層については、外部からの時系列データ))どうしの距離構造が、上位階層のパターン学習モデルに伝播され、認識のロバスト性の向上が期待できる。 In addition, the distance structure between the lower-layer pattern learning models (model parameters (for the lowest layer, time-series data from the outside)) is propagated to the upper-layer pattern learning model, which improves recognition robustness. I can expect.
なお、図1等の学習装置、及び、図15等の予測装置に対して、外部から与える時系列データは、特に限定されるものではない。すなわち、外部から与える時系列データとしては、例えば、PC(Personal Computer)のUI(User Interface)をユーザが操作したときの、その操作の内容を表すデータの時系列や、センサ及びアクチュエータを有するロボットのセンサが出力する信号(センサデータ)と、アクチュエータに与えられる駆動信号(アクションデータ)とをコンポーネントとするベクトルの時系列等を採用することができる。また、外部から与える時系列データとしては、例えば、音楽や音声その他の音のデータの時系列や、画像のデータの時系列、言語処理の対象となる文字列としての音素や、単語、文のデータの時系列等を採用することができる。 Note that time-series data given from the outside to the learning device in FIG. 1 and the like and the prediction device in FIG. 15 is not particularly limited. That is, as time series data given from the outside, for example, when a user operates a UI (User Interface) of a PC (Personal Computer), a time series of data representing the contents of the operation, or a robot having a sensor and an actuator It is possible to employ a time series of vectors having components of signals output from the sensor (sensor data) and drive signals (action data) applied to the actuator. The time series data given from the outside includes, for example, a time series of music, voice and other sound data, a time series of image data, a phoneme as a character string to be subjected to language processing, a word, a sentence A time series of data can be employed.
また、本実施の形態では、下位階層の複数のパターン学習モデルすべてのモデルパラメータを、上位階層のパターン学習モデルに与えて、学習処理や予測処理を行うこととしたが、上位階層のパターン学習モデルに与えるモデルパラメータは、下位階層の複数のパターン学習モデルの一部のモデルパラメータであっても良い。 In the present embodiment, the model parameters of all of the plurality of pattern learning models in the lower hierarchy are given to the pattern learning model in the upper hierarchy, and the learning process and the prediction process are performed. The model parameters given to may be some model parameters of a plurality of pattern learning models in a lower hierarchy.
すなわち、分節学習では、下位階層の複数のパターン学習モデルのうちの、2以上のパターン学習モデルの学習が、同じような時系列パターンの時系列データを用いて行われることがあり、この場合、その2以上のパターン学習モデルのモデルパラメータは、類似したパラメータとなる。このような場合、モデルパラメータが類似する2以上のパターン学習モデルについては、その2以上のパターン学習モデルのうちの、例えば、1つのパターン学習モデルを代表として、その代表のパターン学習モデルのモデルパラメータだけを、上位階層に与えることができる。 That is, in segmental learning, learning of two or more pattern learning models among a plurality of pattern learning models in a lower hierarchy may be performed using time series data of similar time series patterns. The model parameters of the two or more pattern learning models are similar parameters. In such a case, for two or more pattern learning models having similar model parameters, for example, one pattern learning model of the two or more pattern learning models is used as a representative model parameter of the representative pattern learning model. Can be given to the upper hierarchy.
また、本実施の形態では、下位階層のパターン学習モデルのモデルパラメータのすべてを、上位階層のパターン学習モデルに与えて、学習処理や予測処理を行うこととしたが、上位階層のパターン学習モデルに与えるモデルパラメータは、下位階層のパターン学習モデルのモデルパラメータの一部であっても良い。 In this embodiment, all the model parameters of the lower layer pattern learning model are given to the upper layer pattern learning model to perform the learning process and the prediction process. The given model parameter may be a part of the model parameter of the lower layer pattern learning model.
さらに、本実施の形態では、図9で説明したように、分節学習において、共有処理を行うようにしたが、分節学習を行う場合に、共有処理は、必ずしも行わなくて良い。 Furthermore, in this embodiment, as described with reference to FIG. 9, the sharing process is performed in the segment learning. However, in the case of performing the segment learning, the sharing process is not necessarily performed.
[本発明を適用したコンピュータの説明] [Description of Computer to which the Present Invention is Applied]
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。 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.
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク305やROM303に予め記録しておくことができる。
The program can be recorded in advance on a
あるいはまた、プログラムは、リムーバブル記録媒体311に格納(記録)しておくことができる。このようなリムーバブル記録媒体311は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブル記録媒体311としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
Alternatively, the program can be stored (recorded) in a
なお、プログラムは、上述したようなリムーバブル記録媒体311からコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵するハードディスク305にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
In addition to installing the program from the
コンピュータは、CPU(Central Processing Unit)302を内蔵しており、CPU302には、バス301を介して、入出力インタフェース310が接続されている。
The computer includes a CPU (Central Processing Unit) 302, and an input /
CPU302は、入出力インタフェース310を介して、ユーザによって、入力部307が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)303に格納されているプログラムを実行する。あるいは、CPU302は、ハードディスク305に格納されたプログラムを、RAM(Random Access Memory)304にロードして実行する。
The
これにより、CPU302は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU302は、その処理結果を、必要に応じて、例えば、入出力インタフェース310を介して、出力部306から出力、あるいは、通信部308から送信、さらには、ハードディスク305に記録等させる。
Thereby, the
なお、入力部307は、キーボードや、マウス、マイク等で構成される。また、出力部306は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
Note that the
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含む。 Here, in the present specification, the processing performed by the computer according to the program does not necessarily have to be performed in time series in the order described as the flowchart. That is, the processing performed by the computer according to the program includes processing executed in parallel or individually (for example, parallel processing or object processing).
また、プログラムは、1のコンピュータ(プロセッサ)により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。 Further, the program may be processed by one computer (processor) 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.
11 時系列シーケンス学習部, 12 モデルパラメータシーケンス生成部, 13,14 時系列シーケンス学習部, 15 モデルパラメータシーケンス生成部, 21 時系列データ入力部, 301ないし30N 学習モジュール, 311ないし31N 学習データ入力部, 321ないし32N モデル学習部, 331ないし33N モデル記憶部, 341ないし34N 予測部, 351ないし35N 予測誤差計算部, 41 担当モジュール決定部, 42 モデルパラメータ出力部, 51 時系列データ入力部, 601ないし60N 学習モジュール, 611ないし61N 学習データ入力部, 621ないし62N モデル学習部, 631ないし63N モデル記憶部, 641ないし64N 予測部, 651ないし65N 予測誤差計算部, 71 担当モジュール決定部, 102 データ抽出部, 121 モデルパラメータ共有部, 122 モデルパラメータ出力部, 132 データ抽出部, 151 モデルパラメータ共有部, 191 ウエイトマトリクス共有部, 201 時系列シーケンス予測部, 202 モデルパラメータシーケンス生成部, 203,204 時系列シーケンス予測部, 205 モデルパラメータシーケンス生成部, 211 時系列データ入力部, 2201ないし220N 予測モジュール, 2211ないし221N モデル記憶部, 2221ないし222N 予測部, 2231ないし223N 予測値出力部, 2241ないし224N 予測誤差計算部, 231 担当モジュール決定部, 232 予測シーケンス出力部, 233 モデルパラメータ出力部, 241 時系列データ入力部, 2501ないし250N 予測モジュール, 2511ないし251N モデル記憶部, 2521ないし252N 予測部, 2541ないし254N 予測誤差計算部, 261 担当モジュール決定部, 301 バス, 302 CPU, 303 ROM, 304 RAM, 305 ハードディスク, 306 出力部, 307 入力部, 308 通信部, 309 ドライブ, 310 入出力インタフェース, 311 リムーバブル記録媒体 11 Time Series Sequence Learning Unit, 12 Model Parameter Sequence Generation Unit, 13, 14 Time Series Sequence Learning Unit, 15 Model Parameter Sequence Generation Unit, 21 Time Series Data Input Unit, 30 1 to 30 N Learning Module, 31 1 to 31 N Learning data input unit, 32 1 to 32 N model learning unit, 33 1 to 33 N model storage unit, 34 1 to 34 N prediction unit, 35 1 to 35 N prediction error calculation unit, 41 responsible module determination unit, 42 model parameter Output unit, 51 Time series data input unit, 60 1 to 60 N learning module, 61 1 to 61 N learning data input unit, 62 1 to 62 N model learning unit, 63 1 to 63 N model storage unit, 64 1 to 64 N prediction section, 65 1 to 65 N prediction error calculation section, 71 responsible module determination section, 102 data Data extraction unit, 121 model parameter sharing unit, 122 model parameter output unit, 132 data extraction unit, 151 model parameter sharing unit, 191 weight matrix sharing unit, 201 time series sequence prediction unit, 202 model parameter sequence generation unit, 203, 204 time series sequence prediction unit, 205 model parameter sequence generation unit, 211 time series data input unit, 220 1 to 220 N prediction module, 221 1 to 221 N model storage unit, 222 1 to 222 N prediction unit, 223 1 to 223 N prediction value output unit, 224 1 to 224 N prediction error calculation unit, 231 responsible module determination unit, 232 prediction sequence output unit, 233 model parameter output unit, 241 time series data input unit, 250 1 to 250 N prediction module 251 1 to 251 N model storage unit, 252 1 to 252 N prediction unit, 254 1 to 254 N prediction error calculation unit, 261 responsible module determination unit, 301 bus, 302 CPU, 303 ROM, 304 RAM, 305 hard disk, 306 output unit, 307 input unit, 308 communication unit, 309 drive, 310 input / output interface, 311 removable recording medium
Claims (9)
上位階層の前記学習手段が有する前記学習モジュールは、その上位階層の前記学習手段の下位階層の前記学習手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記パターン学習モデルの学習を行う
情報処理装置。 A plurality of learning means having a plurality of learning modules for learning a pattern learning model for learning a time series pattern are connected to form a hierarchical structure,
The learning module of the upper hierarchy learning means uses the model parameter series that defines the pattern learning model of the learning means in the lower hierarchy of the learning means in the upper hierarchy to learn the pattern learning model. Information processing device.
時系列データから、所定のウインドウ長のウインドウ内のデータを、前記パターン学習モデルの学習用のモデル学習用データとして抽出するデータ抽出手段と、
前記複数の学習モジュールのうちの2以上の学習モジュールに、前記モデルパラメータを共有させるモデルパラメータ共有手段と
を、さらに有し、
前記学習モジュールは、前記モデル学習用データを用い、前記パターン学習モデルを定義するモデルパラメータを更新する更新学習を行い、
前記データ抽出手段は、前記ウインドウの位置をずらすことで、前記時系列データから、複数の前記モデル学習用データを抽出し、1の前記モデル学習用データを、1の前記パターン学習モデルに割り当てるように、前記モデル学習用データを前記学習モジュールに分配する
請求項1に記載の情報処理装置。 The learning means includes
Data extraction means for extracting data in a window having a predetermined window length from time-series data as model learning data for learning the pattern learning model;
A model parameter sharing means for causing two or more learning modules of the plurality of learning modules to share the model parameter;
The learning module performs update learning using the model learning data to update model parameters that define the pattern learning model,
The data extraction means extracts a plurality of the model learning data from the time series data by shifting the position of the window, and assigns one model learning data to one pattern learning model. The information processing apparatus according to claim 1, wherein the model learning data is distributed to the learning modules.
請求項2に記載の情報処理装置。 The learning module possessed by the learning means in the upper hierarchy uses a sequence of model parameters of all the pattern learning models of the plurality of learning modules possessed by the learning means in the lower hierarchy of the learning means in the upper hierarchy, The information processing apparatus according to claim 2, wherein learning of the pattern learning model is performed.
上位階層の前記学習手段が有する前記学習モジュールが、その上位階層の前記学習手段の下位階層の前記学習手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記パターン学習モデルの学習を行うステップを含む
情報処理方法。 A plurality of learning means having a plurality of learning modules for learning a pattern learning model for learning a time series pattern are connected to form a hierarchical structure,
The learning module of the learning means in the upper hierarchy uses the model parameter series that defines the pattern learning model of the learning means in the lower hierarchy of the learning means in the upper hierarchy to learn the pattern learning model. An information processing method including the step of performing.
前記複数の学習手段は、階層構造を構成するように接続されており、
上位階層の前記学習手段が有する前記学習モジュールは、その上位階層の前記学習手段の下位階層の前記学習手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記パターン学習モデルの学習を行う
プログラム。 A program for causing a computer to function as a plurality of learning means having a plurality of learning modules for learning a pattern learning model for learning a time series pattern,
The plurality of learning means are connected to form a hierarchical structure,
The learning module of the upper hierarchy learning means uses the model parameter series that defines the pattern learning model of the learning means in the lower hierarchy of the learning means in the upper hierarchy to learn the pattern learning model. Do the program.
上位階層の前記予測手段が有する前記予測モジュールは、その上位階層の前記予測手段の下位階層の前記予測手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記モデルパラメータを予測する
情報処理装置。 A plurality of prediction means having a plurality of prediction modules for predicting time-series data using a pattern learning model for learning a time-series pattern are connected to form a hierarchical structure,
The prediction module included in the prediction unit in the upper layer predicts the model parameter using a sequence of model parameters defining the pattern learning model included in the prediction unit in the lower layer of the prediction unit in the upper layer. Information processing device.
前記複数の予測モジュールのうちの、前記パターン学習モデルを用いて予測した時系列データの予測値の予測誤差が最小の予測値が得られる予測モジュールを、時系列データの予測を担当する担当モジュールに決定する担当モジュール決定手段と、
前記担当モジュールの前記パターン学習モデルのモデルパラメータを、外部に出力するモデルパラメータ出力手段と
を、さらに有する
請求項6に記載の情報処理装置。 The prediction means in the lower hierarchy is
Among the plurality of prediction modules, a prediction module that obtains a prediction value with a minimum prediction error of time series data predicted using the pattern learning model is assigned to a module in charge of prediction of time series data. A module determining means for determining,
The information processing apparatus according to claim 6, further comprising: model parameter output means for outputting a model parameter of the pattern learning model of the responsible module to the outside.
上位階層の前記予測手段が有する前記予測モジュールが、その上位階層の前記予測手段の下位階層の前記予測手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記モデルパラメータを予測するステップを含む
情報処理方法。 A plurality of prediction means having a plurality of prediction modules for predicting time-series data using a pattern learning model for learning a time-series pattern are connected to form a hierarchical structure,
The prediction module included in the prediction unit in the upper layer predicts the model parameter using a series of model parameters defining the pattern learning model included in the prediction unit in the lower layer of the prediction unit in the upper layer. Information processing method including steps.
前記複数の予測手段は、階層構造を構成するように接続されており、
上位階層の前記予測手段が有する前記予測モジュールは、その上位階層の前記予測手段の下位階層の前記予測手段が有する前記パターン学習モデルを定義するモデルパラメータの系列を用いて、前記モデルパラメータを予測する
プログラム。 A program for causing a computer to function as a plurality of prediction means having a plurality of prediction modules for predicting time-series data using a pattern learning model for learning a time-series pattern,
The plurality of prediction means are connected to form a hierarchical structure,
The prediction module included in the prediction unit in the upper layer predicts the model parameter using a sequence of model parameters defining the pattern learning model included in the prediction unit in the lower layer of the prediction unit in the upper layer. program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009137317A JP2010282556A (en) | 2009-06-08 | 2009-06-08 | Information processor, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009137317A JP2010282556A (en) | 2009-06-08 | 2009-06-08 | Information processor, information processing method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010282556A true JP2010282556A (en) | 2010-12-16 |
Family
ID=43539205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009137317A Withdrawn JP2010282556A (en) | 2009-06-08 | 2009-06-08 | Information processor, information processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010282556A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017183066A1 (en) * | 2016-04-18 | 2017-10-26 | 株式会社日立製作所 | Window evaluation method and analysis device |
JPWO2021033288A1 (en) * | 2019-08-21 | 2021-02-25 |
-
2009
- 2009-06-08 JP JP2009137317A patent/JP2010282556A/en not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017183066A1 (en) * | 2016-04-18 | 2017-10-26 | 株式会社日立製作所 | Window evaluation method and analysis device |
JPWO2017183066A1 (en) * | 2016-04-18 | 2019-02-14 | 株式会社日立製作所 | Window evaluation method and analyzer |
JPWO2021033288A1 (en) * | 2019-08-21 | 2021-02-25 | ||
WO2021033288A1 (en) * | 2019-08-21 | 2021-02-25 | 日本電気株式会社 | Recognition system, model processing device, model processing method, and recording medium |
JP7235125B2 (en) | 2019-08-21 | 2023-03-08 | 日本電気株式会社 | Recognition system, model processing device, model processing method, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4710933B2 (en) | Learning device, learning method, and program | |
JP4710931B2 (en) | Learning device, learning method, and program | |
JP4710932B2 (en) | Learning device, learning method, and program | |
JP4201012B2 (en) | Data processing apparatus, data processing method, and program | |
JP4803212B2 (en) | Data processing apparatus, data processing method, and program | |
KR20070100160A (en) | Learning apparatus, learning method, and program | |
JP2007299366A (en) | Learning system and method, recognition device and method, creation device and method, recognition and creation device and method, and program | |
KR20190096877A (en) | Artificial intelligence(ai)-based voice sampling apparatus and method for providing speech style in heterogeneous label | |
JP2011059816A (en) | Information processing device, information processing method, and program | |
Salama et al. | Learning neural network structures with ant colony algorithms | |
JP2007299365A (en) | Data processor, data processing method and program | |
CN110473526A (en) | Personalized device and method and electronic device are carried out to speech recognition modeling | |
JP2011059815A (en) | Apparatus and method for processing information and program | |
Taniguchi et al. | Improved and scalable online learning of spatial concepts and language models with mapping | |
Zhang et al. | GADAM: genetic-evolutionary ADAM for deep neural network optimization | |
JP2009288933A (en) | Learning apparatus, learning method and program | |
JP4169038B2 (en) | Information processing apparatus, information processing method, and program | |
JP2011059817A (en) | Information processing device, information processing method, and program | |
US20220414283A1 (en) | Predictive Modeling of Aircraft Dynamics | |
JP2010266975A (en) | Learning device and method, data generating device and method, and program | |
JP2010067033A (en) | Data processor, data processing method, and program | |
JP2010282556A (en) | Information processor, information processing method, and program | |
JP2009140454A (en) | Data processor, data processing method, and program | |
JP2008250856A (en) | Learning device, learning method, and program | |
JP2009053782A (en) | Data processor, data processing method, and program |
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: 20120904 |