Upgrade to Pro — share decks privately, control downloads, hide ads and more …

機械学習モデルの運用と実用的なアプローチ

 機械学習モデルの運用と実用的なアプローチ

Databricks Japan

May 30, 2024
Tweet

More Decks by Databricks Japan

Other Decks in Technology

Transcript

  1. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    機械学習モデルの運⽤と 実⽤的なアプローチ 1
  2. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    質問は Slido まで https://app.sli.do/event/nmvxCgircnNSMN85DXJT7e/live/questions 2 #dmm_databricks
  3. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    アジェンダ • はじめに • 機械学習モデルの運⽤ ◦ MLOps ◦ 必要な⼈員とプロセス • 実⽤的なアプローチ ◦ 環境 ◦ コードとモデル ◦ リファレンスアーキテクチャ • 参考資料 3 #dmm_databricks
  4. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    はじめに • 今⽇話さないこと ◦ 特定の機械学習アルゴリズムについて ◦ 具体的なツールの使い⽅について ◦ 具体的な実装について • 今⽇ちょっとしか話さないこと ◦ Databricks について 4 #dmm_databricks
  5. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    ML Code Configuration Data Collection Data Verification Feature Extraction Machine Resource Management Analysis Tools Process Management Tools Serving Infrastructure Monitoring “Hidden Technical Debt in Machine Learning Systems,” Google NIPS 2015 Figure 1: 中央の⼩さなボックスで⽰されているように、実際の ML システムのうち ML コードで構成されて いるのはごく⼀部。必要な周辺インフラストラクチャは広⼤かつ複雑。 MLの最も難しい部分はMLではない
  6. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    MLシステムのパフォーマンス、安定性、⻑期的な効率性を改善するためのデータ、コード、 モデルの管理に対する一連のプロセスと自動化処理 MLOps 7 MLOps = DataOps + DevOps + ModelOps #dmm_databricks
  7. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    なぜMLOpsが必要なのか リスクの軽減に有⽤ 8 • 技術的なリスク - 精度の低いモデル、壊れやすいインフラ • コンプライアンスのリスク - 規制や企業ポリシーの違反 自動化を通じて長期的な効率を改善 • モデルのプロダクションへのデリバリーを効率化 • プロダクションでエラーが発生する前に捕捉 • 手動プロセスによる遅延を回避 #dmm_databricks
  8. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    基本原則 9 モジュール化してMLOpsを実装 プロセスを自動化 機械学習に対するデータ中心アプローチを採用 常にビジネスモデルを念頭に #dmm_databricks
  9. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    10 必要な人員 データパイプラインを構築 モデルのトレーニングとチューニング プロダクションにMLモデルをデプロイ データガバナンスとコンプライアンスに責任を持つ MLソリューションのビジネス価値に責任を持つ #dmm_databricks
  10. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    11 必要なプロセス データ準備 探索的データ分 析 特徴量エンジニ アリング モデル トレーニング モデル評価 デプロイメント モニタリング #dmm_databricks
  11. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    環境 • Dev ◦ データサイエンティスト/機械学習エンジニアが ⾃由に開発できる環境 ◦ 任意のコードを実⾏可能 • Staging ◦ Dev で開発された機能を本番環境にリリースされる前にテスト • Prod ◦ 本番環境 13 #dmm_databricks
  12. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    環境 • 環境によって資産を分離 ◦ コード ◦ モデル ◦ データ 14 #dmm_databricks
  13. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    環境 • 環境によって資産を分離 ◦ コード ◦ モデル ◦ データ 15 MLOps 特有 #dmm_databricks
  14. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    モデルとコード 多くの場合、モデルとコードのライフサイクルは⾮同期 • 週次の不正検知モデルの更新 • モデルの更新あり • コードの変更なし • 後処理のアルゴリズムの変更 • モデルの更新なし • コードの変更あり 16 #dmm_databricks
  15. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    モデルとコードのライフサイクル モデル中⼼のデプロイパターンとコード中⼼のデプロイパターン 17 #dmm_databricks
  16. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    モデルとコードのライフサイクル 18 #dmm_databricks モデルのデプロイ コードのデプロイ Dev • 学習コードの開発 • 補助コードの開発 • プロダクションデータで学習 • 補助コードとモデルをプロモート • 学習コードの開発 • 補助コードの開発 • Dev データで学習 • コードをプロモート Staging • モデルをテスト • 補助コードをテスト • 補助コードとモデルをプロモート • プロダクションデータのサブセットで学習 • 補助コードをテスト • コードをプロモート Production • モデルと補助コードをデプロイ • プロダクションデータで学習 • モデルをテスト • モデルと補助コードをデプロイ
  17. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    モデルとコードのライフサイクル 19 #dmm_databricks モデルのデプロイ コードのデプロイ Dev • 学習コードの開発 • 補助コードの開発 • プロダクションデータで学習 • 補助コードとモデルをプロモート • 学習コードの開発 • 補助コードの開発 • Dev データで学習 • コードをプロモート Staging • モデルをテスト • 補助コードをテスト • 補助コードとモデルをプロモート • プロダクションデータのサブセットで学習 • 補助コードをテスト • コードをプロモート Production • モデルと補助コードをデプロイ • プロダクションデータで学習 • モデルをテスト • モデルと補助コードをデプロイ • 1回限りの学習 • 学習に⾮常に時間がかかる場合
  18. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    モデルとコードのライフサイクル 20 #dmm_databricks モデルのデプロイ コードのデプロイ Dev • 学習コードの開発 • 補助コードの開発 • プロダクションデータで学習 • 補助コードとモデルをプロモート • 学習コードの開発 • 補助コードの開発 • Dev データで学習 • コードをプロモート Staging • モデルをテスト • 補助コードをテスト • 補助コードとモデルをプロモート • プロダクションデータのサブセットで学習 • 補助コードをテスト • コードをプロモート Production • モデルと補助コードをデプロイ • プロダクションデータで学習 • モデルをテスト • モデルと補助コードをデプロイ RECOMMENDED
  19. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    リファレンスーアキテクチャ 21 #dmm_databricks
  20. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Dev Staging Production リファレンスーアキテクチャ 22 #dmm_databricks
  21. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Dev 24 本番データへのアクセス 読み取り専⽤が望ましい #dmm_databricks
  22. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Dev 26 特徴量‧モデルを保存 出⼒先はDev⽤ストレージ 実験の結果を記録 #dmm_databricks
  23. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Dev 27 コンプライアンスや精度チェック後 Devブランチにコミット #dmm_databricks
  24. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Staging 29 • CIによる統合テストの⾃動実⾏ • Training • Validation • Deployment • Inference • Monitoring #dmm_databricks
  25. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Production 31 • 学習後にレジストリに モデルを登録 • 各種チェック後エイリアスを Challenger に設定 #dmm_databricks
  26. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Production 32 • Champion と⽐較 • 精度が勝れば Challenger を Champion に昇格 #dmm_databricks
  27. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Production 33 APIとしてサービング アプリケーションからリクエストを 受け付ける #dmm_databricks
  28. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Production 34 推論を事前計算する場合は バッチ or ストリーミングのパイプラインを作成 #dmm_databricks
  29. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    Production 35 推論精度や⼊⼒データのドリフトを モニタリング #dmm_databricks
  30. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    参考資料 • The Big Book of MLOps https://www.databricks.com/resources/ebook/the-big-book-of-mlops ◦ 約80ページの超⼤作 ◦ LLM Ops についても記載 ◦ 以下のQRコードか「The Big Book of MLOps」で検索🔎 36 #dmm_databricks
  31. ©2023 Databricks Inc. — All rights reserved Confidential and Proprietary

    各種媒体で情報発信中 37 Databricks Japanの情報発信チャンネル (旧 ) @DatabricksJP bit.ly/DatabricksJP ブログ databricks.com /jp/blog #dmm_databricks