Upgrade to Pro — share decks privately, control downloads, hide ads and more …

レコメンデーション導入の準備でホーム画面を整えたら、予想以上に大きなビジネスインパクトが出た話 / Mercari US Buyer UX Improvement 1

レコメンデーション導入の準備でホーム画面を整えたら、予想以上に大きなビジネスインパクトが出た話 / Mercari US Buyer UX Improvement 1

Machine Learning Pitch「今期の私は凄かったぞ!!!」 @ 2021/3/31
メルカリUSでのHome画面改善の取り組みと、それによるビジネスインパクトの話をしました。

https://machine-learning-pitch.connpass.com/event/199555/

Lain Matsuoka

April 01, 2021
Tweet

More Decks by Lain Matsuoka

Other Decks in Technology

Transcript

  1. レコメンデーション導入の準備でホー
    ム画面を整えたら、予想以上に大きな
    ビジネスインパクトが出た話
    株式会社メルカリ
    メルカリUS東京支部 機械学習エンジニア
    松岡玲音

    View Slide

  2. スピーカー紹介
    ● メルカリがファーストキャリア
    ○ MITのPh.D.課程を中退
    ● メルカリでのキャリア
    ○ 日本版メルカリで1年間
    ○ US版メルカリで1年3ヶ月
    ● フロントエンド以外は今のところなんでも
    ● 日本ソムリエ協会認定ワインエキスパート
    ○ 今は国際資格取得に向けて勉強中

    View Slide

  3. ECにおける商品閲覧と商品検索

    View Slide

  4. 商品検索
    ● ECの基本、「検索」
    ● ユーザーは、欲しいものを既に大体把握
    している
    ● クエリの意図を読み取って、関連度の高
    い結果が返せることが重要

    View Slide

  5. 商品閲覧
    ● いわゆる「おすすめ」や「関連商品」
    ● ユーザーは、欲しいものを把握していない
    ことが多い
    ● レコメンドエンジンが特に本領を発揮する
    部分
    ● 検索と相補的に働き、ECでの購買行動を
    促す

    View Slide

  6. 商品検索
    商品閲覧
    メルカリでは、商品閲覧にとても大き
    な改善余地がある!!
    良いレコメンドエンジンを開発して、
    商品閲覧のUXを改善しよう!
    メルカリにおける商品閲覧と商品検索のバランス

    View Slide

  7. どこから始めるか?🤔
    Home For You Similar Items

    View Slide

  8. Home
    ● アプリのランディングページなので、上手く
    改善できれば一番大きな効果が見込めそ

    ● 日本版メルカリでも、過去にHomeの改善
    施策で大きくGMV(流通総額)が伸びた実
    例がある
    ● 2年以上前からほとんど更新されておら
    ず、改善の余地に溢れている(?)
    Homeから始めよう!🔥

    View Slide

  9. Homeの闇その1: レガシー化した実装
    ● ステークホルダーが多く、様々な機能が継ぎ足
    されていった
    ● USの成長期において実装されたので、コード
    のクオリティを省みる余裕がなかった?
    ○ 外部データに依存したテスト、直列なリク
    エスト、副作用の多用。。。
    ● メモリーリークの温床になっており、レイテンシ
    も目も当てられない状態に😇
    ● そして、全容を知る人は一人もUSに残っていな
    かった😱

    View Slide

  10. Homeの闇その2: 形骸化したコンポーネント群
    ● Homeは、15種類以上(!)の複数のコン
    ポーネントからなる
    ● それらのうちの多くは、正しく効果検証され
    ないまま導入されていた
    ● 再度分析してみると、下記以外はほとんど
    活用されていないことが判明😇
    ○ Recently Viewed
    ○ My Likes
    ○ Personalized Search

    View Slide

  11. ● 高レイテンシ
    ● 魔境と化した実装
    ● 放置されたコンポーネントたち
    ● ほとんど活用されていないHome
    まずは一旦整えないと、
    レコメンデーションどころじゃない。。。😇 😇
    😇
    Home

    View Slide

  12. 準備その1: 負債の解消
    ● モノリスの大規模リファクタリング
    ○ ソフトウェア考古学
    ○ レイテンシを半分以下に
    ● Personalized Searchコンポーネントを切り出して
    マイクロサービス化
    ○ Home上の最大の魔窟を整理
    ○ レコメンデーションを導入しやすい形に

    View Slide

  13. 準備その2: 不要なコンポーネントの棚卸し
    ● CTRの低いコンポーネントの消去
    ○ A/Bテストでデルタ法を使って一つ一つ効
    果測定
    ○ PMと協力して各ステークホルダーや
    VPoPから了承を取る
    ● ユニバーサルコントロールグループ
    を導入
    ○ 数%のホールドアウト群
    ○ 改善の効果を常にトラッキングできるよう

    ● この時点で既に売り上げが少し改善
    🚀

    View Slide

  14. ● 整理が一段落し、レコメンデーションがやれそうな感じに
    ○ 一番売り上げ貢献の大きいPersonalized Searchコンポー
    ネントが、アプリを開いた時点で目に触れる位置まで上
    がってきた
    ● Personalized Search
    ○ ユーザーの過去の閲覧履歴から、複数の検索条件を生成
    して、個々の検索結果を表示する
    ○ 閲覧した商品の素性を主に検索条件に使用
    ○ いわゆる ”Retargeting”

    View Slide

  15. レコメンデーションの準備は整ったかのように見える!しかし、まだ理
    想的な形ではない。。。
    ● 毎時更新のバッチなので、ユーザーの行動が
    リアルタイムに反
    映されない
    ● 出せるコンテンツが、今の検索エンジンとそのAPIに依存してい

    ● 個々の検索結果は9個しか表示されず、その先を見るには検索
    画面に飛ばなければいけないので、
    閲覧体験が滑らかではない

    View Slide

  16. 準備その3: リアルタイム化の為のデータ基盤導入
    ● ユーザーの行動履歴をBigtableに溜め込む
    ○ クライアントログ取得のデータパイプライン
    から分岐
    ● 一時間ごとのバッチ更新だったPersonalized
    Searchをリアルタイム化
    ● コンポーネントのお掃除と相まって、
    Home経由
    の購買が大きく改善
    ○ やはりユーザーはリアルタイムのフィード
    バックを求めていた
    ● そして、この時点でようやくチーム結成
    😭
    Client Logging
    Event
    Personalization
    Service
    User Activity
    DB
    User Activity
    Worker

    View Slide

  17. 準備その4: タイムラインへの置き換え
    ● Personalized Searchを、無限スクロールでき
    る商品フィードへと置き換える
    ○ 行動ログから最新の関連商品を提示
    ○ 検索エンジン以外も使えるように
    ○ 閲覧行動がより滑らかに
    ● 固定数の商品のみを出す形(擬似タイムライ
    ン)で一旦テスト
    ○ Home経由のあらゆるKPIが大幅に改善
    ○ MLチーム史上最大のGMV改善率を記録
    した😇🔥

    View Slide

  18. まとめ
    ● レコメンデーションをHomeに導入するための準備だけで大幅にGMVが改善した
    ○ リファクタリング、レイテンシ改善、機能削減、効果測定
    ○ リアルタイム化、UI/UXの変更
    ● 機械学習をやる前にやるべきこと
    が結構ありそう
    ○ どこに手を入れると効果が大きいかの見積もり
    ○ ユニバーサルコントロールグループの導入など、効果検証の基盤
    ○ 機械学習の恩恵を最大限に引き出すための、サービスの理想的な状態とは?
    ● エンジニアリング力があると視野が広がることも
    ○ 負債が溜まっているところにこそチャンスがあったりする
    ○ チームを作るには、まず自分が動いて成果を捻り出す

    View Slide