• Connehito株式会社
  • CTO
  • 島田 達朗

スパム投稿を「機械学習」で判別し、チェック件数を全体の1%に!Q&Aアプリの運営改革

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

〜スパムコンテンツと戦え!「機械学習」でスパム投稿を見分けることで、チェック件数を全投稿の1%以下にした事例〜

SNSに代表されるようなWeb上のコミュニティを運営する上では、ユーザーと一緒にサービスを作っていくことが重要になる。しかしコミュニティが拡大していくと、ときにはスパム投稿のような好ましくないコンテンツにより、サービスの健全さやコンセプトが失われてしまうこともある。

家族の毎日の疑問と悩みを解決するママ専用Q&Aアプリ「ママリQ」を運営をする、コネヒト株式会社。

▼2016年に出産されたママさんの6人に1人が利用するという「ママリQ」

同社では以前、スパムや誹謗中傷のような不適切な投稿を「目視」によってチェックしていた。そこに「機械学習(※)」を用いたアルゴリズムを適用することで、自動でそのような投稿を精査する仕組みを開発した。結果的に、人が目視で確認する作業を、大幅に削減できたという。

※人間が行っている判別を、コンピュータによって実現しようとする技術のこと。

今回は同社でCTOを務める島田 達朗さんへ、当時の同社が抱えていた課題から、機械学習についての考え方まで、詳しくお話を伺った。

急成長するコミュニティには健全な運営が課題に

私はコネヒトで、CTOをしています。今は採用やイベントでの登壇といった仕事から、システムのセキュリティ管理、インフラ関連の仕事も兼任しています。そして今は特に、機械学習を活用した「コミュニティの健全化」に注力しています。

私はもともと学生のときに、インターンとしてSansan株式会社でEight(エイト)という名刺管理サービスの立ち上げを行っていました。その後大学院へ進学して、弊社代表の大湯(おおゆ)と出会い、修士1年のときにコネヒトを起業しました。

弊社は、今年で6期目を迎えました。今では2016年に出産されたママさんの6人に1人に、「ママリQ」を使ってもらえるようになりました。今ではユーザーさんが質問をすると、平均して2分ほどで回答がもらえるようなコミュニティに育てることができました。

しかし、毎月の投稿数が平均約80万件を越えたあたりから、問題が起こるようになりました。誹謗中傷や、スパムのような投稿が増えてしまっていたのです。このような悪意のある投稿は、コミュニティにとっては脅威となります。

弊社のユーザーは、「妊娠」「出産」「子育て」といった重要なライフステージにいるママさんが中心です。ときにセンシティブな質問をしているユーザーにとって、悪意のある投稿があっては、安心して利用ができなくなってしまいます。

弊社サービスの持つ、「あたたかみのあるコミュニティ」をどう実現していくかが課題でした。

目視では、膨大な投稿のチェックが困難に…

望ましくない投稿は数多くあります。具体的なケースとしては悪意を持った業者による投稿がそれにあたります。大量にユーザーアカウントを作成して、好ましくないサービスへの勧誘を行う人たちのことです。

最初は、まだ規模が小さかったこともあり、投稿がスパムかどうかは人の目でチェックしていました。しかし、ユーザー数や投稿数が増えていくにつれて、チェックの件数は1日数千件に上り、目視では難しくなってしまいました。

そこで私は、自動でスパム投稿を判断する仕組みづくりに取り掛かることにしました。

ユーザーの声を学習!機械学習を使ったスパム判定

ただ当時は、そういった取り組みは社内でも優先度が低く、後回しにされていました。費用に対しての効果が見えにくく、どれだけリソースを投資するべきかの判断がつかなかったからですね。

ですので、最初は私の余暇の時間を使ってスタートしました。私自身は学生のときにデータ解析を専攻しており、実社会のデータを使った研究活動に興味がありましたので、あまり苦にならず取り組むことができました。

私ひとりで設計からプログラミングまで行い、試行錯誤しながら試作をしていました。何度か試していき、軌道に乗り始めたところで社内でも実践していくようになりました。

