わかる学習論第 3 回 / 適応度地形 ── 理論生物学の基礎

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

適応度地形 生物学と機械学習は、同じ絵を描いていた。
シューアル・ライトが1932年に描いた「峰」の地形は、第1回の損失地形を上下ひっくり返しただけ。
自然選択とは、その地形を登る勾配上昇 ── 学習の谷下りと、寸分たがわぬ同じ操作だった。

必要な道具:第1回の勾配、平均と分散、簡単な微分 この回のキー:\(\dot x_i = x_i\,(f_i-\bar f)\)

機械が「学習」し、生きものが「進化」する。私たちはこの二つを、まるで別の世界のできごとのように語ります。片方は数学とコンピュータの話、もう片方は太古からの生命の話。ところが第1回で描いた損失地形 ── パラメータ \(\theta\) を横軸に、まずさ \(L(\theta)\) を高さにとったあの風景 ── は、じつは機械学習の発明ではありませんでした。集団遺伝学者シューアル・ライトが1932年に、進化を説明するために描いた適応度地形(adaptive landscape)と、上下をひっくり返しただけの同じ絵なのです。生物学は「高い峰=よく適応した遺伝子型」を、機械学習は「低い谷=損失の小さい重み」を目指す。呼び名と向きが違うだけ。この回では、自然選択が数式のうえで地形を登る勾配上昇そのものであること、そして第1回で出会った「局所最小の罠」が、ここでは局所的な峰への貼りつきとして、そっくり同じ顔で戻ってくることを見ます。80年の時をこえて、進化と学習は同じ地形の上に立っていました。

01学習と進化は、別物か

第1回で、学習を一行で定義しました ── パラメータ \(\theta\) を動かして損失 \(L(\theta)\) を下げること。更新則は \(\theta\leftarrow\theta-\eta\nabla L\)。第2回では、ニューラルネットがその勾配 \(\nabla L\) を連鎖律で自動計算する仕組み(誤差逆伝播, BP)を見ました。ここまでは「機械が学ぶ」話です。

では、生きものの進化はどうでしょう。DNA を微分してくれる神さまはいません。それでも生命は、何十億年ものあいだ環境に適応し続けてきた。もし進化が学習とまったく別の原理なら、このシリーズの背骨は折れます。逆に、もし同じ地形の上で同じ操作をしているなら ── 「学ぶ機械」と「進化する生命」は地続きだと言えます。答えを先に置きましょう。同じです。それを見るために、まずライトの地形を、第1回の地形の隣に並べます。

02ライトの適応度地形 ── 損失地形の、上下反転

ライトは、遺伝子型あるいは形質 \(\theta\) を横軸に、その \(\theta\) を持つ個体がどれだけうまく生き延びて子を残すかを高さにとりました。この高さを適応度(fitness) \(F(\theta)\) と呼びます。高い峰ほど「よく適応した \(\theta\)」、低い谷ほど「生き延びにくい \(\theta\)」。進化とは、集団がこの地形の峰へ向かって登っていく営みだ ── これがライトの絵です。

第1回の損失地形と見くらべてください。あちらは「低い谷ほど良い」、こちらは「高い峰ほど良い」。上下が逆なだけで、地形の起伏そのものは同じものです。数式で言えば、両者はたった一本の等式で結ばれています。

損失と適応度は、符号が逆なだけ
$$L(\theta)\;=\;-\,F(\theta)$$

損失を下げること(谷下り)は、適応度を上げること(山登り)と、完全に同じ操作です。第1回で \(-\nabla L\) の向きへ進んだのは最急降下でしたが、\(L=-F\) なら \(-\nabla L=+\nabla F\)。つまり適応度の勾配 \(\nabla F\) の向きへ進む勾配上昇(gradient ascent)にほかなりません。方向が逆さまになっただけで、同じ坂を、片方は下り、片方は登っている。

なぜ80年前の生物学者が「地形」を描けたのか ライトが地形を描いた1932年、コンピュータも機械学習もありません。彼が相手にしていたのは、集団の中で遺伝子の頻度がどう移り変わるか、という純粋な生物学の問いでした。それでも「調整できる中身 \(\theta\)」と「その良し悪しを測る一つの数 \(F\)」があれば、風景は必ず立ち上がる ── これは特定の分野の道具ではなく、最適化という営みそのものの幾何学だからです。機械学習が後から同じ絵にたどり着いたのは、偶然ではありません。

