第372回 エンジニアが解説


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

僕がよく見てるYouTubeに「ゆる言語学ラジオ」ってのがあります。
言語学のバラエティー番組で、めちゃ面白いです。
言語学者も、よく登場します。
今回は、ゆる言語学ラジオでもおなじみの今井むつみ先生が書いたこの本
『言語の本質 言葉はどう生まれ、進化したか』の紹介です。
2023年5月25日に出版されたばかりの新作です。

この本、めちゃくちゃ面白かったんですよ。
最近出た本なので、ChatGPTにも触れています。
よく、ChatGPTは、大学に合格するぐらい頭がいいから、意味を理解してないわけがないって言われたりします。
でも、そういうのって、意味理解の本質を捉えてるとはいえないですよね。
だから、ChatGPTについて、言語学者はどう思ってるのか、ずっと意見を聞きたいと思ってました。
そしたら、さすが、今井先生、AIの意味理解についてもかなり考察をしています。

冒頭で、いきなり記号接地問題が出てきます。
シンボルグラウンディング問題のことです。
これなんか、僕もこのチャンネルで何度も取り上げましたし、最近だと、クラウドファンディング用に作った第344回の「次世代AIの提言」でも言及しています。

それから、この本では、サイク・プロジェクトにも触れていました。
サイク・プロジェクトは、1984年に始まったAIのプロジェクトです。
当時は、AIは、人間が当たり前にもってる知識をもってないから、ちゃんとした会話ができないんだって考えが主流でした。
それで、「フランスの首都はパリだ」とかって常識を次々に登録していったんです。
驚くのは、このプロジェクト、未だに続いてるんです。
数年前に100万件を超えたけど、まだ足りないから、1億件を目指すぞって言ってました。
正直、「いやぁ、人間の知能ってそういうことじゃないのに」って思って、僕も、第11回のYouTubeで取り上げました。
ただ、これ、今となっては、まんざら、間違いじゃなかったですよね。
だって、ChatGPTは、数千億のパラメータで自然な会話ができるようになりました。

まぁ、だからと言って、意味を理解してるわけじゃありません。
じゃぁ、意味理解の本質は何かってなりますよね。
そこで、今井先生が取り上げるのがヘレン・ケラーです。
いやぁ、ヘレン・ケラーといえば、このチャンネルの人気動画の一つです。
第63回~第67回まで取り上げましたし、つい最近も、第363回でヘレン・ケラーを取り上げたところです。
いやぁ、言語学者が、僕と全く同じ事例を取り上げてるんです。
そして、この本、最後に、ズバリ「言語の本質」を解明します。
赤ちゃんにできて、チンパンジーにできないことを実験で明らかにするんです。
その内容、僕も全く同感です。
ただ、一つ違うのは、僕は学者じゃなくて、エンジニアだということです。
エンジニアだと、何が違うかというと、エンジニアは仕組みが知りたくなるんですよ。
これが、今回のテーマです。
エンジニアが解明
言語の本質
それでは、始めましょう!

チンパンジーに言葉を覚えさせる実験って、昔から世界中で行われています。
日本では、京大のアイちゃんってのが有名です。

今井先生は、アイちゃんの動画を見て衝撃を受けたそうです。
アイちゃんは、異なる色の積み木に、それぞれ対応する記号を選ぶことができます。
たとえば、黄色の積み木なら△、赤の積み木なら◇を選ぶことができます。
それも完璧に覚えていて、時間が経っても忘れません。
まさに、記号を理解してるわけです。

今井先生が衝撃を受けたのはその後です。
今度は、アイちゃんに、今までとは逆に、記号から色を選ばせたんです。
△を示したら、黄色の積み木、◇を示したら赤の積み木を選ばせるわけです。
ところが、アイちゃんは、これが全くできなかったんです。
あれだけ完璧に覚えていたのに、記号から色って、逆方向になると、全くできないんです。
これって、いったいどういうことでしょう?

もしかしたら、ここに言語の本質があるのかもしれません。
そこで、これを赤ちゃんとチンパンジーで確かめてみることにしました。
アイちゃんの実験で確認したのは、色の記号の関係でした。
今井先生は、これを動きで実験することにしました。
実験の内容はこうです。

まず、犬とドラゴンのキャラクターの動画が登場します。
犬がボールに変身したかと思うと、ギザギザの動きをします。
ドラゴンがボールに変身したかと思うと、こんどは曲線的なにょろにょろした動きをします。
この動画を何度も見せて、赤ちゃんに覚えさせます。

どうやって覚えたかを確認するかというと、それは視線です。
誰でも、同じものを繰り返し見てると飽きてきて、あまり見なくなります。
逆に、珍しいものはじっと見つめます。
つまり、じっと見ると言うことは、初めてみるものと言えます。
逆に、ちらっとしか見ないものは、知ってるもの、学習したものといえるわけです。

