HOME » 理事長通信 » 2019年 » 第132号 ライオンの脳も微分方程式を解いている(2)

2019年12月25日

第132号 ライオンの脳も微分方程式を解いている(2)

一般的に数学や物理学は人間の脳が自然の真理を客観的に記載する手段、あるいは記載した内容と解釈されています。しかし、私は、進化により「入力、学習システム、出力」に相当する「感覚器、神経系(脳)、筋肉」を獲得した動物が、捕食者と獲物の闘いを繰り返す(強化学習)ことにより得た、深層学習に類似したシステムをモデル化したものが数学、物理学であると考えています。つまり数学や物理学は脳に依存していると考えているのです。脳のシステムは遺伝のシステムで用いられた最尤法を基本とし、それを達成するために行列計算と非線形化のユニットを多層化したものが用いられていると考えています。

今回は、具体的に数学、物理学が捕食者と獲物の闘いによる強化学習で、どのように構築されたかを解説します。

生物と無生物の本質的な違いは何でしょう。もちろん色々な人が様々な定義をしていると思いますが、私は次の式で生物と無生物の違いを表現したいと思います。

無生物:P(X)

生物:P(X|θ)

ここで、Pは確率を表し、Xはある出来事(事象)、または変数を表します。つまり、P(X)はXという出来事が起きる確率を示します。P(X|θ)はθという条件の下でXの起きる確率を示します。無生物と生物の違いはθのあるなしです。無生物は特定の出来事Xの確率を変えることができませんが、生物はθを変えることで、その確率を変えることができます。即ち、無生物では確率は不変ですが、生物では可変です。

すべての生物にとってθは遺伝子であり、動物ではθは遺伝子と脳のシナプス結合です。生物は遺伝子を変化させることで特定の出来事の起きる確率を変えることができ、なかでも動物は脳のシナプス結合を変えることで特定の出来事の起きる確率を変えることができます。θは一つではなく数多くの要素、即ち多くの遺伝子や多くのシナプス結合によって構成されますが、遺伝子ではθを構成する要素の数は2万(遺伝子数)、あるいは数千万(ゲノム多様性の数)、30億(全ゲノム配列)とも考えられます。脳では約100兆個(シナプスの数)とも考えられます。従って、遺伝のシステムと脳でθを構成する要素の数の違いは数万-数億倍くらいでしょう。θは可変ですから、たびたび更新されます。ヒトの場合、遺伝子ではθは約20年ごとに更新され(世代交代)、脳では秒単位です(シナプス可塑性の更新)。即ち、遺伝子と脳とではθの更新回数に数億倍以上の違いがあります。

私は、統計学は遺伝のシステムをモデル化したものであり、深層学習は脳のシステムをモデル化したものと考えています。統計学と人工知能、深層学習の初期の歴史からもそれがわかります。この原稿の中ではθを統計学に習いパラメーターと呼ぶ事にします。 それでは生物は遺伝子であるθをどのように使って確率を変えているのでしょうか。生物は個体が生存するためにθを使っています。即ちXを生存だとすると、θを動かしてP(X|θ)の値を最大にするようにしていると考えられます。実際には、生存の確率P(X|θ)の高い個体が残ると考えられます。従って、残った個体は生存の確率が高い個体になるはずです。

このようにθが変化することで、P(X|θ)を最大にしていく方法を最尤法といいます。そして、P(X|θ)をθの関数L(θ)と見た場合、これを尤度関数と言います。一般に、確率は出来事(事象)、またはランダム変数、Xの関数であり、パラメーターθは固定されています(定数)。逆にXを固定し、θを変化させてできる関数が尤度関数です。つまり、確率では生きる(X=1)確率、死ぬ(X=0)確率というようにXが変化しますが、尤度関数では生きる(X=1)は固定され、θを動かして、その確率を高くするということになります。尤度関数、最尤法はフィッシャーにより考案され、連鎖解析という遺伝の問題を解くために最初に用いられました。遺伝子を変化させ生存確率を最大化するという最尤法は、生命の本質と言えるものです。