03選択とは何か ── レプリケーター方程式

「集団が峰を登る」を、きちんと数式にしましょう。集団の中に型(遺伝子型・戦略)が \(i=1,2,\dots,n\) あり、型 \(i\) が集団に占める頻度を \(x_i\) とします(\(x_i\ge0,\ \sum_i x_i=1\))。型 \(i\) の適応度を \(f_i\)(一個体あたりの平均的な繁殖成功)とすると、集団全体の平均適応度

平均適応度(頻度で重みづけた適応度の平均)
$$\bar f\;=\;\sum_{j} x_j\, f_j$$

自然選択とは何か。平均より優秀な型は増え、平均より劣る型は減る ── それだけです。この一文をそのまま微分方程式にしたものが、レプリケーター方程式(replicator equation)です。

レプリケーター方程式(自然選択の心臓)
$$\dot x_i\;=\;x_i\,\bigl(f_i-\bar f\bigr)$$

読み方はやさしい。カッコの中 \(f_i-\bar f\) が、型 \(i\) の「平均からの上振れ」です。これが正(平均超)なら \(\dot x_i>0\) で頻度は増え、負(平均未満)なら減る。前についた \(x_i\) は、いまその型がどれだけいるかによる増幅率 ── だから、いま集団にいない型(\(x_i=0\))は、どれだけ優秀でも \(\dot x_i=0\) のまま、勝手には湧いてきません。この一点が、のちの「局所の峰の罠」の伏線になります。

まず、この式が頻度の総和を保つことを確かめましょう(確率分布であり続ける、という健全性チェックです)。

確かめ ── 総和は動かない $$\sum_i \dot x_i=\sum_i x_i(f_i-\bar f)=\sum_i x_i f_i-\bar f\sum_i x_i=\bar f-\bar f\cdot 1=0$$

\(\sum_i x_i f_i=\bar f\) と \(\sum_i x_i=1\) を使うだけ。総和の変化率が \(0\) なので、\(\sum_i x_i\) は永遠に \(1\) のまま。選択はパイの取り分を配り替えるだけで、パイ自体は増減しません。

04なぜ平均適応度は、上がり続けるのか

レプリケーター方程式のいちばん美しい帰結はこれです ── 適応度が固定されているかぎり、集団の平均適応度 \(\bar f\) は決して下がらない。しかも、上がる量は集団の中のばらつき(分散)にちょうど等しい。手を動かして導きましょう。

やってみよう ── 平均適応度の変化率を出す

f_i は定数なので、平均 \(\bar f=\sum_j x_j f_j\) を時間で微分すると

$$\frac{d\bar f}{dt}=\sum_i \dot x_i\,f_i=\sum_i x_i(f_i-\bar f)\,f_i$$

カッコを展開して、Σx_i f_i = f̄ を使う

$$=\sum_i x_i f_i^2-\bar f\sum_i x_i f_i=\langle f^2\rangle-\bar f^{\,2}$$

これは分散の定義そのもの

$$\frac{d\bar f}{dt}=\mathrm{Var}_x(f)=\sum_i x_i\,(f_i-\bar f)^2\;\ge\;0$$

分散は二乗の和なので、つねに \(0\) 以上。ゆえに \(\bar f\) は単調に増え続け、全員が同じ適応度になった(分散 \(=0\))ときに止まります。これがフィッシャーの自然選択の基本定理の核心 ── 平均は、ばらつきの分だけ上がる。多様性こそが、進化を進める燃料だったのです。

この関係は、離散的な一歩でもきれいに成り立ちます。次の小さな数値実験で、\(\bar f\) が実際に上がること、そしてその上がり幅が分散にぴったり一致することを、電卓で確かめてみましょう。

やってみよう ── 3つの型で1世代まわす

