JP2009053782A - データ処理装置、データ処理方法、及びプログラム - Google Patents
データ処理装置、データ処理方法、及びプログラム Download PDFInfo
- Publication number
- JP2009053782A JP2009053782A JP2007217831A JP2007217831A JP2009053782A JP 2009053782 A JP2009053782 A JP 2009053782A JP 2007217831 A JP2007217831 A JP 2007217831A JP 2007217831 A JP2007217831 A JP 2007217831A JP 2009053782 A JP2009053782 A JP 2009053782A
- Authority
- JP
- Japan
- Prior art keywords
- dynamics
- storage network
- node
- series data
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
【課題】多数のダイナミクスを効率的に学習する。
【解決手段】ダイナミクス記憶ネットワークは、複数のノードによって構成され、ダイナミクスを1つのノードに保持する。媒介信号供給部14は、ダイナミクス記憶ネットワーク処理部13と15それぞれのダイナミクス記憶ネットワークである下位階層ネットワークと上位階層ネットワークとの間を媒介するための媒介信号を、ダイナミクス記憶ネットワーク処理部13と15に供給する。ダイナミクス記憶ネットワーク処理部13と15それぞれの学習部21と31は、媒介信号を含む時系列データに基づき、下位階層ネットワーク及び上位階層ネットワークの各ダイナミクスを自己組織的に更新する。本発明は、例えば、自律型ロボット等に適用できる。
【選択図】図1
【解決手段】ダイナミクス記憶ネットワークは、複数のノードによって構成され、ダイナミクスを1つのノードに保持する。媒介信号供給部14は、ダイナミクス記憶ネットワーク処理部13と15それぞれのダイナミクス記憶ネットワークである下位階層ネットワークと上位階層ネットワークとの間を媒介するための媒介信号を、ダイナミクス記憶ネットワーク処理部13と15に供給する。ダイナミクス記憶ネットワーク処理部13と15それぞれの学習部21と31は、媒介信号を含む時系列データに基づき、下位階層ネットワーク及び上位階層ネットワークの各ダイナミクスを自己組織的に更新する。本発明は、例えば、自律型ロボット等に適用できる。
【選択図】図1
Description
本発明は、データ処理装置、データ処理方法、及びプログラムに関し、特に、例えば、多数のダイナミクスを効率的に学習し、その学習結果を利用して、データの認識や生成を行うことができるようにするデータ処理装置、データ処理方法、及びプログラムに関する。
例えば、自律的に行動する自律型ロボット等の自律エージェントは、様々なセンサ信号に基づいて、どのように振る舞うべきか、つまり、とるべき行動を決定し、その行動に応じたモータ信号を生成することで、自律的に行動する。
ここで、センサ信号とは、例えば、カメラが、センシングとしての撮像を行うことで出力する画像信号や、マイク(マイクロフォン)が、センシングとしての集音を行うことで出力する音声信号等である。また、モータ信号とは、例えば、自律エージェントの腕や脚等を駆動するモータに与えられる信号や、音声合成装置に対して与えられる、音声合成に必要な信号等である。
自律エージェントは、とるべき行動を決定するときに、センサ信号に基づいて、周囲の状態(例えば、何らかの物体がある位置等)や、自律エージェントの状態(例えば、腕や脚の状態等)等の状況を認識する。この、状況を認識することを、以下、適宜、認知ともいう。
また、自律エージェントは、認知(認識)の結果に基づき、とるべき行動を決定し、その行動に応じたモータ信号を生成する。このモータ信号が、自律エージェントの腕や脚等を駆動するモータに与えられることで、自律エージェントは、腕や脚等を動かす行動をとる。
ここで、以下、適宜、とるべき行動に応じたモータ信号を生成することを、単に、行動ともいう。
また、以下、適宜、状況を認識し、その認識結果に基づき、とるべき行動を決定して、その行動に応じたモータ信号を生成する認識生成、つまり、認知を行い、その認知の結果に基づき、行動することを、認知行動ともいい、認知行動をモデル化した計算モデルを、認知行動モデルという。
自律エージェントの認知行動は、時間発展法則により定められる力学系(dynamical systems)として記述することができ、様々な行動はその力学系が持つ特定のアトラクタダイナミクス(attractor dynamics)によって実現できることが知られている。例えば、人を模した二足型ロボットの歩行運動は、系の運動状態が様々な初期状態からある特定の周期軌道に落ち着くことを特徴とするリミットサイクルダイナミクス(limit cycle dynamics)として記述することができる(例えば、非特許文献1や2を参照)。
また、自律エージェントとしての、例えば、アームロボットがある対象物に対して手先を伸ばすようなリーチング運動は、様々な初期状態からある特定の固定点に落ち着くことを特徴とする不動点ダイナミクス(fixed-point dynamics)として記述することができる。さらに、全ての運動は、不動点ダイナミクスで実現可能な離散運動(discrete movement)とリミットサイクルダイナミクスで実現可能な周期運動(cyclic movement)の組み合わせにより実現できるとも言われている。
アトラクタダイナミクスによって自律エージェントの行動(運動)を制御する場合、まず、タスクに応じたアトラクタダイナミクスをどのように構成するのかが問題となる。次に、センサ信号を通じて得た情報に基づいて、アトラクタダイナミクスに従いながら、対応するモータ信号をどのように生成するかが問題となる。これらの問題を解決する上で、自律エージェントが環境と連続的に相互作用するかたちで行動出力(運動出力)を生成しながら、アトラクタダイナミクスを構成することが必要となる。
アトラクタダイナミクスを構成する認知行動モデルとして利用することができる計算モデルの1つに、RNN(Recurrent Neural Network)がある。
RNNは、ネットワークに回帰ループで結合されるコンテキストユニットを持ち、そこに内部状態を保持することによって、理論的には、任意の力学系を近似可能であることが知られている。
しかしながら、密結合した1つのネットワークモジュールで構成される計算モデルを、多数のアトラクタダイナミクスを学習する学習モデルとして用いることは、学習の収束性などに問題があり、現実的ではない。
そこで、複数のネットワークモジュールを組にして1つの学習モデルを構成するモジュラアーキテクチャ(modular architecture)を採用した学習モデルが提案されている。このモジュラアーキテクチャでは、原理的には、モジュールを増やすことによって記憶できるダイナミクスを容易に増やすことができるが、与えられた学習データをどのモジュールで学習(モジュール学習)するかを決定するモジュール選択の問題が生じる。
このモジュール選択を行う方法としては、どのモジュールに割り当てるかを人が決める教師あり学習(supervised learning)と、学習モデルが自律的に決める教師なし学習(unsupervised learning)の二つの方法がある。自律エージェントが自律的に学習を行うためには、教師なし学習によりモジュール学習を行う必要がある。
ところで、異なるアトラクタダイナミクスを別々のモジュールに記憶する場合、記憶の効率性が悪いことがある。
例えば、3つのアトラクタダイナミクスA,B、及びCを適宜組み合わせた組み合わせのダイナミクスAB,AC,ABC、及びACBを学習する場合、その組み合わせのダイナミクスAB,AC,ABC、及びACBのそれぞれを、異なるモジュールによって学習することは可能である。
しかしながら、この場合、組み合わせのダイナミクスAB,AC,ABC、及びACBのそれぞれを学習するモジュールが、いわば、基本的なアトラクタダイナミクスAや、B,Cを、重複して学習し、記憶することになり、ダイナミクスが効率的に記憶されているとは言い難い。
そこで、Mixture of RNN Expertと呼ばれる学習モデルを用いた階層的な学習装置が提案されている(例えば、特許文献1を参照)。
Mixture of RNN Expertと呼ばれる学習モデルは、下の階層に複数のRNNモジュール(RNNを有するモジュール)を備え、各RNNモジュールの出力をゲート機構によって統合することで最終的な出力を決定する。
学習時には、最終的な出力性能が最大化するように最尤推定法によってゲート機構の調整が行われ、同時に各RNNモジュールの学習が行われる。また、ゲート機構の時間的な変化を学習して記憶するために、上の階層が利用される。
なお、ゲート機構は、下の階層のRNNモジュールの内部状態とは切り離されたものであり、各RNNモジュールが記憶するダイナミクスに対して直接的な影響は与えない。すなわち、ゲート機構は、単に、各RNNモジュールの出力を利用するか利用しないかの切り替えを調整するだけであり、上の階層と下の階層は、ゲート機構を介してしか相互作用できないため、全体としてのネットワークは非常に制限されたものとなる。
また、階層的な学習装置としては、RNNPB(Recurrent Neural Network with Parametric Bias)を用いた学習装置が提案されている(例えば、非特許文献3を参照)。
RNNPBを用いた学習装置では、上述したようなモジュラアーキテクチャによって多数のダイナミクスを学習するのではなく、RNNPBと呼ばれる1つのネットワークによって複数のダイナミクスの学習(と記憶)を行う。
RNNPBは、入力層に、入力ユニット、及びコンテキストユニットの他、パラメトリックバイアス(PB)が入力されるユニット(以下、PBユニットという)を有する。
学習装置では、PBユニットには、ダイナミクスに応じた定常値が与えられるように学習が行われる。そして、このPBユニットに与えられる値の時間的な変化を学習して記憶するために、上の階層が利用される。上述のMixture of RNN Expertとは異なり、PBユニットに入力される値によって、下の階層のRNNPBの内部状態に影響を与えることができる。その結果、下の階層のRNNPBが記憶するダイナミクスに対して直接的に影響を与えることができる。上の階層と下の階層は、パラメトリックバイアスを介して相互作用することになり、全体として大きなネットワークが構成される。但し、RNNPBでは、1つのネットワークで複数のダイナミクスを学習することを基本とするため、多数のダイナミクスを学習することは困難である。
従来においては、多数のダイナミクスを学習するのと同時に、階層的な構造によって全体として効率的な学習を行うことができるネットワークを実現することが困難であった。
本発明は、このような状況に鑑みてなされたものであり、多数のダイナミクスを効率的に学習し、さらには、その学習結果を利用して、データの認識や生成を行うことができるようにするものである。
本発明の第1の側面のデータ処理装置、又は、プログラムは、ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段とを有する少なくとも2つのダイナミクス記憶ネットワーク処理手段と、前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段とを備えるデータ処理装置、又は、データ処理装置としてコンピュータを機能させるプログラムであり、前記学習手段が、前記供給手段から供給される前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する。
本発明の第1の側面のデータ処理方法は、ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段とを有する少なくとも2つのダイナミクス記憶ネットワーク処理手段を備えるデータ処理装置のデータ処理方法であり、前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記下位階層のダイナミクス記憶ネットワーク処理手段に供給するステップと、前記媒介信号を、前記上位階層のダイナミクス記憶ネットワーク処理手段に供給するステップと、前記学習手段が、前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新するステップとを含む。
本発明の第2の側面のデータ処理装置、又は、プログラムは、ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段と、前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段とを有する少なくとも2つのダイナミクス記憶ネットワーク処理手段と、前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段とを備えるデータ処理装置、又は、データ処理装置としてコンピュータを機能させるプログラムであり、前記認識手段が、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定する。
本発明の第2の側面のデータ処理方法は、ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段と、前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段とを有する少なくとも2つのダイナミクス記憶ネットワーク処理手段を備えるデータ処理装置のデータ処理方法であり、前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記下位階層のダイナミクス記憶ネットワーク処理手段に供給するステップと、前記媒介信号を、前記上位階層のダイナミクス記憶ネットワーク処理手段に供給するステップと、前記認識手段が、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定するステップとを含む。
なお、データ処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
また、プログラムは、伝送媒体を介して伝送し、又は、記録媒体に記録して、提供することができる。
本発明の第1の側面によれば、ダイナミクスを学習することができ、特に、多数のダイナミクスを効率的に学習することができる。
本発明の第2の側面によれば、ダイナミクスの学習結果を利用して、データの認識や生成を行うことができ、特に、多数のダイナミクスを効率的に学習した学習結果を利用して、データの認識や生成を行うことができる。
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。したがって、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
本発明の第1の側面のデータ処理装置、又は、プログラムは、
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段(例えば、図1のネットワーク記憶部24や34)と、
供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段(例えば、図1の学習部21や31)と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段(例えば、図1のダイナミクス記憶ネットワーク処理部13や15)と、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段(例えば、図1の媒介信号供給部14)と
を備えるデータ処理装置(例えば、図1のデータ処理装置)、又は、データ処理装置としてコンピュータ(例えば、図16のコンピュータ)を機能させるプログラムであり、
前記学習手段は、前記供給手段から供給される前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する。
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段(例えば、図1のネットワーク記憶部24や34)と、
供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段(例えば、図1の学習部21や31)と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段(例えば、図1のダイナミクス記憶ネットワーク処理部13や15)と、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段(例えば、図1の媒介信号供給部14)と
を備えるデータ処理装置(例えば、図1のデータ処理装置)、又は、データ処理装置としてコンピュータ(例えば、図16のコンピュータ)を機能させるプログラムであり、
前記学習手段は、前記供給手段から供給される前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する。
第1の側面のデータ処理装置において、
前記学習手段には、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定させ(例えば、図6のステップS14)、
前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを決定させ(例えば、図6のステップS15)、
各ノードが保持するダイナミクスを、各ノードの学習重みに応じて、供給される時系列データのダイナミクスに近くなるように、自己組織的に更新させる(例えば、図6のステップS17)
ことができる。
前記学習手段には、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定させ(例えば、図6のステップS14)、
前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを決定させ(例えば、図6のステップS15)、
各ノードが保持するダイナミクスを、各ノードの学習重みに応じて、供給される時系列データのダイナミクスに近くなるように、自己組織的に更新させる(例えば、図6のステップS17)
ことができる。
第1の側面のデータ処理装置には、
前記下位階層のダイナミクス記憶ネットワーク処理手段の前記ダイナミクス記憶ネットワークを構成するノードに割り当てられるダイナミクスを記憶するダイナミクス記憶手段(例えば、図15のダイナミクス記憶部51)をさらに設けることができ、
前記供給手段には、前記ダイナミクス記憶手段に記憶されたダイナミクスを有する時系列データを、前記媒介信号として供給させることができる。
前記下位階層のダイナミクス記憶ネットワーク処理手段の前記ダイナミクス記憶ネットワークを構成するノードに割り当てられるダイナミクスを記憶するダイナミクス記憶手段(例えば、図15のダイナミクス記憶部51)をさらに設けることができ、
前記供給手段には、前記ダイナミクス記憶手段に記憶されたダイナミクスを有する時系列データを、前記媒介信号として供給させることができる。
第1の側面のデータ処理装置において、
前記ダイナミクス記憶ネットワーク処理手段には、供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段(例えば、図1の認識部22や32)をさらに設けることができる。
前記ダイナミクス記憶ネットワーク処理手段には、供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段(例えば、図1の認識部22や32)をさらに設けることができる。
第1の側面のデータ処理装置において、
前記ダイナミクス記憶ネットワーク処理手段には、時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段(例えば、図1の生成部23や33)をさらに設けることができる。
前記ダイナミクス記憶ネットワーク処理手段には、時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段(例えば、図1の生成部23や33)をさらに設けることができる。
第1の側面のデータ処理装置において、
前記ダイナミクス記憶ネットワーク処理手段には、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段(例えば、図1の認識部22や32)と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段(例えば、図1の生成部23や33)と
をさらに設けることができる。
前記ダイナミクス記憶ネットワーク処理手段には、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段(例えば、図1の認識部22や32)と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段(例えば、図1の生成部23や33)と
をさらに設けることができる。
本発明の第1の側面のデータ処理方法は、
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段(例えば、図1のネットワーク記憶部24や34)と、
供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段(例えば、図1の学習部21や31)と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段(例えば、図1のダイナミクス記憶ネットワーク処理部13や15)
を備えるデータ処理装置(例えば、図1のデータ処理装置)のデータ処理方法であり、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記下位階層のダイナミクス記憶ネットワーク処理手段に供給するステップ(例えば、図6のステップS12)と、
前記媒介信号を、前記上位階層のダイナミクス記憶ネットワーク処理手段に供給するステップ(例えば、図6のステップS16)と、
前記学習手段が、前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新するステップ(例えば、図6のステップS17)と
を含む。
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段(例えば、図1のネットワーク記憶部24や34)と、
供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段(例えば、図1の学習部21や31)と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段(例えば、図1のダイナミクス記憶ネットワーク処理部13や15)
を備えるデータ処理装置(例えば、図1のデータ処理装置)のデータ処理方法であり、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記下位階層のダイナミクス記憶ネットワーク処理手段に供給するステップ(例えば、図6のステップS12)と、
前記媒介信号を、前記上位階層のダイナミクス記憶ネットワーク処理手段に供給するステップ(例えば、図6のステップS16)と、
前記学習手段が、前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新するステップ(例えば、図6のステップS17)と
を含む。
本発明の第2の側面のデータ処理装置、又は、プログラムは、
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段(例えば、図1のネットワーク記憶部24や34)と、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段(例えば、図1の認識部22や32)と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段(例えば、図1の生成部23や33)と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段(例えば、図1のダイナミクス記憶ネットワーク処理部13や15)と、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段(例えば、図1の媒介信号供給部14)と
を備えるデータ処理装置(例えば、図1のデータ処理装置)、又は、データ処理装置としてコンピュータ(図16のコンピュータ)を機能させるプログラムであり、
前記認識手段は、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定する。
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段(例えば、図1のネットワーク記憶部24や34)と、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段(例えば、図1の認識部22や32)と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段(例えば、図1の生成部23や33)と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段(例えば、図1のダイナミクス記憶ネットワーク処理部13や15)と、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段(例えば、図1の媒介信号供給部14)と
を備えるデータ処理装置(例えば、図1のデータ処理装置)、又は、データ処理装置としてコンピュータ(図16のコンピュータ)を機能させるプログラムであり、
前記認識手段は、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定する。
第2の側面のデータ処理装置において、
前記ノードが、内部状態量を持つ力学系近似モデルによって、ダイナミクスを保持する場合には、
前記認識手段には、供給される時系列データに基づいて、前記内部状態量を更新しながら、供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定させ(例えば、図12のステップS73)、
前記ダイナミクス記憶ネットワーク処理手段には、前記勝者ノードを決定する処理において得られる前記内部状態量を記憶する内部状態記憶手段(例えば、図1の内部状態記憶部25)をさらに設け、
前記生成手段には、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの力学系近似モデルの前記内部状態量を決定させて、その内部状態量を更新しながら、時系列データを生成させる(例えば、図12のステップS75)
ことができる。
前記ノードが、内部状態量を持つ力学系近似モデルによって、ダイナミクスを保持する場合には、
前記認識手段には、供給される時系列データに基づいて、前記内部状態量を更新しながら、供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定させ(例えば、図12のステップS73)、
前記ダイナミクス記憶ネットワーク処理手段には、前記勝者ノードを決定する処理において得られる前記内部状態量を記憶する内部状態記憶手段(例えば、図1の内部状態記憶部25)をさらに設け、
前記生成手段には、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの力学系近似モデルの前記内部状態量を決定させて、その内部状態量を更新しながら、時系列データを生成させる(例えば、図12のステップS75)
ことができる。
本発明の第2の側面のデータ処理方法は、
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段(例えば、図1のネットワーク記憶部24や34)と、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段(例えば、図1の認識部22や32)と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段(例えば、図1の生成部23や33)と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段(例えば、図1のダイナミクス記憶ネットワーク処理部13や15)
を備えるデータ処理装置のデータ処理方法であり、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記下位階層のダイナミクス記憶ネットワーク処理手段に供給するステップ(例えば、図12のステップS71)と、
前記媒介信号を、前記上位階層のダイナミクス記憶ネットワーク処理手段に供給するステップ(例えば、図12のステップS74)と、
前記認識手段が、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定するステップ(例えば、図12のステップS73)と
を含む。
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段(例えば、図1のネットワーク記憶部24や34)と、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段(例えば、図1の認識部22や32)と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段(例えば、図1の生成部23や33)と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段(例えば、図1のダイナミクス記憶ネットワーク処理部13や15)
を備えるデータ処理装置のデータ処理方法であり、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記下位階層のダイナミクス記憶ネットワーク処理手段に供給するステップ(例えば、図12のステップS71)と、
前記媒介信号を、前記上位階層のダイナミクス記憶ネットワーク処理手段に供給するステップ(例えば、図12のステップS74)と、
前記認識手段が、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定するステップ(例えば、図12のステップS73)と
を含む。
以下、図面を参照して、本発明の実施の形態について説明する。
図1は、本発明を適用したデータ処理装置の一実施の形態の構成例を示すブロック図である。
図1のデータ処理装置は、例えば、ロボット、マニピュレータシステム、パンチルトカメラ、船舶、航空機、自動車、その他の電子機器で扱われる信号の学習、認識、及び生成に利用される。特に、図1のデータ処理装置は、自律型ロボットなどの自律エージェントその他の自律システムにおいて、センサ、及びモータなどに対して入出力する信号の学習、認識、及び生成に利用される。
図1のデータ処理装置では、観測することができる観測信号が、信号入力部11に入力される。観測信号は、例えば音や画像の信号、LED(Light Emitting Diode)の明るさ、モータの回転角度や回転角速度などであり、自律システムに対して入出力し得る信号が、観測信号となり得る。
信号入力部11は、観測される観測信号に対応する電気信号を出力する。具体的には、信号入力部11は、例えば、観測信号が音の信号の場合は、センサとしてのマイクに対応し、観測信号が画像信号の場合は、センサとしてのカメラに対応する。また、モータの回転角度や回転速度の計測装置なども、信号入力部11に対応する。
ここで、以下、適宜、信号入力部11に入力される信号も、信号入力部11が出力する信号も、観測信号という。
なお、観測信号は、時間的に定常的な定常信号であっても良いし、時間的に変化する(定常的でない)非定常信号であっても良い。
なお、以下では、例えば、センサモータ信号を観測信号とする。センサモータ信号とは、例えば、図示せぬ自律型ロボットが有するカメラやマイクその他のセンサが出力するセンサ信号と、自律型ロボットの腕や脚等を駆動するモータに与えられるモータ信号とを、一定の時間間隔でサンプリングして得られる、同一のサンプル点(時刻)のサンプル値をコンポーネントとするベクトルの時系列である。
信号入力部11は、時系列のデータ(時系列データ)である観測信号を、逐次、適当な長さに区切って出力する。すなわち、信号入力部11は、観測信号としてのセンサモータ信号から、例えば、100サンプル(点)を、1サンプルずつシフトしながら抽出し、その100サンプルの時系列データを、特徴量抽出部12に供給する。
なお、センサモータ信号のサンプリングの時間間隔や、信号入力部11がセンサモータ信号から抽出するサンプルの数(サンプル数)は、観測信号とするセンサモータ信号に応じて適切に調整される。
特徴量抽出部12は、信号入力部11から供給される観測信号から特徴量を抽出し、その特徴量の時系列を、ダイナミクス記憶ネットワーク処理部13に供給する。
すなわち、観測信号が、例えば、音声信号である場合には、特徴量抽出部12は、その音声信号の一定時間分ごとに、周波数分析その他の音響処理を施し、音声認識等で広く利用されている、例えば、メルケプストラムなどの音声の特徴量を抽出する。そして、特徴量抽出部12は、観測信号から抽出した特徴量を、時系列に出力し、これにより、特徴量抽出部12からダイナミクス記憶ネットワーク処理部13に対して、特徴量の時系列データが供給される。
ダイナミクス記憶ネットワーク処理部13には、特徴量抽出部12から特徴量の時系列データが供給される他、媒介信号供給部14から時系列データである媒介信号が供給される。
ダイナミクス記憶ネットワーク処理部13は、そこに供給される時系列データに基づき、ダイナミクスを学習する学習処理を行い、さらに、その学習処理の結果を利用して、時系列データを認識する認識処理や、時系列データを生成する生成処理、時系列データを認識し、その認識結果に応じて、時系列データを生成する認識生成処理を行う。
すなわち、ダイナミクス記憶ネットワーク処理部13は、学習部21、認識部22、生成部23、ネットワーク記憶部24、及び内部状態記憶部25から構成される。
学習部21は、特徴量抽出部12から供給される時系列データと、媒介信号供給部14から供給される時系列データとに基づき、後述するネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習処理を行う。
ここで、学習処理では、ダイナミクス記憶ネットワークのパラメータの更新が行われる。パラメータの更新は、学習と呼ばれることがある。
学習部21による学習処理の詳細は後述するが、その学習処理では、基本的には、ラベル(正解ラベル)の付与されていない時系列データを、ダイナミクス記憶ネットワークに対して、繰り返し与えていく(供給していく)と、ダイナミクス記憶ネットワークが、その時系列データの中の特徴的なダイナミクスを自己組織的に獲得していく教師なし学習が実行される。その結果、ダイナミクス記憶ネットワークには、そこに与えられた時系列データの代表的なダイナミクスが記憶される。ダイナミクス記憶ネットワークに記憶されたダイナミクスは、認識部22や生成部23が必要に応じていつでも利用することができる。
ここで、ダイナミクス記憶ネットワークは、例えば、後述するように、力学系近似モデルの1つであるRNNによって、ダイナミクスを保持する。例えば、ある時刻tのデータの入力に対して、次の時刻t+1のデータを出力するRNN(の後述する入力層の入力ユニット)に対して入力される、ある時刻tのデータを、入力データというとともに、その時刻tのデータに対してRNNが出力する時刻t+1のデータを、出力データということとすると、ダイナミクス記憶ネットワーク処理部13に対して、特徴量抽出部12から供給される時系列データは、入力データである。
なお、以下、適宜、ダイナミクス記憶ネットワーク処理部13に対して、特徴量抽出部12から供給される時系列データを入力時系列データともいい、媒介信号供給部14から供給される時系列データを媒介時系列データともいう。
ダイナミクス記憶ネットワーク処理部13では、学習部21は、入力データとしての入力時系列データの他に、媒介時系列データを、ダイナミクス記憶ネットワークに与えて、すなわち、入力時系列データと媒介時系列データとのセットを、ダイナミクス記憶ネットワークに与えて、ダイナミクス記憶ネットワークにダイナミクスを獲得させる。
認識部22は、入力データ、つまり、特徴量抽出部12から供給される入力時系列データを認識の対象として、認識処理を行う。
すなわち、認識部22は、ネットワーク記憶部24のダイナミクス記憶ネットワークが記憶しているダイナミクスの中で、特徴量抽出部12から供給される入力時系列データと、媒介信号供給部14から供給される媒介時系列データとのセットに最も適合するダイナミクスを決定し、そのダイナミクスを表す情報を、入力データとしての入力時系列データの認識結果として出力する。
なお、認識部22が出力する認識結果は、必要に応じて、信号出力部16に供給される。
生成部23は、ネットワーク記憶部24のダイナミクス記憶ネットワークが記憶しているダイナミクスの中から、時系列データの生成に用いるダイナミクスを決定し、そのダイナミクスを有する時系列データを生成する生成処理を行う。
なお、生成部23が生成処理を行うことによって得られる時系列データは、必要に応じて、信号出力部16に供給される。
ネットワーク記憶部24は、ダイナミクス記憶ネットワークを記憶している。
ダイナミクス記憶ネットワークは、ダイナミクスを1つのノードに保持し、複数のノードによって構成される。
ここで、ダイナミクス記憶ネットワークは、ダイナミクスを記憶(保持)するから、ダイナミクス記憶ネットワークに記憶されるものがダイナミクスである。
ダイナミクスは、時間変化する力学系を表すもので、例えば、具体的な関数によって表現することができる。ダイナミクス記憶ネットワークでは、時系列データの時間変化の特徴が、ダイナミクスとして記憶される。
なお、本実施の形態では、ダイナミクス記憶ネットワークのノードにおいて、例えば、内部状態量を持つ力学系近似モデルによってモデル化されたダイナミクスを保持することとする。この場合、ダイナミクス記憶ネットワークは、内部状態量を持つ力学系近似モデルをノードとするネットワーク(内部状態量を持つ力学系近似モデルを保持(記憶)するノードによって構成されるネットワーク)である。
ここで、内部状態量を持つ(力学系近似)モデルとは、例えば、ある入力があると、その入力に応じて出力をするモデルを考えた場合に、外部から観測することができる入力と出力とは別に、外部からは観測されない(できない)、モデルの内部の状態を表す内部状態量を有するモデルである。内部状態量を持つモデルでは、入力の他に、内部状態量をも用いて出力が求められるため、同一の入力があっても、内部状態量が異なると、異なる出力が得られる。
内部状態記憶部25は、ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークの内部状態量を記憶する。内部状態記憶部25に記憶された内部状態量は、学習部21による学習処理において、適宜更新され、必要に応じて利用される。また、内部状態記憶部25に記憶された内部状態量は、認識生成処理において、入力時系列データの認識時に、適宜更新され、時系列データの生成時に、必要に応じて利用される。この認識生成処理によって、自律型ロボットの認知行動を実現することができる。
媒介信号供給部14は、ダイナミクス記憶ネットワーク処理部13と、後述するダイナミクス記憶ネットワーク処理部15のうちの一方である、入力時系列データが供給されるダイナミクス記憶ネットワーク処理部13を下位階層とするとともに、他方であるダイナミクス記憶ネットワーク処理部15を上位階層として、下位階層のダイナミクス記憶ネットワーク処理部13のダイナミクス記憶ネットワークと、上位階層のダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、下位階層のダイナミクス記憶ネットワーク処理部13、及び、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
すなわち、下位階層のダイナミクス記憶ネットワーク処理部13、及び、上位階層のダイナミクス記憶ネットワーク処理部15は、後述するように、媒介信号を出力する。下位階層のダイナミクス記憶ネットワーク処理部13が出力する媒介信号、及び、上位階層のダイナミクス記憶ネットワーク処理部15が出力する媒介信号は、いずれも、媒介信号供給部14に供給される。
媒介信号供給部14は、下位階層のダイナミクス記憶ネットワーク処理部13からの媒介信号を、必要に応じて調整し、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。また、媒介信号供給部14は、上位階層のダイナミクス記憶ネットワーク処理部15からの媒介信号を、必要に応じて調整し、下位階層のダイナミクス記憶ネットワーク処理部13に、上述した媒介時系列データとして供給する。
ここで、以下、適宜、下位階層のダイナミクス記憶ネットワーク処理部13から媒介信号供給部14に供給される媒介信号を下位媒介信号というとともに、上位階層のダイナミクス記憶ネットワーク処理部15から媒介信号供給部14に供給される媒介信号を上位媒介信号という。
ダイナミクス記憶ネットワーク処理部15は、そこに供給される時系列データに基づき、ダイナミクスを学習する学習処理を行い、さらに、その学習処理の結果を利用して、時系列データを認識する認識処理や、時系列データを生成する生成処理、時系列データを認識し、その認識結果に応じて、時系列データを生成する認識生成処理を行う。
すなわち、上位階層のダイナミクス記憶ネットワーク処理部15は、学習部31、認識部32、生成部33、ネットワーク記憶部34、及び内部状態記憶部35から構成される。
学習部31、認識部32、生成部33、ネットワーク記憶部34、及び内部状態記憶部35は、下位階層のダイナミクス記憶ネットワーク処理部13の学習部21、認識部22、生成部23、ネットワーク記憶部24、及び内部状態記憶部25と、それぞれ同様に構成される。
したがって、上位階層のダイナミクス記憶ネットワーク処理部15では、下位階層のダイナミクス記憶ネットワーク処理部13と同様の処理が行われる。
但し、図1では、下位階層のダイナミクス記憶ネットワーク処理部13に供給される時系列データとしては、特徴量抽出部12からの入力時系列データと、媒介信号供給部14からの媒介時系列データとがあるのに対して、上位階層のダイナミクス記憶ネットワーク処理部15に供給される時系列データとしては、媒介信号供給部14からの媒介信号しかない。
上位階層のダイナミクス記憶ネットワーク処理部15では、媒介信号供給部14からの媒介信号を入力データとして処理が行われる。
ここで、媒介信号供給部14は、例えば、下位階層のダイナミクス記憶ネットワーク処理部13からの下位媒介信号を一定の時間間隔でサンプリングされた信号として扱い、その下位媒介信号から、例えば、300サンプルを、1サンプルずつシフトしながら抽出し、その300サンプルの時系列データを、媒介信号として、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
学習部31は、媒介信号供給部14からの媒介信号を入力データとして、ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワークのパラメータの更新をする学習処理を行う。これにより、ネットワーク記憶部34のダイナミクス記憶ネットワークには、入力データとしての、媒介信号供給部14からの媒介信号の中の代表的なダイナミクスが記憶される。
認識部32は、媒介信号供給部14からの媒介信号を入力データとして、その入力データを認識する認識処理を行う。なお、認識部32による認識の結果は、必要に応じて、信号出力部16に供給することができる。
生成部33は、ネットワーク記憶部34のダイナミクス記憶ネットワークが記憶しているダイナミクスの中から、時系列データの生成に用いるダイナミクスを決定し、そのダイナミクスを有する時系列データを生成する生成処理を行う。
なお、生成部33が生成処理を行うことによって得られる時系列データは、必要に応じて、上位媒介信号として、媒介信号供給部14に供給される。
ネットワーク記憶部34は、ダイナミクス記憶ネットワークを記憶している。なお、ネットワーク記憶部34のダイナミクス記憶ネットワークでは、例えば、ネットワーク記憶部24のダイナミクス記憶ネットワークと同様に、ノードにおいて、内部状態量を持つ力学系近似モデルによってモデル化されたダイナミクスを保持する。
内部状態記憶部35は、ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワークの内部状態量を記憶する。内部状態記憶部25に記憶された内部状態量は、学習部31による学習処理において、適宜更新され、必要に応じて利用される。また、内部状態記憶部35に記憶された内部状態量は、認識生成処理において、入力データの認識時に、適宜更新され、時系列データの生成時に、必要に応じて利用される。この認識生成処理によって、ダイナミクス記憶ネットワーク処理部15は、媒介信号供給部14からの媒介信号に対して、対応する上位媒介信号を生成し、媒介信号供給部14に供給する(返す)。
信号出力部16は、ダイナミクス記憶ネットワーク処理部13や15から供給される信号(情報)を、出力信号として出力する。信号出力部16が出力する出力信号は、必要に応じて、自律型ロボットの腕や脚等を駆動するモータに与えられ、これにより、自律型ロボットは自律的に行動する。
以上のように構成される図1のデータ処理装置では、媒介信号供給部14が、2つのダイナミクス記憶ネットワーク処理部13及び15のうちの、一方である、入力時系列データが供給されるダイナミクス記憶ネットワーク処理部13を下位階層とするとともに、他方であるダイナミクス記憶ネットワーク処理部15を上位階層として、下位階層のダイナミクス記憶ネットワーク処理部13のダイナミクス記憶ネットワークと、上位階層のダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、下位階層のダイナミクス記憶ネットワーク処理部13、及び、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
上述のように、媒介信号が、2つのダイナミクス記憶ネットワーク処理部13及び15のダイナミクス記憶ネットワークに与えられることにより、ダイナミクス記憶ネットワーク処理部13のダイナミクス記憶ネットワークと、ダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークとは、2階層の階層構造を構成する。
次に、図2は、図1のネットワーク記憶部24及び34に記憶されたダイナミクス記憶ネットワークの例を、模式的に示している。
ダイナミクス記憶ネットワークは、複数のノードとリンクによって構成される。
ノードは、ダイナミクスを保持(記憶)する。
リンクは、ノードどうしの間に結合関係を与える。
図2では、ダイナミクス記憶ネットワークは、9個のノードN1ないしN9を有し、各ノードNi(i=1,2,・・・,9)には、9個のノードN1ないしN9が2次元の格子状に配置されるように、縦方向及び横方向に隣接するノードとの間にリンクが与えられている。
すなわち、図2では、リンクによって、9個のノードN1ないしN9に、2次元の配置構造が与えられている。
ここで、ダイナミクス記憶ネットワークにおいては、ノードNiの配置構造に応じて、ノードNiの位置を表す座標系を定義することができる。すなわち、例えば、図2に示すように、2次元の配置構造のノードNiについては、2次元座標系を定義し、その2次元座標系上の座標によって、ノードNiの位置を表すことができる。
例えば、いま、図2のダイナミクス記憶ネットワークについて、左下のノードN7の位置を原点(0,0)とするとともに、左から右方向をx軸とし、下から上方向をy軸とする2次元座標系を定義して、リンクの長さを0.5とすると、図2のダイナミクス記憶ネットワークにおいて、例えば、右上のノードN3の位置の座標は、(1,1)となる。
また、ダイナミクス記憶ネットワークを構成する任意の2つのノードNi及びNjそれぞれが保持するダイナミクスどうしが類似している(近い)度合いを表す尺度として、ノードNiとNjとの間の距離を導入する。
いま、ノードNiとNjとの間の距離として、ノードNiとNjとの間のユークリッド距離を採用することとすると、例えば、左下のノードN7と、右上のノードN3との間の距離は、√((0-1)2+(0-1)2)=√2となる。
なお、ネットワーク記憶部24と34にそれぞれ記憶されるダイナミクス記憶ネットワークは、ノードの数とリンクが同一のものであってもよいし、ノードの数や、ノードに与えられるリンクが異なるものであってもよい。
図3は、図1の下位階層のダイナミクス記憶ネットワーク処理部13の(ネットワーク記憶部24に記憶された)ダイナミクス記憶ネットワークのノードNiの構成例を模式的に示している。
ノードNiは、内部状態量を持ち、力学系を表すことができる力学系近似モデル41と、その力学系近似モデル41のパラメータを更新する学習を行う学習調整部42とによって構成される。
図3では、内部状態量を持つ力学系近似モデル41として、RNNが採用されている。
図3において、力学系近似モデル41としてのRNNは、3層型NN(Neural Network)に、その出力層から入力層への回帰ループを持たせたものとなっており、その回帰ループによって、内部状態量が保持される。
すなわち、図3において、力学系近似モデル41としてのRNNは、入力層、隠れ層(中間層)、及び出力層の3層により構成されている。入力層、隠れ層、及び出力層は、それぞれ任意の数の、ニューロンに相当するユニットにより構成されている。
図3において、入力層は、入力ユニット、媒介ユニット、及びコンテキストユニットを有する。
入力ユニットには、時刻tの入力データ(ベクトル)Xtとしての入力時系列データが入力される。
媒介ユニットには、時刻tの媒介時系列データ(ベクトル)Vtが入力される。
コンテキストユニットには、例えば、出力層の一部のユニットが出力するデータが、内部状態量であるコンテキストとしてフィードバックされる。すなわち、図3のRNNでは、コンテキストユニットと、出力層の一部のユニットとが、回帰ループによって接続されており、コンテキストユニットには、出力層の一部のユニットが出力するデータが、回帰ループを介して、コンテキストとして入力される。
ここで、時刻tの入力データXtが入力ユニットに入力されるときに、コンテキストユニットに入力される時刻tのコンテキストCtは、1時刻前の時刻t-1の入力データXt-1に対して、出力層の一部のユニットが出力したデータである。したがって、時刻tの入力データXtの入力に対して出力層の一部のユニットが出力したデータは、次の時刻t+1のコンテキストCt+1となる。
隠れ層のユニットは、入力層に入力される入力データXt、媒介時系列データVt、及びコンテキストCtを対象として、ニューロンとしてのユニットどうしを結合する結合重み(結合荷重)を用いた重み付け加算を行い、その重み付け加算の結果を引数とする非線形関数の演算を行って、その演算結果を、出力層のユニットに出力する。
出力層の一部のユニットからは、上述したように、次の時刻t+1のコンテキストCt+1と
なるデータが出力され、入力層のコンテキストユニットにフィードバックされる。また、出力層の残りのユニットからは、例えば、入力データXtに対する出力データとして、その入力データXtの次の時刻t+1の入力データXt+1の予測値X* t+1が出力される。
なるデータが出力され、入力層のコンテキストユニットにフィードバックされる。また、出力層の残りのユニットからは、例えば、入力データXtに対する出力データとして、その入力データXtの次の時刻t+1の入力データXt+1の予測値X* t+1が出力される。
以上のようなRNNにおいて、入力データとしての入力時系列データと、媒介時系列データとのセットを、RNNの学習用の学習データとして用い、時刻tの入力時系列データXt、及び媒介時系列データVtから、次の時刻t+1の入力時系列データXt+1を予測することを学習することにより、学習データ(入力時系列データ)の時間発展法則を学習することができる。
ここで、RNNのような内部状態量を持つ力学系近似モデル41のパラメータを求める学習の方法としては、例えば、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等に記載されている。
学習調整部42は、力学系近似モデル41としてのRNNが保持するダイナミクスが、学習データの影響を受けるように、RNNのパラメータである結合重みを更新するRNNの学習を行う。
なお、学習調整部42は、力学系近似モデル41としてのRNNが保持するダイナミクスが、学習データの影響を受ける度合いを強くしたり弱くしたりするための調整機能を有している。
すなわち、ダイナミクス記憶ネットワークの学習は、オンライン学習で行われ、学習データが入力されるたびに、ダイナミクス記憶ネットワークを構成するモジュールとしてのノードが有する力学系近似モデル41としてのRNNのパラメータが少しずつ更新される。このパラメータの更新時に、図1の学習部21(及び31)は、ノードごとに、そのノードの学習調整部42に対して、ノードが保持するダイナミクスを更新する程度、つまり、学習データをノードが保持するダイナミクスに影響させる程度を表す学習重みを指定する。
学習調整部42は、学習部21からの学習重みに応じて、ノードが保持するダイナミクスを、学習データのダイナミクスに近くなるように、自己組織的に更新する
すなわち、学習調整部42は、ノードの力学系近似モデル41としてのRNNが保持するダイナミクスが、学習データの影響を受ける度合いを、学習重みに応じて調整しながら、RNNのパラメータを、BPTT法により更新する。
学習調整部42において、RNNが保持するダイナミクスが学習データの影響を受ける度合いの調整は、BPTT法によるRNNのパラメータの更新時の、パラメータを計算する繰り返し回数を、学習重みに応じて制限することによって行われる。
すなわち、BPTT法によるRNNのパラメータの更新では、一般には、例えば、RNNのパラメータが収束するまで、RNNのパラメータの計算が繰り返し行われるが、学習調整部42は、例えば、学習重みが小さいほど、パラメータの計算の繰り返し回数を少なくする。
これにより、学習重みが大きい場合には、RNNのパラメータは、RNNが保持するダイナミクスが学習データの影響を大きく受けるように更新される。また、学習重みが小さい場合には、RNNのパラメータは、RNNが保持するダイナミクスが学習データの影響をあまり受けないように(少ししか受けないように)更新される。
次に、図4は、図1の上位階層のダイナミクス記憶ネットワーク処理部15の(ネットワーク記憶部34に記憶された)ダイナミクス記憶ネットワークのノードNiの構成例を模式的に示している。
ノードNiは、図3の場合と同様に、内部状態量を持つ力学系近似モデル41としてのRNNと、そのRNNのパラメータを更新する学習を行う学習調整部42とによって構成される。
但し、図4では、力学系近似モデル41としてのRNNは、入力層に、媒介ユニットを有しないものになっている。
すなわち、上位階層のダイナミクス記憶ネットワーク処理部15には、媒介信号供給部14から、媒介信号が、入力データとして供給されるが、その入力データの他に、下位階層のダイナミクス記憶ネットワーク処理部13に供給される媒介時系列データに相当するデータは、供給されない。このため、上位階層のダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークのノードNiのRNNには、媒介時系列データが入力される媒介ユニットが設けられていない。
そして、図4の力学系近似モデル41としてのRNNでは、入力データとしての、媒介信号供給部14からの媒介信号を、RNNの学習用の学習データとして用い、時刻tの媒介信号Xtから、次の時刻t+1の媒介信号Xt+1を予測することが学習され、これにより、学習データ(媒介信号供給部14から上位階層のダイナミクス記憶ネットワーク処理部15に供給される媒介信号)の時間発展法則が学習される。
なお、図4の力学系近似モデル41としてのRNNの学習は、図3の場合と同様に、そのRNNが保持するダイナミクスが、学習データの影響を受ける度合いを、学習重みに応じて調整しながら、BPTT法によって行われる。
また、上位階層のダイナミクス記憶ネットワーク処理部15では、学習部31が、RNNの学習(パラメータの更新)を行う学習調整部42に対して、学習重みを指定する。
図5は、図1の学習部21(及び31)が学習重みを決定する方法を示している。
学習部21は、ダイナミクス記憶ネットワークのノードの中から、学習データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを決定する。
すなわち、学習部21は、時刻tの学習データ(時刻tの入力時系列データXtと媒介時系列データVtとのセット)を、力学系近似モデル41としてのRNNに入力したときに、そのRNNが出力する時刻t+1の学習データのうちの入力時系列データの予測値の、時刻t+1の入力時系列データ(の真値)に対する、例えば、自乗誤差の平均値を、スコアとして計算する。
ここで、所定のサンプル数をLと表すこととすると、時刻tの時系列データとは、例えば、時刻t-L+1のサンプル値から、時刻tのサンプル値までのLサンプルのサンプル値を意味する。学習部21は、時刻tの学習データに対して、時刻t-L+2から時刻t+1までの各時刻の予測値の自乗誤差を求め、その自乗誤差の平均値(以下、適宜、予測誤差という)をスコアとする。
なお、この場合、スコアが小さいほど、予測値が真値に近いことを表す。そこで、以下、適宜、スコアが小さいことを、スコアが良い、又は高いともいい、スコアが大きいことを、スコアが悪い、又は低いともいう。
RNNのような内部状態量を持つ力学系近似モデル41については、その内部状態量を適切な値とすることで、スコアはより良くなる。
そのため、学習部21は、スコアの計算にあたっては、予測誤差を最小化するように、BPTT法によって、内部状態量としてのRNNのコンテキストを調整した後、そのコンテキストを更新しながら、スコアを計算する。
そして、学習部21は、ダイナミクス記憶ネットワークのノードの中から、スコアが最も良いRNNを有するノードを、学習データに最も適合するダイナミクスを保持する勝者ノードに決定する。
さらに、学習部21は、ダイナミクス記憶ネットワークの各ノードと、勝者ノードとの間の距離dを求める。
ここで、例えば、図2に示したダイナミクス記憶ネットワークにおいて、9個のノードN1ないしN9のうちの、例えば、ノードN6が勝者ノードである場合には、勝者ノードであるノードN6が、勝者ノードとの間の距離が最も近い(0である)ノードとなる。また、ノードN3,N5、及びN9が、勝者ノードとの間の距離が2番目に近いノードとなり、ノードN2及びN8が、勝者ノードとの間の距離が3番目に近いノードとなる。さらに、ノードN4が、勝者ノードとの間の距離が4番目に近いノードとなり、ノードN1及びN7が、勝者ノードとの間の距離が最も遠い(5番目に近いノード)となる。
学習部21は、ダイナミクス記憶ネットワークの各ノードの、勝者ノードとの間の距離dに基づき、距離dの増加に対して学習重みαが減少する関係を表す曲線(以下、距離/重み曲線という)に従って、ノードの学習重みαを決定する。
すなわち、図5は、距離/重み曲線の例を示している。
図5の距離/重み曲線において、横軸(左から右方向)は、学習重みαを示しており、縦軸(上から下方向)は、勝者ノードからの距離dを示している。
図5の距離/重み曲線によれば、勝者ノードとの距離dが近いノードほど、大きな学習重みαが決定され、距離dが遠いノードほど、小さな学習重みαが決定される。
ここで、図5では、縦軸に沿って、ダイナミクス記憶ネットワークを構成する6個のノードN1'ないしN6'が、各ノードNi'と勝者ノードとの距離dに対応する位置(縦軸の位置)に記載されている。
図5では、ダイナミクス記憶ネットワークを構成する6個のノードN1'ないしN6'が、その順で、勝者ノードとの距離dが近くなっている。ダイナミクス記憶ネットワークを構成する6個のノードN1'ないしN6'のうち、勝者ノードとの距離dが最も近いノード、即ち、勝者ノードとの距離が0のノードであるノードN1'は、勝者ノード(となっているノード)である。
図5の距離/重み曲線は、例えば、式(1)によって与えられる。
α=γ(d/△)
・・・(1)
・・・(1)
ここで、式(1)において、γは0<γ<1の範囲の減衰係数であり、Δは、勝者ノードを中心として各ノードの学習重みαを調整するための変数(以下、適宜、調整変数という)である。
調整変数をΔを大きい値から少しずつ0に近づけていくと、学習重みαは勝者ノードから離れるにしたがってより小さい値となる。基本的には、調整変数Δは、学習の開始時は大きくし、時間の経過とともに小さくなるように調整される。
式(1)の学習重みαに基づき、勝者ノードのパラメータ(ノードが有する力学系近似モデル41のパラメータ)は、学習データの影響を最も強く受け、勝者ノードから離れるにしたがって、学習データの影響が小さくなるように、他のノード(勝者ノード以外のノード)のパラメータの更新が行われる。
なお、学習部21は、勝者ノードを決定するときには、入力データとしての特徴量抽出部12からの入力時系列データと、媒介信号供給部14からの媒介時系列データとのセットを学習データとして用いて、ダイナミクス記憶ネットワークの各ノードのスコアを求める。そして、学習部21は、スコアが最も良いノードを勝者ノードに決定し、ダイナミクス記憶ネットワークの各ノードの、勝者ノードとの間の距離dに応じて、各ノードの学習重みαを決定する。
さらに、学習部21は、学習調整部42(図3)を制御し、ダイナミクス記憶ネットワークの各ノードの学習重みαに応じて、各ノードが保持するダイナミクスの自己組織的な更新、つまり、各ノードの力学系近似モデル41としてのRNNのパラメータ(ノードのパラメータ)の更新を行うが、そのパラメータの更新には、勝者ノードの決定に用いられた学習データである、入力データとしての特徴量抽出部12からの入力時系列データと、媒介信号供給部14からの媒介時系列データとのセットではなく、入力データとしての特徴量抽出部12からの入力時系列データと、勝者ノードの位置の座標(x,y)を表す定常信号とのセットが、学習データとして用いられる。
すなわち、勝者ノードの決定時には、ノードのRNNの媒介ユニット(図3)には、媒介信号供給部14からの媒介時系列データVtが入力されるが、ノードのRNNのパラメータの更新時には、RNNの媒介ユニットには、勝者ノードの位置の座標(x,y)を表す定常信号が、媒介信号供給部14からの媒介時系列データの代わりに入力される。
その結果、ダイナミクス記憶ネットワークのノードのうちの勝者ノードのパラメータは、学習データとしての入力時系列データと媒介時系列データとのセットのうちの入力時系列データ、及び勝者ノードの位置の座標(x,y)の影響を最も強く受けるように更新される。また、他のノードのパラメータは、勝者ノードとの間の距離が遠いノードほど、入力時系列データ、及び勝者ノードの位置の座標(x,y)の影響が小さくなるように更新される。
次に、図6のフローチャートを参照して、図1の下位階層のダイナミクス記憶ネットワーク処理部13による学習処理について説明する。
学習部21は、ステップS11において、ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークのすべてのパラメータの初期化を行う。具体的には、ダイナミクス記憶ネットワークの各ノードの内部状態量を持つ力学系近似モデル41(図3)のパラメータに適当な値が初期値として付与される。
ここで、ダイナミクス記憶ネットワークのノードが有する力学系近似モデル41が、例えば、RNNである場合には、ステップS11では、そのRNNのユニットに入力される信号に与えられる結合重み等を、力学系近似モデル41のパラメータとして、そのパラメータに適当な初期値がセットされる。
その後、処理は、ステップS11からステップS12に進み、学習部21に対して、学習データが供給される。
すなわち、信号入力部11から特徴量抽出部12に対して、適当な長さの観測信号が供給されると、特徴量抽出部12は、信号入力部11からの観測信号から特徴量を抽出し、その特徴量の時系列を、入力時系列データとして、ダイナミクス記憶ネットワーク処理部13の学習部21に供給する。
一方、媒介信号供給部14は、特徴量抽出部12から学習部21に対しての、入力時系列データの供給のタイミングに同期して、媒介時系列データを、学習部21に供給する。
以上のようにして、学習部21に対して、入力時系列データと媒介時系列データとのセットである学習データが供給される。
その後、処理は、ステップS12からステップS13に進み、学習部21は、学習データに対する、ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークの各ノードのスコアの計算を、ノードが有する、内部状態量を持つ力学系近似モデル41の内部状態量を更新しながら行う。
ここで、内部状態量を持つ力学系近似モデル41が、例えば、RNNである場合には、所定の基準値を基準として値を変えていく(更新していく)変数の値のうちの、スコアを最も良くする値が、内部状態量としてのRNNのコンテキストの初期値に決定され、コンテキストを初期値から更新しながら、スコアの計算が行われる。
なお、コンテキストの初期値の決定に用いる所定の基準値としては、例えば、ランダムな値や、前回のRNNのパラメータの更新時に求められた、コンテキストの最終的な更新値(以下、適宜、前回更新値という)などを採用することができる。
例えば、今回のRNNのパラメータの更新時に学習部21に供給された入力時系列データと、前回のRNNのパラメータの更新時に学習部21に供給された入力時系列データとが、何らの関係もないことが分かっている場合には、コンテキストの初期値の決定に用いる所定の基準値としては、ランダムな値を採用することができる。
また、例えば、今回のRNNのパラメータの更新時に学習部21に供給された入力時系列データと、前回のRNNのパラメータの更新時に学習部21に供給された入力時系列データとが、連続する時系列データなどのように、何らかの関係を有することが分かっている場合には、コンテキストの初期値の決定に用いる所定の基準値としては、前回更新値を採用することができる。なお、前回更新値を、コンテキストの初期値の決定に用いる所定の基準値として採用する場合には、前回更新値を、そのまま、コンテキストの初期値に決定することができる。
ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークのすべてのノードのスコアが求められると、処理は、ステップS13からステップS14に進み、学習部21は、ダイナミクス記憶ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、学習データに最も適合するノードである勝者ノードに決定して、処理は、ステップS15に進む。
ステップS15では、学習部21は、ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークの各ノードの学習重みを、図5で説明したように、勝者ノードを中心として決定し、各ノード(図3)の学習調整部42に供給する。
その後、処理は、ステップS15からステップS16に進み、学習部21は、学習データとしての入力時系列データと媒介時系列データとのセットのうちの、媒介時系列データを調整し、その調整後の学習データを、ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークの各ノード(図3)の学習調整部42に供給する。
すなわち、ステップS16では、学習部21は、学習データのうちの媒介時系列データを、勝者ノードの位置の座標(x,y)を表す定常信号に変換し、その変換後の学習データを、各ノードの学習調整部42に供給する。
さらに、ステップS16では、学習部21は、調整後の媒介時系列データ、すなわち、勝者ノードの位置の座標(x,y)を表す定常信号を、下位媒介信号として出力して、処理は、ステップS17に進む。ここで、ステップS16において、学習部21が出力する下位媒介信号は、媒介信号供給部14に供給され、さらに、媒介信号供給部14から上位階層のダイナミクス記憶ネットワーク処理部15に供給される。
ステップS17では、ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークの各ノード(図3)の学習調整部42が、学習部21からの学習データを用い、内部状態量を持つ力学系近似モデル41のパラメータの更新を、学習部21からの学習重みに応じて、BPTT法により行う。
ここで、勝者ノードのパラメータだけを更新する方法はWTA(winner-take-all)に対応し、勝者ノードの近傍のノードに対してもパラメータの更新を行う方法がSMA(soft-max adaptation)に対応する。学習部21は、SMAで、ダイナミクス記憶ネットワーク(のノードが有する力学系近似モデル41)のパラメータの更新を行う。
その後、信号入力部11から特徴量抽出部12に対して、新たな観測信号が供給されるのを待って、ステップS12に戻り、以下、ステップS12ないしS17の処理が繰り返される。
以上のように、下位階層のダイナミクス記憶ネットワーク処理部13において、ステップS12ないしS17の処理が繰り返されることで、ネットワーク記憶部24のダイナミクス記憶ネットワークでは、入力時系列データとノードの位置の座標(x,y)とのセットのダイナミクスが自己組織的に学習され、記憶される。
さらに、勝者ノードの座標(x,y)の時系列が、下位媒介信号として、下位階層のダイナミクス記憶ネットワーク処理部13から媒介信号供給部14に供給される。
媒介信号供給部14は、下位媒介信号としての勝者ノードの座標(x,y)の時系列を、適切な長さの時系列データに区切り、媒介信号として、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
下位階層のダイナミクス記憶ネットワーク処理部13では、上述したように、入力時系列データと媒介時系列データとのセットを、学習データとして、学習処理が行われるが、上位階層のダイナミクス記憶ネットワーク処理部15では、媒介信号供給部14からの媒介信号としての、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データを、学習データとして、学習処理が行われる。
図7のフローチャートを参照して、図1の上位階層のダイナミクス記憶ネットワーク処理部15による学習処理について説明する。
学習部31は、ステップS21において、ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワークのすべてのパラメータの初期化を、図6のステップS11の場合と同様に行って、処理は、ステップS22に進む。
ステップS22では、学習部31に対して、学習データが供給される。
すなわち、下位階層のダイナミクス記憶ネットワーク処理部13が図6の学習処理を行うことにより、上述したように、媒介信号供給部14が、媒介信号として、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データを、上位階層のダイナミクス記憶ネットワーク処理部15に供給するが、ステップS22では、その媒介信号が、学習データとして、学習部31に供給される。
その後、処理は、ステップS22からステップS23に進み、学習部31は、学習データに対する、ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワークの各ノードのスコアの計算を、ノードが有する、内部状態量を持つ力学系近似モデル41の内部状態量を更新しながら、図6のステップS13の場合と同様に行う。
ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワークのすべてのノードのスコアが求められると、処理は、ステップS23からステップS24に進み、学習部31は、ダイナミクス記憶ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、学習データに最も適合するノードである勝者ノードに決定して、処理は、ステップS25に進む。
ステップS25では、学習部31は、ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワークの各ノードの学習重みを、図5で説明したように、勝者ノードを中心として決定し、学習データとともに、各ノード(図4)の学習調整部42に供給して、処理は、ステップS26に進む。
ステップS26では、ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワークの各ノード(図4)の学習調整部42が、学習部31からの学習データを用い、内部状態量を持つ力学系近似モデル41のパラメータの更新を、学習部31からの学習重みに応じて、BPTT法により行う。
その後、媒介信号供給部14から上位階層のダイナミクス記憶ネットワーク処理部15に対して、新たな媒介信号が供給されるのを待って、ステップS22に戻り、以下、ステップS22ないしS26の処理が繰り返される。
以上のように、上位階層のダイナミクス記憶ネットワーク処理部15において、ステップS22ないしS26の処理が繰り返されることで、ネットワーク記憶部34のダイナミクス記憶ネットワークでは、媒介信号供給部14からの媒介信号のダイナミクスが自己組織的に学習され、記憶される。
ここで、媒介信号供給部14から上位階層のダイナミクス記憶ネットワーク処理部15に供給される媒介信号は、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データである。
したがって、上位階層のダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークでは、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データ、つまり、その勝者ノードの軌跡のダイナミクスが学習され、記憶される。
なお、下位階層のダイナミクス記憶ネットワーク処理部13において、図6の学習処理が行われる場合には、上位階層のダイナミクス記憶ネットワーク処理部15では、図7の学習処理の他、認識生成処理が行われる。
上位階層のダイナミクス記憶ネットワーク処理部15が行う認識生成処理では、その詳細については後述するが、大ざっぱには、ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワークのノードのうちの、媒介信号供給部14から供給された媒介信号に対する勝者ノードを用い、その勝者ノードが保持するダイナミクスを有する時系列データが生成される。
この時系列データは、上位媒介信号として、上位階層のダイナミクス記憶ネットワーク処理部15から、媒介信号供給部14に供給される。媒介信号供給部14は、上位階層のダイナミクス記憶ネットワーク処理部15からの上位媒介信号を、適切な長さの時系列データに区切り、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給する。
下位階層のダイナミクス記憶ネットワーク処理部13では、以上のようにして、媒介信号供給部14から供給される媒介時系列データを用いて、図6の学習処理が行われる。
ここで、上述したように、上位階層のダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークでは、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの軌跡のダイナミクスが学習される。
したがって、上位階層のダイナミクス記憶ネットワーク処理部15において、ネットワーク記憶部34に記憶されたダイナミクス記憶ネットワーク(以下、適宜、上位階層ネットワークともいう)のノードを用いて生成される、そのノードが保持するダイナミクスを有する時系列データは、下位階層のダイナミクス記憶ネットワーク処理部13の勝者ノードの(位置の座標(x,y)の)遷移を表す。
その結果、上位階層のダイナミクス記憶ネットワーク処理部15による認識生成処理によれば、下位階層のダイナミクス記憶ネットワーク処理部13のネットワーク記憶部24に記憶されたダイナミクス記憶ネットワーク(以下、適宜、下位階層ネットワークともいう)における勝者ノードの軌跡を表す時系列データが生成され、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給されることになる。
一方、下位階層のダイナミクス記憶ネットワーク処理部13による図6の学習処理によれば、下位階層ネットワークの各ノードは、入力時系列データと、そのノードの位置の座標(x,y)とのセットのダイナミクスを獲得する。
以上により、下位階層のダイナミクス記憶ネットワーク処理部13では、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データに基づき、いわば、勝者ノードの切り替えが生じる。
すなわち、下位階層のダイナミクス記憶ネットワーク処理部13では、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データが表す座標(x,y)の位置にあるノードが、勝者ノードになりやすくなる。
例えば、上位階層のダイナミクス記憶ネットワーク処理部15において、上位階層ネットワークの、あるノードが有する力学系近似モデル41としてのRNNから、300サンプルの座標の時系列データが生成され、その時系列データの最初の100サンプルのサンプル値が(0,0)(2次元空間の座標(x,y))で、次の100サンプルのサンプル値が(0,1)で、最後の100サンプルのサンプル値が(1,1)であったとする。
また、下位階層ネットワークが、例えば、図2に示したように、2次元の格子状に配置された9個のノードN1ないしN9から構成されることとする。
この場合、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データの最初の100サンプルが、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給されているとき、下位階層のダイナミクス記憶ネットワーク処理部13では、座標(0,0)の位置にあるノードN7が、勝者ノードになりやすくなる。
また、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データの次の100サンプルが、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給されているとき、下位階層のダイナミクス記憶ネットワーク処理部13では、座標(0,1)の位置にあるノードN1が、勝者ノードになりやすくなり、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データの最後の100サンプルが、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給されているとき、下位階層のダイナミクス記憶ネットワーク処理部13では、座標(1,1)の位置にあるノードN3が、勝者ノードになりやすくなる。
次に、図8のフローチャートを参照して、図1の下位階層のダイナミクス記憶ネットワーク処理部13による認識処理について説明する。
ステップS31において、認識部22に対して、認識処理に用いる認識データが供給される。
すなわち、信号入力部11から特徴量抽出部12に対して、適当な長さの観測信号が供給されると、特徴量抽出部12は、信号入力部11からの観測信号から特徴量を抽出し、その特徴量の時系列を、入力時系列データとして、ダイナミクス記憶ネットワーク処理部13の認識部22に供給する。
一方、媒介信号供給部14は、特徴量抽出部12から認識部22に対しての、入力時系列データの供給のタイミングに同期して、媒介時系列データを、認識部22に供給する。
以上のようにして、認識部22に対して、入力時系列データと媒介時系列データとのセットが、認識データとして供給される。
その後、処理は、ステップS31からステップS32に進み、認識部22は、認識データに対する、下位階層ネットワークの各ノードのスコアの計算を、図6の学習処理の場合と同様に、ノードが有する、内部状態量を持つ力学系近似モデル41の内部状態量を更新しながら行う。
下位階層ネットワークのすべてのノードのスコアが求められると、処理は、ステップS32からステップS33に進み、認識部22は、下位階層ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、認識データに最も適合するノードである勝者ノードに決定して、処理は、ステップS34に進む。
ステップS34では、認識部22は、認識データとしての入力時系列データと媒介時系列データとのセットのうちの、媒介時系列データを調整し、その調整後の認識データを、媒介信号供給部14に供給する。
すなわち、ステップS34では、認識部22は、図6の学習処理の場合と同様に、認識データのうちの媒介時系列データを、勝者ノードの位置の座標(x,y)を表す定常信号に変換し、下位媒介信号として出力する。認識部22が出力する下位媒介信号は、媒介信号供給部14に供給される。
その後、処理は、ステップS34からステップS35に進み、認識部22は、勝者ノードを表す情報を、入力時系列データの認識結果として出力して、処理は終了する。
ここで、認識部22が出力した認識結果は、信号出力部16(図1)を介して、例えば、外部に出力することができる。
また、その後、信号入力部11から特徴量抽出部12に対して、新たな観測信号が供給されると、ステップS31からの認識処理が再開される。
以上のように、下位階層のダイナミクス記憶ネットワーク処理部13において認識処理が行われることにより、下位階層ネットワークの勝者ノードの座標(x,y)の時系列が、下位媒介信号として、下位階層のダイナミクス記憶ネットワーク処理部13から媒介信号供給部14に供給される。
媒介信号供給部14は、下位媒介信号としての勝者ノードの座標(x,y)の時系列を、適切な長さの時系列データに区切り、媒介信号として、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
上位階層のダイナミクス記憶ネットワーク処理部15では、媒介信号供給部14からの媒介信号としての、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データを、認識データとして、認識処理を行うことができる。
図9のフローチャートを参照して、図1の上位階層のダイナミクス記憶ネットワーク処理部15による認識処理について説明する。
ステップS41において、認識部32に対して、認識データが供給される。
すなわち、下位階層のダイナミクス記憶ネットワーク処理部13が図8の認識処理を行うことにより、上述したように、媒介信号供給部14が、媒介信号として、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データを、上位階層のダイナミクス記憶ネットワーク処理部15に供給するが、ステップS41では、その媒介信号が、認識データとして、認識部32に供給される。
その後、処理は、ステップS41からステップS42に進み、認識部32は、認識データに対する、上位階層ネットワークの各ノードのスコアの計算を、ノードが有する、内部状態量を持つ力学系近似モデル41の内部状態量を更新しながら、図6のステップS13の場合と同様に行う。
上位階層ネットワークのすべてのノードのスコアが求められると、処理は、ステップS42からステップS43に進み、認識部32は、上位階層ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、認識データに最も適合するノードである勝者ノードに決定して、処理は、ステップS44に進む。
ステップS44では、認識部32は、勝者ノードを表す情報を、認識データの認識結果として出力して、処理は終了する。
ここで、認識部32が出力した認識結果は、信号出力部16(図1)を介して、例えば、外部に出力することができる。
なお、以上のように、上位階層のダイナミクス記憶ネットワーク処理部15は、下位階層ダイナミクス記憶ネットワーク処理部13と同様に、認識処理を行うことができるが、上位階層のダイナミクス記憶ネットワーク処理部15が認識処理だけを単独で行う必要はない(上位階層のダイナミクス記憶ネットワーク処理部15が、認識処理だけを単独で行うことはない)。
また、下位階層のダイナミクス記憶ネットワーク処理部13において、図8の認識処理が行われる場合には、上位階層のダイナミクス記憶ネットワーク処理部15では、下位階層のダイナミクス記憶ネットワーク処理部13で学習処理が行われる場合と同様に、認識生成処理が行われる。
上位階層のダイナミクス記憶ネットワーク処理部15による認識生成処理では、上述したように、下位階層ネットワークにおける勝者ノードの軌跡を表す時系列データが生成され、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給される。
したがって、下位階層のダイナミクス記憶ネットワーク処理部13では、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データ、つまり、下位階層ネットワークの勝者ノードの軌跡を考慮して、認識処理が行われることになる。
次に、図10のフローチャートを参照して、図1の下位階層のダイナミクス記憶ネットワーク処理部13による生成処理について説明する。
図6の学習処理によれば、下位階層ネットワークの各ノードは、内部状態量を持つ力学系近似モデル41によってダイナミクスを学習し、記憶(獲得)するが、その後は、その各ノードの内部状態量を持つ力学系近似モデル41から、その力学系近似モデル41によってモデル化されたダイナミクスを有する時系列データ(ダイナミクスとして獲得された時系列パターンの時系列データ)を生成することができる。
内部状態量を持つ力学系近似モデル41としてRNNを用いた場合には、所定の内部状態量をRNNに与えることで、そのRNNを有するノードに保持されるダイナミクスから時系列データを容易に生成することができる。
具体的には、RNNの入力にある時刻tの状態ベクトルを与えると、次の時刻t+1の状態ベクトルが出力される。したがって、この操作を所定の時間ステップ分を行うことで、ダイナミクス記憶ネットワークの各ノードから、その所定の時間ステップ分に相当するサンプル数の時系列データを生成することができる。
すなわち、図10のステップS51において、下位階層のダイナミクス記憶ネットワーク処理部13では、生成部23が、下位階層ネットワークのノードのうちの、どのダイナミクスに対応するノードから時系列データを生成するかを決定する。
ここで、時系列データの生成に用いられるノードを、以下、適宜、生成ノードともいう。生成処理では、生成部23は、例えば、下位階層ネットワークのノードの中から、1個のノードをランダムに選択し、そのノードを、生成ノードに決定する。あるいは、生成部23は、例えば、ユーザからの指示に応じて、下位階層ネットワークのノードの中から、生成ノードとするノードを決定する。
生成ノードが決定されると、処理は、ステップS51からステップS52に進み、生成部23は、生成ノードに対して、生成ノードの位置の座標(x,y)を、媒介時系列データとして供給する(与える)。
その後、処理は、ステップS52からステップS53に進み、生成部23は、生成ノードに与えた媒介時系列データを用い、生成ノードが保持する内部状態量を持つ力学系近似モデル41のパラメータに基づき、時系列データを、力学系近似モデル41の内部状態量を更新しながら生成して、処理は、ステップS54に進む。
ステップS54では、生成部23は、生成ノードの力学系近似モデル41から生成された時系列データを出力して、処理は終了する。
ここで、生成部23が出力する時系列データは、センサモータ信号の特徴量であるが、そのセンサモータ信号の特徴量は、例えば、信号出力部16(図1)において、センサモータ信号に変換され、そのセンサモータ信号のうちのモータ信号が、自律型ロボットに供給される。
なお、力学系近似モデル41が、例えば、RNNである場合、生成部23での時系列データの生成時には、内部状態量としてのRNNのコンテキストユニット(図3)に入力されるコンテキストの初期値、及び入力ユニット(図3)に入力されるデータの初期値として、例えば、ランダムな値が用いられる。
また、ある時刻t+1においてRNNの入力ユニット(図3)に入力されるデータとしては、直前の時刻tにおいてRNNの出力層から出力された、時刻t+1のデータの予測値が用いられる。
さらに、RNNの媒介ユニット(図3)に入力されるデータとしては、ステップS52において、生成部23が生成ノードに媒介時系列データとして供給する、生成ノードの位置の座標(x,y)が用いられる。
以上のように、下位階層のダイナミクス記憶ネットワーク処理部13では、下位階層ネットワークが獲得したダイナミクスに基づき、必要に応じて、時系列データを生成することができる。例えば、ある生成ノードを用い、その生成ノードが有する力学系近似モデル41としてのRNNから、100サンプルの時系列データを生成した場合、100サンプルの時系列データは、生成ノードが有する力学系近似モデル41としてのRNNが獲得したダイナミクスを有する学習データと同じような特性の時系列データとなる。
次に、図11のフローチャートを参照して、図1の上位階層のダイナミクス記憶ネットワーク処理部15による生成処理について説明する。
ステップS61において、上位階層のダイナミクス記憶ネットワーク処理部15では、生成部33が、上位階層ネットワークのノードから、生成ノードとするノードを、例えば、図10のステップS51の場合と同様に決定し、処理は、ステップS62に進む。
ステップS62では、生成部33は、生成ノードが保持する内部状態量を持つ力学系近似モデル41のパラメータに基づき、時系列データを、力学系近似モデル41の内部状態量を更新しながら生成して、処理は、ステップS63に進む。
ステップS63では、生成部33は、生成ノードの力学系近似モデル41から生成された時系列データを出力して、処理は終了する。
ここで、生成部33が出力する時系列データは、下位階層ネットワークのノードの位置の座標(x,y)の時系列データであるが、その時系列データは、例えば、信号出力部16(図1)を介して、外部に出力することができる。
また、生成部33が出力する時系列データは、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給することができる。
この場合、下位階層のダイナミクス記憶ネットワーク処理部13では、図10の生成処理のステップS51において、媒介信号供給部14からの媒介時系列データが表す座標(x,y)の位置(又は、その位置に最も近い位置)にある下位階層ネットワークのノードを生成ノードに決定し、その生成ノードを用いて、時系列データを生成することができる。
例えば、いま、上位階層のダイナミクス記憶ネットワーク処理部15において、図11の生成処理によって、上位階層ネットワークの生成ノードとしての、あるノードが有する力学系近似モデル41としてのRNNから、300サンプルの座標の時系列データが生成され、その時系列データの最初の100サンプルのサンプル値が(0,0)で、次の100サンプルのサンプル値が(0,1)で、最後の100サンプルのサンプル値が(1,1)であったとする。
また、下位階層ネットワークが、例えば、図2に示したように、2次元の格子状に配置された9個のノードN1ないしN9から構成されることとする。
この場合、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データの最初の100サンプルが、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給されるとき、下位階層のダイナミクス記憶ネットワーク処理部13では、図10の生成処理において、座標(0,0)の位置にあるノードN7を生成ノードとして用いて、時系列データが生成される。
また、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データの次の100サンプルが、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給されるとき、下位階層のダイナミクス記憶ネットワーク処理部13では、図10の生成処理において、座標(0,1)の位置にあるノードN1を生成ノードとして用いて、時系列データが生成され、上位階層のダイナミクス記憶ネットワーク処理部15で生成された時系列データの最後の100サンプルが、媒介信号供給部14を経由して、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給されるとき、下位階層のダイナミクス記憶ネットワーク処理部13では、図10の生成処理において、座標(1,1)の位置にあるノードN3を生成ノードとして用いて、時系列データが生成される。
なお、以上のように、上位階層のダイナミクス記憶ネットワーク処理部15は、下位階層ダイナミクス記憶ネットワーク処理部13と同様に、生成処理を行うことができるが、上位階層のダイナミクス記憶ネットワーク処理部15が生成処理だけを単独で行う必要はない(上位階層のダイナミクス記憶ネットワーク処理部15が、生成処理だけを単独で行うことはない)。
次に、図12のフローチャートを参照して、図1の下位階層のダイナミクス記憶ネットワーク処理部13による認識生成処理について説明する。
上述したように、認識生成処理によれば、自律型ロボットの認知行動を実現することができる。
下位階層のダイナミクス記憶ネットワーク処理部13において、内部状態量を持つ力学系近似モデル41によってダイナミクスを学習した下位階層ネットワークを用いて、認識生成を行う場合、図8の認識処理と図10の生成処理を逐次的に組み合わせるだけでは、力学系近似モデル41の内部状態量を考慮した認識生成を行うことは困難である。
そこで、下位階層のダイナミクス記憶ネットワーク処理部13は、内部状態記憶部25において、図8の認識処理において更新された力学系近似モデル41の内部状態量(内部状態)を記憶し、その内部状態量を図10の生成処理において用いることで、観測信号から得られる時刻tの入力時系列データに対して、次の時刻t+1の入力時系列データの予測値を生成する認識生成処理を行う。
認識生成処理では、ステップS71において、認識部22に対して、認識データが供給される。
すなわち、信号入力部11から特徴量抽出部12に対して、適当な長さの観測信号が供給されると、特徴量抽出部12は、信号入力部11からの観測信号から特徴量を抽出し、その特徴量の時系列を、入力時系列データとして、ダイナミクス記憶ネットワーク処理部13の認識部22に供給する。
一方、媒介信号供給部14は、特徴量抽出部12から認識部22に対しての、入力時系列データの供給のタイミングに同期して、媒介時系列データを、認識部22に供給する。
以上のようにして、認識部22に対して、入力時系列データと媒介時系列データとのセットが、認識データとして供給される。
その後、処理は、ステップS71からステップS72に進み、認識部22は、認識データに対する、下位階層ネットワークの各ノードのスコアの計算を、図6の学習処理の場合と同様に、ノードが有する、内部状態量を持つ力学系近似モデル41の内部状態量を更新しながら行う。
但し、ステップS72のスコアの計算では、認識部22は、内部状態記憶部25から前回更新されて記憶されている内部状態量を読み込み、その内部状態記憶部25から読み込んだ値を、力学系近似モデル41の内部状態量(例えば、RNNのコンテキスト)の初期値とする。
下位階層ネットワークのすべてのノードのスコアが求められると、処理は、ステップS72からステップS73に進み、認識部22は、下位階層ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、認識データに最も適合するノードである勝者ノードに決定する。
さらに、ステップS73では、認識部22は、勝者ノードが決定されたときの内部状態量の更新値(更新された内部状態量)と、その勝者ノードが決定されたときの内部状態量の初期値とを、内部状態記憶部25に保存する(記憶させる)。
ここで、内部状態記憶部25に記憶された内部状態量の更新値は、認識部22での次回のスコアの計算を行うステップS72において、力学系近似モデル41の内部状態量(例えば、RNNのコンテキスト)の初期値として用いられる。
また、内部状態記憶部25に記憶された内部状態量の初期値は、生成部23において、時系列データの生成時に用いられる。
その後、認識部22は、勝者ノードを表す情報を出力し、処理は、ステップS73からステップS74に進む。認識部22が出力した情報は、生成部23に供給される。
ステップS74では、認識部22は、認識データとしての入力時系列データと媒介時系列データとのセットのうちの、媒介時系列データを調整し、その調整後の認識データを、媒介信号供給部14に供給する。
すなわち、ステップS74では、認識部22は、図6の学習処理の場合と同様に、認識データのうちの媒介時系列データを、勝者ノードの位置の座標(x,y)を表す定常信号に変換し、下位媒介信号として出力する。ステップS74において認識部22が出力する下位媒介信号は、媒介信号供給部14に供給され、さらに、媒介信号供給部14から、上位階層のダイナミクス記憶ネットワーク処理部15に供給される。
その後、処理は、ステップS74からステップS75に進み、生成部23は、下位階層ネットワークのノードのうちの、認識部22からの情報が表す勝者ノードを、生成ノードとして、その生成ノードが保持する内部状態量を持つ力学系近似モデル41のパラメータに基づき、時系列データを、力学系近似モデル41の内部状態量を更新しながら生成して、処理は、ステップS76に進む。
すなわち、生成部23は、内部状態記憶部25の記憶値を、ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークの生成ノードの力学系近似モデル41の内部状態量の初期値として読み込む。
つまり、生成部23は、内部状態記憶部25の記憶値のうちの、生成ノードが認識部22において勝者ノードに決定されたときの内部状態量の初期値を読み出し、生成ノードの力学系近似モデル41の内部状態量の初期値にセットする。
さらに、生成部23は、認識データのうちの入力時系列データを、生成ノードの力学系近似モデル41に与えるとともに、生成ノードの位置の座標(x,y)を、媒介時系列データとして、生成ノードの力学系近似モデル41に与え、その力学系近似モデル41の内部状態量を更新しながら、時系列データを生成する。
具体的には、力学系近似モデル41が、例えば、RNNである場合、RNNのコンテキストユニット(図3)に対して、内部状態記憶部25の記憶値のうちの、生成ノードが認識部22において勝者ノードに決定されたときのコンテキストの初期値が、時系列データを生成するときのコンテキストの初期値として入力される。
さらに、RNNの入力ユニット(図3)に対して、認識データのうちの入力時系列データが入力され、RNNの媒介ユニット(図3)に対して、生成ノードの位置の座標(x,y)が入力される。
そして、力学系近似モデル41の内部状態量を更新しながら、認識データのうちの入力時系列データの次の時刻の入力時系列データの予測値としての時系列データが生成される。
ステップS76では、生成部23は、生成ノードの力学系近似モデル41から生成された時系列データを出力して、処理は、ステップS71に戻り、以下、ステップS71ないしS76の処理が繰り返される。
生成部23が出力する時系列データは、センサモータ信号の特徴量であるが、そのセンサモータ信号の特徴量は、例えば、信号出力部16(図1)において、センサモータ信号に変換され、そのセンサモータ信号のうちのモータ信号が、自律型ロボットに供給される。
以上のような、図12ステップS71ないしS76の認識生成処理が、1時刻ごとに行われることで、ロボットは認知行動を行う。
下位階層のダイナミクス記憶ネットワーク処理部13において、図12の認識生成処理が行われる場合(さらには、上述したように、図6の学習処理、及び図8の認識処理が行われる場合も)、上位階層のダイナミクス記憶ネットワーク処理部15では、認識生成処理が行われる。
図13のフローチャートを参照して、図1の上位階層のダイナミクス記憶ネットワーク処理部15による認識生成処理について説明する。
下位階層のダイナミクス記憶ネットワーク処理部13において、図12の認識生成処理が行われる場合、下位階層ネットワークの勝者ノード(生成ノード)の座標(x,y)の時系列が、下位媒介信号として、下位階層のダイナミクス記憶ネットワーク処理部13から媒介信号供給部14に供給される。
媒介信号供給部14は、下位媒介信号としての勝者ノードの座標(x,y)の時系列を、適切な長さの時系列データに区切り、媒介信号として、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
上位階層のダイナミクス記憶ネットワーク処理部15では、媒介信号供給部14からの媒介信号としての、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データを、認識データとして、認識生成処理が行われる。
上位階層のダイナミクス記憶ネットワーク処理部15の認識生成処理では、ステップS81において、認識部32に対して、認識データが供給される。
すなわち、下位階層のダイナミクス記憶ネットワーク処理部13が図12の認識生成処理を行うことにより、上述したように、媒介信号供給部14が、媒介信号として、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データを、上位階層のダイナミクス記憶ネットワーク処理部15に供給するが、ステップS81では、その媒介信号が、認識データとして、認識部32に供給される。
その後、処理は、ステップS81からステップS82に進み、認識部32は、認識データに対する、上位階層ネットワークの各ノードのスコアの計算を、図6の学習処理の場合と同様に、ノードが有する、内部状態量を持つ力学系近似モデル41の内部状態量を更新しながら行う。
但し、ステップS82のスコアの計算では、認識部32は、内部状態記憶部35から前回更新されて記憶されている内部状態量を読み込み、その内部状態記憶部35から読み込んだ値を、力学系近似モデル41の内部状態量(例えば、RNNのコンテキスト)の初期値とする。
そして、認識部32は、認識部22が図12の認識生成処理で行う場合と同様に、認識データを用い、ノードが有する力学系近似モデル41の内部状態量を更新しながら、スコアの計算を行う。
上位階層ネットワークのすべてのノードのスコアが求められると、処理は、ステップS82からステップS83に進み、認識部32は、上位階層ネットワークを構成するノードそれぞれのスコアを比較することによって、最もスコアの良いノードを、認識データに最も適合するノードである勝者ノードに決定する。
さらに、ステップS83では、認識部32は、勝者ノードが決定されたときの内部状態量の更新値(更新された内部状態量)と、その勝者ノードが決定されたときの内部状態量の初期値とを、内部状態記憶部35に保存する(記憶させる)。
ここで、内部状態記憶部35に記憶された内部状態量の更新値は、認識部32での次回のスコアの計算を行うステップS82において、力学系近似モデル41の内部状態量(例えば、RNNのコンテキスト)の初期値として用いられる。
また、内部状態記憶部35に記憶された内部状態量の初期値は、生成部33において、時系列データの生成時に用いられる。
その後、認識部32は、勝者ノードを表す情報を出力し、処理は、ステップS83からステップS84に進む。認識部32が出力した情報は、生成部33に供給される。
ステップS84では、生成部33は、上位階層ネットワークのノードのうちの、認識部32からの情報が表す勝者ノードを、生成ノードとして、その生成ノードが保持する内部状態量を持つ力学系近似モデル41のパラメータに基づき、時系列データを、力学系近似モデル41の内部状態量を更新しながら生成して、処理は、ステップS85に進む。
すなわち、生成部33は、内部状態記憶部35の記憶値を、ネットワーク記憶部24に記憶されたダイナミクス記憶ネットワークの生成ノードの力学系近似モデル41の内部状態量の初期値として読み込む。
つまり、生成部33は、内部状態記憶部35の記憶値のうちの、生成ノードが認識部32において勝者ノードに決定されたときの内部状態量の初期値を読み出し、生成ノードの力学系近似モデル41の内部状態量の初期値にセットする。
さらに、生成部33は、認識データ、つまり、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データを、生成ノードの力学系近似モデル41に与え、その力学系近似モデル41の内部状態量を更新しながら、時系列データを生成する。
具体的には、力学系近似モデル41が、例えば、RNNである場合、RNNのコンテキストユニット(図4)に対して、内部状態記憶部35の記憶値のうちの、生成ノードが認識部32において勝者ノードに決定されたときのコンテキストの初期値が、時系列データを生成するときのコンテキストの初期値として入力される。
さらに、RNNの入力ユニット(図3)に対して、認識データ、つまり、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データが入力される。
そして、力学系近似モデル41の内部状態量を更新しながら、認識データ、つまり、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データの次の時刻の予測値としての時系列データ、すなわち、下位階層ネットワークのノードのうちの、次の時刻に勝者ノードとなるであろうノードの位置の座標(x,y)の予測値が生成される。
ステップS85では、生成部33は、生成ノードの力学系近似モデル41から生成された時系列データを出力して、処理は、ステップS81に戻り、以下、ステップS81ないしS86の処理が繰り返される。
生成部33が出力する時系列データは、上位媒介信号として、媒介信号供給部14に供給される。媒介信号供給部14は、生成部33からの上位媒介信号を、適切な長さに区切り、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給する。
次に、図14を参照して、図1の媒介信号供給部14の処理について説明する。
媒介信号供給部14は、上位階層のダイナミクス記憶ネットワーク処理部15から供給される上位媒介信号を、一定の時間間隔でサンプリングされた時系列データとして、その時系列データから、例えば、100サンプル等の所定のサンプル数のサンプルを、1サンプルずつシフトしながら逐次抽出し、その結果得られる100サンプルの時系列データを、媒介時系列データとして、下位階層のダイナミクス記憶ネットワーク処理部13に供給する。
また、媒介信号供給部14は、下位階層のダイナミクス記憶ネットワーク処理部13から供給される下位媒介信号を、一定の時間間隔でサンプリングされた時系列データとして、その時系列データから、媒介時系列データよりもサンプル数が多い、例えば、300サンプル等を、1サンプルずつシフトしながら逐次抽出し、その結果得られる300サンプルの時系列データを、力学系近似モデル41としての、例えば、RNNの入力層の入力ユニットに入力される入力データとして、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
なお、媒介信号供給部14は、下位階層のダイナミクス記憶ネットワーク処理部13に供給する媒介時系列データの長さ(サンプル数)や、供給のタイミングを、特徴量抽出部12が出力する入力時系列データに応じて調整する。
すなわち、例えば、特徴量抽出部12が、各時刻において、入力時系列データとして100サンプルを出力する場合、媒介信号供給部14は、その入力時系列データと同一のサンプル数である100サンプルの媒介時系列データを、特徴量抽出部12が入力時系列データを出力するタイミングと同一のタイミングで、下位階層のダイナミクス記憶ネットワーク処理部13に供給する。
次に、ダイナミクス記憶ネットワーク処理部13及び15において、例えば、認識生成処理が行われていることとして、媒介信号供給部14の処理について説明する。
例えば、いま、下位階層のダイナミクス記憶ネットワーク処理部13が、時刻tにおいて、時刻tの入力時系列データと、媒介信号供給部14からの時刻tの媒介時系列データとのセットを認識データとして、図12の認識生成処理(以下、適宜、下位階層認識生成処理という)を行ったこととすると、時刻tにおける下位階層認識生成処理では、時刻tの下位媒介信号が、下位階層のダイナミクス記憶ネットワーク処理部13から媒介信号供給部14に供給される(A)。
ここで、時刻tの下位媒介信号は、時刻tにおける下位階層認識生成処理で、勝者ノードとなったノードの位置の座標(x,y)を表す。
媒介信号供給部14は、下位階層のダイナミクス記憶ネットワーク処理部13からの下位媒介信号としての時系列データから、下位階層のダイナミクス記憶ネットワーク処理部13に供給される入力時系列データのサンプル数よりも多いサンプル数の時系列データ(例えば、上述したように、300サンプルの時系列データ)を抽出し、入力データとして、上位階層のダイナミクス記憶ネットワーク処理部15に供給する(B)。
以上のように、上位階層のダイナミクス記憶ネットワーク処理部15には、下位階層のダイナミクス記憶ネットワーク処理部15に供給される入力時系列データのサンプル数よりも多いサンプル数の時系列データが、入力データとして供給されるので、上位階層のダイナミクス記憶ネットワーク処理部15では、下位階層のダイナミクス記憶ネットワーク処理部13が扱う時系列データよりも時間的に長い時系列データ(ひいては、いわば、よりマクロなダイナミクス)が扱われる。
上位階層のダイナミクス記憶ネットワーク処理部15は、時刻tにおいて、媒介信号供給部14からの入力データを、認識データとして、図13の認識生成処理(以下、適宜、上位階層認識生成処理という)を行い、これにより、下位階層のダイナミクス記憶ネットワーク処理部13における勝者ノードの座標(x,y)の時系列データの次の時刻t+1の予測値としての時系列データ、すなわち、下位階層ネットワークのノードのうちの、次の時刻t+1に勝者ノードとなるであろうノードの位置の座標(x,y)の予測値が生成される。
上位階層のダイナミクス記憶ネットワーク処理部15は、時刻t+1の下位階層ネットワークの勝者ノードの位置の座標(x,y)の予測値の時系列データを、上位媒介信号として、媒介信号供給部14に供給する(C)。
媒介信号供給部14は、上位階層のダイナミクス記憶ネットワーク処理部15からの上位媒介信号から、入力時系列データのサンプル数に等しいサンプル数のサンプルを抽出し、時刻t+1の媒介時系列データとして、次の時刻t+1の入力時系列データが特徴量抽出部12から出力されるタイミングで、下位階層のダイナミクス記憶ネットワーク処理部13に供給する(D)。
下位階層のダイナミクス記憶ネットワーク処理部13では、時刻t+1において、特徴量抽出部12が出力する時刻t+1の入力時系列データと、媒介信号供給部14からの時刻t+1の媒介時系列データとのセットを認識データとして、図12の下位階層認識生成処理が行われる。
そして、時刻t+1における下位階層認識生成処理では、時刻t+1の下位媒介信号が、下位階層のダイナミクス記憶ネットワーク処理部13から媒介信号供給部14に供給され(A)、以下、同様の処理が繰り返される。
なお、下位階層のダイナミクス記憶ネットワーク処理部13において、最初に、下位階層認識生成処理が行われるときには、上位階層のダイナミクス記憶ネットワーク処理部15では、まだ、上位階層認識処理が行われていないため、媒介信号供給部14は、下位階層のダイナミクス記憶ネットワーク処理部13が下位階層認識生成処理を行うために、所定の時系列データを、最初の媒介時系列データとして供給する。
最初の媒介時系列データとしては、例えば、下位階層ネットワークのノードの位置の座標としてとり得る範囲の値の乱数を採用することができる。また、最初の媒介時系列データとしては、例えば、下位階層ネットワークの各ノードごとに、そのノードの位置の座標を与えることができる。
以上のように、図1のデータ処理装置では、媒介信号供給部14が、下位階層のダイナミクス記憶ネットワーク処理部13と、上位階層のダイナミクス記憶ネットワーク処理部15とに、媒介信号を供給することにより、下位階層ネットワークと上位階層ネットワークとが、密接に相互に作用する階層構造が構成され、そのような階層構造を構成する下位階層ネットワークと上位階層ネットワークにおいて、供給される時系列データの力学的な特性がダイナミクスとして記憶される。すなわち、下位階層ネットワークには、いわば基本単位となるダイナミクスが記憶され、上位階層ネットワークには、下位階層のノードの遷移がダイナミクスとして記憶される。
したがって、下位階層ネットワーク、及び上位階層ネットワークの全体において、多数のダイナミクスを効率的に、学習、記憶することができ、さらに、そのような多数のダイナミクスを利用して、認識生成処理を行うことで、多様な認知行動を行う自律型ロボットを実現することができる。
次に、図15は、本発明を適用したデータ処理装置の他の一実施の形態の構成例を示すブロック図である。
なお、図中、図1の場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
図15において、データ処理装置は、ダイナミクス記憶部51が新たに設けられている他は、図1の場合と同様に構成されている。
なお、図15では、信号入力部11、特徴量抽出部12、及び信号出力部16の図示は、省略してある。
図1のデータ処理装置では、媒介信号として、下位階層ネットワークのノードの位置の、2次元座標系上の座標(x,y)を採用したため、媒介信号は、2次元の信号(2次元のベクトル)となる。
ここで、下位階層ネットワークのノードが有する力学系近似モデル41(図3)としての、例えば、RNNの入力層には、媒介信号を入力することができるだけの媒介ユニットを設ける必要がある。したがって、媒介信号が2次元の信号である場合には、RNNの入力層には、2個の媒介ユニットが必要となる。
媒介信号としては、2次元の信号の他、2次元以上のN次元の信号を採用することが可能である。
すなわち、媒介信号としては、下位階層ネットワークのノードの位置の座標(x,y)を表す定常信号に代えて、例えば、下位階層ネットワークの各ノードが保持するダイナミクスに応じて、不動点ダイナミクスやリミットサイクルダイナミクスを有するN次元の時系列データを採用することができる。
媒介信号となるN次元の時系列データのダイナミクスとしては、例えば、3次元空間上において、原点を中心とする円運動を与えるリミットサイクルダイナミクスを採用することができる。このようなリミットサイクルダイナミクスとしては、円運動における半径距離や周期などの組み合わせによって、様々なリミットサイクルダイナミクスがある。
図15において、ダイナミクス記憶部51は、あらかじめ設計された、N次元空間上における不動点ダイナミクスやリミットサイクルダイナミクス等のダイナミクスを記憶している。
また、下位階層ネットワークの各ノードには、そのノードが保持するダイナミクスに応じて、ダイナミクス記憶部51に記憶されたダイナミクスが割り当てられている。
この場合、媒介信号供給部14は、ダイナミクス記憶部51に記憶されたダイナミクスのうちの、下位階層ネットワークの勝者ノードに割り当てられたダイナミクスを有するN次元の時系列データを生成し、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
上位階層のダイナミクス記憶ネットワーク処理部15では、学習処理において、媒介信号供給部14からのN次元の時系列データを学習データとして学習が行われ、これにより、上位階層ネットワークにおいて、ダイナミクス記憶部51に記憶されたダイナミクスを組み合わせたアトラクタダイナミクスが自己組織的に学習され、記憶される。
そして、上位階層のダイナミクス記憶ネットワーク処理部15は、認識生成処理において、上位階層ネットワークに記憶されたアトラクタダイナミクスを有する時系列データを、上位媒介信号として、媒介信号供給部14に供給する。
媒介信号供給部14は、上位階層のダイナミクス記憶ネットワーク処理部15からの上位媒介信号から、媒介時系列データとなる時系列データを抽出し、下位階層のダイナミクス記憶ネットワーク処理部13に供給する。
下位階層のダイナミクス記憶ネットワーク処理部13では、媒介信号供給部14から供給される媒介時系列データ、すなわち、上位階層ネットワークに記憶されたアトラクタダイナミクスを有する時系列データを用いて学習処理や認識生成処理等が行われる。
なお、下位階層のダイナミクス記憶ネットワーク処理部13の学習処理では、下位階層ネットワークにおける各ノードのパラメータの更新が、そのノードに割り当てられたダイナミクスを有する時系列データを媒介時系列データとして用いて行われる。その結果、下位階層ネットワークにおける各ノードには、入力時系列データと、そのノードに割り当てられたダイナミクスを有する時系列データとのセットのダイナミクスが記憶される。
また、下位階層のダイナミクス記憶ネットワーク処理部13では、下位階層ネットワークの勝者ノードの情報が、下位媒介信号として、媒介信号供給部14に供給される。媒介信号供給部14は、上述したように、ダイナミクス記憶部51に記憶されたダイナミクスのうちの、下位媒介信号が表す下位階層ネットワークの勝者ノードに割り当てられたダイナミクスを有するN次元の時系列データを生成し、上位階層のダイナミクス記憶ネットワーク処理部15に供給する。
以上のように、図15のデータ処理装置では、媒介信号供給部14から上位階層のダイナミクス記憶ネットワーク処理部15に供給される媒介信号としての時系列データが、下位階層ネットワークのノードの位置の座標(x,y)ではなく、下位階層ネットワークの勝者ノードに割り当てられた、ダイナミクス記憶部51に記憶されたダイナミクスを有するN次元の時系列データである点が、図1のデータ処理装置と異なる。
さらに、図15のデータ処理装置では、媒介信号供給部14から下位階層のダイナミクス記憶ネットワーク処理部13に供給される媒介信号としての時系列データが、下位階層ネットワークのノードの位置の座標(x,y)ではなく、上位階層ネットワークにおいて、ダイナミクス記憶部51に記憶されたダイナミクスを有するN次元の時系列データから獲得されたダイナミクスを有するN次元の時系列データである点が、図1のデータ処理装置と異なる。
なお、図1のデータ処理装置のように、媒介信号供給部14から下位階層のダイナミクス記憶ネットワーク処理部13、及び上位階層のダイナミクス記憶ネットワーク処理部15に供給される媒介信号として、下位階層ネットワークのノードの位置の座標(x,y)(を表す定常信号)を採用することは、2次元空間の格子状の点に配置される不動点ダイナミクスをあらかじめ用意しておき、その浮動点ダイナミクスを、下位階層ネットワークの各ノードに、そのノードの2次元空間上の位置に応じてを割り当てることに相当する。
したがって、図15のデータ処理装置のように、ダイナミクス記憶部51に記憶された、N次元空間上における不動点ダイナミクスやリミットサイクルダイナミクス等のダイナミクスを、下位階層ネットワークの各ノードに割り当てる方法は、下位階層ネットワークのノードに対して割り当てられるダイナミクスを、より一般化した方法であるということができる。
図15のデータ処理装置では、以上のように、ダイナミクス記憶部51に記憶されたN次元空間上における不動点ダイナミクスやリミットサイクルダイナミクス等のダイナミクスを、下位階層ネットワークの各ノードに割り当て、媒介信号供給部14から上位階層のダイナミクス記憶ネットワーク処理部15に対して、下位階層ネットワークの勝者ノードに割り当てられた、ダイナミクス記憶部51に記憶されたダイナミクスを有するN次元の時系列データを、媒介信号として供給するので、上位階層ネットワークは、入力時系列データのダイナミクスの遷移のダイナミクス(入力時系列データのダイナミクスを、いわばマクロに見たもの)を、ダイナミクス記憶部51に記憶されたダイナミクスで表したものを学習し、記憶する。
したがって、ダイナミクス記憶部51に、2次元空間や3次元空間上のダイナミクスを記憶させておくことにより、上位階層ネットワークでは、入力時系列データのダイナミクスの遷移のダイナミクスを、ダイナミクス記憶部51に記憶されたダイナミクスに低次元化して記憶することができる。その結果、図15のデータ処理装置全体として、多数のダイナミクスを効率的に学習し、記憶することができる。
以上のように、図1及び図15のデータ処理装置によれば、2つのダイナミクス記憶ネットワーク処理部13及び15のうちの、一方のダイナミクス記憶ネットワーク処理部13を下位階層とするとともに、他方のダイナミクス記憶ネットワーク処理部15を上位階層として、下位階層のダイナミクス記憶ネットワーク処理部13の下位階層ネットワークと、上位階層のダイナミクス記憶ネットワーク処理部15の上位階層ネットワークとの間を媒介するための媒介信号を、下位階層のダイナミクス記憶ネットワーク処理部13、及び上位階層のダイナミクス記憶ネットワーク処理部15に供給するので、下位階層ネットワークと上位階層ネットワークとは、2階層の階層構造を構成する。
そして、学習処理では、媒介信号を含む時系列データに基づき、2階層の階層構造を構成する下位階層ネットワーク及び上位階層ネットワークの各ダイナミクスを自己組織的に更新するので、ダイナミクスを効率的に記憶することができる。
また、認識生成処理では、2階層の階層構造を構成する下位階層ネットワーク、及び上位階層ネットワークにおいて、媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定し、さらには、その勝者ノードが保持するダイナミクスを有する時系列データを生成するので、ダイナミクスを効率的に記憶した下位階層ネットワーク及び上位階層ネットワークを利用して、時系列データの認識や生成を行うことができる。
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
そこで、図16は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク105やROM103に予め記録しておくことができる。
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体111に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体111は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体111からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部108で受信し、内蔵するハードディスク105にインストールすることができる。
コンピュータは、CPU(Central Processing Unit)102を内蔵している。CPU102には、バス101を介して、入出力インタフェース110が接続されており、CPU102は、入出力インタフェース110を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部107が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)103に格納されているプログラムを実行する。あるいは、また、CPU102は、ハードディスク105に格納されているプログラム、衛星若しくはネットワークから転送され、通信部108で受信されてハードディスク105にインストールされたプログラム、またはドライブ109に装着されたリムーバブル記録媒体111から読み出されてハードディスク105にインストールされたプログラムを、RAM(Random Access Memory)104にロードして実行する。これにより、CPU102は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU102は、その処理結果を、必要に応じて、例えば、入出力インタフェース110を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部106から出力、あるいは、通信部108から送信、さらには、ハードディスク105に記録等させる。
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
すなわち、ダイナミクス記憶ネットワークのノードが有するモデルとしては、例えば、内部状態量を有しない力学系近似モデルや、力学系近似モデル以外のダイナミクスの学習及び記憶を行うことができるモデルを採用することができる。
また、本実施の形態では、データ処理装置(図1、及び図15)に、2つのダイナミクス記憶ネットワーク処理部13及び15を設けることとしたが、3以上のダイナミクス記憶ネットワーク処理部を設けることが可能である。
例えば、図1のデータ処理装置には、2つのダイナミクス記憶ネットワーク処理部13及び15に加えて、ダイナミクス記憶ネットワーク処理部15の、さらに上位階層のダイナミクス記憶ネットワーク処理部(以下、3番目のダイナミクス記憶ネットワーク処理部という)を設けることが可能である。
この場合、ダイナミクス記憶ネットワーク処理部15と、3番目のダイナミクス記憶ネットワーク処理部との間に、媒介信号供給部14と同様の媒介信号供給部(以下、2番目の媒介信号供給部という)が設けられる。
そして、2番目の媒介信号供給部は、ダイナミクス記憶ネットワーク処理部15を下位階層とし、3番目のダイナミクス記憶ネットワーク処理部を上位階層として、媒介信号を供給する。
なお、2番目の媒介信号供給部が、3番目のダイナミクス記憶ネットワーク処理部に供給する媒介信号は、ダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークの勝者ノードの位置の座標であり、したがって、2番目の媒介信号供給部が、ダイナミクス記憶ネットワーク処理部15に供給する媒介信号は、ダイナミクス記憶ネットワークのノードの位置の座標である。
そして、ダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークのノードは、ダイナミクス記憶ネットワーク処理部13のダイナミクス記憶ネットワークのノード(図3)と同様に構成され、ダイナミクス記憶ネットワーク処理部15は、媒介信号供給部14から供給される媒介信号を、入力時系列データに対応する時系列データとするとともに、2番目の媒介信号供給部から供給される媒介信号を、媒介時系列データに対応する時系列データとして、その2つの時系列データのセットを対象として、ダイナミクス記憶ネットワーク処理部13と同様の処理を行う。
また、3番目のダイナミクス記憶ネットワーク処理部のダイナミクス記憶ネットワークのノードは、ダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークのノード(図4)と同様に構成され、3番目のダイナミクス記憶ネットワーク処理部は、2番目の媒介信号供給部から供給される媒介信号を対象として、図1のデータ処理装置が、2つのダイナミクス記憶ネットワーク処理部13及び15で構成される場合の、ダイナミクス記憶ネットワーク処理部15と同様の処理を行う。
以上のように、媒介信号供給部14において、ダイナミクス記憶ネットワーク処理部13及び15のダイナミクス記憶ネットワークどうしの間を媒介するための媒介信号を、ダイナミクス記憶ネットワーク処理部13及び15に供給するとともに、2番目の媒介信号供給部において、ダイナミクス記憶ネットワーク処理部15と3番目のダイナミクス記憶ネットワーク処理部のダイナミクス記憶ネットワークどうしの間を媒介するための媒介信号を、ダイナミクス記憶ネットワーク処理部15と3番目のダイナミクス記憶ネットワーク処理部に供給することで、ダイナミクス記憶ネットワーク処理部13,15、及び、3番目のダイナミクス記憶ネットワーク処理部のダイナミクス記憶ネットワークは、ダイナミクス記憶ネットワーク処理部13のダイナミクス記憶ネットワークを最下位階層とし、ダイナミクス記憶ネットワーク処理部15のダイナミクス記憶ネットワークを最下位階層から2番目の階層とし、3番目のダイナミクス記憶ネットワーク処理部のダイナミクス記憶ネットワークを最上位階層とする3階層の階層構造を構成する。
11 信号入力部, 12 特徴量抽出部, 13 ダイナミクス記憶ネットワーク処理部, 14 媒介信号供給部, 15 ダイナミクス記憶ネットワーク処理部, 16 信号出力部, 21 学習部, 22 認識部, 23 生成部, 24 ネットワーク記憶部, 25 内部状態記憶部, 31 学習部, 32 認識部, 33 生成部, 34 ネットワーク記憶部, 35 内部状態記憶部, 41 力学系近似モデル, 42 学習調整部, 51 ダイナミクス記憶部, 101 バス, 102 CPU, 103 ROM, 104 RAM, 105 ハードディスク, 106 出力部, 107 入力部, 108 通信部, 109 ドライブ, 110 入出力インタフェース, 111 リムーバブル記録媒体
Claims (15)
- ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、
供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段と、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段と
を備え、
前記学習手段は、前記供給手段から供給される前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する
データ処理装置。 - 前記学習手段は、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、
前記勝者ノードから各ノードまでの距離に応じて、各ノードが保持するダイナミクスを更新する程度を表す学習重みを決定し、
各ノードが保持するダイナミクスを、各ノードの学習重みに応じて、供給される時系列データのダイナミクスに近くなるように、自己組織的に更新する
請求項1に記載のデータ処理装置。 - 前記ノードは、内部状態量を持つ力学系近似モデルによってモデル化されたダイナミクスを保持する
請求項1に記載のデータ処理装置。 - 前記ノードは、リカレントニューラルネットワークによってモデル化されたダイナミクスを保持する
請求項1に記載のデータ処理装置。 - 前記供給手段は、前記下位階層のダイナミクス記憶ネットワーク処理手段の前記ダイナミクス記憶ネットワークを構成するノードの位置の座標を表す信号を、前記媒介信号として供給する
請求項1に記載のデータ処理装置。 - 前記下位階層のダイナミクス記憶ネットワーク処理手段の前記ダイナミクス記憶ネットワークを構成するノードに割り当てられるダイナミクスを記憶するダイナミクス記憶手段をさらに備え、
前記供給手段は、前記ダイナミクス記憶手段に記憶されたダイナミクスを有する時系列データを、前記媒介信号として供給する
請求項1に記載のデータ処理装置 - 前記ダイナミクス記憶ネットワーク処理手段は、供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段をさらに有する
請求項1に記載のデータ処理装置。 - 前記ダイナミクス記憶ネットワーク処理手段は、時系列データの生成に用いるノードである生成ノードを決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段をさらに有する
請求項1に記載のデータ処理装置。 - 前記ダイナミクス記憶ネットワーク処理手段は、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段と
をさらに有する
請求項1に記載のデータ処理装置。 - ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、
供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段
を備えるデータ処理装置のデータ処理方法において、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記下位階層のダイナミクス記憶ネットワーク処理手段に供給するステップと、
前記媒介信号を、前記上位階層のダイナミクス記憶ネットワーク処理手段に供給するステップと、
前記学習手段が、前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新するステップと
を含むデータ処理方法。 - コンピュータを、
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、
供給される時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する学習手段と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段と、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段と
して機能させるためのプログラムであり、
前記学習手段が、前記供給手段から供給される前記媒介信号を含む時系列データに基づき、前記ダイナミクス記憶ネットワークの各ダイナミクスを自己組織的に更新する
プログラム。 - ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段と、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段と
を備え、
前記認識手段は、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定する
データ処理装置。 - 前記ノードは、内部状態量を持つ力学系近似モデルによって、ダイナミクスを保持し、
前記認識手段は、供給される時系列データに基づいて、前記内部状態量を更新しながら、供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、
前記ダイナミクス記憶ネットワーク処理手段は、前記勝者ノードを決定する処理において得られる前記内部状態量を記憶する内部状態記憶手段をさらに有し、
前記生成手段は、前記内部状態記憶手段の記憶値に基づいて、前記生成ノードの力学系近似モデルの前記内部状態量を決定して、その内部状態量を更新しながら、時系列データを生成する
請求項12に記載のデータ処理装置。 - ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段
を備えるデータ処理装置のデータ処理方法において、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記下位階層のダイナミクス記憶ネットワーク処理手段に供給するステップと、
前記媒介信号を、前記上位階層のダイナミクス記憶ネットワーク処理手段に供給するステップと、
前記認識手段が、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定するステップと
を含むデータ処理方法。 - コンピュータを、
ダイナミクスを1つのノードに保持し、複数のノードによって構成されるダイナミクス記憶ネットワークを記憶するネットワーク記憶手段と、
供給される時系列データに最も適合するダイナミクスを保持するノードである勝者ノードを決定し、その勝者ノードを表す情報を、供給される時系列データの認識結果として出力する認識手段と、
前記認識手段が出力する情報が表す勝者ノードを、時系列データの生成に用いるノードである生成ノードに決定し、前記生成ノードが保持するダイナミクスを有する時系列データを生成する生成手段と
を有する少なくとも2つのダイナミクス記憶ネットワーク処理手段と、
前記2つのダイナミクス記憶ネットワーク処理手段のうちの、一方を下位階層のダイナミクス記憶ネットワーク処理手段とするとともに、他方を上位階層のダイナミクス記憶ネットワーク処理手段として、前記下位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークと、前記上位階層のダイナミクス記憶ネットワーク処理手段のダイナミクス記憶ネットワークとの間を媒介するための媒介信号を、前記上位階層及び下位階層のダイナミクス記憶ネットワーク処理手段に供給する供給手段と
して機能させるためのプログラムであり、
前記認識手段が、前記供給手段から供給される前記媒介信号を含む時系列データに最も適合するダイナミクスを保持する勝者ノードを決定する
プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007217831A JP2009053782A (ja) | 2007-08-24 | 2007-08-24 | データ処理装置、データ処理方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007217831A JP2009053782A (ja) | 2007-08-24 | 2007-08-24 | データ処理装置、データ処理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009053782A true JP2009053782A (ja) | 2009-03-12 |
Family
ID=40504840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007217831A Withdrawn JP2009053782A (ja) | 2007-08-24 | 2007-08-24 | データ処理装置、データ処理方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009053782A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107111785A (zh) * | 2014-03-04 | 2017-08-29 | 迈克尔·曼希 | 计算装置中的类空计算 |
WO2017183523A1 (ja) * | 2016-04-19 | 2017-10-26 | Cocoro Sb株式会社 | 感情決定システム、システム及びプログラム |
CN108289195A (zh) * | 2017-12-28 | 2018-07-17 | 中国电子科技集团公司第五十四研究所 | 一种传感器与光电设备联动方法 |
-
2007
- 2007-08-24 JP JP2007217831A patent/JP2009053782A/ja not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107111785A (zh) * | 2014-03-04 | 2017-08-29 | 迈克尔·曼希 | 计算装置中的类空计算 |
WO2017183523A1 (ja) * | 2016-04-19 | 2017-10-26 | Cocoro Sb株式会社 | 感情決定システム、システム及びプログラム |
JP2017194805A (ja) * | 2016-04-19 | 2017-10-26 | Cocoro Sb株式会社 | 感情決定システム、システム及びプログラム |
CN109074509A (zh) * | 2016-04-19 | 2018-12-21 | 情感爱思比株式会社 | 情感确定系统、系统及程序 |
CN108289195A (zh) * | 2017-12-28 | 2018-07-17 | 中国电子科技集团公司第五十四研究所 | 一种传感器与光电设备联动方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4803212B2 (ja) | データ処理装置、データ処理方法、及びプログラム | |
KR20070100160A (ko) | 학습 장치, 학습 방법, 및 프로그램 | |
JP4710933B2 (ja) | 学習装置、学習方法、およびプログラム | |
JP2007299366A (ja) | 学習装置および学習方法、認識装置および認識方法、生成装置および生成方法、認識生成装置および認識生成方法、並びにプログラム | |
JP4710932B2 (ja) | 学習装置、学習方法、およびプログラム | |
JP4710931B2 (ja) | 学習装置、学習方法、およびプログラム | |
JP4169063B2 (ja) | データ処理装置、データ処理方法、及びプログラム | |
JP4201012B2 (ja) | データ処理装置、データ処理方法、およびプログラム | |
KR20190104269A (ko) | 발화 스타일 부여를 위한 인공지능 기반의 음성 샘플링 장치 및 방법 | |
JP2005199403A (ja) | 情動認識装置及び方法、ロボット装置の情動認識方法、ロボット装置の学習方法、並びにロボット装置 | |
JP4169038B2 (ja) | 情報処理装置および情報処理方法、並びにプログラム | |
US20210158141A1 (en) | Control input scheme for machine learning in motion control and physics based animation | |
JP2011059815A (ja) | 情報処理装置、情報処理方法、及び、プログラム | |
JP2009288933A (ja) | 学習装置、学習方法、及びプログラム | |
JP2011059817A (ja) | 情報処理装置、情報処理方法、及び、プログラム | |
JP2009053782A (ja) | データ処理装置、データ処理方法、及びプログラム | |
JP2009140454A (ja) | データ処理装置、データ処理方法、及びプログラム | |
US11250852B2 (en) | Generation of trigger recognition models for robot | |
JP2010067033A (ja) | データ処理装置、データ処理方法、及び、プログラム | |
JP2008250856A (ja) | 学習装置、学習方法、及びプログラム | |
US10812904B2 (en) | Acoustic equalization method, robot and AI server implementing the same | |
JP2006285898A (ja) | 制御装置および方法、並びにプログラム | |
JP2007280057A (ja) | データ処理装置、データ処理方法、およびプログラム | |
JP2002133390A (ja) | 学習装置および記録媒体 | |
JP5458791B2 (ja) | 連想記憶装置、連想記憶方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20101102 |