next up previous contents
Next: 学習方法2(後ろ向き演算) Up: バックプロパゲーション Previous: 最急降下法

学習方法1(後ろ向き演算)

  バックプロパゲーションの学習のことを、後ろ向き演算と呼ぶ。 まず説明の前に、図 4.1の変数について確認をしておく。

tex2html_wrap_inline1967 とは、入力層-中間層の結合荷重、 tex2html_wrap_inline1969 は中間層-出力層の結合荷重である。 tex2html_wrap_inline1971 は中間層のネット値で、式は

  equation173

である。 tex2html_wrap_inline1973 は出力層のネット値で、中間層と同じようにして求めることができる。

図には書いていないが、出力層の i 番目のニューロンの教師信号は tex2html_wrap_inline1977 である。

   figure179
図 4.1: バックプロパゲーション

つぎに学習方法について説明する。ここで、学習する上で必要な誤差 E について定義する。

  equation186

バックプロパゲーションの学習においては、この誤差が小さくなるように結合荷重を調整していく。

まずは、中間層-出力層の結合荷重の学習をみていく。結合荷重 tex2html_wrap_inline1969 に対する誤差 E の変化を見ればいいので、 Etex2html_wrap_inline1969 で偏微分すればいい。これを式にすると、

  equation195

となる。 tex2html_wrap_inline1989 は学習係数で、一度にどの程度結合荷重を変化させるかを示す。大きすぎると学習が大雑把になり、小さすぎると学習に膨大な回数がかかるようになってしまうため、調整するのは難しい。

まずはそれぞれの微分の計算をする。

  eqnarray207

次に、出力をネット値で偏微分する。

  eqnarray216

最後に、ネット値を結合荷重で偏微分します。

  eqnarray231

これらの式から、修正量 tex2html_wrap_inline1991 の式は以下のようになる。

  eqnarray242

このようにして、出力層の結合荷重を求める。 [7]


Deguchi Lab.