最尤法を使ってパラメーターを推定する方法は「回帰」と呼ばれます。回帰はメンデルの法則の再発見以前に遺伝学を研究していたゴールトンが、最小二乗法を用いて親子の身長の関連を分析するために名付けたものですが、フィッシャーはこれが最尤法の一部であることを見出しました。現在では一般的に最尤法によりパラメーターを推定し、検定、推定、予測を行う方法一般を回帰という事が多く、線形回帰、ロジスティック回帰、クロスエントロピーを用いた回帰全体が回帰です。従って、深層学習は基本的に最尤法、あるいは回帰を用いて最適パラメーターを推定し、それを用いて予測を行う手法と言えます。

ただし、生命は1個体であっても1回の出来事だけで生死が決まる物ではありません。数多くの出来事に遭遇します。様々な出来事(i)のそれぞれで生き延び、次世代に遺伝子を引き渡さねばなりません。従って、1個体が生き延びる確率は、それぞれの出来事を通じて生き延びる確率、P(Xi|θ)niとなります。対数を取るとnilogP(Xi|θ)(式1)となります。全てのniを加えた数をNとし、式1をNで割るとni/NlogP(Xi|θ)(式2)となりますが、ni/Nは割合なのでQi=ni/Nと置くと、式(2)はQilogP(Xi|θ)となります。これはクロスエントロピー-QilogPi の符号を変えたものです。つまり負のクロスエントロピー、QilogPi(式3)ということになります。ここで式の正負とクロスエントロピーの正負が逆転しているので注意してください。対数は単調増加関数ですから、尤度関数を最大化するということは、負のクロスエントロピーを最大化するという行為と本質的に同じです。深層学習の本質は負のクロスエントロピーの最大化ですから、これは遺伝子が尤度関数を最大化するという行為と本質的に同じものです。遺伝では変化させるパラメーターθは遺伝子ですが、深層学習では「重み」という数値です。式3でQiが固定されているとき、負のクロスエントロピーを最大化する方法はPi=Qiとする方法です。Piはθを動かすことで変化します。正しい結果がわかっている場合は、それに合うようにθを変化させるのが最良の方法です。これは深層学習の教師あり学習と同じです。教師データが無い場合は、Qi=Piとして式4を負のエントロピー、PilogPiとし、この値を最大化します(教師無し学習)。これは、75年前、シュレディンガーが述べた「生物は負のエントロピーを生成している」という指摘に合致するものです。

遺伝子は生物全体に共通して存在するものですが、脳は動物だけが持っているものです。地球ができたのは約46億年前、生命が発生したのは約40億年前と言われます。約20億年前、微生物である細菌が、同じく微生物である古細菌に内部共生を始めたのがミトコンドリアの起源だと考えられています。これにより生物は巨大なエネルギーを獲得し、多細胞化、性分化、生殖細胞分離などの高度な性質を持つようになりました。10億年くらい前に最初の動物が出現したと考えられています。

動物は植物と違って、食物を得るために移動します。逆に、捕食者から逃げるため移動します。私は、この捕食者と獲物の関係が動物にとって最も重要であると考えています。捕食者は獲物を得るために必死になり、獲物は捕食者から逃げるために必死になります。稀には、捕食者の間の戦いもあるでしょう。この戦いに勝つかどうかが生死を決めます。いずれも最も重要な入力源は眼からの信号であり、最も重要な主力源は筋肉です。眼に入るのは光であり、光が網膜を刺激し、視神経を通して脳に運ばれます。脳で情報処理された後、運動神経を通じ筋肉を動かすことにより捕食者は獲物を獲得し、獲物は捕食者から逃げます。捕食者も獲物も、この戦いを繰り返し、学習により互いに能力を向上させます。

いやいや、人間にとって重要な行動はこのようなものではない。人間はもっと高度な行動、例えば文化活動をしたり、愛を語ったりするのだという批判が出そうです。しかし、実は愛を語るにも筋肉が必要です。アイラブユーと囁くのも、ラブレターを書くのも、百万ドルの笑顔を返すのも、ウインクをするのもすべて筋肉活動です。このような行動は、捕食者と獲物の関係が変化してできたものと解釈できるのではないでしょうか。いずれにせよ、捕食者と獲物の闘いに必要なシステムは、入力、情報処理、出力で構成され、学習により能力を向上させる深層学習のシステムと酷似しています。