▼機械学習と目視での投稿内容の確認を組み合わせた運用フロー

この仕組みには、「機械学習」という技術を用いています。機械学習とは、人間が自然に行っている学習能力と同じような機能をコンピュータで実現しようとする技術のことです。

わかりやすく言うと、今回の場合、スパム投稿によく使われる単語や頻度などから「スパム投稿の法則性」を見い出します。その法則性に則って、新しい投稿をスパムかどうか、振り分けるアルゴリズムを作っています。

▼形態素解析の結果

例えばビジネスへ勧誘するスパム投稿として以下のような投稿があります。

「はじめまして、私は今妊娠中ですが家からの仕事で旦那より稼いでます。一緒に仕事をするビジネスパートナーを募集中です。もし興味があれば連絡先を交換しませんか?」

このような質問を「スパムである」と判別する際に、人は「稼ぐ」「連絡先」「交換する」「ビジネスパートナー」といった要素から怪しいと判別すると思うのですが、機械にも同様の判別をさせます。この場合はそれらの単語が同じ質問内に含まれていた際にスパムである確率が高いという判別をさせるわけですね。

ユーザーとカスタマーサポートと連携した機械学習の「教師」づくり

特に苦労したポイントは、法則性を導くための「もと」になる投稿のデータ分析です。

スマートフォンで投稿される、絵文字・顔文字が用いられた短い文章から意味を正しく認識するのは簡単ではありません。例えばあるユーザーへ副業を勧めるような回答があった場合、それが本当に善意からアドバイスをしているのか、それとも怪しげなビジネスへの勧誘なのかという違いを、テキストだけで判断することは難しいです。

ですので、投稿をスパムだと判断する基準を作るために、社内のカスタマーサポートのメンバーと日々ディスカッションを繰り返したり、ユーザーさんの実際の意見を聞いていきました。

実際に日々運用をしていく中でも、他の社員からフィードバックを受けながら、システムを改善しています。コミュニケーションには流行もあるので、そういった要素も加味しています。今では絵文字や顔文字もスパムかどうかの判定の要素として利用しています。

ママリQが持つ、「あたたかみのあるコミュニティ」を維持し、より良くしていくために、システムをさらに改善していきたいですね。

「人」と「機械」、それぞれの精度をあげる組織作り

この取り組みには、ユーザーからスパム投稿だと報告された数や、目視が必要な投稿数を指標にしています。

取り組みをはじめて、今は8ヶ月ほどになります。人の目を通してスパムかどうかを確認する件数は1日あたり数百件程度となりました。社員からも、「すごく助かった」と感謝されるようになりましたね。

▼実社会での研究を論文として発表する

ただ私自身は、すべてを機械が判断することが正しいとは思っていません。やはり人ならではの定性的な解釈は、機械で完全には実現できません。

ですので今は、スパムと判定する基準については、日々社員と話し合いながら改善をし、最後は必ず人の目でもチェックをしています。

他のメンバーからの、フィードバックの質も大切だと思っています。弊社では、良いコンテンツを作るため、新しく入社した社員は必ずユーザーの声を聴くインタビューや、ランチの機会を持つようにしています。ユーザー視点で日々プロダクトに接することで、社員の議論もより質が高く、建設的になると考えています。

▼カスタマーサポートやエンジニアなど業種によらず、協業して仕事をする

こういった機械学習のような技術を、実プロダクトに活かした事例を論文として発表している例は、国内ではまだまだ多くはないと思っています。

今後も技術を用いて、さらにもう一段階ユーザー体験を向上させるようなサービスづくりに貢献していきたいですね。(了)

SELECKからの特典

SELECKでは、これまで400社の「ベストプラクティス」を取り上げてきました。

そこで今回、2017年にあなたの働き方がワンランク上がるようなツールをまとめた、2017年版「生産性向上ツール」厳選ガイドを作成しました。

ぜひダウンロードして、2017年の業務に活用してください!

2017年版「生産性向上ツール」厳選ガイドのダウンロードはこちら

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