JP2004030628A - Information processing apparatus and method, program storage medium, and program - Google Patents

Information processing apparatus and method, program storage medium, and program Download PDF

Info

Publication number
JP2004030628A
JP2004030628A JP2003132606A JP2003132606A JP2004030628A JP 2004030628 A JP2004030628 A JP 2004030628A JP 2003132606 A JP2003132606 A JP 2003132606A JP 2003132606 A JP2003132606 A JP 2003132606A JP 2004030628 A JP2004030628 A JP 2004030628A
Authority
JP
Japan
Prior art keywords
time
value
series pattern
pattern
input
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.)
Pending
Application number
JP2003132606A
Other languages
Japanese (ja)
Inventor
Masato Ito
伊藤 真人
Atsushi Tani
谷 淳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
RIKEN Institute of Physical and Chemical Research
Original Assignee
Sony Corp
RIKEN Institute of Physical and Chemical Research
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp, RIKEN Institute of Physical and Chemical Research filed Critical Sony Corp
Priority to JP2003132606A priority Critical patent/JP2004030628A/en
Publication of JP2004030628A publication Critical patent/JP2004030628A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To produce a novel pattern which is not learnt. <P>SOLUTION: Data x<SB>t</SB>corresponding to a prescribed time series pattern are inputted to an input layer 11 of a recurrent neural network 1, and a predictive value x*<SB>t+1</SB>is obtained from an output layer 13. A difference between data x<SB>t+1</SB>as a teacher and the predictive value x*<SB>t+1</SB>is learnt by a back propagation method, and a weighting coefficient of the intermediate layer 12 is set to a prescribed value. After a plurality of time series patterns are learnt, a parameter different from a value during learning is inputted to a parametric bias node 11-2, and a non-learnt time series pattern corresponding to the parameter is produced from the output layer 13. The invention is applied to a robot. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理装置および方法、プログラム格納媒体、並びにプログラムに関し、特に、学習していない新規なパターンを出力することができるようにした情報処理装置および方法、プログラム格納媒体、並びにプログラムに関する。
【0002】
【従来の技術】
最近、人間や動物の脳に関する研究が盛んに行われている。脳のモデルとして、ニューラルネットワークを用いることができることが知られている。
【0003】
【発明が解決しようとする課題】
しかしながら、ニューラルネットワークにおいては、所定のパターンを学習させると、その学習したパターンを識別することが可能であるが、新たなパターンを生成することができない課題があった。
【0004】
本発明は、このような状況に鑑みてなされたものであり、学習していない新規なパターンを生成することができるようにするものである。
【0005】
【課題を解決するための手段】
本発明の情報処理装置は、時系列パターンを入力する入力手段と、入力手段から入力された複数の時系列パターンのそれぞれについて、1つ以上の外部から操作可能な特徴量パラメータを有する共通の非線形力学系によるモデルを決定するモデル決定手段と、決定されたモデルに基づいて、特徴量パラメータの値を算出する演算手段と、特徴量パラメータとして、演算手段により算出された値とは異なる値を設定し、特徴量パラメータの値を算出した演算の逆演算を行うことにより、新たな時系列パターンを出力する出力手段とを有することを特徴とする。
【0006】
上記非線形力学系は、操作パラメータ付きリカレント型ニューラルネットワークであるようにすることができる。
【0007】
上記特徴量パラメータは、時系列パターンの非線形力学系における力学構造を表すようにすることができる。
【0008】
上記出力手段は、入力された複数の時系列パターンと共有可能な力学構造を有する新たな時系列パターンを出力するようにすることができる。
【0009】
本発明の情報処理方法は、時系列パターンを入力する入力ステップと、入力ステップの処理で入力された複数の時系列パターンのそれぞれについて、1つ以上の外部から操作可能な特徴量パラメータを有する共通の非線形力学系によるモデルを決定するモデル決定ステップと、決定されたモデルに基づいて、特徴量パラメータの値を算出する演算ステップと、特徴量パラメータとして、演算ステップの処理により算出された値とは異なる値を設定し、特徴量パラメータの値を算出した演算の逆演算を行うことにより、新たな時系列パターンを出力する出力ステップとを含むことを特徴とする。
【0010】
本発明のプログラム格納媒体のプログラムは、時系列パターンを入力する入力ステップと、入力ステップの処理で入力された複数の時系列パターンのそれぞれについて、1つ以上の外部から操作可能な特徴量パラメータを有する共通の非線形力学系によるモデルを決定するモデル決定ステップと、決定されたモデルに基づいて、特徴量パラメータの値を算出する演算ステップと、特徴量パラメータとして、演算ステップの処理により算出された値とは異なる値を設定し、特徴量パラメータの値を算出した演算の逆演算を行うことにより、新たな時系列パターンを出力する出力ステップとを含むことを特徴とする。
【0011】
本発明のプログラムは、時系列パターンを入力する入力ステップと、入力ステップの処理で入力された複数の時系列パターンのそれぞれについて、1つ以上の外部から操作可能な特徴量パラメータを有する共通の非線形力学系によるモデルを決定するモデル決定ステップと、決定されたモデルに基づいて、特徴量パラメータの値を算出する演算ステップと、特徴量パラメータとして、演算ステップの処理により算出された値とは異なる値を設定し、特徴量パラメータの値を算出した演算の逆演算を行うことにより、新たな時系列パターンを出力する出力ステップとを含むことを特徴とする。
【0012】
本発明の情報処理装置および方法、プログラム格納媒体、並びにプログラムにおいては、入力された時系列パターンに対応する新たな時系列パターンが出力される。
【0013】
【発明の実施の形態】
図1は、本発明を適用したリカレント型ニューラルネットワークの構成例を表している。このリカレント型ニューラルネットワーク(RNN)1は、入力層11、中間層(隠れ層)12、および出力層13により構成されている。これらの入力層11、中間層12、および出力層13は、それぞれ任意の数のニューロンにより構成されている。
【0014】
入力層11の一部のニューロン11−1には、時系列パターンに関するデータxが入力される。具体的には例えば、カメラ画像等を基に画像処理により得られる人間の身体運動パターン(例えば、手先位置の運動軌道等)などの時系列パターンに関するデータである。Pはベクトルであり次元は時系列パターンにより任意である。入力層11の一部のニューロンであるパラメトリックバイアスノード11−2には、パラメータPが入力される。パラメトリック・バイアス・ノードの数は、1つ以上である。そのノード数は、リカレント・ニューラル・ネットを構成し、かつ、モデル決定手段のパラメータであるウェイト・マトリックスの数を決定するニューロンの総数に対して、十分に小さいことが望ましい。本実施の形態では、前記ニューロン総数約50個に対して、パラメトリック・バイアス・ノードの数は約1〜2個である。ただし、本願発明がこの数に限定されないことは言うまでもない。パラメトリックバイアスノードは、非線形力学系における力学構造をモジュレーションするものであり、本実施の形態においては、リカレント型ニューラルネットワークが保持する力学構造をモジュレーションする働きをするノードである。ただし、本発明がリカレント型ニューラルネットワークに限定されるものではない。さらに、入力層11の一部のニューロン11−3には、出力層13の一部のニューロン13−2より出力されたデータが、RNN1の内部の状態を表すコンテキストCtとしてフィードバックされている。コンテキストCtについては、リカレント型ニューラルネットワークに関する一般的用語であり、参考文献(Elman, J.L. (1990). Finding structure in time. Cognitive
Science, 14, 179−211)等を参照されたい。
【0015】
中間層12のニューロンは、入力されたデータに対して重み付け加算処理を行い、順次後段に出力する処理を実行する。すなわち、データx,P,cに対して所定の重み付け係数に対する演算処理(非線形関数に基づく演算処理)を行った後、出力層13に出力する。本実施の形態では例えば、データx,P,cの所定の重み付け和の入力に対して、シグモイド関数等の非線形出力特性を有する関数に基づく演算処理を行った後、出力層13に出力する。
【0016】
出力層13を構成する一部のニューロン13−1は、入力データに対応するデータx t+1を出力する。
【0017】
また、RNN1は、バックプロパケーションによる学習のため、演算器21を有している。演算部22は、RNN1に対する重み付け係数の設定処理を行う。
【0018】
次に、図2のフローチャートを参照して、RNN1の学習処理について説明する。
【0019】
図2のフローチャートに示される処理は、学習させる時系列パターン毎に実行される。換言すれば、学習する時系列パターンの数だけ仮想的なRNNが用意され、各仮想RNN毎に図2の処理が実行される。
【0020】
仮想的なRNN毎に図2のフローチャートに示される処理が実行され、仮想RNN毎に時系列パターンが学習された後、実際のRNN1に対して、係数を設定する処理が実行される。ただし、以下の説明では、仮想的なRNNも、実際のRNN1として説明する。
【0021】
最初に、ステップS11において、RNN1の入力層11のニューロン11−1は、所定の時刻tの入力xを取り込む。ステップS12において、RNN1の中間層12は、入力xに対して、重み付け係数に対応する演算処理を行い、出力層13のニューロン13−1から、入力された時系列パターンにおける時系列t+1の値の予測値x t+1を出力する。
【0022】
ステップS13において、演算部21は、次の時刻t+1の入力xt+1を教師データとして取り込む。ステップS14において、演算部21は、ステップS13の処理で取り込んだ教師入力xt+1と、ステップS12の処理で演算して得た予測値x t+1の誤差を演算する。
【0023】
ステップS15において、RNN1は、ステップS14の処理で演算して得た誤差を出力層13のニューロン13−1から入力し、中間層12、さらに入力層11の順に伝搬することで、学習処理を行い、演算結果dXbptを得る。
【0024】
ステップS16において、中間層12は、式(1)に基づいて、内部状態の修正値dXUを得る。
【0025】
【数1】