動物は捕食者と獲物の関係を繰り返し、それにより感覚器、脳、筋肉系を進化させてきたわけですが、その対決は例えば囲碁を行うための深層学習が互いに競い合う強化学習と類似しています。最初のうちは過去の棋譜データを利用して強くなった囲碁ソフトは、ソフト同士が戦い続けることにより世界最高棋士もかなわない能力を獲得しました。強化学習です。動物はこれまで何度、捕食者と獲物の対決をしてきたでしょう。動物が出現して10億年、地球上の動物の個体数を1兆個、対決の数を1日1回と推定すると、これまでに365/2x 105 x 1012 = 1.83 x 1019回の対決が行われたと推定されます。これは深層学習を用いた囲碁ソフトの強化学習で行われた対決数に比較しても桁外れに多いものです。

それでは、捕食者や獲物はどのようなシステムを構築したのでしょうか。捕食者の側から見てみます。獲物をうまく獲得できた捕食者は生き延び、獲得できなかった捕食者は生き延びることができなかったと考えられます。つまり、捕食をXとすると、P(X|θ)を最大にするように脳のシステムがθを変化させていったと考えられます。

それではどのような方法が効率的でしょうか。獲物を捕らえるには動く獲物の次の瞬間の位置を知る必要があります。それは、過去と現在の位置と運動量から可能と思われます。ニュートン力学を用いると、次の瞬間の獲物の位置を予測できるでしょう。確かにそうですが、実はニュートン力学は捕食者にとって効率的な方法ではありません。ニュートン力学はデカルト座標を使いますが現実の世界には格子が無いからです。捕食者には獲物の方向の角度と距離の情報があります。距離は両眼の網膜に映る画像を処理することにより算出可能です。実は、角度と距離のデータから次の獲物の位置を予測するために最適な方法はニュートン力学ではなく、ハミルトン力学です。ハミルトン力学はニュートン力学から完全に導くことができますが、格子(デカルト座標)を必要とせず一般化座標、一般化運動量を用いることができ、極座標の情報がわかる捕食者には最適な方法です。ハミルトン力学では運動エネルギーと位置エネルギーの和であるハミルトニアンを求め、その運動量による偏微分は位置の時間による微分になり、その位置による偏微分の符号を変えれば、運動量の時間による微分となります。つまり、ハミルトニアンの偏微分により次の瞬間の位置と運動量を予測できます。これは比較的容易な計算であり、動物の脳も我々が紙の上で計算する以上にこの計算能力を持っていても不思議ではありません。

しかし、問題は、獲物は一つの点である質点とはみなされないことです。獲物は複数の互いの距離が固定された「剛体」のようなもので、捕食者は獲物を剛体として認識していると考えられます。剛体が全く回転していない場合、どの質点も同じ運動をしますが、回転している場合、重心を求める必要があります。しかし獲物を剛体として考えた場合、部分部分で比重が違います。従って、積分により重心を求める事は困難です。捕食者は獲物の体内の部分部分の比重を知ることは困難なので、重心を求めるためにまず回転軸を求めるのではないでしょうか。同じ剛体が2つの異なった自由回転をするとき、その回転軸が交わる点が重心です。剛体の回転軸を求める方法は、それぞれの質点の位置を要素とする行列の固有値、固有ベクトルを求める方法です。即ち、獲物を補足するためには行列計算が必須です。固有値、固有ベクトルを求めるにはQR法など行列計算を繰り返す方法もあります。深層学習の教師無し学習であるautoencoderを、活性化関数を恒等関数に設定し用いると固有値計算と類似した計算を行うことになります。ただし、固有値計算ではベクトルが動きますがautoencoderでは行列が動きます。行列計算は剛体の回転軸を求めるために必要なだけではなく、コンピュータグラフィックスで3次元の剛体の回転、平行移動、拡大縮小などを行うために必須です。もともと、最初にGPUが有用となった分野もこの分野です。いずれにせよ、獲物の動きを正確に把握するためには捕食者の脳内に行列計算の情報処理が必要となります。

