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 を使用します。その場合、インストールや依存関係は必要ありません。

VS Code for the Web を試して、それが提供する簡単な統合と豊富な開発環境を活用してください。 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
PyPI からの Python
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 があります。

ファイルにアクセスする

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

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

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

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

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

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

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

作成

基本的なコンピューティング インスタンスを作成するには、「 開始する必要があるリソースの作成」を参照してください。

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

管理者は、ワークスペース内で他のユーザーに代わってコンピューティング インスタンスを作成できます。 このようなコンピューティング インスタンスの SSO を無効にする必要があります。

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

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

コンピューティング インスタンスの作成に適用されるリージョンあたりの専用コア数は、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 ディスクの容量がいっぱいの場合は動作しません。