読者です 読者をやめる 読者になる 読者になる

対話について

人工知能 自然言語処理

対話というのは一見簡単そうに見えますが、よーく考えてみるとかなり難しい話がボロボロ出てきます。ということで今回はその難しさ(とできれば面白さ)を見ていきたいと思います。

そもそも対話とは何なのか?僕の専門分野では「自然言語でコミュニケーションを行い、情報を授受すること(「自然言語処理シリーズ 対話システム」より)」とか言われています。そう聞くとなるほど、と思いますが、実はこれはちょっと落とし穴な気がします。例えば「自己との対話」なんて言葉がありますが、このように情報の授受というよりも言葉を使って思考したり、議論をする場合だって「対話」になるはずです。

もっと細かい話をすると、僕たちは色々と考えるときに言葉を使っている訳です。逆に言えば言葉を使った雑多な考えが頭の中にプカプカ浮かんでいる感じです。そしてこの考えの中には互いに矛盾した考えもあります。「今日はラーメンを食べたい」「いや今日はうどんにするべきだ」みたいに。そしてこれらの矛盾を見つけて、うまいこと平衡状態に持っていくこと(「ラーメンは太るし、これから痩せていきたいから 今日はうどんを食べよう!」)を弁証法と言います。これは僕が知っている限りでは論理学の立場からは全然うまく説明できない事象で、しかし人間が思考を洗練させていくためには非常に重要な方法です。

話を戻すと、対話のこの「情報を授受する」という定義はちょっと一面的というか、情報系の分野独特の考えではあるように思います(要するに対話とはメッセージを送信するだけではないのです)。しかし、あまり目くじらを立てても仕方ないのでとりあえずこれは受け入れて話を進めます。なぜなら僕が今回議論したいのは「対話とは何であるか」という哲学的な話ではなくて、「良い対話とは何であるか」という実学的な話だからです。

 

良い対話というのははっきり定義できる場合があります。例えばある目標(タスクと言います)があって、それを達成するために対話を行う場合です。このようなケースであれば「良い対話」の定義は超簡単です。なぜならタスクを達成できれば良い対話だし、失敗すれば悪い対話である、というだけの話だからです。もうちょっと深く考えたところで、より対話にかかる時間・コストが短ければなお良い対話であるとか、話がスムーズで分かりやすければ良い対話であるとか、その程度のもんです。基本的には簡単だと思います。

 

しかし、タスクがないとか、明確でないみたいな場合は話は難しくなります。最低条件として話が通じないと良い対話とは言えないでしょう。しかし、それ以上のことを言うとよくわからなくなってきます。楽しい会話がいいのか?悲しい会話だってたまにはいいと思います。空気を読んでくれるとうれしいけど、たまにははっきりと意見を言ってくれるのもためになります。それならばめちゃくちゃ高い教養のある対話がいいのでしょうか?一理あるとは思いますが、教養のない対話(おやじギャグとか)に価値がない訳でもなさそうです。

こうなってくると収拾がつかなくなるので、僕は基本的にはあまり好きではありません。なのでそろそろ話をまとめましょう。

 

結論1:

なるべく対話をするときにはタスクベースでやる方が良いのではと思います。なぜならこれによって良い・悪いの基準がはっきり理解できて、良い・悪いの基準がわかって初めて対話の質を向上させることができるからです。かなり意識高い感じですね。タスクという言い方があまりよくないかもしれませんが、そこはうまく飲み込んでください。

 

結論2:

さらに、タスクベースという話は、対話AIみたいな人工知能の設計・評価・改善につながってきます。なぜならタスクベースで「良い対話」の基準がはっきりしていないとプログラムが書けないからです。結局今のレベルのAIなんて最終的なよし・あしを人間がはっきり教えないといけない、みたいな文句にも繋がるかもしれませんし、対話AIの話に限って言えばこれはちょっと痛い指摘かもしれません。やっぱり理想としてはAI自身がよし・あしの基準を考えるようになって欲しいからです。これはまだまだ先の話だと思いますが。

広告を非表示にする