第11回 自然言語処理AIって、常識を教えたら会話ができるって思ってない? 〜自然言語処理 あぁ、50年の勘違い


100万個の常識じゃ、まだ不足だからって、1億目指そうって、
そういうことじゃないんですよ。

そろそろ、気づきましょうよ!

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

今回のテーマは、自然言語処理の意味理解です。

意味理解

自然言語処理は、50年以上、これにずっと悩まされてきました。
そして、今でも解決していません。

でも、僕から言わせたらね、みんな、根本的な間違いを犯しているんですよ。

なぜ、それに気づかないのか、不思議で仕方ないですよ。

どんな間違いを犯しているか、それを説明するために、まずは、自然言語処理とは何かについて説明したいと思います。

自然言語っていうのは、こうして普通に人が喋ってる言葉、日本語とか、英語のことです。

自然言語処理っていうのは、この自然言語をコンピュータで扱うっていうコンピュータ科学の一つです。

コンピュータは、数字を扱うのは得意です。
足したり引いたり、簡単にできます。

でも、言葉はどうやって扱っていいかわかりません。
そこで、まずは、言葉の意味を、コンピュータで扱えるように定義していきます。

その一例が、意味ネットワークです。

こんな風に、単語同士を関係をもたせて定義していくわけです。

関係は、2種類あります。
一つは、is-aの関係です。

is-aの関係っていうのは、「犬は哺乳類です」といったときの犬と哺乳類の関係のようなものです。
哺乳類の一種が犬といった関係です。
動物の一種が哺乳類という関係です。

もう一つは、part-ofの関係です。
part-ofの関係っていうのは、全体と部分のことです。
「目」は「頭」の一部で、「頭」は「動物」の一部ですって関係です。

これって、言ってみれば知識です。
常識といってもいいです。
こういった人が当たり前に知ってる常識をコンピュータに教えようとしてるわけです。

常識を教えるって、ちょっと考えても分ると思いますけども、かなりの量がありそうですよね。
この手の研究で有名なのが、サイクプロジェクトです。
これが、サイクプロジェクトの知識の例です。

「ビル・クリントンは米国大統領の一員だ」とか
「すべての木は植物だ」とか。

さっき説明した、is-aとpart-ofの関係で知識を書いていますよね。

このサイクプロジェクト、1984年から始まって、今でも続いているんです。
実に、35年以上も続いてるんです。

スゴイですよねぇ。

すでに、100万以上の知識が溜め込まれてるそうですけども、まだまだ、これじゃ、全然足りないそうで、1億の知識を目指してるそうです。

でも、人手で知識を書き出すには、かなりの人手が必要ですし、それには膨大なお金が必要です。

そこで、効率よく常識を登録する方法を考えた、別の会社があります。
マインドピクセルって会社です。
ここは、インターネットを使って、世界中から誰でも知識を登録できるシステムを作ったんです。

でも、ボランティアでそんなことしてくれる人、そんなに多くないですよね。
そこで、この会社、知識を登録するごとに会社の株を渡すことにしたんです。
上手くいけば、将来、莫大な資産になるかもしれないので、世界中から常識が登録されているようです。
上手く考えたもんですよね。

さて、ここからが本題です。
こうして、世界中で、知識や常識をコンピュータに教えているわけです。
それも、30年以上前から。

さて、それでは、いつ、人間と同じ知識が得られるんでしょう?
30年かけて無理なら、40年かければできるんでしょうか?
100万で足りないなら、1億なら十分って、本当に言えるんでしょうか?

もしかして、なんか、根本的なことを勘違いしてませんかねぇ。

たしかに、常識があれば、会話ができそうです。
アメリカ大統領は誰ですかって質問とか、答えれそうです。

IBMの人工知能、ワトソンは、人気クイズ番組、ジョパディで優勝しました。
すごいことです。
知りたいことを聞けば、何でも教えてくれるAIです。

でも、それが、僕たちが欲しいAIでしょうか?
僕たちが欲しいのは、普段、友達や家族と会話してるような、日常会話や雑談ができるAIですよね。

「今の総理大臣は誰ですか?」
「安倍晋三です」

そんな会話しかできない友達、いります?
そんなの、グーグルで十分ですよね。

ここで、前回の話に戻ります。
将棋と会話の話です。

将棋は、1対1で行うゲームです。
交互に駒を進めるゲームです。

将棋AIも会話AIも、どちらも人とのコミュニケーションと言えます。

でも、将棋AIは人間と対等、いや、それ以上にゲームができますけど、人間と対等に会話ができるAIはまだありません。

将棋が上手くできて、会話が上手くできない理由、何だったか覚えていますか?
そう、ルールと目的です。

将棋はルールと目的がはっきりしてますけど、会話は、よくわからないですよね。
ルールと目的が明確だから、将棋AIを作ることができたってことでしたよね。

将棋のルールって、何でしょう?
それは、駒の動きです。
飛車はどう動いて、桂馬はどう動くとか。

将棋の目的って何でしょう?
それは、相手の王将を取ることです。

もう一度、自然言語の知識について考えてみましょう。
犬は哺乳類だとか、目は顔の一部だとか。
単語の意味を関係で定義していましたよね。

これって、将棋で言えば、駒の動きのことと言えそうです。
つまり、言葉のルールは知識と言えそうです。

会話をするには、もう一つ、目的が必要です。
会話の目的って何でしょう?
それが、まだ、わからないのです。

会話の中でも、質問だと、目的ははっきりしています。
「日本の総理大臣は誰ですか?」とか。
これなら、知識を使って答えることができます。

でも、「今日、遠足に行ったよ。遠足でお弁当を食べたよ」
って会話には、なんて答えればいいんでしょう?

「お弁当にはおにぎりが入っています」
「おにぎりには梅干しが入っています」
「梅干しには、種が入っています」

知識を使って、そんなことを延々としゃべっても会話にならないですよね。

将棋で言えば、ただただ、動かせる駒を動かせるとこに移動させるてるだけです。
ルール通りに駒を動かしただけじゃ、ゲームにはならないです。

つまり、知識や常識を、いくら集めても、自然な会話はできないんです。

100万個の常識じゃ、まだ不足だからって、1億目指そうって、
そういうことじゃないんですよ。

そろそろ、気づきましょうよ。

なんで、こんな簡単なこと、30年、40年かけても気づかないんでしょうねぇ。

それも、MITとかの、超優秀な大学教授が、何十年もこんなことやってるんですよ。

MITって知ってます?
まちゃちゅーちぇっちゅ工科大学のことですよ。

どこにあるか知ってます?
まちゃちゅーちぇっちゅちゅうですよ。

まぁ、それはいいですわ。

とにかく、日常会話や雑談をするには、知識をいくら集めてもダメなんです。
膨大な知識があっても、どの知識を使うかわからないと、何の意味もないんです。

どの知識を使うかってときに必要なのが、目的なんです。
次に、どの駒をどこに動かすかは、相手の王将を取るって目的があるから決めれるんです。

会話で必要なのは、知識や常識でなくて、目的なんですよ。
自然言語処理が、最も力を入れて解明すべきなのは、会話の目的なんですよ。

ただ、それは、すでに僕が見つけてしまったんですけどね。

次回は、いよいよ、会話の目的についてお話したいと思います。

では、次回も、お楽しみに!