1個のニューロンの学習(2)
「1個のニューロンの学習(1)」で述べた標準デルタ則
- ・・・・(2)
- ・・・・(3)
で学習が実現できるかどうか、例題を使って試してみる。
「パターン認識(4)」で登場したような入力信号が2個の場合を考える。この入力をそれぞれとで表すことにする。ニューロンからの出力をで表すことにする。(上の式(2)(3)と変数の使い方が異なっているので注意。) は0か1の値をとるものとする。このニューロンにの時だけを出力し、その他のの時はを出力するように学習を行う。つまりこれは、このニューロンをAND素子にしようとするものである。を与えた時のの正解の値を以下の表で示す。
パターンを、、、の順にニューロンに与え、その時の出力を観察する。そして、1回出力を得るたびに、その出力と正解の値(これは教師信号によって示される)を用いてシナプス荷重としきい値を式(2)(3)に従って変化させる。この例題と式(2)(3)では変数の使い方が異なっているので、この例題用に式(2)(3)を書き換えておく。その前に、のシナプス荷重をで、のシナプス荷重をで表すことにする。しきい値にはそのままを用いることにする。式(2)(3)の定数はそのまま用いることにする。また教師信号もそのまま用いることにする。するとマカロック・ピッツの式
- ・・・・(1)
は
- ・・・・(4)
と書き換えられ、式(2)は
- ・・・・(5)
式(3)は
- ・・・・(6)
- ・・・・(7)
と書き換えられる。
の値をどう決めるかについて今の時点では根拠がないが、とりあえずとしてみる。また、、、の初期値を、とりあえず、、とする。この時、式(4)は
- ・・・・(8)
となるので、パターン、、、を与えた時の出力は
のようになる。これは目的とする表1の結果(=正解)とは大きく異なっている。はたしてこのニューロンは式(5)(6)(7)によるシナプス荷重としきい値の調整によって、表1を学習出来るだろうか?
学習の様子を分かりやすくするために、「パターン認識(4)」の時と同じようにを座標で表すことにする。
赤い丸で示したのが他のパターンと識別すべきパターンである。さて、このあとの説明では座標軸が邪魔になってくるので図を
のように変更して以下の説明を行なうことにする。
まず、最初にパターンが与えられた場合の様子を以下の図で示す。
図3の一番上の式は、式(4)のの値を0とした式である。この式は、の値が0になる領域と1になる領域の境界を表している。図3において斜めに書かれた線がこの式が表す直線である。この直線から出ている矢印は、直線のそちら側がが1であることを示している。なお、境界線上の点は側に含まれる。次には入力パターンを示している。図ではパターンを示す丸を黒線の丸で囲んで、それが現在の入力パターンであることを示している。次の式は、式(4)の現在の式である式(8)にを代入してを計算したものである。最後のは教師信号の値を示してる。この例ではとの値は異なっているので、ニューロンの出力は「不正解」である。よって式(5)(6)(7)によって、、が書き換えられる。その結果
となるので、は今度はとなる。このように変更されたところに次のパターンが与えられる。図3と同様に示すと以下のようになる。
この図では図3に比べて境界線の位置が移動している。また、パターンを示す丸をさらに丸で囲んで、現在の入力パターンを示している。今回もニューロンの出力は不正解だったので、同じように式(5)(6)(7)によって、、が書き換えられる。その結果
となるので、は今度はとなる。このように変更されたところに次のパターンが与えられる。その状態を図で示すと以下のようになる。
今回のニューロンの出力は正解だったので、次のパターンも同じ設定で待ち受けることになる。(以下、続く。)