オンラインテストしようと思った その日に開始できる環境を目指して
by
Hazumi Ichijo
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
© 2023 Wantedly, Inc. オンラインテストしようと思った その日に開始できる環境を目指して MLOps LT大会 2023/7月 Jul. 12 2023 - Hazumi Ichijo
Slide 2
Slide 2 text
自己紹介 © 2023 Wantedly, Inc. 一條 端澄 @hazumirr/@rerost 略歴: 2018~ : ウォンテッドリー株式会社 ● 2018/04~ 推薦基盤チーム エンジニア ● 2021/09~ 推薦チーム プロジェクトマネージャー ● 2022/06~ 推薦チーム リーダー 趣味: テトリス・旅行
Slide 3
Slide 3 text
© 2023 Wantedly, Inc. プロダクトについて © 2023 Wantedly, Inc. WHAT| 個人向けサービス / 法人向けサービス 会社に遊びに行こう 「カジュアル面談」という仕事探しの新基準 • 人とチームを「想い」でマッチング • 「話を聞きに行く」体験を通じてフラットな出会いを創出 進化を続けるUIと基盤 • コンテンツが映えるモダンでシンプルな UI表現 • より本質的なマッチングを可能にする推薦アルゴリズム
Slide 4
Slide 4 text
推薦チームについて ● データサイエンティスト(DS) ● 4人 ● 役割: ユーザーと企業のマッチングアルゴリズムの開発 ● スキル ○ 機械学習 ○ データ分析 ● 推薦基盤 ● 2人 ● 役割: 既存のシステムとDSの橋渡し ● スキル ○ バックエンド・インフラ ○ データ分析基盤(Looker, BigQuery, etc…) © 2023 Wantedly, Inc.
Slide 5
Slide 5 text
推薦チームについて 1. プロダクトインパクト ● 2022年度は推薦によって主要KPIが+20%改善 2. オンラインテストの頻度 ● 最近では、毎月1~3つのテストが開始される 3. 機械学習での推論方法 ● 主にバッチ © 2023 Wantedly, Inc.
Slide 6
Slide 6 text
推薦基盤チームがプロダクト利用者に提供する価値 ● アルゴリズム改善の速度 ○ リードタイム ○ 頻度 ● 壊れにくい推薦 ● 良いアルゴリズムをより広く早く提供する ○ 例: メール送信、デバイス(Web, iOS, Android, …) © 2023 Wantedly, Inc.
Slide 7
Slide 7 text
推薦基盤チームがプロダクト利用者に提供する価値 ● アルゴリズム改善の速度 ○ リードタイム ○ 頻度 ● 壊れにくい推薦 ● 良いアルゴリズムをより広く早く提供する ○ 例: メール送信、デバイス(Web, iOS, Android, …) © 2023 Wantedly, Inc.
Slide 8
Slide 8 text
仕組み © 2023 Wantedly, Inc. 推論 & 結果 を保存 推論結果を 使い推薦 募集一覧 API Push通知 メール送信 etc..
Slide 9
Slide 9 text
旧リリースフロー © 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース DS 推薦 基盤
Slide 10
Slide 10 text
旧リリースフロー © 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 1時間 2~3日 半日 ジョブの待ち時間 DS 推薦 基盤
Slide 11
Slide 11 text
旧リリースフロー © 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 1時間 2~3日 半日 ジョブの待ち時間 人をまたぐコストも高い DS 推薦 基盤
Slide 12
Slide 12 text
ボトルネック 1. ワークフローの設定 ● DBのデータや他の推論結果との依存関係の記述 ● Argo Workflowの設定(マニフェスト手書き) 2. 実装 ● 意図を汲み取り実装 ● 実装しないといけない箇所がいくつかあり壊さないようにする 3. コミュニケーション ● ミスコミュニケーションによる手戻りのリスク ● 同じことをしたくとも人に合わせて別々の言葉を使う必要あり ● リソース確保 © 2023 Wantedly, Inc.
Slide 13
Slide 13 text
改善 1. ワークフローの設定 ● DBのデータや他の推論結果との依存関係の記述 ● Argo Workflowの設定(マニフェスト手書き) 2. 実装 ● 意図を汲み取り実装 ● 実装しないといけない箇所がいくつかあり壊さないようにする 3. コミュニケーション ● ミスコミュニケーションによる手戻りのリスク ● 同じことをしたくとも人に合わせて別々の言葉を使う必要あり ● リソース確保 © 2023 Wantedly, Inc.
Slide 14
Slide 14 text
改善 ワークフローの設定 © 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の設定(マニフェスト 手書き) => 依存関係と実行方法のみに集中
Slide 15
Slide 15 text
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 1時間 2~3日 半日 改善 ワークフローの設定
Slide 16
Slide 16 text
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 15分 2~3日 半日 改善 ワークフローの設定
Slide 17
Slide 17 text
改善 1. ワークフローの設定 ● DBのデータや他の推論結果との依存関係の記述 ● Argo Workflowの設定(マニフェスト手書き) 2. 実装 ● 意図を汲み取り実装 ● 実装しないといけない箇所がいくつかあり壊さないようにする 3. コミュニケーション ● ミスコミュニケーションによる手戻りのリスク ● 同じことをしたくとも人に合わせて別々の言葉を使う必要あり ● リソース確保 © 2023 Wantedly, Inc.
Slide 18
Slide 18 text
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 15分 2~3日 半日 改善 実装
Slide 19
Slide 19 text
改善 実装 before © 2023 Wantedly, Inc. ● BQに吐かれた推論結果を同期 ● ヒアリングした情報を元に必要な条件で 新しいアルゴリズムが利用されるように 設定
Slide 20
Slide 20 text
改善 実装 After © 2023 Wantedly, Inc. 以下の設定を書き自動生成するだけに ● 推論結果の保存先 ● どういう条件で表示する ○ オンラインテスト? ■ AB? ■ Interleaving? ○ 表示条件 ■ 強いアルゴリズムが出尽くした ら? ■ 新規 or 既存ユーザー? ■ …
Slide 21
Slide 21 text
改善 実装 © 2023 Wantedly, Inc. https://www.wantedly.com/companies/wantedly/post_articles/309759
Slide 22
Slide 22 text
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 15分 2~3日 半日 改善 実装
Slide 23
Slide 23 text
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 15分 30分 半日 改善 実装
Slide 24
Slide 24 text
改善 1. ワークフローの設定 ● DBのデータや他の推論結果との依存関係の記述 ● Argo Workflowの設定(マニフェスト手書き) 2. 実装 ● 意図を汲み取り実装 ● 実装しないといけない箇所がいくつかあり壊さないようにする 3. コミュニケーション ● ミスコミュニケーションによる手戻りのリスク ● 同じことをしたくとも人に合わせて別々の言葉を使う必要あり ● リソース確保 © 2023 Wantedly, Inc.
Slide 25
Slide 25 text
改善 コミュニケーション 手順は簡潔になったので、残りは人手でチェックしていたことをCIへ ● デプロイ前のチェック ● マニフェストのバリデーション ● 初回データの同期 ● etc… バックエンドの専門知識が必要ない状態に © 2023 Wantedly, Inc.
Slide 26
Slide 26 text
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 15分 30分 半日 改善 実装
Slide 27
Slide 27 text
© 2023 Wantedly, Inc. 作成 初回のデー タを生成 モニタリング ワークフ ローの設定 実装 リリース 15分 30分 改善 実装 半日 DS
Slide 28
Slide 28 text
結果 1. オンラインテスト開始までのリードタイムの向上 ● 2~3日 => 半日 2. 実装と設定が分離されたことで、システムの改善がしやすくなる ● 例: ○ 壊れにくい推薦の実現 ○ 良いアルゴリズムをより広く早く提供しやすいように © 2023 Wantedly, Inc.
Slide 29
Slide 29 text
© 2023 Wantedly, Inc.