F8 2017 Keynote Day2
facebookが2017年4月中旬に開催した開発者カンファレンス”F8 2017 Keynote Day”では、カメラエフェクトプラットフォームやVRなど、最新の技術が披露された。
今回はその中で取り上げられた、facebookの自然言語理解について簡単に解説したいと思う。
facebookのおすすめ機能がすごい
興味ある情報を勝手に提示してくれるfacebookのおすすめ機能。知り合いを表示してくれたり、興味あるイベントの情報を教えてくれたり、どうやって知るのかと聞きたくなるほど的確な情報を提供してくれる。 メッセンジャーのデジタルパーソナルアシスタント「M」では、会話を通じて様々なアドバイスを教えてくれる拡張機能も発表された。
例えば、友達と夕食に何をテイクアウトしようというチャットをしていると、「M」が注文しましょうかと提案してくれて、グループでの注文から支払いまで、全てをやってくれる。 その他にもレストランから美容室まで、facebookは私たちが欲しい情報を的確に提示してくれる。
トピックモデル
大量のコンテンツの意味を理解するために重要なのが、確率を使ったトピックモデルによる、トピックの分類である。 文書に含まれる単語の出現回数を数え、それらの出現確率を推定することで、文書のトピックを推定している。
上 トピック推定のイメージ 上 分類のイメージ(スライドより)
大量のデータ
このように文書の内容を人間レベルで理解するには大量のデータが必要だ。 さらにユーザーの位置情報、ユーザーの友達情報などをもとにして、ユーザーにぴったりな情報を抽出している。 提示したものが良い推定だったかどうかレビューすることで、さらに確率の高い推定が行えるようになり、機械学習が行われている。
おまけ 言語を理解する〜音声編〜
トピックモデルを利用した言語理解は、機械学習のどの場面でも利用されている。
siriやgoogle assistantでおなじみの音声言語の理解においては、大量の音声データを使って統計的処理が行われている。波形をもとに音声を音素(ひらがなやアルファベット、発音機能など)に変換し、最もありそうな文章が推定される。
まとめ
facebookはこのようにトピックモデルを使って大量のテキストデータにふるいをかけている。大量のデータと大量のユーザーとを適切に結びつける手段を今後も磨き続けていく必要がある。