ロボマインド・プロジェクト、第257弾!
こんにちは、ロボマインドの田方です。
いよいよ、ロボットを街で見かける時代になってきたようです。
既に、レストランで配膳ロボットが働いたり、
空港で警備ロボットが働いたりしてるようです。
料理を届けてたり、人を除けながら巡回するとかはできるみたいです。
でも、警備ロボットに「うちの子が迷子になったんです」とかって話しかけても、避けて通り過ぎるだけだそうです。
「あぁ、やっぱりロボットだなぁ」って思いますよね。
ロボットは、正しいルートを巡回することしか考えてないんですよね。
じゃぁ、何ができれば、人間と同じ心を持ってるって思うんでしょう?
これが今回のテーマです。
ロボットが心を持つとは、こういうことだ!
それでは、始めましょう!
前々回、マインド・エンジンを搭載したロボットのデモをお見せしました。
(オープニング動画)
これは、お皿を洗ってるとこを見て、何をしてるのか意味を理解してるところです。
僕らが望んでるのは、人間と共存できるロボットですよね。
それは、単に、人とロボットが同じ空間を共有するってことじゃなくて、人と同じ世界を認識してるってことです。
世界を認識するのは意識です。
人は、目で見た世界を頭の中で仮想世界として構築して、意識は、仮想世界を見ます。
仮想世界を認識することが、意識が世界を見るってことです。
マインド・エンジンは、これと同じことをしています。
これがマインド・エンジンの全体像です。
コンソール、視覚入力、仮想世界、無意識、意識の五つのウィンドウを持っています。
カメラで撮影した外の世界が視覚入力です。
その映像を、仮想世界で解析して、何があるのかを解析します。
こんな感じです。
(一通り動かす)
今、映像を解析して3Dオブジェクトに変換してるところです。
はい、解析が終わりました。
ワーキングメモリを見てください。
お皿、手、スポンジ、水、人間って表示されてますよね。
お皿や、手を認識して、それをオブジェクトとしてワーキングメモリに生成したわけです。
まず、ここが重要なんです。
何が重要かと言うと、オブジェクト単位に分けたってことです。
僕らは、お皿とスポンジは別の物体だって感じますよね。
でも、目の網膜に映った映像の段階だと、そんな区別はないですよね。
それを別の物体だって感じるのは、別の物体として作り直して、それを認識したからです。
つまり、僕らが世界を見るとき、オブジェクト単位で作り直した世界を認識してるってことです。
マインド・エンジンは、それと同じことをしてるわけです。
これが、人間の心と同じように認識するってことです。
でも、本当に、人間と同じように認識してるんでしょうか?
それじゃぁ、それを確認して見ましょう。
どうやって確認するかって言うと、質問して、マインド・エンジンに聞いてみるわけです。
質問は、このコンソールウィンドウからします。
それでは質問します。
「何がありますか?」
はい、答えが出ました。
「お皿と手とスポンジと水と人間があります」
いやぁ、すごいでしょ。
まさに、人間の心、そのものですよねぇ!
えっ、もしかして、当たり前って思ってます?
これで、納得できませんか?
わかりました。
それじゃぁ、ちゃんと説明します。
いいですか。
今、答えたのはマインド・エンジンの意識なんですよ。
意識が、仮想世界に何があるか答えたんですよ。
ここから、二つのことが分かります。
まず一つは、マインド・エンジンは、会話できる意識を持ってるってことです。
もう一つは、その意識は仮想世界を認識してるってことです。
意識が認識する仮想世界は、何らかの構造をもってるわけです。
意識はそれを解釈して答えたわけです。
構造がない世界っていうのは、ただの映像です。
赤青緑の点々だけです。
そこから何らかの構造がある世界を作り上げたわけです。
そして、その世界を観察する意識があるわけです。
マインド・エンジンは、そういう意識と仮想世界を持つシステムとなってるわけです。
そして、重要なのは、僕ら、人間の心も、同じシステムだってことです。
同じシステム同士だから、会話が成立するんです。
そのシステムの内側に仮想世界があるわけです。
意識は、内側の仮想世界を見るとともに、ほかのシステムと会話するわけです。
つまり、意識が外の世界とのインターフェイスになるんです。
気付きましたか?
今、すごいことを言ったんですよ。
もう一回いいますよ。
世界は外にあるんじゃないんですよ。
世界は、内側にあるんです。
外にあるのは、世界じゃなくて、自分と同じシステムです。
コミュニケーション可能なシステムです。
この全体像、この世界観を分かって欲しいんですよ。
多くの人が勘違いしてるのは、世界の中に自分がいるって世界観です。
たしかに、それも一つの見方です。
物理的なものの見方です。
ただ、その見方をしてたら、いつまでたっても意識とか、主観は見えてこないんです。
というか、物理的な見方をしてたら、意識とか主観は、じゃまなんです。
だって、科学で最も重要なのは客観です。
だから、科学的なものの見方をしてたら、必然的に、主観とか意識は排除されるんです。
科学も重要ですよ。
ただ、今、僕らが作ろうとしてるのは、心です。
心の中心は、意識とか主観です。
だから、意識とか主観を中心に世界を組み立て直さないといけないんです。
そんな世界観でシステムを作らないといけないんです。
それが、世界が内側にあるってシステムです。
それぞれが世界を内に持っていて、その世界を認識するのは、その人の意識ってシステムです。
ただし、意識は、他のシステムとコミュニケーションできます。
それが言葉です。
会話です。
これが、主観や意識を中心とした社会の全体像です。
そんな社会の一員となれるシステムを、設計しないといけないんです。
それが、マインド・エンジンです。
それじゃぁ、次の質問をしますよ。
「何をしてますか?」
はい、答えが出ました。
「皿を洗っている」です。
これまた、すごいですよねぇ。
えっ、分かりませんか?
まさか、「そんなの、ディープラーニングでもできるよ」って思ってないですか?
ま、たしかに、お皿を洗ってる大量の動画を学習させれば、動画を見て、「皿を洗ってる」って出力するシステムは出来ると思います。
じゃぁ、それとマインド・エンジンはどこが違うのでしょう?
それは、「洗う」の意味を分かってるってことです。
じゃぁ、「洗う」の意味って何でしょう。
それは、物をきれいにすることですよね。
じゃぁ、それが分かってるか質問してみますよ。
「洗う前のお皿はどうでしたか?」
はい。
「汚れていた」って答えが出ましたよね。
次の質問です。
「洗った後のお皿はどうなりましたか?」
はい。
「きれいになった」って答えが出ましたよね。
どうです?
マインド・エンジンは、「洗う」の意味を分かってますよね。
「洗う」ことで、お皿がきれいになるってことを完全に理解してるんですよ。
えっ、これじゃ、まだ、納得しないですか?
分かりました。
じゃぁ、もっと丁寧に解説します。
最初に、「何をしてますか?」って質問して、「お皿を洗ってる」って答えましたよね。
これ、簡単な質問やと思ってるかもしれないですけど、それは、あなたが心を持ってるからです。
心がないと、これに答えるのって、ものすごく難しいんですよ。
どういうことかと言うと、「何をしてますか?」って質問です。
これ、「何かをしてる」ってことが前提となってますよね。
これがわかるってとこが難しいんですよ。
つまりね、「何かをする」ってのは、主体が何か目的をもって行動してるってことですよね。
たとえば、木の葉っぱが舞ってるのを見て、葉っぱに、「何をしてますか?」って聞かないでしょ。
何でかって言うと、葉っぱは、意志をもって行動してないからです。
つまり、出来事には、意志を持った主体が行うものと、そうでない物があるわけです。
「何をしてますか?」って質問に答えれるってことは、この世界には、意志をもった主体が存在するってことを分かってるってことです。
意志をもった主体って、何のことかわかりますよね。
さっき説明した、心のシステムのことですよ。
内側に世界を持っていて、ほかのシステムと会話ができるシステムのことですよ。
そして、主体は、目的をもって行動するわけです。
そういう世界を持ってる者同士でないと、「何をしてますか?」って会話が成立しないんですよ。
そういう世界ってのが、内側の世界、つまり、仮想世界の事です。
外にある物理世界じゃないですよ。
だって、物理世界には主観とか意識は存在しないですから。
世界は内側にあるって、全体像を忘れないでくださいよ。
さっき、仮想世界のワーキングメモリにお皿とか手と一緒に、人間も抽出してましたよね。
これが主体です。
今見てる世界には、意志をもった人間が存在すると認識してるわけです。
そして、意志を持った人間というのは、何らかの目的をもって行動するものだって。
仮想世界は、そういう事を再現可能な構造になってるってことです。
どうです?
ディープラーニングで、大量の動画を学習して、「お皿を洗ってる」って文字列を出力するのとは、もう、根本的に違うってのが分かるでしょ。
ディープラーニングは、僕らと同じ心のシステムを持ってないんですよ。
一見、日本語を出力するから、言葉が通じると思って期待してしまうんですよ。
でも、心のシステムを持ってないってわかると、がっかりしてしまうんですよ。
さて、このことを理解したうえで、ようやく言葉の定義に入れます。
全体の構造が分かっていないと、どこに何を定義していけばいいのか分からないですから。
それじゃぁ、「洗う」を定義していきましょ。
「洗う」とは、主体が行う行動の一つって定義できるわけです。
主体ってのが、心のシステムを持っていて、現実世界で行動するものです。
現実世界というのは、仮想世界でなくて、外にある物理世界のことです。
行動っていうのは、主体が、何らかの目的をもって動くことです。
「洗う」の場合、目的は、物をきれいにすることですよね。
じゃぁ、この「きれい」って漠然としたものを、どうやって定義していきましょ。
これも構造から定義します。
「きれい」というのは、オブジェクトのプロパティです。
3Dオブジェクトは、色とか形ってプロパティを持ってます。
そのうちの一つが「きれいさ」です。
そう考えると、「きれいさ」をどこに定義するか分かりますよね。
それは、皿オブジェクトのプロパティです。
世界の変化は出来事です。
出来事には、意志を持った主体が行う行動と、そうでない単なる変化の二種類があります。
そこまで分かれば、「洗う」って出来事はこんな風に定義できます。
「洗う」は行動なので、主体が存在するわけです。
cleannessってのが「きれいさ」です。
つまり、お皿の「きれいさ」が「洗う」の前、Beforeが0で、「洗う」の後、Afterが7になるってことです。
この0とか7とかは、適当の決めたもので、値そのものは重要じゃないです。
重要なのは、数値が増えたってことです。
つまり、きれいになったってことです。
これが「洗う」の意味です。
分かってきましたか?
まず決めないといけないのは、細かい定義じゃなくて、仮想世界の構造なんです。
構造が決まって、最後に、細かいことを決めるんです。
つまり、僕らが、普通に感じる「きれい」の定義です。
汚れが付いてるか、ついてないかって話です。
白いお皿に、ケチャップがついてたら汚れてて、ケチャップが取れたらきれいになったってレベルの話です。
そして、このレベルになって、ようやく、ディープラーニングの登場です。
大量の汚れたお皿と、きれいなお皿を学習させることで、お皿がきれいか汚れてるかを判断できるようになるんです。
または、きれいさなら、数式を使っても判断できそうです。
たとえば、乱雑さの度合いを表すのにエントロピーって概念がありますけど、そんなのが使えそうです。
たぶん、人間の頭も、乱雑さを感じる機能があるんです。
だから、きれいとか汚いって感じるわけです。
「何をしてますか?」と聞かれて、「お皿を洗ってる」って答えるためには、これだけのことを理解してるってことです。
さて、ここまでは、何をしてるかを答えるだけの会話です。
つまり、世界を説明するだけです。
僕らがロボットに望んでるのは、お皿を洗ってるって教えて欲しいわけじゃないですよね。
実際にお皿を洗って欲しいわけです。
そして、汚れてたら、「もっときれいにして」って言ったら、ちゃんと洗い直して欲しいんです。
そんなロボットが欲しいですよね。
じゃぁ、それができるには、何が必要なんでしょう?
次回は、そこまで踏み込んで考えて行きたいと思います
マインド・エンジンの基になってる意識の仮想世界仮説については、この本に詳しく書いてあるので、よかったら読んでください。
はい、今回の動画が面白かったらチャンネル登録、高評価お願いしますね。
それじゃぁ、次回も、おっ楽しみに!