Microsoft.MachineLearningServices ワークスペース/ジョブ 2022-05-01

Bicep リソース定義

ワークスペース/ジョブ リソースの種類は、次をターゲットとする操作でデプロイできます。

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.MachineLearningServices/workspaces/jobs リソースを作成するには、次の Bicep をテンプレートに追加します。

resource symbolicname 'Microsoft.MachineLearningServices/workspaces/jobs@2022-05-01' = {
  name: 'string'
  parent: resourceSymbolicName
  properties: {
    computeId: 'string'
    description: 'string'
    displayName: 'string'
    experimentName: 'string'
    identity: {
      identityType: 'string'
      // For remaining properties, see IdentityConfiguration objects
    }
    isArchived: bool
    properties: {}
    services: {}
    tags: {}
    jobType: 'string'
    // For remaining properties, see JobBaseProperties objects
  }
}

JobBaseProperties オブジェクト

オブジェクトの種類を指定するには、 jobType プロパティを設定します。

Command の場合は、次のコマンドを使用します。

  jobType: 'Command'
  codeId: 'string'
  command: 'string'
  distribution: {
    distributionType: 'string'
    // For remaining properties, see DistributionConfiguration objects
  }
  environmentId: 'string'
  environmentVariables: {}
  inputs: {}
  limits: {
    jobLimitsType: 'string'
    timeout: 'string'
  }
  outputs: {}
  resources: {
    instanceCount: int
    instanceType: 'string'
    properties: {}
  }

パイプラインの場合は、次を使用します。

  jobType: 'Pipeline'
  inputs: {}
  jobs: {}
  outputs: {}
  settings: any()

スイープの場合は、次の値を使用します。

  jobType: 'Sweep'
  earlyTermination: {
    delayEvaluation: int
    evaluationInterval: int
    policyType: 'string'
    // For remaining properties, see EarlyTerminationPolicy objects
  }
  inputs: {}
  limits: {
    jobLimitsType: 'string'
    maxConcurrentTrials: int
    maxTotalTrials: int
    timeout: 'string'
    trialTimeout: 'string'
  }
  objective: {
    goal: 'string'
    primaryMetric: 'string'
  }
  outputs: {}
  samplingAlgorithm: {
    samplingAlgorithmType: 'string'
    // For remaining properties, see SamplingAlgorithm objects
  }
  searchSpace: any()
  trial: {
    codeId: 'string'
    command: 'string'
    distribution: {
      distributionType: 'string'
      // For remaining properties, see DistributionConfiguration objects
    }
    environmentId: 'string'
    environmentVariables: {}
    resources: {
      instanceCount: int
      instanceType: 'string'
      properties: {}
    }
  }

IdentityConfiguration オブジェクト

identityType プロパティを設定して、オブジェクトの種類を指定します。

AMLToken の場合は、次の値を使用します。

  identityType: 'AMLToken'

Managed の場合は、次の値を使用します。

  identityType: 'Managed'
  clientId: 'string'
  objectId: 'string'
  resourceId: 'string'

UserIdentity の場合は、次の値を使用します。

  identityType: 'UserIdentity'

DistributionConfiguration オブジェクト

distributionType プロパティを設定して、オブジェクトの種類を指定します。

Mpi の場合は、次の値を使用します。

  distributionType: 'Mpi'
  processCountPerInstance: int

PyTorch の場合は、次の値を使用します。

  distributionType: 'PyTorch'
  processCountPerInstance: int

TensorFlow の場合は、次の値を使用します。

  distributionType: 'TensorFlow'
  parameterServerCount: int
  workerCount: int

EarlyTerminationPolicy オブジェクト

policyType プロパティを設定して、オブジェクトの種類を指定します。

バンディットの場合は、次の値を使用します。

  policyType: 'Bandit'
  slackAmount: int
  slackFactor: int

MedianStopping の場合は、次の値を使用します。

  policyType: 'MedianStopping'

TruncationSelection の場合は、次を使用します。

  policyType: 'TruncationSelection'
  truncationPercentage: int

SamplingAlgorithm オブジェクト

オブジェクトの種類を指定するには、 samplingAlgorithmType プロパティを設定します。

ベイジアンの場合は、次の値を使用します。

  samplingAlgorithmType: 'Bayesian'

Grid の場合は、次の値を使用します。

  samplingAlgorithmType: 'Grid'

Random の場合は、次の値を使用します。

  samplingAlgorithmType: 'Random'
  rule: 'string'
  seed: int

プロパティ値

workspaces/jobs

名前 説明
name リソース名

Bicep で子リソースの名前と型を設定する方法を参照してください。
string (必須)
parent Bicep では、子リソースの親リソースを指定できます。 このプロパティを追加する必要があるのは、子リソースが親リソースの外部で宣言されている場合のみです。

