(57)【要約】【課題】多数のダイナミクスを学習し、その多数のダイナミクスに基づいて、外部環境からの入力に対して連続的に認識や生成を行う。【解決手段】学習部１−４は、ダイナミクスを一つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークの自己組織的な更新を、観測される時系列データに基づいて行う。また、認識部１−６は、ダイナミクス記憶ネットワークを用いて、観測された時系列データを認識し、生成部１−９は、制御信号１−８によって指定される、ダイナミクス記憶ネットワークのノードを用いて、時系列データを生成する。本発明は、例えば、ロボットなどに適用できる。【選択図】図１
2007299366.tif 000002
【特許請求の範囲】
【請求項１】
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、
観測される時系列データに基づき、前記ネットワークの各ダイナミクスを自己組織的に更新する学習手段と
を備える学習装置。
【請求項２】
請求項１の学習装置において、
ダイナミクスが内部状態量を持つ力学系近似モデルによってモデル化される
ことを特徴とする学習装置。
【請求項３】
請求項１の学習装置において、
ダイナミクスがリカレントニューラルネットワークによってモデル化される
ことを特徴とする学習装置。
【請求項４】
請求項１の学習装置において、
前記学習手段は、
観測される時系列データに最も適合するダイナミクスに対応するノードである勝者ノードを決定し、
前記勝者ノードを中心として、各ノードの学習の重みを決定し、
各ノードが保持するダイナミクスを、各ノードの学習の重みに応じて、観測される時系列データに近くなるように更新する
ことを特徴とする学習装置。
【請求項５】
請求項４の学習装置において、
前記学習手段は、前記勝者ノードと各ノードとの結合関係に基づき、各ノードの学習の重みを決定する
ことを特徴とする学習装置。
【請求項６】
請求項４の学習装置において、
前記学習手段は、観測される時系列データが各ノードが保持するダイナミクスに適合する度合いに応じた順位に基づき、各ノードの学習の重みを決定する
ことを特徴とする学習装置。
【請求項７】
請求項４の学習装置において、
各ノードが保持するダイナミクスに対応する学習データを記憶するための学習データ記憶手段をさらに備え、
前記学習手段は、前記学習データ記憶手段に記憶された学習データと観測される時系列データを混合することで学習データを更新し、その更新後の学習データに基づいてダイナミクスを更新する
ことを特徴とする学習装置。
【請求項８】
請求項１の学習装置において、
前記ネットワークは、あらかじめ用意された初期学習用ノードと、後から追加されるか、またはあらかじめ用意された追加学習用ノードとの２種類のノードから構成可能であり、
前記学習手段は、
観測される時系列データが、前記初期学習用ノードが保持するダイナミクスに適合するかどうかを判定し、
観測される時系列データが、前記初期学習用ノードが保持するダイナミクスに適合すると判定した場合、その時系列データに基づき、前記初期学習用ノードが保持するダイナミクスを自己組織的に更新する初期学習用ノードの学習を行い、
観測される時系列データが、前記初期学習用ノードが保持するダイナミクスに適合しないと判定した場合、その時系列データに基づき、前記追加学習用ノードが保持するダイナミクスを更新する追加学習用ノードの学習を行う
ことを特徴とする学習装置。
【請求項９】
請求項８の学習装置において、
前記学習手段は、
観測される時系列データに最も適合するダイナミクスに対応する初期学習用ノードである勝者ノードを決定し、
前記勝者ノードを中心として、各初期学習用ノードの学習の重みを決定し、
各初期学習用ノードが保持するダイナミクスを、各初期学習用ノードの学習の重みに応じて、観測される時系列データに近くなるように更新する
ことを初期学習用ノードの学習として行う
ことを特徴とする学習装置。
【請求項１０】
請求項８の学習装置において、
前記学習手段は、
観測される時系列データに最も適合するダイナミクスに対応する前記初期学習用ノードである勝者ノードが保持するダイナミクスに対する、観測される時系列データの適合の度合いに基づき、観測される時系列データが、前記初期学習用ノードが保持するダイナミクスに適合するかどうかを判定する
ことを特徴とする学習装置。
【請求項１１】
請求項８の学習装置において、
前記学習手段は、
観測される時系列データに最も適合するダイナミクスに対応する前記初期学習用ノードである勝者ノードを決定し、
前記勝者ノードに基づいて、学習の対象とする追加学習用ノードを特定し、
その追加学習用ノードが保持するダイナミクスを、観測される時系列データに近くなるように更新する追加学習用ノードの学習を行う
ことを特徴とする学習装置。
【請求項１２】
請求項８の学習装置において、
前記初期学習用ノードが保持するダイナミクスが、観測される時系列データに適合する度合いを表すスコアを求め、
前記スコアの分布に基づいて、学習の対象とする追加学習用ノードを特定し、
その追加学習ノードが保持するダイナミクスを、観測される時系列データに近くなるように更新する追加学習用ノードの学習を行う
ことを特徴とする学習装置。
【請求項１３】
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、
観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する認識手段と
を備える認識装置。
【請求項１４】
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、
時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードの前記内部状態量を更新しながら、時系列データを生成する生成手段と
を備える生成装置。
【請求項１５】
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、
観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する認識手段と、
前記勝者ノードを決定する処理において得られる前記内部状態量を記憶する内部状態記憶手段と、
前記認識結果に基づき、前記勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの前記内部状態量を決定して、前記生成ノードの内部状態量を更新しながら、時系列データを生成する生成手段と
を備える認識生成装置。
【請求項１６】
前記内部状態記憶手段は、前記勝者ノードが決定されたときに最終的に得られた前記内部状態量の更新値を記憶し、
前記生成手段は、前記内部状態記憶手段の記憶値を、前記生成ノードの前記内部状態量の初期値として、前記生成ノードの内部状態量を更新しながら、時系列データを生成する
請求項１５に記載の認識生成装置。
【請求項１７】
前記内部状態記憶手段は、前記勝者ノードが決定されたときの前記内部状態量の初期値を記憶し、
前記生成手段は、前記内部状態記憶手段の記憶値を、前記生成ノードの前記内部状態量の初期値として、前記生成ノードの内部状態量を更新しながら、時系列データを生成する
請求項１５に記載の認識生成装置。
【請求項１８】
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークの各ダイナミクスを、観測される時系列データに基づき、自己組織的に更新する
ステップを含む学習方法。
【請求項１９】
コンピュータに実行させるプログラムにおいて、
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークの各ダイナミクスを、観測される時系列データに基づき、自己組織的に更新する
ステップを含む学習処理を、コンピュータに実行させるプログラム。
【請求項２０】
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する
ステップを含む認識方法。
【請求項２１】
コンピュータに実行させるプログラムにおいて、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する
ステップを含む認識処理を、コンピュータに実行させるプログラム。
【請求項２２】
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードの前記内部状態量を更新しながら、時系列データを生成する
ステップを含む生成方法。
【請求項２３】
コンピュータに実行させるプログラムにおいて、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードの前記内部状態量を更新しながら、時系列データを生成する
ステップを含む生成処理を、コンピュータに実行させるプログラム。
【請求項２４】
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記内部状態量を更新しながら決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力し、
前記勝者ノードを決定する処理において得られる前記内部状態量を、内部状態記憶手段に記憶し、
前記認識結果に基づき、前記勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの前記内部状態量を決定して、前記生成ノードの内部状態量を更新しながら、時系列データを生成する
ステップを含む認識生成方法。
【請求項２５】
コンピュータに実行させるプログラムにおいて、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記内部状態量を更新しながら決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力し、
前記勝者ノードを決定する処理において得られる前記内部状態量を、内部状態記憶手段に記憶し、
前記認識結果に基づき、前記勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの前記内部状態量を決定して、前記生成ノードの内部状態量を更新しながら、時系列データを生成する
ステップを含む認識生成処理を、コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習装置および学習方法、認識装置および認識方法、生成装置および生成方法、認識生成装置および認識生成方法、並びにプログラムに関し、特に、例えば、多数のダイナミクスを、観測される時系列データから自律的に学習し、また、その学習結果に基づき、入力される時系列データを認識することや、所定の入力に対して時系列データを生成して出力することができるようにする学習装置および学習方法、認識装置および認識方法、生成装置および生成方法、認識生成装置および認識生成方法、並びにプログラムに関する。
【背景技術】
【０００２】
ロボットなどのシステムの行動（運動）は、時間発展法則により定められる力学系（dynamical systems）として記述することができ、様々な行動はその力学系がある特定のアトラクタダイナミクス（attractor dynamics）によって実現できることが知られている。
【０００３】
例えば、人のような二足型ロボットの歩行運動は、系の運動状態が様々な初期状態からある特定の周期軌道に落ち着くことを特徴とするリミットサイクルダイナミクス（limit cycle dynamics）として記述することができる（例えば、非特許文献１，２参照）。また、アームロボットがある対象物に対して手先を伸ばすようなリーチング運動は、様々な初期状態からある特定の固定点に落ち着くことを特徴とする不動点ダイナミクス（fixed-point dynamics）として記述することができる。さらに、全ての運動は、不動点ダイナミクスで実現可能な離散運動（discrete movement）とリミットサイクルダイナミクスで実現可能な周期運動（cyclic movement）の組み合わせにより実現できるとも言われている。
【０００４】
こうしたアトラクタダイナミクスによってロボットなどのシステムの行動（運動）を制御する場合の問題は、まず、タスクに応じたアトラクタダイナミクスをどのように構成するのか、次に、センサ入力を通じた得た情報に基づいて、アトラクタダイナミクスに従いながら、対応するモータ出力を生成することであり、これを実現するためには、アトラクタダイナミクスが環境と連続的に相互作用するかたちでシステムの行動出力（運動出力）を生成する必要がある。
【０００５】
こうしたアトラクタダイナミクスを人が設計するのではなく、学習する方法が提案されている。その方法の一つに、リカレントニューラルネットワーク（recurrent neural network、以下RNN）を利用する方法がある。RNNは、ネットワークに回帰ループで結合されるコンテキストユニットに持ち、そこに内部状態を保持することによって、理論的には、任意の力学系を近似可能であることが知られている。しかしながら、密結合した１つのネットワークモジュールで構成される学習モデルでは、大規模な行動学習に必要な多数のダイナミクスの学習をする際に、記憶しようとするダイナミクス間の干渉が非常に大きく、学習が困難であるという問題がある。そこで、複数のネットワークモジュールを組にして１つの学習モデルを構成するモジュラアーキテクチャ（modular architecture）を採用した学習モデルがいくつか提案されている。このモジュラアーキテクチャでは、原理的には、モジュールを増やすことによって記憶できるダイナミクスを容易に増やすことができるが、与えられた学習サンプルをどのモジュールで学習するかを決定するモジュール選択の問題が生じる。
【０００６】
このモジュール選択を行う方法としては、学習サンプル（学習データ）を、どのモジュールに割り当てるかを人が決める教師あり学習（supervised learning）と、学習モデルが自律的に決める教師なし学習（unsupervised learning）の二つの方法がある。ロボットやシステムが自律的に学習を行うためには、教師なし学習によりモジュール学習を行う必要がある。
【０００７】
このモジュール学習の方法の一つに、Mixture of RNN Expertという学習モデルが提案されている（例えば、特許文献１参照）。この学習モデルでは、複数のRNNモジュールの出力をゲート機構により統合して最終的な出力を決定し、その最終的な出力の性能が最大化するように最尤推定法（maximum likelihood estimation）によりゲートを調整しながら各RNNモジュールの学習を行う。しかしながら、このような全体最適化に基づく方法では、モジュールの数が大規模になった場合に、学習が困難になるという問題がある。それに対して、ベクトルパターンのカテゴリ学習に用いられる自己組織化マップ（self-organization map、以下ＳＯＭ）（例えば、非特許文献３参照）やニューラルガス（neural-gas）（例えば、非特許文献４参照）などの方法では、そうした全体最適化に基づく学習則を用いずに、最適性は保証されないけれども、適切なカテゴリ構造を自己組織化的に教師なし学習できることが知られている。これらの方法では、モジュールの数が大規模になった場合でも、学習が実用的に可能である。
【０００８】
【特許文献１】特開平１１−１２６１９８号公報
【非特許文献１】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
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本件出願人は、先に、ベクトルパターンのかわりに時系列パターンを学習するためのモデルを提案している（特願2004-353382号（特開2006-162898号公報））。
【００１０】
しかしながら、ダイナミクスの学習、さらには学習した多数のダイナミクスに基づいて、外部入力に対して連続的に認識や時系列データの生成を行う方法は提案されていない。
【００１１】
本発明は、このような状況に鑑みてなされたものであり、例えば、ロボットの大規模な行動（運動）学習に必要な多数のダイナミクスを学習し、学習によって記憶した多数のダイナミクスに基づいて、外部環境からの入力に対して連続的に認識や時系列データの生成を行うことができるようにするものである。
【課題を解決するための手段】
【００１２】
本発明の第１の側面の学習装置は、ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、観測される時系列データに基づき、前記ネットワークの各ダイナミクスを自己組織的に更新する学習手段とを備える。
【００１３】
本発明の第１の側面の学習方法、またはプログラムは、ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークの各ダイナミクスを、観測される時系列データに基づき、自己組織的に更新するステップを含む。
【００１４】
以上のような第１の側面の学習装置、学習方法、またはプログラムにおいては、ダイナミクスが一つのノードに保持され、複数のノードによって構成されるネットワークの各ダイナミクスが、観測される時系列データに基づき、自己組織的に更新される。
【００１５】
本発明の第２の側面の認識装置は、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する認識手段とを備える。
【００１６】
本発明の第２の側面の認識方法、またはプログラムは、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力するステップを含む。
【００１７】
以上のような第２の側面の認識装置、認識方法、またはプログラムにおいては、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードが決定され、その勝者ノードを表す情報が、観測される時系列データの認識結果として出力される。
【００１８】
本発明の第３の側面の生成装置は、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードの前記内部状態量を更新しながら、時系列データを生成する生成手段とを備える。
【００１９】
本発明の第３の側面の生成方法、またはプログラムは、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードの前記内部状態量を更新しながら、時系列データを生成するステップを含む。
【００２０】
以上のような第３の側面の生成装置、生成方法、またはプログラムにおいては、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、時系列データの生成に用いるノードである生成ノードが決定され、前記生成ノードの前記内部状態量を更新しながら、時系列データが生成される。
【００２１】
本発明の第４の側面の認識生成装置は、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段と、観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する認識手段と、前記勝者ノードを決定する処理において得られる前記内部状態量を記憶する内部状態記憶手段と、前記認識結果に基づき、前記勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの前記内部状態量を決定して、前記生成ノードの内部状態量を更新しながら、時系列データを生成する生成手段とを備える。
【００２２】
本発明の第４の側面の認識生成方法、またはプログラムは、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記内部状態量を更新しながら決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力し、前記勝者ノードを決定する処理において得られる前記内部状態量を、内部状態記憶手段に記憶し、前記認識結果に基づき、前記勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの前記内部状態量を決定して、前記生成ノードの内部状態量を更新しながら、時系列データを生成するステップを含む。
【００２３】
本発明の第４の側面の認識生成装置、認識生成方法、またはプログラムにおいては、内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードが、前記内部状態量を更新しながら決定され、その勝者ノードを表す情報が、観測される時系列データの認識結果として出力される。さらに、前記勝者ノードを決定する処理において得られる前記内部状態量が、内部状態記憶手段に記憶され、前記認識結果に基づき、前記勝者ノードが、時系列データの生成に用いるノードである生成ノードに決定される。そして、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの前記内部状態量が決定され、前記生成ノードの内部状態量を更新しながら、時系列データが生成される。
【発明の効果】
【００２４】
本発明の第１の側面によれば、多数のダイナミクスを、時系列データから自律的に学習することができる。
【００２５】
本発明の第２の側面によれば、多数のダイナミクスを、時系列データから自律的に学習した学習結果に基づき、入力される時系列データを認識することができる。
【００２６】
本発明の第３の側面によれば、多数のダイナミクスを、時系列データから自律的に学習した学習結果に基づき、所定の入力に対して時系列データを生成して出力することができる。
【００２７】
本発明の第４の側面によれば、多数のダイナミクスを、時系列データから自律的に学習した学習結果に基づき、入力される時系列データを認識し、その認識結果に対して時系列データを生成して出力することができる。
【発明を実施するための最良の形態】
【００２８】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。したがって、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２９】
本発明の第１の側面の学習装置は、
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段（例えば、図１や図２１のネットワーク記憶部１−５）と、
観測される時系列データに基づき、前記ネットワークの各ダイナミクスを自己組織的に更新する学習手段（例えば、図１の学習部１−４や、図２１の学習部２１−４）と
を備える。
【００３０】
本発明の第１の側面の学習装置には、
各ノードが保持するダイナミクスに対応する学習データを記憶するための学習データ記憶手段（例えば、図６の学習データ記憶部６−２）をさらに設けることができ、
前記学習手段には、前記学習データ記憶手段に記憶された学習データと観測される時系列データを混合することで学習データを更新させ、その更新後の学習データに基づいてダイナミクスを更新させることができる。
【００３１】
本発明の第２の側面の認識装置は、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段（例えば、図１や図２１のネットワーク記憶部１−５）と、
観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する認識手段（例えば、図１や図２１の認識部１−６）と
を備える。
【００３２】
本発明の第３の側面の生成装置は、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段（例えば、図１や図２１のネットワーク記憶部１−５）と、
時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードの前記内部状態量を更新しながら、時系列データを生成する生成手段（例えば、図１や図２１の生成部１−９）と
を備える。
【００３３】
本発明の第４の側面の認識生成装置は、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークを記憶するネットワーク記憶手段（例えば、図１２のネットワーク記憶部１−５）と、
観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する認識手段（例えば、図１２の認識部１−６）と、
前記勝者ノードを決定する処理において得られる前記内部状態量を記憶する内部状態記憶手段（例えば、図１２の内部状態記憶部１−１１）と、
前記認識結果に基づき、前記勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの前記内部状態量を決定して、前記生成ノードの内部状態量を更新しながら、時系列データを生成する生成手段（例えば、図１２の生成部１−９）と
を備える。
【００３４】
本発明の第１の側面の学習方法、またはプログラムは、
ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークの各ダイナミクスを、観測される時系列データに基づき、自己組織的に更新する
ステップ（例えば、図７のステップ７−３乃至７−６や、図２３のステップ２３−６）を含む。
【００３５】
本発明の第２の側面の認識方法、またはプログラムは、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、前記内部状態量を更新しながら、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力する
ステップ（例えば、図１０のステップ１０−２乃至１０−４）を含む。
【００３６】
本発明の第３の側面の生成方法、またはプログラムは、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードの前記内部状態量を更新しながら、時系列データを生成する
ステップ（例えば、図１１のステップ１１−２および１１−３）を含む。
【００３７】
本発明の第４の側面の認識生成方法、またはプログラムは、
内部状態量を持つ力学系近似モデルをノードとして、前記ノードにダイナミクスを保持し、複数のノードによって構成されるネットワークのノードの中から、観測される時系列データに基づいて、観測される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを、前記内部状態量を更新しながら決定し、その勝者ノードを表す情報を、観測される時系列データの認識結果として出力し（例えば、図１４のステップ１４−３乃至１４−５や、図１６のステップ１６−３乃至１６−６）、
前記勝者ノードを決定する処理において得られる前記内部状態量を、内部状態記憶手段に記憶し（例えば、図１４のステップ１４−６や、図１６のステップ１６−７）、
前記認識結果に基づき、前記勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの前記内部状態量を決定して、前記生成ノードの内部状態量を更新しながら、時系列データを生成する（例えば、図１４のステップ１４−７乃至１４−１０や、図１６のステップ１６−８乃至１６−１１）ステップを含む。
【００３８】
図１は、本発明を適用したデータ処理装置の一実施の形態の構成例を示すブロック図である。
【００３９】
図１のデータ処理装置は、力学系を近似するモデルである力学系近似モデルのうちの、内部状態量を持つ力学系近似モデルを一つのノードとするダイナミクス記憶ネットワークを記憶するネットワーク記憶部１−５と、そのダイナミクス記憶ネットワークのパラメータを自己組織的に学習する学習部１−４とを含む。ダイナミクス記憶ネットワークの各ノードには、時系列データの力学的な特性がダイナミクスとして記憶される。学習部１−４によって学習されたパラメータ（によって定義されるダイナミクス記憶ネットワークのノードに記憶（保持）されたダイナミクス）は、時系列データの認識や生成のために利用される。
【００４０】
図１のデータ処理装置は、例えばロボット、マニピュレータシステム、パンチルトカメラ、船舶、航空機、自動車、その他の電子機器の制御信号の認識や生成に利用される。特に、自律型ロボットなどの自律システムにおいて、センサおよびモータなどの入出力信号一般の学習、認識、生成に利用される。
【００４１】
図１のデータ処理装置では、観測することができる観測信号１−１が信号入力部１−２に入力される。観測信号１−１は、例えば音や画像の信号、ＬＥＤ(Light Emitting Diode)の明るさ、モータの回転角度や回転角速度などであり、システムに入力される信号およびシステムが出力する信号のどちらも対象となる。
【００４２】
信号入力部１−２は、観測される観測信号１−１に対応する電気信号を出力する。具体的には、信号入力部１−２は、例えば、観測信号１−１が音の信号の場合はマイクに対応し、観測信号１−１が画像信号の場合はカメラに対応する。また、モータの回転角度や回転速度の計測装置なども、信号入力部１−２に対応する。
【００４３】
ここで、以下、適宜、信号入力部１−２に入力される信号の他、信号入力部１−２が出力する信号も、観測信号１−１という。また、観測信号１−１としては定常信号だけでなく時間的に変化する非定常信号も扱うものとする。
【００４４】
さらに、以下では、主にロボットシステムにおけるセンサモータ信号（例えば、センサが出力する信号や、モータに入力される（与えられる）信号（モータを制御する制御信号）をコンポーネントとするベクトル）を観測信号１−１の例として説明する。
【００４５】
また、センサモータ信号は、区間検出装置などによって、処理対象として検出された区間の信号が信号入力部１−２から出力されるものとして説明を行う。
【００４６】
ただし、観測信号１−１は、決してセンサモータ信号だけに制限されるものではない。すなわち、観測信号１−１としては、システムに係わる任意の入出力時系列信号を採用することが可能である。
【００４７】
また、信号の区間に関しても、適当な長さに区切られた信号が入力されればよく、その区切り方は、特に限定されない。したがって、観測信号１−１に応じて、最も良い方法で適当な長さに区切られた信号が信号入力部１−２に入力されれば良い。
【００４８】
特徴抽出部１−３では、信号入力部１−２に入力された観測信号１−１から特徴量の抽出が行われる。例えば、センサ信号の一つである音声信号に対しては、一定時間間隔で周波数分析などの処理が施され、メルケプストラムなどの特徴量が時系列に抽出される。
【００４９】
ここで、メルケプストラムとは音声認識などで広く利用されている特徴量である。特徴抽出部１−３が観測信号１−１から特徴量を時系列に抽出することにより得られる、その特徴量の時系列データは、必要に応じて、学習部１−４、認識部１−６、または生成部１−９に送られる。
【００５０】
学習部１−４は、特徴抽出部１−３から送られてきた時系列データを用いて、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークのパラメータ更新を行う。
【００５１】
なお、パラメータ更新のことを学習と呼ぶ場合がある。
【００５２】
学習部１−４による学習についての詳細は後述するが、基本的には、ラベルの付与されていない時系列データを繰り返し与えていくと、その中の特徴的なダイナミクスを自己組織的に獲得していく教師なし学習が実行される。その結果、ダイナミクス記憶ネットワークには、代表的なダイナミクスが効率的に記憶されることになる。なお、ダイナミクス記憶ネットワークに記憶されたダイナミクスは、認識部１−６や生成部１−９が必要に応じていつでも利用することができる。
【００５３】
以下では、特徴抽出部１−３から送られてくるデータを時系列データと呼び、ダイナミクス記憶ネットワークに記憶されるものをダイナミクスと呼ぶものとする。
【００５４】
ここで、ダイナミクスは、時間変化する力学系を表すもので、例えば、具体的な関数によって表現することができる。ダイナミクス記憶ネットワークでは、時系列データの時間変化の特徴が、ダイナミクスとして記憶される。
【００５５】
認識部１−６は、特徴抽出部１−３から送られてくる時系列データと、それまでの学習によってダイナミクス記憶ネットワークに保持されたダイナミクスとを照らし合わせ、特徴抽出部１−３からの時系列データに最も類似したダイナミクスを決定し、その決定の結果を認識結果１−７として出力する。
【００５６】
一方、ダイナミクス記憶ネットワークに保持されたダイナミクスからは、必要に応じて時系列データを生成することができる。この時系列データの生成処理を行うのが生成部１−９である。
【００５７】
生成部１−９は、まず、どのダイナミクスから時系列データを生成するかを指定する制御信号１−８を受け取り、その制御信号１−８によって指定されたダイナミクスから時系列データの生成を行う。生成部１−９において生成された時系列データは、生成結果１−１０として出力される。
【００５８】
内部状態記憶部１−１１は、ダイナミクス記憶ネットワークの内部状態量を保持する。内部状態記憶部１−１１に記憶された内部状態量は、例えば、認識部１−６によって更新され、生成部１−９によって生成処理に利用される。
【００５９】
以上が、全体の構成に関する概要説明である。つづいて、学習部１−４とダイナミクス記憶ネットワークに関する詳細を説明する。
【００６０】
［学習（初期学習）について］
学習は、教師なし学習と教師あり学習とに分けることができる。学習部１−４では、時系列データの教師なし学習が行われるが、この教師なし学習を説明する前に、教師あり学習について説明する。
【００６１】
図２は、時系列データの教師あり学習の学習方法の一例を示している。
【００６２】
まず、学習に利用する時系列データである学習データを、想定したカテゴリごとに用意する。例えば、「Ａ」、「Ｂ」、「Ｃ」というタスクそれぞれのセンサモータ信号を学習する場合、それぞれのタスクに応じた多数のセンサモータ信号が用意される。ここで、タスク「A」のセンサモータ信号とは、例えば、ロボットがタスク「A」を行うときに、そのロボットが有するセンサが出力する時系列のセンサ信号と、ロボットにタスク「A」としての行動を行わせるようにモータを駆動する時系列のモータ信号とをコンポーネントとする時系列のベクトルである。タスク「B」、「C」のセンサモータ信号も、同様である。
【００６３】
図２において、学習データ２−１は、カテゴリ（タスク）「Ａ」のセンサモータ信号であり、学習データ２−２は、カテゴリ「Ｂ」のセンサモータ信号である。また、学習データ２−３は、カテゴリ「Ｃ」のセンサモータ信号である。
【００６４】
次に、学習に利用するモデルを、想定したカテゴリごとに用意する。モデルとしては、例えばRNNなどが利用される。
【００６５】
図２において、モデル２−７は、カテゴリ「Ａ」のモデル（カテゴリ「Ａ」に対応したモデル）であり、モデル２−８は、カテゴリ「Ｂ」のモデルである。また、モデル２−９は、カテゴリ「Ｃ」のモデルである。
【００６６】
モデルのパラメータの学習（更新）は対応する学習データだけを使って行われる。例えば、カテゴリ「Ａ」に対応する学習データ２−１を使って、カテゴリ「Ａ」のモデル（学習モデル）２−７の学習が行われる。カテゴリ「Ｂ」、「Ｃ」についても同様である。
【００６７】
教師あり学習では、カテゴリごとに学習を行うため、それぞれのカテゴリに対応する学習データを与える必要があるが、その反面、カテゴリごとにモデルを構成することが可能である。
【００６８】
これに対して、図３は、学習部１−４が行う教師なし学習の学習手法の例を示している。
【００６９】
まず、教師なし学習は、学習データ３−１に、どのようなカテゴリのデータが含まれているのかは未知であり、カテゴリ数も未知である点が図２で説明した教師あり学習とは大きく異なっている。
【００７０】
学習データ３−１に含まれる各データにラベル（データが、どのようなカテゴリのデータであるかを表す情報）は付与されていない。したがって、学習データ３−１を用いて、図２で説明したような教師あり学習は行うことができない。
【００７１】
そこで、ダイナミクス記憶ネットワークを導入する。ダイナミクス記憶ネットワークは、ダイナミクスを一つのノードに保持し、複数のノードによって構成されるネットワークである。
【００７２】
ここで、本実施の形態では、ダイナミクス記憶ネットワークのノードに保持されるダイナミクスを、例えば、内部状態量を持つ力学系近似モデルによってモデル化することとする。この場合、ダイナミクス記憶ネットワークは、内部状態量を持つ力学系近似モデルをノードとするネットワーク（内部状態量を持つ力学系近似モデルを保持（記憶）するノードによって構成されるネットワーク）である。
【００７３】
また、内部状態量を持つモデルとは、例えば、ある入力があると、その入力に応じて出力をするモデルを考えた場合に、外部から観測することができる入力と出力とは別に、外部からは観測されない（できない）、モデルの内部の状態を表す内部状態量を有するモデルである。内部状態量を持つモデルでは、入力の他に、内部状態量をも用いて出力が求められるため、同一の入力があっても、内部状態量が異なると、異なる出力が得られる。
【００７４】
図３では、ダイナミクス記憶ネットワーク３−３が、６個のノード３−４乃至３−９から構成されている。
【００７５】
学習部１−４は、ダイナミクス記憶ネットワーク３−３全体によって、学習データ３−１の特徴を適切に表現できるように学習を行う。ダイナミクス記憶ネットワーク３−３を構成するそれぞれのノード３−４乃至３−９では自己組織的に学習が行われる。この学習は教師なし学習に対応する。
【００７６】
ここで、ダイナミクス記憶ネットワークでは、一つのノードが必ずしも一つのカテゴリに対応するとは限らないということには注意しておく必要がある。むしろ、複数のノードによって、あるカテゴリが構成されると見ることができる。例えば、学習データ３−１にカテゴリ「Ａ」、「Ｂ」、「Ｃ」の３つのカテゴリのデータが含まれる場合には、カテゴリ「Ａ」、「Ｂ」、「Ｃ」それぞれが複数のノードによって学習されることがある。また、学習データ３−１に含まれるデータが明確にカテゴリ分けできない（人間がカテゴリ分けできない）場合であっても、学習が可能である。
【００７７】
ダイナミクス記憶ネットワークは、複数のノードで構成されるネットワークである。ノードの一つ一つは時系列パターン（時系列データのパターン）をダイナミクスとして保持するために利用される。そして、ノードとノードは結合関係を持つことができる。この結合関係をリンクと呼ぶ。図３のダイナミクス記憶ネットワーク３−３では、例えば、ノード３−４は、ノード３−５と結合関係を有し、ノード３−６とも結合関係を有するが、この結合関係がリンクにあたる。
【００７８】
図４と図５は、ダイナミクス記憶ネットワークの代表的な例を示している。
【００７９】
図４は、すべてのノード４−２乃至４−７がリンクを持たないダイナミクス記憶ネットワーク４−１を示している。
【００８０】
図５は、すべてのノード５−２乃至５−１０を２次元的に配置し、縦方向および横方向に隣接するノード間にリンクを与えたダイナミクス記憶ネットワーク５−１を示している。ここで、リンクは空間上にノードが配置される構造を与えるために利用される。つまり、図５のダイナミクス記憶ネットワーク５−１は、２次元的なノードの配置構造を与えたダイナミクス記憶ネットワークの例であり、図４のダイナミクス記憶ネットワーク４−１は、ノードの配置に空間的な制約がない構造を与えたダイナミクス記憶ネットワークの例である。
【００８１】
リンクによって与えられる空間的なノードの配置構造に基づき、ノードどうしの空間上での距離関係が決定される。例えば、図５では、あるノードに着目したとき、その着目ノードとリンクで直接結合された、着目ノードに隣接するノードは（着目ノードとの距離が）最も近く、その隣接ノードから先のリンクを順にたどっていくことで到達するノードは（着目ノードとの距離が）少しずつ遠くなっていく。
【００８２】
一方、図４では、空間上における距離関係は与えられない。
【００８３】
図４や図５以外にも、リンクの構成の仕方によって、ノードの空間上における配置構造を変えることができ、その配置構造はリンクを使うことで任意に設定できる。
【００８４】
図６は、ダイナミクス記憶ネットワークの一つのノードの詳細を示す図である。
【００８５】
一つのノードは、内部状態量を持つ力学系近似モデル６−１と、その力学系近似モデル６−１のパラメータを学習するためのデータ（学習データ）を記憶しておく学習データ記憶部６−２で構成される。内部状態量を持つ力学系近似モデル６−１としては、例えばRNNなどを用いることができ、この場合、内部状態量としては、例えば、RNNの出力層から入力層にフィードバックされるコンテキストがある。なお、学習データ記憶部６−２は、ネットワーク記憶部１−５（図１）の記憶領域の一部である。
【００８６】
図６では、力学系近似モデル６−１として、三層型ニューラルネットワーク（ＮＮ）の出力層から入力層への回帰ループを持つRNNが用いられている。このRNNを用いて、時系列データにおける時刻Tの状態ベクトルXTを入力し、時刻T＋１の状態ベクトル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等に記載されている。なお、BPTT法は、最急降下法に基づく学習手法であるBack-Propagation法を、RNNの学習用に拡張した手法である。Back-Propagation法については、例えば、R.ビール、T.ジャクソン、「ニューラルコンピューティング入門」（海文堂）等に記載されている。
【００８８】
内部状態量を持つ力学系近似モデル６−１では、学習データ記憶部６−２に記憶された学習データの力学的な特性が学習され、これにより、内部状態量を持つ力学系近似モデル６−１と学習データ記憶部６−２の学習データは対応関係を持つことになる。
【００８９】
ここで、学習に使われる学習データは時系列データであり、内部状態量を持つ力学系近似モデル６−１は、時系列データの時系列パターンをダイナミクスとして学習する。
【００９０】
ダイナミクス記憶ネットワークの学習には、例えば、オンライン学習が適用され、観測信号１−１が入力されるたびに、その観測信号１−１を学習データとして用いた学習が行われることで、力学系近似モデル６−１のパラメータが少しずつ更新される。これは、学習データ記憶部６−２に記憶される学習データが、学習が進むにしたがって少しずつ変化することで実現される。つまり、学習データ記憶部６−２に記憶される学習データが少しずつ変化し、その変化に伴って内部状態量を持つ力学系近似モデル６−１のパラメータが更新されていく。
【００９１】
つづいて、図７を参照して、図１のデータ処理装置によるダイナミクス記憶ネットワークの学習の処理について説明する。
【００９２】
まず最初に、学習部１−４は、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークのすべてのパラメータの初期化を行う（ステップ７−１）。具体的には、ダイナミクス記憶ネットワークの各ノードの内部状態量を持つ力学系近似モデル６−１のパラメータに適当な値が初期値として付与される。ここで、ダイナミクス記憶ネットワークのノードが有する力学系近似モデル６−１が、例えば、RNNである場合には、ステップ７−１では、そのRNNのユニットに入力される信号に与えられる重み（結合荷重）等を、力学系近似モデル６−１のパラメータとして、そのパラメータに適当な初期値がセットされる。
【００９３】
次に、信号入力部１−２に観測信号１−１が一つ入力されると、特徴抽出部１−３において、その観測信号１−１の特徴量が時系列に抽出され、時系列データとして学習部１−４に送られる（ステップ７−２）。学習部１−４では、特徴抽出部１−３から送られてきた時系列データを入力データとして、その入力データに対して、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークに含まれる各ノードに対応する（各ノードが有する）内部状態量を持つ力学系近似モデル６−１とのスコア計算が、内部状態量を更新しながら行われる（ステップ７−３）。
【００９４】
ここで、内部状態量を持つ力学系近似モデル６−１が、例えば、RNNで与えられる場合には、入力に対して得られるべき出力の真値と、その入力に対してRNNが出力する出力値との誤差である出力誤差（予測誤差）がスコアとして利用される。出力誤差（の計算方法）には、一般的に平均二乗誤差が用いられる。但し、出力誤差は、平均二乗誤差に限定されるものではない。スコア計算の結果、各ノードにつき、ノードが入力データに適合する度合いを表すスコアが付与される。
【００９５】
また、力学系近似モデル６−１が、例えば、RNNで与えられる場合には、所定の値を基準として、その所定の値を変えていく（更新していく）ことにより得られる値のうちの、スコアを最も良くする値が、内部状態量としてのRNNのコンテキストの初期値に決定され、コンテキストを初期値から更新しながら、スコアの計算が行われる。
【００９６】
なお、コンテキストの初期値の決定に用いる所定の値としては、例えば、ランダムな値や、前回のRNNの学習時に求められた、コンテキストの最終的な更新値（以下、適宜、前回更新値という）などを採用することができる。
【００９７】
例えば、今回の学習時に用いられる入力データと、前回の学習時に用いられた入力データとが、何らの関係もないことが分かっている場合には、コンテキストの初期値の決定に用いる所定の値としては、ランダムな値を採用することができる。
【００９８】
また、例えば、今回の学習時に用いられる入力データと、前回の学習時に用いられた入力データとが、連続する時系列データなどのように、何らかの関係を有することが分かっている場合には、コンテキストの初期値の決定に用いる所定の値としては、前回更新値を採用することができる。なお、前回更新値を、コンテキストの初期値の決定に用いる所定の値として採用する場合には、前回更新値を、そのまま、コンテキストの初期値に決定することができる。
【００９９】
ここで、スコアが良い、あるいは、スコアが高いとは、スコアが距離や誤差等であれば、スコアの値が小さいことを意味し、スコアが確率であれば、スコアの値が大きいことを意味する。
【０１００】
学習部１−４は、ダイナミクス記憶部ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノード、すなわち、入力データに最も適合するノードである勝者ノードを決定する（ステップ７−４）。
【０１０１】
さらに、学習部１−４では、勝者ノードを中心として各ノードの学習の重みが決定される（ステップ７−５）。
【０１０２】
そして、学習部１−４では、各ノードの内部状態量を持つ力学系近似モデル６−１のパラメータの更新が、学習の重みに応じて行われる（ステップ７−６）。
【０１０３】
ここで、勝者ノードのパラメータだけを更新する方法はWTA(winner-take-all)に対応し、勝者ノードの近傍のノードに対してもパラメータの更新を行う方法がSMA(soft-max adaptation)に対応する。学習部１−４は、SMAで、パラメータの更新を行う。
【０１０４】
その後、信号入力部１−２に、次の観測信号１−１が入力されると、再び、ステップ７−２からステップ７−６までの処理が繰り返される。つまり、観測信号１−１が入力されるたびに、ステップ７−２からステップ７−６の処理が繰り返される。
【０１０５】
図８は、ノードのパラメータをSMAで更新するときに用いられる学習の重みを示している。
【０１０６】
図８の左において、ノード８−１乃至８−６は、ダイナミクス記憶ネットワークを構成するノードである。ノード８−１乃至８−６のうちのノード８−１は、勝者ノードであり、ノード８−２乃至８−６は、勝者ノード８−１からの距離が近い順に並べられている。
【０１０７】
図８の右のグラフは、学習の重みと勝者ノードからの距離の関係を示しており、横軸は学習の重みを、縦軸は勝者ノードからの距離を、それぞれ示している。
【０１０８】
図８の右のグラフによれば、勝者ノード８−１に対しては、学習の重みを最も大きくし、他のノード８−２乃至８−６それぞれに対しては、勝者ノード８−１からの距離が離れるにしたがって、学習の重みが小さくなるように学習の重みが決定される。
【０１０９】
勝者ノードからの距離は、ダイナミクス記憶ネットワークのリンクによって与えられる空間上のノードの配置構造に基づいて決定される。例えば、図５に示した、ノード５−２乃至５−１０が２次元の配置構造となるリンクが与えられたダイナミクス記憶ネットワーク５−１において、勝者ノードが、例えばノード５−７であれば、その勝者ノード５−７に隣接するノード５−４、５−６、５−１０が最も近く、ノード５−３、５−５、５−９がその次に近く、ノード５−２と５−８が最も遠いものとなる。この場合、ノードとノードをつなぐ最小のリンク数を距離として利用すると、近い順に距離は１、２、３として与えられることになる。
【０１１０】
図４のようにリンクを与えない場合には、入力データ（ノードのスコアの計算に用いられる時系列データ）に基づき各ノードにおいて計算されたスコアの良い順にノードを順位づけしたときの、その順位が勝者ノードからの距離として利用される。つまり、勝者ノードからスコアが良い順に、０、１、２、３、・・・が距離として与えられる。このような勝者ノードからの距離の与え方は、前述したSOMやNeural-Gas algorithmで利用されている方法と同じである。この勝者ノードからの距離と学習の重みの関係を示したのが次式である。
【０１１１】
【数１】
2007299366.tif 000003
・・・（１）
【０１１２】
αは学習の重み、Ｇは（学習の重みαのうちの）勝者ノードに与える学習の重み、γは減衰係数で０＜γ＜１の範囲の定数、ｄは勝者ノードからの距離、ΔはSMAにおける近傍に対する学習の重みを調整するための変数である。
【０１１３】
式（１）によれば、学習の重みαは、減衰係数γのd/△乗のG倍として求められる。また、式（１）において、減衰係数γは、１未満の正の値であるから、距離dが大になるほど、学習の重みαは小さくなる。
【０１１４】
今、距離ｄに関しては、勝者ノードからの距離が近い順に１、２、３で与えられるとし、勝者ノードに対してはｄ＝０が与えられるとする。この時、例えば、Ｇ＝８、γ＝０．５、Δ＝１とすれば、学習の重みαは、勝者ノードからの距離ｄが離れるにしたがって、８、４、２、１と求まることになる。ここで、変数Δを少しずつ０に近づけていくと、学習の重みαは勝者ノードから離れるにしたがってより小さい値となる。そして、変数Δが０に近くなると、勝者ノード以外のノードの学習重みはほとんど０となり、これはWTAと同様となる。このように、変数Δを調整することで、SMAにおける勝者ノードの近傍に対する学習の重みαを調整することが可能となる。基本的には、変数Δは学習の開始時は大きくし、時間の経過と伴に小さくなるように調整が行われる。
【０１１５】
このような学習の重みαに基づき、勝者ノードのパラメータは入力データの影響を最も強く受け、勝者ノードから離れるにしたがって、その影響が小さくなるように、他のノード（勝者ノード以外のノード）のパラメータの更新が行われる。
【０１１６】
図９は、ノードのパラメータの更新の方法を説明する図である。
【０１１７】
いま、あるノードのパラメータ更新前の内部状態量を持つ力学系近似モデル６−１のパラメータの学習に使われた学習データが学習データ記憶部６−２に格納されているとする。
【０１１８】
ノードのパラメータの更新前の学習データを旧学習データと呼ぶものとする。
【０１１９】
ノードのパラメータの更新は、例えば、そのノードに対して決定された学習の重みαに応じて、入力データ９−３を、旧学習データ９−４に追加し、その結果得られる新学習データを用いて行われる。すなわち、学習の重みαに応じて、入力データ９−３と旧学習データ９−４を足し合わせる（混合する）ことで、新学習データが構成され、この新学習データが学習データ記憶部６−２に記憶される。そして、その新学習データによって、内部状態量を持つ力学系近似モデル６−１のパラメータが更新される。
【０１２０】
なお、パラメータの更新は、例えば、更新前の内部状態量を持つ力学系近似モデル６−１のパラメータを初期値とし、上述したように、BPTT法によって新学習データに基づくパラメータを推定することにより行われる。
【０１２１】
ここで、新学習データを構成する際の、入力データ９−３と旧学習データ９−４とを足し合わせる比率に関して説明する。
【０１２２】
仮に、入力データ９−３と旧学習データ９−４との比率を１：０にすると、新学習データは完全に入力データ９−３だけで構成されることになる。
【０１２３】
一方、入力データ９−３と旧学習データ９−４との比率を０：１にすると、新学習データには入力データ９−３は追加されず、旧学習データ９−４だけで構成されることになる。つまり、入力データ９−３と旧学習データ９−４との比率を変えることで、パラメータに与える入力データ９−３の影響の強さを変えることができる。
【０１２４】
入力データ９−３と旧学習データ９−４との比率を、前に述べた学習の重みαに基づいて適切に調整することによって、入力データの影響を適切にパラメータに与える学習を行うことができる。その調整方法の一つのやり方について説明する。
【０１２５】
まず、ノードが学習データ記憶部６−２に保持できる時系列データの個数を一定とし、その値をＨとする。つまり、Ｈ個の時系列データで内部状態量を持つ力学系近似モデル６−１のパラメータが学習されるものとする。そして、入力データ９−３と旧学習データ９−４との比率を、ノードの学習の重みαに応じて、α：Ｈ−αとなるように調整する。例えば、Ｈ＝１００とすれば、α＝８の場合、入力データ９−３と旧学習データ９−４との比率は、８：９２となるように調整が行われることになる。そして、このような比率で、入力データ９−３と旧学習データ９−４とを足し合わせることで、Ｈ個の新学習データが構成される。
【０１２６】
α：Ｈ−αの比率で、入力データ９−３と旧学習データ９−４とを足し合わせる方法としては、例えば、以下のような方法を採用することができる。
【０１２７】
すなわち、まず、入力データ９−３については、時系列データが一つ与えられるだけなので、これをα倍したデータを追加する。例えば、α＝８の場合、入力データ９−３としての同一の時系列データを８個追加する。
【０１２８】
一方、旧学習データ９−４については、その個数はＨであり、これをＨ−αに調整する必要がある。例えば、上述したように、α＝８の場合、旧学習データ９−４を、１００から９２に減らす必要がある。そこで、学習データ記憶部６−２に記憶された旧学習データ９−４としての１００の時系列データの順番に応じて、最も古いものからα個だけ除去することで、旧学習データ９−４の個数をＨ−α個に調整する。
【０１２９】
以上のようにして個数を調整した入力データ９−３と旧学習データ９−４とを足し合わせて新学習データとすることにより、学習データ記憶部６−２には、常に最新のＨ個の時系列データだけが学習データとして保持される。このように、学習データ（新学習データ）に占める入力データ９−３の割合を学習の重みαによって調整することができる。
【０１３０】
なお、ここで説明した方法以外にも、学習の重みαに応じて入力データ９−３をパラメータに反映させる方法であればどのような方法を用いても良い。重要なのは、新しいデータ（入力データ９−３）が与えられるたびにパラメータを少しずつ修正することと、その際に、学習の重みαに応じて入力データ９−３が学習に与える影響の強さを調整することである。
【０１３１】
また、学習を適切に行うには、学習の重みαを時間の経過とともに適切に調整することが非常に重要であり、本実施の形態では、変数Δによって、学習の重みαを調整する方法を述べたが、基本的には、入力データ９−３の影響を受けるノードが、勝者ノードを中心とする広い範囲のノードから徐々に狭い範囲のノードへになるように、学習の重みαを調整していくことが重要であり、それを実現する方法であれば、どのような方法を用いても良い。
【０１３２】
以上、学習に関する詳細な説明を行った。本実施の形態で述べた学習手法によって、ダイナミクス記憶ネットワークの各ノードのパラメータ（ノードが有する力学系近似モデル６−１のパラメータ）は、学習部１−４に時系列データ（入力データ）が入力されるたびに、自己組織的に更新されることになる。
【０１３３】
［認識について］
次に、図１０を参照して、図１のデータ処理装置によるダイナミクス記憶ネットワークを用いた時系列データの認識の処理について説明する。
【０１３４】
ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークの各ノードは、既に説明したように内部状態量を持つ力学系近似モデル６−１によってダイナミクスを学習する。
【０１３５】
ここで、ダイナミクス記憶ネットワークで学習されるダイナミクスの数は、ダイナミクス記憶ネットワークのノード数と一致することになる。例えば、ノード数が１００の場合は、１００種類のダイナミクスを学習することになる。このダイナミクスに基づき、観測信号１−１に対する認識の処理を行うことが可能となる。
【０１３６】
まず、観測信号１−１が信号入力部１−２へ入力される。観測信号１−１は、信号入力部１−２から特徴抽出部１−３に送られる。特徴抽出部１−３では、観測信号１−１の特徴量が時系列に抽出され、時系列データとして認識部１−６に送られる（ステップ１０−１）。
【０１３７】
認識部１−６は、特徴抽出部１−３からの時系列データに対して、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークの各ノードが保持する内部状態量を持つ力学系近似モデル６−１を用いてのスコア計算を、内部状態量を更新しながら行う（ステップ１０−２）。このスコア計算は、学習時に勝者ノードを決定するために行うスコア計算と同じである。例えば、内部状態量を持つ力学系近似モデル６−１がRNNで与えられる場合には、予測出力（RNNの出力）の平均二乗誤差がスコアとして利用される。
【０１３８】
そして、スコア計算の結果、各ノードにはスコアが付与される。認識部１−６では、このスコアに基づき、最もスコアの良いノード、すなわち勝者ノードが決定される（ステップ１０−３）。
【０１３９】
さらに、認識部１−６では、最もスコアの良いノードに対応するダイナミクス（ノードが有する力学系近似モデル６−１によってモデル化されたダイナミクス（ノードが保持するダイナミクス））が、入力された時系列データ（特徴抽出部１−３から認識部１−６に供給され、認識部１−６においてスコアが計算された時系列データ）に最も適合するダイナミクスとして選択される。そして、認識部１−６は、どのノード（に対応するダイナミクス）が選択されたかという情報、つまり、勝者ノードの情報を認識結果１−７として出力する（１０−４）。以上が、認識部１−６の処理である。
【０１４０】
ここで、例えば、タスク「Ａ」、「Ｂ」、「Ｃ」それぞれのセンサモータ信号を用いたダイナミクス記憶ネットワークの学習と、その結果得られるダイナミクス記憶ネットワークを用いた認識について簡単に説明する。
【０１４１】
なお、センサモータ信号には多様な信号が含まれているものとする。
【０１４２】
センサモータ信号を、タスク「Ａ」、「Ｂ」、「Ｃ」の３種類のセンサモータ信号に分類した場合、同じタスク「Ａ」のセンサモータ信号であっても、速度や振幅の違い、あるいは、初期状態（例えば、ロボットの位置や姿勢）などの違いなどによって、さまざまなバリエーションのタスク「Ａ」のセンサモータ信号が存在する。
【０１４３】
学習部１−４において、タスク「Ａ」、「Ｂ」、「Ｃ」それぞれに分類されるセンサモータ信号のすべてを、タスク「Ａ」、「Ｂ」、「Ｃ」の区別なく用いて、ダイナミクス記憶ネットワークの学習を行うと、ダイナミクス記憶ネットワークでは、そのダイナミクス記憶ネットワークを構成するノードの数だけダイナミクスが学習される。
【０１４４】
つまり、ダイナミクス記憶ネットワークを構成するすべてのノードを用いて、与えられるセンサモータ信号の全体の学習が行われる。したがって、ダイナミクス記憶ネットワークでは、ノードの数が、タスク「Ａ」、「Ｂ」、「Ｃ」の数である３よりも大であれば、複数のノードによって、さまざまなバリエーションのタスク「Ａ」のセンサモータ信号が学習され得る。
【０１４５】
その後、例えば、タスク「Ａ」のあるセンサモータ信号が一つ入力された場合、認識部１−６では、ダイナミクス記憶ネットワークにおいて、入力されたセンサモータ信号に最も適合するノード（勝者ノード）が一つ選択される。つまり、ダイナミクス記憶ネットワークにおいて、タスク「Ａ」に対応するノードが複数あっても、その中で、入力されたセンサモータ信号に最も適合したノードが選択される。
【０１４６】
すなわち、認識部１−６では、入力されたセンサモータ信号が、タスク「Ａ」、「Ｂ」、「Ｃ」の３種類の中のどのセンサモータ信号であったかを決定するわけではなく、ダイナミクス記憶ネットワークの学習によってダイナミクスとして獲得された時系列パターンの中のどれに最も適合するかの決定が行われる。
【０１４７】
以上のように、学習部１−４では、ダイナミクス記憶ネットワークのノードの数に応じた細かさでダイナミクスを分類して学習し、認識部１−６では、その細かさに応じた時系列データの認識が行われる。
【０１４８】
なお、学習された全てのノードに対して、タスク「Ａ」、「Ｂ」、「Ｃ」のラベルを適切に付与すれば、認識部１−６において、入力されたセンサモータ信号が、タスク「Ａ」、「Ｂ」、「Ｃ」のどの種類の信号かを認識することが可能となる。
【０１４９】
［生成について］
次に、図１１を参照して、図１のデータ処理装置によるダイナミクス記憶ネットワークを用いた時系列データの生成の処理について説明する。
【０１５０】
既に説明したように、ダイナミクス記憶ネットワークの各ノードは、内部状態量を持つ力学系近似モデル６−１によってダイナミクスを学習する。
【０１５１】
そして、各ノードの内部状態量を持つ力学系近似モデル６−１から、その力学系近似モデル６−１によってモデル化されたダイナミクスに対応する時系列データ（ダイナミクスとして獲得された時系列パターンの時系列データ）を生成することが可能である。
【０１５２】
内部状態量を持つ力学系近似モデル６−１としてRNNを用いた場合には、所定の内部状態量をRNNに与えることで、そのRNNを有するノードに保持されるダイナミクスから時系列データを生成することが容易にできる。
【０１５３】
具体的には、RNNの入力にある時刻Tの状態ベクトルを与えると、次の時刻T＋１の状態ベクトルが出力される。したがって、この操作を所定の時間ステップ分を行うことで、ダイナミクス記憶ネットワークの各ノードから時系列データを生成することができる。
【０１５４】
図１のデータ処理装置の生成部１−９では、以上のような時系列データの生成の処理が行われる。
【０１５５】
すなわち、まず、どのダイナミクスに対応するノードから時系列データを生成するかを指定する制御信号１−８が生成部１−９に送られる（ステップ１１−１）。
【０１５６】
生成部１−９では、この制御信号１−８に基づき、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークを構成するノードのうちの、時系列データを生成すべきノード（以下、適宜、生成ノードという）が決定される（ステップ１１−２）。
【０１５７】
そして、生成部１−９では、生成ノードが保持する内部状態量を持つ力学系近似モデル６−１のパラメータに基づき、時系列データが、力学系近似モデル６−１の内部状態量を更新しながら生成される（ステップ１１−３）。さらに、生成部１−９では、生成ノードの力学系近似モデル６−１から生成された時系列データが、生成結果１−１０として出力される（ステップ１１−４）。
【０１５８】
ここで、力学系近似モデル６−１が、例えば、RNNである場合、生成部１−９での時系列データの生成時には、内部状態量としてのRNNのコンテキストの初期値として、例えば、ランダムな値が用いられる。また、ある時刻T+1においてRNNの入力層に入力するコンテキスト以外のデータとしては、ランダムな値や、直前の時刻TにおいてRNNの出力層から出力された、コンテキスト以外のデータを採用することができる。
【０１５９】
ダイナミクス記憶ネットワークの学習では、ダイナミクス記憶ネットワークのノード数と一致する数のダイナミクスが学習されるので、生成部１−９では、ダイナミクス記憶ネットワークのノード数に応じた時系列データを生成することが可能となる。
【０１６０】
例えば、前述のタスク「Ａ」、「Ｂ」、「Ｃ」それぞれのセンサモータ信号を区別なく用いて学習されたダイナミクス記憶ネットワークを用いた、時系列データの生成について簡単に説明する。
【０１６１】
上述したように、同じタスク「Ａ」のセンサモータ信号であっても、速度や振幅の違い、あるいは、初期状態（位置、姿勢）などの違いなどによって、さまざまなバリエーションのタスク「Ａ」のセンサモータ信号が存在し、ダイナミクス記憶ネットワークでは、複数のノードによって、さまざまなバリエーションのタスク「Ａ」のセンサモータ信号が学習され得る。
【０１６２】
そして、生成部１−９に与えられる制御信号１−８によって、その中の一つのノードが指定されると、生成部１−９では、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークを構成するノードのうちの、制御信号１−８によって指定されるノードを、生成ノードとして、その生成ノードの保持するダイナミクスに対応した時系列データが生成され、生成結果１−１０として出力される。この時系列データは、さまざまなバリエーションのタスク「Ａ」のセンサモータ信号の中の一つに対応する。
【０１６３】
生成部１−９から出力される生成結果１−１０は、ダイナミクス記憶ネットワークのノードが保持するダイナミクスに対応する時系列データ（特徴抽出部１−３で抽出される特徴量の時系列に相当するデータ）であり、必要に応じて、この時系列データは、例えば、センサモータ信号等の出力信号に変換されるが、この変換（特徴量の時系列から、最終的に得たい出力信号の時系列への変換）についての説明は、省略する。
【０１６４】
上述の時系列データの学習方法と生成方法を用いることで、音声信号、画像信号、モータ信号など、さまざまな信号に対して、いろいろなバリエーションの信号をダイナミクスとしてダイナミクス記憶ネットワークに記憶し、必要に応じて生成することが可能となる。
【０１６５】
［認識生成について］
次に、図１２を参照して、図１のデータ処理装置による時系列データの認識生成の処理について説明する。
【０１６６】
図１２は、図１のデータ処理装置の認識部１−６と生成部１−９の詳細構成例を示している。
【０１６７】
ここで、（時系列データの）認識生成とは、入力された時系列データを認識し、その認識結果に基づいて、新たな時系列データを生成することである。
【０１６８】
認識生成によれば、例えば、人がロボットに呼びかける音声を発した場合に、そのロボットにおいて、その呼びかけに応じた動きをとるためのモータ信号や、その呼びかけに応答する合成音を生成するためのパラメータ信号等が生成される。
【０１６９】
ところで、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークは、内部状態量を持つ力学系近似モデル６−１によってダイナミクスを学習するが、内部状態量を持つ力学系近似モデル６−１を用いて認識生成を行う場合、上述の認識の処理（図１０）と生成の処理（図１１）を逐次的に組み合わせるだけでは、その内部状態量を考慮した認識生成を行うことは困難である。
【０１７０】
そこで、データ処理装置では、内部状態記憶部１−１１において、上述の認識の処理において更新された力学系近似モデル６−１の内部状態量（内部状態）を保持し、その内部状態量を上述の生成の処理において観測信号１−１とともに用いることで、観測信号１−１に応じた生成結果１−１０を出力する認識生成の処理を行う。
【０１７１】
すなわち、認識部１−６（図１２）において、内部状態量更新部１２−１は、内部状態記憶部１−１１から前回更新されて記憶されている内部状態量を読み込む。これにより、力学系近似モデル６−１において、入力となる時系列データに基づいて、内部状態量更新部１２−１が内部状態記憶部１−１１から読み込んだ値を初期値として、内部状態量を更新することが可能となる。
【０１７２】
また、認識部１−６において、スコア計算部１２−２は、学習時に勝者ノードを決定するために行う処理と同じスコア計算、すなわち、入力された時系列データに基づき、ノードが有する力学系近似モデル６−１の内部状態量を更新しながら、スコア計算を行う。スコア計算部１２−２のスコア計算の結果、各ノードにはスコアが付与される。上述したように、内部状態量を持つ力学系近似モデル６−１がRNNで与えられる場合には、予測出力の平均二乗誤差がスコアとして利用される。
【０１７３】
以上のように、認識部１−６では、内部状態量を更新しながら、スコアの計算が行われる。そして、認識部１−６の決定部１２−３では、スコア計算部１２−２で得られるスコアに基づき、最もスコアの良いノード、すなわち勝者ノードが決定される。決定部１２−３では、この最もスコアの良いノード（勝者ノード）に対応するダイナミクスが、入力された時系列データに最も適合するダイナミクスとされる。
【０１７４】
さらに、認識部１−６では、内部状態量更新部１２−１が、勝者ノードが決定されたときの内部状態量の更新値（更新された内部状態量）と、その勝者ノードが決定されたときの内部状態量の初期値とを、内部状態記憶部１−１１に保存する。
【０１７５】
ここで、内部状態記憶部１−１１に記憶された内部状態量の更新値は、認識部１−６での次回のスコア計算に利用される。また、内部状態記憶部１−１１に記憶された内部状態量の初期値は、生成部１−９において、時系列データの生成時に利用される。
【０１７６】
そして、認識部１−６の出力部１２−４が、決定部１２−３においてどのノードが選択されたかという情報を認識結果１−７（図１）として出力する。以上が、認識生成時の認識部１−６の処理（認識の処理）である。
【０１７７】
つづいて、認識生成における生成の処理においては、どのダイナミクスに対応するノードから時系列データを生成するかを指定する制御信号１−８（図１）として、認識部１−６が出力する前述の認識結果１−７が用いられる。
【０１７８】
すなわち、出力部１２−４が出力する認識結果１−７は、制御信号１−８として、生成部１−９の生成ノード決定部１２−５に供給される。そして、生成ノード決定部１２−５では、この制御信号１−８に基づき、時系列データを生成すべきノード（生成ノード）が決定される。つまり、認識部１−６の認識の処理において決定された勝者ノードが生成ノードに決定される。生成部１−９では、認識部１−６の認識の処理において決定された勝者ノードから時系列データが生成される。
【０１７９】
すなわち、生成部１−９では、内部状態読み込み部１２−６が、内部状態記憶部１−１１の記憶値を、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークの生成ノードの力学系近似モデル６−１の内部状態量の初期値として読み込む。
【０１８０】
すなわち、内部状態読み込み部１２−６は、内部状態記憶部１−１１の記憶値のうちの、生成ノードが認識部１−６において勝者ノードに決定されたときの内部状態量の初期値を読み出し、生成ノードの力学系近似モデル６−１の内部状態量の初期値にセットする。
【０１８１】
さらに、生成部１−９では、時系列データ生成部１２−７が、特徴抽出部１−３で抽出された特徴量の時系列データを読み込み、その時系列データと、内部状態読み込み部１２−６によって内部状態量の初期値がセットされた力学系近似モデル６−１に基づき、その内部状態量を更新しながら、時系列データを生成する。時系列データ生成部１２−７で生成された時系列データは、生成部１−９の出力部１２−８から生成結果１−１０（図１）として出力される。
【０１８２】
ここで、ダイナミクス記憶ネットワークで学習されるダイナミクスの数は、ダイナミクス記憶ネットワークのノード数と一致するので、そのノード数に応じた時系列データを認識し、その認識結果に応じて、時系列データを生成することが可能となる。
【０１８３】
次に、図１３乃至図１６を参照して、認識生成の処理について、さらに説明する。
【０１８４】
認識生成の処理では、認識部１−６において、特徴抽出部１−３から供給される時系列データとしての入力データのうちの、ある時刻（サンプル点）T、またはある時刻Tとその時刻Tから過去に遡った幾つかの時刻の入力データが認識され、生成部１−９において、その認識結果に基づき、次の時刻T+1の入力データを予測したデータが、出力データとして生成される。
【０１８５】
すなわち、認識部１−６では、特徴抽出部１−３から供給される入力データに基づいて、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークのノードが有する力学系近似モデル６−１の内部状態量を更新しながら、ダイナミクス記憶ネットワークの各ノードが保持するダイナミクスの中から、入力データに最も適合するダイナミクスに対応するノード（ダイナミクスを保持するノード）である勝者ノードが決定され、その勝者ノードを表す情報が、入力データの認識結果１−７として出力される。
【０１８６】
さらに、認識部１−６は、勝者ノードを決定する処理において得られる力学系近似モデル６−１の内部状態量を、内部状態記憶部１−１１に供給して記憶させる。
【０１８７】
そして、生成部１−９では、認識部１−６が出力する認識結果１−７に基づき、認識部１−６において決定された勝者ノードを、時系列データとしての出力データの生成に用いるノードである生成ノードに決定し、内部状態記憶部１−１１の記憶値に基づいて、生成ノードの内部状態量を決定して、生成ノードの内部状態量を更新しながら、出力データを生成し、生成結果１−１０として出力する。
【０１８８】
すなわち、生成部１−９は、認識部１−６において勝者ノードに決定されたノードを生成ノードに決定し、その生成ノードと、内部状態記憶部１−１１の記憶値、さらには、特徴抽出部１−３から供給される入力データを用いて、出力データを生成する。
【０１８９】
ここで、認識生成の処理の方法としては、例えば、時刻Tの入力データを認識し、その認識結果に基づいて、次の時刻T+1の入力データを予測したデータである出力データを生成する第１の方法と、時刻Tとその時刻Tから過去に遡った幾つかの時刻の入力データを認識し、その認識結果に基づき、次の時刻T+1の入力データを予測したデータである出力データを生成する第２の方法とがある。
【０１９０】
まず、図１３および図１４を参照して、時刻Tの入力データを認識し、その認識結果に基づいて、次の時刻T+1の入力データを予測したデータを、時刻Tの出力データとして生成する第１の方法について説明する。
【０１９１】
なお、図１３および図１４、さらには、図１５および図１６では、ダイナミクス記憶ネットワークのノードが有する力学系近似モデル６−１として、例えば、RNNが用いられていることとする。
【０１９２】
第１の方法では、認識の処理において、入力データに対して、順時間方向の計算のみにより、ダイナミクス記憶ネットワークの各ノードについて、内部状態量としてのRNN のコンテキストを更新しながらスコアを計算して、スコアが最も良いノードを勝者ノードに決定する。そして、生成の処理において、勝者ノードを生成ノードとして、認識の処理の勝者ノードを決定する処理で得られる、最終的なコンテキストの更新値を、生成ノードの内部状態量としてのRNNのコンテキストの初期値として、コンテキストを更新しながら、出力データが生成される。
【０１９３】
すなわち、図１３は、第１の方法で用いられる入力データ、内部状態量としてのコンテキスト、および、第１の方法で生成される出力データの時間変化を示している。
【０１９４】
いま、認識部１−６において、時刻Tの入力データを認識し、生成部１−９において、認識部１−６の認識結果に基づき、時刻Tの出力データとして、時刻T+1の入力データを予測したデータを生成することとすると、認識部１−６は、直前の時刻T-1の入力データの認識の処理の勝者ノードを決定する処理で得られたコンテキストの更新値（図１３において×印で示す値）を、ダイナミクス記憶ネットワークのノードが有するRNNのコンテキストの初期値として、そのコンテキストを初期値から更新しながら（ここでは、１回だけ更新して）、時刻Tの入力データに対するスコアを求める。
【０１９５】
ここで、第１の方法では、RNNのコンテキストの更新は、プロパゲーションと呼ばれる順時間方向の１回の計算に行われる。
【０１９６】
認識部１−６は、ダイナミクス記憶ネットワークのノードすべてについて、スコアを求めると、最もスコアが良いノードを勝者ノードに決定し、各ノードが有するRNNのコンテキストの更新値、すなわち、時刻Tの入力データの認識の処理の勝者ノードを決定する処理で得られた各ノードのコンテキストの更新値（図１３において○印で示す値）を、内部状態記憶部１−１１に供給して記憶させる。
【０１９７】
そして、生成部１−９は、認識部１−６で決定された勝者ノードを生成ノードに決定し、内部状態記憶部１−１１の記憶値、すなわち、時刻Tの入力データの認識の処理の勝者ノードを決定する処理で得られた、勝者ノードのRNNのコンテキストの更新値を、生成ノードが有するRNNのコンテキストの初期値として、時刻Tの入力データを、生成ノードが有するRNNに入力し、コンテキストを初期値から更新しながら（ここでは、１回だけ更新して）、時刻Tの出力データを生成する。
【０１９８】
ここで、内部状態記憶部１−１１の記憶値、すなわち、時刻Tの入力データの認識の処理の勝者ノードを決定する処理で得られたコンテキストの更新値は、上述したように、時刻Tの出力データを生成するときに、生成ノードが有するRNNのコンテキストの初期値として用いられる他、次の時刻T+1の入力データを認識するときに、ダイナミクス記憶ネットワークのノードが有するRNNのコンテキストの初期値として用いられる。
【０１９９】
次に、図１４を参照して、第１の方法による認識生成の処理の流れについて説明する。
【０２００】
観測信号１−１が、信号入力部１−２を介して、特徴抽出部１−３に供給され、特徴抽出部１−３では、観測信号１−１の特徴量が時系列に抽出され、これにより、時系列データである入力データが得られる。
【０２０１】
いま、認識部１−６において、時刻Tの入力データを認識し、生成部１−９において、認識部１−６による時刻Tの入力データの認識結果に基づいて、時刻Tの出力データとして、時刻T+1の入力データを予測したデータを生成することとすると、認識部１−６は、認識対象の時刻Tの入力データと、その直前の時刻T-1の入力データを、特徴抽出部１−３から読み込む（ステップ１４−１）。
【０２０２】
認識部１−６（図１２）において、特徴抽出部１−３から読み込まれた時刻TとT-1の入力データは、内部状態量更新部１２−１に供給される。
【０２０３】
内部状態量更新部１２−１は、時刻TとT-1の入力データが供給されると、認識対象の時刻Tの入力データの直前の時刻T-1の入力データの認識の処理における勝者ノードを決定する処理で得られ、内部状態記憶部１−１１に記憶されたコンテキストの更新値（図１３において×印で示す値）を、内部状態記憶部１−１１から読み出すとともに、ネットワーク記憶部１−５からダイナミクス記憶ネットワークの各ノードが有するRNN（のパラメータ）を読み出し、そのRNNのコンテキストの初期値として、内部状態記憶部１−１１から読み出した値（直前の時刻T-1の入力データの認識の処理における勝者ノードを決定する処理で更新された最終的なコンテキスト（時刻T-1のコンテキスト））をセットする。そして、内部状態量更新部１２−１は、ダイナミクス記憶ネットワークの各ノードが有するRNNを、時刻TとT-1の入力データとともに、スコア計算部１２−２に供給する（ステップ１４−２）。
【０２０４】
スコア計算部１２−２は、内部状態量更新部１２−１から、ダイナミクス記憶ネットワークの各ノードが有するRNNと、時刻TおよびT-1の入力データとが供給されると、認識対象の時刻Tの入力データについての勝者ノードを決定する処理を行う（ステップ１４−３乃至ステップ１４−５）。
【０２０５】
すなわち、スコア計算部１２−２は、内部状態量更新部１２−１から供給されたダイナミクス記憶ネットワークの各ノードが有するRNNに、同じく内部状態量更新部１２−１から供給された時刻T-1の入力データを入力することにより、ダイナミクス記憶ネットワークの各ノードについて、時刻T-1の出力データ、つまり、時刻Tの入力データを予測したデータを求め、その時刻T-1の出力データに基づき、スコアを求める（ステップ１４−３）。
【０２０６】
具体的には、例えば、ダイナミクス記憶ネットワークのノードが有するRNNの出力層が、I+1のユニットを有し、i+1(i=0,1,・・・,I）番目のユニットの、時刻T-1の出力値、すなわち、時刻T-1の次の時刻Tの入力値を予測した値を、X'i,Tと表すとともに、i+1番目のユニットの、時刻T-1の理想的な出力値、すなわち、ここでは、時刻T-1の次の時刻Tの入力データ（ベクトル）のi+1番目のコンポーネントを、Yi,Tと表すこととすると、スコア計算部１２−２は、例えば、式（２）にしたがって、スコアSを求める。なお、式（２）のスコアSは、その値が小であるほど、良いスコアである。後述する式（３）のスコアSも同様である。
【０２０７】
【数２】
2007299366.tif 000004
・・・（２）
【０２０８】
さらに、スコア計算部１２−２は、時刻T-1の出力データを求める際に得られる次の時刻Tのコンテキストによって、ダイナミクス記憶ネットワークの各ノードが有するRNNの内部状態量としてのコンテキストを更新する（ステップ１４−４）。
【０２０９】
すなわち、スコア計算部１２−２が、ダイナミクス記憶ネットワークの各ノードが有するRNNに、時刻T-1の入力データを入力して、時刻T-1の出力データを求める際には、時刻T-1の入力データの他、内部状態量更新部１２−１がステップ１４−２で初期値をセットしたコンテキストが用いられ、時刻T-1の出力データの他に、次の時刻Tのコンテキスト（次の時刻Tに、RNNの入力層のコンテキストユニットに入力されるべきコンテキスト）が求められる。スコア計算部１２−２は、このようにして求められる時刻Tのコンテキストによって、ダイナミクス記憶ネットワークの各ノードが有するRNNの内部状態量としてのコンテキストを更新する。
【０２１０】
その後、決定部１２−３が、ダイナミクス記憶ネットワークのノードのうちの、スコア計算部１２−２がステップ１４−３において求めたスコアSが最も良いノードを、勝者ノードに決定し（ステップ１４−５）、さらに、出力部１２−４が、決定部１２−３で決定された勝者ノードを表す情報を、認識結果１−７として、生成部１−９に供給する。
【０２１１】
また、内部状態量更新部１２−１は、スコア計算部１２−２がステップ１４−４で時刻Tのコンテキストによって更新したRNNの内部状態量としてのコンテキストを、内部状態記憶部１−１１に記憶させ、内部状態記憶部１−１１の記憶内容を更新する（ステップ１４−６）。
【０２１２】
ステップ１４−６で内部状態記憶部１−１１に記憶されたコンテキストは、直後に生成部１−９が行うステップ１４−９で読み出されるとともに、次の時刻T+1の入力データの認識時に認識部１−６が行うステップ１４−２で読み出される。
【０２１３】
ここで、以上のステップ１４−１乃至ステップ１４−６が、認識生成の処理において、認識部１−６が行う認識の処理である。
【０２１４】
一方、生成部１−９（図１２）では、認識部１−６から供給される認識結果１−７に基づき、生成の処理（ステップ１４−７乃至ステップ１４−１０）が行われる。
【０２１５】
すなわち、生成部１−９では、認識部１−６から供給される、時刻Tの入力データの認識結果１−７が受信され、生成ノード決定部１２−５に供給される。
【０２１６】
生成ノード決定部１２−５は、認識結果１−７に基づき、ネットワーク記憶部１−５に記憶されているダイナミクス記憶ネットワークのノードのうちの、認識結果１−７が表すノード、すなわち、時刻Tの入力データの認識結果として得られたスコアSが最も良い勝者ノードを、生成ノードに決定（選択）し、その生成ノードを表す情報を、内部状態読み込み部１２−６に供給する（ステップ１４−７）。
【０２１７】
また、生成部１−９では、時系列データ生成部１２−７が、時刻Tの入力データを、特徴抽出部１−３から読み込む（ステップ１４−８）。
【０２１８】
さらに、生成部１−９では、内部状態読み込み部１２−６が、ステップ１４−７で生成ノード決定部１２−５から供給される情報に基づいて、生成ノードを特定する。
【０２１９】
そして、内部状態読み込み部１２−６は、直前の時刻Tの入力データの認識の処理における勝者ノードを決定する処理で得られ、内部状態記憶部１−１１に記憶されたコンテキストの更新値（図１３において○印で示す値）のうちの、生成ノードについてのコンテキストの更新値を、内部状態記憶部１−１１から読み出すとともに、ネットワーク記憶部１−５からダイナミクス記憶ネットワークの生成ノードが有するRNN（のパラメータ）を読み出し、生成ノードのRNNのコンテキストの初期値として、内部状態記憶部１−１１から読み出した値（直前の時刻Tの入力データの認識の処理における勝者ノードを決定する処理で更新された生成ノード（勝者ノード）の最終的なコンテキスト（時刻Tのコンテキスト））をセットする。その後、内部状態読み込み部１２−６は、生成ノードが有するRNNを、時系列データ生成部１２−７に供給する（ステップ１４−９）。
【０２２０】
時系列データ生成部１２−７は、内部状態読み込み部１２−６から供給された生成ノードが有するRNNに、ステップ１４−８で読み込んだ時刻Tの入力データを入力することにより、時刻Tの出力データ（時刻T+1の入力データを予測したデータ）を求める（ステップ１４−１０）。この時刻Tの出力データは、時系列データ生成部１２−７から出力部１２−８に供給されて出力される。
【０２２１】
なお、時系列データ生成部１２−７において、生成ノードが有するRNNに、ステップ１４−８で読み込んだ時刻Tの入力データを入力することにより、時刻Tの出力データを求める際には、時刻Tの入力データの他、内部状態読み込み部１２−６がステップ１４−９で初期値をセットしたコンテキストが用いられ、時刻Tの出力データの他に、時刻T+1のコンテキストが求められる（生成ノードの内部状態量としてのコンテキストが更新される）。
【０２２２】
次に、図１５および図１６を参照して、時刻Tとその時刻Tから過去に遡った幾つかの時刻の入力データを認識し、その認識結果に基づいて、時刻Tの出力データとして、次の時刻T+1の入力データを予測したデータを生成する第２の方法について説明する。
【０２２３】
第２の方法では、連続する複数の時刻を、認識生成の処理における認識の処理の対象とする対象区間とし、認識の処理において、対象区間の入力データについて得られるスコアを最大化するように（予測誤差を最小化するように）、順時間方向および逆時間方向の繰り返し計算が行われ、これにより、スコアを最大化する、対象区間の開始時刻の１時刻前の時刻のコンテキスト（コンテキストの初期値）と、ダイナミクス記憶ネットワークの各ノードのスコアが求められる。
【０２２４】
すなわち、認識の処理では、スコアを最大化するコンテキストの初期値（以下、適宜、スコア最大化初期値という）が求められるとともに、そのスコア最大化初期値を、コンテキストの初期値として、対象区間の入力データに対する、ダイナミクス記憶ネットワークの各ノードのスコアが、コンテキストを更新しながら求められる。
【０２２５】
そして、認識の処理では、スコアが最も良いノードが勝者ノードに決定される。
【０２２６】
さらに、第２の方法では、生成の処理において、勝者ノードを生成ノードとして、その生成ノードのRNNのコンテキストの初期値に、対象区間の入力データの認識の処理の勝者ノードを決定する処理で得られたスコア最大化初期値をセットし、対象区間の入力データと対象区間の開始時刻の１時刻前の時刻の入力データを入力して、コンテキストを更新しながら、出力データが生成される。
【０２２７】
すなわち、図１５は、第２の方法で用いられる入力データ、内部状態量としてのコンテキスト、および、第２の方法で生成される出力データの時間変化を示している。
【０２２８】
いま、認識生成の処理において、時刻Tの出力データを生成するときに、その時刻TからL（Lは1以上の整数）時刻分だけ過去に遡った時刻T-Lを開始時刻とするとともに、時刻Tを終了時刻とするL+1時刻分の区間が、認識の処理の対象である対象区間とされることとする。
【０２２９】
ここで、時刻Tを終了時刻とするL+1時刻分の対象区間を、以下、適宜、時刻Tの対象区間という。
【０２３０】
認識生成の処理において、時刻Tの対象区間の入力データを認識し、その認識結果に基づいて、時刻Tの出力データを生成する場合には、認識部１−６は、時刻Tの対象区間の開始時刻T-Lの１時刻前の時刻T-L-1のコンテキストを、コンテキストの初期値として、その初期値を変えながら（更新しながら）、ダイナミクス記憶ネットワークの各ノードについて、時刻Tの対象区間の入力データに対するスコアを求める。
【０２３１】
すなわち、これにより、認識部１−６は、ダイナミクス記憶ネットワークの各ノードについて、時刻Tの対象区間の入力データに対するスコアを最大化する（予測誤差を最小化する）コンテキストの初期値（時刻Tの対象区間の開始時刻T-Lの１時刻前の時刻T-L-1のコンテキスト）であるスコア最大化初期値を求める。
【０２３２】
ここで、時刻Tの対象区間の入力データに対して、スコアを最大化するスコア最大化初期値を求める際には、例えば、直前の時刻T-1の対象区間の入力データの認識の処理の勝者ノードを決定する処理で得られた、時刻T-1の対象区間の終了時刻T-L-1のコンテキスト（図１５において×印で示す、時刻T-L-1のコンテキスト）を基準として、ダイナミクス記憶ネットワークのノードが有するRNNのコンテキストの初期値が更新される。
【０２３３】
さらに、RNNのコンテキストの初期値が、ある値Vに更新されると、RNNに、時刻Tの対象区間を１時刻だけ過去にずらした区間の入力データ、すなわち、時刻T-L-1,T-L,・・・,T-2,T-1の入力データが順次入力され、RNNのコンテキストを、初期値Vから更新しながら、時刻Tの対象区間の入力データに対するスコアが求められる。
【０２３４】
そして、例えば、ダイナミクス記憶ネットワークの各ノードについて、そのノードが有するRNNにおいて、所定の閾値以上のスコアが得られると、そのスコアが得られたときのRNNのコンテキストの初期値（図１５において×印で示す、時刻Tの対象区間の開始時刻T-Lの１時刻前の時刻T-L-1のコンテキスト）が、スコア最大化初期値とされる。
【０２３５】
なお、第２の方法において、スコアを最大化するように、RNNのコンテキストの初期値を更新することは、例えば、BPTTアルゴリズムと呼ばれる順時間方向および逆時間方向の計算からなる繰り返し計算により行われる。
【０２３６】
認識部１−６では、ダイナミクス記憶ネットワークの各ノードについて、スコア最大化初期値をコンテキストの初期値として、時刻Tの対象区間の入力データに対するスコアが求められ、ダイナミクス記憶ネットワークのノードのうちの、スコアが最も良いノードが、勝者ノードに決定される。
【０２３７】
また、認識部１−６は、時刻Tの対象区間の入力データの認識の処理の勝者ノードを決定する処理で得られた、ダイナミクス記憶ネットワークの各ノードのコンテキストの初期値（スコア最大化初期値）（図１５において×印で示す、時刻Tの対象区間の開始時刻T-Lの１時刻前の時刻T-L-1のコンテキスト）を、内部状態記憶部１−１１に供給して記憶させる。
【０２３８】
そして、生成部１−９は、認識部１−６で決定された勝者ノードを生成ノードに決定し、内部状態記憶部１−１１の記憶値、すなわち、時刻Tの対象区間の入力データの認識の処理の勝者ノードを決定する処理で得られた、勝者ノードのRNNのコンテキストのスコア最大化初期値を、生成ノードが有するRNNのコンテキストの初期値として、時刻Tの対象区間の終了時刻T-Lの１時刻前の時刻T-L-1の入力データと、時刻Tの対象区間の入力データとを、順次、生成ノードが有するRNNに入力し、コンテキストを更新しながら、時刻Tの出力データを生成する。
【０２３９】
次に、図１６を参照して、第２の方法による認識生成の処理の流れについて説明する。
【０２４０】
観測信号１−１が、信号入力部１−２を介して、特徴抽出部１−３に供給され、特徴抽出部１−３では、観測信号１−１の特徴量が時系列に抽出され、これにより、時系列データである入力データが得られる。
【０２４１】
いま、認識部１−６において、図１５で説明したように、時刻Tの対象区間のL+1時刻分の入力データを認識し、生成部１−９において、認識部１−６による認識結果に基づいて、時刻Tの出力データとして、時刻T+1の入力データを予測したデータを生成することとすると、認識部１−６は、時刻Tの対象区間のL+1時刻分の入力データと、その対象区間の終了時刻T-Lの１時刻前の時刻T-L-1の入力データとの、合計で、L+2時刻分の入力データを、特徴抽出部１−３から読み込む（ステップ１６−１）。
【０２４２】
認識部１−６（図１２）において、特徴抽出部１−３から読み込まれた時刻Tの対象区間の入力データと時刻T-L-1の入力データは、内部状態量更新部１２−１に供給される。
【０２４３】
内部状態量更新部１２−１は、時刻Tの対象区間の入力データと時刻T-L-1の入力データが供給されると、直前の時刻T-1の対象区間の入力データの認識の処理における勝者ノードを決定する処理で得られ、内部状態記憶部１−１１に記憶されたコンテキストの更新値（図１５において×印で示す時刻T-L-1のコンテキスト）を、内部状態記憶部１−１１から読み出すとともに、ネットワーク記憶部１−５からダイナミクス記憶ネットワークの各ノードが有するRNN（のパラメータ）を読み出し、そのRNNのコンテキストの初期値として、内部状態記憶部１−１１から読み出したコンテキストの更新値をセットする。そして、内部状態量更新部１２−１は、ダイナミクス記憶ネットワークの各ノードが有するRNNを、時刻Tの対象区間の入力データおよび時刻T-L-1の入力データとともに、スコア計算部１２−２に供給する（ステップ１６−２）。
【０２４４】
スコア計算部１２−２は、内部状態量更新部１２−１から、ダイナミクス記憶ネットワークの各ノードが有するRNNと、時刻Tの対象区間の入力データおよび時刻T-L-1の入力データとが供給されると、時刻Tの対象区間の入力データに対して勝者ノードを決定する処理を行う（ステップ１６−３乃至ステップ１６−６）。
【０２４５】
すなわち、スコア計算部１２−２は、内部状態量更新部１２−１から供給されたダイナミクス記憶ネットワークの各ノードが有するRNNに、同じく内部状態量更新部１２−１から供給された時刻Tの対象区間の入力データおよび時刻T-L-1の入力データのうちの時刻Tの入力データを除いた入力データ、すなわち、時刻T-L-1,T-L,・・・,T-2,T-1の入力データを順次入力することにより、ダイナミクス記憶ネットワークの各ノードについて、時刻T-L-1,T-L,・・・,T-2,T-1の出力データ（時刻T-L,T-L+1,・・・,T-1,Tの入力データを予測したデータ）をそれぞれ求め、その時刻T-L-1乃至T-1の出力データに基づき、スコアを求める（ステップ１６−３）。
【０２４６】
具体的には、例えば、ダイナミクス記憶ネットワークのノードが有するRNNの出力層が、I+1のユニットを有し、i+1(i=0,1,・・・,I）番目のユニットの、時刻t-1の出力値、すなわち、時刻tの入力値を予測した値を、X'i,tと表すとともに、i+1番目のユニットの、時刻t-1の理想的な出力値、すなわち、ここでは、時刻t-1の次の時刻tの入力データ（ベクトル）のi+1番目のコンポーネントを、Yi,tと表すこととすると、スコア計算部１２−２は、例えば、式（３）にしたがって、スコアSを求める。
【０２４７】
【数３】
2007299366.tif 000005
・・・（３）
【０２４８】
すなわち、スコア計算部１２−２は、ダイナミクス記憶ネットワークのあるノードを、注目ノードとして、その注目ノードが有するRNNに、時刻T-L-1の入力データを入力して、時刻T-L-1の出力データを求める。注目ノードについて、時刻T-L-1の出力データが求められる際、時刻T-L-1の入力データの他、内部状態量更新部１２−１が直前のステップ１６−２で内部状態記憶部１−１１から読み出したコンテキストの更新値、または、直前に行われた後述するステップ１６−４で求められた、コンテキストの初期値の更新値が、コンテキストの初期値として用いられ、時刻T-L-1の出力データと、次の時刻T-Lのコンテキスト（次の時刻T-Lに、入力層のコンテキストユニットに入力されるべきコンテキスト）が求められる。
【０２４９】
そして、スコア計算部１２−２は、その時刻T-Lのコンテキストによって、注目ノードが有するRNNのコンテキストを更新し、さらに、そのRNNに、時刻T-Lの入力データを入力して、時刻T-Lの出力データと、時刻T-L+1のコンテキストを求める。
【０２５０】
以下、同様に、スコア計算部１２−２は、時刻tの入力データをRNNに入力するときに、その１時刻前の時刻t-1で求められた時刻tのコンテキストによって、RNNのコンテキストを更新して、時刻tの出力データと、時刻t+1のコンテキストを求めていき、最終的には、時刻T-1の出力データと、時刻Tのコンテキストを求める。
【０２５１】
そして、スコア計算部１２−２は、時刻T-L乃至Tの入力データYi,T-L乃至Yi,Tと、時刻T-L-1乃至T-1の出力データ、すなわち、時刻T-L乃至Tの入力データを予測したデータX'i,T-L乃至X'i,Tとを用いて、式（３）を計算することにより、注目ノードについてのスコアSを求める。
【０２５２】
スコア計算部１２−２は、ダイナミクス記憶ネットワークのすべてのノードを、順次、注目ノードとして、スコアSを求めると、ダイナミクス記憶ネットワークの各ノードの内部状態量の初期値を、例えば、式（４）および式（５）にしたがって更新する（ステップ１６−４）。
【０２５３】
【数４】
2007299366.tif 000006
・・・（４）
【０２５４】
【数５】
2007299366.tif 000007
・・・（５）
【０２５５】
ここで、△C0,j(n)は、RNNの入力層のコンテキストが入力されるユニット（コンテキストユニット）のうちのj番目のコンテキストユニットに入力されるコンテキストの初期値を更新する、BPTTアルゴリズムによる繰り返し計算のnステップ目（n回目）において得られる、コンテキストの初期値の変更量（更新量）を表す。
【０２５６】
また、δ0,jは、BPTTアルゴリズムにより求められる、j番目のコンテキストユニットに入力されるコンテキストの初期値に関する誤差量を表す。ηは、学習係数と呼ばれる係数であり、αは、慣性係数と呼ばれる係数である。
【０２５７】
さらに、C0,j(n)は、j番目のコンテキストユニットに入力されるコンテキストの初期値の、BPTTアルゴリズムによる繰り返し計算のnステップ目において得られる更新値を表す。
【０２５８】
式（４）および式（５）によれば、コンテキストの初期値の、n+1ステップ目の更新値C0,j(n+1)は、式（４）によりn+1ステップ目の変更量△C0,j(n+1)を求め、前回のnステップ目の更新値C0,j(n)を、n+1ステップ目の変更量△C0,j(n+1)を加算して更新することにより求められる。
【０２５９】
スコア計算部１２−２は、ダイナミクス記憶ネットワークの各ノードの内部状態量としてのRNNのコンテキストの初期値を、式（４）および式（５）にしたがって更新すると、直前のステップ１６−３で、ダイナミクス記憶ネットワークの各ノードについて得られたスコアが、所定の閾値としての閾値スコアよりも良いかどうかをどうかを判定する（ステップ１６−５）。
【０２６０】
そして、直前のステップ１６−３で、ダイナミクス記憶ネットワークの各ノードについて得られたスコアが、所定の閾値としての閾値スコアよりも良くない場合、ステップ１６−３に戻り、スコア計算部１２−２は、直前に行われたステップ１６−４で求められた、コンテキストの初期値の更新値を、各ノードのコンテキストの初期値として用い、式（３）にしたがって、スコアSを求め、以下、同様の処理が繰り返される。
【０２６１】
一方、直前のステップ１６−３で、ダイナミクス記憶ネットワークの各ノードについて得られたスコアが、所定の閾値としての閾値スコアよりも良い場合、決定部１２−３は、ダイナミクス記憶ネットワークのノードのうちの、スコア計算部１２−２が直前に行ったステップ１６−３において求められたスコアSが最も良いノードを、勝者ノードに決定し（ステップ１６−６）、さらに、出力部１２−４が、決定部１２−３で決定された勝者ノードを表す情報を、認識結果１−７として、生成部１−９に供給する。
【０２６２】
また、内部状態量更新部１２−１は、ダイナミクス記憶ネットワークの各ノードについて、時刻Tの対象区間の入力データの認識の処理における勝者ノードを決定する処理（ステップ１６−３乃至ステップ１６−６）で得られた、スコアを閾値スコアよりも良いスコアとする内部状態量の初期値としてのコンテキストの初期値（図１５において×印で示す時刻T-L-1のコンテキスト）を、スコア最大化初期値として、内部状態記憶部１−１１に記憶させるとともに、そのスコア最大化初期値を、コンテキストの初期値（ここでは、時刻T-L-1のコンテキスト）として求められる、次の時刻のコンテキスト、すなわち、時刻Tの対象区間の開始時刻T-Lのコンテキストを、コンテキストの更新値として、内部状態記憶部１−１１に記憶させることにより、内部状態記憶部１−１１の記憶内容を更新する（ステップ１６−７）。
【０２６３】
ステップ１６−６で内部状態記憶部１−１１に記憶されたスコア最大化初期値としての時刻T-L-1のコンテキストは、直後に生成部１−９が行うステップ１６−１０で読み出され、時刻Tの出力データの生成に用いられる。
【０２６４】
また、ステップ１６−６で内部状態記憶部１−１１に記憶されたコンテキストの更新値（スコアを閾値スコアよりも良いスコアとするコンテキストの初期値が得られたときの、時刻Tの対象区間の開始時刻T-Lのコンテキスト）は、次の時刻T+1の対象区間の入力データの認識時に認識部１−６が行うステップ１６−２で読み出され、コンテキストの初期値の基準、すなわち、例えば、式（５）のC0,j(0)として用いられる。
【０２６５】
ここで、以上のステップ１６−１乃至ステップ１６−７が、認識生成の処理において、認識部１−６が行う認識の処理である。
【０２６６】
なお、上述の場合には、ステップ１６−３で、ダイナミクス記憶ネットワークの各ノードについて得られたスコアが閾値スコアよりも良くなるまで、スコアの計算（ステップ１６−３）と、コンテキストの初期値の更新（ステップ１６−４）とを繰り返すようにしたが、スコアの計算（ステップ１６−３）と、コンテキストの初期値の更新（ステップ１６−４）とは、その他、例えば、あらかじめ定められた規定回数だけ繰り返すこと、あるいは、ダイナミクス記憶ネットワークの各ノードについて得られたスコアが閾値スコアよりも良くなるか、または、あらかじめ定められた規定回数まで繰り返すことが可能である。
【０２６７】
生成部１−９（図１２）では、認識部１−６から供給される認識結果１−７に基づき、生成の処理（ステップ１６−８乃至ステップ１６−１１）が行われる。
【０２６８】
すなわち、生成部１−９では、認識部１−６から供給される、時刻Tの対象区間の入力データの認識結果１−７が受信され、生成ノード決定部１２−５に供給される。
【０２６９】
生成ノード決定部１２−５は、認識結果１−７に基づき、ネットワーク記憶部１−５に記憶されているダイナミクス記憶ネットワークのノードのうちの、認識結果１−７が表すノード、すなわち、時刻Tの対象区間の入力データに対してスコアSが最も良い勝者ノードを、生成ノードに決定し、その生成ノードを表す情報を、内部状態読み込み部１２−６に供給する（ステップ１６−８）。
【０２７０】
また、生成部１−９では、時系列データ生成部１２−７が、時刻Tの対象区間のL+1時刻分の入力データと、その対象区間の終了時刻T-Lの１時刻前の時刻T-L-1の入力データとの、合計で、L+2時刻分の入力データを、特徴抽出部１−３から読み込む（ステップ１６−９）。
【０２７１】
さらに、生成部１−９では、内部状態読み込み部１２−６が、ステップ１６−８で生成ノード決定部１２−５から供給される情報に基づいて、生成ノードを認識する。
【０２７２】
そして、内部状態読み込み部１２−６は、直前の時刻Tの対象区間の入力データの認識の処理における勝者ノードを決定する処理で得られ、内部状態記憶部１−１１に記憶されたコンテキストの初期値の更新値（図１５において×印で示す値）のうちの、生成ノードについてのコンテキストの初期値の更新値を、内部状態記憶部１−１１から読み出すとともに、ネットワーク記憶部１−５からダイナミクス記憶ネットワークの生成ノードが有するRNN（のパラメータ）を読み出し、生成ノードのRNNのコンテキストの初期値として、内部状態記憶部１−１１から読み出したコンテキストの初期値の更新値（直前の時刻Tの対象区間の入力データの認識の処理における勝者ノードを決定する処理で求められた、スコアを閾値スコアよりも良くする生成ノード（勝者ノード）のコンテキストの初期値）をセットする。その後、内部状態読み込み部１２−６は、生成ノードが有するRNNを、時系列データ生成部１２−７に供給する（ステップ１６−１０）。
【０２７３】
時系列データ生成部１２−７は、内部状態読み込み部１２−６から供給された生成ノードが有するRNNに、ステップ１６−９で読み込んだ時刻T-L-1の入力データおよび時刻Tの対象区間の入力データを、順次入力することにより、時刻Tの出力データ（時刻T+1の入力データを予測したデータ）を求める（ステップ１６−１１）。
【０２７４】
すなわち、時系列データ生成部１２−７は、内部状態読み込み部１２−６から供給された生成ノードが有するRNNに、時刻T-L-1の入力データを入力して、時刻T-L-1の出力データを求める。生成ノードについて、時刻T-L-1の出力データが求められる際、時刻T-L-1の入力データの他、直前のステップ１６−１０で内部状態記憶部１−１１から読み出した時刻T-L-1のコンテキスト（コンテキストの初期値の更新値）が用いられ、時刻T-L-1の出力データが求められるとともに、時刻T-Lのコンテキスト（時刻T-Lに、入力層のコンテキストユニットに入力されるべきコンテキスト）が求められる。
【０２７５】
そして、時系列データ生成部１２−７は、時刻T-Lのコンテキストによって、生成ノードが有するRNNのコンテキストを更新し、さらに、そのRNNに、時刻T-Lの入力データを入力して、時刻T-Lの出力データと、時刻T-L+1のコンテキストを求める。
【０２７６】
以下、同様に、時系列データ生成部１２−７は、時刻tの入力データをRNNに入力するときに、その１時刻前の時刻t-1で求められた時刻tのコンテキストによって、RNNのコンテキストを更新して、時刻tの出力データと、時刻t+1のコンテキストを求めていき、最終的には、時刻Tの出力データと、時刻T+1のコンテキストを求める。
【０２７７】
この時刻Tの出力データ、すなわち、時刻T+1の入力データを予測したデータは、時系列データ生成部１２−７から出力部１２−８に供給されて出力される。
【０２７８】
なお、図１３乃至図１６では、時刻Tの入力データ、または時刻Tの対象区間の入力データを認識し、その認識結果に基づいて、時刻Tの１時刻の出力データだけを生成するようにしたが、時刻Tの入力データ、または時刻Tの対象区間の入力データの認識結果に基づき、時刻T以降の複数の時刻の出力データを生成することが可能である。
【０２７９】
すなわち、上述したように、時刻Tの出力データと、時刻T+1のコンテキストを求めた後、その時刻T+1のコンテキストによって、RNNのコンテキストを更新するとともに、時刻Tの出力データを、時刻T+1の入力データとして、RNNに与えることを、順次繰り返すことにより、時刻T以降の複数の時刻の出力データを生成することが可能である。
【０２８０】
また、図１４および図１５（第２の方法）では、ステップ１６−７において、ダイナミクス記憶ネットワークの各ノードについて、時刻Tの対象区間の入力データの認識の処理における勝者ノードを決定する処理（ステップ１６−３乃至ステップ１６−６）で得られた、スコアを閾値スコアよりも良いスコアとする内部状態量の初期値としてのコンテキストの初期値（図１５において×印で示す時刻T-L-1のコンテキスト）を、スコア最大化初期値として、内部状態記憶部１−１１に記憶させるとともに、そのスコア最大化初期値を、コンテキストの初期値（ここでは、時刻T-L-1のコンテキスト）として求められる、次の時刻のコンテキスト、すなわち、時刻Tの対象区間の開始時刻T-Lのコンテキストを、コンテキストの更新値として、内部状態記憶部１−１１に記憶させるようにしたが、つまり、スコア最大化初期値としての時刻T-L-1のコンテキストと、そのスコア最大化初期値をコンテキストの初期値として求められる、コンテキストの更新値としての次の時刻T-Lのコンテキストとを、内部状態記憶部１−１１に記憶させるようにしたが、内部状態記憶部１−１１には、スコア最大化初期値としての時刻T-L-1のコンテキストと、コンテキストの更新値としての次の時刻T-Lのコンテキストとのうちの、スコア最大化初期値としての時刻T-L-1のコンテキストだけを記憶させるようにすることが可能である。
【０２８１】
但し、内部状態記憶部１−１１に、スコア最大化初期値としての時刻T-L-1のコンテキストだけを記憶させる場合には、次の時刻T+1の対象区間の入力データの認識時において、内部状態記憶部１−１１に記憶された、スコア最大化初期値としての時刻T-L-1のコンテキストと、時刻T-L-1の入力データとを用いて、コンテキストの更新値としての次の時刻T-Lのコンテキストを求めてから、その時刻T-Lのコンテキストを、コンテキストの初期値の基準として用いる必要がある。
【０２８２】
さらに、図１４および図１５（第２の方法）では、ステップ１６−７において、ダイナミクス記憶ネットワークの各ノードについて、時刻Tの対象区間の入力データの認識の処理における勝者ノードを決定する処理（ステップ１６−３乃至ステップ１６−６）で得られた、スコアを閾値スコアよりも良いスコアとする内部状態量の初期値としてのコンテキストの初期値（図１５において×印で示す時刻T-L-1のコンテキスト）を、スコア最大化初期値として、内部状態記憶部１−１１に記憶させるようにしたが、内部状態記憶部１−１１には、スコア最大化初期値としての時刻T-L-1のコンテキストに代えて、そのスコア最大化初期値をコンテキストの初期値として求められる、コンテキストの更新値としての時刻Tのコンテキストを記憶させるようにすることが可能である。
【０２８３】
この場合、時刻Tの出力データの生成は、内部状態記憶部１−１１に記憶されたコンテキストの更新値としての時刻Tのコンテキストと、時刻Tの入力データとを、生成ノードのRNNに入力することにより行うことができる。
【０２８４】
［実験結果について］
【０２８５】
次に、上述の学習、認識、生成、認識生成の実験を行って得られた実験結果について説明する。
【０２８６】
まず、実験条件について説明する。
【０２８７】
実験では、ロボットのセンサモータ信号としてリズミックな運動パターン４種類に関して、それぞれ２つづつ、合計８個のセンサモータ信号を用意した。ここで、センサモータ信号には、どの種類パターンであるかのラベル（正解ラベル）は付与されない。センサモータ信号の特徴量、すなわち、入力データとしては、ロボットの両腕の関節角度を並べた１２次元のベクトルの５０ステップ（サンプル）（時刻）分の時系列データを利用した。
【０２８８】
ダイナミクス記憶ネットワークのノード数は１６個とし、各ノードの力学系近似モデル６−１として、RNNを採用した。ここで、実験で用いた各RNNは入力ユニット（入力層のユニット）が１２個、出力ユニット（出力層のユニット）が１２個、隠れユニット（入力層と出力層との間の隠れ層のユニット）が４個、コンテキストユニットが２個のRNNである。
【０２８９】
また、ダイナミクス記憶ネットワークの１６個のノードの空間的な配置については、図５のように、横×縦が４×４ノードの２次元状になるように、ノードにリンクを与えた。したがって、学習時には、この２次元状の配置から求められる距離に基づいて、勝者ノードからの距離を決定した。
【０２９０】
また、各ノードの学習データ記憶部６−２（図６）に保持できる時系列データ（学習データ）の個数ＨをＨ＝１００とし、学習の重みαに応じてα：Ｈ−αとなるように時系列データを更新した。ここで、学習の重みαは、式（１）で与え、学習の開始時は、Ｇ＝６、γ＝０．５、Δ＝１に設定し、Δを学習の進行とともに少しずつ０に近づけることで、学習の重みαを調整した。
【０２９１】
時系列データ（学習データ）の更新では、入力データをα個分追加し、追加前のＨ個の時系列データの古いものからα個部削除した。
【０２９２】
ここで、学習の重みαは、式（１）で求まる値の小数を切り上げることで整数化した。また、ダイナミクス記憶ネットワークの学習は、オンライン学習で行い、８個のセンサモータ信号を繰り返し利用して、合計１０００回のセンサモータ信号の入力を行った。
【０２９３】
RNNのパラメータの学習はBPTT法（BPTTアルゴリズム）を適用し、スコア計算には予測出力の最小二乗誤差を適用した。
【０２９４】
図１７と図１８は、それぞれ、４×４の各ノードのRNNに保持されたダイナミクスから生成された１２次元ベクトル（のコンポーネント）の時系列データのグラフである。
【０２９５】
各グラフの横軸は時間ステップを表し、縦軸は関節角度をRNN用に正規化した値を表す。
【０２９６】
また、図１７および図１８において、左からi番目で、上からj番目のグラフは、４×４のノードのうちの、左からi番目で、上からj番目のノードのRNNに保持されたダイナミクスから生成された時系列データを表す。
【０２９７】
学習時に与えた時系列データのデータ長（時間ステップ）が５０ステップであるのに対して、図１７は、学習時より短い２０ステップ分を生成した場合の時系列データを、図１８は、学習時より長い７０ステップ分を生成した場合の時系列データを、それぞれ示している。
【０２９８】
図１７および図１８によれば、各ノードが４種類のリズミックな運動パターンを生成するダイナミクスを適切に学習できるのと同時に、そのダイナミクスの類似したノードがまとまりをもって（図１７および図１８では、時系列データの波形が類似したものを点線で囲んである）、２次元に配置されていることが確認できる。
【０２９９】
また、図１８によれば、各ノードが学習時に与えられた時系列データの時間ステップより長い時系列データを生成できることが確認できる。
【０３００】
図１７および図１８に示した実験結果から、ダイナミクス記憶ネットワークでは、各ノードのRNNが学習時に与えられた時系列データを単に軌道として記憶しているのではなく、その時系列データの持つ周期的なダイナミクスを抽出して学習していること、さらには、そのような学習の結果、学習時に与えられた時系列データの持つ周期的なダイナミクスに従う任意の長さの時系列データを生成できることが確認できる。
【０３０１】
図１９と図２０は、それぞれ、学習時に与えた８個の時系列データを繋いで１個にした時系列データ（太線）と、その時系列データに対して逐次的に認識生成の処理を行い、その認識生成の処理ごとに生成された時系列データ（細線）とを示している。
【０３０２】
各図において、各グラフの横軸は時間ステップを、縦軸は関節角度をRNN用に正規化した値を、それぞれ表す。なお、図１９と図２０では、時系列データとしての１２次元のベクトル（のコンポーネント）のうち６次元分（のコンポーネント）が示されている。
【０３０３】
逐次的な認識生成の処理は、３０ステップ分の時系列データを処理対象（対象区間の入力データ）として、その処理対象となる３０ステップ分の範囲を１ステップずつ逐次ずらして行った。
【０３０４】
この認識生成の処理において、図１９は、外部入力（特徴抽出部１−３で抽出された特徴量の時系列データ）や更新された内部状態量（内部状態記憶部１−１１に記憶された内部状態量の初期値）を考慮せずに生成した時系列データを、図２０は、外部入力や更新された内部状態量を考慮して生成した時系列データを、それぞれ示している。
【０３０５】
図１９と図２０の時系列データは、同じ学習結果のダイナミクス記憶ネットワークを用いて得られたものであるが、内部状態量等を考慮せずに生成された図１９の時系列データに比べて、内部状態量等を考慮して生成された図２０の時系列データの方が、外部入力（認識の対象となった時系列データ）に対して位相的に同期していることが確認できる。
【０３０６】
以上の実験結果から、上述した学習の方法による、正解ラベルを付与しないダイナミクスの教師なし学習が効果的であることが示されたと言える。
【０３０７】
また、上述の認識生成の方法によって、外部入力に対して同期した時系列データの連続的な生成を行うことができることが示されたと言える。
【０３０８】
なお、実験では、学習に利用された時系列データがどの種類のセンサモータ信号に対応するものであったかを示すラベルを利用をしたが、これは評価のためにだけに利用したものであり、学習には、そのラベルは一切利用していない。
【０３０９】
以上のように、図１のデータ処理装置によれば、従来の技術では不十分であった、多数のダイナミクスを学習するために、全体最適化する基準を持つことなく学習するための実用的な処理を行うことができる。
【０３１０】
すなわち、図１のデータ処理装置では、まず、観測される時系列データの力学的な特性を保持するために内部状態量を持つ力学系近似モデルを利用する。さらに、この内部状態量を持つ力学系近似モデルをひとつのノードとするネットワークであるダイナミクス記憶ネットワークを導入し、学習部１−４によって、そのダイナミクス記憶ネットワークのパラメータを自己組織的に学習する。
【０３１１】
ここで、学習部１−４による学習にはSMAに基づくオンライン学習が適用される。また、内部状態量を持つ力学系近似モデルとしては例えばリカレントニューラルネットワーク（RNN）が適用される。この場合、ダイナミクス記憶ネットワークとして、各ノードがRNNによって与えられる大規模ネットワークが構成されることになり、そのパラメータが自己組織的に学習されることになる。
【０３１２】
すなわち、観測される時系列データに正解ラベルを与えることなく、ダイナミクスをモデル化する力学系近似モデルを有するノードで構成された大規模ネットワークであるダイナミクス記憶ネットワークのパラメータを自己組織的に学習することが可能となる。この学習結果を応用することで、時系列データの認識を行うことが可能となる。また、各ノードから時系列データを生成することも可能となる。また、この自己組織的な学習を応用することで、時系列データの分類や解析などを行うことが可能となる。
【０３１３】
［追加学習について］
次に、追加学習について説明する。
【０３１４】
ダイナミクス記憶ネットワークの学習が進行すると、ダイナミクス記憶ネットワークのノードが保持するダイナミクスが、新たな入力データに対して、ほとんど変化しなくなり、ダイナミクス記憶ネットワーク（のノードが保持するダイナミクス）が、いわば収束する。
【０３１５】
すなわち、ダイナミクス記憶ネットワークは、学習において多数の経験を繰り返し積みながら、時間をかけて自己組織的な構造を形成するが、その後は、多少の揺らぎを受けても、その構造を崩さない耐性を有するようになる。
【０３１６】
つまり、ダイナミクス記憶ネットワークでは、十分な数の入力データを与えた学習によって、その十分な数の入力データから、ある範疇のダイナミクスを獲得すると、その後は、その範疇に含まれないダイナミクスの入力データを与えても、各ノードが保持するダイナミクスが、その入力データの影響を受けにくくなるという耐性を有するようになる。
【０３１７】
ここで、ダイナミクス記憶ネットワークが、このような耐性を有するようになるのは、式（１）で学習の重みαを求めるのにあたり、上述したように、学習の進行（時間の経過）とともに、式（１）の変数△を小さくすることによる。
【０３１８】
以上のように、ダイナミクス記憶ネットワークの各ノードが保持するダイナミクスが収束すると、ダイナミクス記憶ネットワークは、それまでの学習で獲得したダイナミクス（以下、適宜、獲得済みダイナミクスという）の範疇に含まれないダイナミクス（以下、適宜、未獲得ダイナミクスともいう）の入力データに対する耐性を有するようになるが、そのトレードオフとして、未獲得ダイナミクスを新たに追加して獲得すること、特に、収束状態のダイナミクス記憶ネットワークの既存の構造を有意味に保ちつつ、未獲得ダイナミクスを新たに獲得する学習（以下、適宜、追加学習という）を行うことは困難となる。
【０３１９】
すなわち、収束状態のダイナミクス記憶ネットワークに、未獲得ダイナミクスを新たに獲得させるには、収束状態のダイナミクス記憶ネットワークの既存のカテゴリ構造を修正する必要があるが、その修正の過程でノードが既に保持しているダイナミクス（獲得済みダイナミクス）を必要以上に破壊してしまい、それまでの学習が無駄になることがある。
【０３２０】
なお、未獲得ダイナミクスが示し得る多様性は非常に広いので、何の手がかりもなしに、このような多様性が広いダイナミクスをいくつも学習することは困難であり、また時間もかかる。
【０３２１】
収束状態のダイナミクス記憶ネットワークにおいて未獲得ダイナミクスを獲得する追加学習として、学習係数を高めて部分的な再学習を強行すること、具体的には、例えば、式（１）の学習の重みαを求めるときの変数△を大きく設定し直して、ダイナミクス記憶ネットワークの、勝者ノードを含む多くのノードが、未獲得ダイナミクスの新たな入力データの影響を受けるように学習を強行することは、収束状態のダイナミクス記憶ネットワークの既存の構造（収束状態のダイナミクス記憶ネットワークが獲得しているダイナミクスや、各ダイナミクスを保持しているノードどうしの位置関係等）を破壊してしまうリスクが大きい。
【０３２２】
そこで、追加学習を行うその他の方法として、新規の経験を受けるたびに、新規データと既存データの両方を同時に使いつつ自己組織的な学習をやり直す方法、つまり、学習に用いた入力データをすべて保存しておき、新たな入力データが与えられるたびに、学習に用いた入力データに、新たな入力データを加えて、自己組織的な学習をやり直す方法がある。
【０３２３】
しかしながら、この方法では、学習に用いた入力データをすべて保存しておき、さらに、新たな入力データが与えられるたびに、最初から学習をやり直す必要があり、現実的ではない。
【０３２４】
そこで、以下では、最初から学習をやり直さずに済み、かつ、収束状態のダイナミクス記憶ネットワークの構造を破壊しない追加学習の方法について説明する。
【０３２５】
図２１は、本発明を適用したデータ処理装置の他の一実施の形態の構成例を示すブロック図である。
【０３２６】
なお、図中、図１のデータ処理装置と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
【０３２７】
図２１のデータ処理装置は、学習部１−４に代えて、学習部２１−４が設けられている他は、図１のデータ処理装置と同様に構成されている。
【０３２８】
但し、図２１のデータ処理装置において、ネットワーク記憶部１−５には、あらかじめ用意された初期学習用ノードと、後から追加されるか、またはあらかじめ用意された追加学習用ノードとの２種類のノードから構成可能なダイナミクス記憶ネットワーク（以下、適宜、追加学習機能付きネットワークという）が記憶されている。
【０３２９】
追加学習機能付きネットワークを構成するノードである初期学習用ノードと追加学習用ノードとは、例えば、同一の構成のノードであり、いずれも、例えば、図６に示したように、RNNなどの内部状態量を持つ力学系近似モデル６−１と、その力学系近似モデル６−１のパラメータを学習するための学習データを記憶しておく学習データ記憶部６−２とで構成される。
【０３３０】
学習部２１−４は、図１の学習部１−４と同様に、特徴抽出部１−３からの時系列データを用いて、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークである追加学習機能付きネットワークの学習（パラメータ更新）を行う。
【０３３１】
但し、学習部２１−４は、特徴抽出部１−３からの時系列データが、追加学習機能付きネットワークの初期学習用ノードが保持するダイナミクスに適合するかどうかを判定する。そして、学習部２１−４は、時系列データが、初期学習用ノードが保持するダイナミクスに適合すると判定した場合に、図１の学習部１−４と同様に、時系列データに基づき、追加学習機能付きネットワークの初期学習用ノードが保持するダイナミクスを自己組織的に更新する学習（以下、適宜、初期学習用ノードの学習という）を行う。
【０３３２】
一方、学習部２１−４は、時系列データが、初期学習用ノードが保持するダイナミクスに適合しないと判定した場合には、時系列データに基づき、追加学習機能付きネットワークの初期学習用ノードではなく、追加学習用ノードが保持するダイナミクスを更新する学習（以下、適宜、追加学習用ノードの学習という）を行う。
【０３３３】
図２２は、追加学習機能付きネットワークの例を示している。
【０３３４】
図２２の追加学習機能付きネットワークは、９個の初期学習用ノードを有し、その９個の初期学習用ノードに対して、横×縦が３×３の２次元的な配置となるように、ノード間にリンクが与えられている点で、図５のダイナミクス記憶ネットワークと一致する。
【０３３５】
但し、図２２の追加学習機能付きネットワークは、図５のダイナミクス記憶ネットワークのノードに相当する初期学習用ノードの他に、追加学習用ノードを有している点で、追加学習用ノードを有していない図５のダイナミクス記憶ネットワークと異なる。
【０３３６】
図２２の追加学習機能付きネットワークは、初期学習用ノードの数と同一の９個の追加学習用ノードを有している。さらに、１つの初期学習用ノードと、１つの追加学習用ノードとが対応付けられている。
【０３３７】
なお、追加学習機能付きネットワークにおいて、初期学習用ノード、および追加学習用ノードの実体は、ネットワーク記憶部１−５の記憶領域の一部である。初期学習用ノードは、あらかじめ用意される（初期学習用ノードとしての記憶領域は、あらかじめ確保される）が、追加学習用ノードは、初期学習用ノードと同様に、あらかじめ用意しておくこともできるし、後から追加する（必要になったときに、追加学習用ノードとしての記憶領域を確保する）こともできる。
【０３３８】
次に、図２２を参照して、図２１のデータ処理装置による追加学習機能付きネットワークの学習の処理について説明する。
【０３３９】
なお、以下、適宜、初期学習用ノードと追加学習用ノードとを、それらを区別する必要がない場合には、単に、ノードという。
【０３４０】
図２１のデータ処理装置では、ステップ２３−１乃至２３−４において、図７のステップ７−１乃至７−４とそれぞれ同様の処理が行われる。
【０３４１】
すなわち、学習部２１−４は、ネットワーク記憶部１−５に記憶されたダイナミクス記憶ネットワークである追加学習機能付きネットワークのすべてのパラメータの初期化を行う（ステップ２３−１）。具体的には、追加学習機能付きネットワークの各ノードの内部状態量を持つ力学系近似モデル６−１のパラメータに適当な値が初期値として付与される。ここで、追加学習機能付きネットワークのノードが有する力学系近似モデル６−１が、例えば、RNNである場合には、ステップ２３−１では、そのRNNのユニットに入力される信号に与えられる重み（結合荷重）等を、力学系近似モデル６−１のパラメータとして、そのパラメータに適当な初期値がセットされる。
【０３４２】
次に、信号入力部１−２に観測信号１−１が一つ入力されると、特徴抽出部１−３において、その観測信号１−１の特徴量が時系列に抽出され、時系列データとして学習部２１−４に送られる（ステップ２３−２）。学習部２１−４では、特徴抽出部１−３から送られてきた時系列データを入力データとして、その入力データに対して、ネットワーク記憶部１−５に記憶された追加学習機能付きネットワークに含まれる各初期学習用ノードに対応する（各初期学習用ノードが有する）内部状態量を持つ力学系近似モデル６−１とのスコア計算が、図７のステップ７−３と同様に、内部状態量を更新しながら行われる（ステップ２３−３）。
【０３４３】
そして、学習部２１−４は、追加学習機能付きネットワークを構成する初期学習用ノードそれぞれのスコアを比較することによって、最もスコアの良い初期学習用ノード、すなわち、入力データに最も適合する初期学習用ノードである勝者ノードを決定する（ステップ７−４）。
【０３４４】
学習部２１−４は、入力データに対する勝者ノードを決定すると、入力データが、初期学習用ノードが保持しているダイナミクスに適合するかどうかを判定する（ステップ２３−５）。
【０３４５】
学習部２１−４は、入力データが、初期学習用ノードが保持するダイナミクスに適合すると判定した場合、図１の学習部１−４と同様に、入力データに基づき、追加学習機能付きネットワークの初期学習用ノードが保持するダイナミクスを自己組織的に更新する初期学習用ノードの学習を行う（ステップ２３−６）。
【０３４６】
一方、学習部２１−４は、入力データが、初期学習用ノードが保持するダイナミクスに適合しないと判定した場合、入力データに基づき、追加学習機能付きネットワークの追加学習用ノードが保持するダイナミクスを更新する追加学習用ノードの学習を行う（ステップ２３−７）。
【０３４７】
ステップ２３−６の初期学習用ノードの学習、またはステップ２３−７の追加学習用ノードの学習の後は、信号入力部１−２に、次の観測信号１−１が入力されると、ステップ２３−２に戻り、再び、ステップ２３−２以降の処理が繰り返される。
【０３４８】
次に、図２４を参照して、図２３のステップ２３−５乃至２３−７の処理のより具体的な処理の第１実施の形態について説明する。
【０３４９】
学習部２１−４は、図２３の２３−４において、初期学習用ノードのうちの、入力データに最も適合するダイナミクスに対応するノードである勝者ノードを決定した後、ステップ２４−１に進み、勝者ノードとなった初期学習用ノードが保持するダイナミクスに対する、入力データの適合の度合いとしてのスコアに基づき、例えば、そのスコアが所定の閾値以上であるかどうかによって、入力データが、勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合するかどうかを判定する。
【０３５０】
ここで、図２３のステップ２３−４では、初期学習用ノードのうちの、入力データに対するスコアが最も良い初期学習用ノードが勝者ノードに決定されるが、追加学習機能付きネットワークの初期学習用ノードのスコアが全体的に悪い（低い）場合に勝者ノードに決定された初期学習用ノードが保持するダイナミクスが、入力データに適合するとは言い難い。
【０３５１】
また、追加学習機能付きネットワークの初期学習用ノードの１つを、注目ノードとして注目すると、学習が開始された直後は、注目ノードは、その後の学習で、どのようなダイナミクスも獲得し得るが、学習がある程度進行すると、注目ノードは、それまでの学習で特定のダイナミクスを獲得するから、その後の学習では、注目ノードに対して、特定のダイナミクスの範疇に含まれないダイナミクスの入力データの影響を与えるべきではない。
【０３５２】
したがって、学習が開始された直後は、入力データに対する注目ノードのスコアが、絶対的な値としては、それほど良くなくても、他の初期学習用ノードのスコアと比較して相対的に良ければ、入力データが注目ノードが保持するダイナミクスに適合していると言うことができるが、学習がある程度進行した後は、入力データに対する注目ノードのスコアが、他の初期学習用ノードのスコアと比較して相対的に良くても、絶対的な値として良くなければ、入力データが注目ノードが保持するダイナミクスに適合しているとは言い難い。
【０３５３】
そこで、学習部２１−４は、固定の閾値ではなく、学習の進行（時間の経過）に応じて増加する所定の閾値を用い、ステップ２４−１において、入力データに対する勝者ノードのスコアが所定の閾値以上であるかどうかによって、入力データが、勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合するかどうかを判定する。
【０３５４】
ここで、入力データが、勝者ノードが保持するダイナミクスに適合するかどうかの判定に用いる所定の閾値を、適合閾値という。適合閾値は、勝者ノードとなり得る初期学習用ノードごとに用意されていることとする。
【０３５５】
ステップ２４−１において、入力データが、勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合すると判定された場合、すなわち、入力データに対する勝者ノードのスコアが、その勝者ノード（となっている初期学習用ノード）の適合閾値以上である場合、ステップ２４−２に進み、学習部２１−４は、勝者ノードの適合閾値を増加することにより更新する。
【０３５６】
その後、学習部２１−４は、ステップ２４−３，２４−４に順次進み、図７のステップ７−５，７−６とそれぞれ同様にして、入力データに基づき、追加学習機能付きネットワークの初期学習用ノードが保持するダイナミクスを自己組織的に更新する初期学習用ノードの学習を行う。
【０３５７】
すなわち、学習部２１−４は、ステップ２４−３において、図７のステップ７−５と同様に、勝者ノードを中心として各初期学習用ノードの学習の重みαを、式（１）にしたがって決定し、ステップ２４−４に進む。
【０３５８】
ステップ２４−４では、学習部２１−４は、図７のステップ７−６と同様に、各初期学習用ノードの内部状態量を持つ力学系近似モデル６−１のパラメータの更新を、学習の重みαに応じて行い、図２３のステップ２３−２に戻る。
【０３５９】
一方、ステップ２４−１において、入力データが、勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合しないと判定された場合、すなわち、入力データに対する勝者ノードのスコアが、その勝者ノードの適合閾値以上でない場合、学習部２１−４は、ステップ２４−５，２４−６に順次進み、初期学習用ノードではなく、追加学習用ノードの学習を行う。
【０３６０】
すなわち、ステップ２４−５において、学習部２１−４は、勝者ノードに基づき、勝者ノードとなっている初期学習用ノードに対応付けられている追加学習用ノードを、追加学習の対象として特定する。
【０３６１】
具体的には、例えば、図２２に示したように、１つの初期学習用ノードと、１つの追加学習用ノードとが対応付けられている場合、勝者ノードとなっている初期学習用ノードに対応付けられている追加学習用ノードが、追加学習の対象として特定される。
【０３６２】
ここで、追加学習の対象として特定された追加学習用ノードを、対象ノードということとすると、対象ノードとなり得る追加学習用ノード（としての記憶領域）は、上述したように、そのすべてを、あらかじめ静的に用意しておいても良いし、実際に追加学習の対象である対象ノードに特定されたときにはじめて動的に生成してもよい。
【０３６３】
学習部２１−４は、ステップ２４−５において、対象ノードを特定すると、ステップ２４−６に進み、対象ノードが保持するダイナミクスを、入力データに近くなるように更新する追加学習用ノードの学習を行う。
【０３６４】
すなわち、学習部２１−４は、例えば、図９で説明したようにして、対象ノードのパラメータを更新する。
【０３６５】
なお、図９で説明したパラメータの更新には、学習の重みαが必要となるが、追加学習用ノードである対象パラメータの更新においては、学習の重みαとして、例えば、１などの固定値が使用される。
【０３６６】
ステップ２４−６において、追加学習用ノードの学習が行われた後は、図２３のステップ２３−２に戻る。
【０３６７】
なお、図２４のステップ２４−１は、図２３のステップ２３−５に相当する。また、図２４のステップ２４−２乃至２４−４は、図２３のステップ２３−６に相当し、図２４のステップ２４−５および２４−６は、図２３のステップ２３−７に相当する。
【０３６８】
次に、図２５を参照して、図２３のステップ２３−５乃至２３−７の処理のより具体的な処理の第２実施の形態について説明する。
【０３６９】
学習部２１−４は、図２３の２３−４において、初期学習用ノードのうちの、入力データに最も適合するダイナミクスに対応するノードである勝者ノードを決定した後、ステップ２５−１に進み、追加学習機能付きネットワークが収束状態になったか否かを判定する。
【０３７０】
ここで、ステップ２５−１において、追加学習機能付きネットワークが収束状態になったか否かは、例えば、学習の開始から、所定の十分な時間が経過したかどうか、つまり、学習の回数（図２３のステップ２３−２で入力データが入力された回数）が、所定の閾値としての十分な回数以上となったか否かによって判定される。
【０３７１】
ステップ２５−１において、追加学習機能付きネットワークが収束状態になっていないと判定された場合、すなわち、学習の回数が、所定の閾値未満である場合、ステップ２５−２をスキップして、ステップ２５−３，２５−４，２５−５に順次進み、それぞれ、図２４のステップ２４−２，２４−３，２４−４と同様の処理が行われる。
【０３７２】
すなわち、学習部２１−４は、ステップ２５−３において、勝者ノードの適合閾値を増加することにより更新し、さらに、ステップ２５−４および２５−５において、入力データに基づき、追加学習機能付きネットワークの初期学習用ノードが保持するダイナミクスを自己組織的に更新する初期学習用ノードの学習を行って、図２３のステップ２３−２に戻る。
【０３７３】
一方、ステップ２５−１において、追加学習機能付きネットワークが収束状態になっていると判定された場合、すなわち、学習の回数が、所定の閾値以上となっている場合、ステップ２５−２に進み、学習部２１−４は、図２４のステップ２４−１と同様にして、勝者ノードとなった初期学習用ノードが保持するダイナミクスに対する、入力データの適合の度合いとしてのスコアに基づき、そのスコアが、勝者ノードの適合閾値以上であるかどうかによって、入力データが、勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合するかどうかを判定する。
【０３７４】
ステップ２５−２において、入力データが、勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合すると判定された場合、すなわち、入力データに対する勝者ノードのスコアが、その勝者ノードの適合閾値以上である場合、ステップ２５−３，２５−４，２５−５に順次進み、上述したように、勝者ノードの適合閾値の更新（ステップ２５−３）と、初期学習用ノードの学習とが行われ（ステップ２５−４および２５−５）、図２３のステップ２３−２に戻る。
【０３７５】
一方、ステップ２５−２において、入力データが、勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合しないと判定された場合、すなわち、入力データに対する勝者ノードのスコアが、その勝者ノードの適合閾値以上でない場合、学習部２１−４は、ステップ２５−６，２５−７に順次進み、それぞれ、図２４のステップ２４−５，２４−６と同様の処理を行う。
【０３７６】
すなわち、ステップ２５−６において、学習部２１−４は、勝者ノードに基づき、勝者ノードとなっている初期学習用ノードに対応付けられている追加学習用ノードを、追加学習の対象の対象ノードとして特定し、ステップ２５−７に進む。
【０３７７】
ステップ２５−７では、学習部２１−４は、対象ノードが保持するダイナミクスを、入力データに近くなるように更新する追加学習用ノードの学習を行い、すなわち、図９で説明したようにして、対象ノードのパラメータを更新し、図２３のステップ２３−２に戻る。
【０３７８】
なお、図２５のステップ２５−１および２５−２は、図２３のステップ２３−５に相当する。また、図２４のステップ２５−３乃至２５−５は、図２３のステップ２３−６に相当し、図２４のステップ２５−６および２５−７は、図２３のステップ２３−７に相当する。
【０３７９】
以上のように、図２１のデータ処理装置では、ダイナミクス記憶ネットワークとして、あらかじめ用意された初期学習用ノードと、後から追加されるか、又はあらかじめ用意された追加学習用ノードとの２種類のノードから構成可能な追加学習機能付きネットワークが採用され、入力データが、初期学習用ノードが保持するダイナミクスに適合するかどうかが判定される。そして、入力データが、初期学習用ノードが保持するダイナミクスに適合すると判定された場合、その入力データに基づき、初期学習用ノードが保持するダイナミクスを自己組織的に更新する初期学習用ノードの学習が行われる。一方、入力データが、初期学習用ノードが保持するダイナミクスに適合しないと判定された場合、その入力データに基づき、追加学習用ノードが保持するダイナミクスを更新する追加学習用ノードの学習が行われる。
【０３８０】
すなわち、入力データが、初期学習用ノードが保持するダイナミクスに適合する場合、つまり、入力データが、追加学習機能付きネットワークを構成する初期学習用ノードが保持するダイナミクスの範疇に含まれるダイナミクス（獲得済みダイナミクス）のデータである場合には、その入力データに基づき、初期学習用ノードが保持するダイナミクスを自己組織的に更新する初期学習用ノードの学習が行われる。
【０３８１】
一方、入力データが、初期学習用ノードが保持するダイナミクスに適合しない場合、つまり、入力データが、追加学習機能付きネットワークを構成する初期学習用ノードが保持するダイナミクスの範疇に含まれないダイナミクス（未獲得ダイナミクス）のデータである場合には、追加学習機能付きネットワークが初期学習用ノードによって既に獲得しているダイナミクスを破壊しないように、初期学習用ノードではなく、追加学習用ノードが保持するダイナミクスを更新する追加学習用ノードの学習が行われる。
【０３８２】
その結果、最初から学習をやり直さずに済み、かつ、収束状態のダイナミクス記憶ネットワーク（追加学習機能付きネットワーク）の構造を破壊しない追加学習を行うことができる。
【０３８３】
次に、入力データが、初期学習用ノードが保持するダイナミクスに適合するか否かは、図２４や図２５で説明したように、勝者ノードとなった初期学習用ノードのスコアと、その初期学習用ノードの適合閾値との大小関係によって判定されるが、適合閾値は、例えば、式（６）にしたがって求めることができる。
【０３８４】
【数６】
2007299366.tif 000008
・・・（６）
【０３８５】
なお、式（６）は、追加学習機能付きネットワークを構成する初期学習用ノードが、図２２に示したような、２次元的な配置構造となるリンクが与えられていることを前提としており、式（６）において、pijは、左からi番目で、上からj番目の位置(i,j)に配置されている初期学習用ノードの適合閾値を表す。
【０３８６】
また、式（６）において、kは適当な定数である。さらに、ηtijは、t回目の学習（t個目の入力データを用いた学習）時において、入力データが位置(i,j)の初期学習用ノードが保持するダイナミクスに適合するということができる、その位置(i,j)の初期学習用ノードのスコアの予測値（スコア予測値）であり、例えば、式（７）で与えられる。
【０３８７】
【数７】
2007299366.tif 000009
・・・（７）
【０３８８】
式（７）によれば、位置(i,j)の初期学習用ノードのスコア予測値ηt+1ijは、初期値η0ijを0として、max(st,ηtij)、またはηtijに更新される。
【０３８９】
すなわち、t回目の学習時に勝者ノードとなった初期学習用ノードについては、そのt回目の学習時に求められたスコアstと、t回目の学習時のスコア予測値ηtijとのうちの大きい方の値max(st,ηtij)が、t+1回目の学習時のスコア予測値ηt+1ijとされる。
【０３９０】
一方、t回目の学習時に勝者ノードとならなかった初期学習用ノードについては、t回目の学習時のスコア予測値ηtijが、そのまま、t+1回目の学習時のスコア予測値ηt+1ijとされる。
【０３９１】
また、スコア予測値は、式（７）の他、例えば、式（８）にしたがって求めることもできる。
【０３９２】
【数８】
2007299366.tif 000010
・・・（８）
【０３９３】
式（８）によれば、位置(i,j)の初期学習用ノードのスコア予測値ηt+1ijは、初期値η0ijを0として、ast+(1-a)ηtij、またはηtijに更新される。
【０３９４】
すなわち、t回目の学習時に勝者ノードとなった初期学習用ノードについては、そのt回目の学習時に求められたスコアstを用いて求められる値ast+(1-a)ηtijが、t+1回目の学習時のスコア予測値ηt+1ijとされる。
【０３９５】
一方、t回目の学習時に勝者ノードとならなかった初期学習用ノードについては、t回目の学習時のスコア予測値ηtijが、そのまま、t+1回目の学習時のスコア予測値ηt+1ijとされる。
【０３９６】
なお、式（８）において、aは、スコア予測値を更新する度合いを制御するパラメータで、式0<a<1を満たす値、例えば、a=0.1などを用いることができる。
【０３９７】
式（６）において、γ(t)は、追加学習機能付きネットワークの学習の程度、つまり、収束状態に対応して調整される係数である。γ(t)は、例えば、基本的には時間tの経過、つまり、学習の回数tに応じて変化し、例えば、式（９）で与えられる。
【０３９８】
【数９】
2007299366.tif 000011
・・・（９）
【０３９９】
式（９）において、t0は、追加学習機能付きネットワークが収束状態になると期待される時刻（学習の回数）であり、βは、適合閾値pijの変化を調整するパラメータである。t0およびβは、式（１）の学習重みαを求めるのに用いられる変数Δなどとともに適切に調整される。
【０４００】
また、式（９）において、expは、ネイピア数 (Napier's constant)eを底とする指数関数を表す。
【０４０１】
なお、式（９）において、βを∞とすれば、γ(t)は、以下の単純閾値関数となる。
【０４０２】
【数１０】
2007299366.tif 000012
・・・（１０）
【０４０３】
すなわち、式（９）において、βを∞とすると、学習の回数tが所定の閾値t0未満であるとき（式t0-t>0を満たすとき）、つまり、追加学習機能付きネットワークが収束状態にないときには、γ(t)=0となり、学習の回数tが所定の閾値t0を越えているとき（式t0-t<0を満たすとき）、つまり、追加学習機能付きネットワークが収束状態になっているときには、γ(t)=1となる。
【０４０４】
なお、上述の場合には、勝者ノードとなった初期学習用ノードのスコアが、その初期学習用ノードの適合閾値以上であるかどうかによって、入力データが、初期学習用ノードが保持するダイナミクスに適合するかどうかを判定する適合判定を行うようにしたが、適合判定は、その他、例えば、勝者ノードとなった初期学習用ノード以外のスコアや、勝者ノードとなった初期学習用ノードの近傍の初期学習用ノード、もしくは追加学習機能付きネットワーク全体の初期学習用ノードのスコアの空間的分布（スコア分布）等を用いて行うことが可能である。
【０４０５】
具体的には、例えば、勝者ノードとなった初期学習用ノードのスコアが、２番目にスコアが高い（良い）初期学習用ノードのスコア、または勝者ノード以外の初期学習用ノードのスコアの平均値もしくは中央値等の、他の初期学習用ノードに基づくスコアと比較してさほど有意に高くない場合は、入力データが、初期学習用ノードが保持するダイナミクスに適合しないと判定し、有意に高い場合には、入力データが、初期学習用ノードが保持するダイナミクスに適合すると判定することができる。
【０４０６】
勝者ノードとなった初期学習用ノードのスコアが、他の初期学習用ノードに基づくスコアと比較して有意に高いかどうかは、勝者ノードとなった初期学習用ノードのスコアと、他の初期学習用ノードに基づくスコアとの差が、所定の閾値以上であるかどうかによって決定される。なお、この所定の閾値としては、上述の適合閾値と同様に、学習の進行（時間の経過）に応じて変化する閾値を採用することができる。
【０４０７】
また、適合判定は、その他、例えば、勝者ノードとなった初期学習用ノードとその近傍の初期学習用ノード、または追加学習機能付きネットワーク全体の初期学習用ノードのスコア分布がガウス分布として近似することができるかどうかの有意性判定を以って行うこともできる。
【０４０８】
この場合、スコア分布が、ガウス分布として近似することができると判定されたときには、入力データが、初期学習用ノードが保持するダイナミクスに適合しないと判定され、スコア分布が、ガウス分布として近似することができないと判定されたときには、入力データが、初期学習用ノードが保持するダイナミクスに適合すると判定される。
【０４０９】
ところで、図２４や図２５で説明したように、追加学習機能付きネットワークの初期学習用ノードが保持するダイナミクスに適合しないと判定された入力データ（のダイナミクス）は、初期学習用ノードではなく、追加学習用ノードで学習されるが、この入力データを学習（追加学習）する追加学習用ノードとしては、入力データに対する勝者ノードとなった初期学習用ノードに対応付けられている追加学習用ノードが採用される。
【０４１０】
上述の図２２に示した追加学習機能付きネットワークでは、１つの初期学習用ノードと、１つの追加学習用ノードとを対応付けるようにしたが、追加学習機能付きネットワークにおいて、初期学習用ノードと追加学習用ノードとを対応付ける対応付けの方法（対応付け方法）は、図２２に示した方法以外の方法を採用することができる。
【０４１１】
そこで、図２６乃至図３１を参照して、初期学習用ノードと追加学習用ノードとの対応付け方法について説明する。
【０４１２】
図２６は、初期学習用ノードと追加学習用ノードとの第１の対応付け方法を示している。
【０４１３】
図２６では、図２２の場合と同様に、１つの初期学習用ノードと、１つの追加学習用ノードとが対応付けられている。
【０４１４】
図２６に示したように、１つの初期学習用ノードと、１つの追加学習用ノードとが対応付けられている場合には、追加学習機能付きネットワークの初期学習用ノードが保持するダイナミクスに適合しないと判定された入力データは、その入力データに対する勝者ノードとなった初期学習用ノードに対応付けられている１つの追加学習用ノードで学習される。
【０４１５】
図２７は、初期学習用ノードと追加学習用ノードとの第２の対応付け方法を示している。
【０４１６】
図２７では、１つの初期学習用ノードと、複数の追加学習用ノードとが対応付けられている。
【０４１７】
図２７に示したように、１つの初期学習用ノードと、複数の追加学習用ノードとが対応付けられている場合には、追加学習機能付きネットワークの初期学習用ノードが保持するダイナミクスに適合しないと判定された入力データは、その入力データに対する勝者ノードとなった初期学習用ノードに対応付けられている複数の追加学習用ノードのうちの、例えば、１つまたは全部で学習される。
【０４１８】
すなわち、入力データを、その入力データに対する勝者ノードとなった初期学習用ノードに対応付けられている複数の追加学習用ノードのうちの１つで学習する場合には、複数の追加学習用ノードの中から、入力データに対する勝者ノードが決定される。
【０４１９】
具体的には、入力データに対して、複数の追加学習用ノードそれぞれのスコアが求められ、そのスコアが最も良い追加学習用ノードが、勝者ノードに決定される。
【０４２０】
そして、その勝者ノードに決定された追加学習用ノードによって、入力データが学習される。なお、追加学習用ノードの学習では、学習の重みαとしては、上述したように、時間の経過（学習の回数）によって変化しない固定値が使用される。
【０４２１】
一方、入力データを、その入力データに対する勝者ノードとなった初期学習用ノードに対応付けられている複数の追加学習用ノードの全部で学習する場合には、学習の重みαとして、時間の経過（学習の回数）によっては変化しないが、スコアによって変化する値が採用される。
【０４２２】
すなわち、勝者ノードとなった初期学習用ノードに対応付けられている複数の追加学習用ノードのうちの、i番目の追加学習用ノードのスコアを、siと表すとともに、そのi番目の追加学習用ノードの学習に用いる学習の重みαを、αiと表すこととすると、i番目の追加学習用ノードの学習の重みαiは、例えば、式（１１）にしたがって求められる。
【０４２３】
【数１１】
2007299366.tif 000013
・・・（１１）
【０４２４】
但し、式（１１）において、α0は、適当な定数である。
【０４２５】
また、式（１１）において、Zは、正規化用の係数（正規化係数）であり、勝者ノードとなった初期学習用ノードに対応付けられている複数の追加学習用ノードの数がN個であるとすると、正規化係数Zは、例えば、式（１２）で表される。
【０４２６】
【数１２】
2007299366.tif 000014
・・・（１２）
【０４２７】
入力データを、その入力データに対する勝者ノードとなった初期学習用ノードに対応付けられている複数の追加学習用ノードの全部で学習する場合には、その複数の追加学習用ノードのそれぞれの学習の重みαとして、同一の固定値を採用することも可能であるが、式（１１）の、スコアによって変化する値αiを採用することにより、追加学習機能付きネットワークの性能の改善が期待される。
【０４２８】
ここで、追加学習用ノードを有しない、初期学習用ノードに相当するノードから構成される、例えば、図５に示したようなダイナミクス記憶ネットワークを、基本ネットワークということとすると、初期学習用ノードに対応付けられている複数の追加学習用ノードに対して、基本ネットワークと同様のリンクを与えることにより、その複数の追加学習用ノードは、基本ネットワークを構成することになる。この場合、図２７の対応付けでは、１つの初期学習用ノードと、１つの基本ネットワークとが対応付けられているとみることができる。
【０４２９】
このように、１つの初期学習用ノードと、１つの基本ネットワークを構成する複数の追加学習用ノードとが対応付けられている場合、その複数の追加学習用ノードの学習としては、基本ネットワークと同一の学習（自己組織的な学習）を行うようにすることができる。
【０４３０】
次に、図２８は、初期学習用ノードと追加学習用ノードとの第３の対応付け方法を示している。
【０４３１】
図２８では、複数の初期学習用ノードと、１つの追加学習用ノードとが対応付けられている。すなわち、図２８では、複数の初期学習用ノードを、１つの初期学習用ノード群として、その１つの初期学習用ノード群と、１つの追加学習用ノードとが対応付けられている。
【０４３２】
１つの初期学習用ノード群と、１つの追加学習用ノードとの対応付けは、ある初期学習用ノード群に属する初期学習用ノードが、他の初期学習用ノード群にも重複して属するように行うこともできるし（図２８上から２番目）、ある初期学習用ノード群に属する初期学習用ノードが、他の初期学習用ノード群には属しないように行うこともできる（図２８上から３番目）。
【０４３３】
１つの初期学習用ノード群を構成する複数の初期学習用ノードと、１つの追加学習用ノードとが対応付けられている場合においては、ある１つの初期学習用ノードに注目すると、その１つの初期学習用ノードには、１、または複数の追加学習用ノードが対応付けられている。
【０４３４】
したがって、複数の初期学習用ノードと、１つの追加学習用ノードとが対応付けられている場合においては、追加学習用ノードの学習は、１つの初期学習用ノードと１つの追加学習用ノードとが対応付けられている場合（図２６）、または１つの初期学習用ノードと複数の追加学習用ノードとが対応付けられている場合（図２７）と同様にして行うことができる。
【０４３５】
なお、１つの初期学習用ノード群を構成する複数の初期学習用ノードと、１つの追加学習用ノードとが対応付けられている場合、つまり、追加学習機能付きネットワークを構成する、トポロジカルに近傍の複数の初期学習用ノードである１つの初期学習用ノード群に対して１つの追加学習用ノードが対応付けられている場合には、１つの初期学習用ノードと１つの追加学習用ノードとが対応付けられている場合（図２６）や、１つの初期学習用ノードと複数の追加学習用ノードとが対応付けられている場合（図２７）に比較して、追加学習用ノードの学習に用いられる入力データが多くなり、追加学習用ノードの学習に用いられる入力データの統計的な性質が安定する。
【０４３６】
また、１つの初期学習用ノード群を構成する複数の初期学習用ノードと、１つの追加学習用ノードとの対応付けを、ある初期学習用ノード群に属する初期学習用ノードが、他の初期学習用ノード群にも重複して属するように行う場合には（図２８上から２番目）、初期学習用ノードどうしのトポロジカルな関係が追加学習用ノードどうしの間に、より反映されやすくなり、その結果、追加学習用ノード間の滑らかな遷移などを考えることができるようになる。すなわち、認識の処理において、ある時刻tの入力データに対して、ある追加学習用ノードが勝者ノードとなった場合に、次の時刻t+1の入力データに対して、例えば、時刻tの勝者ノードに近い位置の追加学習用ノードが勝者ノードとなり、これにより、勝者ノードとなる追加学習用ノードの軌跡として、滑らかに変化する軌跡を得ることができるようになる。
【０４３７】
次に、図２９は、初期学習用ノードと追加学習用ノードとの第４の対応付け方法を示している。
【０４３８】
図２９では、複数の初期学習用ノードと、複数の追加学習用ノードとが対応付けられている。すなわち、図２９では、複数の初期学習用ノードを、１つの初期学習用ノード群とするとともに、複数の追加学習用ノードを、１つの追加学習用ノード群として、１つの初期学習用ノード群と、１つの追加学習用ノード群とが対応付けられている。
【０４３９】
１つの初期学習用ノード群と、１つの追加学習用ノード群との対応付けは、ある初期学習用ノード群に属する初期学習用ノードが、他の初期学習用ノード群にも重複して属するように行うこともできるし、ある追加学習用ノード群に属する追加学習用ノードが、他の追加学習用ノード群にも重複して属するように行うこともできる（図２９上から２番目）。
【０４４０】
また、１つの初期学習用ノード群と、１つの追加学習用ノード群との対応付けは、ある初期学習用ノード群に属する初期学習用ノードが、他の初期学習用ノード群に属せず、かつ、ある追加学習用ノード群に属する追加学習用ノードが、他の追加学習用ノード群に属しないように行うこともできる（図２９上から３番目）。
【０４４１】
１つの初期学習用ノード群を構成する複数の初期学習用ノードと、１つの追加学習用ノード群を構成する複数の追加学習用ノードとが対応付けられている場合においては、ある１つの初期学習用ノードに注目すると、その１つの初期学習用ノードには、複数の追加学習用ノードが対応付けられている。
【０４４２】
したがって、複数の初期学習用ノードと、複数の追加学習用ノードとが対応付けられている場合においては、追加学習用ノードの学習は、１つの初期学習用ノードと複数の追加学習用ノードとが対応付けられている場合（図２７）と同様にして行うことができる。
【０４４３】
なお、１つの初期学習用ノード群と、１つの追加学習用ノード群との対応付けを、ある初期学習用ノード群に属する初期学習用ノードが、他の初期学習用ノード群にも重複して属するように行う場合、または、ある追加学習用ノード群に属する追加学習用ノードが、他の追加学習用ノード群にも重複して属するように行う場合には（図２９上から２番目）、初期学習用ノードどうしのトポロジカルな関係が追加学習用ノードどうしの間に反映されやすくなり、その結果、追加学習用ノード間の滑らかな遷移などを考えることができるようになる。
【０４４４】
また、１つの初期学習用ノード群と、１つの追加学習用ノード群との対応付けを、ある初期学習用ノード群に属する初期学習用ノードが、他の初期学習用ノード群に属せず、かつ、ある追加学習用ノード群に属する追加学習用ノードが、他の追加学習用ノード群に属しないように行う場合には（図２９上から３番目）、追加学習用ノードどうしの間に、特に、トポロジーが存在する必然性はない。但し、追加学習用ノードどうしの間に、基本ネットワークと同様のリンクを与えて、複数の追加学習用ノードによって、基本ネットワークを構成することにより、トポロジーが発生する。
【０４４５】
次に、上述の図２４および図２５では、初期学習用ノードと、追加学習用ノードとを対応付けておき、入力データが、勝者ノードとなった初期学習用ノードに適合しない場合には、その勝者ノードに基づき、その勝者ノードとなった初期学習用ノードに対応付けられている追加学習用ノードを、入力データの学習を行う対象の対象ノードとして特定し、その対象ノードによって、入力データの学習（追加学習）を行うようにしたが、対象ノードの特定は、勝者ノード（となった初期学習用ノード）に基づいて行うのではなく、入力データに対する初期学習用ノードのスコアの分布（スコア分布）に基づいて行うことが可能である。
【０４４６】
すなわち、図３０は、対象ノードの特定を、入力データに対する初期学習用ノードのスコア分布に基づいて行う方法を説明する図である。
【０４４７】
なお、対象ノードの特定に用いるスコア分布は、追加学習機能付きネットワークのすべての初期学習用ノードのスコアの分布であっても良いし、入力データに対する勝者ノードとなった初期学習用ノードと、その初期学習用ノードの近傍にある初期学習用ノードなどの、追加学習機能付きネットワークの一部の初期学習用ノードのスコアの分布であっても良い。
【０４４８】
但し、ここでは、説明を簡単にするため、対象ノードの特定に用いるスコア分布として、追加学習機能付きネットワークのすべての初期学習用ノードのスコアの分布を採用することとする。
【０４４９】
いま、追加学習機能付きネットワークのすべての初期学習用ノードのスコアをコンポーネントとするベクトルを、スコア分布ベクトルということとすると、対象ノードの特定を、入力データに対する初期学習用ノードのスコア分布に基づいて行う場合には、スコア分布ベクトルの空間（スコア分布ベクトル空間）を、幾つかの部分空間に分割しておき、各部分空間と、１以上の追加学習用ノードとを対応付けておく。
【０４５０】
そして、対象ノードの特定にあたっては、図３０に示すように、入力データに対するスコア分布ベクトルが、スコア分布ベクトル空間のいずれの部分空間に属するのかを検出する、スコア分布ベクトルのクラスタリング、つまり、ベクトル量子化が行われ、そのクラスタリング（ベクトル量子化）の結果得られる、スコア分布ベクトルが属する部分空間に対応付けられている追加学習用ノードが、対象ノードとして特定される。
【０４５１】
なお、対象ノードの特定をスコア分布に基づいて行う場合に用いるスコア分布ベクトルは、例えば、主成分分析等によって次元数の小さいベクトルとすることができる。
【０４５２】
また、スコア分布ベクトル空間は、例えば、等間隔に区切ることにより、形状および大きさが同一の部分空間に分割することができる。その他、スコア分布ベクトル空間を、幾つかの部分空間に分割する分割方法としては、例えば、k-means法を採用することができる。
【０４５３】
但し、スコア分布ベクトル空間を、幾つかの部分空間に分割するのに、k-means法を採用する場合には、勝者ノードとなった初期学習用ノードに適合しない入力データを、ある程度の数だけ集め、その入力データに対するスコア分布ベクトルを求めて、そのスコア分布ベクトルを用いて、k-means法によるコードブックの作成（学習）（スコア分布ベクトル空間を部分空間に分割すること）を行う必要がある。
【０４５４】
ここで、追加学習機能付きネットワークを対象とした認識の処理は、基本ネットワークを対象とした場合と同様にして行うことができる。すなわち、追加学習機能付きネットワークを対象とした認識の処理は、初期学習用ノードと追加学習用ノードとを区別せずに、すべて、基本ネットワークのノードと同様に扱うことにより、基本ネットワークを対象とした認識の処理と同様に行うことができる。追加学習機能付きネットワークを対象とした生成の処理、および認識生成の処理も同様である。
【０４５５】
なお、追加学習機能付きネットワークを対象とした認識の処理は、その他、例えば、初期学習用ノードと追加学習用ノードとを区別して、以下のように行うことも可能である。
【０４５６】
すなわち、追加学習機能付きネットワークを対象とした認識の処理では、認識部１−６が、まず、初期学習用ノードと追加学習用ノードとのうちの、初期学習用ノードについてのみ、認識対象の入力データに対するスコアを計算し、そのスコアが最も良い初期学習用ノードを、いわば仮の勝者ノードに決定する。
【０４５７】
さらに、認識部１−６は、図２４のステップ２４−１（図２５のステップ２５−２）と同様にして、仮の勝者ノードとなった初期学習用ノードのスコアに基づき、そのスコアが仮の勝者ノードとなった初期学習用ノードの適合閾値以上であるかどうかによって、認識の対象の入力データが、仮の勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合するかどうかを判定する。
【０４５８】
そして、認識の対象の入力データが、仮の勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合すると判定された場合、すなわち、仮の勝者ノードとなった初期学習用ノードのスコアが、その仮の勝者ノードとなった初期学習用ノードの適合閾値以上である場合、認識１−６は、仮の勝者ノードを、最終的な勝者ノードに決定し、その最終的な勝者ノードを表す情報を、認識の対象の入力データの認識結果とする。
【０４５９】
一方、認識の対象の入力データが、仮の勝者ノードとなった初期学習用ノードが保持するダイナミクスに適合しないと判定された場合、すなわち、仮の勝者ノードとなった初期学習用ノードのスコアが、その仮の勝者ノードとなった初期学習用ノードの適合閾値以上でない場合、認識１−６は、仮の勝者ノードとなった初期学習用ノードに対応付けられている追加学習用ノードを、最終的な勝者ノードに決定し、その最終的な勝者ノードを表す情報を、認識の対象の入力データの認識結果とする。
【０４６０】
なお、仮の勝者ノードとなった初期学習用ノードに対して、複数の追加学習用ノードが対応付けられている場合には、例えば、その複数の追加学習用ノードのうちの、認識の対象の入力データに対するスコアが最も良い１つの追加学習用ノードが、最終的な勝者ノードに決定される。
【０４６１】
認識生成の処理のうちの認識の処理も、同様にして行うことができる。
【０４６２】
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【０４６３】
そこで、図３１は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【０４６４】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク１０５やＲＯＭ１０３に予め記録しておくことができる。
【０４６５】
あるいはまた、プログラムは、フレキシブルディスク、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以外の、例えば、リカレント型でないニューラルネットワークや、SVR (Support Vector Regression)（サポートベクタ回帰）等を利用した学習器などの、時系列データを学習する学習器で構成することができる。
【０４７１】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０４７２】
【図１】本発明を適用したデータ処理装置の一実施の形態の構成例を示すブロック図である。
【図２】教師あり学習を説明する図である。
【図３】学習部１−４による学習を説明する図である。
【図４】ダイナミクス記憶ネットワークの例を示す図である。
【図５】ダイナミクス記憶ネットワークの他の例を示す図である。
【図６】ダイナミクス記憶ネットワークのノードを説明する図である。
【図７】学習の処理の流れを説明するフローチャートである。
【図８】勝者ノードからの距離と、学習の重みとの関係を示す図である。
【図９】学習データの更新の方法を説明する図である。
【図１０】認識の処理の流れを説明するフローチャートである。
【図１１】生成の処理の流れを説明するフローチャートである。
【図１２】内部状態量を考慮した認識生成の処理を行う場合の認識部１−６と生成部１−９の構成例を示すブロック図である。
【図１３】入力データ、内部状態量、および出力データを示す図である。
【図１４】認識生成の処理の流れを説明するフローチャートである。
【図１５】入力データ、内部状態量、および出力データを示す図である。
【図１６】認識生成の処理の流れを説明するフローチャートである。
【図１７】ノードごとに生成される２０ステップ分の時系列データを調べた実験結果を示す図である。
【図１８】ノードごとに生成される７０ステップ分の時系列データを調べた実験結果を示す図である。
【図１９】ノードの内部状態量と外部入力を考慮せずに、連続的な入力に対して認識生成された時系列データの実験結果を示す図である。
【図２０】ノードの内部状態量と外部入力を考慮して、連続的な入力に対して認識生成された時系列データの実験結果を示す図である。
【図２１】本発明を適用したデータ処理装置の他の一実施の形態の構成例を示すブロック図である。
【図２２】追加学習機能付きネットワークの例を示す図である。
【図２３】追加学習機能付きネットワークを対象とした学習の処理の流れを説明するフローチャートである。
【図２４】図２３のステップ２３−５乃至２３−７の処理のより具体的な処理の第１実施の形態を説明するフローチャートである。
【図２５】図２３のステップ２３−５乃至２３−７の処理のより具体的な処理の第２実施の形態を説明するフローチャートである。
【図２６】初期学習用ノードと追加学習用ノードとの第１の対応付け方法を示す図である。
【図２７】初期学習用ノードと追加学習用ノードとの第２の対応付け方法を示す図である。
【図２８】初期学習用ノードと追加学習用ノードとの第３の対応付け方法を示す図である。
【図２９】初期学習用ノードと追加学習用ノードとの第４の対応付け方法を示す図である。
【図３０】初期学習用ノードと追加学習用ノードとの第５の対応付け方法を示す図である。
【図３１】本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【符号の説明】
【０４７３】
１−２  信号入力部，  １−３  特徴抽出部，  １−４  学習部，  １−５  ネットワーク記憶部，  １−６  認識部，  １−９  生成部，  １−１１  内部状態記憶部，  １２−１  内部状態量更新部，  １２−２  スコア計算部，  １２−３  決定部，  １２−４  出力部，  １２−５  生成ノード決定部，  １２−６  内部状態読み込み部，  １２−７  時系列データ生成部，  １２−８  出力部，  ２１−４  学習部，  １０１  バス，  １０２  CPU，  １０３  ROM，  １０４  RAM，  １０５  ハードディスク，  １０６  出力部，  １０７  入力部，  １０８  通信部，  １０９  ドライブ，  １１０  入出力インタフェース，  １１１  リムーバブル記録媒体
【図１】
2007299366.tif 000015
【図２】
2007299366.tif 000016
【図３】
2007299366.tif 000017
【図４】
2007299366.tif 000018
【図５】
2007299366.tif 000019
【図６】
2007299366.tif 000020
【図７】
2007299366.tif 000021
【図８】
2007299366.tif 000022
【図９】
2007299366.tif 000023
【図１０】
2007299366.tif 000024
【図１１】
2007299366.tif 000025
【図１２】
2007299366.tif 000026
【図１３】
2007299366.tif 000027
【図１４】
2007299366.tif 000028
【図１５】
2007299366.tif 000029
【図１６】
2007299366.tif 000030
【図１７】
2007299366.tif 000031
【図１８】
2007299366.tif 000032
【図１９】
2007299366.tif 000033
【図２０】
2007299366.tif 000034
【図２１】
2007299366.tif 000035
【図２２】
2007299366.tif 000036
【図２３】
2007299366.tif 000037
【図２４】
2007299366.tif 000038
【図２５】
2007299366.tif 000039
【図２６】
2007299366.tif 000040
【図２７】
2007299366.tif 000041
【図２８】
2007299366.tif 000042
【図２９】
2007299366.tif 000043
【図３０】
2007299366.tif 000044
【図３１】
2007299366.tif 000045