Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
300
CIを整備してメンテナンスを生成AIに任せる
hazumirr
0
1.3k
病院の情報フローを理解して、 予約〜会計の見え方が変わった話
hazumirr
1
1.7k
Rubyのコード削除したい時 僕がやること
hazumirr
0
240
テーブル駆動テストと状態
hazumirr
5
2.1k
推薦によるプロダクト改善とマイクロサービスが噛み合った話
hazumirr
2
4.5k
ChatGPTで僕が知っていることまとめ
hazumirr
3
3.1k
プロダクトチームとどう 協業し分析環境を改善するか
hazumirr
2
1.6k
bqv速習会
hazumirr
6
7.1k
Other Decks in Programming
See All in Programming
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
590
Grafana:建立系統全知視角的捷徑
blueswen
0
220
Vibe codingでおすすめの言語と開発手法
uyuki234
0
120
Implementation Patterns
denyspoltorak
0
120
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
20k
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
170
perlをWebAssembly上で動かすと何が嬉しいの??? / Where does Perl-on-Wasm actually make sense?
mackee
0
140
AIエージェントの設計で注意するべきポイント6選
har1101
5
2.4k
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
430
Go コードベースの構成と AI コンテキスト定義
andpad
0
140
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
140
tparseでgo testの出力を見やすくする
utgwkk
2
280
Featured
See All Featured
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
91
Code Reviewing Like a Champion
maltzj
527
40k
How to Ace a Technical Interview
jacobian
281
24k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
94k
Reality Check: Gamification 10 Years Later
codingconduct
0
1.9k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
Unsuck your backbone
ammeep
671
58k
Marketing to machines
jonoalderson
1
4.3k
AI: The stuff that nobody shows you
jnunemaker
PRO
1
24
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
73
Why Our Code Smells
bkeepers
PRO
340
57k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
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.