詳細については、「 親リソースの外部の子リソース」を参照してください。
種類のリソースのシンボル名: ワークスペース
properties [必須]エンティティの追加の属性。 JobBaseProperties (必須)

JobBaseProperties

名前 説明
computeId コンピューティング リソースの ARM リソース ID。 string
description 資産の説明テキスト。 string
displayName ジョブの表示名。 string
experimentName ジョブが属する実験の名前。 設定されていない場合、ジョブは "Default" 実験に配置されます。 string
identity ID の構成。 設定されている場合、これは AmlToken、ManagedIdentity、UserIdentity、または null のいずれかである必要があります。
null の場合、既定値は AmlToken です。
IdentityConfiguration
isArchived 資産はアーカイブされていますか? [bool]
properties 資産プロパティディクショナリ。 object
services JobEndpoints の一覧。
ローカル ジョブの場合、ジョブ エンドポイントのエンドポイント値は FileStreamObject になります。
object
tags タグ辞書。 タグは追加、削除、更新できます。 object
jobType オブジェクトの種類を設定する コマンド
パイプライン
スイープ (必須)

IdentityConfiguration

名前 説明
identityType オブジェクトの種類を設定する AMLToken
マネージド
UserIdentity (必須)

AmlToken

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 'AMLToken' (必須)

ManagedIdentity

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 'Managed' (必須)
clientId クライアント ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

制約:
最小長 = 36
最大長 = 36
Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
objectId オブジェクト ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

制約:
最小長 = 36
最大長 = 36
Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
resourceId ARM リソース ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

UserIdentity

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 'UserIdentity' (必須)

CommandJob

名前 説明
jobType [必須]ジョブの種類を指定します。 'Command' (必須)
codeId コード資産の ARM リソース ID。 string
command [必須]ジョブの起動時に実行するコマンド。 例: "python train.py" string (必須)

制約:
最小長 = 1
Pattern = [a-zA-Z0-9_]
分布 (distribution) ジョブの配布構成。 設定する場合は、Mpi、Tensorflow、PyTorch、または null のいずれかである必要があります。 DistributionConfiguration
environmentId [必須]ジョブの環境仕様の ARM リソース ID。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]
environmentVariables ジョブに含まれる環境変数。 object
inputs ジョブで使用される入力データ バインディングのマッピング。 object
制限 コマンド ジョブの制限。 CommandJobLimits
outputs ジョブで使用される出力データ バインディングのマッピング。 object
resources ジョブのコンピューティング リソースの構成。 ResourceConfiguration

DistributionConfiguration

名前 説明
distributionType オブジェクトの種類を設定する Mpi
PyTorch
TensorFlow (必須)

Mpi

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 'Mpi' (必須)
processCountPerInstance MPI ノードあたりのプロセス数。 INT

PyTorch

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 'PyTorch' (必須)
processCountPerInstance ノードあたりのプロセス数。 INT

TensorFlow

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 'TensorFlow' (必須)
parameterServerCount パラメーター サーバー タスクの数。 INT
workerCount worker 数。 指定しない場合、 は既定でインスタンス数になります。 INT

CommandJobLimits

名前 説明
jobLimitsType [必須]JobLimit 型。 'Command'
'Sweep' (必須)
timeout ISO 8601 形式の最大実行時間。その後、ジョブは取り消されます。 有効桁数が秒の期間のみをサポートします。 string

ResourceConfiguration

名前 説明
instanceCount コンピューティング 先で使用されるインスタンスまたはノードの数 (省略可能)。 INT
instanceType コンピューティング 先でサポートされている VM のオプションの種類。 string
properties その他のプロパティ バッグ。 object

PipelineJob

名前 説明
jobType [必須]ジョブの種類を指定します。 'Pipeline' (必須)
inputs パイプライン ジョブの入力。 object
jobs ジョブはパイプライン ジョブを構築します。 object
outputs パイプライン ジョブの出力 object
settings ContinueRunOnStepFailure などのパイプライン設定。 Bicep の場合は、 any() 関数を使用できます。

SweepJob

名前 説明
jobType [必須]ジョブの種類を指定します。 'Sweep' (必須)
earlyTermination 早期終了ポリシーを使用すると、実行が完了する前にパフォーマンスの低い実行を取り消す EarlyTerminationPolicy
inputs ジョブで使用される入力データ バインディングのマッピング。 object
制限 スイープ ジョブの制限。 SweepJobLimits
objective [必須]最適化の目標。 目標 (必須)
outputs ジョブで使用される出力データ バインディングのマッピング。 object
samplingAlgorithm [必須]ハイパーパラメーター サンプリング アルゴリズム SamplingAlgorithm (必須)
searchSpace [必須]各パラメーターとその分布を含むディクショナリ。 ディクショナリ キーは、 パラメーターの名前です Bicep の場合は、 any() 関数を使用できます。(必須)
試用 [必須]試用版コンポーネントの定義。 TrialComponent (必須)

