「タップル誕生」の両思い請負人は機械学習エンジニア

技術・デザイン

~機械学習エンジニアがマッチング成功率を1.6倍にするためのプロセス~

趣味でつながる恋活マッチングアプリ「タップル誕生」では、男女の出会いの質を改善させるために情報推薦技術を活用し、マッチング成功率を1.6倍にすることができました。これを成功させた立役者が秋葉原ラボの機械学習エンジニア・内藤遥です。今日は内藤にこのプロジェクトを成功させた秘訣について話を聞いてみました。

Profile

  •  内藤遥 (ナイトウ ヨウ) 
    2012年サイバーエージェントに新卒入社。秋葉原ラボにてレコメンド基盤・検索基盤の開発・運用に従事。「タップル誕生」のほか「Amebaブログ」や「Amebaマンガ」のレコメンド導入・運用も担当している。

1つでも多くの”良い出会い”を提供したい

――自己紹介をお願いします。
 

氏名

内藤

サイバーエージェントのメディア事業における研究開発組織「秋葉原ラボ」に所属しており、私はその中でレコメンド基盤の開発・運用に携わっています。

「秋葉原ラボ」で開発しているレコメンド基盤は2011年からスタートしており、「タップル誕生」をはじめ「ABEMA」「Amebaブログ」など様々なサービスに対して推薦機能を提供しています。その中で私は、マッチングアプリ「タップル誕生」における男女の「マッチング成功率向上プロジェクト」に注力していました。

「タップル誕生」では、男女がお互い気になる相手に"いいかも"を贈ることができ、相互に"いいかも"が贈られると「マッチング成立」とみなされ、メッセージのやり取りが可能になります。

この「マッチング成立」の割合である「マッチング成功率」は「タップル誕生」で非常に重要視しているKPIの1つです。売上や継続率など様々な指標と関連していることはもちろん、せっかく「タップル誕生」を始めてくれたユーザーに、1つでも多くの”良い出会い”を提供したいという思いを背負っています。

以前より豊富なドメイン知識を基にしたルールベースのアルゴリズムが存在し「マッチング成功率」を上げるべく運用していたのですが、秋葉原ラボの強みでもある機械学習の知識と、サイバーエージェントのメディア事業で培ったノウハウを活用したら、さらにユーザーのニーズに応えられる可能性を感じ、今回のプロジェクトがスタートしました。

双方向の嗜好を考慮した推薦が難しい理由

――このプロジェクトにおいて難しかった部分はどんなところですか?
 

氏名

内藤

難しかったのは、自分から相手への嗜好だけでなく、相手から自分への嗜好、つまり双方向の嗜好を考慮した推薦アルゴリズムを考える必要があることです。

極端な言い方かもしれませんが、複雑なことを考えなければ、その人にとって好みそうな人を推薦することは、そこまで難しい話ではありません。しかし、どれだけ"いいかも"を押しても「マッチング成功」しなければ、その"いいかも"は無駄になります。

「Amebaブログ」や「Amebaマンガ」など、これまでサイバーエージェントのメディアで活用してきた推薦アルゴリズムは基本的に一方向の嗜好のみを考えればよかったのですが、「タップル誕生」の場合、似たような手法を適用して自分が"いいかも"を押す回数が増えたとしても、相手も"いいかも"を押さないと「マッチング成立」に至らないのです。

「マッチング成功率」改善の難しさは2つありました。1つ目は「マッチング成立」のデータが教師データとして扱いづらかったことです。

機械学習のアプローチを検討する上で、まずはじめに 「マッチング成立」したか、しなかったかのラベルをつけてモデルを学習させることを検討しましたが、「マッチング成立」したデータは"いいかも"や"いまいち"に比べてかなり少なく、また「マッチング成立」したことがない、もしくはほとんどないユーザに対する推薦が困難なため、教師データとしてそのまま利用するのは難しいと考えました。

2つ目は、素直にアルゴリズムを設計しようとすると、一部の人気ユーザに"いいかも"が集中しすぎることです。こうなると、マッチングの機会損失が発生してしまい、全体の最適化を図るうえでカバレッジを考慮する工夫も必要になりました。

――結果的に「マッチング成功率」をあげた施策はどんなものだったのでしょうか?
 