上記のように、捕食者が極座標を用いる場合、獲物の質点の動きを予測するために最適な方法は総エネルギーであるハミルトニアンを用いる方法ですが、剛体とみなした場合は行列計算が必要です。しかし、これは実は、獲物が無生物である場合です。

実は獲物は生物であり、無生物のように決定論的な動きをしません。従って、ハミルトン力学が最適な方法とは言えないのです。また剛体も真の剛体ではなく、質点間の距離も変化します。このような場合、捕食者はどのような対応をすればよいでしょうか。重心を考えた場合でもハミルトン力学から予測される質点と運動量から、不確実性を持った広がりとして捉えるほうが最適な方法です。もし、ハミルトン力学が教える通りの次の瞬間の獲物の位置を絶対視すれば、獲物の思わぬ動きにより翻弄されるでしょう。むしろ、獲物は捕食者が自分の動きを予測してくることがわかっているので、それを外す動きをみせると考えられます。獲物も捕食者と同様に莫大な数の強化学習を繰り返して来ているからです。そこで、位置と運動量に関してハミルトン力学が教える予測値から雲のように広がりを持った確率分布を想定した方が良いことになるでしょう。

ここで、読者は気付いたと思いますが、この想定は量子力学のモデルと酷似しています。即ち獲物の位置と運動量を確定的なものと考えず、それぞれが広がりを持った対象と考えたほうが効果的という事です。捕食者が獲物の次の瞬間の位置を絶対視すれば、獲物はそれを外すことで逃れ、捕食者は生きるために十分な食料を得ることができません。シュレディンガー流の量子力学ではハミルトン力学が教えるようなハミルトニアン(位置、運動量、時間の関数でありスカラーである)から拡張され、ハミルトニアンは状態ベクトルを変換する演算子、または行列と定義されます。時間に依存しないシュレディンガー方程式は、固有値方程式となりエルミート行列の固有値、固有ベクトルを求める問題となります。ハイゼンベルグによる行列理論では量子の位置と運動量が不確定となりますが、これはシュレディンガー方程式と同等である事が証明されています。

つまり、深層学習の本質である行列計算は、捕食者が獲物を捕らえるため(あるは逆に獲物が捕食者から逃げるため)必須のシステムと考えられます。ここで、行列計算は経時的な位置と運動量の情報から次の瞬間の位置と運動量の推定するために必要であることを解説しました。しかし、その前に網膜から経時的に得られた光の情報を位置と運動量に変換するシステムが必要です。また、動物が向かうべき位置が決まれば、その目的のために運動神経を刺激し、筋肉を効率的に動かすことが必要です。この入力データの事前処理、出力のための事前処理のためにも行列計算が必要だと考えられます。これら、3種類の行列計算は異種の処理であり、それぞれの間に非線形の関数が必要だと考えられます。なぜなら、3つの行列計算をすべて線形で結べば、一つの線形の行列計算と同等になるからです。従って、捕食者と獲物の闘いを効率的に行うためには少なくとも3層の行列計算システムが必要であり、その間は非線形関数で結ばれる必要があると考えられます。このシステムは深層学習そのものです。

捕食者が獲物を捕らえる能力の最適化を考える上で、もう一つ重要な事は獲物だけでなく捕食者も移動しているという事実です。捕食者は等速運動をしている場合も、加速運動をしている場合もあるでしょう。いずれにせよ、捕食者は動きながら、網膜を刺激する光の信号をもとに獲物を捕食しなければならないのです。これについては後述の相対性理論に関する内容で触れたいと思います。

このようなシステムを動かすことにより、捕食者が獲物を捕らえる確率を最大化していると考えられます。そのためには、確率(尤度)の対数である負のクロスエントロピーを最大化していると考えられます。ここで、尤度関数と負のクロスエントロピーを比較すると尤度関数のグラフの曲線は神経システムには急すぎます。対数にするとはるかになだらかになります。実際の神経の電気信号を用いたメカニズムを考えると、尤度関数はその対数に比較して大小の違いが大きすぎ、実装は困難でしょう。実際に、生物のほとんどのシステムでは外部からの入力信号を神経信号に変換するとき対数変換に近い変換を行っています。

