ホップフィールドネットワーク理解に向けての準備体操(4)

もう一つ別の例を考えます。

  • 図20


シナプス係数は「ホップフィールドネットワーク理解に向けての準備体操(3)」の図13と同じく全て1(正確に言えばi\neq{j}の時にs_{ij}=1、もちろんs_{ii}=0)とします。初期状態を(x_1,x_2,x_3)=(1,-1,-1)とします。

  • 図21


まずニューロン1の出力を計算します。するとx_1=-1(青色)となります。


これでもう安定状態になりました。以下のニューロン2、3の出力の計算は省略します。今回の安定状態は前回と異なり(x_1,x_2,x_3)=(-1,-1,-1)となりました。

  • 図22


ただ、ここでちょっと注意することがあります。もし出力を計算するニューロンの順序を変えて、最初にニューロン2、次にニューロン3、次にニューロン1・・・というふうに計算したとすると結果が異なってきます。まずニューロン2の出力を計算するとu_2=0になり、1(0)=1なのでx_2=1(赤色)になります。

  • 図23


次にニューロン3の出力を計算するとx_3=1(赤色)になり、これで安定状態になりました。今回の安定状態は(x_1,x_2,x_3)=(1,1,1)で図21とは正反対の状態(1と−1が入れ替わった状態)です。


つまり、どの安定状態に達するかは初期状態とニューロンの計算順序に依存します。しかし、重要なことは、必ずどれかの安定状態に到達する、ということです。これはもっとニューロンの個数が多いホップフィールドネットワークでも変わらないそうです。それはなぜでしょうか? ここからは説明が天下りになってしまうのですが、ホップフィールドネットワークではニューロンの出力を計算する毎に「ある量」が少なくなるか、あるいは等しいままであり、その量は絶対増えない、という、そんな量があるそうです。それは

  • E=-\frac{1}{2}\Bigsum_{i=1}^n\Bigsum_{j=1}^ns_{ij}x_ix_j・・・・(7)

という量で、この量は物理学との類推からエネルギーと呼ばれています。そして安定状態はこのエネルギーEが極小になるようなx_iの組合せ(今まで状態という言葉を漠然と使ってきましたが、全てのニューロンの出力の組合せ\{x_i\}状態と呼ぶことにします。)になっているとのことです。ニューロンの出力を計算して更新するたびにエネルギーが減るか、少なくとも等しいままになりますので、出力の更新を繰り返すとエネルギーは減少していきます。そして最後には、ニューロンの出力をどのように更新しても減少出来ない状態に到達する、ということです。


では、なぜエネルギーは増加しないのか、について次回、検討します。