| 線 | 格付け | この日の検証 |
|---|---|---|
| Marshall の符号則(二部格子の反強磁性で厳密) | 教科書(Marshall 1955、Lieb–Mattis) | J₂ = 0 で 10⁻⁴、0.5 で 10⁻⁶ |
| 符号構造の学習が NQS の難所 | Szabó–Castelnovo 2020、Westerhout ら 2020 | 学ぶと 7〜19% |
| Majumdar–Ghosh 点 J₂ = 0.5 の厳密なダイマー基底状態 | 教科書(1969) | E₀ = −6.0000(N = 16、−3N/8) |
| フラストレーションで Marshall 則が壊れる | 教科書 | J₂ = 0.8 で教えた版 33% |
| 「教えてから学ぶ」が最良(予言) | 外れ | J₂ = 0.8 で 8.4%、学ぶだけの 7.3% に負ける |
| 学習の節 = 計算の節 = 拡散の節 | この地図の語り | — |
第10回の符号問題には二つの顔があった。負の重みをサンプリングできないこと(統計の壁)と、拡散が節を越えられないこと(表現の壁)。ニューラル量子状態(第2回のヘリウムの系統)は、波動関数をネットワークで表して変分法で学習する。ここではサンプリングを一切せず、状態ベクトル全体(S_z = 0 の 12,870 成分)でエネルギーを厳密に計算して最小化する。残るのは「符号を表現できるか、学習で見つけられるか」だけになる。
系は J₁–J₂ ハイゼンベルク鎖(16 サイト、周期的)。J₂ = 0 では Marshall の符号則(A 副格子の上向きスピンの数の偶奇)が基底状態の符号を厳密に与える。J₂ = 0.5 は Majumdar–Ghosh 点で基底状態が厳密なダイマー積(符号則は依然正しい)。J₂ = 0.8 ではフラストレーションで符号則が壊れる。ネットワークは 16 → 24 → 24 → 出力の MLP(1033 パラメータ、12,870 次元より十分小さい)。
| 記号 | 波動関数 | 符号は | 対応するもの |
|---|---|---|---|
| A | ψ = e^{f(s)} | 持てない | 制約なしの拡散(第10回 (i)) |
| B | ψ = sgn_M(s)·e^{f(s)} | 教える | 固定節(第10回 (ii)) |
| C | ψ = f(s)(実、符号自由) | 学ぶ | 解放節 |
| D | ψ = e^{f(s) + i g(s)} | 位相として学ぶ | 複素の試行関数 |
| E | ψ = sgn_M(s)·e^{f(s) + i g(s)} | 教えてから学ぶ | 近似の節 + 補正 |
| J₂ | 厳密 E₀ | A 正 | B 教える | C 学ぶ(実) | D 学ぶ(複素) | E 教えて学ぶ |
|---|---|---|---|---|---|---|
| 0 | −7.14230 | 58% | 1.5×10⁻⁴ | 9.2% | 6.8% | 1.2×10⁻⁴ |
| 0.5 | −6.00000 | 67% | 1.0×10⁻⁶ | 15% | 8.3% | — |
| 0.8 | −6.78879 | 62% | 33% | 19% | 7.3% | 8.4% |
第10回の表(固定節 → 解放節)の順序から、「近似の符号則を教えてから複素の補正を学ぶ E が、J₂ = 0.8 で B と D の両方に勝つ」と予言して走らせた。結果は 8.4% で、D の 7.3% に負けた(J₂ = 0 では B と同じ 1.2×10⁻⁴)。
読み:間違った符号則は、出発点ではなく罠になる。ネットワークは教えられた符号を打ち消すところから始めなければならず、ゼロから位相を学ぶより遠回りになった。固定節法で「悪い節は良い節より悪い」のと同じで、近似の節を与えることが常に得とは限らない。ただし 3000 ステップ・一つの初期化での比較で、学習率や初期化を変えれば逆転する可能性はある。
| 拡散(第8回) | 計算(第10回) | 学習(この回) | |
|---|---|---|---|
| 正のまま進むと | 二時刻相関が出ない | ボソンに崩れる(E = 1) | 60% 外す(A) |
| 節を教えると | — | 固定節で E = 2 | 10⁻⁴〜10⁻⁶(B) |
| 節を自分で扱うと | 負の確率(Wigner)が要る | ⟨sign⟩ が e^{−ΔE·t} で消える | 7〜19%(C、D) |
| 教えた節が間違いだと | — | 固定節の偏り | 33%(B at J₂ = 0.8) |
拡散・サンプリング・学習の三つで、障害は同じ一つの節である。違うのは「節を越える手段」で、拡散には負の確率、サンプリングには双対表現、学習には複素の位相が、それぞれの扉になっている。
scripts/nqs_sign.py、scripts/nqs_sign_e.py(出力 *_out.txt)