SlideShare a Scribd company logo
Mobility Technologies Co., Ltd.
GOの機械学習システムを支える
MLOps事例紹介
開発本部 AI技術開発部
MLエンジニアリンググループ
鈴木 隆史
Mobility Technologies Co., Ltd.
自己紹介
2
鈴木 隆史 | Takashi Suzuki
開発本部 AI技術開発部 MLエンジニアリンググループ
● 2019年DeNA入社
機械学習の実験基盤やパイプラインの設計開発を担当
● 2020年Mobility Technologies転籍
Mobility Technologies Co., Ltd.
3
Mobility Technologies Co., Ltd.
4
Mobility Technologies Co., Ltd.
GOのとある機械学習システムにおける、いくつかのMLOpsについてお話します
● Test
● Validation
● Deploy
今日話すこと
5
Mobility Technologies Co., Ltd.
お客様探索ナビについて
01
6
Mobility Technologies Co., Ltd.
プロダクトの課題設定
7
乗務員は歩合制
収入は
探客スキルに依存
Mobility Technologies Co., Ltd.
お客様探索ナビとは
8
需要を予測して最適な
営業経路を提案
Mobility Technologies Co., Ltd.
お客様探索ナビとは
9
需要を予測して最適な
営業経路を提案
需要供給予測
● 特徴量作成
● MLモデル推論
走行ルート推薦
● 最適方策の獲得
● 全体最適化
ベースとなる技術
Mobility Technologies Co., Ltd.
機械学習による需要供給予測
10
直近の乗車数
周辺の乗車数
各種統計量
MLモデル
直後30分に発生
する乗車数
Mobility Technologies Co., Ltd.
強化学習による走行ルート推薦
11
行動:進行方向
報酬:売上など
報酬
行動
環境
エージェント
Mobility Technologies Co., Ltd.
MLシステムフロー
02
12
Mobility Technologies Co., Ltd.
MLシステムのリアルタイムデータの重要性
13
● 時間帯による需要変化、タクシーの供給変化など、刻一刻と状況は変化する
● 例: 突然の商業施設閉館による道路の需要減
高需要道路 低需要道路
施設閉館
Map data ©2021 Google
Mobility Technologies Co., Ltd.
MLシステムのワークフロー
14
● 新鮮なデータで推論・学習(モデル更新)を行う必要がある
現在のモデルでリアルタイムデータに対し推論(短期の変化)
直近のデータを用いて学習・モデルを更新(中長期の変化)
前処理 推論
推論パイプライン (5分ごと) 統計値
作成
前処理
MLモデル更新パイプライン (1週ごと)
学習
バッチ推論 シミュレーション
Mobility Technologies Co., Ltd.
MLモデル更新パイプライン(1週ごと)
15
統計値作成 前処理 学習 バッチ推論
AI Platform Training
BigQuery
Mobility Technologies Co., Ltd.
MLモデル更新パイプライン(1週ごと)
16
Mobility Technologies Co., Ltd.
推論パイプライン(5分ごと)
17
Mobility Technologies Co., Ltd.
Test MLOps
03
18
Mobility Technologies Co., Ltd.
MLシステムにおけるテストの難しさ
19
統計値
作成 前処理 学習
バッチ
推論
シミュレータ
デプロイサイクル
● 開始から終了まで10時間ほど要する
● 学習など、ステップ単位でも1時間以上要するものも
● BigQuery や GCS を含む複雑な依存関係
● 動作の保証だけでなく、精度も考慮する必要
Mobility Technologies Co., Ltd.
MLシステムにおけるテストの難しさ
20
精度テスト
- 最新 develop image で定期実行
- 10時間ほど要する
- プロダクションと同条件のデータ
- 精度の面は監視・通知によってカバー
- 問題なければ本番環境にデプロイ
動作テスト
- ローカルもしくはCI で実行するテスト
- 30分ほど要する
- 最小限のダミーデータを用いる
- 精度やデータノイズは一切見ない
- パスすれば開発環境まで自動デプロイ
Mobility Technologies Co., Ltd.
動作テスト
21
Github + CircleCI + PyTest によるテスト運用
● 運用ルール: PR を出す時は最低限テストをパスさせる
● develop ブランチにマージされたら、 CI で最新イメージをビルド
○ 開発環境 Airflow に自動デプロイ
○ 精度含めたテストはパイプラインの定期実行で検知
ローカル開発環境
Push
PyTest Job
Deploy Job
※develop branch のみ
※全 branch
Hook Composer
Image Hash
Mobility Technologies Co., Ltd.
動作テスト
22
● 基本的にパイプラインの流れを最低限のデータで再現
● CircleCI 上での実行時間は30分弱
統計値作成 前処理 学習 バッチ推論
※最小限のデータで実行
AI Platform は使わずローカルリソースで
Mobility Technologies Co., Ltd.
Pytestの設計
23
● Setup/Teardown で一時データセットやバケットを用意
テスト実行ごとにハッシュ値を用意し、 BQ や GCS 上で被りがないように
Mobility Technologies Co., Ltd.
Test MLOps まとめ
24
1. 動作テスト
- 開発サイクルにおけるテスト
- Github + CircleCI + PyTestで最小限データと実行時間で動作確認
2. 精度テスト
- 開発パイプラインにおけるテスト
- 最新 develop branch に自動追従させ、定期実行
- 精度面は監視運用で検証
Mobility Technologies Co., Ltd.
Validation MLOps
04
25
Mobility Technologies Co., Ltd.
MLシステムにおける精度検証の難しさ
26
学習データのノイズや時期性
モデル精度の経年悪化
テストデータのノイズ等
正しい精度評価ができない
精度が悪いモデルを本番デプロイ
経路、UXに悪影響
検証項目
Mobility Technologies Co., Ltd.
デプロイフローにおける精度検証
27
RMSE (Root Mean Squared Error)
● 道路ごとに、ある時間枠で何台のタクシーが通るか → 供給
● 道路ごとに、ある時間枠で何回の乗車が発生するか → 需要
● これらを2つのモデルで予測しており、その誤差を見る
シミュレーション結果
● バッチ推論の結果を用いた経路に従うと、どれだけの営収となるか
Mobility Technologies Co., Ltd.
デプロイフローにおける精度検証
28
統計値
作成 前処理 学習
バッチ
推論
BQの一時テーブルを利用して平均値がおかしな値でないかを確認
閾値は少し緩めだが、多段なので許容
統計値の Validation
シミュレータ
Mobility Technologies Co., Ltd.
デプロイフローにおける精度検証
29
学習したMLモデルが
検証データに対する RMSE が統計値よりも悪ければ弾く
学習時の Validation
統計値
作成 前処理 学習
バッチ
推論
シミュレータ
Mobility Technologies Co., Ltd.
デプロイフローにおける精度検証
30
テストデータに対する RMSE がプロファイルよりも悪ければ弾く
バッチ推論時の Validation
テストデータに対する RMSE が統計値よりも悪ければ弾く
Monitoring で監視し、ここで弾かれたらアラートを飛ばす
バッチ推論時の Validation
統計値
作成 前処理 学習
バッチ
推論
シミュレータ
Mobility Technologies Co., Ltd.
デプロイフローにおける精度検証
31
統計値
作成 前処理 学習
バッチ
推論
シミュレータ
シミュレーション結果が現行モデルを超えていなければ弾く
シミュレータの Validation
Mobility Technologies Co., Ltd.
Validation MLOps まとめ
32
1. モデルデプロイ時には多段Validation
- データ異常値によるモデルと統計値のズレを想定する
- デプロイ時には多段Validationで精度を担保
- デプロイフローを1週毎に実施することで精度劣化を防ぐ
Mobility Technologies Co., Ltd.
Deploy MLOps
05
33
Mobility Technologies Co., Ltd.
● 手動デプロイと自動デプロイの選択
○ 手動にすれば質の悪いモデルデプロイは防げるが、人的コストがかか
る
○ 自動デプロイの場合は、リリース時の精度担保をどうするか
● 障害等により時間内にモデル推論が終わらなかった際のfallback
● デプロイ後のモデル精度を監視する仕組み
MLシステムにおけるデプロイ周りの難しさ
34
Mobility Technologies Co., Ltd.
● 前項で話したとおり、デプロイ前に4段のValidationでモデル/統計値の精度
面チェックは実施済み
● そのためValidation通過済みのモデルに関しては自動デプロイをしてもよい
という判断へ
● その分、デプロイ後の精度監視を強化していく
自動デプロイ
35
Mobility Technologies Co., Ltd.
統計値によるフォールバック
36
デプロイ対象
● 推論結果が一定時間更新されない際、統計値を基にした経路が引かれる
● つまり推論パイプラインが止まっても、ナビは機能する(重要)
● しかし推論を基にした経路のほうがシミュレーション営収が良い 場合がほとんど
モデル推論バケット
推論パイプライン
(5分ごと)
統計値バケット 経路生成API
アップロード
デプロイパイプライン
(週ごと)
アップロード
直近30分の結果があれば
推論データを参照
Mobility Technologies Co., Ltd.
統計値によるフォールバック
37
デプロイ対象
● 推論結果が一定時間更新されない際、統計値を基にした経路が引かれる
● つまり推論パイプラインが止まっても、ナビは機能する(重要)
● しかし推論を基にした経路のほうがシミュレーション営収が良い 場合がほとんど
モデル推論バケット
推論パイプライン
(5分ごと)
統計値バケット 経路生成API
停止
デプロイパイプライン
(週ごと)
アップロード 直近30分の結果がなければ
統計値を参照
Mobility Technologies Co., Ltd.
デプロイ済みモデルの精度劣化監視
38
評価パイプライン(1日1回)
● 直近1日の推論結果を Ground Truth (実際のログ)を用いて評価
● 推論 RMSE と統計値 RMSE をカスタム指標として Monitoring に送信
● 推論結果が統計値よりも悪かった場合にアラート発火
評価パイプライン
(日ごと)
カスタム指標
送信
Monitoring
精度が
悪ければ
Mobility Technologies Co., Ltd.
Deploy MLOps まとめ
39
1. 統計値でシステム担保
- MLリアルタイム推論の停止前提に統計値でフォールバック
2. 監視パイプラインで事後精度の担保
- モデル推論が統計値よりも悪かった場合は通知
- 通知が続いた場合は、異常値などによるモデル精度劣化を検証
Mobility Technologies Co., Ltd.
まとめ
06
40
Mobility Technologies Co., Ltd.
人的リソースの削減
● 枯れたMLシステムとなると、システム担保のための定常的なエンジニア工数削減が
重要になる
● テスト、精度検証、デプロイ、監視まわりでしきい値や担保したい精度を定義すること
で、ほとんどのMLシステムは自動化が可能
まとめ
41
Mobility Technologies Co., Ltd.
Appendix
42
お客様探索ナビのアルゴリズムやMLOps全般については
DeNA TechConでの登壇資料をご覧ください
https://www.slideshare.net/dena_tech/mov-mlops
https://www.slideshare.net/dena_tech/dena-techcon-2019-
132196217
Mobility Technologies Co., Ltd.
技術全般 Twitter @mot_techtalk
Thank You!
We Are Hiring!
43
AI関連 Twitter @mot_ai_tech
confidential
文章·画像等の内容の無断転載及び複製等の行為はご遠慮ください。
Mobility Technologies Co., Ltd.
44

