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
Hazumi Ichijo
July 12, 2023
Programming
0
1k
オンラインテストしようと思った その日に開始できる環境を目指して
https://mlops.connpass.com/event/286716/
Hazumi Ichijo
July 12, 2023
Tweet
Share
More Decks by Hazumi Ichijo
See All by Hazumi Ichijo
RailsとRidgepoleの マイグレを120倍早くする
hazumirr
0
240
CIを整備してメンテナンスを生成AIに任せる
hazumirr
0
1.3k
病院の情報フローを理解して、 予約〜会計の見え方が変わった話
hazumirr
0
1.6k
Rubyのコード削除したい時 僕がやること
hazumirr
0
230
テーブル駆動テストと状態
hazumirr
5
2.1k
推薦によるプロダクト改善とマイクロサービスが噛み合った話
hazumirr
2
4.4k
ChatGPTで僕が知っていることまとめ
hazumirr
3
3.1k
プロダクトチームとどう 協業し分析環境を改善するか
hazumirr
2
1.6k
bqv速習会
hazumirr
6
7.1k
Other Decks in Programming
See All in Programming
Introduce Hono CLI
yusukebe
6
3.3k
AI駆動開発カンファレンスAutumn2025 _AI駆動開発にはAI駆動品質保証
autifyhq
0
120
Node-REDのノードの開発・活用事例とコミュニティとの関わり(Node-RED Con Nagoya 2025)
404background
0
120
One Enishi After Another
snoozer05
PRO
0
180
Dive into Triton Internals
appleparan
0
430
AI Agent 時代的開發者生存指南
eddie
4
2.3k
Claude Agent SDK を使ってみよう
hyshu
0
1.5k
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
250
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
750
業務でAIを使いたい話
hnw
0
230
EMこそClaude Codeでコード調査しよう
shibayu36
0
580
エンジニアに事業やプロダクトを理解してもらうためにやってること
murabayashi
0
120
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
55
11k
Building Applications with DynamoDB
mza
96
6.7k
Designing for Performance
lara
610
69k
Gamification - CAS2011
davidbonilla
81
5.5k
Facilitating Awesome Meetings
lara
57
6.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
KATA
mclloyd
PRO
32
15k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Rails Girls Zürich Keynote
gr2m
95
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Done Done
chrislema
186
16k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Transcript
© 2023 Wantedly, Inc. オンラインテストしようと思った その日に開始できる環境を目指して MLOps LT大会 2023/7月 Jul.
12 2023 - Hazumi Ichijo
自己紹介 © 2023 Wantedly, Inc. 一條 端澄 @hazumirr/@rerost 略歴: 2018~
: ウォンテッドリー株式会社 • 2018/04~ 推薦基盤チーム エンジニア • 2021/09~ 推薦チーム プロジェクトマネージャー • 2022/06~ 推薦チーム リーダー 趣味: テトリス・旅行
© 2023 Wantedly, Inc. プロダクトについて © 2023 Wantedly, Inc. WHAT|
個人向けサービス / 法人向けサービス 会社に遊びに行こう 「カジュアル面談」という仕事探しの新基準 • 人とチームを「想い」でマッチング • 「話を聞きに行く」体験を通じてフラットな出会いを創出 進化を続けるUIと基盤 • コンテンツが映えるモダンでシンプルな UI表現 • より本質的なマッチングを可能にする推薦アルゴリズム
推薦チームについて • データサイエンティスト(DS) • 4人 • 役割: ユーザーと企業のマッチングアルゴリズムの開発 • スキル
◦ 機械学習 ◦ データ分析 • 推薦基盤 • 2人 • 役割: 既存のシステムとDSの橋渡し • スキル ◦ バックエンド・インフラ ◦ データ分析基盤(Looker, BigQuery, etc…) © 2023 Wantedly, Inc.
推薦チームについて 1. プロダクトインパクト • 2022年度は推薦によって主要KPIが+20%改善 2. オンラインテストの頻度 • 最近では、毎月1~3つのテストが開始される 3.
機械学習での推論方法 • 主にバッチ © 2023 Wantedly, Inc.
推薦基盤チームがプロダクト利用者に提供する価値 • アルゴリズム改善の速度 ◦ リードタイム ◦ 頻度 • 壊れにくい推薦 •
良いアルゴリズムをより広く早く提供する ◦ 例: メール送信、デバイス(Web, iOS, Android, …) © 2023 Wantedly, Inc.
推薦基盤チームがプロダクト利用者に提供する価値 • アルゴリズム改善の速度 ◦ リードタイム ◦ 頻度 • 壊れにくい推薦 •
良いアルゴリズムをより広く早く提供する ◦ 例: メール送信、デバイス(Web, iOS, Android, …) © 2023 Wantedly, Inc.
仕組み © 2023 Wantedly, Inc. 推論 & 結果 を保存 推論結果を
使い推薦 募集一覧 API Push通知 メール送信 etc..
旧リリースフロー © 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ
ローの設定 実装 リリース DS 推薦 基盤
旧リリースフロー © 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ
ローの設定 実装 リリース 1時間 2~3日 半日 ジョブの待ち時間 DS 推薦 基盤
旧リリースフロー © 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ
ローの設定 実装 リリース 1時間 2~3日 半日 ジョブの待ち時間 人をまたぐコストも高い DS 推薦 基盤
ボトルネック 1. ワークフローの設定 • DBのデータや他の推論結果との依存関係の記述 • Argo Workflowの設定(マニフェスト手書き) 2. 実装
• 意図を汲み取り実装 • 実装しないといけない箇所がいくつかあり壊さないようにする 3. コミュニケーション • ミスコミュニケーションによる手戻りのリスク • 同じことをしたくとも人に合わせて別々の言葉を使う必要あり • リソース確保 © 2023 Wantedly, Inc.
改善 1. ワークフローの設定 • DBのデータや他の推論結果との依存関係の記述 • Argo Workflowの設定(マニフェスト手書き) 2. 実装
• 意図を汲み取り実装 • 実装しないといけない箇所がいくつかあり壊さないようにする 3. コミュニケーション • ミスコミュニケーションによる手戻りのリスク • 同じことをしたくとも人に合わせて別々の言葉を使う必要あり • リソース確保 © 2023 Wantedly, Inc.
改善 ワークフローの設定 © 2023 Wantedly, Inc. name: sample option: team:
recommendation jobs: - name: jobA command: "echo A" option: repo: repo - name: jobB command: "echo B" dependencies: [jobA] option: repo: repo https://github.com/rerost/dagg • DBのデータや他の推論結果との依存 関係の記述 • Argo Workflowの設定(マニフェスト 手書き) => 依存関係と実行方法のみに集中
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定
実装 リリース 1時間 2~3日 半日 改善 ワークフローの設定
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定
実装 リリース 15分 2~3日 半日 改善 ワークフローの設定
改善 1. ワークフローの設定 • DBのデータや他の推論結果との依存関係の記述 • Argo Workflowの設定(マニフェスト手書き) 2. 実装
• 意図を汲み取り実装 • 実装しないといけない箇所がいくつかあり壊さないようにする 3. コミュニケーション • ミスコミュニケーションによる手戻りのリスク • 同じことをしたくとも人に合わせて別々の言葉を使う必要あり • リソース確保 © 2023 Wantedly, Inc.
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定
実装 リリース 15分 2~3日 半日 改善 実装
改善 実装 before © 2023 Wantedly, Inc. • BQに吐かれた推論結果を同期 •
ヒアリングした情報を元に必要な条件で 新しいアルゴリズムが利用されるように 設定
改善 実装 After © 2023 Wantedly, Inc. 以下の設定を書き自動生成するだけに • 推論結果の保存先
• どういう条件で表示する ◦ オンラインテスト? ▪ AB? ▪ Interleaving? ◦ 表示条件 ▪ 強いアルゴリズムが出尽くした ら? ▪ 新規 or 既存ユーザー? ▪ …
改善 実装 © 2023 Wantedly, Inc. https://www.wantedly.com/companies/wantedly/post_articles/309759
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定
実装 リリース 15分 2~3日 半日 改善 実装
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定
実装 リリース 15分 30分 半日 改善 実装
改善 1. ワークフローの設定 • DBのデータや他の推論結果との依存関係の記述 • Argo Workflowの設定(マニフェスト手書き) 2. 実装
• 意図を汲み取り実装 • 実装しないといけない箇所がいくつかあり壊さないようにする 3. コミュニケーション • ミスコミュニケーションによる手戻りのリスク • 同じことをしたくとも人に合わせて別々の言葉を使う必要あり • リソース確保 © 2023 Wantedly, Inc.
改善 コミュニケーション 手順は簡潔になったので、残りは人手でチェックしていたことをCIへ • デプロイ前のチェック • マニフェストのバリデーション • 初回データの同期 •
etc… バックエンドの専門知識が必要ない状態に © 2023 Wantedly, Inc.
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定
実装 リリース 15分 30分 半日 改善 実装
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定
実装 リリース 15分 30分 改善 実装 半日 DS
結果 1. オンラインテスト開始までのリードタイムの向上 • 2~3日 => 半日 2. 実装と設定が分離されたことで、システムの改善がしやすくなる •
例: ◦ 壊れにくい推薦の実現 ◦ 良いアルゴリズムをより広く早く提供しやすいように © 2023 Wantedly, Inc.
© 2023 Wantedly, Inc.