EarlyTerminationPolicy

名前 説明
delayEvaluation 最初の評価を遅延させる間隔の数。 INT
evaluationInterval ポリシー評価間の間隔 (実行回数)。 INT
policyType オブジェクトの種類を設定する Bandit
MedianStopping
TruncationSelection (必須)

BanditPolicy

名前 説明
policyType [必須]ポリシー構成の名前 'Bandit' (必須)
slackAmount 最高のパフォーマンスを発揮する実行から許容される絶対距離。 INT
slackFactor 最もパフォーマンスの高い実行からの許可された距離の比率。 INT

MedianStoppingPolicy

名前 説明
policyType [必須]ポリシー構成の名前 'MedianStopping' (必須)

TruncationSelectionPolicy

名前 説明
policyType [必須]ポリシー構成の名前 'TruncationSelection' (必須)
truncationPercentage 各評価期間に取り消される実行の割合。 INT

SweepJobLimits

名前 説明
jobLimitsType [必須]JobLimit 型。 'Command'
'Sweep' (必須)
maxConcurrentTrials スイープ ジョブの最大同時試行数。 INT
maxTotalTrials スイープ ジョブの最大試行回数。 INT
timeout ISO 8601 形式の最大実行時間。その後、ジョブは取り消されます。 秒と同じ精度の期間のみをサポートします。 string
trialTimeout スイープ ジョブ試用版のタイムアウト値。 string

目的

名前 説明
goal [必須]ハイパーパラメーター調整でサポートされるメトリック目標を定義します '最大化'
'最小化' (必須)
primaryMetric [必須]最適化するメトリックの名前。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]

SamplingAlgorithm

名前 説明
samplingAlgorithmType オブジェクトの種類を設定する ベイジアン
Grid
ランダム (必須)

BayesianSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム 'Bayesian' (必須)

GridSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム 'Grid' (必須)

RandomSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム 'Random' (必須)
ルール ランダム アルゴリズムの特定の種類 'Random'
'Sobol'
seed 乱数生成のシードとして使用する省略可能な整数 INT

TrialComponent

名前 説明
codeId コード資産の ARM リソース ID。 string
command [必須]ジョブの起動時に実行するコマンド。 例: "python train.py" string (必須)

制約:
最小長 = 1
Pattern = [a-zA-Z0-9_]
分布 (distribution) ジョブの配布構成。 設定する場合は、Mpi、Tensorflow、PyTorch、または null のいずれかである必要があります。 DistributionConfiguration
environmentId [必須]ジョブの環境仕様の ARM リソース ID。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]
environmentVariables ジョブに含まれる環境変数。 object
resources ジョブのコンピューティング リソースの構成。 ResourceConfiguration

クイック スタート テンプレート

次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。

Template 説明
Azure Machine Learning AutoML 分類ジョブを作成する

Azure にデプロイする
このテンプレートでは、Azure Machine Learning AutoML 分類ジョブを作成して、クライアントが金融機関との固定定期預金をサブスクライブするかどうかを予測するための最適なモデルを見つけます。
Azure Machine Learning コマンド ジョブを作成する

Azure にデプロイする
このテンプレートでは、基本的なhello_world スクリプトを使用して Azure Machine Learning コマンド ジョブを作成します
Azure Machine Learning スイープ ジョブを作成する

Azure にデプロイする
このテンプレートでは、ハイパーパラメーター調整用の Azure Machine Learning スイープ ジョブを作成します。

ARM テンプレート リソース定義

ワークスペース/ジョブ リソースの種類は、次を対象とする操作でデプロイできます。

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.MachineLearningServices/workspaces/jobs リソースを作成するには、次の JSON をテンプレートに追加します。

{
  "type": "Microsoft.MachineLearningServices/workspaces/jobs",
  "apiVersion": "2022-05-01",
  "name": "string",
  "properties": {
    "computeId": "string",
    "description": "string",
    "displayName": "string",
    "experimentName": "string",
    "identity": {
      "identityType": "string"
      // For remaining properties, see IdentityConfiguration objects
    },
    "isArchived": "bool",
    "properties": {},
    "services": {},
    "tags": {},
    "jobType": "string"
    // For remaining properties, see JobBaseProperties objects
  }
}

JobBaseProperties オブジェクト

オブジェクトの種類を指定するには、 jobType プロパティを設定します。

[コマンド] には、次のコマンドを使用します。

  "jobType": "Command",
  "codeId": "string",
  "command": "string",
  "distribution": {
    "distributionType": "string"
    // For remaining properties, see DistributionConfiguration objects
  },
  "environmentId": "string",
  "environmentVariables": {},
  "inputs": {},
  "limits": {
    "jobLimitsType": "string",
    "timeout": "string"
  },
  "outputs": {},
  "resources": {
    "instanceCount": "int",
    "instanceType": "string",
    "properties": {}
  }

