next up previous contents
Next: 内部記憶を持つニューラルネット[#hisaki##1##soumiya##1#, #tokushima##1#] Up: 第4章 学習法 Previous: 一般化デルタルール[#nakanoncbase##1#]

4.2 バックプロパゲーション

いくつかの中間層を持つ多層ニューラルネットワークを考える。 同じ層の素子間に結合はなく、 どの素子も1つ前の層からのみ入力を受け、 次の層へのみ出力を送るものとする。 このようなネットワークの中間層に対して同様に学習則を導こうとしたとき、 式(4.8)の tex2html_wrap_inline1442 の値は すぐに求めることはできない。この微分値を出力層より 逆向きに順々に計算していく、言い換えれば出力の誤差を、 前の層へ、前の層へと伝えていく、 というのがバックプロパゲーションのアイデアである。 すなわち、 ある層の素子 jtex2html_wrap_inline1442 の計算は、 次の層の素子 ktex2html_wrap_inline1456 を用いて

  equation283

と展開することができる。 式(4.1)より

equation295

これと式(4.7)を代入すれば式(4.14)は

equation302

となる。 これがバックプロパゲーションのアルゴリズムである。

バックプロパゲーションは、 いかなる重みの初期値からでも誤差が極小となる(最小ではない) ことが保証されるわけだが、一般に誤差曲面は極小値の近くでは 非常に緩やかな谷底をもつため、学習は非常に遅くなる。 しかし、式(4.4)の tex2html_wrap_inline1446 を大きくすると、 学習は振動してしまう。振動させずに学習を早めるため 幾つかの方法が提案されているが、例えば、 誤差曲面の傾きを結合荷重空間の位置でなく速度の変化に用いる、 すなわち

  equation310

という形の加速法がよく使われる。 ここで t は学習の回数を表わす。 また、重みが最初、すべて0であると、中間層の素子に個性が現れず、 中間層を用いる意味がなくなってしまう。 この対称性を破るためには、重みに小さなランダム値を与えておけばよい。

   figure317
図 4.1: バックプロパゲーション(誤差逆伝搬法)

4.1に バックプロパゲーション法のネットワーク図を示す。 バックプロパゲーションの特徴は、入力信号と 正しい出力教師信号のセットを次々と与えるだけで、 個々の問題の特徴を抽出する内部構造が、 中間層の隠れニューロン群のシナプス結合として自己組織される点である。 また、誤差計算が前方向へ情報の流れとよく類似している点がある。 すなわち、ある素子の学習に使われている情報は、 後の素子から得られる情報のみであり、 学習の局所性が保たれていることになる。 これは、人工的な神経回路形計算機をハードウェア化する時に 学習則に要求される性質で、実際の生体の神経回路においては、 tex2html_wrap_inline1442 といった値が 神経軸策を通って逆向きに伝わるはずはなく、 バックプロパゲーションは実際の脳の学習則の 生理学的モデルにはなりえないことになる。 実際の脳の多層神経回路においてはどのような 学習則が用いられているのかはまだわかっていない[6]。



Deguchi Toshinori
Wed Jul 12 17:04:26 JST 2000