型が3つ、適応度は \(f=(1.0,\ 1.2,\ 0.9)\)。初期頻度はどれも同じ \(x=(\tfrac13,\tfrac13,\tfrac13)\)。離散版の更新則 \(x_i\leftarrow x_i\bigl(1+(f_i-\bar f)\bigr)\) を1回だけ回します。

まず平均適応度

$$\bar f=\tfrac13(1.0+1.2+0.9)=\tfrac{3.1}{3}=1.0333$$

各型を更新(f_i−f̄ を掛ける)

$$x_1'=\tfrac13(1-0.0333)=0.3222,\quad x_2'=\tfrac13(1+0.1667)=0.3889,\quad x_3'=\tfrac13(1-0.1333)=0.2889$$

和は \(0.3222+0.3889+0.2889=1.0000\) ── 総和はぴたり保たれます(STEP 03 の確認どおり、規格化し直す必要すらありません)。優秀な型2が増え、劣る型3が減りました。新しい平均は

$$\bar f'=0.3222\times1.0+0.3889\times1.2+0.2889\times0.9=1.0489$$

上がり幅を、分散と見くらべる

$$\Delta\bar f=1.0489-1.0333=0.0156,\qquad \mathrm{Var}_x(f)=\tfrac13\bigl[(-0.0333)^2+(0.1667)^2+(-0.1333)^2\bigr]=0.0156$$

ぴたり一致。\(\Delta\bar f=\mathrm{Var}_x(f)\) ── 平均は、ばらつきの分だけ上がる。理屈どおりに数字が動きました。

形質の平均は、適応度の勾配に沿って動く(プライス/ランデの心) 型ではなく連続的な形質 \(\theta\)(体の大きさなど)で見ると、集団の平均形質 \(\bar\theta\) の動きは \(\dfrac{d\bar\theta}{dt}\propto \mathrm{Cov}(\theta,\,f)\) と書けます ── 適応度が高い側と相関する形質ほど、平均がそちらへ引かれる。適応度が \(\theta\) の関数 \(f=F(\theta)\) なら、この共分散は適応度の勾配 \(\nabla F\) に沿った向きを指します(プライス方程式・ランデ方程式が言うこと)。厳密な証明は割愛しますが、方向だけ掴めば十分 ── 集団の平均は、地形を登る向きに動く。これが「選択=勾配上昇」の連続版の姿です。

まとめると、自然選択は第1回の勾配降下の符号を反転した双子です。片方は \(L\) の谷を \(-\nabla L\) で下り、片方は \(F\) の峰を \(+\nabla F\) で登る。集団は、地形の峰へ向かって這い上がっていきます。

05動かしてみる ── 集団が峰を登る

下の地形は適応度 \(F(\theta)\) で、峰が二つあります。左が低い峰(局所的な最適)、右が高い峰(大域的な最適)。あいだには深い谷があります。オレンジの点群が集団の個体たち、赤い印がその平均 \(\bar\theta\) です。集団は最初、左の低い峰のふもとにいます。「世代を進める」を押すと、毎世代 ①適応度に応じた選択(優秀な個体ほど多く子を残す)と ②突然変異(子の形質にゆらぎが乗る)が繰り返され、集団が坂を登ります。

図:適応度地形 F(θ) 上の自然選択。選択が集団を近くの峰へ押し上げ、突然変異が探索の幅を与える ── 変異が小さいと低い峰に貼りつき、大きくすると谷を越えて高い峰へ移れる
適応度地形 F(θ) 個体(集団) 集団の平均 θ̄ 高い峰(大域)

まず初期設定(変異 \(\sigma=0.08\))のまま回してください。集団はすいすい左の低い峰へ登り、そこに貼りついて動かなくなります。平均適応度は上がったのに、隣にもっと高い峰があるのに、届かない。次に「世代を進める」をもう一度押す前に、突然変異の幅 \(\sigma\) を \(0.35\) あたりまで上げて回してみてください。個体のばらつきが谷を越えて右斜面に届き、そこで選択が働くと、集団はやがて高い峰へ乗り移ります。選択圧 \(\beta\) を上げると登りは速いが視野が狭くなり、下げると登りは遅いが探索的になります。

06局所的な峰の罠 ── 第1回の弱点が、そのまま還ってくる

