Azure PowerShell を使用して Azure Machine Learning ワークスペースを管理する

Azure Machine Learning 用の Azure PowerShell モジュールを使用して、Azure Machine Learning ワークスペースを作成し、管理します。 Azure Machine Learning 用の Azure PowerShell コマンドレットの完全な一覧については、Az.MachineLearningServices のリファレンス ドキュメントを参照してください。

また、Azure CLIAzure portal と Python SDK、または VS Code 拡張機能を使用してワークスペースを管理することもできます。

前提条件

Azure へのサインイン

Connect-AzAccount コマンドを使用して Azure サブスクリプションにサインインし、画面上の指示に従います。

Connect-AzAccount

使用する場所がわからない場合、利用できる場所を一覧表示できます。 次のコード例を使用して場所の一覧を表示し、使用する場所を見つけます。 この例では、eastus を使います。 場所を変数に格納し、この変数を使用することで、1 か所で場所を変更できます。

Get-AzLocation | Select-Object -Property Location
$Location = 'eastus'

リソース グループを作成する

New-AzResourceGroup を使用して Azure リソース グループを作成します。 リソース グループとは、Azure リソースのデプロイと管理に使用する論理コンテナーです。

$ResourceGroup = 'MyResourceGroup'
New-AzResourceGroup -Name $ResourceGroup -Location $Location

依存関係リソースを作成する

Azure Machine Learning ワークスペースは、次の Azure リソースに依存します。

  • Application Insights
  • Azure Key Vault
  • Azure Storage アカウント

これらのリソースを作成し、それぞれのアイテムの Azure Resource Manager ID を取得するには、次のコマンドを使用します。

注意

次のコマンドを実行する前に、サブスクリプションに Microsoft.Insights リソース プロバイダーを登録する必要があります。 これは 1 回限りの登録です。 Register-AzResourceProvider -ProviderNamespace Microsoft.Insights を使用して登録を実行します。

  1. Application Insights インスタンスを作成します。

    $AppInsights = 'MyAppInsights'
    New-AzApplicationInsights -Name $AppInsights -ResourceGroupName $ResourceGroup -Location $Location
    $appid = (Get-AzResource -Name $AppInsights -ResourceGroupName $ResourceGroup).ResourceId
    
    
  2. Azure Key Vault を作成します。

    重要

    各キー コンテナーには一意の名前が必要です。 次の例の MyKeyVault は、ご自分のキー コンテナーの名前に置き換えてください。

    $KeyVault = 'MyKeyVault'
    New-AzKeyVault -Name $KeyVault -ResourceGroupName $ResourceGroup -Location $Location
    $kvid = (Get-AzResource -Name $KeyVault -ResourceGroupName $ResourceGroup).ResourceId
    
    
  3. Azure Storage アカウントを作成します。

    重要

    ストレージ アカウントには、それぞれ一意の名前が必要です。 次の例の MyStorage は、ご自分のストレージ アカウントの名前に置き換えてください。 次の例を実行する前に、Get-AzStorageAccountNameAvailability -Name 'YourUniqueName' を使用して名前を確認できます。

    $Storage = 'MyStorage'
    
    $storageParams = @{
      Name = $Storage
      ResourceGroupName = $ResourceGroup
      Location = $Location
      SkuName = 'Standard_LRS'
      Kind = 'StorageV2'
    }
    New-AzStorageAccount @storageParams
    
    $storeid = (Get-AzResource -Name $Storage -ResourceGroupName $ResourceGroup).ResourceId
    
    

ワークスペースの作成

注意

次のコマンドを実行する前に、サブスクリプションに Microsoft.MachineLearningServices リソース プロバイダーを登録する必要があります。 これは 1 回限りの登録です。 Register-AzResourceProvider -ProviderNamespace Microsoft.MachineLearningServices を使用して登録を実行します。

次のコマンドを使用すると、ワークスペースが作成され、以前に作成済みのサービスを使用するように構成されます。 また、ワークスペースは、これらのサービスへのアクセスに使用されるシステム割り当てマネージド ID を使用するように構成されます。 Azure Machine Learning でマネージド ID を使用する方法の詳細については、他のサービスに対する認証の設定に関する記事を参照してください。

$Workspace = 'MyWorkspace'
$mlWorkspaceParams = @{
  Name = $Workspace
  ResourceGroupName = $ResourceGroup
  Location = $Location
  ApplicationInsightID = $appid
  KeyVaultId = $kvid
  StorageAccountId = $storeid
  IdentityType = 'SystemAssigned'
}
New-AzMLWorkspace @mlWorkspaceParams

ワークスペース情報の取得

ワークスペースの一覧を取得するには、次のコマンドを使用します。

Get-AzMLWorkspace

特定のワークスペースに関する情報を取得するには、その名前とリソース グループの情報を指定します。

Get-AzMLWorkspace -Name $Workspace -ResourceGroupName $ResourceGroup

ワークスペースを削除する

警告

ワークスペースに対して論理的な削除が有効になっている場合は、削除後に復旧できます。 論理的な削除が有効になっていない場合、またはワークスペースを完全に削除するオプションを選択した場合は、復旧できません。 詳細については、削除されたワークスペースの復旧に関する記事を参照してください。

不要になったワークスペースを削除するには、次のコマンドを使用します。

Remove-AzMLWorkspace -Name $Workspace -ResourceGroupName $ResourceGroup

重要

ワークスペースを削除しても、ワークスペースで使用されている Application Insights、ストレージ アカウント、キー コンテナー、またはコンテナー レジストリは削除されません。

リソース グループを削除することもできます。これにより、ワークスペースとリソース グループ内の他のすべての Azure リソースが削除されます。 リソース グループを削除するには、次のコマンドを使用します。

Remove-AzResourceGroup -Name $ResourceGroup

次のステップ

ワークスペースの問題を確認するには、「ワークスペース診断の使用方法」を参照してください。

ワークスペースを新しい Azure サブスクリプションに移動する方法については、ワークスペースを移動する方法に関するページを参照してください。

最新のセキュリティ更新プログラムを使用して Azure Machine Learning を最新の状態に保つ方法については、脆弱性の管理に関する記事を参照してください。

ワークスペースを使用して ML モデルをトレーニングする方法については、「1 日でわかる Azure Machine Learning」チュートリアルを参照してください。