ホップフィールドネットワークは一般にローカルミニマムに収束します。 前のシミュレーションのように複数のパターンを記憶する場合は、 ローカルミニマムに収束することでパターンを想起できていましたが、 たくさんある組合せの中から最適な1つの解を見つけるといった場合、 (このような問題を組合せ最適化問題という) これでは不都合ですね。
そこで、いままでのホップフィールドネットワークに新しく温度T というパラメータを導入し、 確率的な状態変化をするように拡張したボルツマンマシンというものが考え出されました。
下の図はアプレットは、最急降下法の時に1度みたものです。 前の時は左側の谷でボールは止まってしまいましたが、 ボルツマンマシンではこの谷が越えられるようになります。 そのために必要なのが温度というパラメータなのです。
はじめは高い温度を設定し、大きなエネルギーを与え、 小さな谷は越えられるようにしておきます。 そして徐々に温度を下げていき、大域的な最小値に落ち着くようにします。
では、この温度というパラメータと確率的であるということはどのように 関係しているのでしょうか。
ボルツマンマシンの動作を数式で表すと次のようになります。
![]()
![]()
この式の説明はあとでしますが、 ここでは下の式が表す確率によってユニットの状態を+1 に変化させていることを覚えておきましょう。 この式ではエネルギーの変化ΔEk と温度Tの2つのパラメータによって確率を求めています。 これで温度と確率が結び付きましたが、 温度の設定はどのようにすればよいのでしょう。