自然言語処理への提言3 「心のモデル」の良し悪しはどうやって判断するのか

自然言語処理への提言3 「心のモデル」の良し悪しはどうやって判断するのか

2018.03.21
このエントリーをはてなブックマークに追加

 

人と自然な会話ができるAIは、目標設定が高すぎる。
これが、自然言語処理が、この50年進歩していない原因です。
ここまでが、前回の話でした。
今回は、この続きです。

自然な会話ができるAIを直接の目標にすると、いろいろな問題が出てきます。
その一つは、話し相手の人間が何を話すかわからない点です。

人は、目に見える問題から解決しようとする特性があります。
この場合、会話が成立しない原因は、まず、相手の言う単語を知らないからと判断します。
すると、それを解決するために、登録される単語数を増やそうとします。
つまり、単語を登録するところに開発リソースが割かれるわけです。
この現象は、自然な会話となるように、シナリオとかセリフ回しといったことに開発リソースが割かれる前回の話と同じです。

目標設定を間違うと、正しいところにリソースが割かれず、いつまでたってもゴールにたどり着けません。
ここで、リソースを割くべきところとは、より良い「心のモデル」を作成するところです。

それでは、より良い「心のモデル」を作成したくなるようにするには、どうすればいいのでしょう?

先ほど説明したように、人は、目に見える明らかな問題から対処しようとする傾向があります。
そうすると、より良い「心のモデル」を作成したくなるようにするには、作成した「心のモデル」が明らかにおかしいとか、うまく機能しているとか、人が直接感じ取れる形にしないといけません。
それでは、どうすれば「心のモデル」を直接感じ取ることができるでしょうか?

人は、相手の言動から、その人の気持ち、心を想像することができます。
たとえば、おばあさんが駅で、重い荷物を持って階段を上がろうとしているのを見て、少年が「おばあちゃん、僕が持ってあげるよ」と声をかけたとします。
その光景を見れば、少年には、他人を思いやる心があるのだなぁと思いますよね。

もう少し詳しく解析してみましょう。
少年が、おばあちゃんを助けようと思ったのは、おばあちゃんが困っていたからです。
おばあちゃんが困っているのがわかるということは、少年の心は、他人の気持ちを想像する機能があるといえます。

また、他人の荷物を運ぶという、自分の得にならないことを敢えて行うということは、「困ってる人を助ける」という行為が、自分の得にならなくとも、社会的には善い行いだということをわかっているからです。
つまり、善や悪といった社会ルールについても理解しているいうわけです。

お腹が空いたり、嫌なことがあると泣き、眠たくなれば眠る赤ちゃんは、善悪といった社会ルールはまだ理解できません。
少年は、それとは違うということです。

このように、人は、他人の言動から、その人の心を想像することができるのです。

逆に言えば、少年の言動を見て、困っているおばあさんを助けようとしていると理解できるのは、その人の心も、他人の気持ちを想像したり、善悪を判断できる機能が備わっているといえます。

つまり、人は、自分の心にある機能を、他人も持っているかどうか判断できるのです。

 

僕が提案するのは、人間のこの特性を使おうというものです。
具体的には、AIに文を出力させます。
人は、出力された文を読んで、そのAIの「心のモデル」を想像するわけです。

誤解しないでほしいのは、AIと人間が会話するのでないということです。
AIに一方的に言葉をしゃべらせるだけです。
人間は、それを一方的に聞くだけです。

それでも、相手の心を想像できる人間の特性によって、AIが、どのレベルの心を備えているか判断できるのです。
喜んだり、怒ったりする感情はあるようだが、他人を思いやる機能はもっていないようだとか。

一方的でも構わないので、AIに話させることで、AIの心を、直接感じ取るのです。

直接感じ取ることさえできれば、このAIの心には、この機能が足りないから、その機能を追加しようとか、この機能はうまく働いていないから修正しようと、より良い「心のモデル」を作るところに開発のリソースが割かれるはずです。

これが、僕が提案する、「心のモデル」を開発するための最適な手法です。

次回は、「心のモデル」がどうやって言葉を出力するのかについて説明します。

 

このエントリーをはてなブックマークに追加
 

コメントを残す