パイプラインの場合は、次の値を使用します。

  "jobType": "Pipeline",
  "inputs": {},
  "jobs": {},
  "outputs": {},
  "settings": {}

スイープの場合は、次の値を使用します。

  "jobType": "Sweep",
  "earlyTermination": {
    "delayEvaluation": "int",
    "evaluationInterval": "int",
    "policyType": "string"
    // For remaining properties, see EarlyTerminationPolicy objects
  },
  "inputs": {},
  "limits": {
    "jobLimitsType": "string",
    "maxConcurrentTrials": "int",
    "maxTotalTrials": "int",
    "timeout": "string",
    "trialTimeout": "string"
  },
  "objective": {
    "goal": "string",
    "primaryMetric": "string"
  },
  "outputs": {},
  "samplingAlgorithm": {
    "samplingAlgorithmType": "string"
    // For remaining properties, see SamplingAlgorithm objects
  },
  "searchSpace": {},
  "trial": {
    "codeId": "string",
    "command": "string",
    "distribution": {
      "distributionType": "string"
      // For remaining properties, see DistributionConfiguration objects
    },
    "environmentId": "string",
    "environmentVariables": {},
    "resources": {
      "instanceCount": "int",
      "instanceType": "string",
      "properties": {}
    }
  }

IdentityConfiguration オブジェクト

identityType プロパティを設定して、オブジェクトの種類を指定します。

AMLToken の場合は、次の値を使用します。

  "identityType": "AMLToken"

[マネージド] には、次の値を使用します。

  "identityType": "Managed",
  "clientId": "string",
  "objectId": "string",
  "resourceId": "string"

UserIdentity の場合は、次の値を使用します。

  "identityType": "UserIdentity"

DistributionConfiguration オブジェクト

distributionType プロパティを設定して、オブジェクトの種類を指定します。

Mpi の場合は、次の値を使用します。

  "distributionType": "Mpi",
  "processCountPerInstance": "int"

PyTorch の場合は、次の値を使用します。

  "distributionType": "PyTorch",
  "processCountPerInstance": "int"

TensorFlow の場合は、次の値を使用します。

  "distributionType": "TensorFlow",
  "parameterServerCount": "int",
  "workerCount": "int"

EarlyTerminationPolicy オブジェクト

policyType プロパティを設定して、オブジェクトの種類を指定します。

Bandit の場合は、次の値を使用します。

  "policyType": "Bandit",
  "slackAmount": "int",
  "slackFactor": "int"

MedianStopping の場合は、次の値を使用します。

  "policyType": "MedianStopping"

TruncationSelection の場合は、次を使用します。

  "policyType": "TruncationSelection",
  "truncationPercentage": "int"

SamplingAlgorithm オブジェクト

オブジェクトの種類を指定するには、 samplingAlgorithmType プロパティを設定します。

ベイジアンの場合は、次の値を使用します。

  "samplingAlgorithmType": "Bayesian"

Grid の場合は、次の値を使用します。

  "samplingAlgorithmType": "Grid"

Random の場合は、次の値を使用します。

  "samplingAlgorithmType": "Random",
  "rule": "string",
  "seed": "int"

プロパティ値

workspaces/jobs

名前 説明
type リソースの種類 'Microsoft.MachineLearningServices/workspaces/jobs'
apiVersion リソース API のバージョン '2022-05-01'
name リソース名

JSON ARM テンプレートで子リソースの名前と型を設定する方法を参照してください。
string (必須)
properties [必須]エンティティの追加の属性。 JobBaseProperties (必須)

JobBaseProperties

名前 説明
computeId コンピューティング リソースの ARM リソース ID。 string
description 資産の説明テキスト。 string
displayName ジョブの表示名。 string
experimentName ジョブが属する実験の名前。 設定されていない場合、ジョブは "Default" 実験に配置されます。 string
identity ID の構成。 設定されている場合、これは AmlToken、ManagedIdentity、UserIdentity、または null のいずれかである必要があります。
null の場合、既定値は AmlToken です。
IdentityConfiguration
isArchived 資産はアーカイブされていますか? [bool]
properties 資産プロパティディクショナリ。 object
services JobEndpoints の一覧。
ローカル ジョブの場合、ジョブ エンドポイントのエンドポイント値は FileStreamObject になります。
object
tags タグ辞書。 タグは追加、削除、更新できます。 object
jobType オブジェクトの種類を設定する コマンド
パイプライン
スイープ (必須)

IdentityConfiguration

名前 説明
identityType オブジェクトの種類を設定する AMLToken
マネージド
UserIdentity (必須)

AmlToken

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 'AMLToken' (必須)

ManagedIdentity

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 'Managed' (必須)
clientId クライアント ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