More Related Content

What's hot

MLflowで学ぶMLOpsことはじめ
MLflowで学ぶMLOpsことはじめMLflowで学ぶMLOpsことはじめ
MLflowで学ぶMLOpsことはじめ
Kenichi Sonoda
 
Teslaにおけるコンピュータビジョン技術の調査 (2)
Teslaにおけるコンピュータビジョン技術の調査 (2)Teslaにおけるコンピュータビジョン技術の調査 (2)
Teslaにおけるコンピュータビジョン技術の調査 (2)
Kazuyuki Miyazawa
 
Cloud runのオートスケールを検証してみる
Cloud runのオートスケールを検証してみるCloud runのオートスケールを検証してみる
Cloud runのオートスケールを検証してみる
虎の穴 開発室
 
分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~
Hideki Tsunashima
 
AWSではじめるMLOps
AWSではじめるMLOpsAWSではじめるMLOps
AWSではじめるMLOps
MariOhbuchi
 
Data-centricなML開発
Data-centricなML開発Data-centricなML開発
Data-centricなML開発
Takeshi Suzuki
 
20180729 Preferred Networksの機械学習クラスタを支える技術
20180729 Preferred Networksの機械学習クラスタを支える技術20180729 Preferred Networksの機械学習クラスタを支える技術
20180729 Preferred Networksの機械学習クラスタを支える技術
Preferred Networks
 
