「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -戻る --[[.NET開発 > DX系 > AI>.NET開発#r1c7a918]] > [[ML.NET]] --[[AzureのAI系サービス]] ---Azure Machine Learning ---[[Azure Databricks]] ---[[Azure Cognitive Services]] ---[[Azure OpenAI Service]] ---[[Azure Applied AI Services]] ---[[Azure AI インフラストラクチャ]] * 目次 [#md366fbc] #contents *概要 [#a660e913] -機械学習モデルを構築、トレーニング、デプロイが可能なプラットフォーム -[[様々な機能>#r290b4ae]]で専門的な知識を必要とするデータサイエンスをエンジニアリングに落としている。 --Notebookにより機械学習プロセスの設計・実装と実行をする機能 --GUI、マウス操作で機械学習プロセスを設計・実行する機能 --機械学習プロセス設計の煩雑さを自動化によって解消するAutoML機能 *詳細 [#m99c5ea9] **用語 [#tb12a94b] ***ワークスペース [#q620b661] -機械学習のモデルのトレーニングやデプロイに用いるすべてのリソースを管理する場所。 -様々なPaaSと連携して動いている。その他、様々なリソースやアセットを持つ。 ***実験、実行、実行構成、スナップショット [#t1a59beb] -実験~ 機械学習のモデル構築のためにトレーニングを行うことを指す。 -実行 --実験に関する実行は、スクリプトを1回行うこと。 --メタデータ、メトリック、出力ファイル、スナップショットなどが記録される。 -実行構成~ 実行方法を定義した命令。 -スナップショット~ 実行時にスクリプトに含まれているファイルが実行レコードに保存される。 ***モデル、モデルレジストリ [#bb1d2050] -TensorFlow、PyTorch、[[Scikit-learn>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?scikit-learn]]、Chainer~ のような、外部のフレームワークを使うことができる。 -ワークスペース内の学習モデルは、モデルレジストリで追跡可能 ***エンドポイント [#pd3dcb38] -クラウド上のWebサービス、IoTをエンドポイントとして指定 -措定したエンドポイントにモジュールをデプロイする。 **Machine Learning Studio [#o2011fb1] -Azure Machine Learning 開発者向け Web ポータル -UIとしては、言語([[Python>Visual Studio Code#red23b04]]、R)とGUIがあり、StudioはGUIに相当する。 -ただ、言語([[Python>Visual Studio Code#red23b04]]、R)だけでは完結しないので、~ 言語を使用するときもStudioを併用する必要があるらしい。 -ただし、言語を使用しないケースでは、Studioだけで完結できる。 *** (classic) [#w9cf76a5] 2015年にリリースされたAzure Machine Learning Studioが先行してGUI環境を実現。 -ドラッグ アンド ドロップ機械学習ビルダー -コード・ファーストが存在しなかった。 -Azure Machine Learningと相互運用できない。 -2024 年 8 月 31 日に終了 -2021 年 12 月 1 日以降、新しい リソースは作成できない。 ***メニュー [#h4940eef] 以下のような構成になっている。 -Auther(作成者 --[[Notebooks(コーディング環境>#h1c62e43]] --[[Automated ML(自動機械学習>#b956378e]] --[[Designer(GUI機械学習>#xd500bfd]] -Assets(資産 --[[Datasets(データの登録・管理>#jfaeed85]] --Experiments([[実験>#t1a59beb]]記録 --Pipelines(データパイプライン --Models(モデル管理 --Endpoints(エンドポイント管理 -Manage(環境・データの管理 --[[Compute(計算環境>#e3281bb1]] --Datastores(データソース --Data Labeling(ラベリング *機能 [#k9359889] **開発系の機能 [#r290b4ae] ***Automated ML [#b956378e] -(自動機械学習 --所謂一つの[[Auto ML>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%EF%BC%88machine%20learning%EF%BC%89#h3e39448]] --データから最高のモデルを探索 -GUIで設定する場合、コードで設定する場合がある。~ (コードで設定する場合は[[Notebooks>#h1c62e43]]から行う。) -自動実行前の、ユーザ入力 --[[実験>#t1a59beb]]名を設定 --[[コンピューターの選択>#e3281bb1]](計算環境の設定 --[[データセットの選択>#jfaeed85]] --目的変数の選択 --タスク選択・構成 ---種類(クラス分類、回帰、時系列予測) ---精度指標、アルゴリズム制限、学習時間、検証方法 -ユーザ入力後、~ 以下の学習と評価を自動実行する。 --特徴量エンジニアリング ---特徴量の手動選択も可能 ---欠損データ補完方法を選択可能 --モデルとモデルを作成するアルゴリズムの選択 --作成されたモデルの(ハイパーパラメタ)チューニング --モデルのリーダーボード(ランキング的な)と解釈 -実行結果の確認 --実行IDをクリック --以下のタブからチェック可能 ---詳細~ 実行IDの詳細情報 ---データ ガードレール~ データの品質をチェックできる。 ---モデル~ モデルをチェックできる。~ ・モデルのリーダーボード~ ・個別のモデルの概要、説明、メトリック~ ・, etc. -モデルを推論環境にデプロイして推論(リアルタイム or バッチ) ***Designer [#xd500bfd] -(GUI機械学習 --[[Automated ML(自動機械学習>#b956378e]]より若干難しい。 --マウス操作でパイプライン構築できる。 -パイプライン構築 --テンプレートを選択~ 0から設計するか、テンプレートを選択してカスタマイズする。 --パイプラインの構成 ---[[データセットの選択>#jfaeed85]] ---特徴量エンジニアリング~ ・特徴量の手動選択も可能~ ・欠損データ補完方法を選択可能 ---データ分割(学習:テスト=7:3) ---モデル作成アルゴリズムの選択~ (回帰、分類、クラスタリング) ---モデルの学習 ---モデルのスコア付け ---モデルの評価 --パイプラインの実行 ---[[コンピューターの選択>#e3281bb1]](計算環境の設定 ---[[実験>#t1a59beb]]名を設定 or 選択し実験を開始。 -実行結果の確認 --実行IDをクリック --以下のタブからチェック可能 ---グラフ ---手順 ---, etc. -モデルを推論環境にデプロイして推論(リアルタイム or バッチ) -また、Designerで作成したモノを[[Notebooks>#h1c62e43]]で使えるコードにエクスポート可能。 ***Notebooks [#h1c62e43] -(コーディング環境 --以下のファイルの管理~ (ストレージにホストされる ---[[Jupyter Notebook>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PySpark#y2664b01]] ---[[Python>Visual Studio Code#red23b04]]、R、スクリプト --ファイルを作成 or 選択して ---サンプルも用意されていて、~ これをファイル管理下にクローンできる。 ---また、GitHub上のコードを~ ファイル管理下にクローンできる。~ (Jupyter → Terminal で git cloneコマンド実行) --コーディング ---Jupyter Notebook風インターフェイス ---[[Visual Studio Code]] -パイプライン構築 --テンプレートを選択~ 0から設計・実装するか、テンプレートを選択してカスタマイズする。 --パイプラインの構成~ コーディングによってパイプラインを構成する。 --パイプラインの実行~ ---[[コンピューターの選択>#e3281bb1]](計算環境の設定 ---実験名はSDKを使用したコーディングで設定する。 ---Notebookを実行 -実行結果の確認~ --標準出力で確認 --SDKを使って確認 -モデルを推論環境にデプロイして推論(リアルタイム or バッチ) **インフラ系の機能 [#n6404170] ***Compute [#e3281bb1] (計算環境 -Compute Instance~ ≒ ローカル環境(開発・学習・推論で利用可能) --R Studio --[[Jupyter/JupyterLab>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E7%B5%B1%E5%90%88%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83%20%28IDE%29#x1ebfeb7]](Webブラウザ上で開く --[[Visual Studio Code]](ローカルで開く >※ [[Notebooks(コーディング環境>#h1c62e43]]管理下のファイルを使う。~ ※ 各種のSKD、Azure Machine Learning Python SDKもインストール済み。 -Compute Clusters~ ≒ 学習環境 --様々なスペックのVM --自動スケールアップ・ダウン --ジョブ、スケジュール管理 --ライブラリ・データの自動準備 --低優先度オプション(スポット VM -推論環境 --推論クラスタの実体は、[[AKS>Azure Kubernetes Service (AKS)]]らしい。 --推論クラスタではない環境として、ローカル(Compute Instance)、[[ACI>Azure Container Instances (ACI)]]などもあるもよう。 --デプロイ後はWebAPIとして使用できる(ACIでもAKSでも認証が使えるようになっている)。 -[[Azure Databricksと同じ>Azure Databricksチュートリアル#h06a7649]]クォータ制限がある~ (ただし、ワークスペース単位に設定可能)。 ***Datasets [#jfaeed85] (データの登録・管理 -データの選択 --アップロード --ダウンロード --ストレージから選択 --オープンデータから選択 -スキーマの設定 ***Models [#w80172a7] (モデル管理 -[[Notebooks(コーディング環境>#h1c62e43]]と[[Python>Visual Studio Code#red23b04]]などを使用して開発したモデルを登録できる。 **その他の機能 [#z88000ef] ***MLOps [#we723c95] ***責任あるML [#j544d85d] ***オープン&相互運用性 [#nafe7a99] -モデル --PyTorch --TensorFlow --scikit-learn --XGBoost --LightGBM -言語やフレームワーク --[[Python>Visual Studio Code#red23b04]] --R --[[.NET>.NET開発]] ***モデルの他環境への展開 [#efe2cf7e] [[ONNX>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E6%B7%B1%E5%B1%A4%E5%AD%A6%E7%BF%92%EF%BC%88deep%20learning%EF%BC%89#e846e795]]、RevoScaleRでエッジなどへ展開できる。 -エッジ -[[SQL Server]](PREDICT関数) -[[Azure Synapse]] -[[Azure Stream Analytics]] -[[Azure Databricks]] *補足 [#l97d9668] **[[チュートリアル>Azure Machine Learningチュートリアル]] [#o79e51b2] **[[アルゴリズム・モデル>Azure Machine Learningのアルゴリズム・モデル]] [#f095add5] **[[モデルのデプロイ>Azure Machine Learningのモデルのデプロイ]] [#u2f0a934] *参考 [#o6c58493] -Microsoft Azure / Azure Machine Learningとは~ https://www.ossnews.jp/oss_info/Azure_Machine_Learning -Azure Machine Learning Studioによる機械学習入門~ |コラム|クラウドソリューション|サービス|法人のお客さま|NTT東日本~ https://business.ntt-east.co.jp/content/cloudsolution/column-75.html -Azure Machine Learningとは?用語やStudioとの違いなどを解説~ https://www.cloud-for-all.com/blog/what-is-azure-machine-learning.html **Qiita [#i04478c0] -クラウド時代の最強機械学習プラットフォーム~ Azure Machine Learning まとめ~ https://qiita.com/aical/items/2fbc8814d4eb24e316c9 -Amazon SageMakerとAzure MLにおける機械学習モデルのサービング技術比較 --(前編)~ https://qiita.com/kyosuke_hashimoto/items/48a4e050d6d2504d1e5c --(後編)~ https://qiita.com/kyosuke_hashimoto/items/2e321d9fe844078d81f2 **YouTube [#j403430f] ***Tech Briefing: Azure Machine Learning [#qf7e876c] -Azure Machine Learning 概要~ https://www.youtube.com/watch?v=FstdNRDHrxQ -AutoML & Designer 概要~ https://www.youtube.com/watch?v=0nGdTPJvjDI -Synapse Analytics 連携~ https://www.youtube.com/watch?v=eUBgLY5LwrI ***Ignite & Build 2021 最新アップデート Analytics&AI [#q4efd9be] -Azure Machine Learning アップデート~ https://www.youtube.com/watch?v=oOEKrAKSYlg **microsoft.com [#b6ea1d17] ***Microsoft Azure [#kaa8a201] -Azure Machine Learning - サービスとしての ML~ https://azure.microsoft.com/ja-jp/services/machine-learning/#product-overview ***Microsoft Docs [#i4d396a4] -Azure Machine Learning のドキュメント~ https://docs.microsoft.com/ja-jp/azure/machine-learning/ -Azure Machine Learning とは~ https://docs.microsoft.com/ja-jp/azure/machine-learning/overview-what-is-azure-machine-learning -Azure Machine Learning スタジオとは~ https://docs.microsoft.com/ja-jp/azure/machine-learning/overview-what-is-machine-learning-studio ***Learn [#qec78c8d] -Introduction to Azure Machine Learning~ https://docs.microsoft.com/en-us/learn/modules/intro-to-azure-ml/ ***機能 [#w2512c5a] -自動機械学習 (AutoML) とは~ https://docs.microsoft.com/ja-jp/azure/machine-learning/concept-automated-ml -Azure Machine Learning デザイナーとは~ https://docs.microsoft.com/ja-jp/azure/machine-learning/concept-designer **GitHub [#lb8bb452] ***Machine Learning Best Practices [#u649688d] https://azure.github.io/machine-learning-best-practices ***Machine-Learning-Collection [#a096ed79] https://github.com/aladdinpersson/Machine-Learning-Collection ---- Tags: [[:クラウド]], [[:BI/AI]], [[:Azure]]