自然言語処理への提言4 「心のモデル」と言葉の関係

自然言語処理への提言4 「心のモデル」と言葉の関係

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

人と自然な会話ができるシステムを作るには、人と同じ心のモデルを作るのが一番重要。
そのために、どちらが良い「心のモデル」か、判定できる方法がないといけない。
そこで、「心のモデル」を作ったら、そのモデルに基づいて言葉を出力し、それを人が読んで判断するという開発手法を提案しました。
ここまでが、前回の話です。

今回は、この手法の具体的な内容について説明します。
前回は、話を分かりやすくするために、思いやりのある少年の話を例にあげましたが、これは、かなり高度な心のモデルです。
最初に取り組むのは、もっと原始的な心のモデルになります。

言葉の意味をどう定義するか」で、「概念ツリー」と「Has-aツリー」の話をしました。
どちらも、心のモデルを構成するものです。

「概念ツリー」とは、単語の意味の概念関係をツリーで表現したモデルです。
たとえば、「建物」概念の下には、「病院」「学校」「家」といった建物の下位概念が属します。
「学校」概念は、「小学校」や「中学校」、「大学」「東京大学」などの単語を持ちます。
このように、概念ツリーは、下位なほど具体的であり、上位なほど、抽象度が高くなります。

「Has-aツリー」は、「AはBを持つ」という関係を表したものです。
たとえば、
「建物」は「ドア」、「窓」を持つ。
「学校」は、「先生」、「生徒」を持つ。
「病院」は、「医者」、「患者」、「看護師」を持つ。
といったデータモデルになっています。

「心のモデル」が、「概念ツリー」と「Has-aツリー」を持っていたとします。
そこから、このモデルに合致する単語をランダムに選び、文として出力させます。

たとえば、「建物は窓を持つ」といった風に。
特に、問題ないですよね。
こうやって、AIが出力する文を人間が判断していくわけです。

上位概念が持つものは、下位概念も持つので、
「学校は窓を持つ」
「小学校は窓を持つ」
といった文も出力されます。

「窓を持つ」でなく、「窓がある」の方が正しいんじゃないか?と思われるかもしれません。
でも、言いたいことはわかると思います。

言いたいことがわかる
これが重要なのです。
これが、僕が目指そうとしているAIなのです。
表現はぎこちなくても、意味が通じる文を生成できるAI

今までのAIは、流ちょうでなめらかな言葉を話しますが、意味が通じていないことがよくありました。
なぜかというと、予め、固定されたセリフを大量に用意していて、特定の単語がでてくると、このセリフで答えるといった単純なルールで動いていたからです。
セリフは固定された文で、文法的には問題ないですが、意味理解していないので、会話が成立していなかったのです。

僕が目指そうとするのは、単語から文を組み立てるので、出力される文は、稚拙な表現となっているかもしれませんが、少なくとも、何が言いたいか、意味が通じる文を生成します。
意味さえわかっていれば、あとは、表現の上手い下手の問題なので、ここは、学習によって、いずれ洗練された文を出力できるようになるでしょう。
機械学習の出番ですね。
大量の文書を学習し、意味を維持した上で、最も適切な表現を選ぶ。
ここがディープラーニングの使いどころです。
意味理解できない現段階の自然言語処理で、無理やりディープラーニングを使っても、価値のある結果は出てきません

「学校は、窓を持つ」より、「学校に窓がある」の方がふさわしい。
こういった修正は、いずれ、機械学習で行うとして、今は、多少ぎこちなくても、意味の通る文を生成する、これだけを目指します。

 

今回、例に挙げたモデルは、「概念ツリー」と「Has-aツリー」だけなので、単純な文しか生成できませんが、動詞モデルを追加することで、動きのある文が生成できます。
また、原因と結果のモデルを適用することで、時間の意味も理解できるようになります。

モデルを追加するごとに、そのモデルに合致する文をランダムに生成し、意味的におかしくないか判断し、おかしければモデルを修正するといったことを繰り返すことで、心のモデルが出来上がってくるのです。

これが、僕の提案する新しい自然言語処理の開発手法です。
そして、ロボマインド・プロジェクトが、今後、行う開発でもあります。

何らかの心のモデルができれば、実際に動く形でブログでも紹介していきたいと思いますので、ご期待ください。

 

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

“自然言語処理への提言4 「心のモデル」と言葉の関係” への2件のフィードバック

  1. 南沢 宏昭 より:

    これは凄い人が現れました。じっくり読ませていただきます。

コメントを残す