MLflow + Kubeflow MLプラットフォーム事例 #sparktokyo
MLflow + Kubeflow MLプラットフォーム事例 #sparktokyoMLflow + Kubeflow MLプラットフォーム事例 #sparktokyo
MLflow + Kubeflow MLプラットフォーム事例 #sparktokyo
Yahoo!デベロッパーネットワーク
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門Shuyo Nakatani
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
 
継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator
Yahoo!デベロッパーネットワーク
 
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Preferred Networks
 
ゼロから始める転移学習
ゼロから始める転移学習ゼロから始める転移学習
ゼロから始める転移学習
Yahoo!デベロッパーネットワーク
 
BlackBox モデルの説明性・解釈性技術の実装
BlackBox モデルの説明性・解釈性技術の実装BlackBox モデルの説明性・解釈性技術の実装
BlackBox モデルの説明性・解釈性技術の実装
Deep Learning Lab(ディープラーニング・ラボ)
 
画像キャプションの自動生成
画像キャプションの自動生成画像キャプションの自動生成
画像キャプションの自動生成
Yoshitaka Ushiku
 
モデル高速化百選
モデル高速化百選モデル高速化百選
モデル高速化百選
Yusuke Uchida
 
これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~
これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~
これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~
MicroAd, Inc.(Engineer)
 
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
Preferred Networks
 
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
Preferred Networks
 
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer
Yusuke Uchida
 

