Slide 1

Slide 1 text

Mobility Technologies Co., Ltd. 第1回 MLOps 勉強会 Tokyo 先駆者に学ぶMLOpsの実践 株式会社 Mobility Technologies 渡部 徹太郎/齋藤 智輝 2020/8/21

Slide 2

Slide 2 text

Mobility Technologies Co., Ltd. 2 1. MLOpsとは Agenda 3.到着時間予想PJにおけるMLOpsの実践 2.海外事例紹介「MLOps NYC 19」

Slide 3

Slide 3 text

Mobility Technologies Co., Ltd. MLOpsとは 1 3

Slide 4

Slide 4 text

Mobility Technologies Co., Ltd. ⾃⼰紹介 4 ID :fetaro 名前:渡部 徹太郎 学生:東京工業大学でデータベースと情報検索の研究 (@日本データベース学会) 職歴: * 野村総合研究所(NRI) - オンライントレードシステム基盤 - オープンソース技術部隊 * リクルートテクノロジーズ - ビッグデータ分析基盤 * Mobility Technologies - データエンジニア エディタ:emacs派→ InteliJ派 趣味:麻雀、自宅サーバ 著書

Slide 5

Slide 5 text

Mobility Technologies Co., Ltd. MLOpsとは、システム開発において、 データサイエンティストがやらないこと全て MLOpsとは 5 と定義して発表を続けます

Slide 6

Slide 6 text

Mobility Technologies Co., Ltd. データサイエンティストがやること 6 n例:商品レコメンド ID 性別 年齢 ⽬的 変数 xxx ⼥ 20 … A yyy 男 30 … B 特徴量⽣成 データベース or CSV 元データ 推論モデル の実装 学習 データ { 0.1, 0.5, 0.4, …. , 1} { 0.1, 0.6, 0.6, …. , 0} 推論 モデル 論⽂ 抽出 推定済み モデル 学習 評価⽤ データ 精度 論⽂

Slide 7

Slide 7 text

Mobility Technologies Co., Ltd. MLOpsがやること その1 環境整備・成果物管理 7 ID 性別 年齢 ⽬的 変数 xxx ⼥ 20 … A yyy 男 30 … B 特徴量⽣成 データウェアハウス 元データ 推論モデル の実装 学習 データ { 0.1, 0.5, 0.4, …. , 1} { 0.1, 0.6, 0.6, …. , 0} 推論 モデル 論⽂ 抽出 推定済み モデル 学習 評価⽤ データ 精度 論⽂ データの準備 アノテーションツール準備 データの バージョン管理 データの バージョン管理 計算リソースの準備 (GPU等) 開発ツール準備 ソースコード管理 n データサイエンティストが研究開発するための環境を準備する。 n また、実験の結果を管理する仕組みを準備するよよりよい。

Slide 8

Slide 8 text

Mobility Technologies Co., Ltd. n 素晴らしい精度が出て、いよいよ本番システムに組み込む事が決まった。 n しかし、本番データを⽤いたモデル推定には多くのやることがある。 n データサイエンティストの成果物は、 ⼊⼒が「データウェアハウス」で出⼒が「推定済みモデル」のバッチ処理コンポーネントとみなせる MLOpsがやること その2 本番データでのモデル推定 8 データ ウェア ハウス MLバッチ モデル これを本番システムに組み込む

Slide 9

Slide 9 text

Mobility Technologies Co., Ltd. MLOpsがやること その2 本番データでのモデル推定 9 分析システム 事業システム Webサイト ユーザ データ収集 データ レイク 事業 DB データ ウェア ハウス データ 整備 ML バッチ モデル アイテム 検索・購⼊ ログ nモデルを作るためには、事業システムからデータを収集しMLコンポーネントに 渡す全体を作る必要がある n モデル推定のための計算リソースの確保(GPU等)も必要 nこのシステムを運⽤し続ける必要がある。 レポジトリ モデル 保存

Slide 10

Slide 10 text

Mobility Technologies Co., Ltd. n モデルができても、会社は1円も儲からない。利益向上につなげるためにはユーザにおすすめ商 品を提⽰する必要がある n 推論APIを作る必要がある n ⼤量の負荷に耐えられるように分散処理は⽋かせない MLOpsがやること その3 推論結果のシステムへの組み込み 分析システム 事業システム Webサイト ユーザ 推論API 商品レコメ ンド枠 レポジトリ モデル モデル 推論API モデル 推論API モデル ロードバランサ リリース 管理 リリース オンライ ンリクエ スト リリース ページアクセス おすすめ商品 10

Slide 11

Slide 11 text

Mobility Technologies Co., Ltd. nおすすめ商品を出して終わりではない n本当に効果があるのか?今でも効果があるのか効果のモニタリングが必要 n レコメンドした場合としていない場合で⽐較(ABテスト) MLOpsがやること その4 効果モニタリング 11 分析システム 可視化 ツール 事業システム 推論 API Web サイ ト ⾏動ログ 購買ログ 3.おすすめ商品 1.カスタマの⾏動 4.その後の⾏動 5.記録 2.記録 レコメンドあり レコメンドなし 6.アラート データ ウェア ハウス ユーザ 管理者 精度レポート

