Azure Machine Learning コンピューティング インスタンスとは

Azure Machine Learning コンピューティング インスタンスは、データ サイエンティスト向けのマネージド クラウドベース ワークステーションです。 各コンピューティング インスタンスの所有者は 1 つだけですが、複数のコンピューティング インスタンス間でファイルを共有できます。

コンピューティング インスタンスを使うと、Azure Machine Learning の開発を簡単に開始できます。また、IT 管理者向けの管理機能とエンタープライズ対応機能が用意されています。

コンピューティング インスタンスは、機械学習のためにクラウド内で完全に構成され管理される自分の開発環境として使用します。 また、開発やテストのためのトレーニングや推論のコンピューティング ターゲットとして使用することもできます。

コンピューティング インスタンスの Jupyter 機能を動作させるには、Web ソケット通信が無効になっていないことを確認してください。 お使いのネットワークで、*. instances.azureml.net と *. instances.azureml.ms への WebSocket 接続が許可されていることを確認してください。

重要

この記事で "(プレビュー)" と付記されている項目は、現在、パブリック プレビュー段階です。 プレビュー バージョンはサービス レベル アグリーメントなしで提供されています。運用環境のワークロードに使用することはお勧めできません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。 詳しくは、Microsoft Azure プレビューの追加使用条件に関するページをご覧ください。

コンピューティング インスタンスを使用する理由

コンピューティング インスタンスは、自分の機械学習開発環境向けに最適化されるクラウドベースのフルマネージド ワークステーションです。 これには、次のようなメリットがあります。

主な利点 説明
生産性 統合ノートブックや次のツールを Azure Machine Learning Studio で使用して、モデルを構築およびデプロイすることができます。
- Jupyter
- JupyterLab
- VS Code (プレビュー)
コンピューティング インスタンスは Azure Machine Learning ワークスペースおよびスタジオと完全に統合されています。 ワークスペース内の他のデータ サイエンティストとノートブックやデータを共有できます。
マネージドおよび安全 セキュリティ占有領域を削減し、エンタープライズ セキュリティ要件へのコンプライアンスを追加できます。 コンピューティング インスタンスでは、厳格な管理ポリシーと安全なネットワーク構成が提供されます:

- Resource Manager テンプレートまたは Azure Machine Learning SDK からの自動プロビジョニング
- Azure ロールベースのアクセス制御 (Azure RBAC)
- 仮想ネットワークのサポート
- SSH アクセスを無効にする Azure ポリシー
- 仮想ネットワークでの作成を強制する Azure ポリシー
- スケジュールに基づく自動シャットダウン/自動開始
- TLS 1.2 が有効
構成済みの ML 事前に構成された最新の ML パッケージ、ディープ ラーニング フレームワーク、GPU ドライバーを使用して、セットアップ タスクの時間を節約できます。
フル カスタマイズが可能 Azure VM の種類 (GPU を含む) や永続的な低レベル カスタマイズ (パッケージやドライバーのインストールなど) が広範にサポートされているので、高度なシナリオに簡単に対応できます。 セットアップ スクリプトを使用してカスタマイズを自動化することもできます

ツールと環境

Azure Machine Learning コンピューティング インスタンスを使用すると、ワークスペース内の完全統合型ノートブックでモデルを作成し、トレーニングし、デプロイすることができます。

ノートブックは、Azure Machine Learning ワークスペースJupyterJupyterLab、または Visual Studio Code から実行できます。 VS Code Desktop は、コンピューティング インスタンスにアクセスするように構成できます。 または、ブラウザーから直接、Web 用の VS Code を使用します。その場合、インストールや依存関係は必要ありません。

簡単な統合と提供される豊富な開発環境を利用するために、Web 用の VS Codeを試してみることをお勧めします。 Web 用の VS Code では、参照や編集時の検索や構文の強調表示など、好みの VS Code Desktop の多くの機能が提供されます。 VS Code Desktop と Web 用のVS Code の使用の詳細については、「Azure Machine Learning と統合された Visual Studio Code を起動する (プレビュー)」と「コンピューティング インスタンスにリモート接続された VS Code で作業する (プレビュー)」を参照してください。

