ホップフィールドネットワーク(4)

次にホップフィールドネットワークが複数のパターンを記憶できるということを見ていきます。
たとえば、

  • 図5

  • 図2
  • t

の2つのパターンをホップフィールドネットワークに記憶させることにします。このためには以下のようにします。
まず、図5のパターンをX_i(3)で、図2のパターンをX_i(4)で表します。表し方は「ホップフィールドネットワーク(1)」でX_iを決めたのと同じやり方です。つまり、マス目が白い場合をー1、黒い場合を1で表すことにします。
次にシナプス係数s_{ij}

  • s_{ij}=\left\{\begin{array}X_i(3)X_j(3)+X_i(4)X_j(4)&\;&(i\neq{j})\\0&\;&(i=j)\end{array}・・・・(9)

で定めます。あとは、今までと同じように動作させればよいのです。ホップフィールドネットワークに図5に近いパターンが入力されれば最終的に図5のパターンに到達して安定し、図2に近いパターンが入力されれば最終的に図2のパターンに到達して安定します。


なぜそんなことが可能なのでしょう? これを解明するのにたとえば「ホップフィールドネットワーク(3)」で作成したグラフ2

  • グラフ2

のようなグラフを書くことが出来ればよいのですが、このグラフのX軸は「パターンと一致するニューロンの数」となっています。しかし今回パターンは2つあるので、どちらのパターンと一致するのか決めなければなりませんが、これは決められません。では、3次元のグラフを考えて、X軸を「図5のパターンと一致するニューロンの数」、Y軸を「図2のパターンと一致するニューロンの数」、Z軸をエネルギーEとすればよいでしょうか? しかし、これをいざ描こうとすると、「図5のパターンと一致するニューロンの数」と「図2のパターンと一致するニューロンの数」が独立ではない、ということが障害になってうまく描けません。例えば、図2のパターンと一致するニューロンの数が35個、つまりパターンが完全に一致するならば、必然的に図5のパターンと一致する数は15になります。それは図5のパターンと図2のパターンで出力が一致しているニューロンが15あるからです。下の図で図5と図2で異なっているマスを赤で示しました。これら20マスは異なっていますが、残りの15マスは出力が一致しているわけです。

  • 図6

かと言って、図2のパターンと出力が一致しているニューロンの数が決まれば図5のパターンと出力が一致しているニューロンの数が決まるというわけでもありません。たとえば

  • 図3

  • 図7

は、ともに図2のパターンと一致しているマスの数は29個です。しかし、図5のパターンと一致しているマスの数は図3では15個でしかないですが、図7では21個になります。では、どうしたらグラフ2のようなグラフを描いて、ホップフィールドネットワークが複数のパターンを想起出来ることを示すことが出来るでしょうか?