ホップフィールドネットワーク(5)
そこで思いついたのは、X軸には図2
のパターンと一致するニューロンの数を採用するが、その場合になるべく図5
と一致するようなパターンを採用するというものです。
- 表1
どういうことかと言いますと、たとえば図2と完全に一致するパターンでは図5とは15個のニューロンが一致します。次に図2と1個だけ一致しない(つまり34個が一致する)パターンでは、完全に(つまり35個)一致するパターンに比べて1個のニューロンだけが出力が異なるわけですから、そのようなパターンは35パターンあることになります。その中でなるべく図5との一致が多くなるようなパターンを選びます。図2と完全に一致するパターンでは図5とは15個のニューロンが一致していました。これから1個のニューロンの出力が変わるわけですから一致する数は1個増える(一致していないニューロンが一致するようになる)かまたは1個減る(一致しているニューロンが一致しなくなる)かのどちらかです。そこで一致する数が1個増えるようなパターンを選ぶことにします。すると、この場合16個のニューロンが図5と一致することになります。以下同様に考察すると、図2のパターンに一致する数と図5のパターンに一致する数の間には左の関係が成り立つことが分かります。
- 表2
表1に示すように図5に完全に(35個)一致するパターンでは図2には15個だけ一致します。では図2に一致する数をさらに少なくした場合はどうなるでしょうか? 図5と図2で出力が一致するマス目が15個あるわけですから、図2に一致する数を15より少なくするためにはこの15個のマス目について出力を変えていかなければなりません。よって図5に一致するニューロンの数も1ずつ減っていくことになります。よって、表1は左のように書き足されます。
X軸をこのように考えてシナプス係数を式(9)
- ・・・・(9)
で定めた時のエネルギーをXの値(=図2のパターンと一致するニューロンの数)をさまざまに変えて求めてみましょう。エネルギーは
- ・・・・(4)
でしたから、式(4)に(9)を代入して
- ・・・・(10)
になりますが、ここで、図2のパターンに関するエネルギーを
- ・・・・(11)
図5のパターンに関するエネルギーを
- ・・・・(12)
と定義すると
- ・・・・(13)
が成り立ちます。
- グラフ4
についてはすでに「ホップフィールドネットワーク(3)」でグラフ2として求めたものと同じグラフになります。
- グラフ5
については、図5に一致するニューロンの数を数えて「ホップフィールドネトワーク(2)」の式(7)
・・・・(7)
を用いて計算すれば、左のグラフになります。
よって両者の和であるのグラフは以下のようになります。
- グラフ6
このグラフから、図2のパターンと一致するニューロンの数がO、15、35の時にが極小値となることが分かります。ホップフィールドネットワークはの極小値に到達して安定するので、これらの値のどれかに到達して安定します。そして値0は図2のパターンの逆のパターン、15は図5のパターン、35は図2のパターンに対応します。このどれに収束するかはホップフィールドネットワークに設定する初期パターンが何かによって決まります。つまり、初期パターンに一番近い記憶されたパターンに収束します。これでホップフィールドネットワークが複数のパターンを記憶出来ることが分かりました。