制約:
最小長 = 36
最大長 = 36
Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
objectId オブジェクト ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

制約:
最小長 = 36
最大長 = 36
Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
resourceId ARM リソース ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

UserIdentity

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 'UserIdentity' (必須)

CommandJob

名前 説明
jobType [必須]ジョブの種類を指定します。 'Command' (必須)
codeId コード資産の ARM リソース ID。 string
command [必須]ジョブの起動時に実行するコマンド。 例: "python train.py" string (必須)

制約:
最小長 = 1
Pattern = [a-zA-Z0-9_]
分布 (distribution) ジョブの配布構成。 設定されている場合、これは Mpi、Tensorflow、PyTorch、または null のいずれかである必要があります。 DistributionConfiguration
environmentId [必須]ジョブの環境仕様の ARM リソース ID。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]
environmentVariables ジョブに含まれる環境変数。 object
inputs ジョブで使用される入力データ バインディングのマッピング。 object
制限 コマンド ジョブの制限。 CommandJobLimits
outputs ジョブで使用される出力データ バインディングのマッピング。 object
resources ジョブのコンピューティング リソースの構成。 ResourceConfiguration

DistributionConfiguration

名前 説明
distributionType オブジェクトの種類を設定する Mpi
PyTorch
TensorFlow (必須)

Mpi

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 'Mpi' (必須)
processCountPerInstance MPI ノードあたりのプロセス数。 INT

PyTorch

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 'PyTorch' (必須)
processCountPerInstance ノードあたりのプロセス数。 INT

TensorFlow

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 'TensorFlow' (必須)
parameterServerCount パラメーター サーバー タスクの数。 INT
workerCount worker 数。 指定しない場合、 は既定でインスタンス数になります。 INT

CommandJobLimits

名前 説明
jobLimitsType [必須]JobLimit 型。 'Command'
'Sweep' (必須)
timeout ISO 8601 形式の最大実行時間。その後、ジョブは取り消されます。 秒と同じ精度の期間のみをサポートします。 string

ResourceConfiguration

名前 説明
instanceCount コンピューティング 先で使用されるインスタンスまたはノードの数 (省略可能)。 INT
instanceType コンピューティング 先でサポートされている VM の種類 (省略可能)。 string
properties 追加のプロパティ バッグ。 object

PipelineJob

名前 説明
jobType [必須]ジョブの種類を指定します。 'Pipeline' (必須)
inputs パイプライン ジョブの入力。 object
jobs ジョブはパイプライン ジョブを構築します。 object
outputs パイプライン ジョブの出力 object
settings ContinueRunOnStepFailure などのパイプライン設定。

SweepJob

名前 説明
jobType [必須]ジョブの種類を指定します。 'Sweep' (必須)
earlyTermination 早期終了ポリシーを使用すると、実行が完了する前にパフォーマンスの低い実行をキャンセルできます EarlyTerminationPolicy
inputs ジョブで使用される入力データ バインディングのマッピング。 object
制限 スイープ ジョブの制限。 SweepJobLimits
objective [必須]最適化の目標。 目標 (必須)
outputs ジョブで使用される出力データ バインディングのマッピング。 object
samplingAlgorithm [必須]ハイパーパラメーター サンプリング アルゴリズム SamplingAlgorithm (必須)
searchSpace [必須]各パラメーターとその分布を含むディクショナリ。 ディクショナリ キーは、 パラメーターの名前です
試用 [必須]試用版コンポーネントの定義。 TrialComponent (必須)

EarlyTerminationPolicy

名前 説明
delayEvaluation 最初の評価を遅延させる間隔の数。 INT
evaluationInterval ポリシー評価間の間隔 (実行回数)。 INT
policyType オブジェクトの種類を設定する Bandit
MedianStopping
TruncationSelection (必須)

BanditPolicy

名前 説明
policyType [必須]ポリシー構成の名前 'Bandit' (必須)
slackAmount 最高のパフォーマンスを発揮する実行から許容される絶対距離。 INT
slackFactor 最もパフォーマンスの高い実行からの許可された距離の比率。 INT

MedianStoppingPolicy

名前 説明
policyType [必須]ポリシー構成の名前 'MedianStopping' (必須)

TruncationSelectionPolicy

名前 説明
policyType [必須]ポリシー構成の名前 'TruncationSelection' (必須)
truncationPercentage 各評価期間に取り消される実行の割合。 INT

SweepJobLimits

名前 説明
jobLimitsType [必須]JobLimit 型。 'Command'
'Sweep' (必須)
maxConcurrentTrials スイープ ジョブの最大同時試行数。 INT
maxTotalTrials スイープ ジョブの最大試行回数。 INT
timeout ISO 8601 形式の最大実行時間。その後、ジョブは取り消されます。 秒と同じ精度の期間のみをサポートします。 string
trialTimeout スイープ ジョブ試用版のタイムアウト値。 string

