今日お話しするのは、まずは、人工意識の具体的なプログラムの方法です。
つぎに、4つの記憶について説明します。
最後に、人間のみが持つ、エピソード記憶について説明します。
これら全てが、意識の仮想世界仮説できれいに説明できるんです。
では、どうぞ。
・人工意識のプログラム
・4つの記憶のモデル
・エピソード記憶
ロボマインド・プロジェクト、第23弾
こんにちは、ロボマインドの田方です。
前回で、人間だけが持つ、意識の特徴が、わかってきました。
まず、大前提として、現実世界は、無意識が作った仮想世界だということです。
意識は、その仮想世界を認識するというモデルです。
そして、人間だけが持つ意識の特徴というのは、この現実世界の仮想世界とは別に、意識が自由に想像できる仮想世界を持てるということでした。
これを、想像仮想世界と呼ぶことにします。
こういった意識モデルを、僕は、意識の仮想世界仮説と呼んでいます。
それでは、今回は、この、想像仮想世界を獲得したことによって、何ができるようになったのか、何が嬉しいのかについて説明していきたいと思います。
これで出来るようになったことの一つは、思い出すっていう行為です。
思い出ってありますよね。
たとえば、中学校の卒業式とか思い出してください。
イメージとして思い出しますよね。
体育館とか、講堂にみんなで集まってたよなぁとか。
みんなで、校歌を歌ったよなぁとか。
そういう光景をイメージできるってことは、これは、仮想世界を作って、それを意識が観察してるってことなんです。
これができるのは、過去に見た光景を、頭の中に再現できるからです。
つまり、現実世界を再現する機能だけじゃ、これはできないんです。
思い出すには、過去の記憶を再現できる仕組みが必要なんです。
自由に仮想世界を想像できる想像仮想世界が必要なんです。
その機能ができて、初めて、思い出すって行為ができるようになったんです。
それでは、もう一度、中学校の卒業式を思い出してみてください。
ちょっとおかしなことに気づきませんか?
卒業式でみんなが席に座ってる様子。
みんなで校歌を歌ってる光景。
おそらく、全体を見下ろして想像してると思います。
よく考えてみたら、それって、おかしいんです。
だって、その卒業式のとき、自分も、みんなと一緒に席について座ってたはずです。
だったら、その時見てる光景は、席に座って見える光景のはずです。
前の席の子の背中が一番大きく見えてないとおかしいんです。
でも、そんな風に見えてないですよね。
そうじゃなくて、上から見下ろしてるんです。
そもそも、そんな位置から見たことないです。
だいたい、そんな位置から見ようとしたら、空中に浮かんでないとおかしいですし。
これが仮想世界と言うことです。
3DCGで認識してるから、こうなるんです。
「卒業式の光景」と聞いたとき、全体を見渡せる最適な位置からみた光景を3DCGで再現したわけです。
これで、意識が認識する世界は3Dの仮想世界ってこと、納得できましたよね。
さて、僕らの目的は、人と自然な会話ができるAIを作ることです。
ここから、少しずつ、言葉について考えていきます。
言葉の意味を理解するとか、言葉を使ってコミュニケーションするとかってことについて考えていきます。
まずは、「物がある」という意味について考えてみます。
たとえば、ここに、マジックペンがあります。
マジックペンを見て、認識したということは、頭の中の仮想世界にマジックペンを作って、意識がそれを見ているってことですよね。
つぎは、これを人工意識に理解させるとしましょう。
つまり、コンピュータに「物がある」を理解させるわけです。
プログラム言語の種類で、オブジェクト指向言語っていうのがあります
JavaとかC#とか、Rubyとか、最近流行りのPythonもオブジェクト指向言語です。
オブジェクト指向言語っていうのは、人が話すように、プログラムが書けるように作られた言語です。
プログラムを作るときって、細かい処理の内容と、全体の流れを上手く考えないとダメなんですよ。
それが、オブジェクト指向言語だと、最初に、単語を定義する処理の中身を書いておけば、後は、文を作るようにプログラムが書けるようになるんです。
単語は、オブジェクトになります。
オブジェクトは、属性と操作というものを持っています。
属性というのは、そのオブジェクトの状態を表します。
操作というのは、そのオブジェクトの動作を表します。
それでは、「物がある」を理解できる人工意識のプログラムを作っていきましょう。
3次元空間の意味を理解できる人工意識です。
まず最初に、3次元空間を作ります。
3次元空間は、3DCGで作ります。
次に、属性を考えます。
これは、3次元空間のある瞬間の状態を示すものです。
3次元空間のどこに何があるかを示します。
次に、操作を考えます。
「ある」という操作です。
これは、物体を3次元空間に3Dオブジェクトとして出現させる操作となります。
「マジックペンがあります」というプログラムを実行します。
すると、3次元空間の属性に「マジックペン」が追加されて、3DCG上にマジックペンオブジェクトが配置されるわけです。
「マジックペンをソファの上に移動する」という文を実行すると、ソファの上に移動するわけです。
「今、マジックペンはどこにありますか?」と質問されたら、「ソファの上にある」って答えれるわけです。
言葉を使った会話が成立していますよね。
言葉の意味を理解してるわけです。
人間の頭の中には、意識が自由に操作できる想像仮想世界があります。
「マジックペンがあります」と聞いて、マジックペンを思い浮かべるということは、想像仮想世界にマジックペンを創り出したことになります。
人工意識も、それと同じことをしてるわけです。
では、なぜ、二人の間で会話が成り立ったんでしょう。
それは、どちらも3次元空間を頭の中に持っているからです。
そして、3次元空間は「ある」とか「移動する」といった操作を持っています。
これも、お互い、共通に持ってる操作です。
つまり、3次元空間という共通の世界をお互いに持っていれば、会話が成立するんです。
自分の頭の中にある世界を言葉で説明して、相手の頭の中に同じ状態の世界ができれば、これが、意味を理解したといえるわけです。
これが会話なんです。
今、できる会話は、3次元世界の話だけですが、共有する世界を拡張することで、自然な会話ができるようになりそうです。
3次元空間以外の世界については、今後、説明していきます。
今日は、その前に、記憶について説明したいと思います。
人間の持つ記憶を、AIでどうやって実装するかについてです。
人間の記憶は、まず、短期記憶と長期記憶に分けられます。
短期記憶というのは、数秒~数十秒覚えている記憶です。
長期記憶というのは、何年も覚えているような記憶です。
意識は、仮想世界を認識してますよね。
この仮想世界は、次々に変化していきます。
認識してるのは、今、この瞬間の仮想世界だけです。
この今、認識できてる仮想世界が短期記憶というわけです。
せいぜい、数秒ぐらいの範囲となります。
記憶というより、今、意識が把握してる世界といったものです。
次は、長期記憶です。
長期記憶は、まずは、陳述記憶と非陳述記憶の2種類に分けられます。
陳述っていうのは、言葉にして説明できるって言うことです。
非陳述記憶っていうのは、言葉じゃなくて、体で覚えてるタイプの記憶です。
自転車の運転の仕方とかです。
これは、裏の自分がやってることでしたよね。
無意識での動作です。
つまり、非陳述記憶っていうのは、動きの学習ができるということです。
これは、仮想世界を持てない生物でも持てるタイプの記憶です。
次は、陳述記憶です。
陳述記憶は、二つに分けられて、一つは意味記憶、もう一つはエピソード記憶です。
たとえば、リンゴを考えてみます。
生きて、生活している間に、リンゴを何度も見たり食べたりしますよね。
何度も経験してるうちに、リンゴというものはこういうものだと、整理されていきます。
色は、赤や青があるとか。
形は丸で、大きさはこのぐらいで、重さはこのぐらいとか。
味は甘いとか、酸っぱいとか。
これらは、オブジェクト思考言語の属性にあたります。
オブジェクトの属性、これが意味記憶、そのものです。
そして、最後はエピソード記憶です。
これは、今日の最初に説明した、卒業式の思い出とかの思い出のことです。
昨日、こんなことがあったよとか、思い出せるタイプの記憶です。
これができるのは、仮想世界で認識した出来事を、そのまま再現できる仕組みが必要なんです。
それが、人間のみが持っている想像仮想世界です。
動物が持てるのは意味記憶までです。
だから、ご飯をくれたり、遊んでくれたりする人は、良い属性となるので、なついてくれるわけです。
いじめたりすると、悪い属性となって、吠えられたりして、嫌われるわけです。
悲しいですけど、あの時の旅行、楽しかったよねぇって思い出を、ペットの犬と語り合うことはできないんです。
でも、また、同じ場所に行くと、その場所に、楽しい属性が意味記憶されていれば、その犬は喜んでくれたりするんです。
意味記憶とエピソード記憶の違いって、こういうことなんです。
そして、このエピソード記憶がもてるようになって、人間は、また、とんでもないものを発明したのです。
それは、「時間」です。
えっ、時間?
時間って、発明するようなものじゃないでしょ。
だって、時間って、現実世界にあるじゃない。
そう、思いますよね。
そうじゃないんですよ。
じつは、時間は、現実世界に存在しないんですよ。
この時間については、次回、お話しますね。
それでは、次回もお楽しみに!