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

MS Build 2022 AI/ML Updateを含んだクラウド機械学習環境

MS Build 2022 AI/ML Updateを含んだクラウド機械学習環境

▼こちらのイベントでお話しした内容です。
https://jdla.connpass.com/event/253008/

KoheiOgawa

July 12, 2022
Tweet

More Decks by KoheiOgawa

Other Decks in Technology

Transcript

  1. もっと気軽に、 クラウドで機械学習しよう。 KOHEI OGAWA HIROSATO GAMO

  2. WHO AM I ? @shisyu_gaku /koheiogawa 書を書いたり、プログラムを書いたりしている人 何かを設計し、何かを最適化するのが好き 高専出身 KOHEI

    OGAWA Microsoft Japan Co., Ltd. Cloud Solution Architect (Data & AI) 書道家/エンジニア 興味分野 センシング、HCI、AIの社会実装、MLOps、エッジAI推論 Linux Foundation / Green Software Foundation所属 どんな人か
  3. WHO AM I ? @hiro_gamo /Hirosato-Gamo 元データサイエンティスト。データ基盤、ブロックチェーンシス テム構築など経験し、今はデータ活用の課題解決や技術 検証に勤しむ。 HIROSATO

    GAMO Microsoft Japan Co., Ltd. Cloud Solution Architect (Data & AI) 興味分野 データサイエンス(機械学習・統計解析)、MLエンジニアリング、 データエンジニアリング どんな人か
  4. 想定オーディエンス 1. G検定合格者以上のスキルを有する方

  5. 伝えたいメッセージ(Agenda) 1. オンプレミスからクラウドに移行するとメリットたくさんある 2. MLの市場投入をより加速させる一歩 3. 機械学習モデルを一からフルスクラッチで作る必要はないかもしれない 4. コードが書けなくても機械学習モデルを作ることはできる

  6. Part1.オンプレミスからクラウドに移行するとメリットたくさんある

  7. 7 機械学習システムの抽象イメージ 学習ステップ Jupyter Notebook Python R MLモデル 学習コード 外部ストレージ

    データ 計算機リソース ipython Kernel データ取得 開発 出力 GPU(NNを使うとき) データサイエンティストなど 推論ステップ エンドポイント データ (or パス) コンピューティング MLモデル 推論コード 推論結果 実行 Python R GPU (NNを使うとき) データサイエンティスト、 ソフトウェエンジニアなど
  8. 8 計算リソースの準備と環境構築 オンプレミス Azure ML • 十分な性能を有したCPU/GPU マシンの調達 の必要がある •

    必要になるスペックがあがると購入し直 しの必要がある • 電源確保&ネットワークに接続 • 常時電気代がかかる • デバイス自体のセットアップの手間があ る • NVIDIAドライバーや機械学習ライブラリ等の 最低限求められるセットアップも必要 • Azure ML Compute Instance/Cluster を展開 (マネージドリソース) • (GPU搭載を含む)様々なマシンスペック を自由に選択して利用可能 • クラスターはオートスケール可能 • 起動時間に応じて課金 • タイムアウトを気にする必要がない • VMのアタッチ • 既存のVMの利用 • DSVM(DataScience VM) • 一通り機械学習を実行するために必 要なソフトウェアがプリセットされ た VM 悲しい点 嬉しくなる点
  9. Data Science Virtual Machineに含まれるツール Azure Data Science Virtual Machine に含まれるツール

    - Azure Data Science Virtual Machine | Microsoft Docs LightGBM、OpenCV Docker、ONNX Runtime Vscode, PyCharm, vim, emacs, git, Azure SDK CUDA、NVIDIAドライバー miniconda, JupyterLab, JupyterHub, Python.. PyTorch、Tensorflow
  10. 10 デモ:計算リソースの準備と環境構築 Azure ML デモ 1. Azure MLリソース作成、コンピューティング インスタンス作成画面まで 2.

    DSVM作成からアタッチまで
  11. 11 機械学習におけるデータの管理 オンプレミス Azure ML • データ容量を意識した管理の必要 • 容量が足りなくなれば追加購入の必要が ある

    • セキュリティ面の不安 • 実験管理にmlflow、AutoMLツールにpyCaret など、新たにMLモデルの生成を賢くするツー ルの環境を整えれば使えるが、OSSのためメ ンテナンスが継続される保証はない • Azure Storageリソースにより一元管理 • AzureML Studioで追加インストール不要で実 験管理を行うことができる。 • Azure上にデータが管理されるため、多くのセ キュリティサービスと環境により監視され守 られている • AzureはMicrosoftが日々メンテナンス行って いる • AutoMLをGUIベースでもコードベースでも扱 う方法が組み込まれている。 悲しい点 嬉しくなる点
  12. 自動機械学習 Automated Machine Learning ユーザーの入力 特徴量 エンジニアリング アルゴリズム の選択 ハイパーパラメータ

    のチューニング モデルの リーダーボードと解釈 データセット 設定と制約 76% 34% 82% 41% 88% 72% 81% 54% 73% 88% 90% 91% 95% 68% 56% 89% 89% 79% 順位 モデル スコア 1 95% 2 76% 3 53% … 自動機械学習は、与えられたデータに対して「最高のモデル」を探索するために、 特徴量エンジニアリング、アルゴリズムとハイパーパラメータの選択を自動実行する。
  13. 13 Automated MLの新機能 in MSBuild 2022 ComputerVisonタスク 1. 画像分類の単数ラベル 2.

    画像分類の複数ラベル 3. 物体検出 4. インスタンスのセグメント化 自然言語処理タスク 1. 複数テキスト分類 2. 複数ラベルテキスト分類 3. 名前付きエンティティの認識 (NER) 定義された各アルゴリズムのハイパーパラメータを自動で探索
  14. 14 デモ:オンプレからクラウドの移行-機械学習におけるデータの管理- Azure ML デモ 1. AzureMLStudioでの実験管理 2. Automated ML(GUI)

  15. Part2. MLの市場投入をより加速させる一歩

  16. Machine Learning Platform Architecture 構造化データ 非構造化データ その他全てのMLシナリオ; NLP, Vision, IoT,

    etc. モデル AKS バッチ予測: SQL DB Analytics Power BI Business Apps Prepare Data Build & Train Manage & Monitor Deploy Synapse 様々なAzureサービスのソースからデータを取り込み、モデル構築・分析・可視化が可能。 Azure ML
  17. Machine Learning Platform Architecture 構造化データ 非構造化データ その他全てのMLシナリオ; NLP, Vision, IoT,

    etc. モデル AKS バッチ予測: SQL DB Analytics Power BI Business Apps Synapse AzureMLによる信頼性の高いMLモデルの構築とMLOps環境 Prepare Data Build & Train Manage & Monitor Deploy シームレスなStudio体験 包括的な MLOps クラウドとオンプレミスを横断する一元管理 サーバーレス コンピュート マネージド Kubernetes Azure Edge & Hybrid Azure Arc-enabled Kubernetes Edge/IoT Devices 再現性 自動化 デプロイ 再学習 一括管理 Azure ML
  18. Machine Learning Platform Architecture 構造化データ 非構造化データ その他全てのMLシナリオ; NLP, Vision, IoT,

    etc. モデル AKS バッチ予測: SQL DB Analytics Power BI Business Apps シームレスなStudio体験 包括的な MLOps クラウドとオンプレミスを横断する一元管理 サーバーレス コンピュート マネージド Kubernetes Azure Edge & Hybrid Azure Arc-enabled Kubernetes Edge/IoT Devices 再現性 自動化 デプロイ 再学習 一括管理 Azure ML Synapse AzureMLによる信頼性の高いMLモデルの構築とMLOps環境 Prepare Data Build & Train Manage & Monitor Deploy 包括的な MLOps 再現性 自動化 デプロイ 再学習 一括管理
  19. Responsible ML Tools(モデル評価と意思決定のダッシュボード) in MSBuild 2022 Responsible AI Dashboard &

    Responsible AI Scorecard AML Responsible AI DashboardとスコアカードでAIシステムを評価し、データドリブンな意思決定を行う。 概要 • 公平で信頼性が高く、説明責任を果たすためのAIの開発ツール • YAMLを使用したワークフロー • シナリオに合わせて生成するRAIコンポーネントを指定可能 • AML StudioのUI ダッシュボードによるコードなしウィザード • レポート機能として、インサイトやRAI ScorecardをPDFレポートと して出力し、ビジネス関係者と共有することが可能 スタジオで責任ある AI ダッシュボードを使用する方法 (プレビュー) - Azure Machine Learning | Microsoft Docs • グローバル コントロール • エラー分析 • モデルの概要 • データ エクスプローラー • 特徴量の重要度 (モデルの説明) • 反事実条件 What-If • 原因分析 分析項目と機能
  20. デモ:Responsible ML Tools(モデル評価と意思決定のダッシュボード) Azure ML デモ 1. どのようにその画面までたどり着くのか 2. 何ができるのか

  21. Full MLOps on Azure アーキテクチャ 再現性、自動化、デプロイ、再学習の実現 再現性 デプロイ 自動化 再学習

    ・実験・メタデータ管理 ・マネージドエンドポイント ・github/Azure DevOps連携によるCI/CD ・データドリフト検知 ・Azure Monitorによる監視 ・EventGridによるイベント検知
  22. Level 4 – Full MLOps Automated Retraining Mount/Download Azure Synapse

    Pipeline Azure Data Lake Storage Gen2 Job Environments Azure Machine Learning Python SDK/CLI Azure Container Registry Data Prep Data Models Monitoring Azure Machine Learning Python SDK/CLI Managed (Online/Batch) Endpoint Code Checkout Managed (Online/Batch) Endpoint GitHub Model Training Code Test, Data Check Model Training Model Evaluation Responsible AI Deploy to Stage Deploy to Stage Model Test Responsible AI Azure Monitor Azure Insights Azure Machine Learning Components container Gated approval Retraining Trigger Deploy to Prod Deploy to Prod Model Test ResponsibleAI Safe Rollout Azure Machine Learning Python SDK/CLI Compute Instance Compute Clusters build&push Training (pipeline) Deployment (pipeline) Data Science team Infra team Alert Dashboard build&push job submit experiment log/metric auto scale log/metric auto scale log/metric Register model deploy automatically deploy automatically Event Grid (Model Trigger) (Code Trigger) Azure Managed Grafana Event Grid model register data drift
  23. Level 4 – Full MLOps Automated Retraining Mount/Download Azure Synapse

    Pipeline Azure Data Lake Storage Gen2 Job Environments Azure Machine Learning Python SDK/CLI Azure Container Registry Data Prep Data Models Monitoring Azure Machine Learning Python SDK/CLI Managed (Online/Batch) Endpoint Code Checkout Managed (Online/Batch) Endpoint GitHub Model Training Code Test, Data Check Model Training Model Evaluation Responsible AI Deploy to Stage Deploy to Stage Model Test Responsible AI Azure Monitor Azure Insights Azure Machine Learning Components container Gated approval Retraining Trigger Deploy to Prod Deploy to Prod Model Test ResponsibleAI Safe Rollout Azure Machine Learning Python SDK/CLI Compute Instance Compute Clusters build&push Training (pipeline) Deployment (pipeline) Data Science team Infra team Alert Dashboard build&push job submit experiment log/metric auto scale log/metric auto scale log/metric Register model deploy automatically deploy automatically Event Grid (Model Trigger) (Code Trigger) Azure Managed Grafana Event Grid model register data drift • データセット・ジョブ、モデル等の管理 • 作成者/実験者・時刻 etc.. • 再利用するためのサンプルコードも提供 • モデルのトレーニングコードの生成 in MSBuild 2022 再現性
  24. Level 4 – Full MLOps Automated Retraining Mount/Download Azure Synapse

    Pipeline Azure Data Lake Storage Gen2 Job Environments Azure Machine Learning Python SDK/CLI Azure Container Registry Data Prep Data Models Monitoring Azure Machine Learning Python SDK/CLI Managed (Online/Batch) Endpoint Code Checkout Managed (Online/Batch) Endpoint GitHub Model Training Code Test, Data Check Model Training Model Evaluation Responsible AI Deploy to Stage Deploy to Stage Model Test Responsible AI Azure Monitor Azure Insights Azure Machine Learning Components container Gated approval Retraining Trigger Deploy to Prod Deploy to Prod Model Test ResponsibleAI Safe Rollout Azure Machine Learning Python SDK/CLI Compute Instance Compute Clusters build&push Training (pipeline) Deployment (pipeline) Data Science team Infra team Alert Dashboard build&push job submit experiment log/metric auto scale log/metric auto scale log/metric Register model deploy automatically deploy automatically Event Grid (Model Trigger) (Code Trigger) Azure Managed Grafana Event Grid model register data drift • マネージドエンドポイント(モデル展開の簡素化) • カスタムコンテナは推論サーバーをDocker化さえできれば、 AMLはホストできる • Azure Machine Learning 上で監視、スケーリング、アラート、および 認証を引き続き利用できる • ブルーグリーンデプロイメント対応 デプロイ
  25. Level 4 – Full MLOps Automated Retraining Mount/Download Azure Synapse

    Pipeline Azure Data Lake Storage Gen2 Job Environments Azure Machine Learning Python SDK/CLI Azure Container Registry Data Prep Data Models Monitoring Azure Machine Learning Python SDK/CLI Managed (Online/Batch) Endpoint Code Checkout Managed (Online/Batch) Endpoint GitHub Model Training Code Test, Data Check Model Training Model Evaluation Responsible AI Deploy to Stage Deploy to Stage Model Test Responsible AI Azure Monitor Azure Insights Azure Machine Learning Components container Gated approval Retraining Trigger Deploy to Prod Deploy to Prod Model Test ResponsibleAI Safe Rollout Azure Machine Learning Python SDK/CLI Compute Instance Compute Clusters build&push Training (pipeline) Deployment (pipeline) Data Science team Infra team Alert Dashboard build&push job submit experiment log/metric auto scale log/metric auto scale log/metric Register model deploy automatically deploy automatically Event Grid (Model Trigger) (Code Trigger) Azure Managed Grafana Event Grid model register data drift • コード管理 in Github/Azure DevOps • テストの実行 • パイプラインのキック • トレーニングジョブの実行、レジストリにモデルの登録、 モデルのデプロイ 自動化
  26. Level 4 – Full MLOps Automated Retraining Mount/Download Azure Synapse

    Pipeline Azure Data Lake Storage Gen2 Job Environments Azure Machine Learning Python SDK/CLI Azure Container Registry Data Prep Data Models Monitoring Azure Machine Learning Python SDK/CLI Managed (Online/Batch) Endpoint Code Checkout Managed (Online/Batch) Endpoint GitHub Model Training Code Test, Data Check Model Training Model Evaluation Responsible AI Deploy to Stage Deploy to Stage Model Test Responsible AI Azure Monitor Azure Insights Azure Machine Learning Components container Gated approval Retraining Trigger Deploy to Prod Deploy to Prod Model Test ResponsibleAI Safe Rollout Azure Machine Learning Python SDK/CLI Compute Instance Compute Clusters build&push Training (pipeline) Deployment (pipeline) Data Science team Infra team Alert Dashboard build&push job submit experiment log/metric auto scale log/metric auto scale log/metric Register model deploy automatically deploy automatically Event Grid (Model Trigger) (Code Trigger) Azure Managed Grafana Event Grid model register data drift • データドリフト検知 • Azure Monitorにより監視 • Azure Event Gridによるイベントの検知 • job完了、モデルの登録、デプロイ、 実行ステータスの変更、etc… 再学習
  27. デモ:マネージドエンドポイント Azure ML デモ 1. モデルの登録画面からエンドポイントの作成、 推論まで

  28. Part3.機械学習モデルを一からフルスクラッチで作る必要はないかもしれない

  29. Azure AIの全体像 Azure Applied AI Services Azure Machine Learning •

    Speech to Text • Text to Speech • Speech Translation • Speaker Recognition • Computer Vision • Custom Vision • Face API • Entity recognition • Sentiment analysis • QnA Maker • Conversational language understanding • Translator etc… • Anomaly Detector • Content Moderator • Personalizer 業務シナリオに特化したサービス群 カスタム可能な学習済みAIモデル エンドツーエンドの機械学習サービス エンジン • GPT-3シリーズ • Codexシリーズ • 埋め込みシリーズ Azure Cognitive Services
  30. Azure AIの全体像 Azure Machine Learning • Speech to Text •

    Text to Speech • Speech Translation • Speaker Recognition • Computer Vision • Custom Vision • Face API • Entity recognition • Sentiment analysis • QnA Maker • Conversational language understanding • Translator etc… • Anomaly Detector • Content Moderator • Personalizer 業務シナリオに特化したサービス群 カスタム可能な学習済みAIモデル エンドツーエンドの機械学習サービス エンジン • GPT-3シリーズ • Codexシリーズ • 埋め込みシリーズ Azure Cognitive Services Azure Applied AI Services
  31. シンプルなAPIでテキストと構造を抽出 フォームに合わせた抽出のカスタマイズ クラウドからエッジまで、 どこにでもデプロイ可能 U S E C A S

    E S 要求管理と自動化 ドキュメントプロセスの 自動化 帳票類の自動化 Azure Form Recognizer
  32. デモ:Azure Applied AI Services Azure Form Recognizer デモ 1. 画像から文章の読み取り

    2. 手書き文字とレイアウト認識
  33. Azure Open AI Services Open AI modelsのような大規模なモデルをAzure 上で、よりセキュアに利用可能に。 GPT-3 models

    Inferencing time Capability Ada Babbage Curie Davinci • 高度な利用シナリオでの文章要約 • クリエイティブ コンテンツの生成 • 質問への回答 • 複雑で微妙な内容の文章分類 • セマンティック検索のランキング • 適度に複雑な内容の文章分類 • 簡単な文章分類 • テキストの解析と文法訂正 • アプリケーション生成 • 高度なコード生成 Capability リミテッドプレビュー in MSBuild 2022
  34. デモ:Azure Cognitive Services Azure Open AI Services デモ 1. 具体的に例えば何ができるのか

  35. None
  36. Part4.コードが書けなくても機械学習モデルを作ることはできる

  37. Machine Learning Platform Architecture 構造化データ 非構造化データ その他全てのMLシナリオ; NLP, Vision, IoT,

    etc. モデル AKS バッチ予測: SQL DB Analytics Power BI Business Apps Synapse AzureMLによる信頼性の高いMLモデルの構築とMLOps環境 Prepare Data Build & Train Manage & Monitor Deploy シームレスなStudio体験 包括的な MLOps クラウドとオンプレミスを横断する一元管理 サーバーレス コンピュート マネージド Kubernetes Azure Edge & Hybrid Azure Arc-enabled Kubernetes Edge/IoT Devices 再現性 自動化 デプロイ 再学習 一括管理 Azure ML
  38. Machine Learning Platform Architecture 構造化データ 非構造化データ その他全てのMLシナリオ; NLP, Vision, IoT,

    etc. モデル AKS バッチ予測: SQL DB Analytics Power BI Business Apps シームレスなStudio体験 包括的な MLOps クラウドとオンプレミスを横断する一元管理 サーバーレス コンピュート マネージド Kubernetes Azure Edge & Hybrid Azure Arc-enabled Kubernetes Edge/IoT Devices 再現性 自動化 デプロイ 再学習 一括管理 Azure ML Synapse AzureMLによる信頼性の高いMLモデルの構築とMLOps環境 Prepare Data Build & Train Manage & Monitor Deploy
  39. Designer デザイナー in Azure ML 機械学習のモデル構築、テスト、デプロイするためのビジュアルパイプライン • 直感的なマウス操作でパイプライン構築 • 特徴量エンジニアリング

    • モデル学習 (回帰、分類、クラスタリング) • 推論 (リアルタイム & バッチ) • カスタムモデル・スクリプト (Python, R) https://docs.microsoft.com/ja-jp/azure/machine-learning/concept-designer
  40. Designer で提供するモジュール データのインポート データの手動入力 データのエクスポート データのビン化 データ結合 データ正規化 パーティションとサンプル 重複行の削除

    SMOTE 列変換 列の選択 データの分割 列の追加 行の追加 算術演算の適用 SQL 変換の適用 欠損値の除去 値の置換 CSA への変換 データセットへ変換 インジケーター値へ変換 メタデータの編集 フィルター特徴量選択 Permutation 特徴量 デシジョンツリー ディジョンフォレスト 高速フォレスト分位点回帰 線形回帰 ロジスティック回帰 ニューラルネットワーク ポワソン回帰 ブーストデシジョンツリー サポートベクターマシン K-Means クラスタリング DenseNet ResNet SVD Recommender Wide Deep Recommender PCA 異常検知 LDA Python モデルの作成 Python スクリプトの実行 R スクリプトの実行 画像データ変換処理 画像データの分割 テキスト前処理 Word2Vec Glove FastText クロスバリデーション スコアリング パラメータチューニング
  41. 再利用可能なカスタムコンポーネント in MSBuild 2022 ビジュアルコンポーネントをyamlとpythonファイル、環境ファイルから自作可能に。 Pipeline メタデータ name、display_name、version、type、etc... インターフェース 入出力の仕様(名前、型、説明、既定値など)

    コマンド、コード、環境 コンポーネントの実行に必要なコマンド、 コード、環境 SDK CLI UI
  42. デモ:Designer デザイナー in Azure ML Azure ML デモ 1. Sampleパイプラインの紹介

    2. データの可視化
  43. おまけ. Kaggle に関心がある方へ

  44. デモ:Kaggle環境をAzure MLに構築する流れ Starting your Kaggle challenge using Azure Machine Learn

    Services (microsoft.com)
  45. None