パッケージをインストールして、コンピューティング インスタンスにカーネルを追加することができます。

コンピューティング インスタンスには、次のツールと環境が既にインストールされています。

一般的なツールと環境 詳細
ドライバー CUDA
cuDNN
NVIDIA
Blob FUSE
Intel MPI ライブラリ
Azure CLI
Azure Machine Learning サンプル
Docker
Nginx
NCCL 2.0
Protobuf
R ツールと環境 詳細
R カーネル

インスタンスの作成時に、RStudio または Posit Workbench (旧称 RStudio Workbench) を追加できます。

PYTHON ツールおよび環境 詳細
Anaconda Python
Jupyter と拡張機能
Jupyterlab と拡張機能
Azure Machine Learning SDK
for Python
(PyPI)
azure-ai-ml と多くの一般的な Azure 追加パッケージが含まれています。 完全な一覧を表示するには、
コンピューティング インスタンスでターミナル ウィンドウを開いて、これを実行します:
conda list -n azureml_py310_sdkv2 ^azure
その他の PyPI パッケージ jupytext
tensorboard
nbconvert
notebook
Pillow
Conda パッケージ cython
numpy
ipykernel
scikit-learn
matplotlib
tqdm
joblib
nodejs
ディープ ラーニング パッケージ PyTorch
TensorFlow
Keras
Horovod
MLFlow
pandas-ml
scrapbook
ONNX パッケージ keras2onnx
onnx
onnxconverter-common
skl2onnx
onnxmltools
Azure Machine Learning Python のサンプル

コンピューティング インスタンスには、ベース OS として Ubuntu があります。

ファイルにアクセスする

ノートブックと Python スクリプトは、Azure ファイル共有内のワークスペースの既定のストレージアカウントに格納されます。 これらのファイルは、"User files" ディレクトリの下に置かれます。 このストレージによって、コンピューティング インスタンス間でノートブックを簡単に共有できるようになります。 また、ストレージ アカウントでは、コンピューティング インスタンスを停止したり削除したりした場合でも、ノートブックが安全に維持されます。

ワークスペースの Azure ファイル共有アカウントは、コンピューティング インスタンスにドライブとしてマウントされます。 このドライブは、Jupyter、Jupyter Labs、RStudio、Posit Workbench の既定の作業ディレクトリです。 つまり、Jupyter、JupyterLab、Web 用 VS Code、RStudio、または Posit で作成したノートブックとその他のファイルは、ファイル共有に自動的に格納され、他のコンピューティング インスタンスでも使用できるようになります。

ファイル共有内のファイルには、同じワークスペース内のすべてのコンピューティング インスタンスからアクセスできます。 コンピューティング インスタンスでこれらのファイルに加えた変更は、ファイル共有に確実に反映されます。

また、最新の Azure Machine Learning サンプルを、ワークスペース ファイル共有の user files ディレクトリの下にある自分のフォルダーに複製することもできます。

小さいファイルの書き込みをネットワーク ドライブに対して行うと、コンピューティング インスタンス自体のローカル ディスクに書き込む場合よりも遅くなる可能性があります。 小さなファイルを多数作成する場合は、コンピューティング インスタンス上に直接配置されているディレクトリ (/tmp ディレクトリなど) を使うようにしてください。 なお、これらのファイルには、他のコンピューティング インスタンスからはアクセスできなくなることにご注意ください。

ノートブック ファイル共有にトレーニング データを格納しないでください。 データを保存するためのさまざまなオプションについては、「ジョブでのデータへのアクセス」を参照してください。

