わかる学習論第 8 回 / 生物圏という計算機 ── ESと選択の同型

進化・学習・意識を、ひとつの勾配で読む

生物圏は、一台のGPUである 無数の個体が、それぞれ少しずつ違う遺伝子で生き、そして死ぬ。その膨大な並列試行の集計が、
種というパラメータの「勾配」を推定している。地球は、微分せずに坂を下る一台の最適化器だった。

必要な道具:第4回のES勾配、第6回の分散、ベクトルの平均 この回のキー:\(\hat g=\dfrac{1}{N\sigma^2}\sum_i L(\theta+\varepsilon_i)\,\varepsilon_i,\quad \mathrm{Var}(\hat g)\propto \tfrac{1}{N}\)

前回、私たちは「地形をぼかす」解像度 \(\sigma\) を手に入れ、進化戦略(ES)が微分できない地形の上でも勾配を推定できることを見ました。今回はその視点を、思いきり引いて眺めます ── 一匹の生きものではなく、地球上の全生命を、一斉に走る一つの計算として。無数の個体が、少しずつ違う遺伝子 \(\theta+\varepsilon_i\) を持って生まれ、環境の中で試され、多くは死に、一部が子を残す。この「生と死の総体」が、実は第4回で書いたES勾配推定量 \(\hat g\) を、そっくりそのまま計算しているのです。個体はサンプル、生死は損失評価、繁殖は更新。同じ処理を別々のノイズで大量に並列実行するその姿は、GPUのSPMD(単一命令・多数データ)そのものです。生物圏とは、一台の巨大な無微分最適化器 ── いわば地球規模のGPUなのだ、という主張を、式と図で確かめましょう。

01生命がしている“計算”とは

「生命が計算をしている」と言うと比喩に聞こえます。しかし第1回から積み上げてきた道具立てでは、これは比喩ではなく構造の一致として言えます。学習とは、パラメータ \(\theta\) を動かして損失 \(L(\theta)\) を下げること(第1回)。進化では、\(L\) は適応度の符号を反転したものでした ── 生き延びて子を残せば損失は小さく、そうでなければ大きい。

問題は、自然界に「損失を微分してくれる神さま」がいないことです。DNA を偏微分する装置など、どこにもない。にもかかわらず、種は世代を越えて着実に地形を下っていく。どうやって? 答えが第4回の進化戦略でした ── 微分せず、たくさん試して、結果で重みづけて平均する。今回は、その「たくさん試す」の主語を集団そのものに置き換えます。

この回の出発点(第4回のES勾配推定量の再掲)
$$\hat g \;=\; \frac{1}{N\sigma^2}\sum_{i=1}^{N} L(\theta+\varepsilon_i)\,\varepsilon_i ,\qquad \varepsilon_i \sim \mathcal N(0,\sigma^2 I)$$
\(\theta\)=種のパラメータ、\(\varepsilon_i\)=個体ごとの変異、\(N\)=集団サイズ、\(\sigma\)=変異の広がり(前回の解像度)。この \(\hat g\) を使って \(\theta\leftarrow\theta-\eta\,\hat g\)。

02生物圏=一台のGPU

この式の各記号を、生物学の言葉に翻訳してみましょう。驚くほど素直に対応します。

対応表 ── ES最適化器と生物圏は同じ処理を指している
ES/最適化の言葉生物圏の言葉意味
サンプル \(\theta+\varepsilon_i\)個体 \(i\)種の設計図をわずかに変異させた一つの試作
損失評価 \(L(\theta+\varepsilon_i)\)個体の生死(適応度評価)環境が下す採点。生き延びて子を残せたか
パラメータ更新 \(\theta\leftarrow\theta-\eta\,\hat g\)繁殖(次世代の構成)うまくいった変異の方向へ、種の中身がずれる
最適化される \(\theta\)種(そのもの)調整され続ける当のパラメータ束=遺伝子プール
1回の更新ステップ1世代評価と更新の1サイクル
並列スレッド数 \(N\)集団サイズ同時に走る「生きて試される」処理の本数

