第207回 ロボマインド・プロジェクト 第二章


ロボマインド・プロジェクト、第207弾!
こんにちは、ロボマインドの田方です。

コンピュータで心を作るロボマインド・プロジェクト。
その中で、実際に動くプログラムとして作ってるのがマインド・エンジンです。

お待たせしました。
今回は、新しいマインド・エンジンの公開です。

しかも、今回は、特別です。
こっから、ロボマインドは大きく変わります。
ロボマインド・プロジェクト、第二章です。

いままで、いくつもマインド・エンジンを公開してきました。
ただ、いままでのはあくまでもプロトタイプです。
今までやってきたのは、人間が頭の中でやってることを、コンピュータでも実現できるってことを証明することでした。
毎回、作り直していました。

今回のは、それを、一般化しました。
今後の開発の基盤となるプラットフォームを作ったわけです。
それだけじゃないですよ。

意識とは何か。
世界が存在するって、どうこうこと。
それと、言葉って、どう関係あるの。
その、核心部分を作り込みました。

それが、ロボマインド・プロジェクト、第二章です。
それでは、始めましょう!

今回のデモ、本格的なプラットフォームとなっています。
そのために、構造の部分をしっかり作り込んでます。
骨組みがむき出しになってるとも言えます。
今までのような派手さはないですけど、中の仕組みまで、しっかり見えます。

ただ、見てすぐわかるってのと、ちょっと違うんです。
はっきりいいますね。
今回、お見せするのは、コンピュータプログラム、その物です。

「プログラムなんか、見ても分からん」って思ってるでしょ。
でも、一番重要なのは、ここなんです。
なので、その部分を、丁寧に解説していきますね。

まずは、意識と無意識の根本的な違いについてです。
たとえば、自転車で考えてみましょ。

初めて自転車に乗った時、乗り方を教えてもらいますよね。
足で交互にペダルを漕ぐだとか、曲がりたい方向にハンドルを曲げるだとか。

でも、言われた通りにしても、なかなか乗れないです。
でも、何度も、失敗しながら、だんだん乗れるようになります。
そうなったら、ペダルをどう漕ぐとか、どうハンドルを切るとか、考えんでも、スイスイ乗れるようになります。

これが、意識と無意識の違いです。
頭で考えて行動するのが意識を使った行動です。
何も考えずに、自然にできるのが無意識の行動です。

つまり、「考える」ことができるのが意識です。
無意識は考えません。
無意識は、考えずに行動します。

ここ、もんのすごく重要なんです。
いいですか?
意識は考えることができるんですよ。
自転車がある。
ペダルを漕ぐ。
ハンドルを握る。
そんなことを、一つ一つ認識してます。

でも、無意識は何も考えてないです。
でも、どう漕いだら前に進むかは、わかってます。
何も考えずに自然とできてます。
ただ、現実世界に反応してるとも言えます。

無意識は、自転車があるとか、考えないんですよ。
これ、どういうことか、分かりますか?

無意識は、世界が存在するとかって、そんなこと考えれないんですよ。
今、目の前に机がある、椅子がるとかって風に、世界を感じてないんですよ。

そんな風に感じるのは、意識があるからです。
正確には、人間の意識です。
人間以外の動物は、世界に反応して生きてるだけです。
動物は、天敵が来たから逃げようなんて考えてないです。
こけそうになったら自然に体が反応するみたいに、天敵の影に反応してるだけです。

考えることができる。
これが、人間の意識なんです。

それから、もう一つ重要なことがあります。
それは、無意識が関わってる世界は、現実世界だけだってことです。
無意識は、現実世界に直接反応してます。

じゃぁ、意識が認識してるのは何なんでしょう?
人は目で見た世界を、頭の中に仮想世界として作り上げます。
そして、意識は、この仮想世界を介して、現実世界を認識します。
これを、意識の仮想世界仮説と言います。
詳しくはこの本に書いてます。
説明欄にリンクを張ってますので、興味ある方は読んでください。

