進化・学習・意識を、ひとつの勾配で読む
第4回で、進化は微分せずに坂を下る方法(進化戦略, ES)だと見ました。第9回では、その計算にエネルギーという値札が付いていることを見ました。今回は二つをつなぎます。進化のES更新も、脳の学習も、書き下せばまったく同じ一行 ── \(\theta\leftarrow\theta-\eta\,\hat g\) です。では両者は何が違うのか。違うのは二点だけ。勾配を測る時間スケール(世代か、一生の中の一瞬か)と、その勾配を測るコストを誰が払うか(死か、経験か)。進化は一つの勾配を測るのに多数の死と長い時間を要します。ところが、生きているあいだに脳が勾配を測れば、死なずに、桁違いに安く、同じ計算ができる。学習とは、進化が延々とやっていた勾配計算を、生存中に前倒しした「近道」なのです。この回で、その近道が数式のうえでどう同じで、どこがどれだけ安いのかを、足で歩いて確かめます。
第4回のES勾配を思い出します。損失 \(L(\theta)\) が微分できなくても、パラメータ \(\theta\) を小さくゆらして \(\varepsilon_i\)(ノイズ)を足し、その結果の良し悪しで勾配を推定できました。
ここで一項 \(L(\theta+\sigma\varepsilon_i)\) を測るとは、ゲノムを少しいじった個体を一匹まるごと生かし、その一生の成績を見るということです。良ければ子を残し、悪ければ ── 残さず消える。つまり1サンプル=1個体の一生=多くは1つの死。しかも和は \(N\) 項ある。一つの勾配 \(\hat g_{\text{evo}}\) を1歩ぶん得るのに、\(N\) 回の評価、すなわち\(N\) 世代ぶんの時間と、それだけの死が要る。第9回の言葉でいえば、1サンプルあたりのコストが「一生分のエネルギー」── これがサンプル効率が最悪である、という意味です。
ところが、ある個体が死なずに、自分の一生のあいだに勾配を測れたらどうでしょう。脳をもつ生きものは、まさにこれをやります。脳の重み \(w\) を少しずつ調整し、経験 \(x_i\) のたびに「予測と現実のズレ」から勾配を計算する ── これが誤差逆伝播(BP, 第2回)や強化学習の中身です。
いま一項 \(\nabla_w\ell(w;x_i)\) を測るとは、一匹の個体が、生きたまま一つの経験から学ぶということ。失敗しても死なない ── 転んで、痛くて、次はうまくやる。\(N\) 個のサンプルを、一つの命を使い回して稼ぐ。だから同じ \(N\) 項の和でも、支払うコストは死ではなく経験。第9回の bits/joule でいえば、一つの命の中に何千ものサンプルを詰め込むぶん、勾配の情報を桁違いに安く集められる。これがサンプル効率の逆転です。
大事なのは、\(\hat g_{\text{evo}}\) も \(\hat g_{\text{learn}}\) も同じ「損失の勾配」の推定値だということ。推定の作り方(力ずくのサンプリングか、微分か)と、支払い方が違うだけで、指している向きは同じ坂の下り方向です。
推定した勾配を \(\hat g\) と書けば、進化も学習も、次の一行にそろって収まります。
この式に、二つの実装を並べてみます。
| 進化(ES) | 一生内学習(脳) | |
|---|---|---|
| 更新則 | \(\theta\leftarrow\theta-\eta\,\hat g_{\text{evo}}\) | \(w\leftarrow w-\eta\,\hat g_{\text{learn}}\) |
| 1サンプル | 1個体の一生 | 一生の中の1経験 |
| 1更新の時間 | 世代(数年〜) | 一生の中の一瞬(秒〜) |
| コストを払うのは | 死 | 経験 |
違いは本質的に二つ。(1) 勾配を測る時間スケール(世代 vs 一生の中の瞬間)と、(2) コストを誰が払うか(死 vs 経験)。それ以外は同じ計算です。だからこう言えます ──学習とは、進化がやっていたのと同じ勾配計算を、死を経験に置き換えて、安く速くやり直したものである。近道の正体は、新しい計算の発明ではなく、同じ計算の「支払い方」の切り替えでした。
すると自然に、二段構えの構造が現れます。生きものはゲノム \(\theta_{\text{gene}}\) と脳の重み \(w\) の二つのパラメータをもち、それぞれ別の時間スケールで、しかし同じ更新則で最適化されている。外側のゆっくりしたループが進化、内側の速いループが学習です。
脳の初期状態 \(w_0\) は、ゲノム \(\theta_{\text{gene}}\) が指定します(\(w_0=\phi(\theta_{\text{gene}})\))── どんな構造で、何を学びやすいかは、生まれつきの設計。そして進化が最適化しているのは、直接の行動ではなく、「よく学べる初期状態と学び方」そのものです。外ループは「うまく学ぶ能力」を選ぶ。これはAIでいうメタ学習(学習の学習)とまったく同じ入れ子構造です。進化は個々の答えを教え込むのではなく、答えに速くたどり着ける学習器を選び続けている。
下の図は、ある目標適応度 \(F^*\) に到達するまでを、二つのやり方で競争させます。横軸は時間・コスト(世代)、縦軸は適応度。茶の階段は進化のみ(毎世代わずかに改善、各世代に死のマーカー)。緑は一生内学習をもつ個体(生きているうちに目標へ近づく)。スライダー「可塑性」は、一生の中で学べる量 ── これを上げると、緑が速く目標に届き、必要な死が減っていくクロスオーバーが見えます。
可塑性 \(p=0\) なら、緑は茶とぴったり重なる(学べない個体は進化だけが頼り)。\(p\) を上げると緑は最初の一生ですでに高い適応度へ跳び、目標に届くまでの世代数=死の数がみるみる減る。そして \(p\ge F^*\) を超えると ── 最初の一世代の学習だけで目標に到達し、死はほぼゼロ。進化が何十世代もの死で払っていた代金を、学習は一つの命の中の経験で払い切る。これが「近道」の効き目です。
ある勾配推定に N=1000 サンプル要るとする。まず「死」で数える
$$\text{進化のみ}:\ N=1000\ \text{個体}\times1\text{生}=1000\ \text{の死}\;(\approx1000\ \text{世代})$$ $$\text{一生内学習}:\ 1\ \text{個体が生涯で}\ 1000\ \text{回試行}=\underline{\text{死}\,0},\ \text{推定はほぼ同じ}$$次に第9回のエネルギーを掛ける(1サンプルの値札)
$$E_{\text{evo}}\approx N\cdot E_{\text{life}}=1000\times(2\times10^{11}\,\mathrm{J})=2\times10^{14}\,\mathrm{J}$$ $$E_{\text{learn}}\approx 1\cdot E_{\text{life}}=2\times10^{11}\,\mathrm{J}\quad(\text{1つの命の中に1000試行を同居})$$同じ \(N=1000\) の勾配推定でも、進化は 1000 の命を、学習は1 の命を使う。エネルギーで約 \(N=10^3\) 倍安い(1000倍)。時間はもっと極端で、世代時間 \(T_{\text{gen}}\approx20\) 年に対し1試行は数秒 ── 到達までの時間比は \(T_{\text{gen}}/t_{\text{試行}}\sim(6\times10^8\,\mathrm{s})/(1\,\mathrm{s})\approx\)10億倍速い。近道は、コストでも時間でも桁で効く。
近道はさらに面白い働きをします。学習で獲得した有利なふるまいが、やがて遺伝的に固定される方向へ進化を導くのです。これをボールドウィン効果(1896年提唱、Hinton–Nowlan 1987が計算機で実証)と呼びます。
仕組みはこうです。ある良いふるまいが、遺伝子だけでは正確に当てられず「学習してやっと届く」ものだとします。学習できる個体は、生きているうちにそこへ近づいて高い適応度を得られる。すると、「その良い領域の近くに生まれ、かつ学ぶ能力をもつ」遺伝子が選択で有利になる。世代を重ねると、遺伝子の初期値そのものが良い領域へ引き寄せられ、最後には学ばずとも生まれつきできる方向へ固定されていく(遺伝的同化)。
ただし、ここに擬人化の罠があります。進化が「学習は便利だから発明しよう」と考えたわけではない。学べる変異体がたまたま多く子を残した ── それだけ。先を見通す設計者はいません。次の判決で、この線を正直に引きます。
| 主張 | 中身 | 判決 |
|---|---|---|
| 学習は、進化と同じ更新則をサンプル効率よくやり直したもの | 両者とも \(\theta\leftarrow\theta-\eta\hat g\)。違うのは時間スケールと支払い方だけ | 正しい |
| 学習は死を経験に置き換え、圧倒的に安い(第9回) | 同じ勾配推定を、\(N\) 個の命でなく1つの命で。エネルギーで約 \(N\) 倍、時間で桁違いに安い | 正しい |
| 「進化が学習を目的をもって発明した」 | 先見のある設計者はいない。効率的な可塑性が結果的に選択されただけ(擬人化) | 誤り |
「学習=より安い勾配推定であり、その効率ゆえに選択される」こと、そして「学習が進化を導き加速する(ボールドウィン効果/遺伝的同化)」ことには、理論と計算機実験の確かな根拠があります。方向性 ──学習は進化と同じ計算の効率化である── は堅い。
ただし二つ、線を引いておきます。第一に、「進化が学習を発見/発明した」は目的論的な言い回しにすぎません。先見はなく、効率的な変異が多く子を残しただけ。第二に、すべての学習が勾配ベースとは限りません── 連想、模倣、報酬なしの探索など、勾配降下に還元しにくい学習もあります。本稿の「同じ更新則」は、勾配で書ける学習についての、正確だが一枚岩ではない主張です。
そして最終回への一歩。効率化の極みは、ここでは止まりません。進化は「本物の死」を「本物の経験」に置き換えて安くした。では ──「本物の試行」すら不要にできたら? 頭の中の世界モデルの上で、実際に転ばずに勾配を計算する。想像の中で試し、想像の中で失敗する。次回・最終回、その極限の近道に意識という名を与えます。
進化のES勾配 \(\hat g_{\text{evo}}\) は、1サンプル=1個体の一生=多くは1つの死で、\(N\) 項の和に \(N\) 世代と \(N\) の死を要する(STEP 01)。脳の一生内学習 \(\hat g_{\text{learn}}\) は、同じ \(N\) サンプルを一つの命の中で経験として稼ぐ ── 死0、桁違いに安い(STEP 02)。両者は同じ更新則 \(\theta\leftarrow\theta-\eta\hat g\) で、違うのは時間スケールと支払い方だけ(STEP 03)。だから構造は入れ子になる ── 外ループ=進化がゲノムをゆっくり、内ループ=学習が脳を速く。進化は「よく学ぶ能力」を選ぶメタ学習器(STEP 04)。可塑性を上げると到達までの死が消えていく(STEP 05)。学習は地形を平滑化して進化を導き加速する=ボールドウィン効果(STEP 06)。ただし「進化が学習を発明した」は先見を持ち込む擬人化であり、正しくは効率的な可塑性が結果的に選択されただけ(STEP 07)。
近道の正体は、新しい計算の発明ではなく、同じ勾配計算の支払い方の切り替えでした。死を経験に。そして次回、その切り替えは最後の一段を進みます ── 経験すら、想像に。
印刷 / PDF 化:⌘+P(Windows は Ctrl+P)。画面では「可塑性」スライダーを動かすと、緑(学習をもつ個体)の到達が早まり、赤い「死」のマーカーが減っていきます。「アニメで見る」で競争を再生、「答えを見る」で解答が開きます。