一匹一匹の個体は、同じ「生まれて・環境で試されて・採点される」というただ一つの処理を、別々の変異 \(\varepsilon_i\) を入力として実行しているだけです。これはコンピュータの用語でいうSPMD(Single Program, Multiple Data ── 単一プログラム・多数データ)、まさにGPUが数千のコアで同じカーネルを別々のデータに走らせるあの並列モデルと同型です。生物圏を一台の計算機だと見立てれば、個体はスレッド、世代はクロック、種はレジスタに載ったパラメータ。地球は、この上なく巨大で、この上なく並列な一台のGPUなのです。

なぜ「GPU」なのか ── CPUではなく CPUは少数の強力なコアで手順を逐次にこなす機械、GPUは多数の弱いコアで同じ計算を一斉にこなす機械です。進化には「賢い設計者が一手ずつ最善手を打つ」中枢はありません。あるのは、無数の凡庸な試行を並列にばらまき、生死という採点でふるいにかける仕組みだけ。だから生物圏の計算様式は、逐次のCPUではなく、圧倒的並列のGPUに似ます。知能なきスケールが、設計を代替するのです。

03集団=並列スレッド

対応表の心臓は「集団全体が一つの勾配推定量を計算している」という点です。もう一度、式を見ます。

集団が計算している勾配推定量
$$\hat g \;=\; \frac{1}{N\sigma^2}\sum_{i=1}^{N} \underbrace{L(\theta+\varepsilon_i)}_{\text{個体 }i\text{ の採点}}\;\underbrace{\varepsilon_i}_{\text{個体 }i\text{ の変異方向}}$$

右辺は「各個体の変異方向 \(\varepsilon_i\) を、その個体の採点 \(L\) で重みづけて足し合わせ、頭数 \(N\) で割る」という操作です。うまくいった変異(損失が小さい方向)ほど次世代に多く残り、その平均として、種を下り坂へ押す方向 \(\hat g\) が浮かび上がる。誰も微分していないのに、集団全体の集計が勾配を代弁しているのです。個体たちは互いを知りません。ただ同じ環境で並列に生き、死ぬ。その総和が \(\hat g\) になる ── これがSPMDの集計(リダクション)にあたります。

同じ命令・違うデータ GPUのカーネルは「このデータについて所定の計算をせよ」という一つの命令を、スレッドごとに違うデータで走らせます。生物圏のカーネルは「この変異 \(\varepsilon_i\) を持って生き、環境の採点を受けよ」。命令はどの個体にも同じ、データ(変異 \(\varepsilon_i\))だけが違う。走り終えた全スレッドの結果を \(L\cdot\varepsilon\) の重みで足し上げれば、それがそのまま勾配推定 \(\hat g\) になります。

04なぜ数が多いほど強いか ── Var ∝ 1/N

ここで「集団サイズ \(N\) が大きいほど有利」という、進化のもっとも素朴な事実が、統計の言葉で正確に説明できます。\(\hat g\) は、独立同分布な \(N\) 本の項

1個体ぶんの寄与(同じ分布から独立に引かれる)
$$X_i \;=\; \frac{1}{\sigma^2}\,L(\theta+\varepsilon_i)\,\varepsilon_i,\qquad \hat g=\frac{1}{N}\sum_{i=1}^{N} X_i$$

標本平均にほかなりません。独立な確率変数の平均の分散は、1個ぶんの分散を頭数で割ったもの ── これは統計の基本定理です。したがって、

大数の効き方(この回の眼目)
$$\mathrm{Var}(\hat g)\;=\;\frac{\mathrm{Var}(X_1)}{N}\;\propto\;\frac{1}{N}$$

期待値(=推定したい真の勾配)は \(N\) によらず同じままで、ばらつきだけが \(1/N\) で縮む。つまり大集団ほど、種は勾配をより正確に見積もり、より速く・より安定に地形を下れる。「数の多さ」は、そのまま「勾配推定器としての精度」なのです。小さな集団は少数のサンプルで勾配を当てずっぽうに推定するので、世代ごとの向きがふらつく(漂流・遺伝的浮動)。大きな集団は滑らかに、迷いなく坂を下る。

