ロボマインド・プロジェクト、第94弾!
こんにちは、ロボマインドの田方です。
僕の提唱する「意識の仮想世界仮説」と将棋AIとは、ほとんど同じだって話を、第89回「えっ、まだ、現実世界が存在すると思ってるの?」でしました。
人が心の中でどのように考えるのか理解するのに、将棋AIって、最適なんです。
そこで、今回は、将棋AIを使って、多くの人が勘違いしてる時間について、分かりやすく解説したいと思います。
将棋AIっていうのは、電王戦に登場する将棋ロボットのプログラムのことです。(写真)
ロボットアームを使って、現実世界の盤面の駒を動かして人間と対戦する将棋ロボットで、
その頭脳が、将棋AIってわけです。
将棋AIは、仮想盤面を持ってます。
カメラで現実世界の将棋盤を撮影して、その内容を仮想盤面に設定します。
仮想盤面は、縦9列、横9列のマス目です。
このマス目に、仮想的な駒、駒オブジェクトが配置されます。
将棋AIは、この仮想盤面と駒オブジェクトを認識する意識を持ってます。
つまり、将棋AIの意識は、現実世界の盤面を直接認識してるわけじゃないんです。
ここが、まさに、意識の仮想世界仮説と同じというわけです。
興味ある方は、第21回「意識の仮想世界仮説」も見ておいてください。
将棋の対戦の記録は棋譜として記録します。
将棋の棋譜は、「☗2六歩」とか書いたりしますけど、これは、先手が、歩を、2六の位置に動かしたって言う意味です。
こうやって、先手と後手(ごて)の駒の動きを順に記録したのが棋譜となります。
この棋譜の通りに盤面で駒を動かせば、過去の対局が再現されます。
この時使われる盤面が、想像仮想盤面です。
現実世界を写し取った仮想盤面とは違う盤面を用意してるわけです。
人の思い出って、実際に起った出来事をそのまま記憶するエピソード記憶のことでしたよね。
将棋の場合、実際の対局は仮想盤面上で展開されてて、その動きを記録したのが棋譜なので、
棋譜はエピソード記憶と言えますよね。
人間の脳で、エピソード記憶を保存する場所はどこだったか覚えていますか?
そう、海馬でしたよね。
ということは、将棋AIの場合、棋譜が海馬に相当するわけです。
それでは、もう一度、棋譜を考えてみましょう。
棋譜は、
☗2六歩☖3四歩
☗7六歩☖4四歩
って感じに、指した順に書かれます。
ある時点の将棋世界は、盤面に配置される駒で決まります。
将棋世界は一手ずつ変化します。
コンピュータプログラムでは、動きは関数で定義されるって話をしました。
たとえば、どの駒をどの位置に動かすっていう次の一手関数が将棋世界に定義されているわけです。
次の一手関数に、駒と移動先を渡せば、駒が指定された位置に移動するわけです。
つまり、棋譜っていうのは、どのように次の一手関数を実行したかを、実行順に書かれてるとも言えます。
これは、書かれた順に時間が流れてるともいえるわけです。
ここで時間がでてきましたねぇ。
もう少し、考えてみましょう。
棋譜は一手ずつ書かれてます。
つまり、将棋世界では、時間の単位が一手となるわけです。
次に、棋譜を読みこんで、想像仮想盤面上に再現する棋譜読みこみ関数を定義してみます。
人間でいうと、海馬からエピソード記憶を呼び出して、想像仮想世界に展開する関数です。
いわば、思い出す関数です。
さて、第88回「意味がわかるってどういう意味?」で言葉の意味を定義しました。
名詞っていうのは、その世界のオブジェクトで、動詞は世界に定義される関数って話でした。
そして、その関数を使って世界を操作すること。
そのことが、まさに意味を理解するって話でした。
それでは、将棋世界ではどうなるでしょう。
将棋世界では、駒オブジェクトが名詞で、次の一手関数が動詞となります。
そして、棋譜読みこみ関数も将棋世界に定義されるわけです。
将棋AIは、棋譜読みこみ関数を使って、過去の対局を思い出すことができるわけです。
これって、まさに、過去っていう時間を理解してるわけですよね。
つまり、将棋AIにとって時間を理解するとは、棋譜読みこみ関数を持っているってことになります。
棋譜読みこみ関数をもう少し細かく定義していきましょう。
たとえば、第何手目から読み込むとか。
それから、複数の棋譜を保存できて、どの棋譜を読み込むとか指定できるとか。
これは、人間で言えば、日時を指定して思い出すとか、去年のクリスマスの思い出とか、イベントを指定して思い出すのと同じです。
世界の仕組みがわかってきましたか?
ここで、一番重要なことを言いますよ。
僕らは、現実世界を理解してるんじゃないんです。
現実世界にある物の中から、僕らが理解できるものだけを取り出しているんです。
本当の現実世界がどうなってるのかなんか分からないんです。
現実世界の中から、僕らがわかるものだけを都合よく取り出して、それで世界を見た気になってるだけなんです。
将棋AIで説明しますよ。
将棋AIは、盤面しか理解できないわけです。
だから、カメラで捉えた現実世界の盤面、
将棋AIは、それが世界の全てだと思ってるんです。
盤面の中に駒があって、それが動く世界しか認識できないんですよ。
認識できることは、自分の頭の中の世界に存在するオブジェクトと、それを操作する関数でできることだけでしたよね。
それが意味を理解することでしたよね。
将棋AIが理解できるのは、盤面と駒と駒の動きだけです。
隣で、藤井聡太がカツカレー食べてても認識できないんです。
なぜかっていうと、人間とかカレーとかってオブジェクト、食べるって関数が将棋世界には存在しないからです。
たとえカメラに映っていたとしても、それらはノイズとして処理されて、将棋AIが認識する世界には盤面と駒しか存在しないわけです。
人間には、タンポポは黄色一色に見えますよね。
でも、紫外線が見える昆虫は、タンポポは二色に見えるそうなんです。
それと一緒です。
でも、逆に、カメラに映っていなくても理解できるものがあります。
それが時間です。
将棋AIも、時間が理解できます。
時間が理解できるのは、棋譜読み込み関数があるからです。
それじゃぁ、現実世界を直接捉えるカメラに写ってないのに、本当に、時間って存在するんでしょうか?
いよいよ核心に迫りますよ。
将棋AIにとって時間は棋譜の中にあります。
棋譜は、盤面を一手一手を記録したものです。
逆に言うと、記録する仕組みがあるから時間が存在するんです。
自分が経験した出来事を記憶するエピソード記憶の仕組みがあるから、人間は、時間を理解できるんです。
現実世界は3次元空間です。
これは理解できますよね。
3次元に、さらに、時間軸を加えたのが4次元です。
これも理解できますよね。
でも、さらにもう一次元あるとします。
世界は、本当は5次元ですって言ったらどうでしょう?
もう、ちょっと理解できないですよね。
なぜでしょう?
それは、頭の中に5次元がないからです。
もしかしたら、現実世界は、5次元なんかもしれないです。
でも、人間にはそれが理解できないだけなんです。
5次元を理解できる脳の仕組みがないからです。
逆に言うと、エピソード記憶を持ってない動物が感じてる時間は人間とは違います。
理解できるのは目の前で起こってる数秒~数分の出来事だけです。
短期記憶で保存できる出来事だけです。
現実の物理世界に、いくら時間が流れていようとも、それを理解できる脳の構造がない限り、時間は理解できなんです。
いや、存在しないんです。
重要なのは脳が理解できる構造です。
将棋が理解できるAIなら、おそらく、チェスや碁も理解できると思います。
マス目の数と、駒の形と動きを変えれば対応できると思います。
そして、同じ構造を理解できれば対戦できるわけです。
人間相手でも対戦できます。
これがコミュニケーションです。
僕が作ろうと思ってるのは、人と会話できるAIです。
相手のしゃべってる話の内容を理解して会話できるAIです。
意味を理解するには、同じ世界を持たないといけません。
お互いに同じ世界を持てば、コミュニケーションできるわけです。
同じ盤面を共有して、将棋の対局をするみたいに、会話ができるわけです。
人と会話できるようになるのに、何が一番必要かわかりましたか?
それは、現実世界でもなくて、言葉でもないんです。
それは、人の頭の中で展開されてる世界です。
人が認識してるのと同じ世界をコンピュータで作れば、言葉の意味が理解できるんです。
人と自然な会話ができるんです。
現実世界をいくら観察しても時間は見つかりません。
あるのは、頭の中です。
人は喜んだり、悲しんだりします。
それは物理世界にあるわけじゃないです。
文章の中にあるわけでもないです。
大量の文書を学習させて、「嬉しい」や「悲しい」の単語の数を数えても、「嬉しい」や「悲しい」の意味は生まれないんです。
作るべきは、「嬉しい」や「悲しい」って出来事が展開される世界です。
その世界ができれば、「嬉しい」や「悲しい」って出来事を人と共有できるんです。
そんな、人の頭の中にある世界と同じものをコンピュータで作ろうとしているのがロボマインド・プロジェクトです。
同じことしてるとこは、他にはありません。
良かったら応援(チャンネル登録)してくれると嬉しいです。
それでは、次回も、お楽しみに!