学習方法1(後ろ向き演算)
バックプロパゲーションにおいて結合荷重を修正していく過程、つまり学習の過程を後ろ向き演算と呼ぶ。まずはFigure 4.1の変数において確認しておく。
とは、入力層-中間層の結合荷重、
は中間層-出力層の結合荷重である。
は中間層のネット値で、式は式(4.1)で表される。
 |
(9) |
は出力層のネット値で、中間層と同じようにして求めることができる。
出力層の
番目のニューロンの教師信号は
である。
次に学習方法について説明する。ここで、学習するうえで必要な誤差
について定義する。定義式を式(4.2)に示す。
 |
(10) |
バックプロパゲーションの学習においては、この誤差が小さくなるように結合荷重を修正していく。
まずは、中間層-出力層の結合荷重の学習を見ていく。結合荷重
に対する誤差の変化を見ればいいので、
を
で偏微分すればよい。式を式(4.3)に示す。
は学習係数と呼び、一度にどの程度結合荷重を変化させるかを示す。大きすぎると学習が大雑把になり、小さすぎると学習に膨大な回数がかかるようになるため調整が難しい。
まずは、それぞれの微分の計算をする。まず、誤差を出力で微分する式を式(4.4)に示す。
次に、出力をネット値で偏微分する式を式(4.5)に示す。
最後に、ネット値を結合荷重で偏微分する式を式(4.6)に示す。
これらの式から、修正量
の式は式(4.7)のようになる。
ここで、
は、式(4.15)と定義される。
 |
(16) |
このようにして、出力層の結合荷重を求める。
Deguchi Lab.
2017年3月6日