やってみよう ── Nを16倍で、ばらつきは1/4になる

分散は 1/N。標準偏差(ばらつき)はその平方根なので 1/√N

$$\mathrm{sd}(\hat g)=\sqrt{\mathrm{Var}(\hat g)}\;\propto\;\frac{1}{\sqrt N}$$

N を 4 から 64 へ(16倍)増やすと

$$\frac{\mathrm{sd}_{N=64}}{\mathrm{sd}_{N=4}}=\sqrt{\frac{4}{64}}=\sqrt{\frac{1}{16}}=\frac14$$

たとえば \(N=4\) で勾配推定の標準偏差が \(0.40\) だったとすると、同じ \(\theta,\ \sigma\) のまま \(N=64\) にすれば \(0.40\times\tfrac14=0.10\) まで下がる ── ばらつきが4分の1。ただし精度を2倍にするには \(N\) を4倍にせねばならず(\(\mathrm{sd}\propto1/\sqrt N\))、収穫は逓減します。次の図で、この \(1/\sqrt N\) の効き方を目で確かめましょう。

05動かしてみる ── 坂を下る集団

下は2次元の損失地形(明るいほど損失が小さい=適応度が高い)。白い点が個体(=並列スレッド、色は適応度:緑ほど良く赤ほど悪い)、赤い大きな点が集団の重心=種のパラメータ \(\theta\) です。「1世代進める」で1ステップ、「自動」で連続実行。スライダー \(N\) を小さくすると重心の動きがガタつき(高分散)、大きくすると滑らかに前進します(低分散)。同じ地形・同じ \(\sigma\) で \(N=4\) と \(N=64\) を見比べてください。

図:2次元損失地形上のES/自然選択。個体(点)は変異 θ+εᵢ、色は適応度。重心(赤)は ĝ に沿って谷底へ下る。N が小さいと推定が高分散でふらつき、大きいと滑らか
種の重心 θ 適応度の高い個体(低損失) 適応度の低い個体(高損失) 暗=高損失/明=低損失

\(N=4\) では、重心が世代ごとに向きを変え、行き過ぎたり戻ったり ── わずか4サンプルの平均では勾配がまるで定まらないからです。これが小集団の宿命(浮動)。\(N=64\) や \(128\) にすると、重心はほとんど一直線に谷底へ滑り込みます。読み取り欄の「ばらつき」の数値が、\(N\) を4倍するごとにおよそ半分になる(\(1/\sqrt N\))ことも確かめてください。

◇ ◇ ◇

06積分する惑星 ── 自然は微分できないが、積分はできる

ここに、今回のいちばん美しい逆説があります。自然は微分できない。しかし積分はできる。

微分とは、地形の一点で無限に細かい極限をとって傾きを解析的に求める操作です。それには地形の数式を知り、それを操れる主体が要る ── 自然界にそんな計算者はいません。ところが \(\hat g\) の式をよく見ると、これは期待値(=積分)のモンテカルロ近似です。真に推定しているのは、変異全体にわたる平均

集団が近似している「積分」(平滑化した地形の勾配)
$$\mathbb E_{\varepsilon}\!\big[\hat g\big]\;=\;\nabla_\theta\, \mathbb E_{\varepsilon\sim\mathcal N(0,\sigma^2 I)}\big[L(\theta+\varepsilon)\big]\;=\;\nabla_\theta\, (L * \phi_\sigma)(\theta)$$
\(L*\phi_\sigma\) は損失をガウス \(\phi_\sigma\) でぼかした(平滑化した)地形(第7回)。その勾配を、無数の生死の集計で積分近似している。

つまり自然は、鋭い一点の傾きを計算するのではなく、変異という名の膨大なサンプルを地形にばらまき、その生死を集計する ── 解析的微分の代わりに、地球規模の並列サンプリングで積分を実行し、そこから勾配を取り出している。無数の生と死のひとつひとつが、この積分の被積分点なのです。前回「ぼかせば微分できない地形も下れる」と言いましたが、そのぼかしの正体は、この惑星規模のモンテカルロ積分だった。個体の死は無駄ではなく、勾配を推定するための一評価だったのです ── これが元論文のいう「生物圏はGPUである」の核心です。