こうして、学習したことを確認して、次は、この逆の動画を見せます。

つまり、まずボールが動いて、その後、ボールが動物に変身する動画です。
このとき、動物と動きの組み合わせが、さっきと逆になった場合、どう反応するかを見ます。

たとえば、ボールがギザギザに動くと、それは犬と思いますよね。
ところが、ドラゴンが現れると、「あれ?」っと思って、じっと見ます。
じっと見ると言うことは、動物と動きの組み合わせが逆になったことを理解してるってことです。
つまり、一方向の学習だけで、逆方向も理解できるってことです。

この実験、生後8か月の赤ちゃんは、予想通り、ちゃんと逆方向も学習していました。
さすが、人間の赤ちゃんです。

さて、同じ実験をチンパンジーにもやってみました。
そしたら、見つめる時間は、どっちも同じだったそうです。
つまり、組み合わせが逆になると理解できてないってことです。

赤ちゃんは、一方を学習しただけで、その逆も理解できるということは、一般化したとも言えます。
この一般化がチンパンジーはできないわけです。
どうも、この一般化に言語の本質があるのかもしれません。

でも、よく考えると、一般化って、必ずしも正しいわけじゃないんですよ。
つまり、AならばBが正しくても、BならばAが必ずしも正しいわけじゃないですよね。
たとえば「英雄色を好む」って言葉がありますけど、色を好む人は、必ずしも英雄じゃないですしね。
むしろ、色を好むだけの普通のオッサンの方が多いです。

逆方向の理解は、論理的に正しくないんです。
それを、同じだと推論できること、これこそが重要だって今井先生は言います。
この一般化の能力、これこそが言語の本質です。
これが、この本の主張です。

ただ、どういう仕組みでこうなるのかまではこの本には書かれていません。
人間にできて、チンパンジーにできないと言うことは、人間とチンパンジーじゃ、考える仕組みが違うんやと思うんです。
じゃぁ、その仕組みの違いって何か。
そういうとこが、エンジニアの僕は、気になって仕方ないんですよ。
皆さんは、気になりませんか?

さて、僕は、この話を聞いたとき、すぐにピンときました。
逆方向の処理ができないってことは、これって、シーケンス制御じゃないかって思ったんですよ。

シーケンス制御っていうのは、工場とか、エレベータとかに使われる制御システムです。
エレベータなら、希望の階のボタンを押せば、モーターが回転して、その階に到着するとモーターが停止しますよね。
このシステムは、スイッチとモーターとセンサーで作られています。
そしてシーケンス制御は、こんなラダー図で表現されます。

昔は、こんな制御は、リレースイッチとモータだけで回路が組まれていましたけど、最近は、複雑になってきたので、PLCとかシーケンサーとよばれる一種のコンピュータを使って制御回路が組まれます。

まぁ、なんでもコンピュータに置き換わるのは、どこも同じです。
昔は、タイプライターで文章を書いていたのが、ワープロが出てきて、今はパソコンで文章を書くようになってるのと同じです。
やってる内容とか、見た目は同じなんですけど、中身がコンピュータに置き換わったわけです。

さて、シーケンス制御は、エレベータから工場、自動販売機までありとあらゆるところで使われています。
自動販売機は、ボタンを押したら下からジュースが出てきますよね。
でも、下からジュースを押し込んでも、ボタンが押されるわけじゃないです。
当たり前です。

このラダー図でいえば、ボタンを押したらモータM1が回転します。
でも、モータM1を回転させてもボタンが押されるわけじゃないですよね。

犬がジグザグに動くからと言って、ジグザグに動いたら犬だと思わないのもこれと同じと考えたら理解できますよね。

今のシーケンス制御は、全てコンピュータ・プログラムで作られています。
どのスイッチを押したらどのモーターが回転するかをプログラムで作るわけです。
最終的な出力を実際のモーターにつなげてモーターを制御するわけです。

チンパンジーと人間の思考の違いは、きっと、プログラムの違いなんですよ。
チンパンジーのプログラムって、こんなラダー図で書かれてるから、一方にしか処理できないんですよ。

じゃぁ、人間の思考って、どんなプログラムで書かれてるんでしょう?

それは、オブジェクト指向プログラムです。
オブジェクト指向プログラムっていうのは、特定のプログラム言語を指すんじゃなくて、プログラムの種類の一つです。

