ロボマインド・プロジェクト、第402弾!
こんにちは、ロボマインドの田方です。
僕らは、今、心をそのままコンピュータで実現するマインド・エンジンを開発しています。
マインド・エンジンは、大きく無意識側と意識側に分かれていて、無意識側は、大まかな設計は固まって、今は、それを淡々と実装してる段階です。
問題は意識側です。
意識も大まかな設計はできていたんですけど、実装レベルまで落とし込んで考えようとしたら、まだ、詰めが甘いことがわかってきました。
粒度って言うんですけど、粒の大きさが揃ってないんですよ。
細かいレベルの話と大きなレベルの話が混在してて、間が抜けてるんですよ。
前回、第401回で語ったのは、その中間レベルの話です。
それが、脳で言えば、脳内ネットワークです。
脳って、領域ごとに細かい処理をしてますけど、実際は、複数の領域がつながってて、ネットワークを形成しています。
この考えが、マインド・エンジンには欠けてたんです。
この脳内ネットワークについて書かれた本が、前回紹介した『学ぶ脳』です。
この本読んでたら、意識に関して、全く新しいアイデアが出てきました。
それは、人工生命です。
人工知能とは、また、別です。
これが、今回のテーマです。
意識は、人工生命だった!
それでは、始めましょう!
まずは、前回のおさらいをします。
前回、中央執行ネットワーク、気付きネットワーク、皮質下ネットワーク、感覚運動ネットワークを紹介しました。
皮質下ネットワークというのは記憶を司るところで、記憶を基に感覚運動ネットワークで行動するのが直観による行動です。
中央執行ネットワークというのは、前頭前野を中心とするネットワークで思考とか言語とかを司るネットワークです。
気付きネットワークというのは、自分の行動を観察して、何かおかしなことがあったら意識に知らせるネットワークです。
脳内では、これらのネットワークが協働して働きます。
その例として、人種差別を見抜く心理テストを紹介しました。
簡単に説明すると、中央に写真が表示されて、それが物の場合、左右に「良い」「悪い」のボタンが表示され、どっちかを押します。
中央の写真が人物の場合、左右に「白人」「黒人」のボタンが表示されて、どっちかを押します。
最初、物の写真を何度も出して、左が「良い」、右が「悪い」って覚えさせます。
この課題、とにかく素早くボタンを押させることで体で反応するようにさせます。
そうやって、体が覚えたところで、人物の写真を出します。
体で反応してボタンを押そうとするので、パッと見て、黒人だから「悪い」って思って右を押そうとします。
でも、押そうとしたボタンを見ると、「白人」ってなってるので、「おっと」となって左を押します。
この「おっと」となった分だけ、反応が遅れるわけです。
逆に言えば、ボタンを押すタイミングが遅れた人は、心の中で黒人は悪い奴だって思ってるわけです。
つまり、人種差別してるかどうか、このテストで見抜けるわけです。
人種差別のことは置いといて、前回、これを脳内ネットワークを使って解説しました。
直観で反応してるのが記憶の皮質下ネットワークと感覚運動ネットワークです。
ボタンを読み取って、正しく「黒人」と書いたボタンを押そうとするのはルール通りに行動する中央執行ネットワークです。
直観による行動とか、思考の内容をモニターして、おかしいと判断するのが気付きネットワークです。
気付きネットワークがおかしいって意識に知らせたから「おっと」となったわけです。
これが脳内ネットワークが協働して働くってことです。
今回、また新たな心理実験を紹介します。
それはシロクマテストです。
被験者には、最初、シロクマについてだけ考えてもらいます。
その次に、シロクマについては考えることを禁止します。
そして、「思いついた単語を言ってください」って課題を出します。
被験者は、最初、「地下鉄」とか、「雷」とか、シロクマと関係ない言葉を言います。
でも、気を抜くと、「ひょっ、ひょうたん」とかってなります。
「今、氷山って言おうとしたんちゃいますか?」
「ちゃ、ちゃいますよ」
「ほんまですか?じゃぁ、続けてください」
「ほっ、ほっけ」
「今、北極って言おうとしたでしょ」
「そんなことないです!」
とまぁ、こんな風になります。
まぁ、こうなるのも分かりますよね。
でも、分かるだけじゃ、意味がありません。
こんな風になるAIをどうやったら作ったらいいか考えます。
まず、最初、シロクマについて考えましたよね。
これは一つのタスクです。
タスクというのは、何らかのルールがあって、そのルールに従って処理する一連の仕事、またはプログラムです。
この場合なら、シロクマに関連する単語を出力するプログラムです。
長期記憶の中に意味記憶があります。
意味記憶は、たとえば「〜は〜を持っている」ってhas-a関係で単語を整理した一種のデータベースです。
たとえば、「氷山 has-a シロクマ」とか、「北極 has-a 氷山」とかってデータベースに登録されているわけです。
これを検索して「シロクマ」に関連する単語を抽出するわけです。
さて、心はPCのOSと考えたら分かりやすいです。
OSはいろんな処理を実行できますよね。
デスクトップでWordを開いて文章を書いたり、エクセルを開いて表計算したりできます。
一度にいくつものアプリを開けますけど、アクティブにできるのは一つです。
ユーザーは、どれか一つ、たとえばWordをアクティブにして文章を書きます。
ユーザーが処理できるのは一つだけだから、アクティブにできるアプリも一つなんです。
心がOSだとすると、このときのユーザーが意識です。
なぜなら、意識が考えることができるのも、常に、一つだけですから。
ただ、OSは、裏でいくつもの処理を実行しています。
人も同じです。
文章を書いてるとしても、同時に呼吸したりしてますよね。
意識が注意を向けてなくても、裏ではいろんな処理が実行されてるわけです。
さて、OSと心が違うところもあります。
まず、OSの場合、どのアプリを実行するか決めるのはユーザーですよね。
心の場合、この役割は中央執行ネットワークが担います。
意識ができるのは、中央執行ネットワークに、どの処理を実行するか設定するだけです。
中央執行ネットワークは、設定に基づいて、次に実行するアプリを決めます。
アプリは、仮想世界で実行されます。
ここで、意識の仮想世界仮説について説明します。
人は、目で見た世界を頭の中の仮想世界で再現します。
意識は、この仮想世界を介して現実世界を認識します。
これが意識の仮想世界仮説です。
仮想世界というのは、じつは、複数あります。
複数の仮想世界を持つ基盤を仮想世界プラットフォームと呼ぶことにします。
OSで言えば、デスクトップです。
デスクトップで開いてるWordとかエクセルなどのアプリが仮想世界のプログラムというわけです。
開いてるアプリのうち、意識が認識するのが、アクティブな仮想世界です。
マインド・エンジンも、仮想世界を複数持てます。
仮想世界を実行するというのは、その仮想世界の中のプログラムを実行するということです。
プログラムとして、たとえば「シロクマに関連することを思いつく」っていうプログラムがあるとします。
仮想世界は、たとえば3DCGとします。
そこにシロクマの3Dオブジェクトを生成したとします。
意識プログラムは、仮想世界にオブジェクトが生成されるとそれを認識できます。
これが思いつくってことです。
さて、最初、中央執行ネットワークは、「シロクマに関連することを思いつく」ってプログラムを実行するって設定されています。
次に、意識は、「シロクマ以外の単語を思いつく」ってプログラムを作って、このプログラムを実行するように、中央執行ネットワークに設定します。
ここまでは問題ないですよね。
さて、仮想世界プラットフォームで実行されるプログラムは、中央執行ネットワークが実行するものだけでなくて、自動実行されるものもあります。
たとえば、内臓とか、感覚器からの情報をモニターするプログラムなんかがあります。
これは、脳の島皮質に対応していて、たとえばお腹が空いたと検知したら空腹オブジェクトを仮想世界に生成します。
意識はこれを受けて、「お腹が空いた」と感じるわけです。
この自動実行されるプログラム、意識で勝手に止めることはできません。
だって、お腹が空くのを検知するプログラムを止めたら餓死してしまいますから。
さて、シロクマの話です。
中央執行ネットワークは、どのプログラムを実行するか決定するオペレータの役割があります。
今、「シロクマ以外を考える」ってプログラムを実行せよって意識に設定されてるから、シロクマ以外を考えるわけです。
ただ、さっきまで動いてた「シロクマのことを考える」プログラムも、実は、動き続けてます。
なぜなら、意識は、プログラムを勝手に止めることはできないからです。
意識にできるのは、中央執行ネットワークに、このプログラムを実行せよって設定するだけです。
それも、設定したからといって、必ずそのプログラムが実行されるわけじゃありません。
ただ、中央執行ネットワークは、設定されたプログラムを実行しようとはします。
さて、仮想世界プラットフォームでは、いろんなプログラムが実行されてるわけです。
イメージしてるのは人工生命のプログラムです。
これは、人工生命のライフゲームってプログラムです。
ライフゲームっていうのは、ドットが一定の規則で移動したり、増えたり、消えたりするプログラムです。
そんなプログラムを空間に配置すると、まるで生物のように動きます。
一つの生物が、一つのプログラムと考えます。
仮想世界プラットフォームの中で、いくつかのプログラムがこうやって同時に動いてるイメージです。
仮想世界で動くプログラムは、オブジェクトを生成します。
オブジェクトとして生成されると、意識が認識できます。
ただ、全てのオブジェクトを認識するわけじゃなくて、オブジェクトの種類によって、意識が気づいたり、気付かなかったりします。
オブジェクトというのは、物体だけじゃなくて、意識が認識するものすべてがオブジェクトです。
クオリアと言ってもいいです。
たとえば、空腹オブジェクトなんてのもあります。
空腹オブジェクトが生成されて、意識がそれに気づくこと、これが空腹を感じるってことです。
軽い空腹なら、そのことに気づくこともないです。
かなりお腹が空くと、「お腹減ったぁ」って感じます。
意識は、何かに気づくと、それについて考えます。
たとえば、「何か食べたいなぁ」って考えます。
考えるっていうのは、プログラムを作るのと同じです。
「何か食べたいなぁ」って考えるってことは、「食べ物を探す」ってプログラムを生成して実行することです。
このプログラムを実行すると、家の中の食べ物データベースを検索して、「キッチンにポテトチップスがある」って結果が出たとします。
プログラムの実行結果はオブジェクトです。
この場合なら、キッチンにポテチがあるってオブジェクトを生成するわけです。
意識は、それを受け取って、「そうや、キッチンにポテチが残ってたぞ」って思い出すわけです。
仮想世界プラットフォームには、こんなプログラムが常に実行されてるので、ひっきりなしにいろんなオブジェクトが生成されます。
ライフゲームプログラムと同じです。(さっきの動画)
でも、こんなんじゃ、意識は気が散って仕方ないですよね。
そこで役に立つのが集中です。
前回、バスケットボールのパスを数えるってことに集中してたら、その他のことには気づかないって心理テストしましたよね。
もし、まだ見てなかったら、ぜひ、前回の動画を見てください。
この集中って機能の役割を担うのも、中央執行ネットワークです。
集中っていうのは、他のプログラムからの結果を抑制して、いま、注目してるプログラムの結果だけを意識に届けるように制御することです。
ただ、集中力って続かないですよね。
授業に集中できなくて、つい、昼休みに何して遊ぶかとか考えてしまいます。
授業より遊びの方が楽だからです。
今の場合だと、「シロクマ以外を考える」ってタスクより、「シロクマについて考える」ってタスクの方が楽ですよね。
だから、集中力がなくなると、意識は、シロクマについて考えるプログラムの結果を受け取ってしまうんですよ。
これが、シロクマに関することが思い浮かんでしまうってことです。
これで、うまく説明できましたよね。
ただ、このままじゃ、一生、シロクマについて考えてしまいますよね。
たぶん、「シロクマについて考える」プログラムは、一度、寝ると、プログラムが終了するんですよ。
シロクマのことは寝たら忘れますけど、気になることは何度も思い出されますよね。
それは、そのプログラムが強力だからです。
「あの時、ああすればよかったのに」とかって後悔も、一種のプログラムです。
後悔って感情オブジェクトを生成するプログラムです。
それが、よっぽど悔しかったら、後悔って感情オブジェクトが常に生成され続けるんです。
それが、何かの拍子に、ふと、意識に上ったりするんです。
これが、そのことが頭から離れないってことです。
これがたまってくると、何となく気分が憂鬱になるわけです。
それから、さっき、中央執行ネットワークに意識が、「シロクマ以外を考える」を設定する機能があるって言いましたよね。
これ、別の言い方をすれば、「シロクマ以外を考えるべき」ってことです。
つまり、「~すべき」です。
何が言いたいかというと、「~すべき」って思いは、この設定スイッチのことです。
意識が操作できるスイッチがあるわけです。
つまり、「~すべき」って助動詞は、こうやってプログラムで定義できるってことです。
こうやって助動詞とかも、プログラムで一つ一つ定義していく必要があります。
これが、言葉を理解できるプログラムです。
言葉を理解するには、複雑な心のプログラムを作っていかないといけないってことです。
はい、今回の動画が面白かったらチャンネル登録、高評価お願いしますね。
それから、今回紹介した意識の仮想世界仮説に関しては、こちらの本で詳しく説明してますのでよかったら読んでください。
それじゃぁ、次回も、おっ楽しみに!