無微分バックプロパゲーション 第2回のバックプロパゲーションは、地形の数式を後ろ向きにたどって勾配を解析的に計算しました。生物圏がやっているのは、その真逆の道 ── 数式を一切使わず、前向きの評価(生きてみる)を並列に大量に回し、結果から勾配を統計的に推定する。同じ勾配 \(\nabla L\) に、微分から迫るのがBP、積分から迫るのがES=進化。第6回で見たとおり、両者は同じものへの二つの経路です。

07判決 ── 生物圏はどこまでGPUか

この比喩は、どこまでが厳密な一致で、どこからが理想化か。正直に裁きます。

問い答え判決
ES推定量 \(\hat g\) は、選択(生死の集計)が計算している量と同じ構造か 同じ。損失で重みづけた変異の平均、という骨格は厳密に一致する 構造は一致
大集団は、より低分散の勾配推定になるか なる。\(\mathrm{Var}(\hat g)\propto 1/N\) がそのまま効く 成り立つ
現実の進化は、この式の通りに動いているか 厳密には違う。目的は動き、選択は正確な報酬重み平均ではなく、変異も等方ガウスでなく、中央の更新者もいない 理想化
正直な線 ── 強い比喩の、強さと限界

「生物圏=一台のES最適化器/GPU」は、構造的にとても強い比喩です ── ES推定量と自然選択の対応(損失で重みづけた変異の平均)は、こじつけではなく本物の同型だからです。しかし、そのまま現実の進化そのものだと言えば理想化が過ぎます。第一に、地形は固定されていない:共進化で獲物が速くなれば捕食者の適応度地形も動く、絶えず揺れる標的です。第二に、選択は厳密には報酬重み平均ではなく、適応度に比例した再サンプリングで、これはむしろ自然勾配(フィッシャー情報で整えた勾配)に近い。第三に、突然変異は等方ガウスではない:ゲノム上の位置で率が違い、方向にも偏りがある。第四に、\(\theta\leftarrow\theta-\eta\hat g\) のような中央集権的な一括更新は存在しない:更新は無数の局所的な生死に分散していて、全体を束ねる主体はいない。

モデルとしての強さ(骨格は本物)と限界(細部は理想化)を、両方とも正直に。そして次回、この並列計算はタダではないという話に進みます ── 一つの評価にも、一つの死にも、エネルギーが要る。計算に物理的コストがある以上(ランダウアーの原理)、生命は必然的に効率よく計算する競争になるのです。

練習問題(今回の式だけで解けます)
  1. ある集団サイズで勾配推定の標準偏差が \(0.24\) だった。分散を \(1/9\) に減らす(=標準偏差を \(1/3\) にする)には、集団サイズを何倍にすればよいか。
    答えを見る
    \(\mathrm{Var}\propto 1/N\) なので、分散を \(1/9\) にするには \(N\) を \(9\) 倍。このとき標準偏差は \(\sqrt{1/9}=1/3\) 倍、すなわち \(0.24\to0.08\)。精度(標準偏差の逆)を3倍にするのに頭数は9倍要る ── 収穫逓減の典型。
  2. 対応表で「損失評価 \(L(\theta+\varepsilon_i)\)」に当たる生物学的事象は何か。またそれがGPUの何に相当するか、一言で。
    答えを見る
    個体の生死(適応度評価)=環境がその個体に下す採点。GPUでいえば「1スレッドがカーネルを最後まで実行し、結果を返す」こと。全スレッドの結果を \(L\cdot\varepsilon\) の重みで足し上げる集計(リダクション)が \(\hat g\) を作る。
  3. 「自然は微分できないが積分はできる」とはどういう意味か。\(\hat g\) の期待値を手がかりに説明せよ。
    答えを見る
    微分は地形の数式を解析的に操る操作で、自然界に計算者はいない。一方 \(\hat g\) は \(\mathbb E_\varepsilon[L(\theta+\varepsilon)]\)(=変異にわたる積分)の勾配を、多数のサンプル(個体の生死)で近似したもの。自然は無数の並列試行を集計する=積分を実行することで、微分せずに勾配を得ている。平滑化した地形 \(L*\phi_\sigma\) の勾配を、惑星規模のモンテカルロ積分で推定しているのだ。

