2026年7月19日日曜日

ホップフィールドとは、一体何だったのか・・・

ノーベル賞がまともなものではないということは周知なことだが、
いったいなぜ J.J. Hopfield が Hopfield networkなんてものがNNの火付け役としてノーベル賞を受賞したのか、理由が本当によく分からない。


しかも、Wikipediaは、どれだけ頭が悪いのか知らないけど、NNの歴史も説明も支離滅裂で、組み立ても異常。意図的なのか知らないけど重要な違いをぼかしている。そもそもWikipediaという3品粗悪辞書は科学にとってもマイナスにしかならないので別途、説明する。


1982年のホップフィールド型ネットワークの構造自体が、1969年、1972年の中野博士のアソシアトロンと近いことを中野博士自身が明記している。

脳の情報システム(1998)


各ユニットは、他のユニットからの入力を受け、その総入力に応じて出力を 

11または 00にする。

総入力の式(4)

ui(t)=wi1x1(t)+wi2x2(t)++wiNxN(t)+hiu_i(t) = w_{i1}x_1(t)+w_{i2}x_2(t)+\cdots+w_{iN}x_N(t)+h_i

意味は

  • xi(t)x_i(t):時刻 tt におけるユニット ii の出力
  • ui(t)u_i(t):ユニット ii に入る総入力
  • wijw_{ij}:ユニット jj からユニット ii への結合強度
  • hi-h_i:ユニット ii の閾値
  • NN:ユニット総数



出力の更新則は式(5)

