Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
オンラインテストしようと思った その日に開始できる環境を目指して
Search
Hazumi Ichijo
July 12, 2023
Programming
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
オンラインテストしようと思った その日に開始できる環境を目指して
https://mlops.connpass.com/event/286716/
Hazumi Ichijo
July 12, 2023
More Decks by Hazumi Ichijo
See All by Hazumi Ichijo
RailsとRidgepoleの マイグレを120倍早くする
hazumirr
0
480
CIを整備してメンテナンスを生成AIに任せる
hazumirr
0
1.5k
病院の情報フローを理解して、 予約〜会計の見え方が変わった話
hazumirr
1
2k
Rubyのコード削除したい時 僕がやること
hazumirr
0
300
テーブル駆動テストと状態
hazumirr
5
2.2k
推薦によるプロダクト改善とマイクロサービスが噛み合った話
hazumirr
2
4.9k
ChatGPTで僕が知っていることまとめ
hazumirr
3
3.1k
プロダクトチームとどう 協業し分析環境を改善するか
hazumirr
2
1.7k
bqv速習会
hazumirr
6
7.3k
Other Decks in Programming
See All in Programming
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
250
ジョジョの世界をXRで再現する
mofurune
0
160
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
200
Event is what happens
moro
2
670
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
390
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
740
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
140
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
600
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
Agents on Rails - Rails at Scale 2026
irinanazarova
0
540
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.4k
Featured
See All Featured
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
630
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Color Theory Basics | Prateek | Gurzu
gurzu
1
490
Site-Speed That Sticks
csswizardry
13
1.6k
Documentation Writing (for coders)
carmenintech
77
5.6k
WCS-LA-2024
lcolladotor
0
890
The World Runs on Bad Software
bkeepers
PRO
72
12k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
560
Unsuck your backbone
ammeep
672
58k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
540
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Making Projects Easy
brettharned
120
6.8k
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.