氏名

内藤

そもそものルールベースから機械学習の手法への切り替えによるところもありますが、最終的に"いいかも"と"いまいち"のデータを使って男性から女性、女性から男性への嗜好のスコアをそれぞれ予測するモデルと、それぞれの嗜好のスコアを結合するコンポーネントの組み合わせでアルゴリズムを設計したことが「マッチング成功率」の大幅な上昇につながりました。

アルゴリズムの設計・開発に関しては同じ「秋葉原ラボ」のレコメンドチームのメンバーによる貢献が大きいです。シンプルさや拡張のしやすさを重視していて、予測のモデルやスコアを結合するコンポーネントはそれぞれ疎結合で入れ替え可能な作りになっているため、早いサイクルでPDCAを回すことができました。また相手からの嗜好情報も自分の推薦結果に反映されるため、全体として極端に推薦結果が偏ることがなくなり、カバレッジを担保することができています。

加えて、自分に贈られた"いいかも"リストの並び替えのような、一方向の嗜好のみを考慮した推薦も片方の予測モデルを利用するだけで可能であり、今後様々な応用先を検討しています。

――研究開発組織である「秋葉原ラボ」とサービス側の「タップル誕生」、共同でプロジェクトを進めるうえで役割分担はどのようにしていましたか?
 
氏名

内藤

「秋葉原ラボ」では持続可能なサービス連携を意識して取り組んでいます。豊富なドメイン知識を持つサービス側でしか分からないこともありますし、サービス側で調整したい細かいロジックというものがあるかと思います。そういったものを「秋葉原ラボ」で持ってしまうと、変更の度にコミュニケーションコストがかかってPDCAを回すペースが遅くなる懸念があったので、「秋葉原ラボ」ではサービス側から与えられた数千~数万単位の推薦候補をランク付けする機能にあえて限定することで、「マッチング成功率」を上げるための機械学習のロジック部分にのみ責任を持つようにしました。

これにより、サービス側は固有のビジネスロジックを多く含む推薦候補の生成やフィルタなどの処理、「秋葉原ラボ」は推薦アルゴリズムのチューニングにお互い注力でき、役割分担が明確になりました。

これからの目標はMLOpsを強化すること

――「レコメンド基盤」の紹介と、今後実現したいことを教えてください。
 

氏名

内藤

今回「タップル誕生」でも活用したレコメンド基盤は「ABEMA」「Amebaブログ」など様々なサービスに対して推薦機能を提供する基盤となっています。

レコメンド基盤ではサービスの多種多様な要望に向き合い、新規サービスの導入コストや運用コストの削減を実現するために、汎用性を考慮したフレームワーク化を進めています。これにより共通部分の処理を再利用できたり、モデル学習時や推論時の処理のパイプラインを設定で管理できるようになっています。

近年では種類の異なる様々なコンテンツをフィードとして一列に並べたいという要件が増えてきており、基盤としてどう吸収していくかということが求められているので、今年はこの課題に向き合いたいと思っています。

また、 MLOps についても強化をしていくつもりです。MLOps は継続的に機械学習モデルの学習とデプロイを行うための方法論とその基盤を表しており、「秋葉原ラボ」全体でも注力している分野になります。具体的にはモデルの管理方法やサービング周りの標準化を進めることで、開発者が本質的な改善作業に集中できる環境を整えていければと思っています。

「タップル誕生」については、アルゴリズムを継続的に改善していきたいです。直近では今年リリースされた趣味タグのデータやユーザのプロフィール画像のデータを活用して、よりリッチな推薦機能を提供していきたいと考えています。

この記事をシェア

オフィシャルブログを見る

インターンシップから内定まで全てオンライン完結!
進化した「UIDA」の全容を21年度卒クリエイター内定者に聞きました。

技術・デザイン

昨今の新型コロナウィルス感染拡大の影響で、今春に予定していたクリエイターインターンシップ「UI DESIGN ACADEMY」を初のフルリモートで開催しました。
今回、本インターンシップへ参加し、その後も全てオンラインでの選考を経て、当社へ入社を決めてくれた2021年度内定者に、オンラインインターンシップや就活での不安点など、リアルな部分をインタビューしました。

記事ランキング

Page Top