いま見た「低い峰に貼りつく」現象は、第1回の局所最小の罠と、まったく同じものです。あちらではボールが浅い谷にはまって出られなかった。こちらでは集団が低い峰に登りきって降りられない。\(L=-F\) で上下をひっくり返せば、局所最小はそのまま局所最大(局所的な峰)になります。同じ地形の、同じ弱点です。

レプリケーター方程式が \(\dot x_i=x_i(f_i-\bar f)\) だったことを思い出してください。頭に \(x_i\) がついている ── いない型は増えない。だから純粋な選択だけでは、集団はいま立っている峰から一歩も動けません。谷を越えて別の峰へ移るには、いまいない場所を試す仕掛け、すなわち突然変異(=地形の探索)が要る。シミュレーションで \(\sigma\) を上げたとき集団が谷を越えられたのは、変異が「隣を試す」役目を果たしたからです。多様性は平均を上げる燃料であると同時に、局所の峰から脱け出す命綱でもあったのです。

◇ ◇ ◇

07判決 ── 選択は、第1回の勾配降下と同じものか

このシリーズは毎回、道具の力と限界を正直に裁きます。適応度地形と自然選択について、三つの問いに答えを出しましょう。

問い適応度地形+自然選択の答え判決
自然選択は、第1回の勾配降下と同じ操作か 同じ。\(L=-F\) のもとで、選択=適応度地形の勾配上昇=損失地形の勾配降下。符号が逆なだけの同型 同型
集団の平均適応度は、必ず上がるか 下がらない。\(d\bar f/dt=\mathrm{Var}_x(f)\ge0\)(適応度が固定なら単調非減少) 非減少
いつも一番高い峰(大域最適)に届くか 届くとは限らない。近くの局所的な峰に貼りつく ── 第1回とまったく同じ弱点 保証なし
正直な線 ── 地形は強力だが、理想化でもある

適応度地形は進化を見晴らす最高の絵ですが、いくつも理想化を含みます。第一に、実際の地形は静止していません ── 捕食者と獲物の共進化や、頻度依存選択(ある型が増えると得か損かが変わる)のもとでは、集団が動くと地形そのものが波打ちます。「登っている足場が動く」世界では、峰の比喩は素朴すぎます。第二に、ここで見た絵は形質が1次元でしたが、高次元では直観が大きく変わり、局所の峰は思ったより「抜け道」を持ちます。第三に、レプリケーター方程式は無限集団・ノイズなしの近似で、有限集団では偶然の揺らぎ(遺伝的浮動)が効きます。

それでも ── 「選択=地形上の最適化」という構造的な同一性は本物です。学習と進化は、同じ地形の上で、符号だけ違う同じ計算をしている。ここで一つ、鋭い問いが残ります。第1回の勾配降下も第2回のBPも、\(\nabla L\) を計算できることを前提にしていました。ところが自然には微分の神さまがいない。DNA を微分することはできない。では、微分できない自然は、どうやって坂の勾配を知るのか?次回、その答え ── 進化戦略(ES)へ。