このように捕食者が獲物を捕らえる確率、あるいは獲物が捕食者から逃げる確率を最大化するためには脳内に回帰、即ち最尤法を行う情報処理装置が必要です。それは、前例のある場合は負のクロスエントロピーを最大化することにより達成されますが、前例の無い場合は負のエントロピーを最大化する事で達せられるでしょう。そして、それぞれを最大化するためには行列計算を行う情報処理装置が必須なのです。即ち、遺伝のシステムも脳のシステムもシュレディンガーが予測したように「負のエントロピーを最大化」しているのです。

私は、人工知能は、このようなヒトの脳のシステムを模倣する試みと考えています。確かに、上記のように捕食者と獲物の対決を通じた強化学習により構築された脳のシステムは深層学習のシステムと酷似しています。それは、深層学習がヒトの脳によって構築されたことを考えれば当然のことと思われます。更に言えば、脳のシステムが最尤法を用いる点で遺伝のシステムと類似していることも、脳のシステムが遺伝のシステムにより構築されたことを考えれば当然のことです。もともとは、生存の確率を高めるシステムが深層学習にも反映されているわけです。

そのように構築された脳のシステムを用いて我々は数学を構築し、物理学を構築していることになります。上記のように、捕食者と獲物の戦いのための脳の情報処理装置には行列計算と回帰、あるいは最尤法のシステムが必要です。行列計算の基本は代数構造が示す通り、数の集合に「たす」「かける」の演算を行うものです。そして、単位元と逆元を定義すれば「引く」「割る」も定義できます。行列計算を利用して最尤法を実行するためには、「対数」という演算装置、更には微分という演算装置が必要になります。パラメーターを動かすと尤度の対数が増えるか、減るかという事を知る必要があるからです。三角関数や複素数などの概念も、動物は主として極座標を用いるが、デカルト座標も役立つと考えると捕食者と獲物の関係から必要になると予想されます。最尤法によるパラメーター推定が数値的に、漸化式を用いて行われていることを考えれば、コーシー列の収束点の集合である実数全体の概念も必要となります。即ち、整数、実数、有理数、複素数など数の集合の概念、四則演算を中心とした代数構造、更には対数、微分、三角関数などという様々な演算も、捕食者と獲物の闘いのために進化した脳に依存していると私は考えています。

人間の脳が外部からの入力データを合理的に説明する試みである物理学も例外では無いと考えています。前述の通りニュートン力学、ハミルトン力学が捕食者と獲物の対決に重要であることは論を待ちません。しかし、ヒトの脳がこれまでに経験しなかった観察データをどのように解釈するかという問題があります。つまり、捕食者と獲物の関係に直接関与しなかった対象物をヒトはどう解釈するでしょうか。

捕食者と獲物の関係において入力は基本的にほとんどすべてが光です。光によって構築されたシステムは完全に光に依存的になるでしょう。また、捕食者も獲物も静止していることは稀で動いています。即ち、等速運動や加速運動をしているでしょう。そして、静止状態、等速度運動、加速運動のどの状態でも通用するシステムが必要です。それにより、光の等速性と、運動法則の等価性(等速運動、加速運動にかかわらず)が前提となると考えられます。また、前述の通り、運動量と位置については確実性を前提としないほうが有利となります。

これらは、特殊相対性理論、一般相対性理論、および量子力学の仮定と極めて類似しています。科学が進歩し、これまでには観察されなかったデータが新たに観察されることにより、新しい科学的解釈がなされてきました。極めて不思議な事は、新しい観察データが現れても、多少の解釈の奇妙さはあれ、以前からの数学がきれいに適用できる事です。これは不思議でもなんでもなく、数学そのものが動物の捕食者と獲物の関係の上で進化させてきた脳のシステムそのものを反映しているからです。どのような観察データを観察したとしても、ヒトの脳はそのシステムを用いて解釈しようとするはずです。


HOME » 理事長通信 » 2019年 » 第132号 ライオンの脳も微分方程式を解いている(2)

PageTop