next up previous contents
Next: 6.2 ランダム層モデル Up: 第6章 時系列の学習 Previous: 第6章 時系列の学習

6.1 2層モデルと多層モデル

ここで、前節に述べた回想モデルを用いて、本論文の主旨である時系列パターンの処理について考える。

サイクル状に記憶を行なうということは、そのサイクル内において信号の時系列を記憶できるということである。 回想モデルは、現在の入力のみを参照して次の状態を想起している。 このため、全ての学習パターンが異なっている場合は、このモデルにより正しい想起ができる。 しかし、学習したパターンの時系列に同一のパターンが含まれている場合には、現在の状態から想起できる次の状態が複数あるため、正しい想起ができなくなることがある。 このような場合は、以前の状態から現在はどのサイクルに属しているかが分かれば、次の状態を知ることができる。

例えば、図5.3tex2html_wrap_inline1491 の場合は、現在の状態が tex2html_wrap_inline1493 から想起されたものか、または tex2html_wrap_inline1495 から想起されたものかが分かれば、次の状態は tex2html_wrap_inline1497 になるのか、それとも tex2html_wrap_inline1499 になるのかが分かる。 このように、以前の状態を記憶保持する層を設け、現在の状態と以前の状態を入力として、その入力から出力を出すニューラルネットワークを構築する。そのモデルを、図6.1に示す。

   figure284
図 6.1: 2層モデル

6.1では、記憶層の入力は出力層の出力であり、各層はそれぞれある時刻での出力に対し、次の時刻ではサイクル内の次の出力パターンを出力する。 記憶層の初期値を、出力層の初期値の一つ前の状態として与えれば、常に出力層の状態は記憶層の状態の次の状態を示すようになる。 このときの荷重の決め方は以下の通りである。

記憶層の次の状態は、出力層が出力したパターンであり、記憶層が出力したパターンの次のパターンである。 すなわち、出力層から記憶層への荷重は tex2html_wrap_inline1501 であり、 出力層から出力層への荷重 wtex2html_wrap_inline1505 と表せる。 同様に、記憶層から記憶層への荷重は tex2html_wrap_inline1507 、 記憶層から出力層への荷重は tex2html_wrap_inline1509 である。

これまでに述べたように、時系列の学習には前の状態を保持する層があればよいことになる。 同じパターンが一つ続けば2層、二つ続けば3層というように、再発部分系列が l 個続けば l+1 層あればよいことになる。

6.2の3層モデルでは、 現在の状態の一つ前の状態と二つ前の状態を記憶層が保持する。

   figure306
図 6.2: 3層モデル

例えば、図5.3tex2html_wrap_inline1515tex2html_wrap_inline1517 とすると、現在の状態が tex2html_wrap_inline1519 であったとしても、二つ前の状態が tex2html_wrap_inline1521 なのか、 tex2html_wrap_inline1495 なのかが分かるため、次に想起する状態が tex2html_wrap_inline1497 であるということが分かる [1] 。

しかし、この多層モデルには、いくつかの問題点があげられる。 例えば、2層モデルではシナプス線束が四本必要であり、1層のニューロン数を n とすると、シナプス結合数は 4n となる。 この様に、全ての層の出力を入力としていては、図6.2のモデルではシナプス線束が九本、 l 層モデルでは tex2html_wrap_inline1533 本のシナプス線束が必要となる。 これではハードウエアでの実現の際に配線が非常に複雑になる。 また、電子計算機上でのシミュレートの際、計算量は tex2html_wrap_inline1535 となり、計算量がかなり増加するため時間がかかる。

これらの対策として、シナプス線束を減らすという方法があり、シナプス線束を減らしても想起能力にはたいして影響がないということが報告されている [1] 。



Deguchi Toshinori
1996年10月08日 (火) 12時41分40秒 JST