(57)【要約】【課題】時系列データを適切に分節化して学習を行う。【解決手段】ダイナミクス記憶ネットワークは、複数のノードによって構成され、ダイナミクスを１つのノードに保持する。勝者ノード決定部４１は、観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、観測時系列データのサンプル点ごとに決定し、学習重み決定部４２は、勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを、各ノードについて、観測時系列データのサンプル点ごとに決定する。時系列重み利用更新部３３は、各ノードが保持するダイナミクスを、各ノードについてのサンプル点ごとの学習重みに応じて、観測時系列データのダイナミクスに近くなるように、自己組織的に更新する。本発明は、例えば、自律型ロボット等に適用できる。【選択図】図９
2009070033.tif 000002
【特許請求の範囲】
【請求項１】
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、
複数のサンプル値の時系列である時系列データに基づき、前記ネットワークのノードが保持するダイナミクスを自己組織的に更新する学習手段と
を備え、
前記学習手段は、
観測される時系列データである観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記観測時系列データのサンプル点ごとに決定する勝者ノード決定手段と、
前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを、各ノードについて、前記観測時系列データのサンプル点ごとに決定する学習重み決定手段と、
各ノードが保持するダイナミクスを、各ノードについてのサンプル点ごとの学習重みに応じて、前記観測時系列データのダイナミクスに近くなるように、自己組織的に更新する更新手段と
を有する
データ処理装置。
【請求項２】
各ノードが前記観測時系列データに適合する度合いを表すスコアを、前記観測時系列データのサンプル点ごとに求め、各サンプル点において、スコアが最も良いノードを、そのサンプル点での勝者ノードに決定する場合において、
前記勝者ノード決定手段は、サンプル点ごとのスコアをスムージングし、スムージング後のスコアが最も良いノードを、勝者ノードに決定する
請求項１に記載のデータ処理装置。
【請求項３】
前記ノードは、内部状態量を持つ力学系近似モデルによってモデル化されたダイナミクスを保持する
請求項１に記載のデータ処理装置。
【請求項４】
前記ノードは、リカレントニューラルネットワークによってモデル化されたダイナミクスを保持する
請求項１に記載のデータ処理装置。
【請求項５】
前記観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、前記観測時系列データの認識結果として出力する認識手段をさらに備える
請求項１に記載のデータ処理装置。
【請求項６】
時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードが保持するダイナミクスを有する時系列データである生成時系列データを生成する生成手段をさらに備える
請求項１に記載のデータ処理装置。
【請求項７】
前記観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、前記観測時系列データの認識結果として出力する認識手段と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データである生成時系列データを生成する生成手段と
をさらに備える
請求項１に記載のデータ処理装置。
【請求項８】
前記ノードが、内部状態量を持つ力学系近似モデルによって、ダイナミクスを保持する場合において、
前記認識手段が前記勝者ノードを決定する処理において得られる前記内部状態量を記憶する内部状態記憶手段をさらに備え、
前記認識手段は、前記観測時系列データに基づいて、前記内部状態量を更新しながら、前記観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、
前記生成手段は、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの力学系近似モデルの前記内部状態量を決定して、その内部状態量を更新しながら、前記生成時系列データを生成する
請求項７に記載のデータ処理装置。
【請求項９】
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、
複数のサンプル値の時系列である時系列データに基づき、前記ネットワークのノードが保持するダイナミクスを自己組織的に更新する学習手段と
を備えるデータ処理装置のデータ処理方法において、
前記学習手段が、
観測される時系列データである観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記観測時系列データのサンプル点ごとに決定し、
前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを、各ノードについて、前記観測時系列データのサンプル点ごとに決定し、
各ノードが保持するダイナミクスを、各ノードについてのサンプル点ごとの学習重みに応じて、前記観測時系列データのダイナミクスに近くなるように、自己組織的に更新する
ステップを含むデータ処理方法。
【請求項１０】
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、
複数のサンプル値の時系列である時系列データに基づき、前記ネットワークのノードが保持するダイナミクスを自己組織的に更新する学習手段と
を備えるデータ処理装置として、コンピュータを機能させるプログラムにおいて、
前記学習手段は、
観測される時系列データである観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記観測時系列データのサンプル点ごとに決定する勝者ノード決定手段と、
前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを、各ノードについて、前記観測時系列データのサンプル点ごとに決定する学習重み決定手段と、
各ノードが保持するダイナミクスを、各ノードについてのサンプル点ごとの学習重みに応じて、前記観測時系列データのダイナミクスに近くなるように、自己組織的に更新する更新手段と
を有する
データ処理装置として、コンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置、データ処理方法、及びプログラムに関し、特に、例えば、時系列データを適切に分節化して学習を行うことができるようにするデータ処理装置、データ処理方法、及びプログラムに関する。
【背景技術】
【０００２】
例えば、自律的に行動する自律型ロボット等の自律エージェントは、様々なセンサ信号に基づいて、どのように振る舞うべきか、つまり、とるべき行動を決定し、その行動に応じたモータ信号を生成することで、自律的に行動する。
【０００３】
ここで、センサ信号とは、例えば、カメラが、センシングとしての撮像を行うことで出力する画像信号や、マイク（マイクロフォン）が、センシングとしての集音を行うことで出力する音声信号等である。また、モータ信号とは、例えば、自律エージェントの腕や脚等を駆動するモータに与えられる信号や、音声合成装置に対して与えられる、音声合成に必要な信号等である。
【０００４】
自律エージェントは、とるべき行動を決定するときに、センサ信号に基づいて、周囲の状態（例えば、何らかの物体がある位置等）や、自律エージェントの状態（例えば、腕や脚の状態等）等の状況を認識する。この、状況を認識することを、以下、適宜、認知ともいう。
【０００５】
また、自律エージェントは、認知（認識）の結果に基づき、とるべき行動を決定し、その行動に応じたモータ信号を生成する。このモータ信号が、自律エージェントの腕や脚等を駆動するモータに与えられることで、自律エージェントは、腕や脚等を動かす行動をとる。
【０００６】
ここで、以下、適宜、とるべき行動に応じたモータ信号を生成することを、単に、行動ともいう。
【０００７】
また、以下、適宜、状況を認識し、その認識結果に基づき、とるべき行動を決定して、その行動に応じたモータ信号を生成する認識生成、つまり、認知を行い、その認知の結果に基づき、行動することを、認知行動ともいい、認知行動をモデル化した計算モデルを、認知行動モデルという。
【０００８】
自律エージェントの認知行動は、時間発展法則により定められる力学系（dynamical systems）として記述することができ、様々な行動はその力学系が持つ特定のアトラクタダイナミクス（attractor dynamics）によって実現できることが知られている。例えば、人を模した二足型ロボットの歩行運動は、系の運動状態が様々な初期状態からある特定の周期軌道に落ち着くことを特徴とするリミットサイクルダイナミクス（limit cycle dynamics）として記述することができる（例えば、非特許文献１や２を参照）。
【０００９】
また、自律エージェントとしての、例えば、アームロボットがある対象物に対して手先を伸ばすようなリーチング運動は、様々な初期状態からある特定の固定点に落ち着くことを特徴とする不動点ダイナミクス（fixed-point dynamics）として記述することができる。さらに、全ての運動は、不動点ダイナミクスで実現可能な離散運動（discrete movement）とリミットサイクルダイナミクスで実現可能な周期運動（cyclic movement）の組み合わせにより実現できるとも言われている。
【００１０】
アトラクタダイナミクスによって自律エージェントの行動（運動）を制御する場合、まず、タスクに応じたアトラクタダイナミクスをどのように構成するのかが問題となる。次に、センサ信号を通じて得た情報に基づいて、アトラクタダイナミクスに従いながら、対応するモータ信号をどのように生成するかが問題となる。これらの問題を解決する上で、自律エージェントが環境と連続的に相互作用するかたちで行動出力（運動出力）を生成しながら、アトラクタダイナミクスを構成することが必要となる。
【００１１】
アトラクタダイナミクスを構成する認知行動モデルとして利用することができる計算モデルの１つに、RNN(Recurrent Neural Network)がある。
【００１２】
RNNは、ネットワークに回帰ループで結合されるコンテキストユニットを持ち、そこに内部状態を保持することによって、理論的には、任意の力学系を近似可能であることが知られている。
【００１３】
しかしながら、密結合した１つのネットワークモジュールで構成される計算モデルを、多数のアトラクタダイナミクスを学習する学習モデルとして用いることは、学習の収束性などに問題があり、現実的ではない。
【００１４】
そこで、複数のネットワークモジュールを組にして１つの学習モデルを構成するモジュラアーキテクチャ（modular architecture）を採用した学習モデルが提案されている。このモジュラアーキテクチャでは、原理的には、モジュールを増やすことによって記憶できるダイナミクスを容易に増やすことができるが、与えられた学習データをどのモジュールで学習（モジュール学習）するかを決定するモジュール選択の問題が生じる。
【００１５】
このモジュール選択を行う方法としては、学習データを、どのモジュールに割り当てるかを人が決める教師あり学習（supervised learning）と、学習モデルが自律的に決める教師なし学習（unsupervised learning）の２つの方法がある。自律エージェントが自律的に学習を行うためには、教師なし学習によりモジュール学習を行う必要がある。
【００１６】
教師なし学習としてのモジュール学習の方法としては、Mixture of RNN Expertと呼ばれる学習モデルを用いた学習方法が提案されている（例えば、特許文献１を参照）。
【００１７】
Mixture of RNN Expertと呼ばれる学習モデルは、複数のRNNモジュール（RNNを有するモジュール）を備え、各RNNモジュールの出力をゲート機構によって統合することで最終的な出力を決定する。
【００１８】
Mixture of RNN Expertの学習は、全体最適化に基づく方法によって行われる。すなわち、Mixture of RNN Expertの学習は、最終的な出力性能が最大化するように最尤推定法(maximum likelihood estimation)によってゲート機構の調整が行われつつ、各RNNモジュールの学習が行われる。
【００１９】
以上のように、Mixture of RNN Expertの学習は、全体最適化に基づく方法によって行われるが、全体最適化に基づく方法では、RNNモジュールの数が大規模になった場合に、学習が困難になる。
【００２０】
そこで、ベクトルのカテゴリ学習に用いられるSOM(self-organization map)（自己組織化マップ）（例えば、非特許文献３を参照）や、ニューラルガス(neural-gas)（例えば、非特許文献４を参照）などでは、全体最適化に基づく学習則を用いずに、最適性は保証されないけれども、適切なカテゴリ構造を自己組織的に教師なし学習で獲得することができる近傍競合（競合近傍）学習が採用されている。
【００２１】
SOMやニューラルガスによれば、モジュール（ノード）の数が大規模になった場合でも、学習が実用的に可能である。また、近傍競合学習によって、ベクトルではなく、時系列パターンを学習する方法が提案されている（例えば、特許文献２を参照）。
【００２２】
【特許文献１】特開平11-126198号公報
【特許文献２】特開2006-162898号公報
【非特許文献１】G. Taga, 1998, "Self-organized control of bipedal locomotion by neural oscillators in unpredictable environment", Biological Cybernetics, 65, 147 - 159
【非特許文献２】多賀 厳太郎著「脳と身体の動的デザイン−運動・知覚の非線形力学系と発達」、金子書房
【非特許文献３】T.コホネン、「自己組織化マップ」、シュプリンガー・フェアラーク東京
【非特許文献４】T.M. Martinetz, S.G. Berkovich, K.J. Schulten, "Neural-Gas" Network for Vector Quantization and its Application to Time-Series Prediction", IEEE Trans. Neural Networks, VOL. 4, NO. 4, pp558-569, 1999
【発明の開示】
【発明が解決しようとする課題】
【００２３】
ところで、自律エージェントが認知行動を行うには、その認知行動を行うためのダイナミクスを学習することが必要となる。
【００２４】
すなわち、例えば、自律エージェントが、音が聞こえる方向へ歩く、という認知行動を行うには、音をセンシングして得られる、その音の方向や大きさなどを表すセンサ信号と、歩行動作を行うためのモータ信号との相互作用に基づいて形成されるアトラクタダイナミクスを学習することが必要となる。
【００２５】
また、例えば、自律エージェントが、赤いボールが目の前に見えたら手を近づける、という認知行動を行うには、画像をセンシングして得られる、赤いボールの位置の座標などを表すセンサ信号と、手を動かすためのモータ信号との相互作用に基づいて形成されるアトラクタダイナミクスを学習することが必要となる。
【００２６】
ダイナミクスの学習は、RNN等の、力学的な特性を記憶（獲得）可能な計算モデルである力学系近似モデルを用いて行うことができる。
【００２７】
しかしながら、音をセンシングして得られる、その音の方向や大きさなどを表すセンサ信号や、歩行動作を行うためのモータ信号、画像をセンシングして得られる、赤いボールの位置の座標などを表すセンサ信号、手を動かすためのモータ信号等は、複数のサンプル値の時系列である時系列データ（複数のサンプル値が時刻順に並んだデータ）であり、かかる時系列データが有するダイナミクスを、オンラインで学習する場合には、時系列データの分節化、つまり、時系列データを、どこで区切って、自律エージェントに与えるかが問題となる。
【００２８】
すなわち、例えば、上述したように、自律エージェントが、赤いボールが目の前に見えたら手を近づける、という認知行動を行うには、画像をセンシングして得られる、赤いボールの位置の座標などを表すセンサ信号と、その赤いボールに向かって手を動かすためのモータ信号とを、自律エージェントに与えて学習を行う必要がある。
【００２９】
いま、赤いボールが動いており、見えていた赤いボールが物陰に隠れて見えなくなったとすると、学習時には、例えば、画像をセンシングして得られるセンサ信号としての時系列データから、赤いボールが見えている状態のサンプル値のシーケンス（時系列データ）を分節化（抽出）して、自律エージェントに与える必要がある。
【００３０】
オフラインでの学習では、例えば、自律エージェントの設計者等が、画像をセンシングして得られるセンサ信号としての時系列データから、赤いボールが見えている状態のサンプル値のシーケンスを適切に分節化して、自律エージェントに与えることができる。
【００３１】
しかしながら、オンラインの学習では、そのような適切な分節化を行うことは困難である。
【００３２】
そこで、オンラインの学習において、例えば、時系列データを一定の長さに分節化し、自律エージェントに与える方法があるが、この場合、認識生成（認知行動）の精度が劣化することがある。
【００３３】
すなわち、時系列データを一定の長さに分節化し、自律エージェントに与える場合、赤いボールが見えている状態のサンプル値のシーケンスと、赤いボールが物陰に隠れて見えなくなった状態のサンプル値のシーケンスとが混在した時系列データが、自律エージェントに与えられることがある。
【００３４】
この場合、自律エージェントは、例えば、赤いボールが見えている状態から、見えなくなった状態に変化するときだけ、赤いボールに向かって手を動かす認知行動を行い、赤いボールが見えている状態にあるだけでは、赤いボールに向かって手を動かす認知行動を行わないような学習が行われるおそれががある。
【００３５】
本発明は、このような状況に鑑みてなされたものであり、時系列データを適切に分節化して学習を行うことができるようにするものである。
【課題を解決するための手段】
【００３６】
本発明の一側面のデータ処理装置、又は、プログラムは、ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、複数のサンプル値の時系列である時系列データに基づき、前記ネットワークのノードが保持するダイナミクスを自己組織的に更新する学習手段とを備え、前記学習手段が、観測される時系列データである観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記観測時系列データのサンプル点ごとに決定する勝者ノード決定手段と、前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを、各ノードについて、前記観測時系列データのサンプル点ごとに決定する学習重み決定手段と、各ノードが保持するダイナミクスを、各ノードについてのサンプル点ごとの学習重みに応じて、前記観測時系列データのダイナミクスに近くなるように、自己組織的に更新する更新手段とを有するデータ処理装置、又は、データ処理装置として、コンピュータを機能させるプログラムである。
【００３７】
本発明の一側面のデータ処理方法は、ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、複数のサンプル値の時系列である時系列データに基づき、前記ネットワークのノードが保持するダイナミクスを自己組織的に更新する学習手段とを備えるデータ処理装置のデータ処理方法であり、前記学習手段が、観測される時系列データである観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記観測時系列データのサンプル点ごとに決定し、前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを、各ノードについて、前記観測時系列データのサンプル点ごとに決定し、各ノードが保持するダイナミクスを、各ノードについてのサンプル点ごとの学習重みに応じて、前記観測時系列データのダイナミクスに近くなるように、自己組織的に更新するステップを含む。
【００３８】
本発明の一側面においては、観測される時系列データである観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードが、前記観測時系列データのサンプル点ごとに決定され、前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みが、各ノードについて、前記観測時系列データのサンプル点ごとに決定される。そして、各ノードが保持するダイナミクスが、各ノードについてのサンプル点ごとの学習重みに応じて、前記観測時系列データのダイナミクスに近くなるように、自己組織的に更新される。
【００３９】
なお、データ処理装置は、独立した装置であっても良いし、１つの装置を構成している内部ブロックであっても良い。
【００４０】
また、プログラムは、伝送媒体を介して伝送し、又は、記録媒体に記録して、提供することができる。
【発明の効果】
【００４１】
本発明の一側面によれば、時系列データを適切に分節化して、ダイナミクスの学習を行うことができる。
【発明を実施するための最良の形態】
【００４２】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。したがって、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００４３】
本発明の一側面のデータ処理装置、又は、プログラムは、
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段（例えば、図１のネットワーク記憶部１６）と、
複数のサンプル値の時系列である時系列データに基づき、前記ネットワークのノードが保持するダイナミクスを自己組織的に更新する学習手段（例えば、図１の学習部１３）と
を備え、
前記学習手段は、
観測される時系列データである観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記観測時系列データのサンプル点ごとに決定する勝者ノード決定手段（例えば、図９の勝者ノード決定部４１）と、
前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを、各ノードについて、前記観測時系列データのサンプル点ごとに決定する学習重み決定手段（例えば、図９の学習重み決定部４２）と、
各ノードが保持するダイナミクスを、各ノードについてのサンプル点ごとの学習重みに応じて、前記観測時系列データのダイナミクスに近くなるように、自己組織的に更新する更新手段（例えば、図９の時系列重み利用更新部３３）と
を有する
データ処理装置、又は、データ処理装置として、コンピュータを機能させるプログラムである。
【００４４】
一側面のデータ処理装置には、
前記観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、前記観測時系列データの認識結果として出力する認識手段（例えば、図１の認識部１４）をさらに設けることができる。
【００４５】
一側面のデータ処理装置には、
時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードが保持するダイナミクスを有する時系列データである生成時系列データを生成する生成手段（例えば、図１の生成部１５）をさらに設けることができる。
【００４６】
一側面のデータ処理装置には、
前記観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、前記観測時系列データの認識結果として出力する認識手段（例えば、図１の認識部１４）と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データである生成時系列データを生成する生成手段（例えば、図１の生成部１５）と
をさらに設けることができる。
【００４７】
一側面のデータ処理装置において、
前記ノードが、内部状態量を持つ力学系近似モデルによって、ダイナミクスを保持する場合には、
前記認識手段が前記勝者ノードを決定する処理において得られる前記内部状態量を記憶する内部状態記憶手段（例えば、図１の内部状態記憶部１７）をさらに設けることができ、
前記認識手段は、前記観測時系列データに基づいて、前記内部状態量を更新しながら、前記観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定することができ、
前記生成手段は、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの力学系近似モデルの前記内部状態量を決定して、その内部状態量を更新しながら、前記生成時系列データを生成することができる。
【００４８】
本発明の一側面のデータ処理方法は、
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段（例えば、図１のネットワーク記憶部１６）と、
複数のサンプル値の時系列である時系列データに基づき、前記ネットワークのノードが保持するダイナミクスを自己組織的に更新する学習手段（例えば、図１の学習部１３）と
を備えるデータ処理装置のデータ処理方法であり、
前記学習手段が、
観測される時系列データである観測時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記観測時系列データのサンプル点ごとに決定し（例えば、図１２のステップＳ２４）、
前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを、各ノードについて、前記観測時系列データのサンプル点ごとに決定し（例えば、図１２のステップＳ２５）、
各ノードが保持するダイナミクスを、各ノードについてのサンプル点ごとの学習重みに応じて、前記観測時系列データのダイナミクスに近くなるように、自己組織的に更新する（例えば、図１２のステップＳ２６）
ステップを含む。
【００４９】
以下、図面を参照して、本発明の実施の形態について説明する。
【００５０】
図１は、本発明を適用したデータ処理装置の一実施の形態の構成例を示すブロック図である。
【００５１】
図１のデータ処理装置は、例えば、ロボット、マニピュレータシステム、パンチルトカメラ、船舶、航空機、自動車、その他の電子機器で扱われる信号の学習、認識、及び生成に利用される。特に、図１のデータ処理装置は、自律型ロボットなどの自律エージェントその他の自律システムにおいて、センサ、及びモータなどに対して入出力する信号の学習、認識、及び生成に利用される。
【００５２】
図１のデータ処理装置では、観測することができる観測信号が、信号入力部１１に入力される。観測信号は、例えば音や画像の信号、LED(Light Emitting Diode)の明るさ、モータの回転角度や回転角速度などであり、自律システムに対して入出力し得る信号が、観測信号となり得る。
【００５３】
信号入力部１１は、観測される観測信号に対応する電気信号を出力する。具体的には、信号入力部１１は、例えば、観測信号が音の信号の場合は、センサとしてのマイクに対応し、観測信号が画像信号の場合は、センサとしてのカメラに対応する。また、モータの回転角度や回転速度の計測装置なども、信号入力部１１に対応する。
【００５４】
ここで、以下、適宜、信号入力部１１に入力される信号も、信号入力部１１が出力する信号も、観測信号という。
【００５５】
なお、観測信号は、時間的に定常的な定常信号であっても良いし、時間的に変化する（定常的でない）非定常信号であっても良い。
【００５６】
以下では、例えば、センサモータ信号を観測信号とする。センサモータ信号とは、例えば、図示せぬ自律型ロボットが有するカメラやマイクその他のセンサが出力するセンサ信号と、自律型ロボットの腕や脚等を駆動するモータに与えられるモータ信号とを、一定の時間間隔でサンプリングして得られる、同一のサンプル点（時刻）のサンプル値をコンポーネントとするベクトルの時系列である。
【００５７】
信号入力部１１は、時系列データである観測信号を、逐次、適当な長さに区切って出力する。すなわち、信号入力部１１は、観測信号としてのセンサモータ信号から、例えば、１００サンプル（点）を、１サンプルずつシフトしながら抽出し、その１００サンプルの時系列データを、特徴量抽出部１２に供給する。
【００５８】
なお、センサモータ信号のサンプリングの時間間隔や、信号入力部１１がセンサモータ信号から抽出するサンプルの数（サンプル数）は、観測信号とするセンサモータ信号に応じて適切に調整される。
【００５９】
特徴量抽出部１２は、信号入力部１１から供給される観測信号から特徴量を抽出し、その特徴量の時系列を、学習部１３、認識部１４、及び生成部１５に供給する。
【００６０】
すなわち、観測信号が、例えば、音声信号である場合には、特徴量抽出部１２は、その音声信号の一定時間分ごとに、周波数分析その他の音響処理を施し、音声認識等で広く利用されている、例えば、メルケプストラムなどの音声の特徴量を抽出する。そして、特徴量抽出部１２は、観測信号から抽出した特徴量を、時系列に出力し、これにより、特徴量抽出部１２から学習部１３、認識部１４、及び生成部１５に対して、特徴量の時系列データが供給される。
【００６１】
学習部１３は、特徴量抽出部１２からの時系列データに基づき、ダイナミクスを学習する学習処理を行い、認識部１４及び生成部１５は、特徴量抽出部１２からの時系列データに基づき、学習処理の結果を利用して、時系列データを認識する認識処理や、時系列データを生成する生成処理、時系列データを認識し、その認識結果に応じて、時系列データを生成する認識生成処理を行う。
【００６２】
すなわち、学習部１３は、特徴量抽出部１２からの時系列データに基づき、後述するネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習処理を行う。
【００６３】
ここで、学習処理では、ダイナミクス記憶ネットワークのパラメータの更新が行われる。パラメータの更新は、学習と呼ばれることがある。
【００６４】
学習部１３による学習処理の詳細は後述するが、学習処理では、基本的には、ラベル（正解ラベル）の付与されていない時系列データを、ダイナミクス記憶ネットワークに対して、繰り返し与えていく（供給していく）と、ダイナミクス記憶ネットワークが、その時系列データの中の特徴的なダイナミクスを自己組織的に獲得していく教師なし学習が実行される。その結果、ダイナミクス記憶ネットワークには、そこに与えられた時系列データの代表的なダイナミクスが記憶される。ダイナミクス記憶ネットワークに記憶されたダイナミクスは、認識部１４や生成部１５が必要に応じていつでも利用することができる。
【００６５】
ここで、ダイナミクス記憶ネットワークは、例えば、後述するように、力学系近似モデルの１つであるRNNによって、ダイナミクスを保持する。例えば、ある時刻tのデータの入力に対して、次の時刻t+1のデータを出力するRNN（の後述する入力層の入力ユニット）に対して入力される、ある時刻tのデータを、入力データというとともに、その時刻tのデータに対してRNNが出力する時刻t+1のデータを、出力データということとすると、学習部１３、認識部１４、及び生成部１５に対して、特徴量抽出部１２から供給される時系列データは、入力データである。
【００６６】
認識部１４は、入力データ、つまり、特徴量抽出部１２から供給される時系列データを認識の対象として、認識処理を行う。
【００６７】
すなわち、認識部１４は、ネットワーク記憶部１６のダイナミクス記憶ネットワークが記憶しているダイナミクスの中で、特徴量抽出部１２から供給される時系列データに最も適合するダイナミクスを決定し、そのダイナミクスを表す情報を、入力データとしての時系列データの認識結果として出力する。
【００６８】
生成部１５には、特徴量抽出部１２から時系列データが供給される他、制御信号が供給される。生成部１５は、ネットワーク記憶部１６のダイナミクス記憶ネットワークが記憶しているダイナミクスの中から、時系列データの生成に用いるダイナミクスを、そこに供給される制御信号に従って決定し、そのダイナミクスを有する時系列データを、特徴量抽出部１２から供給される時系列データを必要に応じて用いて生成する生成処理を行う。
【００６９】
なお、生成部１５が生成処理を行うことによって得られる時系列データは、必要な処理が施されて出力される。
【００７０】
ネットワーク記憶部１６は、ダイナミクス記憶ネットワークを記憶している。
【００７１】
ダイナミクス記憶ネットワークは、ダイナミクスを１つのノードに保持し、複数のノードによって構成される。
【００７２】
ここで、ダイナミクス記憶ネットワークは、ダイナミクスを記憶（保持）するから、ダイナミクス記憶ネットワークに記憶されるものがダイナミクスである。
【００７３】
ダイナミクスは、時間変化する力学系を表すもので、例えば、具体的な関数によって表現することができる。ダイナミクス記憶ネットワークでは、時系列データの時間変化の特徴が、ダイナミクスとして記憶される。
【００７４】
なお、本実施の形態では、ダイナミクス記憶ネットワークのノードにおいて、例えば、内部状態量を持つ力学系近似モデルによってモデル化されたダイナミクスを保持することとする。この場合、ダイナミクス記憶ネットワークは、内部状態量を持つ力学系近似モデルをノードとするネットワーク（内部状態量を持つ力学系近似モデルを保持（記憶）するノードによって構成されるネットワーク）である。
【００７５】
ここで、内部状態量を持つ（力学系近似）モデルとは、例えば、ある入力があると、その入力に応じて出力をするモデルを考えた場合に、外部から観測することができる入力と出力とは別に、外部からは観測されない（できない）、モデルの内部の状態を表す内部状態量を有するモデルである。内部状態量を持つモデルでは、入力の他に、内部状態量をも用いて出力が求められるため、同一の入力があっても、内部状態量が異なると、異なる出力が得られる。
【００７６】
内部状態記憶部１７は、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの内部状態量を記憶する。内部状態記憶部１７に記憶された内部状態量は、認識生成処理において、時系列データの認識時に、適宜更新され、時系列データの生成時に、必要に応じて利用される。この認識生成処理によって、自律型ロボットの認知行動を実現することができる。
【００７７】
次に、図２は、図１のネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの例を、模式的に示している。
【００７８】
ダイナミクス記憶ネットワークは、複数のノードとリンクによって構成される。
【００７９】
ノードは、ダイナミクスを保持（記憶）する。
【００８０】
リンクは、ノードどうしの間に結合関係を与える。
【００８１】
図２では、ダイナミクス記憶ネットワークは、９個のノードN1ないしN9を有し、各ノードNi(i=1,2,・・・,9)には、９個のノードN1ないしN9が２次元の格子状に配置されるように、縦方向及び横方向に隣接するノードとの間にリンクが与えられている。
【００８２】
すなわち、図２では、リンクによって、９個のノードN1ないしN9に、２次元の配置構造が与えられている。
【００８３】
ここで、ダイナミクス記憶ネットワークにおいては、ノードNiの配置構造に応じて、ノードNiの位置を表す座標系を定義することができる。すなわち、例えば、図２に示すように、２次元の配置構造のノードNiについては、２次元座標系を定義し、その２次元座標系上の座標によって、ノードNiの位置を表すことができる。
【００８４】
例えば、いま、図２のダイナミクス記憶ネットワークについて、左下のノードN7の位置を原点(0,0)とするとともに、左から右方向をx軸とし、下から上方向をy軸とする２次元座標系を定義して、リンクの長さを0.5とすると、図２のダイナミクス記憶ネットワークにおいて、例えば、右上のノードN3の位置の座標は、(1,1)となる。
【００８５】
また、ダイナミクス記憶ネットワークを構成する任意の２つのノードNi及びNjそれぞれが保持するダイナミクスどうしが類似している（近い）度合いを表す尺度として、ノードNiとNjとの間の距離を導入する。
【００８６】
いま、ノードNiとNjとの間の距離として、ノードNiとNjとの間のユークリッド距離を採用することとすると、例えば、左下のノードN7と、右上のノードN3との間の距離は、√((0-1)2+(0-1)2)=√2となる。
【００８７】
図３は、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークのノードNiの構成例を模式的に示している。
【００８８】
ノードNiは、例えば、内部状態量を持ち、力学系を表すことができる力学系近似モデルを有する。
【００８９】
図３では、内部状態量を持つ力学系近似モデルとして、例えば、RNNが採用されている。
【００９０】
図３において、力学系近似モデルとしてのRNNは、３層型NN(Neural Network)に、その出力層から入力層への回帰ループを持たせたものとなっており、その回帰ループによって、内部状態量が保持される。
【００９１】
すなわち、図３において、力学系近似モデルとしてのRNNは、入力層、隠れ層（中間層）、及び出力層の３層により構成されている。入力層、隠れ層、及び出力層は、それぞれ任意の数の、ニューロンに相当するユニットにより構成される。
【００９２】
図３において、入力層は、入力ユニット、及びコンテキストユニットを有する。
【００９３】
入力ユニットには、時刻tの入力データ（ベクトル）Xtとしての時系列データが入力される。
【００９４】
コンテキストユニットには、例えば、出力層の一部のユニットが出力するデータが、内部状態量であるコンテキストとしてフィードバックされる。すなわち、図３のRNNでは、コンテキストユニットと、出力層の一部のユニットとが、回帰ループによって接続されており、コンテキストユニットには、出力層の一部のユニットが出力するデータが、回帰ループを介して、コンテキストとして入力される。
【００９５】
ここで、時刻tの入力データXtが入力ユニットに入力されるときに、コンテキストユニットに入力される時刻tのコンテキストCtは、１時刻前の時刻t-1の入力データXt-1に対して、出力層の一部のユニットが出力したデータである。したがって、時刻tの入力データXtの入力に対して出力層の一部のユニットが出力したデータは、次の時刻t+1のコンテキストCt+1となる。
【００９６】
隠れ層のユニットは、入力層に入力される入力データXt、及びコンテキストCtを対象として、ニューロンとしてのユニットどうしを結合する結合重み（結合荷重）を用いた重み付け加算を行い、その重み付け加算の結果を引数とする非線形関数の演算を行って、その演算結果を、出力層のユニットに出力する。
【００９７】
出力層の一部のユニットからは、上述したように、次の時刻t+1のコンテキストCt+1と
なるデータが出力され、入力層のコンテキストユニットにフィードバックされる。また、出力層の残りのユニットからは、例えば、入力データXtに対する出力データとして、その入力データXtの次の時刻t+1の入力データXt+1の予測値X't+1が出力される。
【００９８】
以上のようなRNNにおいて、入力データとしての時系列データを、RNNの学習用の学習データとして用い、時刻tの時系列データXtから、次の時刻t+1の時系列データXt+1を予測することを学習（予測学習(prediction learning)）することにより、学習データ（時系列データ）の時間発展法則を学習することができる。
【００９９】
ここで、RNNのような内部状態量を持つ力学系近似モデルのパラメータを求める学習の方法としては、例えば、BPTT(Back-Propagation Through Time)法を採用することができる。BPTT法については、例えば、D. E. Rumelhart, G. E. Hinton & R. E. Williams, 1986 "Learning internal representations by error propagation", In D. E. Rumelhart & J. McClelland, "Parallel distributed processing, pp. 318-364, Cambridge, MA: MIT Pressや、R. J. Williams and D. Zipser, "A learning algorithm for continually running fully recurrent neural networks", Neural Computation, 1:270-280, 1989等に記載されている。
【０１００】
学習部１３は、力学系近似モデルとしてのRNNが保持するダイナミクスが、学習データの影響を受けるように、RNNのパラメータである結合重みを更新するRNNの学習を行う。
【０１０１】
なお、学習部１３は、力学系近似モデルが保持するダイナミクスが、学習データの影響を受ける度合いを強くしたり弱くしたりするための調整機能を有している。
【０１０２】
すなわち、ダイナミクス記憶ネットワークの学習は、オンライン学習で行われ、学習データが入力されるたびに、ダイナミクス記憶ネットワークを構成するモジュールとしてのノードが有する力学系近似モデルのパラメータが少しずつ更新される。このパラメータの更新時に、学習部１３は、ノードごとに、そのノードが保持するダイナミクスを更新する程度、つまり、学習データを、ノードが保持するダイナミクスに影響させる程度を表す学習重みを決定する。
【０１０３】
学習部１３は、学習重みに応じて、ノードが保持するダイナミクスを、学習データのダイナミクスに近くなるように、自己組織的に更新する
【０１０４】
すなわち、学習部１３は、ノードの力学系近似モデルが、例えば、RNNである場合には、そのRNNが保持するダイナミクスが、学習データの影響を受ける度合いを、学習重みに応じて調整しながら、RNNのパラメータを、BPTT法により更新する。
【０１０５】
学習部１３において、RNNが保持するダイナミクスが学習データの影響を受ける度合いの調整は、例えば、BPTT法によるRNNのパラメータ（結合重み）の更新時の、パラメータを計算する繰り返し回数を、学習重みに応じて制限することや、パラメータを更新する程度に影響を与える誤差（予測誤差）を、学習重みに応じて補正すること等によって行われる。
【０１０６】
すなわち、BPTT法によるRNNのパラメータの更新では、例えば、入力データXtに対する出力データとしての、その入力データXtの次の時刻t+1の入力データXt+1の予測値X't+1の、真値（時刻t+1の入力データXt+1）に対する予測誤差が小さくなるように、RNNのパラメータとしての結合重みを、予測誤差に応じた値だけ更新する計算が、RNNのパラメータが収束するまで繰り返し行われる。
【０１０７】
学習部１３は、例えば、学習重みが小さいほど、パラメータの計算の繰り返し回数を少なくすることで、RNNが保持するダイナミクスが学習データの影響を受ける度合いを小に調整する。
【０１０８】
あるいは、学習部１３は、例えば、学習重みが小さいほど、予測誤差を小さい値に補正することで、RNNが保持するダイナミクスが学習データの影響を受ける度合いを小に調整する。
【０１０９】
いずれにしても、学習重みが大きいときには、RNNのパラメータは、RNNが保持するダイナミクスが学習データの影響を大きく受けるように更新される。また、学習重みが小さいときには、RNNのパラメータは、RNNが保持するダイナミクスが学習データの影響をあまり受けないように（少ししか受けないように）更新される。
【０１１０】
次に、図１の学習部１３が行う学習処理について説明する。
【０１１１】
ここで、学習部１３が行う学習処理のモード（学習モード）には、学習処理に用いられる時系列データを適切に分節する分節化モードと、そのような分節を行わない非分節化モードとがあり、まず、非分節化モードの学習処理について説明する。
【０１１２】
図４及び図５は、非分節化モードの学習処理での学習重みの決定の方法を説明する図である。
【０１１３】
すなわち、図４は、ダイナミクス記憶ネットワークのノードが有する力学系近似モデルとしてのRNNを示している。
【０１１４】
図４では、RNNは、入力層、隠れ層、及び出力層の３層により構成されている。入力層は５個のユニットを、隠れ層は７個のユニットを、出力層は５個のユニットを、それぞれ有している。
【０１１５】
また、図４では、隠れ層の各ユニットには、入力層の５個のユニットすべてが接続され、出力層の各ユニットには、隠れ層の７個のユニットすべてが接続されている。さらに、入力層の５個のユニットのうちの、１個のユニットがコンテキストユニットになっており、コンテキストユニットには、出力層の５個のユニットのうちの１個のユニットが、回帰ループによって接続されている。
【０１１６】
そして、図４のRNNでは、入力データXtである４次元ベクトル(xt(1),xt(2),xt(3),xt(4))が入力層に入力されると、その入力データXtの次の時刻t+1の入力データXt+1の予測値X't+1である４次元ベクトル(x't(1),x't(2),x't(3),x't(4))が、入力データXtに対する出力データX't+1として出力される。
【０１１７】
ここで、例えば、入力データXtである４次元ベクトル(xt(1),xt(2),xt(3),xt(4))の１番目及び２番目のコンポーネントxt(1)及びxt(2)が、時刻tのセンサ信号であるとすると、出力データX't+1である４次元ベクトル(x't(1),x't(2),x't(3),x't(4))の１番目及び２番目のコンポーネントx't(1)及びx't(2)は、時刻t+1のセンサ信号の予測値である。また、例えば、入力データXtである４次元ベクトル(xt(1),xt(2),xt(3),xt(4))の３番目及び４番目のコンポーネントxt(3)及びxt(4)が、時刻tのモータ信号であるとすると、出力データX't+1である４次元ベクトル(x't(1),x't(2),x't(3),x't(4))の３番目及び４番目のコンポーネントx't(3)及びx't(4)は、時刻t+1のモータ信号の予測値である。
【０１１８】
学習部１３は、ダイナミクス記憶ネットワークのノードの中から、学習データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを決定する。
【０１１９】
すなわち、学習部１３は、特徴量抽出部１２から１サンプルの特徴量が供給されると、その１サンプルの特徴量と、特徴量抽出部１２から直前に供給された過去のT-1サンプルの特徴量とによって、Tサンプルの特徴量（サンプル値）の時系列データを、観測される（た）観測時系列データとして生成する。
【０１２０】
ここで、この場合、特徴量抽出部１２が出力する特徴量の時系列データを、１サンプルずつシフトしながら、Tサンプルずつ逐次抽出して得られる時系列データが、観測時系列データとなる。
【０１２１】
なお、時刻tの（観測）時系列データXtとは、例えば、時刻t-T+1のサンプル値から、時刻tのサンプル値までのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtを意味することとする。
【０１２２】
学習部１３は、時刻tの観測時系列データを生成すると、その時刻tの観測時系列データを学習データとして、ダイナミクス記憶ネットワークの各ノード（が有するダイナミクス）が学習データに適合する度合いを表すスコアを求める。
【０１２３】
すなわち、いま、学習データとしての時刻tの時系列データとしてのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtのうちの時刻tのサンプル値Xtを、ノードが有する力学系近似モデルとしてのRNNに入力したときに、そのRNNが出力する時刻t+1のサンプル値Xt+1の予測値X't+1の、時刻t+1のサンプル値（の真値）Xt+1に対する予測誤差δ(t)が、例えば、式δ(t)=|X't+1-Xt+1|2で定義されることとすると、学習部１３は、時刻tの時系列データとしてのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtについての予測誤差δ(t-T+1),δ(t-T+2),・・・,δ(t-1),δ(t)の、例えば、加算値（総和）Et(=δ(t-T+1)+δ(t-T+2)+・・・+δ(t-1)+δ(t))を、学習データとしての時刻tの時系列データ（の全体）に対するノードのスコアとして求める。
【０１２４】
なお、この場合、スコアが小さいほど、予測値が真値に近いことを表す。そこで、以下、適宜、スコアが小さいことを、スコアが良い、又は高いともいい、スコアが大きいことを、スコアが悪い、又は低いともいう。
【０１２５】
RNNのような内部状態量を持つ力学系近似モデルについては、その内部状態量を適切な値とすることで、スコアはより良くなる。
【０１２６】
そのため、学習部１３は、スコアの計算にあたっては、予測誤差を最小化するように、BPTT法によって、内部状態量としてのRNNのコンテキストを調整した後、そのコンテキストを更新しながら、スコアを計算する。
【０１２７】
そして、学習部１３は、ダイナミクス記憶ネットワークのノードの中から、スコアが最も良いRNNを有するノードを、学習データに最も適合するダイナミクスを保持する勝者ノードに決定する。
【０１２８】
さらに、学習部１３は、ダイナミクス記憶ネットワークの各ノードと、勝者ノードとの間の距離dを求める。
【０１２９】
ここで、例えば、図２で説明したように、ノードNiとNjとの間の距離として、ノードNiとNjとの間のユークリッド距離を採用した場合においては、図２の９個のノードN1ないしN9のうちの、例えば、ノードN6が勝者ノードであるときには、勝者ノードであるノードN6が、勝者ノードとの間の距離が最も近い（０である）ノードとなる。また、ノードN3,N5、及びN9が、勝者ノードとの間の距離が２番目に近いノードとなり、ノードN2及びN8が、勝者ノードとの間の距離が３番目に近いノードとなる。さらに、ノードN4が、勝者ノードとの間の距離が４番目に近いノードとなり、ノードN1及びN7が、勝者ノードとの間の距離が最も遠い（５番目に近いノード）となる。
【０１３０】
なお、ノードNiとNjとの間の距離としては、ノードNiとNjとの間のユークリッド距離の他、例えば、ノードNiとNjとのスコアの差（の絶対値）を採用することが可能である。この場合、スコアがより良いノードが、勝者ノードとの間の距離がより近いノードとなる。
【０１３１】
また、任意のノードNiと勝者ノードとの間の距離としては、ノードNiのスコアそのもの（又は、逆数等）を採用することが可能である。
【０１３２】
学習部１３は、ダイナミクス記憶ネットワークの各ノードの、勝者ノードとの間の距離dを求めると、距離dの増加に対して学習重みαが減少する関係を表す曲線（以下、距離／重み曲線という）に従って、ノードの学習重みαを決定する。
【０１３３】
すなわち、図５は、距離／重み曲線の例を示している。
【０１３４】
図５の距離／重み曲線において、横軸（左から右方向）は、学習重みαを示しており、縦軸（上から下方向）は、勝者ノードからの距離dを示している。
【０１３５】
図５の距離／重み曲線によれば、勝者ノードとの距離dが近いノードほど、大きな学習重みαが決定され、距離dが遠いノードほど、小さな学習重みαが決定される。
【０１３６】
ここで、図５では、縦軸に沿って、ダイナミクス記憶ネットワークを構成する６個のノードN1'ないしN6'が、各ノードNi'と勝者ノードとの距離dに対応する位置（縦軸の位置）に記載されている。
【０１３７】
図５では、ダイナミクス記憶ネットワークを構成する６個のノードN1'ないしN6'が、その順で、勝者ノードとの距離dが近いノードになっている。ダイナミクス記憶ネットワークを構成する６個のノードN1'ないしN6'のうち、勝者ノードとの距離dが最も近いノード、即ち、勝者ノードとの距離が０のノードであるノードN1'は、勝者ノード（となっているノード）である。
【０１３８】
図５の距離／重み曲線は、例えば、式（１）によって与えられる。
【０１３９】
【数１】
2009070033.tif 000003
・・・（１）
【０１４０】
ここで、式（１）において、γは０＜γ＜１の範囲の減衰係数であり、Δは、勝者ノードを中心として各ノードの学習重みαを調整するための変数（以下、適宜、調整変数という）である。
【０１４１】
調整変数をΔを大きい値から少しずつ０に近づけていくと、学習重みαは勝者ノードから離れるにしたがってより小さい値となる。基本的には、調整変数Δは、学習の開始時は大きくし、時間の経過とともに小さくなるように調整される。
【０１４２】
式（１）の学習重みαに基づき、勝者ノードのパラメータ（ノードが有する力学系近似モデルのパラメータ）は、学習データの影響を最も強く受けるように更新され、勝者ノードから離れるにしたがって、学習データの影響が小さくなるように、他のノード（勝者ノード以外のノード）のパラメータの更新が行われる。
【０１４３】
次に、図６のフローチャートを参照して、図１の学習部１３による、非分節化モードの学習処理について説明する。
【０１４４】
学習部１３は、ステップＳ１１において、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークのすべてのパラメータの初期化を行う。具体的には、ダイナミクス記憶ネットワークの各ノードの内部状態量を持つ力学系近似モデル（図３）のパラメータに適当な値が初期値として付与される。
【０１４５】
ここで、ダイナミクス記憶ネットワークのノードが有する力学系近似モデルが、例えば、RNNである場合には、ステップＳ１１では、そのRNNのユニットに入力される信号に与えられる結合重み等を、力学系近似モデルのパラメータとして、そのパラメータに適当な初期値がセットされる。
【０１４６】
その後、特徴量抽出部１２から学習部１３に対して、１サンプルの特徴量が供給されるのを待って、処理は、ステップＳ１１からステップＳ１２に進み、学習部１３は、学習データを生成する。
【０１４７】
すなわち、学習部１３は、特徴量抽出部１２から１サンプルの特徴量が供給されると、その１サンプルの特徴量と、特徴量抽出部１２から直前に供給されたT-1サンプルの特徴量とによって、Tサンプルの特徴量（サンプル値）の時系列データを、観測時系列データとして生成する。
【０１４８】
その後、処理は、ステップＳ１２からステップＳ１３に進み、学習部１３は、直前のステップＳ１２で生成した観測時系列データを学習データとして、その学習データに対する、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードのスコアの計算を、ノードが有する、内部状態量を持つ力学系近似モデルの内部状態量を更新しながら行う。
【０１４９】
ここで、内部状態量を持つ力学系近似モデルが、例えば、RNNである場合には、所定の基準値を基準として値を変えていく（更新していく）変数の値のうちの、スコアを最も良くする値が、内部状態量としてのRNNのコンテキストの初期値に決定され、コンテキストを初期値から更新しながら、スコアの計算が行われる。
【０１５０】
なお、コンテキストの初期値の決定に用いる所定の基準値としては、例えば、ランダムな値や、前回のRNNのパラメータの更新時に求められた、コンテキストの最終的な更新値（以下、適宜、前回更新値という）などを採用することができる。
【０１５１】
例えば、今回のRNNのパラメータの更新時に学習部１３で生成された観測時系列データと、前回のRNNのパラメータの更新時に学習部１３で生成された観測時系列データとが、何らの関係もないことが分かっている場合には、コンテキストの初期値の決定に用いる所定の基準値としては、ランダムな値を採用することができる。
【０１５２】
また、例えば、今回のRNNのパラメータの更新時に学習部１３で生成された観測時系列データと、前回のRNNのパラメータの更新時に学習部１３で生成された観測時系列データとが、連続する時系列データなどのように、何らかの関係を有することが分かっている場合には、コンテキストの初期値の決定に用いる所定の基準値としては、前回更新値を採用することができる。なお、前回更新値を、コンテキストの初期値の決定に用いる所定の基準値として採用する場合には、前回更新値を、そのまま、コンテキストの初期値に決定することができる。
【０１５３】
ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークのすべてのノードのスコアが求められると、処理は、ステップＳ１３からステップＳ１４に進み、学習部１３は、ダイナミクス記憶ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、学習データに最も適合するノードである勝者ノードに決定して、処理は、ステップＳ１５に進む。
【０１５４】
ステップＳ１５では、学習部１３は、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードの学習重みを、図５で説明したように、勝者ノードを中心として決定する。
【０１５５】
その後、処理は、ステップＳ１５からステップＳ１６に進み、学習部１３が、学習データを用い、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードが有する、内部状態量を持つ力学系近似モデルのパラメータの更新を、学習重みに応じて行う。
【０１５６】
ここで、内部状態量を持つ力学系近似モデルが、例えば、RNNである場合には、ステップＳ１６でのパラメータの更新は、BPTT法によりパラメータ（結合重み）を計算する繰り返し回数を、学習重みに応じて制限して行われる。すなわち、学習重みが小さいほど、繰り返し回数は、小さい値に制限される。
【０１５７】
なお、勝者ノードのパラメータだけを更新する方法はWTA(winner-take-all)と呼ばれる学習方法であり、勝者ノードの近傍のノードに対してもパラメータの更新を行う方法はSMA(soft-max adaptation)と呼ばれる学習方法である。学習部１３は、SMAで、ダイナミクス記憶ネットワーク（のノードが有する力学系近似モデル）のパラメータの更新を行う。
【０１５８】
すなわち、図５で説明したように、学習重みは、勝者ノードとの距離が近い、勝者ノードの近傍にあるノードについてほど大きな値に決定され、逆に、勝者ノードとの距離が遠いノードについてほど小さな値に決定される。その結果、勝者ノードの近傍にあるノードについては、学習データの影響をより強く受けるように、ノードのパラメータを更新し、勝者ノードとの距離が遠いノードについては、学習データの影響をあまり受けないように、ノードのパラメータを更新する近傍競合学習が行われる。
【０１５９】
その後、特徴量抽出部１２から学習部１３に対して、１サンプルの特徴量が新たに供給されるのを待って、処理は、ステップＳ１６からステップＳ１２に戻り、以下、ステップＳ１２ないしＳ１６の処理が繰り返される。
【０１６０】
次に、分節化モードの学習処理について説明するが、その前段階の準備として、非分節化モードの学習処理について、再度、簡単に説明する。
【０１６１】
図７は、非分節化モードの学習処理で用いられる学習データとしての時刻tの観測時系列データXtを示している。
【０１６２】
非分節化モードの学習処理では、時刻tの観測時系列データとしてのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtについての予測誤差δ(t-T+1),δ(t-T+2),・・・,δ(t-1),δ(t)の加算値Et(=δ(t-T+1)+δ(t-T+2)+・・・+δ(t-1)+δ(t))が、学習データとしての時刻tの観測時系列データ（の全体）に対するノードのスコアとして求められる。
【０１６３】
そして、そのスコアが最も良いノードが、勝者ノードに決定される。
【０１６４】
すなわち、時刻tの観測時系列データとしてのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtについての予測誤差δ(t-T+1),δ(t-T+2),・・・,δ(t-1),δ(t)それぞれを、サンプルスコアSt-T+1,St-T+2,・・・,St-1,Stと呼ぶとともに、予測誤差δ(t-T+1),δ(t-T+2),・・・,δ(t-1),δ(t)の加算値Et(=δ(t-T+1)+δ(t-T+2)+・・・+δ(t-1)+δ(t))であるスコアを、合計スコアSTと呼ぶこととすると、非分節化モードの学習処理では、サンプルスコアSt-T+1,St-T+2,・・・,St-1,Stの加算値である合計スコアSTが最も良いノードが、勝者ノードに決定される。
【０１６５】
そして、いま、ダイナミクス記憶ネットワークが有するノードがK個であり、そのK個のノードのうちのk番目のノードをノードNk(k=1,2,・・・,K)と表すこととすると、非分節化モードの学習処理では、勝者ノードの決定後は、勝者ノードと各ノードNkとの間の距離dに応じて、各ノードNkの学習重みαkが、式（１）に従って決定される。
【０１６６】
したがって、非分節化モードの学習処理では、学習重みαkは、ノードNkごとにのみ決定される。
【０１６７】
ノードNkごとの学習重みαkの決定後は、ノードNk（が有する、内部状態量を持つ力学系近似モデル）のパラメータが、そのノードNkの学習重みαkに応じて更新される。
【０１６８】
次に、図８を参照して、分節化モードの学習処理の概要について説明する。
【０１６９】
図８は、分節化モードの学習処理で用いられる学習データとしての時刻tの観測時系列データXtを示している。
【０１７０】
分節化モードの学習処理では、学習データとしての観測時系列データXt（の各サンプル値）に最も適合するダイナミクスを保持するノードである勝者ノードが、学習データとしての観測時系列データXtのサンプル点t-T+1,t-T+2,・・・,t-1,tごとに決定される。
【０１７１】
さらに、学習重みも、勝者ノードから各ノードまでの距離に応じて、各ノードについて、学習データとしての観測時系列データXtのサンプル点t-T+1,t-T+2,・・・,t-1,tごとに決定される。
【０１７２】
そして、各ノードが保持するダイナミクスが、各ノードについてのサンプル点t-T+1,t-T+2,・・・,t-1,tごとの学習重みに応じて、学習データとしての観測時系列データXtのダイナミクスに近くなるように、自己組織的に更新される。
【０１７３】
すなわち、分節化モードの学習処理では、時刻tの観測時系列データXtとしてのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtについての予測誤差δ(t-T+1),δ(t-T+2),・・・,δ(t-1),δ(t)が、それぞれ、サンプル点t-T+1,t-T+2,・・・,t-1,tごとのサンプルスコアSt-T+1,St-T+2,・・・,St-1,Stとして求められる。
【０１７４】
さらに、サンプル点t-T+1,t-T+2,・・・,t-1,tそれぞれにおいて、サンプルスコアSt-T+1,St-T+2,・・・,St-1,Stが最も良いノードが勝者ノードに決定される。
【０１７５】
そして、いま、図７の場合と同様に、ダイナミクス記憶ネットワークが有するノードがK個であり、そのK個のノードのうちのk番目のノードをノードNk(k=1,2,・・・,K)と表すこととすると、分節化モードの学習処理では、勝者ノードの決定後は、勝者ノードと各ノードNkとの間の距離dに応じて、各ノードNkの学習重みαk,t-n(n=0,1,・・・,T-1)が、式（１）に従って、サンプル点t-nごとに決定される。
【０１７６】
したがって、分節化モードの学習処理では、学習重みαk,t-nは、ノードNkごとに、かつ、学習データとしての時刻tの観測時系列データXtのサンプル点t-nごとに決定される。
【０１７７】
各ノードNkについて、サンプル点t-nごとの学習重みαk,t-nの決定後は、ノードNk（が有する、内部状態量を持つ力学系近似モデル）のパラメータが、そのノードNkについての各サンプル点t-T+1,t-T+2,・・・,t-1,tごとの学習重み（の時系列）αk,t-T+1,αk,t-T+2,・・・,αk,t-1,αk,tに応じて更新される。
【０１７８】
図９は、分節化モードの学習処理を行う図１の学習部１３の構成例を示している。
【０１７９】
図９において、学習部１３は、時系列生成部３１、学習重み時系列生成部３２、及び時系列重み利用更新部３３から構成される。
【０１８０】
時系列生成部３１には、特徴量抽出部１２から特徴量が供給される。時系列生成部３１は、特徴量抽出部１２から１サンプルの特徴量が供給されると、その１サンプルの特徴量と、特徴量抽出部１２から直前に供給された過去のT-1サンプルの特徴量とによって、Tサンプルの特徴量（サンプル値）の時系列データを、観測時系列データXtとして生成する。
【０１８１】
そして、時系列生成部３１は、観測時系列データXtを、学習データとして、学習重み時系列生成部３２、及び時系列重み利用更新部３３に供給する。
【０１８２】
学習重み時系列生成部３２は、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードNkについて、時系列生成部３１からの学習データとしての観測時系列データXtのサンプル点t-nごとの学習重みαk,t-nを決定し、時系列重み利用更新部３３に供給する。
【０１８３】
すなわち、学習重み時系列生成部３２は、勝者ノード決定部４１、及び学習重み決定部４２から構成される。
【０１８４】
勝者ノード決定部４１は、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードNkの、時系列生成部３１からの学習データとしての観測時系列データXtのサンプル点t-nごとのサンプルスコアSt-nを計算し、サンプル点t-nごとに、サンプルスコアSt-nが最も良いノードを、勝者ノードに決定する。
【０１８５】
学習重み決定部４２は、サンプル点t-nの勝者ノードから各ノードNkまでの距離に応じて、サンプル点t-nごとに、各ノードNkの学習重みαk,t-nを決定し、時系列重み利用更新部３３に供給する。
【０１８６】
時系列重み利用更新部３３は、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードNkが保持するダイナミクスを、学習重み決定部４２からの各ノードNkについてのサンプル点t-nごとの学習重みαk,t-nに応じて、時系列生成部３１からの学習データとしての観測時系列データXtのダイナミクスに近くなるように、各ノードNkが有する、内部状態量を持つ力学系近似モデルのパラメータの更新を行う。
【０１８７】
図１０は、図９の学習重み決定部４２が決定する、各ノードNkについてのサンプル点t-nごとの学習重みαk,t-n（行列）を示している。
【０１８８】
分節化モードの学習処理では、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークのある１個のノードNkに注目すると、その１個のノードNkについては、学習データとしての観測時系列データXtのサンプル点t-T+1,t-T+2,・・・,t-1,tごとに、学習重みαk,t-T+1,αk,t-T+2,・・・,αk,t-1,αk,tが求められる。
【０１８９】
その結果、分節化モードの学習処理では、ノードNkのパラメータの更新が、時刻（サンプル点）t-T+1,t-T+2,・・・,t-1,tごとに異なる学習重みαk,t-T+1,αk,t-T+2,・・・,αk,t-1,αk,tに応じて行われる。
【０１９０】
ここで、非分節化モードの学習処理（図７）では、学習重みαkは、ノードNkごとには異なるが、時刻t-T+1,t-T+2,・・・,t-1,tごとには異ならず、一定の値となる。
【０１９１】
これに対して、分節化モードの学習処理では、学習重みαk,t-nは、ノードNkごとには勿論、時刻t-T+1,t-T+2,・・・,t-1,tごとにも異なる。
【０１９２】
したがって、分節化モードの学習処理によれば、時刻tの観測時系列データXtとしてのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtのうちの、あるサンプル点t-nでは、そのサンプル点t-nのサンプル値Xt-nの影響を強く受け、他のサンプル点t-n'では、そのサンプル点t-n'のサンプル値Xt-n'の影響をあまり受けないような、ノードNkのパラメータの更新を行うことができる。
【０１９３】
さらに、学習重みαk,t-nは、図８で説明したように、サンプル点t-nにおいて、サンプルスコアSt-nが最も良い勝者ノードとの間の距離dに基づき、式（１）に従って決定される。
【０１９４】
すなわち、学習重みαk,t-nは、サンプル点t-nにおいて、サンプルスコアSt-nが最も良い勝者ノードとの間の距離dが近いノードNkの学習重みαk,t-nほど、大きな値に決定される。
【０１９５】
したがって、分節化モードの学習処理では、ノードNkの学習重みαk,t-nは、時刻tの観測時系列データXtとしてのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtのうちの、そのノードNkが獲得しているダイナミクスに適合しているサンプル値のサンプル点では大きな値になって、そのサンプル値の影響を強く受けるように、ノードNkのパラメータの更新が行われる。
【０１９６】
一方、ノードNkの学習重みαk,t-nは、時刻tの観測時系列データXtとしてのTサンプルのサンプル値Xt-T+1,Xt-T+2,・・・,Xt-1,Xtのうちの、そのノードNkが獲得しているダイナミクスに適合しないサンプル値のサンプル点では小さな値になって、そのサンプル値の影響を（ほとんど）受けないように、ノードNkのパラメータの更新が行われる。
【０１９７】
その結果、分節化モードの学習処理によれば、等価的に、学習データとしての観測時系列データを適切に分節化して学習（ノードのパラメータの更新）が行われる。
【０１９８】
すなわち、ノードNkのパラメータの更新は、そのノードNkが獲得しているダイナミクスに適合するサンプル値の影響を強く受けるように、かつ、そのノードNkが獲得しているダイナミクスに適合しないサンプル値の影響を受けないように行われ、結果として、観測時系列データから、ノードNkが獲得しているダイナミクスに適合するサンプル値の時系列（区間）を分節化して学習データとして用いた場合と同様の学習が行われる。
【０１９９】
図１１は、ダイナミクス記憶ネットワークが、２個のノードN1及びN2で構成される場合の、その２個のノードN1及びN2それぞれについてのサンプル点ごとの学習重みの例を示している。
【０２００】
図１１では、学習データとしての観測時系列データが、８個のサンプル値X1,X2,X3,X4,X5,X6,X7,X8から構成され、ノードN1については、サンプル点（時刻）1,2,3,4,5,6,7,8の学習重みが、それぞれ、1,1,1,0,0,0,0,0に決定されている。また、ノードN2については、サンプル点1ないし8の学習重みが、それぞれ、0,0,0,1,1,1,1,1に決定されている。
【０２０１】
この場合、ノードN1のパラメータの更新は、観測時系列データとしての８個のサンプル値X1ないしX8のうちの、ノードN1の学習重みが1になっているサンプル点1ないし3それぞれのサンプル値X1ないしX3の影響を強く受け、かつ、ノードN1の学習重みが0になっているサンプル点4ないし8それぞれのサンプル値X4ないしX8の影響を受けないように行われる。
【０２０２】
また、ノードN2のパラメータの更新は、観測時系列データとしての８個のサンプル値X1ないしX8のうちの、ノードN2の学習重みが0になっているサンプル点1ないし3それぞれのサンプル値X1ないしX3の影響を受けないように、かつ、ノードN2の学習重みが1になっているサンプル点4ないし8それぞれのサンプル値X4ないしX8の影響を強く受けるように行われる。
【０２０３】
その結果、ノードN1及びN2のパラメータの更新は、８個のサンプル値X1ないしX8からなる観測時系列データを、３個のサンプル値X1ないしX3からなる時系列データと、５個のサンプル値X4ないしX8からなる時系列データとの２つの時系列データに分節化し、その２つの時系列データそれぞれを、学習データとして与えた場合と同様に行われる。
【０２０４】
以上のように、サンプル点ごとの学習重みによれば、例えば、観測時系列データとしての８個のサンプル値X1ないしX8のうちの、３個のサンプル値X1ないしX3からなる時系列データを、ノードN1のパラメータの更新に利用し、５個のサンプル値X4ないしX8からなる時系列データを、ノードN2のパラメータの更新に利用する、といったように、観測時系列データにおいて、パラメータの更新に利用すべき区間を、ノードごとに指定することができる。
【０２０５】
次に、図１２のフローチャートを参照して、図１の学習部１３による、分節化モードの学習処理について説明する。
【０２０６】
分節化モードの学習処理では、ステップＳ２１及びＳ２２において、図６の非分節化モードの学習処理のステップＳ１１及びＳ１２の場合とそれぞれ同様の処理が行われる。
【０２０７】
すなわち、ステップＳ２１では、学習部１３は、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークのすべてのパラメータの初期化を行う。
【０２０８】
その後、特徴量抽出部１２から学習部１３に対して、１サンプルの特徴量が供給されるのを待って、処理は、ステップＳ２１からステップＳ２２に進み、学習部１３は、学習データを生成する。
【０２０９】
すなわち、学習部１３（図９）の時系列生成部３１は、特徴量抽出部１２から１サンプルの特徴量が供給されると、その１サンプルの特徴量と、特徴量抽出部１２から直前に供給されたT-1サンプルの特徴量とによって、Tサンプルの特徴量（サンプル値）の時系列データを、観測時系列データとして生成し、学習重み時系列生成部３２、及び時系列重み利用更新部３３に供給する。
【０２１０】
その後、処理は、ステップＳ２２からステップＳ２３に進み、学習重み時系列生成部３２（図９）の勝者ノード決定部４１は、時系列生成部３１からの観測時系列データを学習データとして、図６のステップＳ１３の場合と同様に、学習データに対する、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードのスコアの計算を、ノードが有する、内部状態量を持つ力学系近似モデルの内部状態量を更新しながら行う。
【０２１１】
但し、ステップＳ２３では、勝者ノード決定部４１は、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードNkの、時系列生成部３１からの学習データとしての観測時系列データのサンプル点ごとのサンプルスコアを計算する。
【０２１２】
ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークのすべてのノードについて、サンプル点ごとのスコアが求められると、処理は、ステップＳ２３からステップＳ２４に進み、勝者ノード決定部４１は、サンプル点ごとに、ダイナミクス記憶ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、学習データに最も適合するノードである勝者ノードに決定して、処理は、ステップＳ２５に進む。
【０２１３】
ステップＳ２５では、学習重み時系列生成部３２（図９）の学習重み決定部４２は、サンプル点ごとに、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードの学習重みを、例えば、図５で説明したように、勝者ノードを中心として決定する。そして、学習重み決定部４２は、サンプル点ごとの各ノードの学習重みを、時系列重み利用更新部３３（図９）に供給して、処理は、ステップＳ２５からステップＳ２６に進む。
【０２１４】
ステップＳ２６では、時系列重み利用更新部３３は、時系列生成部３１（図９）からの観測時系列データを学習データとして、その学習データを用い、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの各ノードが有する、内部状態量を持つ力学系近似モデルのパラメータの更新を、学習重み決定部４２からの、サンプル点ごとの各ノードの学習重みに応じて行う。
【０２１５】
ここで、内部状態量を持つ力学系近似モデルが、例えば、RNNである場合には、ステップＳ２６でのパラメータの更新は、BPTT法によるパラメータ（結合重み）の更新の度合いに影響を与える予測誤差を、学習重みに応じて補正しながら行われる。
【０２１６】
その後、特徴量抽出部１２から学習部１３に対して、１サンプルの特徴量が新たに供給されるのを待って、処理は、ステップＳ２６からステップＳ２２に戻り、以下、ステップＳ２２ないしＳ２６の処理が繰り返される。
【０２１７】
次に、ダイナミクス記憶ネットワークのノードが有する力学系近似モデルが、RNNである場合の、分節化モードの学習処理の詳細について説明する。
【０２１８】
RNNは、回帰ループを有するNN(Neural Network)であるが、回帰ループを有しないNNの学習方法として、BP(Back-propagation)法（誤差逆伝播法）が知られている。
【０２１９】
例えば、いま、入力層、隠れ層、及び出力層からなる３層の（回帰ループを有しない）NNにおいて、入力層以外のユニットの出力の計算に、シグモイド関数が用いられることとし、入力層のユニットに対して、入力データX=(x0,x1,・・・,xP-1)を入力すると、出力層のユニットから、出力データR=(r0,r1,・・・,rQ-1)を出力することを、BP法によって学習することとする。
【０２２０】
なお、Pは、入力層のユニットの数を表し、Qは、出力層のユニットの数を表す。
【０２２１】
図１３は、NNの２つのユニット#i及び#jを示している。
【０２２２】
NNでは、あるユニットを、注目ユニットとして注目すると、注目ユニットに対して、入力層側のユニットからの出力が入力される。注目ユニットでは、そこへの入力に基づいて、所定の演算が行われ、その演算結果が、注目ユニットの出力として、出力層側のユニットに入力される。
【０２２３】
いま、ユニット#jを、注目ユニットとすると、注目ユニット#jの出力ojは、式（２）で表される。
【０２２４】
【数２】
2009070033.tif 000004
・・・（２）
【０２２５】
ここで、oiは、注目ユニット#jに接続している入力層側のユニット#iの出力を表し、wijは、注目ユニット#jとユニット#iとを結合する結合重み（ユニット#iの出力oiに付される重み）を表す。また、f()は、シグモイド関数を表し、Mは、注目ユニット#jに接続している入力層側のユニット#iの総数を表す。
【０２２６】
BP法では、式（２）で求められる出力ojの誤差を小さくするように、結合重みwijの更新が、出力層側のユニットから、入力層側のユニットに向けて行われる。
【０２２７】
結合重みwijの更新は、例えば、式（３）に従って行われる。
【０２２８】
【数３】
2009070033.tif 000005
・・・（３）
【０２２９】
ここで、wij(p)は、ユニット#jと#iとを結合する結合重みのp回目の更新後の値を表す。また、ηは、結合重みの更新量（更新の度合い）を調節するゲインを表し、δjは、ユニット#jの出力ojの予測誤差を表す。
【０２３０】
予測誤差δjは、ユニット#jが出力層のユニットである場合には、出力データRを、出力ojの真値として計算される。また、ユニット#jが隠れ層のユニットである場合には、予測誤差δjは、その１つだけ出力層側の層のユニット（ここでは、３層のNNを仮定しているので、出力層のユニット）の予測誤差を伝播させて求められる。
【０２３１】
式（３）によれば、結合重みwijは、予測誤差δjが大であるほど、大きく更新される。
【０２３２】
BP法では、式（３）に従った結合重みwijの更新（計算）が、出力層のユニットの出力が出力データR（真値）に十分近づくまで、繰り返し行われる。
【０２３３】
なお、BP法についての詳細は、例えば、R.ビール、T.ジャクソン, 「ニューラルコンピューティング入門」（海文堂）に記載されている。
【０２３４】
ところで、いま、式（３）の予測誤差δjを補正する誤差補正重みWを導入し、式（４）に従って、予測誤差δjを補正することとする。
【０２３５】
【数４】
2009070033.tif 000006
・・・（４）
【０２３６】
ここで、誤差補正重みWは、式0≦W≦1で表される範囲の値をとる。また、δj'は、補正後の予測誤差を表す。
【０２３７】
この場合、結合重みwijの更新は、式（３）に代えて、補正後の予測誤差δj'を用いた式（５）に従って行われる。
【０２３８】
【数５】
2009070033.tif 000007
・・・（５）
【０２３９】
式（４）及び式（５）によれば、誤差補正重みWが、1である場合には、結合重みwijの更新は、予測誤差δjの影響を受けて行われる。そして、誤差補正重みWが小さい値になるほど、結合重みwijの更新において、予測誤差δjの影響は小さくなり、誤差補正重みWが、0である場合には、結合重みwijの更新は、予測誤差δjの影響を受けない（結合重みwijは更新されない）。
【０２４０】
したがって、誤差補正重みWを調整することにより、結合重みwijの更新において、予測誤差δjが影響する度合いを調整することができる。
【０２４１】
例えば、２つのNNのうちの一方のNNに対して、値が1の誤差補正重みWを与えるとともに、他方のNNに対して、値が0の誤差補正重みWを与え、同一の学習データを用いて、２つのNNのパラメータ（結合重み）の更新を行った場合、一方のNNは、学習データを学習するが、他方のNNでは、学習データの学習は行われない。
【０２４２】
BP法は、最急降下法に基づく学習方法であり、BP法によれば、繰り返し計算に基づく勾配法によって学習が行われる。また、BP法は、RNNに対して拡張されており、BPTT法と呼ばれる。BPTT法は、最急降下法に基づく学習方法である点、及び、出力層のユニットの出力が真値に十分近づくまで、結合重みwijが繰り返し更新される点で、BP法と共通する。
【０２４３】
したがって、BPTT法でも、BP法と同様に、RNNのパラメータの更新は、式（３）に従って行われるので、誤差補正重みWを導入することにより、式（５）に従って行うこともできる。
【０２４４】
但し、BPTT法では、RNNの入力層に入力される入力データが時系列データであり、時刻tの入力データに対して出力層から出力される時刻t+1の入力データの予測値の予測誤差を、時系列データの全時刻（サンプル点）に亘って伝播させることで、パラメータの更新が行われる。
【０２４５】
このため、式（４）及び式（５）で説明したように、誤差補正重みWを導入する場合には、各時刻tの入力データに対して得られる予測値の予測誤差を、誤差補正重みWで補正する必要がある。
【０２４６】
すなわち、時刻tの入力データに対して得られる予測値の予測誤差を、Etと表すとともに、その予測誤差Etの補正に用いる誤差補正重みを、Wtと表すこととすると、予測誤差Etは、例えば、式（６）に従って補正される。
【０２４７】
【数６】
2009070033.tif 000008
・・・（６）
【０２４８】
ここで、誤差補正重みWtは、式0≦Wt≦1で表される範囲の値をとる。また、Et'は、補正後の予測誤差を表す。
【０２４９】
分節化モードの学習処理では、ダイナミクス記憶ネットワークのノードNkが有する力学系近似モデルとしてのRNNのパラメータの更新において、誤差補正重みWtとして、学習重みαk,tを用いて、予測誤差Etを補正し、その補正後の予測誤差Et'が小さくなるように、結合重みwijが繰り返し更新される。
【０２５０】
その結果、分節化モードの学習処理によれば、等価的に（結果として）、学習データとしての観測時系列データを適切に分節化して学習（ノードのパラメータの更新）が行われる。
【０２５１】
すなわち、ノードNkのパラメータの更新は、そのノードNkが獲得しているダイナミクスに適合するサンプル値の影響を強く受けるように、かつ、そのノードNkが獲得しているダイナミクスに適合しないサンプル値の影響を受けないように行われ、結果として、観測時系列データから、ノードNkが獲得しているダイナミクスに適合するサンプル値の時系列（区間）を分節化して、学習データとして用いた場合と同様の学習が行われる。
【０２５２】
そして、分節化モードの学習処理では、学習データとしての観測時系列データの各区間に対して適合する（スコアが最も良い）ノードが勝者ノードとなり、その区間のサンプル値の影響を強く受けるように、勝者ノードの近傍のノードのパラメータを更新することが、逐次的に繰り返され、これにより、各ノード（が有するRNN）は、そのノードが勝者ノードとなった区間のサンプル値が有するダイナミクスを自己組織的に獲得し、その結果、ノードの分節化の能力と予測精度とが向上する。
【０２５３】
したがって、分節化モードの学習処理によれば、ノードがダイナミクスを自己組織的に獲得することにより、ダイナミクス記憶ネットワークによるダイナミクスの自己組織化が進行して、各ノードの分節化の能力及び予測精度が向上し、その結果、ダイナミクス記憶ネットワークによるダイナミクスの自己組織化がさらに進行することが、逐次的に繰り返される。
【０２５４】
なお、上述した分節化モードの学習処理では、ノードが学習データとしての観測時系列データに適合する度合いを表すサンプルスコアを、観測時系列データのサンプル点ごとに求め、各サンプル点において、サンプルスコアが最も良いノードを、そのサンプル点での勝者ノードに決定するが、この場合、観測時系列データのある所定の区間のサンプル値が、全体としては、あるノードNiに適合するのに、たまたま、その所定の区間の１つのサンプル点のサンプル値の予測誤差が、他のノードNjにおいて最も小さくなること、つまり、所定の区間の１つのサンプル点を除くサンプル点では、ノードNiのサンプルスコアが最も良くなり、所定の区間の１つのサンプル点だけで、たまたま、他のノードNjのサンプルスコアが最も良くなることがあり得る。
【０２５５】
この場合、他のノードNjのサンプルスコアが最も良くなるサンプル点と、そのサンプル点の前後それぞれとに分節化が行われることとなり、必ずしも適切な分節化が行われているとは言えない。
【０２５６】
そこで、学習部１３の学習重み時系列生成部３２（図９）では、勝者ノード決定部４１において、サンプル点ごとのサンプルスコアをスムージングし、スムージング後のサンプルスコアが最も良いノードを、勝者ノードに決定することができる。
【０２５７】
サンプルスコアのスムージングは、例えば、式（７）に従って行うことができる。
【０２５８】
【数７】
2009070033.tif 000009
・・・（７）
【０２５９】
ここで、St+1は、サンプル点（時刻）t+1の、スムージング後のサンプルスコアを表し、Et+1は、サンプル点t+1の、スムージング前のサンプルスコアとしての予測誤差を表す。また、βは、スムージングの度合いを調整するスムージング係数であり、0以上1未満の値が設定される。
【０２６０】
スムージング係数βとして、0を設定した場合、サンプル点t+1のスムージング後のサンプルスコアSt+1は、サンプル点t+1の、スムージング前のサンプルスコアとしての予測誤差Et+1に一致し、この場合、スムージングを行わないこととなる。
【０２６１】
また、スムージング係数βとして、例えば、0.9などの1に近い設定した場合、スムージング後のサンプルスコアSt+1は、１時刻前のサンプルスコアStから急激に変化することがなくなり（緩やかに変化するようになり）、１つのサンプル点において、たまたま、他のノードNjのサンプルスコアが最も良くなること等を防止することができる。
【０２６２】
分節化モードの学習処理では、サンプル点ごとの学習重みを決定するために、勝者ノードをサンプル点ごとに決定するが、その、サンプル点ごとの勝者ノードの決定は、他のサンプル点の勝者ノードに関係なく、いわば時間的な連続性を無視して行われるため、上述したようなスムージングの処理は、勝者ノードが頻繁に変化することを防止するのに有用である。
【０２６３】
なお、上述した図６では、説明を簡単にするため、非分節化モードの学習処理において、特徴量抽出部１２から学習部１３に対して、１サンプルの特徴量が供給されると、その１サンプルの特徴量と、特徴量抽出部１２から直前に供給されたT-1サンプルの特徴量とを合わせたTサンプルの特徴量（サンプル値）の時系列データを、観測時系列データとして、そのTサンプルの観測時系列データを、学習データとして用いることとしたが、非分節化モードの学習処理において、ダイナミクス記憶ネットワークの適切な学習を行うには、例えば、人手によって、あらかじめ適切に分節した時系列データを、学習データとして用いる必要がある。
【０２６４】
これに対して、分節化モードの学習処理では、上述したように、ノードのパラメータの更新時に、結果として、適切な分節が行われるため、非分節化モードの学習処理のように、時系列データを、人手によって、あらかじめ分節しておく必要はない。したがって、分節化モードの学習処理では、連続的に入力される時系列データを用いて、ダイナミクス記憶ネットワークの適切な学習を行うことができる。
【０２６５】
次に、図１４のフローチャートを参照して、図１の認識部１４による認識処理について説明する。
【０２６６】
ステップＳ３１において、認識部１４は、認識処理に用いる認識データを生成する。
【０２６７】
すなわち、認識部１４は、例えば、特徴量抽出部１２から、Tサンプルの特徴量（サンプル値）が供給されるのを待って、そのTサンプルの特徴量の時系列である観測時系列データを、認識データとする。
【０２６８】
そして、処理は、ステップＳ３１からステップＳ３２に進み、認識部１４は、認識データに対するダイナミクス記憶ネットワークの各ノードのスコア（合計スコア）の計算を、図６の非分節化モードの学習処理の場合と同様に、ノードが有する、内部状態量を持つ力学系近似モデルの内部状態量を更新しながら行う。
【０２６９】
ダイナミクス記憶ネットワークのすべてのノードのスコアが求められると、処理は、ステップＳ３２からステップＳ３３に進み、認識部１４は、ダイナミクス記憶ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、認識データに最も適合するノードである勝者ノードに決定して、処理は、ステップＳ３４に進む。
【０２７０】
ステップＳ３５では、認識部１４は、勝者ノードを表す情報を、認識データの認識結果として出力して、処理は終了する。
【０２７１】
ここで、認識部１４が出力した認識結果は、図１のデータ処理装置の外部に出力することができる。また、認識部１４が出力した認識結果は、制御信号として、生成部１５に供給することができる。
【０２７２】
次に、図１５のフローチャートを参照して、図１の生成部１５による生成処理について説明する。
【０２７３】
図６や図１２の学習処理によれば、ダイナミクス記憶ネットワークの各ノードは、内部状態量を持つ力学系近似モデルによってダイナミクスを学習し、記憶（獲得）するが、その後は、その各ノードの内部状態量を持つ力学系近似モデルから、その力学系近似モデルによってモデル化されたダイナミクスを有する時系列データ（ダイナミクスとして獲得された時系列パターンの時系列データ）を生成することができる。
【０２７４】
内部状態量を持つ力学系近似モデルとしてRNNを用いた場合には、所定の内部状態量をRNNに与えることで、そのRNNを有するノードに保持されるダイナミクスから時系列データを容易に生成することができる。
【０２７５】
具体的には、RNNの入力にある時刻tの状態ベクトルを与えると、次の時刻t+1の状態ベクトルが出力される。したがって、この操作を所定の時間ステップ（サンプル点）分だけ行うことで、ダイナミクス記憶ネットワークの各ノードから、その所定の時間ステップ分に相当するサンプル数の時系列データを生成することができる。
【０２７６】
すなわち、図１５のステップＳ５１において、生成部１５は、ダイナミクス記憶ネットワークのノードのうちの、どのダイナミクスに対応するノードから時系列データを生成するかを決定する。
【０２７７】
ここで、時系列データの生成に用いられるノードを、以下、適宜、生成ノードともいう。生成処理では、生成部１５は、例えば、ダイナミクス記憶ネットワークのノードの中から、１個のノードをランダムに選択し、そのノードを、生成ノードに決定する。あるいは、生成部１５は、例えば、ユーザからの指示等に応じて供給される制御信号に基づいて、ダイナミクス記憶ネットワークのノードの中から、生成ノードとするノードを決定する。
【０２７８】
生成ノードが決定されると、処理は、ステップＳ５１からステップＳ５２に進み、生成部１５は、生成ノードが保持する内部状態量を持つ力学系近似モデルのパラメータに基づき、時系列データを、力学系近似モデルの内部状態量を更新しながら生成して、処理は、ステップＳ５３に進む。
【０２７９】
ステップＳ５３では、生成部１５は、生成ノードの力学系近似モデルから生成された時系列データ（以下、適宜、生成時系列データともいう）を必要に応じて変換し、出力して、処理は終了する。
【０２８０】
ここで、学習部１３が学習処理に用いる学習データとしての観測時系列データは、センサモータ信号の特徴量であるため、生成部１５が生成する生成時系列データも、センサモータ信号の特徴量である。生成時系列データとしてのセンサモータ信号の特徴量は、生成部１５が、ステップＳ５３において、センサモータ信号に変換し、そのセンサモータ信号のうちのモータ信号が、例えば、自律型ロボットに供給される。
【０２８１】
なお、力学系近似モデルが、例えば、RNNである場合、生成部１５での生成時系列データの生成時には、内部状態量としてのRNNのコンテキストユニット（図３）に入力されるコンテキストの初期値、及び入力ユニット（図３）に入力されるデータの初期値として、例えば、ランダムな値が用いられる。
【０２８２】
また、ある時刻t+1においてRNNの入力ユニット（図３）に入力されるデータとしては、直前の時刻tにおいてRNNの出力層から出力された、時刻t+1のデータの予測値が用いられる。
【０２８３】
次に、図１６のフローチャートを参照して、図１の認識部１４、及び生成部１５による認識生成処理について説明する。
【０２８４】
上述したように、認識生成処理によれば、自律型ロボットの認知行動を実現することができる。
【０２８５】
認識部１４、及び生成部１５において、内部状態量を持つ力学系近似モデルによってダイナミクスを学習したダイナミクス記憶ネットワークを用いて、認識生成を行う場合、図１４の認識処理と図１５の生成処理を逐次的に組み合わせるだけでは、力学系近似モデルの内部状態量を考慮した認識生成を行うことは困難である。
【０２８６】
そこで、認識部１４、及び生成部１５は、内部状態記憶部１７において、図１４の認識処理において更新された力学系近似モデルの内部状態量（内部状態）を記憶し、その内部状態量を図１５の生成処理において用いることで、観測信号から得られる時刻tの観測時系列データに対して、次の時刻t+1の観測時系列データの予測値を生成する認識生成処理を行う。
【０２８７】
すなわち、認識生成処理では、ステップＳ７１において、認識部１４が、図１４のステップＳ３１の場合と同様に、特徴量抽出部１２からの、Tサンプルの特徴量（サンプル値）の時系列である観測時系列データを、認識データとする。
【０２８８】
その後、処理は、ステップＳ７１からステップＳ７２に進み、認識部１４は、認識データに対する、ダイナミクス記憶ネットワークの各ノードのスコア（合計スコア）の計算を、図６の非分節化モードの学習処理の場合と同様に、ノードが有する、内部状態量を持つ力学系近似モデルの内部状態量を更新しながら行う。
【０２８９】
但し、ステップＳ７２のスコアの計算では、認識部１４は、内部状態記憶部１７から前回更新されて記憶されている内部状態量を読み込み、その内部状態記憶部１７から読み込んだ値を、力学系近似モデルの内部状態量（例えば、RNNのコンテキスト）の初期値とする。
【０２９０】
ダイナミクス記憶ネットワークのすべてのノードのスコアが求められると、処理は、ステップＳ７２からステップＳ７３に進み、認識部１４は、ダイナミクス記憶ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、認識データに最も適合するノードである勝者ノードに決定する。
【０２９１】
さらに、ステップＳ７３では、認識部１４は、勝者ノードが決定されたときの内部状態量の更新値（更新された内部状態量）と、その勝者ノードが決定されたときの内部状態量の初期値とを、内部状態記憶部１７に保存する（記憶させる）。
【０２９２】
ここで、内部状態記憶部１７に記憶された内部状態量の更新値は、認識部１４での次回のスコアの計算を行うステップＳ７２において、力学系近似モデルの内部状態量（例えば、RNNのコンテキスト）の初期値として用いられる。
【０２９３】
また、内部状態記憶部１７に記憶された内部状態量の初期値は、生成部１５において、時系列データの生成時に用いられる。
【０２９４】
その後、認識部１４は、勝者ノードを表す情報を出力し、処理は、ステップＳ７３からステップＳ７４に進む。認識部１４が出力した情報は、制御信号として、生成部１５に供給される。
【０２９５】
ステップＳ７４では、生成部１５は、ダイナミクス記憶ネットワークのノードのうちの、認識部１４から制御信号として供給される情報が表す勝者ノードを、生成ノードとして、その生成ノードが保持する内部状態量を持つ力学系近似モデルのパラメータに基づき、生成時系列データを、力学系近似モデルの内部状態量を更新しながら生成して、処理は、ステップＳ７５に進む。
【０２９６】
すなわち、生成部１５は、内部状態記憶部１７の記憶値を、ネットワーク記憶部１６に記憶されたダイナミクス記憶ネットワークの生成ノードの力学系近似モデルの内部状態量の初期値として読み込む。
【０２９７】
つまり、生成部１５は、内部状態記憶部１７の記憶値のうちの、生成ノードが認識部１４において勝者ノードに決定されたときの内部状態量の初期値を読み出し、生成ノードの力学系近似モデルの内部状態量の初期値にセットする。
【０２９８】
さらに、生成部１５は、特徴量抽出部１２から供給される特徴量の時系列から、認識部１４がステップＳ７１で生成するのと同一の認識データを生成し、その認識データを、生成ノードの力学系近似モデルに与え、その力学系近似モデルの内部状態量を更新しながら、生成時系列データを生成する。
【０２９９】
具体的には、力学系近似モデルが、例えば、RNNである場合、RNNのコンテキストユニット（図３）に対して、内部状態記憶部１７の記憶値のうちの、生成ノードが認識部１４において勝者ノードに決定されたときのコンテキストの初期値が、生成時系列データを生成するときのコンテキストの初期値として入力される。
【０３００】
さらに、RNNの入力ユニット（図３）に対して、認識データが入力される。
【０３０１】
そして、力学系近似モデルの内部状態量を更新しながら、認識データとしての観測時系列データの次の時刻の観測時系列データの予測値としての生成時系列データが生成される。
【０３０２】
ステップＳ７５では、生成部１５は、生成ノードの力学系近似モデルから生成された生成時系列データを、図１５のステップＳ５３の場合と同様に、必要に応じて変換し、出力して、処理は、ステップＳ７１に戻り、以下、ステップＳ７１ないしＳ７５の処理が繰り返される。
【０３０３】
ここで、生成部１５が生成する生成時系列データは、図１５で説明したように、センサモータ信号の特徴量であるが、そのセンサモータ信号の特徴量は、生成部１５が、ステップＳ７５において、センサモータ信号に変換する。そして、そのセンサモータ信号のうちのモータ信号が、例えば、自律型ロボットに供給される。
【０３０４】
以上のような、図１６ステップＳ７１ないしＳ７５の認識生成処理が、例えば、１時刻ごとに行われることで、ロボットは認知行動を行う。
【０３０５】
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【０３０６】
そこで、図１７は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【０３０７】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク１０５やROM１０３に予め記録しておくことができる。
【０３０８】
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)，MO(Magneto Optical)ディスク，DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体１１１に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体１１１は、いわゆるパッケージソフトウエアとして提供することができる。
【０３０９】
なお、プログラムは、上述したようなリムーバブル記録媒体１１１からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部１０８で受信し、内蔵するハードディスク１０５にインストールすることができる。
【０３１０】
コンピュータは、CPU(Central Processing Unit)１０２を内蔵している。CPU１０２には、バス１０１を介して、入出力インタフェース１１０が接続されており、CPU１０２は、入出力インタフェース１１０を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部１０７が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)１０３に格納されているプログラムを実行する。あるいは、また、CPU１０２は、ハードディスク１０５に格納されているプログラム、衛星若しくはネットワークから転送され、通信部１０８で受信されてハードディスク１０５にインストールされたプログラム、またはドライブ１０９に装着されたリムーバブル記録媒体１１１から読み出されてハードディスク１０５にインストールされたプログラムを、RAM(Random Access Memory)１０４にロードして実行する。これにより、CPU１０２は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU１０２は、その処理結果を、必要に応じて、例えば、入出力インタフェース１１０を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部１０６から出力、あるいは、通信部１０８から送信、さらには、ハードディスク１０５に記録等させる。
【０３１１】
なお、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含むものである。
【０３１２】
また、プログラムは、１のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【０３１３】
なお、前述の特許文献１に記載されている、複数のRNNモジュールの出力をゲート機構によって統合するMixture of RNN Expertでは、式（６）の誤差補正重みWtに相当するパラメータが、所定の尤度関数を最大化するように調整される。
【０３１４】
しかしながら、Mixture of RNN Expertの学習は、全体最適化に基づく方法によって行われるため、RNNモジュールの数が大規模になった場合には、そのすべてのRNNモジュールを考慮して、尤度を最大化するように、誤差補正重みWtに相当するパラメータを調整する必要があり、学習が困難になる。
【０３１５】
これに対して、分節化モードの学習処理では、SOMの学習などで利用されるような近傍競合学習に基づいて、誤差補正重みWtが調整される。すなわち、勝者ノードが決定され、その勝者ノードから各ノードまでの距離に応じて、誤差補正重みWtとなる学習重みが決定される。近傍競合学習は、全体最適化に基づく学習則ではないため、必ずしも最適な結果が得られることは保証されないが、その反面、モジュール数（ダイナミクス記憶ネットワークを構成するノードの数）が大規模になった場合でも、実用的に学習（ノードのパラメータの更新）を行うことができ、多数のダイナミクスを効率的に記憶することができる。
【０３１６】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【０３１７】
すなわち、ダイナミクス記憶ネットワークのノードが有するモデルとしては、例えば、内部状態量を有しない力学系近似モデルや、力学系近似モデル以外のダイナミクスの学習及び記憶を行うことができるモデルを採用することができる。
【図面の簡単な説明】
【０３１８】
【図１】本発明を適用したデータ処理装置の一実施の形態の構成例を示すブロック図である。
【図２】ダイナミクス記憶ネットワークの例を、模式的に示す図である。
【図３】ノードの構成例を、模式的に示す図である。
【図４】非分節化モードの学習処理での学習重みの決定の方法を説明する図である。
【図５】非分節化モードの学習処理での学習重みの決定の方法を説明する図である。
【図６】非分節化モードの学習処理を説明するフローチャートである。
【図７】非分節化モードの学習処理を説明する図である。
【図８】分節化モードの学習処理を説明する図である。
【図９】分節化モードの学習処理を行う学習部１３の構成例を示すブロック図である。
【図１０】各ノードNkについてのサンプル点t-nごとの学習重みαk,t-nを示す図である。
【図１１】２個のノードN1及びN2それぞれについてのサンプル点ごとの学習重みの例を示す図である。
【図１２】分節化モードの学習処理を説明するフローチャートである。
【図１３】NNの２つのユニット#i及び#jを示す図である。
【図１４】認識処理を説明するフローチャートである。
【図１５】生成処理を説明するフローチャートである。
【図１６】認識生成処理を説明するフローチャートである。
【図１７】本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【符号の説明】
【０３１９】
１１  信号入力部，  １２  特徴量抽出部，  １３  学習部，  １４  認識部，  １５  生成部，  １６  ネットワーク記憶部，  １７  内部状態記憶部，  ３１  時系列生成部，  ３２  学習重み時系列生成部，  ３３  時系列重み利用更新部，  ４１  勝者ノード決定部，  ４２  学習重み決定部，  １０１  バス，  １０２  CPU，  １０３  ROM，  １０４  RAM，  １０５  ハードディスク，  １０６  出力部，  １０７  入力部，  １０８  通信部，  １０９  ドライブ，  １１０  入出力インタフェース，  １１１  リムーバブル記録媒体
【図１】
2009070033.tif 000010
【図２】
2009070033.tif 000011
【図３】
2009070033.tif 000012
【図４】
2009070033.tif 000013
【図５】
2009070033.tif 000014
【図６】
2009070033.tif 000015
【図７】
2009070033.tif 000016
【図８】
2009070033.tif 000017
【図９】
2009070033.tif 000018
【図１０】
2009070033.tif 000019
【図１１】
2009070033.tif 000020
【図１２】
2009070033.tif 000021
【図１３】
2009070033.tif 000022
【図１４】
2009070033.tif 000023
【図１５】
2009070033.tif 000024
【図１６】
2009070033.tif 000025
【図１７】
2009070033.tif 000026