バックプロパゲーション(6)
「バックプロパゲーション(5)」では、ある層とそのひとつ前の層の間のの関係を示した式(52)
- ・・・・(52)
を導き出しましたが、これを見直してみると誤差の中身について何も問題にしていないことに気づきました。このことはをどのように設定しようとも式(53)が成り立つことを意味します。
私は「バックプロパゲーションに向けて(3)」においてバックプロパゲーションの収束が標準デルタ則に比べて遅くなることを述べましたが、私はその時点では、誤差に何を採用するかが問題だと思っておりました。つまり誤差として
- ・・・・(6)
を採用するのではなく「バックプロパゲーション(2)」で標準デルタ則を勾配法からで導く時に使った
- ・・・・(27)
を採用すればもっとよくなるのではないか、と考えておりました。しかし「バックプロパゲーション(5)」の結果からは誤差に何を採用しても
- ・・・・(54)
の項、つまりの項が現れることを意味しています。よって「バックプロパゲーションに向けて(3)」に書いたように、本来シナプス係数の大きな変更が必要な場面において変化量が小さくなるという欠点は表れてしまいます。の項が現れる原因を探ってみるとこれは
のにシグモイド関数
- ・・・・(55)
を用いたことが原因になっています。つまり、
- ・・・・(56)
となるためにの項が現れたのです。であるならばに別の関数を採用すればこの欠点を克服出来るのでしょうか? しかし元々ニューロンの出力は0か1でしかないのを、計算の都合上、微分可能なシグモイド関数を採用したのでした。別な関数を採用するにしても
- で
- で
でなければなりません。さらに、勾配法を用いるためにはは単調増加でなければなりません。そうすると、
- で
- で
になるので、やはりを大きく変更する必要がある時に、かえって勾配が小さくなる、という問題が発生します。つまりという項は表れないかもしれませんが、やはり同じ問題が発生するということになります。
以上から、バックプロパゲーションでの収束が遅いという問題は解決が難しそうなことが分かります。