第8回まとめ地球は、微分せずに坂を下る一台の計算機

個体=サンプル \(\theta+\varepsilon_i\)、生死=損失評価、繁殖=更新、種=パラメータ \(\theta\)、世代=1ステップ、集団サイズ=並列スレッド数 \(N\)(STEP 01–02)。集団全体は、変異を採点で重みづけて平均するES勾配推定量 \(\hat g=\tfrac{1}{N\sigma^2}\sum_i L(\theta+\varepsilon_i)\varepsilon_i\) を、同じ処理を別データで走らせるSPMD(GPU)として計算している(STEP 03)。\(\hat g\) は標本平均だから \(\mathrm{Var}(\hat g)\propto 1/N\):大集団ほど低分散=良い推定器で、\(N\) を16倍にすればばらつきは1/4(STEP 04–05)。そして自然は微分できないが、無数の生死を集計する=積分はできる:平滑化地形 \(L*\phi_\sigma\) の勾配を、地球規模のモンテカルロ積分で得ている(STEP 06)。骨格は厳密な同型、細部は理想化(STEP 07)。

個体の死は無駄ではなかった。それは勾配を推定するための一評価であり、生物圏という一台のGPUの、一本のスレッドの終了だった。次回は、この並列計算の電気代を問います。

この文書は「わかる学習論」シリーズ第8回、物理・数学・AIに興味のある高校生・大学生向けの読み物です。進化戦略(ES)の勾配推定量 \(\hat g=\tfrac{1}{N\sigma^2}\sum_i L(\theta+\varepsilon_i)\varepsilon_i\) は、ガウス平滑化した目的関数 \(\mathbb E_{\varepsilon\sim\mathcal N(0,\sigma^2I)}[L(\theta+\varepsilon)]=(L*\phi_\sigma)(\theta)\) の勾配の不偏推定量であり(第4・6・7回で扱った確立した事実)、独立同分布な項の標本平均なので分散は \(1/N\) に比例します(大数の法則・標本平均の分散の基本定理)。「生物圏=一台のGPU/ES最適化器」は元論文 §4.1 に基づく構造的比喩で、ES推定量と自然選択(適応度で重みづけた変異の集計)の同型は本物ですが、現実の進化はこの理想化から離れます:適応度地形は共進化で時間変化し、選択は厳密な報酬重み平均ではなく適応度比例の再サンプリング(自然勾配に近い)で、突然変異は非等方・非ガウスであり、\(\theta\leftarrow\theta-\eta\hat g\) のような中央集権的な一括更新は存在せず更新は分散的です。本稿の図の地形・数値(勾配推定のばらつき等)は説明用の模型で、傾向(\(N\) を増やすとばらつきが \(1/\sqrt N\) で縮む)を示すための目安です。ランダウアーの原理と計算の熱力学的コスト(第9回)、意識に関する解釈(後続回)は該当回で扱い、意識の議論は機能的・計算論的立場からの提案であって主観的経験の「なぜ」(ハードプロブレム)に答えるものではないことを、その回で明示します。 ── 印刷する場合はブラウザの「印刷」から「PDF に保存」を(印刷版ではスライダーと解答は静止・非表示になります)。

印刷 / PDF 化:⌘+P(Windows は Ctrl+P)。画面では「集団サイズ N」を変えて「自動」を押すと、個体(点)が散布され、種の重心が坂を下ります。N=4 と N=64 でふらつき方を見比べ、「ばらつき」の数値が 1/√N で縮むことを確かめてください。「答えを見る」で解答が開きます。