What's hot (20)

MLflowで学ぶMLOpsことはじめ
MLflowで学ぶMLOpsことはじめMLflowで学ぶMLOpsことはじめ
MLflowで学ぶMLOpsことはじめ
 
Teslaにおけるコンピュータビジョン技術の調査 (2)
Teslaにおけるコンピュータビジョン技術の調査 (2)Teslaにおけるコンピュータビジョン技術の調査 (2)
Teslaにおけるコンピュータビジョン技術の調査 (2)
 
Cloud runのオートスケールを検証してみる
Cloud runのオートスケールを検証してみるCloud runのオートスケールを検証してみる
Cloud runのオートスケールを検証してみる
 
分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~
 
AWSではじめるMLOps
AWSではじめるMLOpsAWSではじめるMLOps
AWSではじめるMLOps
 
Data-centricなML開発
Data-centricなML開発Data-centricなML開発
Data-centricなML開発
 
20180729 Preferred Networksの機械学習クラスタを支える技術
20180729 Preferred Networksの機械学習クラスタを支える技術20180729 Preferred Networksの機械学習クラスタを支える技術
20180729 Preferred Networksの機械学習クラスタを支える技術
 
MLflow + Kubeflow MLプラットフォーム事例 #sparktokyo
MLflow + Kubeflow MLプラットフォーム事例 #sparktokyoMLflow + Kubeflow MLプラットフォーム事例 #sparktokyo
MLflow + Kubeflow MLプラットフォーム事例 #sparktokyo
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
 
継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator
 
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
 
ゼロから始める転移学習
ゼロから始める転移学習ゼロから始める転移学習
ゼロから始める転移学習
 
BlackBox モデルの説明性・解釈性技術の実装
BlackBox モデルの説明性・解釈性技術の実装BlackBox モデルの説明性・解釈性技術の実装
BlackBox モデルの説明性・解釈性技術の実装
 
画像キャプションの自動生成
画像キャプションの自動生成画像キャプションの自動生成
画像キャプションの自動生成
 
モデル高速化百選
モデル高速化百選モデル高速化百選
モデル高速化百選
 
これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~
これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~
これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~
 
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
 
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
 
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer
 

Similar to GOの機械学習システムを支えるMLOps事例紹介

【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
Kotaro Ogino
 
MLプロジェクトのリリースフローを考える
MLプロジェクトのリリースフローを考えるMLプロジェクトのリリースフローを考える
MLプロジェクトのリリースフローを考える
Takashi Suzuki
 
AIを活用した交通事故削減支援サービスでのテスト自動化
AIを活用した交通事故削減支援サービスでのテスト自動化AIを活用した交通事故削減支援サービスでのテスト自動化
AIを活用した交通事故削減支援サービスでのテスト自動化
Shota Suzuki
 
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
Optuna on Kubeflow Pipeline 分散ハイパラチューニングOptuna on Kubeflow Pipeline 分散ハイパラチューニング
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
Takashi Suzuki
 
To be sn agile enterprise
To be sn agile enterpriseTo be sn agile enterprise
To be sn agile enterprise
Rakuten Group, Inc.
 
機械学習 - MNIST の次のステップ
機械学習 - MNIST の次のステップ機械学習 - MNIST の次のステップ
機械学習 - MNIST の次のステップ
Daiyu Hatakeyama
 
DRIVE CHARTを支えるAI技術
DRIVE CHARTを支えるAI技術DRIVE CHARTを支えるAI技術
DRIVE CHARTを支えるAI技術
Yusuke Uchida
 
RTTJapan 会社概要 140120
RTTJapan 会社概要 140120RTTJapan 会社概要 140120
RTTJapan 会社概要 140120RTT Japan K.K
 
最適なビックデータ・システムの構築のために
最適なビックデータ・システムの構築のために最適なビックデータ・システムの構築のために
最適なビックデータ・システムの構築のために
IBM Systems @ IBM Japan, Ltd.
 
物体検出コンペティションOpen Imagesに挑む
物体検出コンペティションOpen Imagesに挑む物体検出コンペティションOpen Imagesに挑む
物体検出コンペティションOpen Imagesに挑む
Hiroto Honda
 
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
Fixstars Corporation
 
クラウドが実現するソフト開発・運用の変革と自動化
クラウドが実現するソフト開発・運用の変革と自動化クラウドが実現するソフト開発・運用の変革と自動化
クラウドが実現するソフト開発・運用の変革と自動化Etsuji Nakai
 
Agile japan2010 rakuten様プレゼン資料
Agile japan2010 rakuten様プレゼン資料Agile japan2010 rakuten様プレゼン資料
Agile japan2010 rakuten様プレゼン資料Akiko Kosaka
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
Ken Azuma
 