一時データにはコンピューティング インスタンスの /tmp ディレクトリを使用できます。 ただし、コンピューティング インスタンスの OS ディスクに大量のデータ ファイルを書き込むことは避けてください。 コンピューティング インスタンス上の OS ディスクには 128 GB の容量があります。 また、/mnt にマウントされた一時ディスクに一時的なトレーニング データを格納することもできます。 一時ディスクのサイズは選んだ VM サイズに基づいており、大きなサイズの VM を選ぶほど、大量のデータを格納できます。 インストールしたソフトウェア パッケージは、コンピューティング インスタンスの OS ディスクに保存されます。 カスタマー マネージド キーの暗号化は現在、OS ディスクではサポートされていないことに注意してください。 コンピューティング インスタンスの OS ディスクは、Microsoft マネージド キーを使用して暗号化されます。

また、データストアとデータセットをマウントすることもできます。

作成

作業を開始するために必要なリソースを作成する」の手順に従って、基本的なコンピューティング インスタンスを作成できます。

詳細なオプションについては、新しいコンピューティング インスタンスの作成に関する記事を参照してください。

管理者は、ワークスペース内で他のユーザーに代わってコンピューティング インスタンスを作成できます。

また、コンピューティング インスタンスを自動的にカスタマイズして構成する方法として、セットアップ スクリプト を使用 することもできます。

コンピューティング インスタンスを作成するその他の方法:

コンピューティング インスタンスの作成に適用されるリージョンあたりの専用コア数は、VM ファミリ クォータ別およびリージョン合計クォータ別に、Azure Machine Learning コンピューティング クラスターのクォータと統合され、共有されます。 コンピューティング インスタンスを停止しても、コンピューティング インスタンスを再起動できるようにクォータは解放されません。 Sudo シャットダウンを実行し、OS ターミナルを介してコンピューティング インスタンスを停止しないでください。

コンピューティング インスタンスには P10 OS ディスクが付属しています。 一時ディスクの種類は、選択された VM サイズによって異なります。 現在、OS ディスクの種類を変更することはできません。

コンピューティング ターゲット

コンピューティング インスタンスは、Azure Machine Learning コンピューティング トレーニング クラスターのように、トレーニング コンピューティング ターゲットとして使用できます。 ただし、コンピューティング インスタンスにはノードが 1 つしかないのに対して、コンピューティング クラスターにはより多くのノードを含めることができます。

コンピューティング インスタンスは、

  • ジョブ キューがあります。
  • 企業で SSH ポートを開かなくても、仮想ネットワーク環境でジョブを安全に実行できます。 ジョブはコンテナー化された環境で実行され、モデルの依存関係が Docker コンテナーにパッケージ化されます。
  • 複数の小さいジョブを並列で実行できます。 vCPU ごとに 1 つのジョブを並列で実行できますが、残りのジョブはキューに登録されます。
  • シングルノード マルチ GPU 分散トレーニング ジョブをサポートする

コンピューティング インスタンスは、テストまたはデバッグのシナリオのためのローカル推論配置ターゲットとして使用できます。

ヒント

コンピューティング インスタンスには 120 GB の OS ディスクがあります。 ディスク領域が不足し、使用できない状態になった場合は、コンピューティング インスタンスのターミナルからファイルまたはフォルダーを削除して OS ディスク (/ にマウントされている) 上のディスク領域を 5 GB 以上クリアしてから、sudo reboot を実行してください。 一時ディスクは再起動後に解放されます。一時ディスクの領域を手動でクリアする必要はありません。 ターミナルにアクセスするには、コンピューティング リスト ページまたはコンピューティング インスタンスの詳細ページに移動し、 [ターミナル] リンクをクリックします。 ターミナルで df -h を実行することによって、使用可能なディスク領域を確認できます。 sudo reboot を実行する前に、5 GB 以上の領域をクリアしてください。 5 GB のディスク領域がクリアされるまで、Studio を使用してコンピューティング インスタンスの停止も再起動も実行しないでください。 スケジュールされた開始または停止、同様にアイドリングからのシャットダウン を含む自動シャットダウンは、CI ディスクがいっぱいの場合は機能しません。

次のステップ