Slide 12

Slide 12 text

Mobility Technologies Co., Ltd. MLOpsとは、システム開発において、 データサイエンティストがやらないこと全て MLOpsとは 12 たくさんやることがある 参考資料 JapanTaxiにおけるMLOps 〜機械学習の開発運⽤プロセス〜 h"ps://www.slideshare.net/tetsutarowatanabe/japantaximl-ops JapanTaxiにおけるSagemaker+αによる機械学習アプリケーションの本番運⽤ h"ps://www.slideshare.net/tetsutarowatanabe/japantaxisagemaker 図解即戦⼒ビッグデータ分析システムのシステムと開発がしっかりわかる教科書 h"ps://www.amazon.co.jp/dp/B07ZV863GY/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1

Slide 13

Slide 13 text

Mobility Technologies Co., Ltd. 海外事例紹介 「MLOps NYC 19」 2 13

Slide 14

Slide 14 text

Mobility Technologies Co., Ltd. n 著名なStrata Data Conferenceの近くの会場で開催されたカンファレンス n 間違いなくStrataの参加者を取り込もうと狙ったカンファレンス n セッションは1並列だが、著名な企業の発表が多く内容の濃いカンファレンスだった n Uber, Netflix, Twitter, Walmart, Nike, New York Times, Google, Microsoft, Twitter, NVIDIA, Payoneer, Iguazio n 参加費は約$300 「MLOps NYC 19」 にいってきました。 14 動画:https://www.youtube.com/playlist?list=PLH8M0UOY0uy6d_n3vEQe6J_gRBUrISF9m

Slide 15

Slide 15 text

Mobility Technologies Co., Ltd. nモデル⽣成は全体のほんの⼀部 Uberの発表 15 バッチデータ 収集 ストリーム データ収集 特徴量 ストア ディープラーニングによる モデル⽣成 バッチ 推論 リアルタイム 推論 データレイク に書き戻し クライアント サービスに 予測結果表⽰

Slide 16

Slide 16 text

Mobility Technologies Co., Ltd. nMLプロジェクトの60%〜80%がプロダ クションにならずに頓挫している n 連携不⾜ n IT担当、エンジニア、データ、そしてデータサ イエンスのチームの連携不⾜ n データサイエンティストがエンジニアリングの 知識不⾜ n ビジネスの理解を得られない n データの品質が不明瞭 n ビジネスとの握りが曖昧 n ビジネスへの説明不⾜ n MLのOps(運⽤)の難しさ n データサイエンティストが書いたコードは本番 には採⽤できない n データのETLにかなり苦労する Walmartの発表 16 n3つのゴールデンルールを作った 1. なぜ重要なのか? n だれかがそれに⾦を払うか n 「Cool」なプロダクトはいらない 2. 説明できるか? n ビジネスの⾔葉で説明できるか 3. 実装できるか? n 本番化する計画は明瞭か

Slide 17

Slide 17 text

Mobility Technologies Co., Ltd. n MLのプロジェクト n データ探索(〜2週間) n プロトタイピング(6〜8週間) n 本番化 (12〜14週間) n リリース後のモデル更新 (〜8週間) n 課題 n プロトタイピング、本番化、リリース後 のモデル更新に時間がかかる n 解決法 n 独⾃フレームワーク「Metaflow」の導⼊ n Metaflowは以下の開発スタック全体を ラッピングしてくれる Netflixの発表 17 Metaflow

Slide 18

Slide 18 text

Mobility Technologies Co., Ltd. nStrataカンファレンスの求⼈ボード データサイエンティスト並にデータエンジニアの求⼈が多い 18

Slide 19

Slide 19 text

Mobility Technologies Co., Ltd. ⽶国でも同じ悩みを抱えていており、 データエンジニアの求⼈が増えている 海外事例のまとめ 19 詳しくはこちらの資料も御覧ください MLOps NYC 19 & Strata Data Conference 2019 NewYork 注⽬セッションまとめ h"ps://www.slideshare.net/tetsutarowatanabe/ml-ops-nyc-19-strata-data-conference-2019-newyork-203911948

Slide 20

Slide 20 text

Mobility Technologies Co., Ltd. 到着時間予想PJにおける MLOpsの実践 3 20

Slide 21

Slide 21 text

Mobility Technologies Co., Ltd. nID n @tstomoki n名前 n 齋藤智輝 n学⽣ n 東京⼤学(学部・⼤学院)で船の研究をしていました n職歴 n ヤフー株式会社 n ナレッジパネルの開発 n ユーザ位置情報を⽤いた研究開発 n 株式会社バンク n 機械学習モデルの開発・導⼊ n Mobility Technologies株式会社 n AI技術開発部 アルゴリズムグループ ⾃⼰紹介 21 nエディタ n Emacs => Atom => Emacs + PyCharm n役割 データサイエンティスト 兼 データエンジニア

Slide 22

Slide 22 text

Mobility Technologies Co., Ltd. Mobility Technologiesとは 22 配⾞関連事業 広告決済事業 乗務員向けソリューション事業 DRIVE CHART・ドラレコ事業 次世代向けR&D事業 Coming soon !!