xOps: エンジニアがスタートアップの成長の原動力となる日
xOps: エンジニアがスタートアップの成長の原動力となる日xOps: エンジニアがスタートアップの成長の原動力となる日
xOps: エンジニアがスタートアップの成長の原動力となる日
Takaaki Umada
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
Ken Azuma
 
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
Rakuten Group, Inc.
 
Future customer experience
Future customer experienceFuture customer experience
Future customer experience
Katsuhiro Aizawa
 
ソースコードは要求にとって地球の裏側なのか
ソースコードは要求にとって地球の裏側なのかソースコードは要求にとって地球の裏側なのか
ソースコードは要求にとって地球の裏側なのか
Kent Ishizawa
 

Similar to GOの機械学習システムを支えるMLOps事例紹介 (20)

【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
 
MLプロジェクトのリリースフローを考える
MLプロジェクトのリリースフローを考えるMLプロジェクトのリリースフローを考える
MLプロジェクトのリリースフローを考える
 
AIを活用した交通事故削減支援サービスでのテスト自動化
AIを活用した交通事故削減支援サービスでのテスト自動化AIを活用した交通事故削減支援サービスでのテスト自動化
AIを活用した交通事故削減支援サービスでのテスト自動化
 
組込みSW開発技術研究会キックオフミーティング
組込みSW開発技術研究会キックオフミーティング組込みSW開発技術研究会キックオフミーティング
組込みSW開発技術研究会キックオフミーティング
 
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
Optuna on Kubeflow Pipeline 分散ハイパラチューニングOptuna on Kubeflow Pipeline 分散ハイパラチューニング
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
 
To be sn agile enterprise
To be sn agile enterpriseTo be sn agile enterprise
To be sn agile enterprise
 
機械学習 - MNIST の次のステップ
機械学習 - MNIST の次のステップ機械学習 - MNIST の次のステップ
機械学習 - MNIST の次のステップ
 
DRIVE CHARTを支えるAI技術
DRIVE CHARTを支えるAI技術DRIVE CHARTを支えるAI技術
DRIVE CHARTを支えるAI技術
 
RTTJapan 会社概要 140120
RTTJapan 会社概要 140120RTTJapan 会社概要 140120
RTTJapan 会社概要 140120
 
最適なビックデータ・システムの構築のために
最適なビックデータ・システムの構築のために最適なビックデータ・システムの構築のために
最適なビックデータ・システムの構築のために
 
物体検出コンペティションOpen Imagesに挑む
物体検出コンペティションOpen Imagesに挑む物体検出コンペティションOpen Imagesに挑む
物体検出コンペティションOpen Imagesに挑む
 
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
製造業向け量子コンピュータ時代のDXセミナー ~見える化、分析、予測、その先の最適化へ~
 
クラウドが実現するソフト開発・運用の変革と自動化
クラウドが実現するソフト開発・運用の変革と自動化クラウドが実現するソフト開発・運用の変革と自動化
クラウドが実現するソフト開発・運用の変革と自動化
 
Agile japan2010 rakuten様プレゼン資料
Agile japan2010 rakuten様プレゼン資料Agile japan2010 rakuten様プレゼン資料
Agile japan2010 rakuten様プレゼン資料
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
 
xOps: エンジニアがスタートアップの成長の原動力となる日
xOps: エンジニアがスタートアップの成長の原動力となる日xOps: エンジニアがスタートアップの成長の原動力となる日
xOps: エンジニアがスタートアップの成長の原動力となる日
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
 
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
 
Future customer experience
Future customer experienceFuture customer experience
Future customer experience
 
ソースコードは要求にとって地球の裏側なのか
ソースコードは要求にとって地球の裏側なのかソースコードは要求にとって地球の裏側なのか
ソースコードは要求にとって地球の裏側なのか
 

More from Takashi Suzuki

到着予想時間サービスの特徴量のニアリアルタイム化
到着予想時間サービスの特徴量のニアリアルタイム化到着予想時間サービスの特徴量のニアリアルタイム化
到着予想時間サービスの特徴量のニアリアルタイム化
Takashi Suzuki
 
AI予約サービスのMLOps事例紹介
AI予約サービスのMLOps事例紹介AI予約サービスのMLOps事例紹介
AI予約サービスのMLOps事例紹介
Takashi Suzuki
 
Kubernetes超入門
Kubernetes超入門Kubernetes超入門
Kubernetes超入門
Takashi Suzuki
 
MOVの機械学習システムを支えるMLOps実践
MOVの機械学習システムを支えるMLOps実践MOVの機械学習システムを支えるMLOps実践
MOVの機械学習システムを支えるMLOps実践
Takashi Suzuki
 
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについてタクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
Takashi Suzuki
 
