【api.ai】自然対話の分類(アノテーション) = Intentsデータを作ってみた。




Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someone

前回、api.aiで日本語でも機械学習させるやり方にについて書きましたが、あれからしばらく、1対1での対話や複数人でのグループトークで、api.aiをベースにしたボット開発を続けていました。

一般的なチャットボットサービスは、1対1での対話の中で、ある特定の分野に関してはさまざまなDBと連携してそれなりに面白い情報が得られます。ただ、その分野を外れた瞬間にその応答精度がガクンと落ちるので、分野特化型のAIというが現状のレベル感で市場としても考えられているかと。

また複数人によるグループトークの場合は、誰かからの投稿に常に何かの情報を付加する、というのはあまり現実的には望まれておらず、情報を必要としているかどうか?のフラグの設定と情報提供方法に併せて、それ以外は会話が進むようなファシリテーション的役割をしてくれるのが好ましい。

という事で、色んな用途によって自然対話の応答ポイントは変わってくるのですが、ただ相槌をうたせるにしても投稿内容がどういった意味を持つものなのか?を意味づけする「アノテーション」が必要になります。

まぁapi.aiにおけるIntentsを、「ルールベースを設定する」という観点で見ればただのルール付になるわけですが、Entitiesと併せて「アノテーションする」という観点で考えると、その後の返答ルールも少し違って見えてくるのではないかと。いう気がしてます。

api.aiはエージェント(ボット)の言語をEnglishにすればトレーニングによる機械学習が可能なので、幾つかのボットを通してIntentsをアノテーションしてみてできた分類がこちら。

うーん。まぁ現状はこんな感じと言うくらいで、もう少し整理しても良いかなとは思ってますが、それなりに数はありつつ実際にトレーニングさせるとそれなりに応答できるようになったかな、と思ってます。

AIとしては、返答文も関連性のある単語群を抽出して文章として生成して返す、というが本来なんでしょうが、先ほど言った「現状のレベル感」からすると、専門分野はしっかり応答ルールを設計して情報提供しつつ、それ以外はこの分類のなかで「適当に受け流す」のがよいのではないかと。

受け流すやり方も、ギャル的な軽さで見せたり、天然ボケを装ってみたり、聞いてないふりしたりとか、そういうものの方がキャラクター性もあって対話度が上がると思います。「すみません、そそれについては分かりません」みたいな返事をされると萎えるし距離感がでますしね。

という事で、最近はノリノリロリとツンドラリケジョのキャラボットを作って受け流し続けてます。

それで、せっかくなので上記Intentsを設定したapi.aiエージェントのデータをエクスポートしましたので、ダウンロードできるようにしておきました。この下に行くとダウンロードURLを記載したメールが届くふぉーむがありますので、ご自由にお使いください。

ちなみに、応答のお試し用としてtwitterアカウントも用意しております。

ムカつく。対して返答パターン作ってないので、基本クソですがお試しください。m( _ _ )m

という事で、api.ai用データはこちらからどうぞ。↓

Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someone