Figure 2004030628
【0026】
さらに、中間層12は、式(2)乃至式(4)に基づいて、修正値dXUを修正する。
【数2】
Figure 2004030628
【数3】
Figure 2004030628
【0027】
ステップS17において、パラメトリックノード11−2は、その内部状態の値を保存する処理を実行する。
【0028】
次に、ステップS18において、RNN1は、学習処理を終了するか否かを判定し、まだ学習処理を終了しない場合には、ステップS11に戻り、それ以降の処理を繰り返し実行する。
【0029】
ステップS18において、学習処理を終了すると判定された場合、学習処理が終了される。
【0030】
以上のような学習処理を行うことで、仮想RNNに対して1つの時系列パターンが学習される。
【0031】
以上のようにして、学習パターンの数に対応する仮想RNNの学習処理が行われた後、その学習処理により得られた重み付け係数を、実RNN31に設定する処理が行われる。図3は、この場合の処理を表している。
【0032】
演算部22は、ステップS21において、仮想RNN毎に図2のフローチャートに示される処理を実行した結果得られた係数の合成値を演算する。この合成値としては、例えば、平均値を用いることができる。すなわち、各仮想RNNの重み付け係数の平均値がここで演算される。
【0033】
次に、ステップS22において、演算部22は、ステップS21の処理で演算した合成値(平均値)を実RNN1のニューロンに対して、重み付け係数として設定する処理を実行する。
【0034】
これにより、実際のRNN1の中間層12の各ニューロンに、複数の時系列パターンを学習して得た係数が設定されることになる。
【0035】
中間層12の各ニューロンの重み付け係数には、複数の教示時系列パターンを生成する上で、共有可能な力学構造に関する情報が保持され、パラメトリックバイアスノードには、共有可能な力学構造を各教示時系列パターンの生成に適した力学構造に切り替えるために、必要な情報が保持されることになる。ここで、「共有可能な力学構造」をさらに例をあげて説明する。例えば、図4A乃至図4Cに示されるように、振幅は異なるが周期が同じ時系列パターンAと時系列パターンBが入力された場合には、出力時系列パターンCの周期が共有可能な力学構造にあたり、また、図5A乃至図5Cに示されるように、周期は異なるが振幅は同じ時系列パターンAと時系列パターンBが入力された場合には、出力時系列パターンCの振幅が共有可能な力学構造に該当する。ただし、本願発明がこれに限定されるものでないのは言うまでもない。
【0036】
例えば、図6に示されるように、第1のデータを入力し、学習させることで、比較的大きな振幅を有する曲線L1で表される時系列パターンが学習される。
【0037】
同様に、図7に示されるように、第2のデータを入力し、学習させることで、曲線L2で示される、比較的小さい振幅を有する時系列パターンが学習される。
【0038】
このような時系列パターンの学習を行った後、RNN1に新たな時系列パターンを発生させる場合、図8のフローチャートに示されるような処理が実行される。
【0039】
すなわち、最初に、ステップS31において、パタメトリックバイアスノード11−2は、学習時と異なるパラメータを入力する。ステップS32において、中間層12は、ステップS31の処理で、パタメトリックバイアスノード11−2に入力されたパラメータに対して、重み付け係数に基づく演算を行う。具体的には、学習時にパラメータの値を算出するときに行った演算の逆演算にあたる。そして、ステップS33において、RNN1のニューロン13−1は、ステップS31の処理で入力されたパラメータに対応するパターンを出力する。
【0040】
図9は、RNN1に対して、図6と図7に示される時系列パターンを学習させた後、RNN1のパラメトリックバイアスノード11−2にパラメータPとしてパラメータPを入力した場合の例を表している。このパラメータPは、図6のパターン学習時においてパラメトリックバイアスノード11−2に出力されるパラメータP、並びに図7に示される時系列パターン学習時に出力されるパラメータPとは異なる値とされている。すなわち、この例の場合、パラメータPの値は、パラメータPとパラメータPの値の中間の値とされている。
【0041】
このような場合、出力層13のニューロン13−1から出力される時系列パターンは、図9に曲線L3で示される時系列パターンとなる。この曲線L3の振幅は、図6に示される時系列パターンAの曲線L1の振幅より小さく、図7に示される時系列パターンBの曲線L2の振幅より大きい値となっている。換言すれば、曲線L3の振幅は、曲線L1の振幅と曲線L2の振幅の中間の値となっている。すなわち、この例においては、図6と図7に示される曲線L1と曲線L2の中間の曲線L3が線形的に補間されたことになる。
【0042】
以下に、実験の結果について、図10乃至図28を参照して説明する。
【0043】
図10乃至図13は、第1の時系列パターンを学習させた場合のエラー(図10)、ターゲット(入力データ)(図11)、出力(図12)、およびパラメトリックバイアス(パラメータ)(図13)を、それぞれ表している。各図の縦軸は、それぞれの値(正規化された値)を表し、横軸は、ステップを表している。
【0044】
第1のパターン学習時においては、図10に示されるように、エラーは直線L11で示されるように、ほぼ0.0である。図11に示されるように、ターゲット(入力パターン)は、直線L12で示される正弦波である。
【0045】
図11に示されるターゲットに対応する出力は、図12に曲線L13で示されるように、ターゲットとしての曲線L12にほぼ対応する曲線(正弦波)となっている。
【0046】
図13に示されるように、2つのパラメトリックバイアス(パラメータ)の値の一方は、曲線L14で示されるように、ほぼ0.37の値で収束し、他方は、曲線L15で示されるように、ほぼ0.0で一定となっている。
【0047】
図14乃至図17は、第2の時系列パターンを学習した場合におけるエラー(図14)、ターゲット(図15)、出力(図16)、およびパラメトリックバイアス(パラメータ(図17))をそれぞれ表している。
【0048】
図14に示されるように、エラーは、直線L21で示されるように、ほぼ0.0で一定である。ターゲットは、図15に曲線L22で示されるように、ほぼ正弦波状の時系列パターンとなっている。図15は、図11と比較して明かなように、曲線L22の振幅は、曲線L12の振幅とほぼ同一であるが、曲線L22の周期は、曲線L12の周期より長くなっている(周波数が低くなっている)。
【0049】
図15に示されるターゲットに対応して、図16に示されるように、曲線L22にほぼ対応する曲線23の出力が得られている。
【0050】
図17に示されるように、第2の時系列パターンを学習した場合における2つのパラメトリックバイアスのうちの一方の値は、曲線L24で示されるように、ほぼ0.36の値に収束し、他方の値は、曲線L25で示されるように、0.67の値にほぼ収束する。
【0051】
図18乃至図21は、第3の時系列パターンを学習した場合におけるエラー(図18)、ターゲット(図19)、出力(図20)、およびパラメトリックバイアス(図21)を、それぞれ表している。
【0052】
図18に示されるように、学習時におけるエラーは、曲線L31で示されるように、ほぼ0.0である。ターゲットは、曲線L32で示されるように、ほぼ正弦波状の信号とされる。曲線L32を図11の曲線L12、および図15の曲線L22と比較して明かなように、曲線L32の振幅は、曲線L12および曲線L22の振幅とほぼ同一であるが、その周期は、曲線L22における場合よりさらに長くなっている(周波数はL22における場合より低くなっている)。
【0053】
図20に示されるように、出力の曲線L33は、図19のターゲットの曲線LL32にほぼ対応した正弦波状となっている。
【0054】
図21に示されるように、第3の時系列パターンを学習した場合におけるパラメトリックバイアスの値の一方の値は、曲線L34で示されるように、ほぼ0.21となり、他方の値は、曲線L35で示されるように、1.00でほぼ一定となっている。
【0055】
図11、図15、および図19に示されるような3つの時系列パターンをRNN1に学習させた後、RNN1のパラメトリックバイアスノード11−2にパラメトリックバイアス(パラメータ)として(0.36,036)の2つの値を入力した場合、出力層13を構成するニューロン13−1から、図22に示されるように、曲線L41で示される時系列パターンが出力された。
【0056】
同様に、パラメータとして(0.80,0.25)の値を入力したとき、図23に示されるように、曲線L51のパターンが得られた。比較のために、図24乃至図26に、図11、図15、および図19に示されるターゲットの時系列パターンを示している。
【0057】
これらの図を比較して明かなように、図22の曲線L41の振幅は、図24乃至図26の曲線L13,L23,L33の新福とほぼ同一である。しかしながら、曲線L41の周期は、図24の曲線L13の周期より長く、図25の曲線L22の周期より短くなっている。
【0058】
これは、図22のパラメータ(0.36,0.36)が、図24のパラメータ(0.00,0.37)と図25のパラメータ(0.67,0.36)の中間の値であることに起因する。
【0059】
また、図23の曲線L51は、その振幅は、図24乃至図26の曲線L13,L23,L33とほぼ同一であるが、その周期は、図25の曲線L22のそれより長く、図26の曲線L32のそれより短い値となっている。
【0060】
これは、図23のパラメータ(0.80,0.25)の値が、図25のパラメータ(0.67,0.36)と図26のパラメータ(1.00,0.01)の中間の値であることに起因する。
【0061】
図27は、パラメトリックバイアスのうちの一方の値を横軸に、他方の値を縦軸に取った場合の周期のグラフを表している。同図における点A1,A2,A3,B1,B2は、それぞれ図24(A1)、図25(A2)、図26(A3)、図22(B1)、図23(B2)における、それぞれのパラメータの値をプロットしたものである。図27において、同じ濃度は、同じ周期であることを表している。色の差がグラデーションしていることは、周期がパラメトリックバイアスの値に応じて、滑らかに変化していることを意味する。
【0062】
図28は、2つのパラメトリックバイアスに対応する振幅の変化を表している。この図からも明かなように、パラメトリックバイアスに対応して、振幅がほぼ滑らかに変化している。
【0063】
以上においては、線形的な時系列パターンを学習させるようにしたが、非線形の時系列パターンを学習させた場合にも、同様の結果が得られた。
【0064】
すなわち、図29に示されるように、曲線Lを61で示される時系列パターンと、図30に示されるように、曲線L62で示される時系列パターンとを、RNN1に学習させた後、図31に示されるように、パラメータとして、図29の曲線L61を学習したとき得られるパラメータPと、図30の曲線L62のパターンを学習させた場合に得られるパターンPと異なるパラメータPを、RNN1のパラメトリックバイアスノード11−2に入力すると、曲線L63で示されるように、図29の曲線L61、並びに図30に示される曲線L62のいずれとも異なる新規なパターンを生成することができる。
【0065】
以下に、具体的な実験例について説明する。
【0066】
図32乃至図35は、第4のパターンを学習させた場合におけるエラー(図32)、ターゲット(図33)、出力(図34)、およびパラメトリックバイアス(図35)を、それぞれ表している。
【0067】
第4の時系列パターン学習時におけるエラーは、曲線L71で示されるように、ほぼ0.0である。ターゲットは、曲線L72で示されるように、正弦波とされる。対応する出力は、曲線L73で示される。この曲線L73は、ほぼ曲線L72に対応している。
【0068】
この場合に得られるパラメトリックバイアスのうちの一方の値は、曲線L74で示されるように、1.00であり、他方の値は、曲線L75で示されるように、0.79である。
【0069】
図36乃至図39は、第5のパターン学習時におけるエラー(図36)、ターゲット(図37)、出力(図38)、およびパラメトリックバイアス(図39)を、それぞれ表している。
【0070】
図36に示されるように、学習時におけるエラーは、曲線L81で示されるように、ほぼ0.0である。
【0071】
ターゲットは、図37の曲線L82で示されるように、図33の曲線L72で示される綺麗な正弦波とは異なる変形した(歪んだ)正弦波となっている。
【0072】
図38に示されるように、図37で示されるターゲットに対応する曲線L83で示される出力が得られている。
【0073】
この学習時において、得られるパラメトリックバイアス値は、一方の値は、曲線L84で示されるように、0.12に収束し、他方の値は、曲線L85で示されるように、ほぼ0.60で収束している。
【0074】
RNN1に対して、図33と図37に示される2つの時系列パターンを学習させた後、パラメトリックバイアスノード11−2に、パラメトリックバイアス(0.12,0.68)を入力した場合、図40に曲線L91で示される出力が得られた。
【0075】
同様に、パラメトリックバイアス(0.25,0.59)を与えた場合、図41に曲線L92で示される出力が得られ、パラメトリックバイアス(0.50,0.60)を与えた場合、図42に曲線L93で示される出力が得られた。
【0076】
図40乃至図42の出力と比較するために、パラメトリックバイアス(1.00,0.79)またはパラメトリックバイアス(0.12,0.60)を与えた場合の出力が、図43と図44に示されている。すなわち、図43の出力は、図34の出力と同一であり、図44の出力は、図38の出力と同一である。
【0077】
このように、この例の場合においては、非線形的な演算処理がパラメータに対応して行われていることになる。
【0078】
図45は、パラメトリックバイアスに対応する周期の変化を表している。図46は、同様に、パラメトリックバイアスに対応する振幅の変化を表している。これらの図においても、図27と図28における場合と同様に、同一の濃度は、同一の周期または振幅を表している。また、図45と図46において、A1,A2,B1,B2,B3は、それぞれ図43、図44、図30、図41、および図42のパラメータをプロットしたものである。
【0079】
図45と図46からも明かなように、非線形の演算処理が行われる場合にも、パラメータに対応して、ほぼ滑らかに周期と振幅が変化している。
【0080】
このように、複数の時系列パターンを学習させた後、所定のパラメータを入力することで、学習させた時系列パターンとは異なる新たな時系列パターンを、線形的または非線形的補間により生成、出力することができる。
【0081】
なお、パラメトリックバイアスは、RNN1が生成する時空間パターンを切り替えるパラメータである。このパラメータと、それにより生成される時空間パターンとの関係は、予め与えられるものではなく、教示時空間パターンの学習により決定される。
【0082】
本発明は、例えば、ヒューマロイド型のロボットにおける「ものまね運動学習」に応用することができる。これにより、ロボットが人から教示された複数の運動パターン(ダンスなど)を学習し、それらの運動を再現することができるだけでなく、複数の教示運動パターンの間に共通する特徴を抽出し、それに基づく新規な運動パターンを生成することが可能となる。
【0083】
上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることもできる。この場合、例えば、図47に示されるようなパーソナルコンピュータ160が用いられる。
【0084】
図47において、CPU(Central Processing Unit)161は、ROM(Read OnlyMemory)162に記憶されているプログラム、または記憶部168からRAM(Random Access Memory)163にロードされたプログラムに従って各種の処理を実行する。RAM163にはまた、CPU161が各種の処理を実行する上において必要なデータなども適宜記憶される。
【0085】
CPU161、ROM162、およびRAM163は、バス164を介して相互に接続されている。このバス164にはまた、入出力インタフェース165も接続されている。
【0086】
入出力インタフェース165には、キーボード、マウスなどよりなる入力部166、CRT,LCDなどよりなるディスプレイ、並びにスピーカなどよりなる出力部167、ハードディスクなどより構成される記憶部168、モデム、ターミナルアダプタなどより構成される通信部169が接続されている。通信部169は、ネットワークを介しての通信処理を行う。
【0087】
入出力インタフェース165にはまた、必要に応じてドライブ170が接続され、磁気ディスク171、光ディスク172、光磁気ディスク173、或いは半導体メモリ174などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部168にインストールされる。
【0088】
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、パーソナルコンピュータ160に、ネットワークや記録媒体からインストールされる。
【0089】
この記録媒体は、図47に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク171(フロッピディスクを含む)、光ディスク172(CD−ROM(Compact Disk−Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク173(MD(Mini−Disk)を含む)、もしくは半導体メモリ174などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM162や、記憶部168に含まれるハードディスクなどで構成される。
【0090】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0091】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0092】
【発明の効果】
以上の如く、本発明によれば、時系列パターンを発生させることができる。また、発生させる時系列パターンを、新たな時系列パターンとすることができる。
【図面の簡単な説明】
【図1】本発明を適用したリカレント型ニューラルネットワークの構成を示す図である。
【図2】図1のリカレント型ニューラルネットワークの学習処理を説明するフローチャートである。
【図3】図1のリカレント型ニューラルネットワークの係数設定処理を説明するフローチャートである。
【図4】振幅が異なり、同期が同じ時系列パターンの例を示す図である。
【図5】周期が異なり、振幅が同じ時系列パターンの例を示す図である。
【図6】学習パターンの例を示す図である。
【図7】学習パターンの例を示す図である。
【図8】図1のリカレント型ニューラルネットワークの時系列パターン生成処理を説明するフローチャートである。
【図9】生成する時系列パターンの例を示す図である。
【図10】第1のパターンを学習させる場合におけるエラーの変化を示す図である。
【図11】第1のパターンを学習させる場合におけるターゲットを示す図である。
【図12】第1のパターンを学習させる場合における出力を示す図である。
【図13】第1のパターンを学習させる場合におけるパラメトリックバイアスの変化を示す図である。
【図14】第2のパターンを学習させる場合におけるエラーの変化を示す図である。
【図15】第2のパターンを学習させる場合におけるターゲットを示す図である。
【図16】第2のパターンを学習させる場合における出力を示す図である。
【図17】第2のパターンを学習させる場合におけるパラメトリックバイアスの変化を示す図である。
【図18】第3のパターンを学習させる場合におけるエラーの変化を示す図である。
【図19】第3のパターンを学習させる場合におけるターゲットを示す図である。
【図20】第3のパターンを学習させる場合における出力を示す図である。
【図21】第3のパターンを学習させる場合におけるパラメトリックバイアスの変化を示す図である。
【図22】生成したパターンの例を示す図である。
【図23】生成したパターンの他の例を示す図である。
【図24】図12に対応する出力を示す図である。
【図25】図16に対応する出力を示す図である。
【図26】図20に対応する出力を示す図である。
【図27】図22乃至図26のパターンの周期の変化とパラメトリックバイアスの関係を示す図である。
【図28】図22乃至図26のパターンの振幅の変化とパラメトリックバイアスの関係を示す図である。
【図29】学習させるパターンの例を示す図である。
【図30】学習させるパターンの他の例を示す図である。
【図31】図29と図30に示すパターンを学習させた場合に生成されるパターンを示す図である。
【図32】第4のパターンを学習させる場合におけるエラーの変化を示す図である。
【図33】第4のパターンを学習させる場合におけるターゲットを示す図である。
【図34】第4のパターンを学習させる場合における出力を示す図である。
【図35】第4のパターンを学習させる場合におけるパラメトリックバイアスの変化を示す図である。
【図36】第5のパターンを学習させる場合におけるエラーの変化を示す図である。
【図37】第5のパターンを学習させる場合におけるターゲットを示す図である。
【図38】第5のパターンを学習させる場合における出力を示す図である。
【図39】第5のパターンを学習させる場合におけるパラメトリックバイアスの変化を示す図である。
【図40】生成されたパターンの例を示す図である。
【図41】生成されたパターンの例を示す図である。
【図42】生成されたパターンの例を示す図である。
【図43】図34に対応する出力を示す図である。
【図44】図38に対応する出力を示す図である。
【図45】図40乃至図44のパターンの周期のパラメトリックバイアスとの関係を示す図である。
【図46】図40乃至図44のパターンの振幅とパラメトリックバイアスとの関係を示す図である。
【図47】本発明を適用したパーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
1 リカレント型ニューラルネットワーク, 11 入力層, 12 中間層, 13 出力層, 21 演算部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an information processing apparatus and method, a program storage medium, and a program, and more particularly, to an information processing apparatus and method, a program storage medium, and a program capable of outputting a new pattern that has not been learned.
[0002]
[Prior art]
Recently, research on the brains of humans and animals has been actively conducted. It is known that a neural network can be used as a brain model.
[0003]
[Problems to be solved by the invention]
However, in a neural network, when a predetermined pattern is learned, it is possible to identify the learned pattern, but there is a problem that a new pattern cannot be generated.
[0004]
The present invention has been made in view of such a situation, and is intended to generate a new pattern that has not been learned.
[0005]
[Means for Solving the Problems]
An information processing apparatus according to the present invention includes an input unit for inputting a time-series pattern, and a common non-linear having at least one externally operable feature parameter for each of the plurality of time-series patterns input from the input unit. Model determining means for determining a model based on a dynamical system, calculating means for calculating a value of a feature parameter based on the determined model, and setting a value different from the value calculated by the calculating means as the feature parameter And output means for outputting a new time-series pattern by performing an inverse operation of the operation of calculating the value of the feature parameter.
[0006]
The above-mentioned nonlinear dynamic system may be a recurrent neural network with operation parameters.
[0007]
The feature parameter may represent a dynamic structure of the time-series pattern in the nonlinear dynamic system.
[0008]
The output means can output a new time-series pattern having a dynamic structure that can be shared with a plurality of input time-series patterns.
[0009]
An information processing method according to the present invention provides an input step of inputting a time series pattern, and a common step having at least one externally operable feature parameter for each of the plurality of time series patterns input in the processing of the input step. A model determining step of determining a model based on the nonlinear dynamical system, a calculating step of calculating a value of the feature parameter based on the determined model, and a value calculated by the processing of the calculating step as the feature parameter. An output step of outputting a new time-series pattern by setting a different value and performing an inverse operation of the operation for calculating the value of the feature parameter.
[0010]
The program of the program storage medium of the present invention includes an input step of inputting a time-series pattern, and one or more externally operable feature amount parameters for each of the plurality of time-series patterns input in the processing of the input step. A model determining step of determining a model based on a common nonlinear dynamical system having a calculation step of calculating a value of a feature parameter based on the determined model; and a value calculated by the processing of the calculation step as a feature parameter. An output step of outputting a new time-series pattern by setting a value different from the above and performing an inverse operation of the operation of calculating the value of the feature parameter.
[0011]
A program according to the present invention includes an input step of inputting a time-series pattern, and a common non-linear function having one or more externally operable feature parameters for each of the plurality of time-series patterns input in the processing of the input step. A model determining step of determining a model based on a dynamical system, an operation step of calculating a value of a feature parameter based on the determined model, and a value different from the value calculated by the processing of the operation step as the feature parameter And performing an inverse operation of the operation of calculating the value of the feature parameter, thereby outputting a new time-series pattern.
[0012]
In the information processing apparatus and method, the program storage medium, and the program according to the present invention, a new time series pattern corresponding to the input time series pattern is output.
[0013]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 shows a configuration example of a recurrent neural network to which the present invention is applied. The recurrent neural network (RNN) 1 includes an input layer 11, an intermediate layer (hidden layer) 12, and an output layer 13. Each of the input layer 11, the intermediate layer 12, and the output layer 13 includes an arbitrary number of neurons.
[0014]
Some neurons 11-1 of the input layer 11, the data x t is input about the time series pattern. More specifically, the data is, for example, data relating to a time-series pattern such as a human body movement pattern (for example, a movement trajectory of a hand position) obtained by image processing based on a camera image or the like. Pt is a vector, and the dimension is arbitrary according to the time series pattern. The parameter Pt is input to the parametric bias node 11-2 which is a part of the neuron of the input layer 11. The number of parametric bias nodes is one or more. It is desirable that the number of nodes is sufficiently smaller than the total number of neurons that form the recurrent neural net and determine the number of weight matrices that are parameters of the model determining means. In the present embodiment, the number of parametric bias nodes is about 1-2 for the total number of about 50 neurons. However, it goes without saying that the present invention is not limited to this number. The parametric bias node modulates a dynamic structure in a nonlinear dynamic system. In the present embodiment, the parametric bias node is a node that functions to modulate a dynamic structure held by a recurrent neural network. However, the present invention is not limited to a recurrent neural network. Further, to some neurons 11-3 in the input layer 11, data output from some neurons 13-2 in the output layer 13 is fed back as a context Ct representing an internal state of the RNN1. The context Ct is a general term for a recurrent neural network and is described in a reference (Elman, JL (1990). Finding structure in time. Cognitive.
Science, 14, 179-211).
[0015]
The neuron of the intermediate layer 12 performs a weighted addition process on the input data, and sequentially executes a process of outputting the data to a subsequent stage. That is, the data x t , P t , and ct are subjected to arithmetic processing (operation processing based on a nonlinear function) for a predetermined weighting coefficient, and then output to the output layer 13. In this embodiment, for example, data x t, P t, for the input of a predetermined weighted sum of c t, after the calculation processing based on a function having a nonlinear output characteristic such as a sigmoid function, the output layer 13 Output.
[0016]
Some neurons 13-1 forming the output layer 13 output data x * t + 1 corresponding to the input data.
[0017]
Further, the RNN 1 has an arithmetic unit 21 for learning by back propagation. The calculation unit 22 performs a setting process of a weighting coefficient for the RNN1.
[0018]
Next, the learning process of the RNN 1 will be described with reference to the flowchart of FIG.
[0019]
The process shown in the flowchart of FIG. 2 is executed for each time-series pattern to be learned. In other words, as many virtual RNNs as the number of time-series patterns to be learned are prepared, and the process in FIG. 2 is executed for each virtual RNN.
[0020]
The process shown in the flowchart of FIG. 2 is executed for each virtual RNN, and after a time-series pattern is learned for each virtual RNN, a process for setting a coefficient is executed for the actual RNN 1. However, in the following description, the virtual RNN is also described as the actual RNN1.
[0021]
First, in step S11, the neuron 11-1 of the input layer 11 of RNN1 takes in the input x t of a predetermined time t. In step S12, the intermediate layer 12 of RNN1 on the input x t, performs arithmetic processing corresponding to the weighting coefficients from the neurons 13-1 of the output layer 13, the time series t + 1 in the time series pattern input value Is output as x * t + 1 .
[0022]
In step S13, the calculation unit 21 takes in the input xt + 1 at the next time t + 1 as teacher data. In step S14, the calculation unit 21 calculates an error between the teacher input xt + 1 captured in the processing in step S13 and the predicted value x * t + 1 calculated in the processing in step S12.
[0023]
In step S15, the RNN 1 performs a learning process by inputting the error obtained by the calculation in step S14 from the neuron 13-1 of the output layer 13 and transmitting the error in the order of the intermediate layer 12 and the input layer 11. , And the operation result dX bpt is obtained.
[0024]
In step S16, the intermediate layer 12 obtains the correction value dXU of the internal state based on equation (1).
[0025]
(Equation 1)
Figure 2004030628
[0026]
Further, the intermediate layer 12 corrects the correction value dXU based on Expressions (2) to (4).
(Equation 2)
Figure 2004030628
[Equation 3]
Figure 2004030628
[0027]
In step S17, the parametric node 11-2 executes a process of storing the value of the internal state.
[0028]
Next, in step S18, the RNN 1 determines whether or not to end the learning process. If the learning process has not been ended yet, the process returns to step S11 and repeats the subsequent processes.
[0029]
If it is determined in step S18 that the learning process is to be ended, the learning process is ended.
[0030]
By performing the learning process as described above, one time-series pattern is learned for the virtual RNN.
[0031]
As described above, after the learning process of the virtual RNN corresponding to the number of the learning patterns is performed, the process of setting the weighting coefficient obtained by the learning process to the real RNN 31 is performed. FIG. 3 shows the processing in this case.
[0032]
In step S21, the calculation unit 22 calculates a composite value of coefficients obtained as a result of executing the processing illustrated in the flowchart of FIG. 2 for each virtual RNN. As the combined value, for example, an average value can be used. That is, the average value of the weighting coefficients of each virtual RNN is calculated here.
[0033]
Next, in step S22, the calculation unit 22 performs a process of setting the composite value (average value) calculated in the process of step S21 as a weighting factor for the neuron of the real RNN1.
[0034]
As a result, coefficients obtained by learning a plurality of time-series patterns are set in each neuron of the intermediate layer 12 of the actual RNN 1.
[0035]
The weighting coefficient of each neuron in the intermediate layer 12 holds information about a sharable dynamic structure when generating a plurality of teaching time-series patterns, and a parametric bias node stores a sharable dynamic structure at each teaching time. In order to switch to a dynamic structure suitable for generating a sequence pattern, necessary information is held. Here, the “sharable mechanical structure” will be described with further examples. For example, as shown in FIGS. 4A to 4C, when the time series pattern A and the time series pattern B having different amplitudes but the same cycle are input, the dynamic structure in which the cycle of the output time series pattern C can be shared. 5A to 5C, when the time series pattern A and the time series pattern B having different periods but the same amplitude are input, the amplitude of the output time series pattern C can be shared. It corresponds to a mechanical structure. However, it goes without saying that the present invention is not limited to this.
[0036]
For example, as shown in FIG. 6, by inputting and learning the first data, a time-series pattern represented by a curve L1 having a relatively large amplitude is learned.
[0037]
Similarly, as shown in FIG. 7, by inputting and learning the second data, a time-series pattern having a relatively small amplitude represented by a curve L2 is learned.
[0038]
When a new time-series pattern is generated in the RNN 1 after learning such a time-series pattern, a process as shown in the flowchart of FIG. 8 is executed.
[0039]
That is, first, in step S31, the parameter bias node 11-2 inputs parameters different from those at the time of learning. In step S32, the intermediate layer 12 performs an operation based on the weighting coefficient for the parameter input to the parameter bias node 11-2 in the process of step S31. Specifically, it corresponds to the inverse operation of the operation performed when calculating the parameter value during learning. Then, in step S33, the neuron 13-1 of the RNN 1 outputs a pattern corresponding to the parameter input in the processing in step S31.
[0040]
9, with respect RNN1, after training the time series pattern shown in FIGS. 6 and 7, shows an example of entering the parameter P N parametrically bias node 11-2 RNN1 as a parameter P t ing. The parameter P N is a value different from the parameter P B, which is output at the time of pattern learning 6 parameters P A to be output to the parametric bias node 11-2, and the time series pattern during learning shown in FIG. 7 ing. That is, in this case, the value of the parameter P N, are an intermediate value of values of the parameters P A and the parameter P B.
[0041]
In such a case, the time-series pattern output from the neuron 13-1 of the output layer 13 is a time-series pattern indicated by a curve L3 in FIG. The amplitude of the curve L3 is smaller than the amplitude of the curve L1 of the time series pattern A shown in FIG. 6 and larger than the amplitude of the curve L2 of the time series pattern B shown in FIG. In other words, the amplitude of the curve L3 is an intermediate value between the amplitude of the curve L1 and the amplitude of the curve L2. That is, in this example, the intermediate curve L3 between the curves L1 and L2 shown in FIGS. 6 and 7 is linearly interpolated.
[0042]
Hereinafter, the results of the experiment will be described with reference to FIGS.
[0043]
FIGS. 10 to 13 show errors (FIG. 10), targets (input data) (FIG. 11), outputs (FIG. 12), and parametric biases (parameters) (FIG. 13) when the first time-series pattern is learned. ) Respectively. The vertical axis of each figure represents each value (normalized value), and the horizontal axis represents a step.
[0044]
At the time of the first pattern learning, as shown in FIG. 10, the error is almost 0.0 as shown by the straight line L11. As shown in FIG. 11, the target (input pattern) is a sine wave indicated by a straight line L12.
[0045]
The output corresponding to the target shown in FIG. 11 is a curve (sine wave) almost corresponding to the curve L12 as the target, as shown by the curve L13 in FIG.
[0046]
As shown in FIG. 13, one of the two parametric bias (parameter) values converges at a value of approximately 0.37, as shown by curve L14, and the other, as shown by curve L15, It is almost constant at 0.0.
[0047]
14 to 17 show errors (FIG. 14), targets (FIG. 15), outputs (FIG. 16), and parametric biases (parameters (FIG. 17)) when the second time-series pattern is learned, respectively. I have.
[0048]
As shown in FIG. 14, the error is substantially constant at 0.0, as indicated by the straight line L21. The target has a substantially sinusoidal time-series pattern as indicated by a curve L22 in FIG. As is clear from FIG. 11, the amplitude of the curve L22 is almost the same as the amplitude of the curve L12, but the cycle of the curve L22 is longer than the cycle of the curve L12 (when the frequency is Lower).
[0049]
As shown in FIG. 16, corresponding to the target shown in FIG. 15, an output of a curve 23 substantially corresponding to the curve L22 is obtained.
[0050]
As shown in FIG. 17, one of the two parametric biases when the second time-series pattern is learned converges to a value of approximately 0.36, as shown by the curve L24, and the other one. Value substantially converges to a value of 0.67 as shown by the curve L25.
[0051]
FIGS. 18 to 21 show an error (FIG. 18), a target (FIG. 19), an output (FIG. 20), and a parametric bias (FIG. 21), respectively, when the third time-series pattern is learned.
[0052]
As shown in FIG. 18, the error at the time of learning is approximately 0.0 as shown by the curve L31. The target is a substantially sinusoidal signal as indicated by the curve L32. As is clear from the comparison of the curve L32 with the curve L12 of FIG. 11 and the curve L22 of FIG. 15, the amplitude of the curve L32 is almost the same as the amplitude of the curve L12 and the curve L22, but the period is the same as the curve L22 (The frequency is lower than in L22).
[0053]
As shown in FIG. 20, the output curve L33 has a sine waveform substantially corresponding to the target curve LL32 of FIG.
[0054]
As shown in FIG. 21, when the third time-series pattern is learned, one of the values of the parametric bias is approximately 0.21, as shown by the curve L34, and the other value is the curve L35. As shown by, it is almost constant at 1.00.
[0055]
After making the RNN 1 learn three time-series patterns as shown in FIGS. 11, 15, and 19, a parametric bias (parameter) of (0.36, 036) is applied to the parametric bias node 11-2 of the RNN 1. When two values are input, the neuron 13-1 forming the output layer 13 outputs a time-series pattern indicated by a curve L41 as shown in FIG.
[0056]
Similarly, when a value of (0.80, 0.25) was input as a parameter, a pattern of a curve L51 was obtained as shown in FIG. For comparison, FIGS. 24 to 26 show the time-series patterns of the targets shown in FIGS. 11, 15, and 19. FIG.
[0057]
As is clear from comparison of these figures, the amplitude of the curve L41 in FIG. 22 is almost the same as that of the curves L13, L23, and L33 in FIGS. However, the cycle of the curve L41 is longer than the cycle of the curve L13 in FIG. 24 and shorter than the cycle of the curve L22 in FIG.
[0058]
This is because the parameters (0.36, 0.36) in FIG. 22 are intermediate values between the parameters (0.00, 0.37) in FIG. 24 and the parameters (0.67, 0.36) in FIG. Due to being.
[0059]
The curve L51 in FIG. 23 has substantially the same amplitude as the curves L13, L23, and L33 in FIGS. 24 to 26, but has a longer period than that of the curve L22 in FIG. The value is shorter than that of L32.
[0060]
This is because the value of the parameter (0.80, 0.25) in FIG. 23 is intermediate between the parameter (0.67, 0.36) in FIG. 25 and the parameter (1.00, 0.01) in FIG. Value.
[0061]
FIG. 27 shows a graph of the period when one value of the parametric bias is plotted on the horizontal axis and the other value is plotted on the vertical axis. Points A1, A2, A3, B1, and B2 in the same figure are the respective parameters in FIGS. 24 (A1), 25 (A2), 26 (A3), 22 (B1), and 23 (B2), respectively. Is plotted. In FIG. 27, the same density indicates the same period. The gradation of the color difference means that the period changes smoothly in accordance with the value of the parametric bias.
[0062]
FIG. 28 shows a change in amplitude corresponding to two parametric biases. As is clear from this figure, the amplitude changes almost smoothly in response to the parametric bias.
[0063]
In the above, a linear time-series pattern is learned, but the same result was obtained when a nonlinear time-series pattern was learned.
[0064]
That is, as shown in FIG. 29, after the RNN 1 learns the time series pattern indicated by the curve L 61 as shown in FIG. 30 and the time series pattern indicated by the curve L 62 as shown in FIG. as shown in, as a parameter, and the parameter P C obtained when the learning curve L61 in FIG. 29, the different parameters P M pattern P D obtained when train the pattern of the curve L62 of Fig. 30, When input to the parametric bias node 11-2 of the RNN1, a new pattern different from both the curve L61 in FIG. 29 and the curve L62 shown in FIG. 30 can be generated as shown by the curve L63.
[0065]
Hereinafter, specific experimental examples will be described.
[0066]
FIGS. 32 to 35 respectively show an error (FIG. 32), a target (FIG. 33), an output (FIG. 34), and a parametric bias (FIG. 35) when the fourth pattern is learned.
[0067]
The error at the time of learning the fourth time-series pattern is substantially 0.0 as shown by the curve L71. The target is a sine wave as shown by a curve L72. The corresponding output is shown by curve L73. This curve L73 substantially corresponds to the curve L72.
[0068]
One value of the parametric bias obtained in this case is 1.00 as shown by the curve L74, and the other value is 0.79 as shown by the curve L75.
[0069]
FIGS. 36 to 39 show an error (FIG. 36), a target (FIG. 37), an output (FIG. 38), and a parametric bias (FIG. 39), respectively, during the fifth pattern learning.
[0070]
As shown in FIG. 36, the error at the time of learning is almost 0.0 as shown by the curve L81.
[0071]
As shown by the curve L82 in FIG. 37, the target is a deformed (distorted) sine wave different from the beautiful sine wave shown by the curve L72 in FIG.
[0072]
As shown in FIG. 38, an output represented by a curve L83 corresponding to the target shown in FIG. 37 is obtained.
[0073]
At the time of this learning, one of the obtained parametric bias values converges to 0.12 as shown by the curve L84, and the other value becomes approximately 0.60 as shown by the curve L85. Has converged.
[0074]
After learning the two time-series patterns shown in FIGS. 33 and 37 for the RNN1, a parametric bias (0.12, 0.68) is input to the parametric bias node 11-2. As a result, an output represented by a curve L91 was obtained.
[0075]
Similarly, when a parametric bias (0.25, 0.59) is applied, an output indicated by a curve L92 in FIG. 41 is obtained, and when a parametric bias (0.50, 0.60) is applied, FIG. As a result, an output represented by a curve L93 was obtained.
[0076]
For comparison with the outputs of FIGS. 40 to 42, the outputs when parametric bias (1.00, 0.79) or parametric bias (0.12, 0.60) are given are shown in FIGS. 43 and 44. It is shown. That is, the output of FIG. 43 is the same as the output of FIG. 34, and the output of FIG. 44 is the same as the output of FIG.
[0077]
Thus, in the case of this example, the non-linear calculation processing is performed in accordance with the parameters.
[0078]
FIG. 45 shows a change in the period corresponding to the parametric bias. FIG. 46 similarly shows a change in amplitude corresponding to a parametric bias. In these figures, as in the case of FIGS. 27 and 28, the same density represents the same cycle or amplitude. In FIGS. 45 and 46, A1, A2, B1, B2, and B3 plot the parameters of FIGS. 43, 44, 30, 41, and 42, respectively.
[0079]
As is clear from FIGS. 45 and 46, even when the non-linear calculation processing is performed, the period and the amplitude change almost smoothly in accordance with the parameters.
[0080]
In this way, after learning a plurality of time-series patterns, by inputting predetermined parameters, a new time-series pattern different from the learned time-series pattern is generated and output by linear or nonlinear interpolation. can do.
[0081]
Note that the parametric bias is a parameter for switching the spatiotemporal pattern generated by the RNN 1. The relationship between this parameter and the spatiotemporal pattern generated thereby is not given in advance, but is determined by learning the teaching spatiotemporal pattern.
[0082]
INDUSTRIAL APPLICABILITY The present invention can be applied to, for example, "imitation movement learning" in a humanoid robot. This allows the robot to not only learn multiple movement patterns (such as dance) taught by humans and reproduce those movements, but also extract features common to multiple teaching movement patterns, It is possible to generate a new motion pattern based on the motion pattern.
[0083]
The series of processes described above can be executed by hardware, but can also be executed by software. In this case, for example, a personal computer 160 as shown in FIG. 47 is used.
[0084]
In FIG. 47, a CPU (Central Processing Unit) 161 executes various processes according to a program stored in a ROM (Read Only Memory) 162 or a program loaded from a storage unit 168 into a RAM (Random Access Memory) 163. . The RAM 163 also appropriately stores data necessary for the CPU 161 to execute various processes.
[0085]
The CPU 161, the ROM 162, and the RAM 163 are interconnected via a bus 164. An input / output interface 165 is also connected to the bus 164.
[0086]
The input / output interface 165 includes an input unit 166 including a keyboard and a mouse, a display including a CRT and an LCD, an output unit 167 including a speaker, a storage unit 168 including a hard disk, a modem, a terminal adapter, and the like. The configured communication unit 169 is connected. The communication unit 169 performs communication processing via a network.
[0087]
A drive 170 is connected to the input / output interface 165 as necessary, and a magnetic disk 171, an optical disk 172, a magneto-optical disk 173, a semiconductor memory 174, or the like is appropriately mounted. It is installed in the storage unit 168 as needed.
[0088]
When a series of processing is executed by software, a program constituting the software is installed in the personal computer 160 from a network or a recording medium.
[0089]
As shown in FIG. 47, the recording medium is a magnetic disk 171 (including a floppy disk) on which the program is recorded and an optical disk 172 (including a floppy disk) which are distributed to provide the program to the user separately from the apparatus main body. It is configured by a package medium including a CD-ROM (Compact Disk-Read Only Memory), a DVD (including a Digital Versatile Disk), a magneto-optical disk 173 (including an MD (Mini-Disk)), or a semiconductor memory 174. In addition, it is configured by a ROM 162 in which a program is recorded, which is provided to the user in a state where the program is incorporated in the apparatus main body in advance, a hard disk included in the storage unit 168, and the like.
[0090]
In this specification, the steps of describing a program recorded on a recording medium may be performed in chronological order according to the described order, but may not be performed in chronological order. This also includes processes executed individually.
[0091]
Also, in this specification, a system refers to an entire device including a plurality of devices.
[0092]
【The invention's effect】
As described above, according to the present invention, a time-series pattern can be generated. Further, the time series pattern to be generated can be a new time series pattern.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a recurrent neural network to which the present invention is applied.
FIG. 2 is a flowchart illustrating a learning process of the recurrent neural network of FIG. 1;
FIG. 3 is a flowchart illustrating a coefficient setting process of the recurrent neural network of FIG. 1;
FIG. 4 is a diagram illustrating an example of a time-series pattern having different amplitudes and the same synchronization.
FIG. 5 is a diagram showing an example of a time-series pattern having different periods and the same amplitude.
FIG. 6 is a diagram illustrating an example of a learning pattern.
FIG. 7 is a diagram illustrating an example of a learning pattern.
FIG. 8 is a flowchart illustrating a time-series pattern generation process of the recurrent neural network of FIG. 1;
FIG. 9 is a diagram illustrating an example of a time-series pattern to be generated.
FIG. 10 is a diagram illustrating a change in an error when a first pattern is learned.
FIG. 11 is a diagram showing a target in the case of learning a first pattern.
FIG. 12 is a diagram showing an output when a first pattern is learned.
FIG. 13 is a diagram showing a change in a parametric bias when the first pattern is learned.
FIG. 14 is a diagram illustrating a change in an error when a second pattern is learned.
FIG. 15 is a diagram showing a target in the case of learning a second pattern.
FIG. 16 is a diagram showing an output when a second pattern is learned.
FIG. 17 is a diagram showing a change in a parametric bias when a second pattern is learned.
FIG. 18 is a diagram showing a change in an error when a third pattern is learned.
FIG. 19 is a diagram showing a target in the case of learning a third pattern.
FIG. 20 is a diagram showing an output when a third pattern is learned.
FIG. 21 is a diagram illustrating a change in a parametric bias when a third pattern is learned.
FIG. 22 is a diagram illustrating an example of a generated pattern.
FIG. 23 is a diagram showing another example of the generated pattern.
FIG. 24 is a diagram showing an output corresponding to FIG. 12;
FIG. 25 is a diagram showing an output corresponding to FIG. 16;
FIG. 26 is a diagram showing an output corresponding to FIG. 20;
FIG. 27 is a diagram showing a relationship between a change in the period of the patterns of FIGS. 22 to 26 and a parametric bias.
FIG. 28 is a diagram showing a relationship between a change in the amplitude of the patterns of FIGS. 22 to 26 and a parametric bias.
FIG. 29 is a diagram showing an example of a pattern to be learned.
FIG. 30 is a diagram showing another example of a pattern to be learned.
FIG. 31 is a diagram showing a pattern generated when the patterns shown in FIGS. 29 and 30 are learned.
FIG. 32 is a diagram showing a change in an error when a fourth pattern is learned.
FIG. 33 is a diagram showing targets when learning a fourth pattern.
FIG. 34 is a diagram showing an output when a fourth pattern is learned.
FIG. 35 is a diagram showing a change in a parametric bias when a fourth pattern is learned.
FIG. 36 is a diagram showing a change in an error when a fifth pattern is learned.
FIG. 37 is a diagram showing a target in the case of learning a fifth pattern.
FIG. 38 is a diagram showing an output when a fifth pattern is learned.
FIG. 39 is a diagram showing a change in a parametric bias when a fifth pattern is learned.
FIG. 40 is a diagram illustrating an example of a generated pattern.
FIG. 41 is a diagram illustrating an example of a generated pattern.
FIG. 42 is a diagram illustrating an example of a generated pattern.
FIG. 43 is a diagram showing an output corresponding to FIG. 34;
FIG. 44 is a diagram showing an output corresponding to FIG. 38.
FIG. 45 is a diagram showing the relationship between the period of the patterns of FIGS. 40 to 44 and the parametric bias.
FIG. 46 is a diagram showing the relationship between the amplitudes of the patterns of FIGS. 40 to 44 and the parametric bias.
FIG. 47 is a block diagram illustrating a configuration example of a personal computer to which the present invention has been applied.
[Explanation of symbols]
Reference Signs List 1 recurrent neural network, 11 input layer, 12 hidden layer, 13 output layer, 21 operation unit

Claims (7)

時系列パターンを出力する情報処理装置において、
時系列パターンを入力する入力手段と、
上記入力手段から入力された複数の上記時系列パターンのそれぞれについて、1つ以上の外部から操作可能な特徴量パラメータを有する共通の非線形力学系によるモデルを決定するモデル決定手段と、
決定された上記モデルに基づいて、上記特徴量パラメータの値を算出する演算手段と、
上記特徴量パラメータとして、上記演算手段により算出された値とは異なる値を設定し、上記特徴量パラメータの値を算出した上記演算の逆演算を行うことにより、新たな時系列パターンを出力する出力手段と
を有することを特徴とする情報処理装置。
In an information processing device that outputs a time-series pattern,
Input means for inputting a time-series pattern;
Model determination means for determining a model based on a common non-linear dynamical system having one or more externally operable feature amount parameters for each of the plurality of time-series patterns input from the input means;
Calculating means for calculating a value of the feature parameter based on the determined model;
An output that outputs a new time-series pattern by setting a value different from the value calculated by the calculation unit as the feature amount parameter and performing a reverse operation of the calculation that calculates the value of the feature amount parameter And an information processing apparatus.
上記非線形力学系は、操作パラメータ付きリカレント型ニューラルネットワークである
ことを特徴とする請求項1に記載の情報処理装置。
The information processing apparatus according to claim 1, wherein the nonlinear dynamic system is a recurrent neural network with operation parameters.
上記特徴量パラメータは、上記時系列パターンの非線形力学系における力学構造を表す
ことを特徴とする請求項1に記載の情報処理装置。
The information processing apparatus according to claim 1, wherein the feature parameter represents a dynamic structure of the time-series pattern in a nonlinear dynamic system.
上記出力手段は、入力された複数の上記時系列パターンと共有可能な力学構造を有する新たな時系列パターンを出力する
ことを特徴とする請求項3に記載の情報処理装置。
The information processing apparatus according to claim 3, wherein the output unit outputs a new time-series pattern having a dynamic structure that can be shared with the plurality of input time-series patterns.
時系列パターンを出力する情報処理装置の情報処理方法において、
時系列パターンを入力する入力ステップと、
上記入力ステップの処理で入力された複数の上記時系列パターンのそれぞれについて、1つ以上の外部から操作可能な特徴量パラメータを有する共通の非線形力学系によるモデルを決定するモデル決定ステップと、
決定された上記モデルに基づいて、上記特徴量パラメータの値を算出する演算ステップと、
上記特徴量パラメータとして、上記演算ステップの処理により算出された値とは異なる値を設定し、上記特徴量パラメータの値を算出した上記演算の逆演算を行うことにより、新たな時系列パターンを出力する出力ステップと
を含むことを特徴とする情報処理方法。
In an information processing method of an information processing device that outputs a time-series pattern,
An input step for inputting a time-series pattern;
For each of the plurality of time-series patterns input in the processing of the input step, a model determining step of determining a model by a common nonlinear dynamical system having one or more externally operable feature amount parameters,
A calculating step of calculating a value of the feature amount parameter based on the determined model;
A new time series pattern is output by setting a value different from the value calculated by the processing in the calculation step as the feature amount parameter and performing the inverse calculation of the calculation in which the value of the feature amount parameter is calculated. An information processing method.
時系列パターンを出力する情報処理装置のプログラムであって、
時系列パターンを入力する入力ステップと、
上記入力ステップの処理で入力された複数の上記時系列パターンのそれぞれについて、1つ以上の外部から操作可能な特徴量パラメータを有する共通の非線形力学系によるモデルを決定するモデル決定ステップと、
決定された上記モデルに基づいて、上記特徴量パラメータの値を算出する演算ステップと、
上記特徴量パラメータとして、上記演算ステップの処理により算出された値とは異なる値を設定し、上記特徴量パラメータの値を算出した上記演算の逆演算を行うことにより、新たな時系列パターンを出力する出力ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが格納されているプログラム格納媒体。
A program of an information processing device that outputs a time-series pattern,
An input step for inputting a time-series pattern;
For each of the plurality of time-series patterns input in the processing of the input step, a model determining step of determining a model by a common nonlinear dynamical system having one or more externally operable feature amount parameters,
A calculating step of calculating a value of the feature amount parameter based on the determined model;
A new time series pattern is output by setting a value different from the value calculated by the processing in the calculation step as the feature amount parameter and performing the inverse calculation of the calculation in which the value of the feature amount parameter is calculated. And a program storage medium storing a computer-readable program.
時系列パターンを出力する情報処理装置を制御するコンピュータのプログラムであって、
時系列パターンを入力する入力ステップと、
上記入力ステップの処理で入力された複数の上記時系列パターンのそれぞれについて、1つ以上の外部から操作可能な特徴量パラメータを有する共通の非線形力学系によるモデルを決定するモデル決定ステップと、
決定された上記モデルに基づいて、上記特徴量パラメータの値を算出する演算ステップと、
上記特徴量パラメータとして、上記演算ステップの処理により算出された値とは異なる値を設定し、上記特徴量パラメータの値を算出した上記演算の逆演算を行うことにより、新たな時系列パターンを出力する出力ステップと
を含むことを特徴とするプログラム。
A computer program for controlling an information processing device that outputs a time-series pattern,
An input step for inputting a time-series pattern;
For each of the plurality of time-series patterns input in the processing of the input step, a model determining step of determining a model by a common nonlinear dynamical system having one or more externally operable feature amount parameters,
A calculating step of calculating a value of the feature amount parameter based on the determined model;
A new time series pattern is output by setting a value different from the value calculated by the processing in the calculation step as the feature amount parameter and performing the inverse calculation of the calculation in which the value of the feature amount parameter is calculated. And an output step of performing the following.
JP2003132606A 2002-05-10 2003-05-12 Information processing apparatus and method, program storage medium, and program Pending JP2004030628A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003132606A JP2004030628A (en) 2002-05-10 2003-05-12 Information processing apparatus and method, program storage medium, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002135238 2002-05-10
JP2003132606A JP2004030628A (en) 2002-05-10 2003-05-12 Information processing apparatus and method, program storage medium, and program

Publications (1)

Publication Number Publication Date
JP2004030628A true JP2004030628A (en) 2004-01-29

Family

ID=31190210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003132606A Pending JP2004030628A (en) 2002-05-10 2003-05-12 Information processing apparatus and method, program storage medium, and program

Country Status (1)

Country Link
JP (1) JP2004030628A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006201665A (en) * 2005-01-24 2006-08-03 Sony Corp Information processing apparatus, information processing method, and program
JP2006285882A (en) * 2005-04-05 2006-10-19 Sony Corp Information processor, information processing method, and program
JP2007299366A (en) * 2006-01-31 2007-11-15 Sony Corp Learning system and method, recognition device and method, creation device and method, recognition and creation device and method, and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05265993A (en) * 1992-03-19 1993-10-15 Fujitsu Ltd Controlling system for neural net
JP2002024795A (en) * 2000-07-04 2002-01-25 Sony Corp Information processing device and method, and recording medium
JP2002086378A (en) * 2000-09-08 2002-03-26 Sony Corp System and method for teaching movement to leg type robot

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05265993A (en) * 1992-03-19 1993-10-15 Fujitsu Ltd Controlling system for neural net
JP2002024795A (en) * 2000-07-04 2002-01-25 Sony Corp Information processing device and method, and recording medium
JP2002086378A (en) * 2000-09-08 2002-03-26 Sony Corp System and method for teaching movement to leg type robot

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006201665A (en) * 2005-01-24 2006-08-03 Sony Corp Information processing apparatus, information processing method, and program
JP4534769B2 (en) * 2005-01-24 2010-09-01 ソニー株式会社 Information processing apparatus, information processing method, and program
JP2006285882A (en) * 2005-04-05 2006-10-19 Sony Corp Information processor, information processing method, and program
JP2007299366A (en) * 2006-01-31 2007-11-15 Sony Corp Learning system and method, recognition device and method, creation device and method, recognition and creation device and method, and program

Similar Documents

Publication Publication Date Title
JP7061238B2 (en) Reinforcement learning to train characters using heterogeneous target animation data
JP4803212B2 (en) Data processing apparatus, data processing method, and program
US8756183B1 (en) System for representing, storing, and reconstructing an input signal
JP2010020444A (en) Learning device, learning method, and program
WO2019081623A1 (en) Auto-regressive neural network systems with a soft attention mechanism using support data patches
JP2010020445A (en) Learning device, learning method, and program
CN110516389B (en) Behavior control strategy learning method, device, equipment and storage medium
JP2007265345A (en) Information processor and method, learning device and method, and program
US20050119982A1 (en) Information processing apparatus and method
Ahmadi et al. How can a recurrent neurodynamic predictive coding model cope with fluctuation in temporal patterns? Robotic experiments on imitative interaction
JP2009288933A (en) Learning apparatus, learning method and program
JP2004030628A (en) Information processing apparatus and method, program storage medium, and program
Werbos New directions in ACDs: Keys to intelligent control and understanding the brain
Khan et al. A Methodology for Developing Adaptive Fuzzy Cognitive Maps for Decision Support.
US7324980B2 (en) Information processing apparatus and method
Zagal et al. Towards self-reflecting machines: Two-minds in one robot
JP4773680B2 (en) Information processing apparatus and method, program recording medium, and program
JP2010266974A (en) Information processing apparatus and method, and program
Hatano et al. GBDT modeling of deep reinforcement learning agents using distillation
JP2008250856A (en) Learning device, learning method, and program
Karbasi et al. A generative model for creating musical rhythms with deep reinforcement learning
Simon New brain simulator II open-source software
Mousavi et al. Researching advanced deep learning methodologies in combination with reinforcement learning techniques
JP2004030627A (en) Information processing apparatus and method, program storage medium, and program
KURŞUN et al. Single-frame super-resolution by inference from learned features

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20031201

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040809

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090618

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090813

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100715

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101125