運用例

ここまでWit.aiにおける自然言語認識の例をご覧いただきました。

すでに、皆さんもお気付きかと思いますが、このWit.aiだけでは私たちの知っている「チャット」での話はできません。

以下のような既存のメッセンジャープラットフォームに用意されているAPI(Applicatino Programing Interface)を使って、プログラミングすることでFacebookメッセンジャーやLINEメッセンジャーと接続して利用することができます。

各種メッセンジャーアプリとの接続

●Facebookメッセンジャーとの連携
Wit.aiで構築したインテントやエンティティの認識処理、またStoriesで登録したボットの応答などを、Facebookメッセンジャーからやりとりすることができます。Facebookメッセンジャーとのつなぎこみについては、プログラミングが必要となりますので以下に公開情報を掲載して割愛したいと思います。

参考:
https://developers.facebook.com/docs/messenger-platform
  
●LINEとの連携
LINE@の機能の1つに、Messenger APIというものがあります。ユーザーが開設したLINE@アカウントにChatbot機能を持たせるAPIです。プログラミングが必要となりますが、LINE@のチャットで話しかけられた内容をWit.aiへ渡して適切な応答文を返す、といった連携が可能となります。

参考:
https://business.line.me/ja/services/bot
  

予約発券システムとの接続

実際に予約システムとして完成させるためには、空席確認や発券処理を行うシステムとの結合が必要となります。

これまで、ユーザーの発言からWit.aiを用いてエンティティという形で発着地を特定するところまでみてきました。実現に向けて、特定した地名から想定される空港名まで特定したり、「明日」などといった表現から年月日を特定するなどの後処理も必要でしょう。さらに細かくは、「人数」、「往復か片道か」という情報もユーザーから得なければ空席確認ができません。また、ユーザーがわざわざ分かち書きの文を入力はしてはくれませんから、前述のmecabのような形態素解析ライブラリを用いて自動的に分かち書きの形にする前処理も必要となります。

このような様々な基礎技術と学習処理を組み合わせて初めて、人間が発した言葉からその目的に応じた処理を行うボットが完成するのです。
  

まとめ

Wit.aiという自然言語処理サービスを用いて、ユーザーの発言した日本語文からその意図や必要な単語を取り出す処理をみてきました。学習に用意した文章は10を下回る数でしたが、航空券予約に必要な発着地の希望を正しく取り出せることが確認できました。

このように学習を用いた自然言語処理は身近なものになってきました。Chatbotによるヘルプデスクなど企業での利用も進んできています。また、これらの技術を高度に応用したApple HomePod、Amazon Echo、Google Homeといった製品も出荷され家庭内での利用も始まりました。

今後、ヒューマンマシンインタフェースの1つとしてしっかりと定着してきそうな技術といえそうです。