next up previous contents
Next: 実験準備 Up: 学習 Previous: バックプロパゲーション   目次

遅れ学習法[4][5]

エルマンネットではある時点でのある細胞の状態変化は ネットワーク内をめぐりめぐって後々まで多くのユニットの状態に影響を及ぼすので、 厳密な意味での最急降下学習法は、フィードフォワードネットのように単純には求められない。 しかし、離散時間モデルのリカレントネットワークを空間的に展開し、 フィードフォワードネットワークとみなしてバックプロパゲーションを 適応させることにより、学習を行わせる方法がある。 内部記憶を持つニューラルネットワークの学習には、 この学習の考え方を流用した。

内部記憶を持つニューラルネットの学習は、先に記したバックプロパゲーションを用いるだけであると、 教師信号は出力層のみにしか与えられないため、 フィードバックする信号を出す内部記憶層には教師信号が与えられず、 内部記憶層素子は学習できない。 この問題に対して、中間層から1ステップ前の出力層へと誤差を伝搬することで出力層の学習を行い、 解決している。 つまり、ネットワークを時間的に展開し、学習をしていない内部記憶層へ 時間を逆に進み学習信号を与えていることになる。

前節の方法では出力結果が教師信号に近くなってきた場合、 内部記憶層から中間層への結合荷重に対する影響は小さくなり 学習が非常に緩やかなものになる可能性がある。 そこで、本研究室で考えだされた学習法を用いる。 この方法では誤差信号を大きくするために 時間ステップ $t$ における結合荷重を変化させずに 誤差信号だけ伝播して、 $t-1$ におけるネットワークの状態を学習させる。 これを遅れ学習法と呼ぶ。

図 3.3: 遅れ学習
\includegraphics[scale=1]{naibu_study.eps}

3.3 を用いて詳しく説明すると、 ある時間ステップ $t$ の中間層への入力値の一部は、 時間ステップ $t-1$ の出力層が出力したフィードバックする出力値そのものである。 よって、時間 $t$ における中間層の一つ前の層と言うのは、 時間ステップ $t-1$ における学習出来なかった出力層ということとなる。 そして、 時間ステップ $t$ の中間層から時間ステップ $t-1$ の出力層へ誤差伝播を行い、 そこで学習できなかった中間層から出力層への結合荷重の学習を行っている。 つまり時間$t$における教師信号によって学習できる結合荷重a, c, dの値を変化させず、 誤差信号だけを時間ステップ $t-1$ における中間層へと伝播する。 これと $t-1$ における教師信号を利用して、結果的には結合荷重e, f, g, hを変化させる。 同様の処理を繰り返し、時間ステップ$t-2$$t-3$$\cdots$$t-n$へと伝搬することができる。 今後、誤差を時間ステップ$t-n$まで伝搬して学習する事を遅れ時間$n$で学習すると言う。



Deguchi Lab. 2012年3月9日