Slide 23

Slide 23 text

Mobility Technologies Co., Ltd. 到着時間予測システム概要・⽤途 23 n「JapanTaxi」アプリや乗務員⽤端末、探⾞の際に機械学習モデルを使⽤ 乗務員向けアプリ X分 探⾞範囲の算出 (X分で到着できる⾞両に配⾞依頼) ユーザ向けアプリ

Slide 24

Slide 24 text

Mobility Technologies Co., Ltd. nABテストなどによる効果検証 n ユーザアプリ⽤API n 1%程度のキャンセル率低下 n 乗務員⽤API n 20%以上の配⾞率増加 到着時間予測システム効果検証 24 ※ • キャンセル率 • ユーザが注⽂した後、タクシーが到着する前にキャンセルしてしまう割合 • 配⾞率 • 注⽂に対して実際にタクシーを呼べた割合 (近くにタクシーがいない、乗務員が了承してくれない場合に低下)

Slide 25

Slide 25 text

Mobility Technologies Co., Ltd. データサイエンティストの担当プロセス 25 データマート 特徴量 変換⽤データ 学習データ 特徴量 モデル構築⽤ データ 学習 データ作成 モデル作成 Jupyter Notebookなどを データエンジニアにパス モデル評価

Slide 26

Slide 26 text

Mobility Technologies Co., Ltd. 26 データマート 特徴量 変換⽤データ 学習データ 特徴量 モデル構築⽤ データ モデル作成 データウェアハウス - ⾞両位置 - 注⽂情報, etc. データ変換 ① 学習 データ作成 ② ③ ④ モデル評価 Google BigQuery Python Script Amazon S3 Amazon SageMaker データエンジニアの担当プロセス (データ準備)

Slide 27

Slide 27 text

Mobility Technologies Co., Ltd. データエンジニアの担当プロセス (成果物の管理) 27 - 推論⽤スクリプト - モデル構造 - weights, etc. モデル成果物 Google BigQuery Python Script Amazon S3 Amazon SageMaker データマート 特徴量 変換⽤データ 学習データ 特徴量 モデル構築⽤ データ モデル作成 データウェアハウス - ⾞両位置 - 注⽂情報, etc. データ変換 ① 学習 データ作成 ② モデル成果物 - 推論⽤スクリプト - モデル構造 - weights, etc. ③ ④ モデル評価 モデル評価結果 - 評価⽤⼊⼒ - 評価ログ モデル評価結果 - 評価サマリ - 評価詳細

Slide 28

Slide 28 text

Mobility Technologies Co., Ltd. データエンジニアの担当プロセス (評価の可視化・判断) 28 - 推論⽤スクリプト - モデル構造 - weights, etc. モデル成果物 データマート 特徴量 変換⽤データ 学習データ 特徴量 モデル構築⽤ データ モデル作成 データウェアハウス - ⾞両位置 - 注⽂情報, etc. データ変換 ① 学習 データ作成 ② モデル成果物 - 推論⽤スクリプト - モデル構造 - weights, etc. ③ ④ モデル評価 モデル評価結果 - 評価⽤⼊⼒ - 評価ログ モデル評価結果 - 評価サマリ - 評価詳細 リリース 判断 リリース ⑤ Google BigQuery Python Script Amazon S3 Amazon SageMaker

Slide 29

Slide 29 text

Mobility Technologies Co., Ltd. nサービスで参照できるも準備 データエンジニアの担当プロセス(オンライン処理部分) 29 モデルエンドポイント ML Endpoint Gateway 特徴量変換 推論コンテナ Response App Server Request Amazon API Gateway Amazon Lambda Amazon SageMaker リリース ⑤

Slide 30

Slide 30 text

Mobility Technologies Co., Ltd. データエンジニアの担当プロセス(リリース後の監視) 30 モデルエンドポイント Gateway 特徴量変換 推論コンテナ Request Response システム監視 - エラー - リソース 利⽤率(CPU, Memory, Disk) - Model Latency, etc. ログ ログ App Server ※ ⾮常時に アラート送出 ログ 精度の詳細な可視化 ML Endpoint Amazon API Gateway Amazon Lambda Amazon SageMaker Amazon CloudWatch Amazon Simple Notification Service nリリース後の監視システムまでを担当

Slide 31

Slide 31 text

Mobility Technologies Co., Ltd. n機械学習モデルをサービスで運⽤するにはやることが多い n データサイエンティストがやらないこと全て(MLOpsの定義) n 定常的にモデル精度やヘルスチェックの必要性 n本番⽤コードの品質維持 n データサイエンティストが書いたコードは本番には採⽤できない n システムが落ちないような考え(エラーハンドリングなど) nサイエンティストの負担軽減 n データサイエンティストが全て⾏うのは複雑、時間がかかる n データサイエンティストの負担を軽減することでより効率的な開発が可能 まとめ 31

Slide 32

Slide 32 text

⽂章·画像等の内容の無断転載及び複製等の⾏為はご遠慮ください。 Mobility Technologies Co., Ltd. 32 仲間募集中!