目的

名前 説明
goal [必須]ハイパーパラメーター調整でサポートされるメトリック目標を定義します '最大化'
'最小化' (必須)
primaryMetric [必須]最適化するメトリックの名前。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]

SamplingAlgorithm

名前 説明
samplingAlgorithmType オブジェクトの種類を設定する ベイジアン
Grid
ランダム (必須)

BayesianSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム 'Bayesian' (必須)

GridSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム 'Grid' (必須)

RandomSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム 'Random' (必須)
ルール ランダム アルゴリズムの特定の種類 'Random'
'Sobol'
seed 乱数生成のシードとして使用する省略可能な整数 INT

TrialComponent

名前 説明
codeId コード資産の ARM リソース ID。 string
command [必須]ジョブの起動時に実行するコマンド。 例: "python train.py" string (必須)

制約:
最小長 = 1
Pattern = [a-zA-Z0-9_]
分布 (distribution) ジョブの配布構成。 設定する場合は、Mpi、Tensorflow、PyTorch、または null のいずれかである必要があります。 DistributionConfiguration
environmentId [必須]ジョブの環境仕様の ARM リソース ID。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]
environmentVariables ジョブに含まれる環境変数。 object
resources ジョブのコンピューティング リソースの構成。 ResourceConfiguration

クイック スタート テンプレート

次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。

Template 説明
Azure Machine Learning AutoML 分類ジョブを作成する

Azure にデプロイする
このテンプレートでは、Azure Machine Learning AutoML 分類ジョブを作成して、クライアントが金融機関との固定定期預金をサブスクライブするかどうかを予測するための最適なモデルを見つけます。
Azure Machine Learning コマンド ジョブを作成する

Azure にデプロイする
このテンプレートでは、基本的なhello_world スクリプトを使用して Azure Machine Learning コマンド ジョブを作成します
Azure Machine Learning スイープ ジョブを作成する

Azure にデプロイする
このテンプレートでは、ハイパーパラメーター調整用の Azure Machine Learning スイープ ジョブを作成します。

Terraform (AzAPI プロバイダー) リソース定義

ワークスペース/ジョブ リソースの種類は、次を対象とする操作でデプロイできます。

  • リソース グループ

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.MachineLearningServices/workspaces/jobs リソースを作成するには、次の Terraform をテンプレートに追加します。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.MachineLearningServices/workspaces/jobs@2022-05-01"
  name = "string"
  parent_id = "string"
  body = jsonencode({
    properties = {
      computeId = "string"
      description = "string"
      displayName = "string"
      experimentName = "string"
      identity = {
        identityType = "string"
        // For remaining properties, see IdentityConfiguration objects
      }
      isArchived = bool
      properties = {}
      services = {}
      tags = {}
      jobType = "string"
      // For remaining properties, see JobBaseProperties objects
    }
  })
}

JobBaseProperties オブジェクト

オブジェクトの種類を指定するには、 jobType プロパティを設定します。

[コマンド] には、次のコマンドを使用します。

  jobType = "Command"
  codeId = "string"
  command = "string"
  distribution = {
    distributionType = "string"
    // For remaining properties, see DistributionConfiguration objects
  }
  environmentId = "string"
  environmentVariables = {}
  inputs = {}
  limits = {
    jobLimitsType = "string"
    timeout = "string"
  }
  outputs = {}
  resources = {
    instanceCount = int
    instanceType = "string"
    properties = {}
  }

パイプラインの場合は、次の値を使用します。

  jobType = "Pipeline"
  inputs = {}
  jobs = {}
  outputs = {}

スイープの場合は、次の値を使用します。

  jobType = "Sweep"
  earlyTermination = {
    delayEvaluation = int
    evaluationInterval = int
    policyType = "string"
    // For remaining properties, see EarlyTerminationPolicy objects
  }
  inputs = {}
  limits = {
    jobLimitsType = "string"
    maxConcurrentTrials = int
    maxTotalTrials = int
    timeout = "string"
    trialTimeout = "string"
  }
  objective = {
    goal = "string"
    primaryMetric = "string"
  }
  outputs = {}
  samplingAlgorithm = {
    samplingAlgorithmType = "string"
    // For remaining properties, see SamplingAlgorithm objects
  }
  trial = {
    codeId = "string"
    command = "string"
    distribution = {
      distributionType = "string"
      // For remaining properties, see DistributionConfiguration objects
    }
    environmentId = "string"
    environmentVariables = {}
    resources = {
      instanceCount = int
      instanceType = "string"
      properties = {}
    }
  }

IdentityConfiguration オブジェクト

identityType プロパティを設定して、オブジェクトの種類を指定します。

AMLToken の場合は、次の値を使用します。

  identityType = "AMLToken"

[マネージド] には、次の値を使用します。

  identityType = "Managed"
  clientId = "string"
  objectId = "string"
  resourceId = "string"

