コロナウィルスの伝播にグラフ表現を用いることについて

日記

宇多田ヒカルのライブを見ると、宇多田ヒカルのライブは、宇多田がムチムチなライブと、宇多田がムチムチでないライブに分類されることが分かる。おそらくは、セットリストを入力として、宇多田ヒカルがムチムチかどうかを0から1のスコアとして出力するAIが登場する日も遠くないであろうと思われる。

さて、このような種類のたわごとを書き付けると、私は今説明したような科学のパラダイムについて説明を怠ってきたことに気がついた。

最初に標語を言っておく:そのモデルはデータに適合できるのか?

科学は第四のパラダイムに突入していると私が教えられてからもう六年近く経つ。それは正鵠を射っていたように思われる。

第一のパラダイムとは観測を中心としたパラダイムである。

火に触ると熱い。ヒトは死ぬ。物体というものは上から下に落ちるものである。このような記述式の科学は、生物学では未だに究極的に重要な位置を占めているが、精緻な予測が難しい。逆に言えば、定性的な振る舞いを記述する事で満足するタイプの生物学にとっては、これでも問題ないのだとも言える。名誉のために言っておくが、定量性を求めないのは、自己欺瞞的な振る舞いではなく、生物の「ゆらぎ」が大きすぎることによるのだろう。

第二のパラダイムとは『紙とペン』の理論科学だ。簡潔で抽象的な方程式を立て、それを解くことで現象を予言する。

ボールを落としてからt秒後には1/2 g t^2の位置にいる。波動関数がしみ出すことによって、壁に近づくたびに、壁の向こう側にいる確率が少しはあり、ものすごくレアな事象として、実際に壁の向こう側に行く。懐かしき17世紀の物理学はこれに当たるだろう。大学一年生が興味を持つのもこの種類の勉強だ。解析学と線形代数があなたに力を与えるという感じだ。もちろん、モデルはモデルに過ぎない。方程式は近似でしかない。そして、人間というのはどこまでも貪欲なものだ。この影響は? あの影響は? ものすごく大量の要素の相互作用はいいだろうが、二十八個の物体が影響し合って動くシステムをどう記述すればいいのだろうか?

第三のパラダイムは計算科学だ。

シミュレーションと言ってもいい。高速な計算機は、モデルを複雑にすることを許容した。星の中を渦巻く大量の分子がどのように移ろいゆくのか? 水に垂らしたインクはどう拡散するのか? 数万個(性的な要素は一切無い)のエレメントが相互作用するなら、それらを全て書き下してしまえばいい。もし、要素が独自に独特の振る舞いをするなら、その振る舞いを生成するプログラムを書けばいい。このようなメタ-的な思考は、プログラムの肥大化という負債を抱えたが、地球シミュレータに代表されるような、かつてない規模の予測を生み出した。

さて、一方で問題も生じた。それはシミュレーションは一方通行だということだ。計算機は法則に従って、計算機上に再現された現象を(時間的であれ、空間的であれ)発展させていくだけだった。例えば、相互作用のパラメタは設定ファイルに書かれるだけだ。それは人間が頭をひねって考えなければならない。引力の定数、電磁気力、もっとも基本的なパラメタは我々の手に委ねられていた。それらは別途、精緻な実験によって求められ、計算機はそれに従属していた。もっと激しく言えば、プログラムの振る舞いは引数に依存しなかった。

第四のパラダイムはデータ科学である。

私の言いたいのもこれだった。これを『データから法則を引き出す』というのは適切でない。それは『与えられたクラスから、データに基づいて、クラスのインスタンスを選ぶ』と言った方が適切に私には思われる。

 例えば、『落ちる物体の距離と時間の関係は x = 1/2gt^2 と表される』と思っている場合、クラスは上の方程式で、適当にgを取ったものだ。メンバ変数としてg を持つといってもいい。そして、大量の観測データから、良さそうなgを選んで返す。これが本質的に第三のパラダイムと違うのは、これは我々が必死こいて求めていた定数のほうを推定するところだ。例えば、『落ちる物体と時間に関係がある』とだけ言えば、メンバ変数は一変数関数x = f(t) となり、第四のパラダイムはf を(望むらくは)出力するだろう。最初の例との違いは極めて微妙だが存在する。

 このパラダイムで本質的なのは、『データに対してよいインスタンスを選ぶ簡便な方法があるか?』という疑問だ。

