Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ウォンテッドリーの推薦システム開発を支える評価とデプロイの仕組み
Search
chimuichimu
October 30, 2024
1
510
ウォンテッドリーの推薦システム開発を支える評価とデプロイの仕組み
chimuichimu
October 30, 2024
Tweet
Share
More Decks by chimuichimu
See All by chimuichimu
進化計算ライブラリ DEAP の紹介
chimuichimu
2
44
Spotify Web API を使った分析で新しいお気に入りアーティストを発見する
chimuichimu
3
120
非競プロ勢によるUSPTOコンペ参加記
chimuichimu
2
1.2k
ウォンテッドリーのプロダクト開発における Python の開発・運用環境
chimuichimu
4
1.3k
会社訪問アプリ Wantedly Visit における 相互推薦システムの活用事例
chimuichimu
3
550
アウトプットを頑張り始めたデータサイエンティストの話
chimuichimu
7
1.1k
ざっくり理解するベクトル検索
chimuichimu
3
870
PolarsとPanderaで実現する高速でロバストなデータ処理
chimuichimu
6
2.4k
atmaCup#16 3rd place solution
chimuichimu
0
420
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
Happy Clients
brianwarren
98
6.7k
Building Adaptive Systems
keathley
38
2.3k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
Side Projects
sachag
452
42k
Teambox: Starting and Learning
jrom
133
8.8k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Making Projects Easy
brettharned
115
5.9k
Transcript
© 2024 Wantedly, Inc. ウォンテッドリーの推薦システム開発を支え る評価とデプロイの仕組み Recommendation Industry Talks #4
Oct. 30 2024 - Chiaki Ichimura
自己紹介 © 2024 Wantedly, Inc. 名前: 市村 千晃 所属と役割: •
ウォンテッドリー株式会社 • データサイエンティスト • 推薦システムの開発、運用に従事 @chimuichimu1
会社・プロダクト紹介 © 2024 Wantedly, Inc.
© 2023 Wantedly, Inc. 究極の適材適所により、 シゴトでココロオドルひとをふやす © 2024 Wantedly, Inc.
私たちのミッション
© 2024 Wantedly, Inc. iOS, Android and Web 気軽に会社訪問 ミッションや価値観への共感でマッチング
• 給与や福利厚生などの条件ではなく、想いがあれば会社の規 模にとらわれない まず「話を聞きに行く」という新しい体験 • 個人と企業がフラットな目線で出会えることで、より魅力的な場 所を見つけることが可能に Wantedly Visit
Wantedly Visit - プラットフォーム構造 仕事を探すユーザーと人材を探す企業がであい、つながる ツーサイドのプラットフォーム
© 2024 Wantedly, Inc. Wantedly Visit - グロースサイクル プロダクトの成長にはマッチングの促進が必要不可欠
マッチングを実現する推薦システム マッチングの実現のため 推薦システムを最も重要な技術領域の一つとして開発に注力
ウォンテッドリーにおける 推薦システム開発 © 2024 Wantedly, Inc.
© 2024 Wantedly, Inc. どこで推薦システムが活用されているか? 機械学習を活用することで、 ユーザーの仕事に関する嗜好を捉え、 ユーザーがココロオドル仕事に出会える体験を実現 ユーザーが見る募集の一覧
どのように推薦システムを開発しているか? © 2024 Wantedly, Inc. • 問題発見から運用まで、データサイエンティストが一気通貫で担当 • 推薦ロジックの改善や、新しい推薦体験の開発を実施 問題発見
課題定義 解決策の 実装 オフライン評 価 デプロイ オンライン評 価 運用 データサイエンティストの開発スコープ
推薦システム開発において大事にしていること © 2024 Wantedly, Inc. 実験主義であること 「最終的な答えを持つのはユーザーのみである」という姿勢のもと 延々と議論するよりも、ユーザーの反応を見ることを重視し そこから得た学びを次の行動に繋げる
「実験主義」であるために必要なことは? © 2024 Wantedly, Inc. 実験の効率性 実装→評価→ユーザーへの提示のサイクルを高速に回し、 仮説検証とユーザーへの価値提供をクイックに実施すること 実験の品質 検証したいことを正しく検証することで、1つの実験から得られる学びを最大化
すること
「実験主義」を支える仕組み © 2024 Wantedly, Inc. 問題発見 課題定義 解決策の 実装 オフライン評
価 デプロイ オンライン評 価 運用 「実験主義」を実現するための オフライン評価とデプロイの仕組みを紹介
オフライン評価の仕組みの紹介 © 2024 Wantedly, Inc.
前提:なぜオフライン評価をするのか? © 2024 Wantedly, Inc. 試行錯誤のサイクルを高速に回すため ログデータを使った評価は、オンライン評価に比べ時間的コストが低い 意図せぬユーザー体験の毀損を防ぐため オンライン評価前に、ユーザー体験悪化のリスクを最小化する 意図した変化が実現できているかを確認するため
問題が解決した状態を作れているか?をユーザーに出す前に確認
過去に起きていた課題① 実験の効率性に関する課題 © 2024 Wantedly, Inc. 施策のたびにオフライン評価を準備するのに時間がかかる • 施策ごとに担当者が基本的にスクラッチで評価コードを実装 •
実装やレビューにかかるコストが大きかった
過去に起きていた課題② 実験の品質に関する課題 © 2024 Wantedly, Inc. オフライン評価とオンライン評価の結果の乖離 • オフラインで指標が改善 →
オンラインで指標が悪化、というケース • 要因の一つ:ユーザーが見るものとは異なる推薦を評価していた 推薦モデル ランキング データ 推論サーバー による処理 ユーザーが 見るリスト 評価していたもの 本来評価すべきもの • ユーザー指定のフィルタ • ルールベースの後処理 • etc.
取り組んだこと © 2024 Wantedly, Inc. オフライン評価用ライブラリを内製し、評価プロセスに活用 DataLoader 旧ランキング 新ランキング Reproducer
旧ランキング 新ランキング Evaluator 評価結果 Config
取り組んだこと © 2024 Wantedly, Inc. オフライン評価用ライブラリを内製し、評価プロセスに活用 DataLoader 旧ランキング 新ランキング Reproducer
旧ランキング 新ランキング Evaluator 評価結果 Config 使い回す処理を関数化したうえ Config ベースで評価を設定できるように
取り組んだこと © 2024 Wantedly, Inc. オフライン評価用ライブラリを内製し、評価プロセスに活用 DataLoader 旧ランキング 新ランキング Reproducer
旧ランキング 新ランキング Evaluator 評価結果 Config 評価をするだけでなく、推薦結果を再現する ためのコンポーネントを実現
得られた成果 © 2024 Wantedly, Inc. 施策にかかる時間の短縮 🎉 実装・レビューのコスト減により、施策にかかる時間が半日~2日短縮 オンラインテスト結果が従来より想定に近くなった 🎉
オフライン評価とオンライン評価の指標の相関が向上し、オンライン評価に移 行する意思決定の品質が改善
デプロイの仕組みの紹介 © 2024 Wantedly, Inc.
前提:推薦結果がユーザーに届くまで © 2024 Wantedly, Inc. 推薦結果を基に、検索・表示の制御やA/Bテ ストの適用を行う
従来のリリースフロー © 2024 Wantedly, Inc. DS 推薦基盤 エンジニア ロジック実装 ランキングデータを
BQに作成 新しいデータを 利用する実装 リリース モニタリング
過去に起きていた課題 © 2024 Wantedly, Inc. デプロイまでのリードタイム 推薦基盤の推論サーバーの実装に2-3日程度必要 リリースに DS と推薦基盤エンジニアの2人が必要
コミュニケーションロスによるリスク 推薦基盤エンジニアが DS 側の意図を汲み取り、実装する必要あり コミュニケーションロスにより、意図せぬリリースやオンラインテストが行われ るリスク
取り組んだこと © 2024 Wantedly, Inc. ランキングリリース用のインターフェースの定義 DS 推薦基盤 エンジニア XXの条件下で〇〇のランキン
グデータを出して、テスト方法 は△△で... DS 従来 スキーマファイルに 必要な情報を記述 現在
取り組んだこと © 2024 Wantedly, Inc. スキーマファイルからプログラムの自動生成 スキーマファイルの情報 • ランキングの条件分岐 •
テスト形式(AB or Interleaving) から推論コード(+フロー図)を自動生成 .go
得られた成果 © 2024 Wantedly, Inc. デプロイのリードタイム短縮 🎉 デプロイにかかる時間が 2-3日 →
半日 まで短縮 オンラインテストを始めよう、と思ったその日に開始できる環境に データサイエンティスト単独でのデプロイが可能に 🎉 設定と実装が分離されたことで、DS 単独でも正確なデプロイが可能に
まとめ © 2024 Wantedly, Inc.
まとめ © 2024 Wantedly, Inc. • ウォンテッドリーでは「実験を重視する文化」を大事にして推薦シ ステムの開発に取り組んでいる • オフライン評価とデプロイの仕組み化により、実験の効率と品質
を高め、理想的なマッチングの実現を目指している
もっと詳しく知りたい人へ © 2024 Wantedly, Inc. • 開発プロセス全般 ◦ ウォンテッドリーにおける推薦システム開発の流れ •
オフライン評価 ◦ ウォンテッドリーにおける推薦システムのオフライン評価の仕組み • デプロイ ◦ オンラインテストしようと思った その日に開始できる環境を目指して ◦ データサイエンティストと効果的にコラボレーションするためのインター フェースづくり
We are Hiring !!! © 2024 Wantedly, Inc. データの力で理想的なマッチングを実現する仲間を募集中! カジュアル面談ページ