バックプロパゲーション(1)
ここからバックプロパゲーションの検討に入ります。まず、以下のような2層のニューラルネットワークを考察します。
中間層のニューロンは個あり、番目のニューロンをで表します。出力層のニューロンは個あり、番目のニューロンをで表します。ニューロンの入力に対応するシナプス係数をで表すことにします。は常にであるとします。ニューロンの入力と出力の関係は
- ・・・・(1)
- ・・・・(2)
で表されます。ここにはシグモイド関数で
- ・・・・(3)
で定義されます。次にニューロンの入力に対応するシナプス係数をで表すことにします。は常にであるとします。ニューロンの入力と出力の関係は
- ・・・・(4)
- ・・・・(5)
で表されます。また、出力に対応する教師信号をで表すことにし、出力と教師信号との誤差を
- ・・・・(6)
で定義します。
を1回の学習で変化させる変化分をで表すことにします。バックプロパゲーションの考え方では
- ・・・・(7)
でを決定することになります。ただしは正の定数です。
まず、を求めるために
を計算します。はニューロンのシナプス係数なのでその変化はを変化させますがの他の成分を変化させません。よって
- ・・・・(8)
ここで式(6)から
また式(1)から
また、式(2)から
なので式(8)は
- ・・・・(9)
となります。式(7)と(9)から
- ・・・・(10)
となります。これでを決定することが出来ました。
次に、を求めていきます。上と同じようにのによる偏微分を計算します。今度ははニューロンのシナプス係数ですが、の出力であるの変化は、図1を見れば分かるように全てのに変化を与えます。よって偏微分は以下のように変形されます。
- ・・・・(11)
ここで
ですが、シナプス係数はニューロンのシナプス係数であるため、影響を与えるのはであっての他の成分には影響を与えないので
- ・・・・(12)
ここで式(2)から
- ・・・・(13)
また
- ・・・・(14)
ここで式(4)から
- ・・・・(15)
また式(5)から
- ・・・・(16)
式(14)(15)(16)から
- ・・・・(17)
式(12)(13)(17)から
- ・・・・(18)
式(11)(18)から
- ・・・・(19)
となります。式(7)(19)から
- ・・・・(20)
となります。これでを決定することが出来ました。
ここで
- ・・・・(21)
とおくと式(9)は
- ・・・・(22)
となります。また式(19)は
- ・・・・(23)
となります。さらにここで
- ・・・・(24)
とおけば式(23)は
- ・・・・(25)
となります。式(22)と(25)は同じ形をしています。そして出力層のが入力層のの計算式の中に入っている点が、バックプロパゲーション(後ろに伝達する)という名前の由来ではないかと思います。