UserIdentity の場合は、次の値を使用します。

  identityType = "UserIdentity"

DistributionConfiguration オブジェクト

distributionType プロパティを設定して、オブジェクトの種類を指定します。

Mpi の場合は、次の値を使用します。

  distributionType = "Mpi"
  processCountPerInstance = int

PyTorch の場合は、次の値を使用します。

  distributionType = "PyTorch"
  processCountPerInstance = int

TensorFlow の場合は、次の値を使用します。

  distributionType = "TensorFlow"
  parameterServerCount = int
  workerCount = int

EarlyTerminationPolicy オブジェクト

policyType プロパティを設定して、オブジェクトの種類を指定します。

Bandit の場合は、次の値を使用します。

  policyType = "Bandit"
  slackAmount = int
  slackFactor = int

MedianStopping の場合は、次の値を使用します。

  policyType = "MedianStopping"

TruncationSelection の場合は、次の値を使用します。

  policyType = "TruncationSelection"
  truncationPercentage = int

SamplingAlgorithm オブジェクト

samplingAlgorithmType プロパティを設定して、オブジェクトの種類を指定します。

ベイジアンの場合は、次の値を使用します。

  samplingAlgorithmType = "Bayesian"

Grid の場合は、次の値を使用します。

  samplingAlgorithmType = "Grid"

[Random]\(ランダム\) には、次の値を使用します。

  samplingAlgorithmType = "Random"
  rule = "string"
  seed = int

プロパティ値

workspaces/jobs

名前 説明
type リソースの種類 "Microsoft.MachineLearningServices/workspaces/jobs@2022-05-01"
name リソース名 string (必須)
parent_id このリソースの親であるリソースの ID。 種類のリソースの ID: ワークスペース
properties [必須]エンティティの追加の属性。 JobBaseProperties (必須)

JobBaseProperties

名前 説明
computeId コンピューティング リソースの ARM リソース ID。 string
description 資産の説明テキスト。 string
displayName ジョブの表示名。 string
experimentName ジョブが属する実験の名前。 設定されていない場合、ジョブは "Default" 実験に配置されます。 string
identity ID の構成。 設定されている場合、これは AmlToken、ManagedIdentity、UserIdentity、または null のいずれかである必要があります。
null の場合、既定値は AmlToken です。
IdentityConfiguration
isArchived 資産はアーカイブされていますか? [bool]
properties 資産プロパティディクショナリ。 object
services JobEndpoints の一覧。
ローカル ジョブの場合、ジョブ エンドポイントのエンドポイント値は FileStreamObject になります。
object
tags タグ辞書。 タグは追加、削除、更新できます。 object
jobType オブジェクトの種類を設定する コマンド
パイプライン
スイープ (必須)

IdentityConfiguration

名前 説明
identityType オブジェクトの種類を設定する AMLToken
マネージド
UserIdentity (必須)

AmlToken

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 "AMLToken" (必須)

ManagedIdentity

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 "Managed" (必須)
clientId クライアント ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

制約:
最小長 = 36
最大長 = 36
Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
objectId オブジェクト ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

制約:
最小長 = 36
最大長 = 36
Pattern = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
resourceId ARM リソース ID でユーザー割り当て ID を指定します。 システム割り当ての場合は、このフィールドを設定しないでください。 string

UserIdentity

名前 説明
identityType [必須]ID フレームワークの種類を指定します。 "UserIdentity" (必須)

CommandJob

名前 説明
jobType [必須]ジョブの種類を指定します。 "Command" (必須)
codeId コード資産の ARM リソース ID。 string
command [必須]ジョブの起動時に実行するコマンド。 例: "python train.py" string (必須)

制約:
最小長 = 1
Pattern = [a-zA-Z0-9_]
分布 (distribution) ジョブの配布構成。 設定されている場合、これは Mpi、Tensorflow、PyTorch、または null のいずれかである必要があります。 DistributionConfiguration
environmentId [必須]ジョブの環境仕様の ARM リソース ID。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]
environmentVariables ジョブに含まれる環境変数。 object
inputs ジョブで使用される入力データ バインディングのマッピング。 object
制限 コマンド ジョブの制限。 CommandJobLimits
outputs ジョブで使用される出力データ バインディングのマッピング。 object
resources ジョブのコンピューティング リソースの構成。 ResourceConfiguration

DistributionConfiguration

名前 説明
distributionType オブジェクトの種類を設定する Mpi
PyTorch
TensorFlow (必須)

Mpi

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 "Mpi" (必須)
processCountPerInstance MPI ノードあたりのプロセス数。 INT

PyTorch

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 "PyTorch" (必須)
processCountPerInstance ノードあたりのプロセス数。 INT

TensorFlow