MOV お客さま探索ナビの GCP ML開発フローについて
MOV お客さま探索ナビの GCP ML開発フローについてMOV お客さま探索ナビの GCP ML開発フローについて
MOV お客さま探索ナビの GCP ML開発フローについて
Takashi Suzuki
 
[Gree] DataEngConf NYC’18 セッションサマリー #1
[Gree] DataEngConf NYC’18 セッションサマリー #1[Gree] DataEngConf NYC’18 セッションサマリー #1
[Gree] DataEngConf NYC’18 セッションサマリー #1
Takashi Suzuki
 
[Gree] Dialogflowを利用したチャットボット導入事例
[Gree] Dialogflowを利用したチャットボット導入事例[Gree] Dialogflowを利用したチャットボット導入事例
[Gree] Dialogflowを利用したチャットボット導入事例
Takashi Suzuki
 
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
Takashi Suzuki
 

More from Takashi Suzuki (9)

到着予想時間サービスの特徴量のニアリアルタイム化
到着予想時間サービスの特徴量のニアリアルタイム化到着予想時間サービスの特徴量のニアリアルタイム化
到着予想時間サービスの特徴量のニアリアルタイム化
 
AI予約サービスのMLOps事例紹介
AI予約サービスのMLOps事例紹介AI予約サービスのMLOps事例紹介
AI予約サービスのMLOps事例紹介
 
Kubernetes超入門
Kubernetes超入門Kubernetes超入門
Kubernetes超入門
 
MOVの機械学習システムを支えるMLOps実践
MOVの機械学習システムを支えるMLOps実践MOVの機械学習システムを支えるMLOps実践
MOVの機械学習システムを支えるMLOps実践
 
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについてタクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
 
MOV お客さま探索ナビの GCP ML開発フローについて
MOV お客さま探索ナビの GCP ML開発フローについてMOV お客さま探索ナビの GCP ML開発フローについて
MOV お客さま探索ナビの GCP ML開発フローについて
 
[Gree] DataEngConf NYC’18 セッションサマリー #1
[Gree] DataEngConf NYC’18 セッションサマリー #1[Gree] DataEngConf NYC’18 セッションサマリー #1
[Gree] DataEngConf NYC’18 セッションサマリー #1
 
[Gree] Dialogflowを利用したチャットボット導入事例
[Gree] Dialogflowを利用したチャットボット導入事例[Gree] Dialogflowを利用したチャットボット導入事例
[Gree] Dialogflowを利用したチャットボット導入事例
 
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
 

Recently uploaded

【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
atsushi061452
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 

Recently uploaded (15)

【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 