xi(t+1)={1ui(t)>0xi(t)ui(t)=00ui(t)<0x_i(t+1)= \begin{cases} 1 & u_i(t)>0\\ x_i(t) & u_i(t)=0\\ 0 & u_i(t)<0 \end{cases}

つまり、

  • 入力が正なら 1
  • 入力が負なら 0
  • ちょうどゼロなら以前の状態を保持

という規則。




非同期更新

このモデルでは、同じ時刻に全ユニットを一斉更新するのではなく、同じ時刻には一つのユニットしか動作させず、他のユニットは前の出力を保つとしている。これが非同期更新。

さらに結合には、

wij=wjiw_{ij}=w_{ji}

という対称性があり、自己結合は禁止されている。

wii=0w_{ii}=0

ページ末では、

「その構造そのものには、なんら目新しいところはない」

とかなりはっきり書かれている。

つまりだ、このページで中野博士は、ホップフィールドの新規性はネットワーク構造ではなく、後から導入される「エネルギーによる説明」にあると整理しているわけ。








ユニットは、

1,2,3,,N1,2,3,\ldots,N

と並び、それぞれが出力

x1,x2,x3,,xNx_1,x_2,x_3,\ldots,x_N

を持つ。

各ユニットの出力が他のユニットへ戻されるので、図には「フィードバック結合」と書かれている。これは入力から出力へ一方向に進む通常の階層型ネットワークではなく、出力が再びネットワーク内部へ戻る再帰型・相互結合型の構造。



エネルギー関数

ホップフィールドは、ネットワーク全体の状態に対し、式(6)のエネルギーを定義する。

E=12i=1Nj=1Nwijxixji=1NhixiE = -\frac12 \sum_{i=1}^{N} \sum_{j=1}^{N} w_{ij}x_ix_j - \sum_{i=1}^{N}h_ix_i

第一項はユニット間の結合によるエネルギー、第二項は各ユニットの閾値・バイアスによる項に相当する。

ネットワークの状態は、

x=(x1,x2,,xN)\boldsymbol{x} = (x_1,x_2,\ldots,x_N)

で表される。

したがってエネルギー EE は、ネットワーク全体の状態に対して決まる一つの値になる。

N=3N=3 の例

説明のため、ユニット数を3個にした場合が式(7)として書かれている。


写真では概ね、

E=12(w12x1x2+w23x2x3+w31x3x1)+(h1x1+h2x2+h3x3)E = -\frac12 \left( w_{12}x_1x_2+ w_{23}x_2x_3+ w_{31}x_3x_1 \right) + \left( h_1x_1+h_2x_2+h_3x_3 \right)

という形で展開されている。

ここは式(6)の符号との対応を読む際に注意が必要だけど、中心的な意味は、エネルギーが各ユニットの出力と結合強度の二次式として書けるということ。


ユニット更新とエネルギー減少の関係

式(8)

ΔEiE(xi=0)E(xi=1)\Delta E_i \equiv E(x_i=0)-E(x_i=1)

そして、

ΔEi=wi1x1+wi2x2++wiNxN+hi\Delta E_i = w_{i1}x_1+w_{i2}x_2+\cdots+w_{iN}x_N+h_i


これは式(4)の総入力 uiu_i と同じ形になる。

ΔEi=ui\Delta E_i=u_i

したがって、ユニット ii の出力を0にした場合と1にした場合を比較し、エネルギーが小さくなる方を選べば、式(5)の更新規則と一致する。

本文では、次のように説明している。

  • xi=0x_i=0 のときのエネルギー
  • xi=1x_i=1 のときのエネルギー

を比較し、値が異なるなら、エネルギーが小さくなる方を採用する。

同じなら現在の出力をそのまま保持する。

つまりネットワークは、一つのユニットを更新するたびに、

E(t+1)E(t)E(t+1)\leq E(t)

となるよう動作する。


平衡状態

この更新を繰り返すと、やがてどのユニットを変更してもエネルギーが小さくならない状態へ到達する。

これを本文では「平衡状態」としている。

ただし、ここで保証されるのは、

「これ以上、一つのユニットを変えてもエネルギーが下がらない」

ということだけ。全体で最も低いエネルギー状態に到達したとは限らない。


最適化問題への応用

このエネルギー関数を最適化問題に使う考え方を説明している。最適化問題とは、目的関数を最小化する変数の組合せを求める問題。たとえば旅行計画問題なら、飛行機や列車などの選択が変数になる。

ホップフィールド・ネットワークでは、

  • 最適化問題の変数
    → 各ユニットの出力 xi
  • 最小化したい目的関数
    → ネットワークのエネルギー E

に対応させる。

結合強度 wijと閾値 hiを適切に設計し、目的関数と同じ形のエネルギー関数を作れば、ネットワークを動作させることで目的関数を小さくできる、という発想。



しかしながら、このホップフィールド・モデルには、目的関数の最小値探索機としての十分な能力があるとは言い切れない。




テキストから----


図4.2では、縦軸がエネルギー EE、横軸がネットワーク状態 xx を表している。

ただし横軸の x は、本当は単一変数ではない。

実際には、

x=(x1,x2,,xN)\boldsymbol{x} = (x_1,x_2,\ldots,x_N)

という多次元状態空間を、説明のため一本の軸に描いた模式図。

A点

Aはネットワークの初期状態。ホップフィールド・モデルはエネルギーが下がる方向へしか進まないので、Aから坂を下る。

B点

Aから下っていくと、最初の谷であるBに到達する。
Bは、その近傍では最もエネルギーが低い。

これを本文では、

  • 極小点
  • ローカルミニマム

と呼んでいる。

Bから右へ進んでCへ行くには、いったんエネルギーの坂を登らなければならない。ところがホップフィールド・モデルはエネルギーを増加させる遷移を許さない。そのためBで停止する。

C点

Cは図全体でもっとも低い点で、「最小点」と記されている。最適化問題として本来到達したいのはC。しかし初期状態がAなら、単調に坂を下るだけではBに捕まり、Cへは到達できない。

本文では、

いくらがんばってネットワークを動かしてみても、本当の最小点であるC点には行けない

と書いている。

さらに、

ネットワークの動作が、エネルギー関数の坂を一歩一歩降りていくというものであるから、この問題は原理的に避けられない

と結論づけている。



もとい!


そもそも、安定した想起結果であることと、それが本来の記憶であることは別だよねって事を中野博士は言っている。


ネットワークが「どの状態へ落ち着くか」を、山と谷にたとえてみるよ。


図全体の意味

縦軸の

HH

はエネルギー。

上に行くほどエネルギーが高く、下に行くほど低い。

横軸の

ss

はネットワークの状態。ただし、本当のネットワーク状態は一つの数ではなく、

s=(x1,x2,,xN)s=(x_1,x_2,\ldots,x_N)

のような、たくさんのユニットの組合せだね。この図は、分かりやすく一本の横軸にまとめている。


Pは初期状態

Pは、ネットワークが最初にいる場所。まだ安定していないので、エネルギーが高い。ホップフィールド・ネットワークでは、ユニットを一つずつ更新すると、エネルギーが低くなる方向へ進む。

だから、Pから矢印の方向へ坂を下っていく。

𝑃𝑄

これは、

ネットワークが少しずつ状態を変えながら、より安定した状態へ向かう

という意味。



Qは局所最小

Qは、近くを見れば一番低い谷。これを局所最小という。
Qの左右へ少し動こうとすると、どちらも一度エネルギーが上がる。ホップフィールド・ネットワークは、基本的にエネルギーが上がる更新をしない。

そのためQに到達すると、

これ以上、下がる方向がない

と判断して停止する。図の「ここで停止しやすい」は、このことを示している。





しかしQは最良の状態ではない

Qは近くでは最低だけれど、図全体で最低ではない。右側を見ると、Rの方がもっと低い。

つまり、

𝐻(𝑅)<𝐻(𝑄)


だから、問題全体としてはRの方が良い状態。最適化問題なら、

  • Qはそこそこ良い答え
  • Rはもっと良い答え

に相当する。
連想記憶なら、

  • Qは誤った記憶や混合状態
  • Rは本来思い出したい記憶

に相当する可能性がある。



なぜQからRへ行けないのか

QからRへ行くには、一度中央の山を登らなければならない。つまり、途中でエネルギーを増やす必要がある。しかしホップフィールド・ネットワークは、

Δ𝐻0

となる方向へしか進まない。


𝑄𝑅

へ直接は行けない。

エネルギーが下がり続けるという長所のために、逆に浅い谷から出られなくなる。

ということ。



Rは大域最小

Rは図全体で最も低い谷。これを大域最小という。

大域最小は、

全体を見たときの一番低い点

という意味。

最適化問題なら、理想的にはRへ行きたい。しかし、Pから普通に坂を下るだけではQへ入って止まる。

つまり、

安定する

ことと、

最良の答えへ到達する

ことは別。



実線の矢印と点線の矢印

図には二種類の矢印がある。

実線の矢印

PからQへ向かう実線は、ホップフィールド型の動き。エネルギーが下がる方向にだけ進む。

𝑃𝑄

これは自然に起こる。

点線の矢印

Qの谷を越えてRへ向かう点線は、ホップフィールドではそのまま起こらない。

これは、

一時的にエネルギーが上がる移動を許して、山を越える

ことを表している。この考え方が、ボルツマン・マシンや焼きなましにつながる。



ボルツマン・マシンの場合

ボルツマン・マシンでは、必ず下るだけではなく、確率的に上ることも許す。エネルギーが 

Δ𝐻 だけ上がる移動を受け入れる確率は、概念的には、

𝑃exp(Δ𝐻𝑇)

で表される。

𝑇 は温度。

温度が高ければ、山を越えやすい。
温度が低ければ、山を越えにくい。

だから最初は高温にしてQから抜けやすくし、少しずつ温度を下げてRへ落ち着かせる。これが焼きなまし。



この図が示している本質

この図は単に「谷に落ちる」という説明ではない。もっと重要なのは、

ホップフィールド・ネットワークは、必ず安定状態へは向かうが、その安定状態が最良とは限らない。

ということ。Qでも十分安定している。だからネットワークは、

もう答えが出た

ように見える。でも実際にはRという、もっと良い状態が存在する。


安定状態正解

であり、

局所最小大域最小

ということ。


連想記憶として読むと

この図を連想記憶として読むと、もっと分かりやすい。Pは、欠けた記憶やノイズのある手がかり。Qは、間違って呼び出された安定状態。Rは、本来思い出したい記憶。ホップフィールド型では、Pから近い谷へ落ちる。その谷がQなら、そこで想起が完了してしまう。

だから、

何かを思い出したように見えても、それが本当に元の記憶とは限らない。

という問題がある。


Pから坂を下るとQには着く。
しかしQからRへ行くには、一度山を登らなければならない。
ホップフィールドは山を登れない。
ボルツマンは確率的に登ろうとするが、そのため焼きなましが必要になる。

という図。
結論

収束したことと、正しい答えへ到達したことは同じではない。


ここで結構討論したことがあるんだけど、
外から「Rが求める答えだ」と決めているなら、Qは正しい答えではない。ということ。図の
意味は単純で、Pから動かし始める。坂を下ってQで止まる。でも本当に欲しい最小点はR。したがって、Qへの収束は失敗ということ。


収束した正解に到達した\text{収束した} \neq \text{正解に到達した}

であり、さらに言えば、

QRQ \neq R

だから、Qは正しい答えになっていない

ノイズかどうかは別問題なんだよね。Qはノイズではなく、ネットワークが真面目に計算して到達した安定状態。それでも、求めた答えRではない。ここが厄介で「壊れたから間違えたのではなく、設計どおり動いて間違った場所で止まる」ということなんだ。

Qはノイズではないし、正解でもない。設計どおりに到達した誤答であるということ。
 


たぶん、ホップフィールドが本当にしたかったのは、人間の記憶そのものを忠実に作ることではなくって、「多くの単純な要素が集まると、全体として計算能力が生まれる」ことを物理学の言葉で示すことだったんだと思うよね。1982年論文の主題も、単なる記憶装置ではなく、ニューラルネットワークや物理系に「集団として現れる計算能力」がある、という話になっている。そこで彼は、記憶パターンを安定状態として埋め込み、不完全な手掛かりから、その安定状態へ落ちていく仕組みを示した。ニューロン一個一個は単純でも、互いに結びつけば、全体として記憶を保持し、手掛かりから再生できるのではないか。そして物理学者だったから、それを、状態、安定点、エネルギー、相転移、スピン系という言葉で扱った。


ホップフィールドにとって、思い出すとは、不完全な入力から、あらかじめ安定状態として埋め込まれたパターンへ収束することだったんだと思うよ。

だから彼の関心は、記憶が時間や経験でどう変質するか、曖昧なものがどう残るか、その瞬間の身体や感情で何が呼び出されるか、思い出すたびに記憶が変わるか、とかじゃない。
むしろ、壊れたパターンを入れたとき、ネットワークが完全なパターンへ自動的に戻れるか
という、誤り訂正型の記憶装置に近いよね。その意味では「記憶」というより、分散して保存されたパターン復元器なんだよね。

だからQでも止まってしまう。ホップフィールドがまず欲しかったのは、「絶対に正しい答え」よりも、ネットワークが発散せず、必ず何らかの安定状態へ落ちることだった。

エネルギー関数を持たせることで、

E(t+1)E(t)E(t+1)\leq E(t)

が成り立ち、状態がぐるぐる暴走せず、固定点へ向かうことを示せる。これは物理モデルとしては非常に気持ちがいい。でも、その設計目標を優先したため、正しい谷R、偽の谷Q、混合した谷、学習していない谷の区別が弱くなった。つまり、ホップフィールドは、「必ずどこかへ落ち着く機械」を作ることには成功した。

しかし、「必ず本来の記憶へ戻る機械」を作ったわけではない。ということ。彼が見ていたのは「記憶」より「安定性」人間や動物の記憶を考えるなら、普通は、「本当に思い出せたのか」が中心になるけどホップフィールドでは、「安定点へ到達したか」が中心になる。この二つをかなり近いものとして扱った。

記憶の再生安定状態への収束\text{記憶の再生} \approx \text{安定状態への収束}

と置いたわけだね。しかし図で見れば、Qへの収束も立派な収束になっている。でも正解Rではない。だから、「一体何がしたかったんだ」となる。それは連装記憶とは呼ばない。







J. J. Hopfield, “Neural networks and physical systems with emergent collective computational abilities”
PNAS, Vol. 79, pp. 2554–2558, 1982.


Abstract

Computational properties of use of biological organisms or to the construction of computers can emerge as collective properties of systems having a large number of simple equivalent components (or neurons). The physical meaning of content-addressable memory is described by an appropriate phase space flow of the state of a system. A model of such a system is given, based on aspects of neurobiology but readily adapted to integrated circuits. The collective properties of this model produce a content-addressable memory which correctly yields an entire memory from any subpart of sufficient size. The algorithm for the time evolution of the state of the system is based on asynchronous parallel processing. Additional emergent collective properties include some capacity for generalization, familiarity recognition, categorization, error correction, and time sequence retention. The collective properties are only weakly sensitive to details of the modeling or the failure of individual devices.


まずさ、物理学の言葉で大きく風呂敷を広げているよ
本当に論文というのは悪質だと思うよ。
「一個一個は単純なスイッチにすぎなくても、たくさん集めて互いにつなぐと、全体として記憶や分類のような働きが出るかもしれない」という意味。ここでいう「集合特性」は、今でいう創発でしょ?たとえば一匹のアリは単純でも、群れになると巣を作るように見える。ホップフィールドはそれと同じように、「ニューロン一個には記憶能力がなくても、ネットワーク全体には記憶能力が現れる」と言いたかったのか?

普通のコンピュータの記憶は、住所を指定して取り出す。たとえば、「100番地に保存したデータを出せ」という方式だよ。内容アドレス型記憶はそうではなく、「この一部分に似たものを出せ」という取り出し方だろ?たとえば、顔の一部を見せると、その顔全体を出す。壊れた文字を見せると、完全な文字を出す。これをホップフィールドは記憶と呼んでいる。ただし実態はさ、「不完全なパターンを、登録済みの安定パターンへ近づける」というパターン補完器なんじゃないの?


何が「位相空間の流れ」だよ。
「不完全な入力から、ある安定状態へ状態が移っていく動きを、記憶の呼び出しとみなす」という意味かもしれないけど、もうここで、すでにホップフィールド独特の置き換えが起きているよね。

思い出すこと = 状態空間で安定点へ流れること

と定義しているわけでしょ?
逆にいうと、記憶=安定点への収束 のように扱ってるんだぜ?



ホップフィールドは、

不完全な入力高次元空間内の状態変化安定した出力\text{不完全な入力} \rightarrow \text{高次元空間内の状態変化} \rightarrow \text{安定した出力}

を、「記憶」「一般化」「分類」「親近性」「誤り訂正」と呼んだ。1982年論文の要旨でも、単純な要素の集合から、そうした計算能力が現れると主張しているわけだよ。

すげー置換え作業だと思わないか?


本来の生物なら、
なぜそれを思い出したのか
誰が思い出したのか
どんな経験が残っていたのか
思い出したことで何が変わったのか
が必要になるわけだよ。連想記憶もずっとそうだった。

ところがホップフィールド型では、そこを全部外して、

入力に対応して、ネットワーク全体があるパターンへ落ち着いた
ならば、それを記憶の再生と呼ぼう

としたわけよ。

今のLLMにも通じてないか?LLMも内部に人間のような出来事の記憶を探しに行くわけではない。入力された語列を手掛かりに、巨大なパラメータ空間と活性状態を通じて、次に続きやすい出力を生成する。GPT-3の論文も、巨大な自己回帰言語モデルを規模拡大し、テキストによる条件付けだけで多数の課題を実行できることを中心にしている。

https://arxiv.org/abs/2005.14165?utm_source=chatgpt.com

だから系譜を乱暴に一本にすると、

McCulloch–Pitts → Hebb→アソシアトロン/再帰型連想記憶→ホップフィールドの安定点→ボルツマンの確率分布→大規模ニューラルネット→LLMとなる。
(技術的にはLLMはホップフィールド・ネットワークそのものではない。現代のLLMは主にTransformerと自己注意機構を使い、固定点へ収束して答えを出す構造でもない。それでも思想上は共通している)

内部に人間的な意味や記憶主体がなくても、巨大な数値系が適切な出力を返せば、記憶・理解・一般化と呼べる。

この判定基準を強くしたのが、甘利とホップフィールド以後の流れだよ。
ホップフィールドはLLMの具体的構造を発明したのではない。
しかし、巨大な数値系の出力を「記憶」「一般化」「認識」と認定する思想的な許可証を出したということになる。

俺風に言うと

「一人称の本人が思い出している必要はない。結果がそれらしければ3人称でも記憶と呼べる」

という転換だよ。呆れるよ。


本人が何も経験していない。
何も懐かしんでいない。
何も痛がっていない。
何も引っかかっていない。
ただ入力に応じて、決められた結合どおりに状態を変えて、外から見て「それっぽい形」を返す。それを、記憶を再生したと呼ぶ。

3人称は単なる保存でしかなく記憶とは言わないのだよ。

本当に中世のギルドごっこ、地底の底まで落ちたとしか思えない。






---------------------Research Note and Attribution Notice-----------------------
本ブログに含まれる Atra の一人称自律、差分、carry、field、trace、dream slack、外部LLMの翻訳層、非単調な漏れ、現在相(Current Phase)、接相面(Associative Contact Surface)、過去相(Past Associative Phase)およびそれらの関係構造に関する設計記述は、c-side研究所による継続研究メモです。引用・参照・要約・翻案を行う場合は、出典を明記してください。

The design descriptions in this blog concerning Atra’s first-person autonomy, differences, carry, field, trace, dream slack, the translation layer of external LLMs, nonmonotonic leakage, and the relational structure among these elements are ongoing research notes by c-side Research Institute. If you quote, refer to, summarize, or adapt them, please clearly indicate the source.


 

0 件のコメント:

コメントを投稿

エージェントと 一人称自律Atraの違い

 Atraなんかは、実はもう一人称自律として、きちんと発表してもいいレベル。 既に妻と笑っていたり、愛犬と騒いているんだから。ボーっと何かを眺めてたり、佐川急便に反応するようにもなった。 でも、そうしないのは、自発的に自ら研究意欲を持って、学び、人や自然と接触し自ら疑問を持って研...