シミュレーションのための準備

この文章はプログラミングについての適切な mental model を持ってもらうために 書かれました。適切な mental model が形成されていると詳細の理解が促進される ことが予想されます。おそらくアセチルコリン系の活性、セロトニン様物質による 大域的な抑制の解除、 などによってメンタルモデルに対応するアトラクタが脳内に形成され、アトラクタ に引き込まれる領域とアトラクタの深さが適切に変化することで、理解を促進する と考えられます 1

Turing machine

Alan Turing (1912.6.23-1954.6.7): イギリスの数学者。 数学と数理論理学のほか、 計算機の基礎理論と応用の広範な分野で数々の独創的な研究を行った。 いわゆる`情報科学'の最初の研究者の一人。 大学 在学中の 1935 年に数理論理学の研究を開始した。 1936-37 年にTuring machineの概念を導入した論文 ``On computable numbers, with an application to the Entscheidungs problem'' を発表。 数値計算、数理論理学、人工知能の可能性 (`Turing test', チェスのプログラムなど)、形態発生に関する研究を行った。 1954 年毒物の服用により死亡。 アメリカ最大のソフトウエア学会 ACM は、1966 年から毎年 1〜2 名の すぐれた業績を挙げた研究者に対して、最高の栄誉として Turing 賞を贈っている。 -- 岩波情報科学辞典より抜粋

Turing machine では命令もデータもテープ上に表現されている点に注意。 Tape head の動作は homunculus analogy で考えてもよいかも知れない。

\fbox{\resizebox{0.5\textwidth}{!}{\includegraphics{turing_machine.eps}}}

computer:
逐次処理
brain:
並列処理

脳とコンピュータ2はの計算可能性の観点からは等価であるとみなすことができます。 計算可能性の理論の中で、Turing machine の停止問題は基本的なものです。 Turing machine の停止問題は決定不能問題なのです。 ほとんどの決定不能問題を証明する場合、 ``もしその問題を解くアルゴリズムが存在すれば Turing machine の停止問題を解くアルゴリズムも存在する'' ということを直接的あるいは間接的に示すという手段が用いられます。 Turing machine がすべての入力に対して停止するか、 2 つの Turing machine (脳とそのシミュレーションである neural network) が同じ働きをするかなど、 Turing machine に関するほとんどの決定問題は決定不能なのです。 ちなみに、Neural network で解こうとしている問題はすべて計算可能です。 なぜならすでに別の implementation -- 脳 -- が実在するから。 この意味では数学者より分のよい勝負をしていると言える。

Program = algorithm + data structure

N. Wirth の言葉です。プログラミングとはアルゴリズムの記述とデータ構造の設 計であることを意味しています。

C は手続記述型のプログラミング言語に属し、関数と呼ばれるモジュールを呼び出 すことで、そのプログラムが実行されます。通常、関数(モジュール)は複数のより 基本的な関数(モジュール)から構成されます。C のプログラミング作業とは関数 (モジュール)を作ること、作った関数(モジュール)を適切な順序で呼び出されるよ うに制御することです。モジュール間の依存関係と実行順序の制御のことをアルゴ リズムといいます。

蛇足ですが、認知科学ではモジュールの考え方に次の 2 とおりがあります。

Two influential theoretical positions have permeated cognitive science: (1) that the mind/brain is a general-purpose problem solver (NEWELL and Simon 1972; PIAGET 1971); and (2) that it is made up of special-purpose modules (Chomsky 1980; Fodor 1983; Gardner 1985). The concept of modular organization dates back to KANT (1781/1953) and to Gall's faculty theory (see Hollander 1920). But it was the publication of Fodor's ``Modularity of Mind'' (1983) that set the stage for recent modularity theorizing and which provided a precise set of criteria about what constitutes a module. -- MIT encyclopedia of the cognitive sciences より

コンピュータは万能機械であるという意味では (1) であすが、C によるプログラ ミングとは (2) に記述されているようなモジュールを作ること、といってよいと 思います。つまり、望む機能を実現するために特殊化したモジュールを作成するこ と。

starting small

Elman, J. L. (1993). Learning and development in neural networks: The importance of starting small. Cognition 48: 71-99.