GOの機械学習システムを支えるMLOps事例紹介

  • 1. Mobility Technologies Co., Ltd. GOの機械学習システムを支える MLOps事例紹介 開発本部 AI技術開発部 MLエンジニアリンググループ 鈴木 隆史
  • 2. Mobility Technologies Co., Ltd. 自己紹介 2 鈴木 隆史 | Takashi Suzuki 開発本部 AI技術開発部 MLエンジニアリンググループ ● 2019年DeNA入社 機械学習の実験基盤やパイプラインの設計開発を担当 ● 2020年Mobility Technologies転籍
  • 5. Mobility Technologies Co., Ltd. GOのとある機械学習システムにおける、いくつかのMLOpsについてお話します ● Test ● Validation ● Deploy 今日話すこと 5
  • 6. Mobility Technologies Co., Ltd. お客様探索ナビについて 01 6
  • 7. Mobility Technologies Co., Ltd. プロダクトの課題設定 7 乗務員は歩合制 収入は 探客スキルに依存
  • 8. Mobility Technologies Co., Ltd. お客様探索ナビとは 8 需要を予測して最適な 営業経路を提案
  • 9. Mobility Technologies Co., Ltd. お客様探索ナビとは 9 需要を予測して最適な 営業経路を提案 需要供給予測 ● 特徴量作成 ● MLモデル推論 走行ルート推薦 ● 最適方策の獲得 ● 全体最適化 ベースとなる技術
  • 10. Mobility Technologies Co., Ltd. 機械学習による需要供給予測 10 直近の乗車数 周辺の乗車数 各種統計量 MLモデル 直後30分に発生 する乗車数
  • 11. Mobility Technologies Co., Ltd. 強化学習による走行ルート推薦 11 行動:進行方向 報酬:売上など 報酬 行動 環境 エージェント
  • 12. Mobility Technologies Co., Ltd. MLシステムフロー 02 12
  • 13. Mobility Technologies Co., Ltd. MLシステムのリアルタイムデータの重要性 13 ● 時間帯による需要変化、タクシーの供給変化など、刻一刻と状況は変化する ● 例: 突然の商業施設閉館による道路の需要減 高需要道路 低需要道路 施設閉館 Map data ©2021 Google
  • 14. Mobility Technologies Co., Ltd. MLシステムのワークフロー 14 ● 新鮮なデータで推論・学習(モデル更新)を行う必要がある 現在のモデルでリアルタイムデータに対し推論(短期の変化) 直近のデータを用いて学習・モデルを更新(中長期の変化) 前処理 推論 推論パイプライン (5分ごと) 統計値 作成 前処理 MLモデル更新パイプライン (1週ごと) 学習 バッチ推論 シミュレーション
  • 15. Mobility Technologies Co., Ltd. MLモデル更新パイプライン(1週ごと) 15 統計値作成 前処理 学習 バッチ推論 AI Platform Training BigQuery
  • 16. Mobility Technologies Co., Ltd. MLモデル更新パイプライン(1週ごと) 16
  • 17. Mobility Technologies Co., Ltd. 推論パイプライン(5分ごと) 17
  • 18. Mobility Technologies Co., Ltd. Test MLOps 03 18
  • 19. Mobility Technologies Co., Ltd. MLシステムにおけるテストの難しさ 19 統計値 作成 前処理 学習 バッチ 推論 シミュレータ デプロイサイクル ● 開始から終了まで10時間ほど要する ● 学習など、ステップ単位でも1時間以上要するものも ● BigQuery や GCS を含む複雑な依存関係 ● 動作の保証だけでなく、精度も考慮する必要
  • 20. Mobility Technologies Co., Ltd. MLシステムにおけるテストの難しさ 20 精度テスト - 最新 develop image で定期実行 - 10時間ほど要する - プロダクションと同条件のデータ - 精度の面は監視・通知によってカバー - 問題なければ本番環境にデプロイ 動作テスト - ローカルもしくはCI で実行するテスト - 30分ほど要する - 最小限のダミーデータを用いる - 精度やデータノイズは一切見ない - パスすれば開発環境まで自動デプロイ
  • 21. Mobility Technologies Co., Ltd. 動作テスト 21 Github + CircleCI + PyTest によるテスト運用 ● 運用ルール: PR を出す時は最低限テストをパスさせる ● develop ブランチにマージされたら、 CI で最新イメージをビルド ○ 開発環境 Airflow に自動デプロイ ○ 精度含めたテストはパイプラインの定期実行で検知 ローカル開発環境 Push PyTest Job Deploy Job ※develop branch のみ ※全 branch Hook Composer Image Hash
  • 22. Mobility Technologies Co., Ltd. 動作テスト 22 ● 基本的にパイプラインの流れを最低限のデータで再現 ● CircleCI 上での実行時間は30分弱 統計値作成 前処理 学習 バッチ推論 ※最小限のデータで実行 AI Platform は使わずローカルリソースで
  • 23. Mobility Technologies Co., Ltd. Pytestの設計 23 ● Setup/Teardown で一時データセットやバケットを用意 テスト実行ごとにハッシュ値を用意し、 BQ や GCS 上で被りがないように
  • 24. Mobility Technologies Co., Ltd. Test MLOps まとめ 24 1. 動作テスト - 開発サイクルにおけるテスト - Github + CircleCI + PyTestで最小限データと実行時間で動作確認 2. 精度テスト - 開発パイプラインにおけるテスト - 最新 develop branch に自動追従させ、定期実行 - 精度面は監視運用で検証
  • 25. Mobility Technologies Co., Ltd. Validation MLOps 04 25
  • 26. Mobility Technologies Co., Ltd. MLシステムにおける精度検証の難しさ 26 学習データのノイズや時期性 モデル精度の経年悪化 テストデータのノイズ等 正しい精度評価ができない 精度が悪いモデルを本番デプロイ 経路、UXに悪影響 検証項目
  • 27. Mobility Technologies Co., Ltd. デプロイフローにおける精度検証 27 RMSE (Root Mean Squared Error) ● 道路ごとに、ある時間枠で何台のタクシーが通るか → 供給 ● 道路ごとに、ある時間枠で何回の乗車が発生するか → 需要 ● これらを2つのモデルで予測しており、その誤差を見る シミュレーション結果 ● バッチ推論の結果を用いた経路に従うと、どれだけの営収となるか
  • 28. Mobility Technologies Co., Ltd. デプロイフローにおける精度検証 28 統計値 作成 前処理 学習 バッチ 推論 BQの一時テーブルを利用して平均値がおかしな値でないかを確認 閾値は少し緩めだが、多段なので許容 統計値の Validation シミュレータ
  • 29. Mobility Technologies Co., Ltd. デプロイフローにおける精度検証 29 学習したMLモデルが 検証データに対する RMSE が統計値よりも悪ければ弾く 学習時の Validation 統計値 作成 前処理 学習 バッチ 推論 シミュレータ
  • 30. Mobility Technologies Co., Ltd. デプロイフローにおける精度検証 30 テストデータに対する RMSE がプロファイルよりも悪ければ弾く バッチ推論時の Validation テストデータに対する RMSE が統計値よりも悪ければ弾く Monitoring で監視し、ここで弾かれたらアラートを飛ばす バッチ推論時の Validation 統計値 作成 前処理 学習 バッチ 推論 シミュレータ
  • 31. Mobility Technologies Co., Ltd. デプロイフローにおける精度検証 31 統計値 作成 前処理 学習 バッチ 推論 シミュレータ シミュレーション結果が現行モデルを超えていなければ弾く シミュレータの Validation
  • 32. Mobility Technologies Co., Ltd. Validation MLOps まとめ 32 1. モデルデプロイ時には多段Validation - データ異常値によるモデルと統計値のズレを想定する - デプロイ時には多段Validationで精度を担保 - デプロイフローを1週毎に実施することで精度劣化を防ぐ
  • 33. Mobility Technologies Co., Ltd. Deploy MLOps 05 33
  • 34. Mobility Technologies Co., Ltd. ● 手動デプロイと自動デプロイの選択 ○ 手動にすれば質の悪いモデルデプロイは防げるが、人的コストがかか る ○ 自動デプロイの場合は、リリース時の精度担保をどうするか ● 障害等により時間内にモデル推論が終わらなかった際のfallback ● デプロイ後のモデル精度を監視する仕組み MLシステムにおけるデプロイ周りの難しさ 34
  • 35. Mobility Technologies Co., Ltd. ● 前項で話したとおり、デプロイ前に4段のValidationでモデル/統計値の精度 面チェックは実施済み ● そのためValidation通過済みのモデルに関しては自動デプロイをしてもよい という判断へ ● その分、デプロイ後の精度監視を強化していく 自動デプロイ 35
  • 36. Mobility Technologies Co., Ltd. 統計値によるフォールバック 36 デプロイ対象 ● 推論結果が一定時間更新されない際、統計値を基にした経路が引かれる ● つまり推論パイプラインが止まっても、ナビは機能する(重要) ● しかし推論を基にした経路のほうがシミュレーション営収が良い 場合がほとんど モデル推論バケット 推論パイプライン (5分ごと) 統計値バケット 経路生成API アップロード デプロイパイプライン (週ごと) アップロード 直近30分の結果があれば 推論データを参照
  • 37. Mobility Technologies Co., Ltd. 統計値によるフォールバック 37 デプロイ対象 ● 推論結果が一定時間更新されない際、統計値を基にした経路が引かれる ● つまり推論パイプラインが止まっても、ナビは機能する(重要) ● しかし推論を基にした経路のほうがシミュレーション営収が良い 場合がほとんど モデル推論バケット 推論パイプライン (5分ごと) 統計値バケット 経路生成API 停止 デプロイパイプライン (週ごと) アップロード 直近30分の結果がなければ 統計値を参照
  • 38. Mobility Technologies Co., Ltd. デプロイ済みモデルの精度劣化監視 38 評価パイプライン(1日1回) ● 直近1日の推論結果を Ground Truth (実際のログ)を用いて評価 ● 推論 RMSE と統計値 RMSE をカスタム指標として Monitoring に送信 ● 推論結果が統計値よりも悪かった場合にアラート発火 評価パイプライン (日ごと) カスタム指標 送信 Monitoring 精度が 悪ければ
  • 39. Mobility Technologies Co., Ltd. Deploy MLOps まとめ 39 1. 統計値でシステム担保 - MLリアルタイム推論の停止前提に統計値でフォールバック 2. 監視パイプラインで事後精度の担保 - モデル推論が統計値よりも悪かった場合は通知 - 通知が続いた場合は、異常値などによるモデル精度劣化を検証
  • 40. Mobility Technologies Co., Ltd. まとめ 06 40
  • 41. Mobility Technologies Co., Ltd. 人的リソースの削減 ● 枯れたMLシステムとなると、システム担保のための定常的なエンジニア工数削減が 重要になる ● テスト、精度検証、デプロイ、監視まわりでしきい値や担保したい精度を定義すること で、ほとんどのMLシステムは自動化が可能 まとめ 41
  • 42. Mobility Technologies Co., Ltd. Appendix 42 お客様探索ナビのアルゴリズムやMLOps全般については DeNA TechConでの登壇資料をご覧ください https://www.slideshare.net/dena_tech/mov-mlops https://www.slideshare.net/dena_tech/dena-techcon-2019- 132196217
  • 43. Mobility Technologies Co., Ltd. 技術全般 Twitter @mot_techtalk Thank You! We Are Hiring! 43 AI関連 Twitter @mot_ai_tech