練習問題(今回の式だけで解けます)
  1. 型が2つ、適応度 \(f=(2,\ 1)\)、頻度 \(x=(0.5,\ 0.5)\)。離散更新 \(x_i\leftarrow x_i(1+(f_i-\bar f))\) を1回行い、\(\bar f\) が上がることと、その上がり幅が \(\mathrm{Var}_x(f)\) に一致することを確かめよ。
    答えを見る
    \(\bar f=0.5\cdot2+0.5\cdot1=1.5\)。更新:\(x_1'=0.5(1+0.5)=0.75,\ x_2'=0.5(1-0.5)=0.25\)(和は1)。新平均 \(\bar f'=0.75\cdot2+0.25\cdot1=1.75\)。\(\Delta\bar f=0.25\)。分散 \(\mathrm{Var}=0.5(0.5)^2+0.5(-0.5)^2=0.25\)。ぴたり一致 ── 平均はばらつきの分だけ上がる。
  2. 適応度がすべて等しい(\(f_1=f_2=\dots=f_n\))とき、レプリケーター方程式のもとで頻度 \(x_i\) はどうなるか。
    答えを見る
    全員が平均に等しいので \(f_i-\bar f=0\)、ゆえに \(\dot x_i=0\)。頻度は一切動かない。分散が \(0\) なら \(d\bar f/dt=\mathrm{Var}_x(f)=0\) で平均も動かない ── 選択に差をつける「ばらつき」がなければ、進化は止まる。多様性が燃料である、の裏返し。
  3. 純粋な選択(レプリケーター方程式だけ)では、集団はいま立っている峰から別の高い峰へ移れない。なぜか。第1回の局所最小と対応づけて答えよ。
    答えを見る
    \(\dot x_i=x_i(f_i-\bar f)\) の頭に \(x_i\) があるため、いま頻度 \(0\) の型は増えず(\(\dot x_i=0\))、集団はいまある型の範囲でしか登れない。近くの峰で分散が尽きれば \(d\bar f/dt=0\) で停止する。これは足もとの傾きだけを見て局所最小で止まる勾配降下と同じ罠(\(L=-F\) で局所最小↔局所最大)。谷を越えるには、いない場所を試す突然変異=探索が要る(次回のES、第7回の「地形をぼかす」につながる)。

第3回まとめ選択とは、地形を登ることである

ライトの適応度地形 \(F(\theta)\) は、第1回の損失地形と \(L(\theta)=-F(\theta)\) で結ばれた同じ絵(STEP 02)。自然選択はレプリケーター方程式 \(\dot x_i=x_i(f_i-\bar f)\) ── 平均より優秀な型が増え、劣る型が減る(STEP 03)。適応度が固定なら平均適応度は単調に非減少で、その上がり幅は集団の分散に等しい \(d\bar f/dt=\mathrm{Var}_x(f)\ge0\)(STEP 04、フィッシャーの基本定理)。つまり選択は、損失地形の勾配降下と符号だけ違う勾配上昇。だが第1回の局所最小はここで局所的な峰の罠として還り、純粋な選択では谷を越えられない ── 変異という探索が命綱(STEP 06)。

学習と進化は、同じ地形の上で同じ計算をしていました。残る問いはただ一つ ── 微分できない自然は、どうやってその勾配を知るのか。次回、微分を一切使わずに坂を下る方法へ。

この文書は「わかる学習論」シリーズ第3回、物理・数学・AIに興味のある高校生・大学生向けの読み物です。適応度地形(adaptive/fitness landscape)はS.ライトが1932年に導入した概念で、機械学習の損失地形と \(L=-F\) の上下反転の関係にあります。レプリケーター方程式 \(\dot x_i=x_i(f_i-\bar f)\)、および適応度が時間に依らないもとでの \(d\bar f/dt=\mathrm{Var}_x(f)\ge0\)(フィッシャーの自然選択の基本定理の連続時間・一遺伝子座版に対応する核)は確立した数学です。平均形質の変化を共分散で表すプライス方程式・ランデ方程式は方向性のみ紹介し、厳密な導出は割愛しました。本稿の図の地形 \(F(\theta)=\exp\!\bigl(-\tfrac{(\theta+1.2)^2}{2\cdot0.35^2}\bigr)+1.6\,\exp\!\bigl(-\tfrac{(\theta-1.0)^2}{2\cdot0.45^2}\bigr)+0.05\) は説明用の模型で、左右の峰の高さや位置は数値的な目安です。シミュレーションは有限個体・突然変異つきの粒子近似(進化戦略に近い)で、レプリケーター方程式の無限集団・無ノイズの理想化とは厳密には異なります。共進化・頻度依存選択のもとで地形が動的に変わる点、高次元での直観の変化、進化戦略(ES)とBPの数学的一致(後続回)は、それぞれの回で扱います。 ── 印刷する場合はブラウザの「印刷」から「PDF に保存」を(印刷版ではスライダーと解答は静止・非表示になります)。

印刷 / PDF 化:⌘+P(Windows は Ctrl+P)。画面では「選択圧」と「突然変異の幅」を変えて「世代を進める」を押すと、集団が峰を登ります。変異が小さいと低い峰に貼りつき、大きくすると高い峰へ移る様子を試してみてください。「答えを見る」で解答が開きます。