1個のニューロンの学習(1)
マカロック・ピッツの式
- ・・・・(1)
に従う1個のニューロンがあるとする。「パターン認識(4)」で説明した線形分離可能なパターン群が与えられたとして、このニューロンをそのパターン群を識別出来るようにするために(人が外部からシナプス荷重やしきい値を設定するのではなくて)学習によって自動的にシナプス荷重やしきい値を調整することは出来ないだろうか? つまり、このニューロンにパターン(=全てのについてのの値の集合)を与えて出力を観察する時にあるパターン群に属する時だけとなり、そのパターン群に属さない時にはとなるように自動的にやを調整することは出来ないだろうか? 出来ればこのニューロンは脳の機能に少し近づくことになる。
ニューロンの学習を実現ために、パターンをニューロンに与えて出力を得た後に、外部から正解を示しその正解によってやを調整する方法を考える。これを次のように考える。正解を示す信号を教師信号と呼び、で表すことにする。
- 出力が教師信号と等しかった場合、つまりである場合は、やの値を変えない。
- 出力が教師信号と等しくなかった場合は次の2つに分けて考える。
- 教師信号が1なのに出力が0だった場合、つまり、だった場合は、このパターンでよりが1になり易いように
- の値を減らす。
- であるようなについては、の値を増やす。(この結果の値が増える。)
- であるようなについては、の値を変えない。(なのでの値が何であってもの値はゼロで変わらない。)
- 教師信号が0なのに出力が1だった場合、つまり、だった場合は、このパターンでよりが0になり易いように
- の値を増やす。
- であるようなについては、の値を減らす。(この結果の値が減る。)
- であるようなについては、の値を変えない。(なのでの値が何であってもの値はゼロで変わらない。)
- 教師信号が1なのに出力が0だった場合、つまり、だった場合は、このパターンでよりが1になり易いように
上記で登場したこれらの増やす値、減らす値に全て同じ値を使うと仮定する。そしてそれをで表すことにする。は正の定数である。そうすると上記は以下のように表すことが出来る。
-
- 、の場合
- と置換える。
- であるようなについては、と置き換える。
- であるようなについては、の値を変えない。
- 、の場合
- と置換える。
- であるようなについては、と置き換える。
- であるようなについては、の値を変えない。
- 、の場合
これらのことは以下の式にまとめることが出来る。
- ・・・・(2)
- ・・・・(3)
確かにこの式(2)(3)によれば、ニューロンの出力が正解の場合(の場合)は、とは変化せず、不正解の場合(の場合)でもの場合はは変化しない。そして、、の場合、、であるようなについては、、逆に、の場合、、であるようなについては、となる。式(2)(3)はローゼンブラットが1958年に提案した学習アルゴリズムである。これは標準デルタ則と呼ばれている。