特徴は、あらゆるものをオブジェクトというデータ構造で表現することです。
オブジェクトは属性を表すプロパティと、動きを表すメソッドを持ちます。
たとえば、自動車オブジェクトなら、車体の色を表す色プロパティを持っています。
それから、自動車の動きを制御するアクセルメソッドとか、ブレーキメソッドを持っています。
こうやってもの単位でプログラムをかけるようになると、プログラマーは、直観的にプログラムを書けるようになったんです。
直観的に書けるということは、人間の脳が、そもそも、オブジェクト指向で考えるようになってるともいえるんです。

そう考えたら、きれいに整理できますよね。
最初に犬とドラゴンの動画を見せられた時、人間の赤ちゃんは、頭の中で犬オブジェクト、ドラゴンオブジェクトを生成したわけです。
そして、犬オブジェクトの動きメソッドにはギザギザの動き。
ドラゴンオブジェクトにはにょろにょろって動きを設定したんです。

でも、チンパンジーのプログラムはシーケンス制御のラダー図です。
犬が入力されるとギザギザな動きの処理に進みます。
ドラゴンが入力されると、にょろにょろの動きの処理に進みます。
でも、ギザギザやにょろにょろを入力することはできません。
ラダー図は、処理の順番を記述する言語です。
というか、順番ありきの処理しか書けません。
だから、逆方向に処理させるには、逆方向の処理も書かないといけないんです。

一方、オブジェクト指向プログラムは、順番は必須じゃありません。
オブジェクト指向プログラムでまず決めないといけないのはオブジェクトというデータ構造です。
オブジェクトに、どんなプロパティやメソッドが関連してるかってことを最初に決めます。
決めるのは順番じゃなくて、関係です。

生物は、眼や耳ってセンサーと、手足ってモーターでできてると言えますよね。
それらを制御するのが脳です。
入力に対して、どう出力するかってシーケンス制御です。
だから、脳に最初に生まれたプログラムは、入力に対してどう出力するかを記述するラダー図で書かれてたんです。
それが、進化の過程でオブジェクト指向言語で書かれるようになったんだと思います。

この図を見て分かるように、脳の進化は、古い脳の上に新しい脳が覆いかぶさって進化してきました。
だから、古い脳もずっと持ってるんです。
だから、人間もかつてのプログラム、つまりラダー図で書かれたプログラムも動いてるんです。
歩いたり、走ったりするのは、ラダー図で書かれたプログラムで動いてるんです。
手と足をどのタイミングで動かすかって処理の順番を記述するのは、ラダー図がぴったりです。
それと同時に、人間の脳は、オブジェクト指向言語のプログラムも持っています。

赤ちゃんは、ものの名前などを教えてもらうことで、徐々にオブジェクト指向プログラムを使いこなせるようになるんでしょう。
これが、言葉を話せるようになるってことです。

でも、もし、目が見えず、耳が聴こえなかったらどうなるでしょう。
ものの名前って概念が理解できないんじゃないでしょうか?

これを実際に体験したのがヘレン・ケラーです。
ヘレン・ケラーは目も見えず、耳も聞こえず、言葉もしゃべれません。
そんなヘレンに言葉を教えたのがサリバン先生です。
サリバン先生は、ヘレンの左手に人形を渡すと、右手にさっとdollって綴りました。
左手にカップを渡すと、右手にcupと綴りました。
こうやって、ドールやカップって単語を教えたわけです。
頭のいいヘレンは、これをすぐに学習しました。
でも、それは左手にこう入力されたら、右手でこう出力するってプログラムです。
ラダー図で書かれたプログラムでした。

それが、ある日、井戸の水に触れたとき、それがwaterだと理解しました。
その時の理解は、今までのプログラムと違ったんです。
オブジェクト指向言語で水を理解したんです。
水オブジェクトというものがあると。
オブジェクトには名前プロパティがあって、そこにwaterって書かれてあるって。
そう理解したんです。

それが分かったととたん、とんでもないことがわかりました。
これって、水オブジェクトの話だけじゃないって、
人形やカップも同じだって。
今まで、サリバン先生が教えてくれてたのは、オブジェクトの名前だってことを理解したんです。

いや、人形やカップだけじゃない。
この世にある、あらゆるものには名前があるって理解したんです。
もっと言えば、ものがあるって形式で世界を認識したんです。
これがオブジェクト指向で認識する世界です。

今までのヘレンは、ラダー図のプログラムで生きてました。
入力があったら、それに応じた出力をするって世界観です。

それが、今、ヘレンは世界があるって認識しています。
これが、オブジェクト指向プログラムの世界認識の仕方です。

世界はものでできてるって世界観です。
そして、全ての物には名前があるってことを理解したんです。
ここから言語が始まります。
これが、言語の本質です。
エンジニアからみた言語の本質というわけです。

はい、今回の動画が面白かったらチャンネル登録、高評価お願いしますね。
それから、よかったらこちらの本も読んでください。
それじゃぁ、次回も、おっ楽しみに!