おバカAI仕様1 笑いをコンピュータで計算する

おバカAI仕様1 笑いをコンピュータで計算する

AIに笑いを・・・

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

今年のロボマインド・プロジェクトのテーマは、「AIに笑いを・・・」です。

さて、前回の「サンタさんてさぁ・・・ 僕が本当に作りたいAI」の記事を読んでない方は、まずは、前回の記事をお読みください。
前回のネタが、ロボマインド・プロジェクトが今後目指す「笑い」です。
これを読んで、どこが面白いのかわからないという人は、たぶん、これ以上読んでも何も得るものはないと思います。

それでは、いかにして「笑い」を生成するかについて説明します。

 

人は、話を聞くとき、話に出てくるキーワードから関連するキーワードを自動で抽出します。
これは、人間の脳のデータベースが、関連のある単語をまとめて管理していて、ある単語が意識に上ると、関連する語も自然と意識に上ってくるからです。

前回の、小学生の女の子が、サンタさんの話をしていたという話でいえば、「小学生」「女の子」「サンタ」というキーワードが出ています。

「サンタ」といえば、「クリスマス」、「プレゼント」などの言葉が連想されます。
また、「子供はサンタクロースを信じている」といった事柄も思い浮かびます。

そうして、聞き手は、こういった情報を元に、話の続きや、オチまで予測しようとします。

「ははぁん、小学生の子供がサンタさんの話をするってことは、サンタさんの正体に気付くってパターンかな?」とか、
「それとも、クリスマスプレゼントが、頼んでいたのと違ってたってパターンかな?」
などと想像するわけです。

話し手としては、聞き手がオチを予想してくることは想定しつつ、オチを悟られないように慎重に言葉を選ばないといけません。
聞き手に悟られないような意外なオチを用意する、これが笑いの難しいところです。

そんなことが、今のAI技術で可能でしょうか?

たとえば、「サンタさんて、もしかして、お父さんじゃない?」といった意味を理解するには、クリスマスの習慣、子供の持つ知識、現実とおとぎ話の違いなど、かなり高度な意味理解が必要です。

正直言って、ここまで理解するのは、今のAI、自然言語処理の技術ではほとんど不可能です。

それでは、どうするか。

実は、人間には難しくても、コンピュータなら簡単にできることがあるのです。
それは、「意外性」です。

人間は、あるキーワードを言われると、関連する言葉や事柄が自然と思い浮かびます。
しかし、全く関係のない言葉を思い浮かべることはできません。

「サンタ」と聞いて、全く関係のない言葉を挙げてみましょうと言われても、すぐには思いつけません。
「正月」と思いついたとしても、それは、「サンタ」→「クリスマス」→「正月」と連想しただけで、やっぱり関連のある言葉から連想しているだけです。

ところが、コンピュータだと、完全にランダムに言葉を取り出すことができます。
事典をパラパラパラとめくって、好きなとこで止めて目に付いた単語を取り出すみたいに。
これは、人間の頭ではできない芸当です。

 

話を始めて、いくつか単語が出てくると、聞き手は、話の続きを予想します。

「電車に乗っていて、『ねぇねぇ、サンタさんてさぁ・・・』と小学生の女の子が話してるのが聞こえてきてね、」

と話が始まれば、「『サンタ』ということは、クリスマスに関する話だから・・・」と、勝手に予想してくれます。

 

ここで、コンピュータでランダムに言葉を取り出し、今までの話に続ければいいのです。

 

「ねぇねぇ、サンタさんてさぁ、最近、シャンプー長くない?」

と続くと、

えっ?

シャンプー?

と、クリスマスとは何の関係もない話の展開となって、笑いが生じるのです。

 

こういったオチは、絶対に人間の頭では予測不可能なのです。
コンピュータでしか実現できない笑いなのです。

 

これが、ロボマインド・プロジェクトのおバカAIが目指す笑いの基本的な考えです。

 

ただ、オチは、どんな言葉でもいいというわけではありません。
最低限、文として成り立たないといけません。

この場合、主語が「サンタ」です。
「サンタ」は「人間」概念の下位概念なので、サンタの取り得る行動は、人間の取り得る行動となります。
そこで、人間の取り得る行動からランダムに選ぶのです。

人間の取り得る行動として、「歩く」「食べる」「寝る」「怒る」「休む」・・・といった単語があります。
この中からランダムに選ぶわけです。

それでは、ランダムに選びさえすれば、何でも面白くなるのか?

次回は、この点について検討します。

 

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

“おバカAI仕様1 笑いをコンピュータで計算する” への4件のフィードバック

  1. 西田 元彦 より:

    【この場合、主語が「サンタ」です。
    「サンタ」は「人間」概念の下位概念なので、サンタの取り得る行動は、人間のとり得る行動となります。
    そこで、人間のとり得る行動からランダムに選ぶのです。

    人間のとり得る行動として、「歩く」「食べる」「寝る」「怒る」「休む」・・・といった単語があります。
    この中からランダムに選ぶわけです。】

    私の出願で拒絶理由の中で、引用文になぞらえた請求項の否定に、「概念」を使った文章が有りました。最初は全否定されていましたので、
    「諦めなければ」と思いましたが、3度・4度と読み込んでいく内に「矛盾点に」気が付きました。
    上位概念から下位概念の説明は出来ますが、イコールではありませんから、逆の下位概念から上位概念の説明には「矛盾・無理」
    な説明になる事を思い出しました。
    今回の例題でいえば、「サンタ」はソリに乗って自由に空を飛びますが、人間には出来ません。
    今回は上位から下位へのお話(例題)ですので、お話に「矛盾・無理」はありません。

    次回を楽しみにしています。

    • 田方 篤志 田方 篤志 より:

      西田様
      応援、ありがとうございます。
      僕も、特許関係の仕事をしていましたが、特許は、本当に細かい点を突かないといけませんよね。

  2. hoge より:

    word2vecで関連が低い言葉を使用すればできるかも

    • 田方 篤志 田方 篤志 より:

      コメント、ありがとうございます。
      word2vecは、僕も検討してみましたが、人が意味理解するようなレベルの意味理解は難しいと思っています。
      コンピュータで処理するには扱いやすいデータですが、人間が、wod2vecのように言葉を扱っているわけではないですので。
      大量の文書のトピック分類などには向いていると思いますが、文脈の把握などは難しいと思っています。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です