進化戦略(ES)の式を眺めていたら、「並列にたくさん試すこと」と「順番にたくさん試すこと」が交換できそうに見えた。辿っていくと、熱方程式、統計力学、拡散モデル、くりこみ群、そして特殊相対論の光円錐まで、同じ形の換算が何度も出てきた。新しい発見を探すのではなく、この換算たちを一枚の地図にする。
話が面白くなるほど「そんな夢みたいな話ある?」と疑うべきなので、物語の前に全部の線の格付けを置く。
| 線 | 格付け | この日の検証 |
|---|---|---|
| ES の勾配 = ガウスでぼかした損失の勾配(Stein の補題) | 教科書 | 4 桁一致 |
| ガウスぼかし = 熱方程式を時間 \(\sigma^2/2\) 進めること | 教科書 | 4 桁一致、半群性 \(7\times10^{-9}\) |
| ES/SGD のゆらぎの強さは \(\eta/N\) だけで決まる(温度) | 教科書(SDE 極限) | 定常損失が一致 |
| 谷を越える時間はクラマースの式 \(e^{\Delta U/T}\) | 教科書 | 予言の 15% 以内 |
| 集団サイズ \(N\) = 逆温度(Sella–Hirsh 2005) | 教科書(集団遺伝学) | — |
| 自然選択 1 世代 = 拡散モデルのノイズ除去 1 段(Lande = Tweedie) | 実在、比較的新しい整理 | 4 桁一致 |
| CNN の深さ:stride 1 は \(\sigma^2\)、stride 2 は \(\ln\sigma\) | 既知(Luo ら 2016 ほか) | 綺麗に一致 |
| CNN の層 ↔ くりこみ群(Mehta–Schwab 2014) | 実在するが解釈は係争中 | イジングの流れのみ |
| 大バッチ学習の双曲線 = 光円錐座標、\(B_{\rm crit}\) = c | 語り(式は McCandlish 2018) | 半分だけ:双曲線は当たらず |
| 換算の形は「一次・二次・対数」の三つで足りる | 語り | — |
色:教科書 / 実在するが新しめ・係争中 / この地図の語り / 数値合わせ(今回は該当なし)
この日に出てきた「c」たちを並べるとこうなる。右端の列が本体で、単位の付いた量は舞台装置にすぎない。
| 換算 | 係数 | 交換される二つ | 形 | 不変な無次元量 |
|---|---|---|---|---|
| \(x = ct\) | \(c\) | 時間 ↔ 長さ | 一次 | \(x/ct\) |
| \(\sigma^2 = 2Dt\) | \(D\) | 時間 ↔ 長さ² | 二次 | \(\sigma^2/Dt\) |
| \(T \propto \eta/N\) | \(\eta/N\) | 世代数 ↔ 集団の大きさ | 一次(積) | \(N\cdot T\) |
| \(N\) = 逆温度 | kB 相当 | 集団の大きさ ↔ 温度 | — | \(N s\) |
| \(\beta = it/\hbar\) | \(\hbar\) | 時間 ↔ 逆温度 | — | \(Et/\hbar\) |
| \(\ell = \ln\sigma\) | \(\ln 2\)/層 | 深さ ↔ スケール | 対数 | \(\ln(\xi/a)\) |
| \(B_{\rm crit}\) | \(B_{\rm crit}\) | ステップ数 ↔ サンプル数 | 一次(積) | \(B/B_{\rm crit}\) |
ES は、パラメータ \(\theta\) にノイズ \(\sigma\epsilon\) を足して損失を測り、ノイズとの相関から下る方向を決める。微分は一度も計算しない。それでも Stein の補題(ガウスの部分積分)により
$$\frac{1}{\sigma}\,\mathbb{E}_\epsilon\!\left[L(\theta+\sigma\epsilon)\,\epsilon\right] \;=\; \nabla L_\sigma(\theta),\qquad L_\sigma = L * \mathcal{N}(0,\sigma^2)$$が成り立つ。そしてガウスでぼかすことは、熱方程式を解くことそのものである。
$$\frac{\partial L_\sigma}{\partial(\sigma^2/2)} = \Delta L_\sigma$$ぼかし幅 \(\sigma\) は長さだが、その二乗が時間として振る舞う。左辺は \(L\) が微分できなくても定義できる。段差(崖)のある地形でも ES は有限の「坂」を返す。
地形 \(L=|\sin 3x| + 0.5\,[x>0.4]\)(折れ目と段差あり、勾配は存在しない)。\(\sigma=0.1\)、熱方程式は差分法で時間 \(0.005\) まで。
| x | ES(微分なし) | 熱方程式 |
|---|---|---|
| −1.0 | 0.9867 | 0.9861 |
| −0.5 | −0.2029 | −0.2029 |
| 0.4(段差) | 3.0320 | 3.0316 |
| 0.7 | −1.4227 | −1.4225 |
| 1.2 | 2.1998 | 2.1973 |
「\(\sigma=0.1\) でぼかしてから残りをぼかす」と「最初から \(\sigma=0.3\)」の差は最大 \(6.7\times10^{-9}\)。分散が足し算になる=時間が足し算になる。
ストライド 1 の畳み込みを \(L\) 層重ねると、出力 1 点が効いている入力の範囲(実効受容野)は、中心極限定理でガウスに近づき、半径は \(\sqrt{L}\) で伸びる。深さは熱方程式の時間である。
| 層数 L | 1 | 2 | 4 | 8 | 16 | 32 |
|---|---|---|---|---|---|---|
| 半径 r(線形) | 0.78 | 1.30 | 2.02 | 3.12 | 4.51 | 6.37 |
| 半径 r(ReLU) | 0.81 | 1.28 | 1.92 | 3.07 | 4.50 | 6.41 |
| r / √L | 0.81 | 0.91 | 0.96 | 1.09 | 1.13 | 1.13 |
ES や SGD の更新を、小さな歩幅 \(\eta\) で何歩も重ねる極限で見ると、確率微分方程式になる。
$$d\theta = -\nabla L_\sigma\,dt + \sqrt{\eta/N}\;\Sigma^{1/2}\,dW$$ゆらぎを決めるのは \(\eta/N\) だけ。集団を大きくする(空間)ことと、歩幅を小さくして世代を重ねる(時間)ことが交換できる。これはランジュバン方程式で、\(\eta/N\) は温度にあたる。
| η | N | η/N | ⟨L⟩ |
|---|---|---|---|
| 0.001 | 1 | 0.001 | 0.218 |
| 0.002 | 2 | 0.001 | 0.207 |
| 0.004 | 4 | 0.001 | 0.221 |
| 0.008 | 8 | 0.001 | 0.215 |
| 0.001 | 4 | 0.00025 | 0.048 |
| 0.004 | 1 | 0.004 | 1.12 |
温度なら、谷を越える時間はクラマースの式 \(\tau \approx \frac{2\pi}{\sqrt{U''_{\min}|U''_{\max}|}}\,e^{\Delta U/T}\) に従うはず。二重井戸 \((x^2-1)^2\)、\(\sigma=0.3\) で \(\Delta U/T=5.6\) のとき:
| η | N | 測定 τ | クラマース |
|---|---|---|---|
| 0.004 | 1 | 359 ± 8 | 415 |
| 0.008 | 2 | 362 ± 8 | 415 |
| 0.016 | 4 | 340 ± 7 | 415 |
集団遺伝学では、集団サイズ \(N\) がそのまま逆温度になることが厳密に示されている(Sella–Hirsh 2005)。Kimura の拡散近似が時間を「\(2N\) 世代」単位で測るのも同じ換算である。そして自然選択の 1 世代は、拡散モデルの Tweedie の公式と同じ式になる。
$$\underbrace{\Delta\bar z = \frac{\mathrm{Cov}(w,z)}{\bar w} = \sigma^2\nabla\ln\bar w}_{\text{Price / Lande}} \qquad\Longleftrightarrow\qquad \underbrace{\mathbb{E}[x_0\mid x] - x = \sigma^2\nabla\log p_\sigma(x)}_{\text{Tweedie}}$$適応度 \(w\) をデータの確率密度 \(p\) と読み替えれば同じ計算。ES との違いは log と平均の順序だけで、ES は平均エネルギー \(\langle L\rangle\) を、選択は自由エネルギー \(-\log\langle e^{-L}\rangle\) をぼかしている。
| 集団の中心 z | 選択(MC) | Tweedie | ES |
|---|---|---|---|
| −1.5 | 0.4383 | 0.4384 | 4.98 |
| −0.6 | −0.2213 | −0.2213 | −0.18 |
| 0.3 | 0.2989 | 0.2985 | 0.25 |
| 0.9 | +0.0262 | +0.0264 | −0.50 |
\(z=0.9\) では選択は谷底 \(x\approx1\) へ、ES は平均エネルギーの最小点 \(x=\sqrt{1-3\sigma^2}\approx0.72\) へ向かう。二つのぼかし方で「最適な場所」がずれる。適応度の強さ \(\beta\) を 0.3 まで弱めると両者はほぼ一致する:ES は選択の高温極限。
CNN で毎層解像度を半分にすると、受容野は倍々で伸びる。くりこみ群の「時間」は \(\ell = \ln(\text{スケール})\) なので、深さは \(\ell\) そのものになる。
| 層数 L | 1 | 2 | 3 | 4 | 5 | 6 |
|---|---|---|---|---|---|---|
| log₂ r | −0.31 | 0.88 | 2.02 | 3.04 | 4.02 | 5.05 |
ImageNet 用の CNN がだいたい 5 段でダウンサンプリングするのは \(\log_2(224/7)=5\) だから。くりこみ群で格子間隔 \(a\) から相関長 \(\xi\) まで行く段数 \(\ln(\xi/a)\) と同じ量で、必要な深さを決めているのは無次元量 \(\ln(\text{物体}/\text{画素})\) である。
T = 0.9 Tc : 0.857 → 0.910 → 0.963 → 0.993 → 0.999 → 1.000 秩序の固定点へ T = Tc : 0.701 → 0.682 → 0.668 → 0.642 → 0.610 → 0.508 ほぼ留まる T = 1.1 Tc : 0.555 → 0.453 → 0.335 → 0.206 → 0.103 → 0.059 無秩序の固定点へ
Tc でもゆっくり減るのは、多数決則が厳密なくりこみでないことと、格子が有限であることによる。0.9 Tc は揃えた初期状態から(ランダム初期だと磁区が残って乱れた)。
深い層に残るのは画素ではなく、粗視化しても生き残る量(relevant な結合)である。
第2回 の \(\eta/N\) を、マクロな時間 \(t=\eta T\)(\(T\) はステップ数)と温度 \(\tau=\eta/N\) を固定して見直すと、
$$N\cdot T = t/\tau \;=\; \text{不変},\qquad N\to\lambda N,\;\; T\to T/\lambda,\;\; \eta\to\lambda\eta$$という伸縮が物理を変えない。これは特殊相対論のローレンツ変換を光円錐座標 \(u=ct+x,\ v=ct-x\) で書いた形(\(u\to\lambda u,\ v\to v/\lambda,\ uv\) が不変)と同じで、\(\ln\lambda\) はラピディティにあたる。群はどちらも SO(1,1)。
「光速」にあたるものもある。大バッチ学習の経験則(McCandlish ら 2018)は、目標損失までのステップ数 \(S\) と総サンプル数 \(E\) について
$$(S - S_{\min})(E - E_{\min}) = S_{\min}E_{\min}$$ $$S-S_{\min} = S_{\min}e^{-\varphi},\qquad E-E_{\min}=E_{\min}e^{\varphi},\qquad \varphi=\ln\frac{B}{B_{\rm crit}}$$と書ける。余分なステップと余分なサンプルが光円錐座標、バッチサイズの比の対数がラピディティ、\(B_{\rm crit}\) が c。これ以上並列にしてもステップ数は減らない。
| N | 1 | 4 | 16 | 64 | 256 | 1024 | 4096 |
|---|---|---|---|---|---|---|---|
| S | 950 | 354 | 82 | 26 | 9 | 4 | 3 |
| E = NS | 950 | 1416 | 1304 | 1696 | 2304 | 4096 | 12288 |
N ≲ 16 では E がほぼ一定(空間と時間が等価に交換できる)。N ≈ 40 を超えると E が増え始め、「速度の上限」の折れ曲がりはある。ただし双曲線そのものは当てはまらなかった。大きな N では数ステップで届く簡単な問題なので、ステップの離散性が効いている。
scripts/(es_st / kramers / heat / selection / erf / ising_rg / hyperbola)