名前 説明
distributionType [必須]ディストリビューション フレームワークの種類を指定します。 "TensorFlow" (必須)
parameterServerCount パラメーター サーバー タスクの数。 INT
workerCount worker 数。 指定しない場合、 は既定でインスタンス数になります。 INT

CommandJobLimits

名前 説明
jobLimitsType [必須]JobLimit 型。 "Command"
"Sweep" (必須)
timeout ISO 8601 形式の最大実行時間。その後、ジョブは取り消されます。 有効桁数が秒の期間のみをサポートします。 string

ResourceConfiguration

名前 説明
instanceCount コンピューティング 先で使用されるインスタンスまたはノードの数 (省略可能)。 INT
instanceType コンピューティング 先でサポートされている VM のオプションの種類。 string
properties その他のプロパティ バッグ。 object

PipelineJob

名前 説明
jobType [必須]ジョブの種類を指定します。 "Pipeline" (必須)
inputs パイプライン ジョブの入力。 object
jobs ジョブはパイプライン ジョブを構築します。 object
outputs パイプライン ジョブの出力 object
settings ContinueRunOnStepFailure などのパイプライン設定。

SweepJob

名前 説明
jobType [必須]ジョブの種類を指定します。 "Sweep" (必須)
earlyTermination 早期終了ポリシーを使用すると、実行が完了する前にパフォーマンスの低い実行を取り消す EarlyTerminationPolicy
inputs ジョブで使用される入力データ バインディングのマッピング。 object
制限 スイープ ジョブの制限。 SweepJobLimits
objective [必須]最適化の目的。 目標 (必須)
outputs ジョブで使用される出力データ バインディングのマッピング。 object
samplingAlgorithm [必須]ハイパーパラメーター サンプリング アルゴリズム SamplingAlgorithm (必須)
searchSpace [必須]各パラメーターとその分布を含むディクショナリ。 ディクショナリ キーは パラメーターの名前です
試用 [必須]試用版コンポーネントの定義。 TrialComponent (必須)

EarlyTerminationPolicy

名前 説明
delayEvaluation 最初の評価を遅らせる間隔の数。 INT
evaluationInterval ポリシー評価間の間隔 (実行数)。 INT
policyType オブジェクトの種類を設定する Bandit
MedianStopping
TruncationSelection (必須)

BanditPolicy

名前 説明
policyType [必須]ポリシー構成の名前 "Bandit" (必須)
slackAmount 最高のパフォーマンスを発揮する実行から許容される絶対距離。 INT
slackFactor 最もパフォーマンスの高い実行からの許可された距離の比率。 INT

MedianStoppingPolicy

名前 説明
policyType [必須]ポリシー構成の名前 "MedianStopping" (必須)

TruncationSelectionPolicy

名前 説明
policyType [必須]ポリシー構成の名前 "TruncationSelection" (必須)
truncationPercentage 各評価期間に取り消される実行の割合。 INT

SweepJobLimits

名前 説明
jobLimitsType [必須]JobLimit 型。 "Command"
"Sweep" (必須)
maxConcurrentTrials スイープ ジョブの最大同時試行回数。 INT
maxTotalTrials スイープ ジョブの最大試行回数。 INT
timeout ISO 8601 形式の最大実行時間。その後、ジョブは取り消されます。 有効桁数が秒の期間のみをサポートします。 string
trialTimeout スイープ ジョブ試用版のタイムアウト値。 string

目的

名前 説明
goal [必須]ハイパーパラメーターチューニングでサポートされるメトリック目標を定義します "最大化"
"最小化" (必須)
primaryMetric [必須]最適化するメトリックの名前。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]

SamplingAlgorithm

名前 説明
samplingAlgorithmType オブジェクトの種類を設定する ベイジアン
Grid
ランダム (必須)

BayesianSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム "Bayesian" (必須)

GridSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム "Grid" (必須)

RandomSamplingAlgorithm

名前 説明
samplingAlgorithmType [必須]構成プロパティと共にハイパーパラメーター値を生成するために使用されるアルゴリズム "Random" (必須)
ルール ランダム アルゴリズムの特定の種類 "Random"
"Sobol"
seed 乱数生成のシードとして使用する省略可能な整数 INT

TrialComponent

名前 説明
codeId コード資産の ARM リソース ID。 string
command [必須]ジョブの起動時に実行するコマンド。 例: "python train.py" string (必須)

制約:
最小長 = 1
Pattern = [a-zA-Z0-9_]
分布 (distribution) ジョブの配布構成。 設定されている場合、これは Mpi、Tensorflow、PyTorch、または null のいずれかである必要があります。 DistributionConfiguration
environmentId [必須]ジョブの環境仕様の ARM リソース ID。 string (必須)

制約:
Pattern = [a-zA-Z0-9_]
environmentVariables ジョブに含まれる環境変数。 object
resources ジョブのコンピューティング リソースの構成。 ResourceConfiguration