意識が認識するのは、自分がつくり出した仮想世界です。
自分がつくった世界だから、認識したり、考えたりできるわけです。
「りんご」って言っただけで、リンゴを思い浮かべれるのは、りんごを仮想世界につくりだしてるからです。

第205回「文脈とはこういうことだったのか!」で、リンゴをつかった文脈の話をしました。
同じリンゴでも、「リンゴが落ちる」って文の場合は、3次元世界のリンゴ。
「リンゴを買う」って文の場合は、所有権世界のリンゴって話です。
つまり、意識が認識する世界って、目に見える3次元世界だけじゃなくて、所有権世界とか、いろんな世界があるわけです。
所有権世界ってのは、これは誰の物って所有権を扱う世界です。
物をあげるとか、売り買いするとかってときに使う世界です。

ようやく、準備が整いました。
今回のデモ、一番言いたいのは、意識が、言葉の意味を理解するとは、どういうことかってことです。
その根本的な仕組みを示すデモなんです。

さっき、無意識と意識の違いを説明しましたよね。
無意識の方が、自転車を上手く運転できてましたよね。

意識は、足を交互に動かすとか、曲がりたい方向にハンドルを曲げるとか考えます。
考えるから、上手く運転できないんです。

これだけ見たら、無意識の方が、優れてますよね。
じゃぁ、意識のメリットって、何でしょう?

それは、分けることができるってことです。
ペダルを漕ぐっていうのは、右足を降ろして、次に左足を降ろしてとか、一つ一つの動作を区別して認識できます。
無意識だと、ペダルを漕ぐ一連の動きが、全部滑らかにつながっていて、分けることができません。

じゃぁ、分けると何が嬉しいんでしょう。
それは、編集できるんです。
組み合わせたりできるんです。

Aして、Bしてとか。
自由に組み立てたり、組み替えたりできるんです。

ここで、最初の話にもどります。
今回のデモで見せるのはコンピュータプログラム、その物だって言いましたよね。

プログラムって、人間が書きますよね。
人が読めるような文で書いてあるのがプログラムです。
でも、コンピュータって、01の二進数で動いてます。
コンピュータが直接実行する2進数のマシン語です。
プログラムは、最終的には、2進数のマシン語に変換する必要があるんです。
このことを、コンパイルって言います。

さて、プログラム言語って、この部分で、大きく二つに分けられます。
一つは、コンパイラ言語、もう一つはスクリプト言語です。

コンパイラ言語は、プログラムを、全部まとめて2進数に変換します。
2進数に変換したものを、コンピュータで一気に実行します。
スクリプト言語は、プログラムを1行ずつ、2進数に変換しながら実行します。

コンパイラ言語は、実行するのは、2進数のマシン語だけなので、ものすごく速いです。
ただ、マシン語を直接修正したり、変更したりできません。
修正するとしたら、元のプログラムに戻って修正して、また、コンパイルし直ししないといけません。

一方、スクリプト言語は、1行ずつコンパイルしながら実行するので、ちょっと遅いです。
その代わり、スクリプト言語自体は、人が読める文なので、1行単位で簡単に修正できます。

ここで、これを人間に当てはめるわけです。
意識と無意識に当てはめるわけです。

自転車の運転って、素早く対応しないとスイスイ運転できないですよね。
これをやってるのが無意識です。
さて、これをプログラム言語に当てはめるとしたら、コンパイル言語か、スクリプト言語か、どっちでしょう?

そう、コンパイル言語ですよね。
自転車の運転って、ひとまとまりの処理を全部まとめて行ってるわけです。
だから、部分修正は難しいです。
右のペダルを漕いだら、右手で左ひざを叩いて、
左のペダルを漕いだら、左手で右肩を叩いてとかって言われたらどうです?
頭が混乱して、上手く乗れなくなりますよね。
部分修正ができないんですよ。

それじゃぁ、スクリプト言語は、人間でいえばなんでしょう?
それは、言葉です。
「リンゴを買って、食べる」って文があったとします。
これを、「リンゴを買って、友達にあげる」って文に修正することもできます。
これができるのは、スクリプト言語だからです。