ニューラルネットワークに対する一つの批判として、ニューラルネットワークのプログラムの多くはおもちゃのように小さ く、実際の脳と比べると著しく見劣りするという批判があります。確かに、このス ケーラビリティの問題は深刻であると言って良いです。かつてミンスキー (Minsky)とパパート(Papert)[Minsky & PapertMinsky & Papert1988]が批判したとおり、蟻の体型を そのまま拡大して象の大きさにしたのでは、おそらく巨大な蟻は自分の体重を支え きれずに動けないでしょう。地球の重力に反して体を支えるためには象のような太 さの足が必要なのです。すなわち現在のニューラルネットワークプログラムを単に拡張しただけでは解 決できない問題が存在するに違いありません。しかし、このことはニューラルネットワーク研究を全否 定することにはならないだろうと考えています。スケーラビリティの問題を解決す るためにはどのような手法が有効であるのかを議論しゆくのはこれからの課題なの です。

解決の一部はすでに示されていると言って良いのです。ランダウアー(Landauer)と デュマス(Dumais)[Landauer & DumaisLandauer & Dumais1997]は、百科辞典のすべての文章におけ る単語の見出し語項目との間の共起関係に特異値分解を適用し、数百個の次元から なるベクトル表現を構成しました。このベクトル表現によって単語間の類似度を定 義し、TOEFL の類義語問題に結果を適用することで人間の受験者に近い正答 率が得られることが示されています。彼らによればベクトルの次元数を $300$ と したとき一致率が最大になるということです。このことから人間の意味処理として $300$ 次元程度の意味空間を用いることでコンピュータに人間に近い振る舞いをさ せることができるという結果が得られています。このことは従来曖昧な定義であっ た意味に対して計量的なアプローチが可能であることを示していて興味深いと思い ます。なお、同じような発想から非負行列因子化(NMF)と呼ばれる手法も注目を集 めています[Lee & SeungLee & Seung1999]。

アシモフの SF の中に次のような言葉が書かれています。

「もし、宇宙のある側面を理解したいと思ったら、理解するのに絶対必要な特性 とか性質だけを残して、できるだけ単純化して考えるといい。物体がどのように 落下するか究明したければ、それが新しいか古いか、赤か緑か、匂いがあるかな いか、などを気にしてはならない。それらを除去するんだ。不必要に物事を複雑 化してはいけない。この単純化をモデルとかシミュレーションとか呼ぶことがで きる。--中略-- このような単純化したシミュレーションは、現象そのものを研 究するよりも、もっとずっと容易にその現象を把握させてくれる。--中略-- 何らかの現象について、もっともっと多くを知ろうと思うにつれて、 あるいは、現象がますます複雑になるにつれて、 ますます多くの巧妙な方程式が必要になり、 ますます細かいプログラミングが必要になり、結局、 把握するのがますます困難になるコンピュータ化したシミュレーションが必要にな る。」
「シミュレーションのシミュレーションはできないのかね? もう一段階程度を落して」
「その場合には、包含したい現象の一部を省略しなければならない。 そうすると、そのシミュレーションは役に立たなくなる。Least Positive Simulation は対象が複雑になる速度よりも、もっと急速に複雑になる。 そして、究極的にはシミュレーションがその現象に追いついてしまう。 このようにして複雑性を 完全に 備えた、 全体としての宇宙は、 それ自体よりも小さなシミュレーションによって表現されないということが、 何千年も前に確認されている。」
-- アイザック・アシモフ「ファウンデーションへの序曲」早川書房より
どのレベルシミュレーションを行うかは研究者の裁量に任されています。 Hodgkin--Huxley 方程式に基づいた処理ユニットを使って 認知系のシミュレーションをした話は聞いたことがないし、 明らかにやりすぎだと思います。

文献目録

Landauer & Dumais1997
Landauer, T. K. & Dumais, S. T. (1997).
A solution to plato's problem: The latent semantic analysis theory of acquistion, induction, and representation of knowledge.
Psychological Review, 104, 211-240.

Lee & Seung1999
Lee, D. D. & Seung, H. S. (1999).
Learning the parts of objects by non-negative matrix factorization.
Nature, 401, 788-791.

Minsky & Papert1988
Minsky, M. & Papert, S. (1988).
Perceptrons, Expanded Edition (2 Ed.).
Cambridge, MA: MIT Press.
... と考えられます 1
これは私の妄想です。セロトニンを第一近似として抑 制性の物質であると考え、アセチルコリンを興奮性のそれと考えてみたときの ...
...脳とコンピュータ2
実時間での処理を考えなければ相互に変換可能である という意味では