Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

先駆者に学ぶ MLOpsの実際

13,343 views

Published on

「MLOpsとはなにか?」という質問に対し、「データサイエンティストが、システム開発において、やらないことすべて」と定義した上で、MLOpsの説明、海外事例、「JapanTaxi」アプリでの事例を説明します

Published in: Technology
  • Be the first to comment

先駆者に学ぶ MLOpsの実際

  1. 1. Mobility Technologies Co., Ltd. 第1回 MLOps 勉強会 Tokyo 先駆者に学ぶMLOpsの実践 株式会社 Mobility Technologies 渡部 徹太郎/齋藤 智輝 2020/8/21
  2. 2. Mobility Technologies Co., Ltd.2 1. MLOpsとは Agenda 3.到着時間予想PJにおけるMLOpsの実践 2.海外事例紹介「MLOps NYC 19」
  3. 3. Mobility Technologies Co., Ltd. MLOpsとは1 3
  4. 4. Mobility Technologies Co., Ltd. 自己紹介 4 ID :fetaro 名前:渡部 徹太郎 学生:東京工業大学でデータベースと情報検索の研究 (@日本データベース学会) 職歴: * 野村総合研究所(NRI) - オンライントレードシステム基盤 - オープンソース技術部隊 * リクルートテクノロジーズ - ビッグデータ分析基盤 * MobilityTechnologies - データエンジニア エディタ:emacs派→ InteliJ派 趣味:麻雀、自宅サーバ 著書
  5. 5. Mobility Technologies Co., Ltd. MLOpsとは、システム開発において、 データサイエンティストがやらないこと全て MLOpsとは 5 と定義して発表を続けます
  6. 6. Mobility Technologies Co., Ltd. データサイエンティストがやること 6 例:商品レコメンド ID 性別 年齢 目的 変数 xxx 女 20 … A yyy 男 30 … B 特徴量生成 データベース or CSV 元データ 推論モデル の実装 学習 データ { 0.1, 0.5, 0.4, …. , 1} { 0.1, 0.6, 0.6, …. , 0} 推論 モデル 論文 抽出 推定済み モデル 学習 評価用 データ 精度 論文
  7. 7. 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等) 開発ツール準備 ソースコード管理  データサイエンティストが研究開発するための環境を準備する。  また、実験の結果を管理する仕組みを準備するよよりよい。
  8. 8. Mobility Technologies Co., Ltd.  素晴らしい精度が出て、いよいよ本番システムに組み込む事が決まった。  しかし、本番データを用いたモデル推定には多くのやることがある。  データサイエンティストの成果物は、 入力が「データウェアハウス」で出力が「推定済みモデル」のバッチ処理コンポーネントとみなせる MLOpsがやること その2 本番データでのモデル推定 8 データ ウェア ハウス MLバッチ モデル これを本番システムに組み込む
  9. 9. Mobility Technologies Co., Ltd. MLOpsがやること その2 本番データでのモデル推定 9 分析システム事業システム Webサイト ユーザ データ収集 データ レイク 事業 DB データ ウェア ハウス データ 整備 ML バッチ モデルアイテム 検索・購入 ログ モデルを作るためには、事業システムからデータを収集しMLコンポーネントに 渡す全体を作る必要がある  モデル推定のための計算リソースの確保(GPU等)も必要 このシステムを運用し続ける必要がある。 レポジトリ モデル 保存
  10. 10. Mobility Technologies Co., Ltd.  モデルができても、会社は1円も儲からない。利益向上につなげるためにはユーザにおすすめ商 品を提示する必要がある  推論APIを作る必要がある  大量の負荷に耐えられるように分散処理は欠かせない MLOpsがやること その3 推論結果のシステムへの組み込み 分析システム事業システム Webサイト ユーザ 推論API 商品レコメ ンド枠 レポジトリ モデル モデル 推論API モデル 推論API モデル ロードバランサ リリース 管理 リリース オンライ ンリクエ スト リリース ページアクセス おすすめ商品 10
  11. 11. Mobility Technologies Co., Ltd. おすすめ商品を出して終わりではない 本当に効果があるのか?今でも効果があるのか効果のモニタリングが必要  レコメンドした場合としていない場合で比較(ABテスト) MLOpsがやること その4 効果モニタリング 11 分析システム 可視化 ツール 事業システム 推論 API Web サイ ト 行動ログ 購買ログ 3.おすすめ商品 1.カスタマの行動 4.その後の行動 5.記録 2.記録 レコメンドあり レコメンドなし 6.アラート データ ウェア ハウス ユーザ 管理者 精度レポート
  12. 12. Mobility Technologies Co., Ltd. MLOpsとは、システム開発において、 データサイエンティストがやらないこと全て MLOpsとは 12 たくさんやることがある 参考資料 JapanTaxiにおけるMLOps 〜機械学習の開発運用プロセス〜 https://www.slideshare.net/tetsutarowatanabe/japantaximl-ops JapanTaxiにおけるSagemaker+αによる機械学習アプリケーションの本番運用 https://www.slideshare.net/tetsutarowatanabe/japantaxisagemaker 図解即戦力ビッグデータ分析システムのシステムと開発がしっかりわかる教科書 https://www.amazon.co.jp/dp/B07ZV863GY/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1
  13. 13. Mobility Technologies Co., Ltd. 海外事例紹介 「MLOps NYC 19」2 13
  14. 14. Mobility Technologies Co., Ltd.  著名なStrata Data Conferenceの近くの会場で開催されたカンファレンス  間違いなくStrataの参加者を取り込もうと狙ったカンファレンス  セッションは1並列だが、著名な企業の発表が多く内容の濃いカンファレンスだった  Uber, Netflix, Twitter, Walmart, Nike, New York Times, Google, Microsoft, Twitter, NVIDIA, Payoneer, Iguazio  参加費は約$300 「MLOps NYC 19」 にいってきました。 14 動画:https://www.youtube.com/playlist?list=PLH8M0UOY0uy6d_n3vEQe6J_gRBUrISF9m
  15. 15. Mobility Technologies Co., Ltd. モデル生成は全体のほんの一部 Uberの発表 15 バッチデータ 収集 ストリーム データ収集 特徴量 ストア ディープラーニングによる モデル生成 バッチ 推論 リアルタイム 推論 データレイク に書き戻し クライアント サービスに 予測結果表示
  16. 16. Mobility Technologies Co., Ltd. MLプロジェクトの60%〜80%がプロダ クションにならずに頓挫している  連携不足  IT担当、エンジニア、データ、そしてデータサ イエンスのチームの連携不足  データサイエンティストがエンジニアリングの 知識不足  ビジネスの理解を得られない  データの品質が不明瞭  ビジネスとの握りが曖昧  ビジネスへの説明不足  MLのOps(運用)の難しさ  データサイエンティストが書いたコードは本番 には採用できない  データのETLにかなり苦労する Walmartの発表 16 3つのゴールデンルールを作った 1. なぜ重要なのか?  だれかがそれに金を払うか  「Cool」なプロダクトはいらない 2. 説明できるか?  ビジネスの言葉で説明できるか 3. 実装できるか?  本番化する計画は明瞭か
  17. 17. Mobility Technologies Co., Ltd.  MLのプロジェクト  データ探索(〜2週間)  プロトタイピング(6〜8週間)  本番化 (12〜14週間)  リリース後のモデル更新 (〜8週間)  課題  プロトタイピング、本番化、リリース後 のモデル更新に時間がかかる  解決法  独自フレームワーク「Metaflow」の導入  Metaflowは以下の開発スタック全体を ラッピングしてくれる Netflixの発表 17 Metaflow
  18. 18. Mobility Technologies Co., Ltd. Strataカンファレンスの求人ボード データサイエンティスト並にデータエンジニアの求人が多い 18
  19. 19. Mobility Technologies Co., Ltd. 米国でも同じ悩みを抱えていており、 データエンジニアの求人が増えている 海外事例のまとめ 19 詳しくはこちらの資料も御覧ください MLOps NYC 19 & Strata Data Conference 2019 NewYork 注目セッションまとめ https://www.slideshare.net/tetsutarowatanabe/ml-ops-nyc-19-strata-data-conference-2019-newyork-203911948
  20. 20. Mobility Technologies Co., Ltd. 到着時間予想PJにおける MLOpsの実践3 20
  21. 21. Mobility Technologies Co., Ltd. ID  @tstomoki 名前  齋藤智輝 学生  東京大学(学部・大学院)で船の研究をしていました 職歴  ヤフー株式会社  ナレッジパネルの開発  ユーザ位置情報を用いた研究開発  株式会社バンク  機械学習モデルの開発・導入  Mobility Technologies株式会社  AI技術開発部 アルゴリズムグループ 自己紹介 21 エディタ  Emacs => Atom => Emacs + PyCharm 役割 データサイエンティスト 兼 データエンジニア
  22. 22. Mobility Technologies Co., Ltd. Mobility Technologiesとは 22 配車関連事業 広告決済事業 乗務員向けソリューション事業 DRIVE CHART・ドラレコ事業 次世代向けR&D事業
  23. 23. Mobility Technologies Co., Ltd. 到着時間予測システム概要・用途 23 「JapanTaxi」アプリや乗務員用端末、探車の際に機械学習モデルを使用 乗務員向けアプリ X分 探車範囲の算出 (X分で到着できる車両に配車依頼) ユーザ向けアプリ
  24. 24. Mobility Technologies Co., Ltd. ABテストなどによる効果検証  ユーザアプリ用API  1%程度のキャンセル率低下  乗務員用API  20%以上の配車率増加 到着時間予測システム効果検証 24 ※ • キャンセル率 • ユーザが注文した後、タクシーが到着する前にキャンセルしてしまう割合 • 配車率 • 注文に対して実際にタクシーを呼べた割合 (近くにタクシーがいない、乗務員が了承してくれない場合に低下)
  25. 25. Mobility Technologies Co., Ltd. データサイエンティストの担当プロセス 25 データマート 特徴量 変換用データ 学習データ 特徴量 モデル構築用 データ 学習 データ作成 モデル作成 Jupyter Notebookなどを データエンジニアにパス モデル評価
  26. 26. Mobility Technologies Co., Ltd.26 データマート 特徴量 変換用データ 学習データ 特徴量 モデル構築用 データ モデル作成 データウェアハウス - 車両位置 - 注文情報, etc. データ変換 ① 学習 データ作成 ② ③ ④ モデル評価 Google BigQuery Python Script Amazon S3 Amazon SageMaker データエンジニアの担当プロセス (データ準備)
  27. 27. Mobility Technologies Co., Ltd. データエンジニアの担当プロセス (成果物の管理) 27 - 推論用スクリプト - モデル構造 - weights, etc. モデル成果物 Google BigQuery Python Script Amazon S3 Amazon SageMaker データマート 特徴量 変換用データ 学習データ 特徴量 モデル構築用 データ モデル作成 データウェアハウス - 車両位置 - 注文情報, etc. データ変換 ① 学習 データ作成 ② モデル成果物 - 推論用スクリプト - モデル構造 - weights, etc. ③ ④ モデル評価 モデル評価結果 - 評価用入力 - 評価ログ モデル評価結果 - 評価サマリ - 評価詳細
  28. 28. Mobility Technologies Co., Ltd. データエンジニアの担当プロセス (評価の可視化・判断) 28 - 推論用スクリプト - モデル構造 - weights, etc. モデル成果物 データマート 特徴量 変換用データ 学習データ 特徴量 モデル構築用 データ モデル作成 データウェアハウス - 車両位置 - 注文情報, etc. データ変換 ① 学習 データ作成 ② モデル成果物 - 推論用スクリプト - モデル構造 - weights, etc. ③ ④ モデル評価 モデル評価結果 - 評価用入力 - 評価ログ モデル評価結果 - 評価サマリ - 評価詳細 リリース 判断 リリース ⑤ Google BigQuery Python Script Amazon S3 Amazon SageMaker
  29. 29. Mobility Technologies Co., Ltd. サービスで参照できるも準備 データエンジニアの担当プロセス(オンライン処理部分) 29 モデルエンドポイント ML Endpoint Gateway 特徴量変換 推論コンテナ Response App Server Request Amazon API Gateway Amazon Lambda Amazon SageMaker リリース ⑤
  30. 30. 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 リリース後の監視システムまでを担当
  31. 31. Mobility Technologies Co., Ltd. 機械学習モデルをサービスで運用するにはやることが多い  データサイエンティストがやらないこと全て(MLOpsの定義)  定常的にモデル精度やヘルスチェックの必要性 本番用コードの品質維持  データサイエンティストが書いたコードは本番には採用できない  システムが落ちないような考え(エラーハンドリングなど) サイエンティストの負担軽減  データサイエンティストが全て行うのは複雑、時間がかかる  データサイエンティストの負担を軽減することでより効率的な開発が可能 まとめ 31
  32. 32. 文章·画像等の内容の無断転載及び複製等の行為はご遠慮ください。 Mobility Technologies Co., Ltd. 32 仲間募集中!

×