もし、よいインスタンスのメンバ変数を、データから"陽に"(定義は難しいが、雑に言えば、自分自身を含まない式で)書き下せるなら、これは非常に簡単だと言うことになる。難しく言ったが、我々がやっている線形関数のフィッティングもこれだし、クラスとして正規分布を取って、よいインスタンス(メンバ変数は平均と分散である)を求めるのもこの範疇に属する。

一方で、反復的にしか求められないこともある。つまり、適当にインスタンスを計算して、それよりもちょっといいインスタンス、それよりもさらに……と計算していくやり方だ。モデルを改良していくと言ってもいい。現在のニューラルネットワークはこの種類の方法で探すことが多いように思われる。専門的な言葉で言えば、勾配法やEM-アルゴリズムはこの範疇に属するだろう。

最後に、本当に手がかりがなく、ひたすら良さそうな場所を探すしかない、ということも当然あり得よう。現在は科学の発展により、ある程度はよいインスタンスが得られる。

しかし、この最後の状況において第四のパラダイムは本質的な困難に直面することになる。クラスが複雑になればなるほど(『意味のある』メンバ変数の数が増えるほど)、よいインスタンスを探すのは急激に難しくなるのだ。第一や第二の場合と違い、見当をつけてしらみつぶしに探さ無ければいけない状況下では、我々はメンバ変数の数に対して指数的な探索回数を強いられる。

では、このような『よいインスタンスを求めるのが難しく、パラメタ数が多い』問題にはどのようなものがあるのだろうか?

それは局所的な情報が重要になる種類の、時間発展するグラフ(エッジとノードのほう)の問題である。グラフの各頂点にはそれぞれ『個性』があり、それらが相互作用しながら、何かのパターンを作り出していく。人間をノードと捉えて、うわさが拡散する過程を考えてみると良い。人によって『口の軽さ』や『信じやすさ』は異なっていて、最後にどのようにうわさが定着するのか、ないししないのかは、これらの人々の複雑なダイナミクスによる。    制約(非循環性など)が無いとき、このようなグラフからいいインスタンスを選ぶのはかなり難しい。

 個人的には、現在(2020/04/20)の新型コロナウィルスの伝播についても同じ事が言えると考えている。確かに、ウィルスの伝染性がまちまちなことを表現し、人の社会性を適切に表すために、グラフの表現が適していることは間違いない。

 しかし、その巨大なモデルをどう観測したデータに適合させるのかは、まったく自明ではない。データとしてあるのは、抽出された人のうち、陽性だったのが何人だったのかという値だとすると、同じくらい良いとされるインスタンスがたくさんあることも想像に難くない。

もっと質問を洗練させると、こうなる――どうやって現実のデータとその定式化を突き合わせて、どうやって次に起こることを予測するつもりですか?

つまり、このクラスは現象を表現するのには――第三のパラダイム的な意味で――適しているが、観測した現象に適合することが出来ない。

したがって、私はこの種類の定式化が、今後、データとの適合が必要なる分野で使われるには、まだしばらくかかるだろうと推測する。

最後になるが、インスタンスがどのくらいデータに適合しているのかを測る指標は、極めて主観的であることを注意しておこう。


もうわかったよ汎化誤差の話はいいから、もう、夜中3時半だよ?

わかったよ俺の正則化が悪いのは、てか正則化がうまい人が誰か教えてくれよマジで、いるの、この世に? まァじでw

もしこれ二十五歳越えてやってたらねえ、ほんとにやばいよ、心配したほうがいいよ人生、ほんとに

俺なんかもう普段はあんま言ってあげないけど、友達じゃないからあなたとは、ほんとに考えたほうがいい、ほんとに

3時半にベイズ的に汎化誤差を求める手法を貼るのが、ど、ど、どう生きたらそうなるの?っていう

まあ学部生だったらいいよ、学部生だったら俺もそういうくだらない「Lossoはスパース解を求めるAI物理学者」とか言ってたから

学部生だったら、あの、これから人生いろいろあるよ、俺もポスドクの時リジェクトとかあって学んだしって、そういうことしてたらいじめられるよ

ってまあまあまあ、学部生だったらね、それがあるんだけど、二十五歳越えても誰も言ってくれないから、マジで、ほんとに

っていうか、そんな正則化がクソとか言ってる人に何か言おうっていう人がそもそも周りに絶対いない、そんなことを二十五歳越えて言ってたら、マジで

俺多分最後の人だよ、これ言うの、多分最後の人だから、一応聞い、それを聞くか聞かないかは君次第だけど、一応最後だと思うよ、人生で

多分40歳になっても言っちゃうからそれ、結構厳しいと思うよ、ほんとに