はい、これで、ようやく、今回のデモが何か、説明できます。
今回のデモは、人間の言葉は、スクリプト言語だってデモなんです。
文章を一行ずつ読んで理解して、質問に答えるってデモです。
内容は、太郎君がコンビニで買い物をするって、簡単な文章です。

まずは、全体を見てください。

全体は、大きく4つのブロックに分かれています。
まず、この「MindEngineコンソール」に、文を入力します。

入力された文は、つぎに、この「無意識」に送られて、前段階の中間言語に変換されます。

中間言語は、この「意識」に送られて、ここでスクリプト言語に変換されます。

そして、意識は、スクリプト言語を解釈して実行します。
解釈するとは、意味を理解するってことです。
実行するとは、実際に行動するってことです。
つまり、コンビニで買い物をするって行動するとか、質問に答えるとかです。

そして、これが仮想世界です。

今回使う仮想世界は、3次元世界でなくて、所有権世界です。
なので、ここで表現されるのは、誰が何を所有してるとか、物の値段とかになります。

とにかく、まずは、実行してみます。
最初は、「コンビニがある」を入力します。

そして、ここを押します。

すると、まず、無意識がメッセージ「コンビニがある」を受信したとなりましたよね。

無意識は、この文を中間言語に変換して、意識に送ります。
意識が受け取った中間言語は、このメッセージタブに表示されてます。

「コンビニがある」ってなってますよね。

そして、意識は、この中間言語をスクリプト言語に変換します。
その内容は、この状態スクリプトタブに書いてあります。

この詳しい内容は、次回、説明します。

そして、このスクリプトを解釈実行した結果が、仮想世界に表示されます。
今回の仮想世界は、所有権世界となってますよね。

その中身が、これです。
場所がコンビニとかって出てきてますよね。

もう少し細かい内容は、こっちの意識のステータスタブに書かれてます。

今回のマインド・エンジンの全体像、分かってきましたか?
まぁ、これだけじゃ、ほとんど何をしてるのか分からないと思いますけど、今は、何をしようとしてるのか、感覚だけ掴んでもらったらいいです。

ポイントをまとめますよ。
一つは、この、入力した自然言語の文が、このスクリプトに変換できたってことです。
もう一つは、意識は、スクリプトを使って、仮想世界、ここでは所有権世界を操作することができるってことです。

ほんで、一番重要なこと、言いますよ。
意識が認識してるのは、このスクリプトと、

この仮想世界ってことです。

これ、どういうことか分かりますか?

これが、僕らが、普段、感じてることなんですよ。
あぁ、今、目の前に机があるなぁとか。
ちょっと、コーヒーでも飲みたいなぁとか。
こうやって普段、頭で思ってるでしょ。

それ、どうやって、思ってます?
言葉で思ってるでしょ。
言葉で考えて、行動するわけです。
自動販売機でコーヒーを買うとか。
これが、僕らが感じてる世界です。
そんな世界に生きてるから、考えたり、会話したりできるわけですよ。

でも、人間以外の動物は、そうじゃないんですよ。
現実世界に反応してるだけなんですよ。
自転車に乗ってるときみたいな感覚です。
「あぁ、今、自転車にのってるなぁ」とすら思わないんです。
これが、人間と動物の最大の違いです。

その最大の違いを、このマインド・エンジンは、再現したわけです。
僕らが、普段、当たり前にやってること。
当たり前すぎて、一体、何をやってるのかすらわからないことです。
でも、そう言われると、気になりますよね。
えっ、普段、当たり前にやってる裏で、どんな処理してるのって。
それを、詳細に見れるようにしたのが、今回のマインドエンジンなんです。

分かりましたか。
これが、ロボマインド、第二章です。

気になる中身は、次回、お話しますね。
はい、今回の動画が面白かった方は、チャンネル登録、高評価お願いしますね。
それじゃぁ、次回も、おっ楽しみに!