ImageObjectDetectionJob 類別

AutoML 影像物件偵測作業的組態。

初始化新的 AutoML 影像物件偵測作業。

繼承
azure.ai.ml.entities._job.automl.image.automl_image_object_detection_base.AutoMLImageObjectDetectionBase
ImageObjectDetectionJob

建構函式

ImageObjectDetectionJob(*, primary_metric: str | ObjectDetectionPrimaryMetrics | None = None, **kwargs)

參數

primary_metric
必要

要用於優化的主要計量

kwargs
必要

作業特定引數

方法

dump

以 YAML 格式將作業內容傾印到檔案中。

extend_search_space

新增 AutoML 影像物件偵測和影像實例分割工作的搜尋空間。

set_data
set_limits

限制所有 AutoML 影像垂直設定。

set_sweep

所有 AutoML 影像垂直的掃掠設定。

set_training_parameters

為 AutoML 影像物件偵測和影像實例分割工作設定影像訓練參數。

dump

以 YAML 格式將作業內容傾印到檔案中。

dump(dest: str | PathLike | IO, **kwargs) -> None

參數

dest
Union[<xref:PathLike>, str, IO[AnyStr]]
必要

要寫入 YAML 內容的本機路徑或檔案資料流程。 如果 dest 是檔案路徑,將會建立新的檔案。 如果 dest 是開啟的檔案,則會直接將檔案寫入。

kwargs
dict

要傳遞至 YAML 序列化程式的其他引數。

例外狀況

如果 dest 是檔案路徑且檔案已經存在,則會引發 。

如果 dest 是開啟的檔案,而且檔案無法寫入,則引發。

extend_search_space

新增 AutoML 影像物件偵測和影像實例分割工作的搜尋空間。

extend_search_space(value: SearchSpace | List[SearchSpace]) -> None

參數

value
Union[SearchSpace, List[SearchSpace]]
必要

搜尋參數空間

例外狀況

如果 dest 是檔案路徑且檔案已經存在,則會引發 。

如果 dest 是開啟的檔案,而且檔案無法寫入,則引發。

set_data

set_data(*, training_data: Input, target_column_name: str, validation_data: Input | None = None, validation_data_size: float | None = None) -> None

例外狀況

如果 dest 是檔案路徑且檔案已經存在,則會引發 。

如果 dest 是開啟的檔案,而且檔案無法寫入,則引發。

set_limits

限制所有 AutoML 影像垂直設定。

set_limits(*, max_concurrent_trials: int | None = None, max_trials: int | None = None, timeout_minutes: int | None = None) -> None

參數

timeout_minutes
timedelta

AutoML 作業逾時。

例外狀況

如果 dest 是檔案路徑且檔案已經存在,則會引發 。

如果 dest 是開啟的檔案,而且檔案無法寫入,則引發。

set_sweep

所有 AutoML 影像垂直的掃掠設定。

set_sweep(*, sampling_algorithm: str | Random | Grid | Bayesian, early_termination: BanditPolicy | MedianStoppingPolicy | TruncationSelectionPolicy | None = None) -> None

參數

sampling_algorithm

必要。 [必要]超參數取樣演算法的類型。 可能的值為:「Grid」、「Random」、「Bayesian」。

early_termination
Union[ BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy]

早期終止原則的類型。

例外狀況

如果 dest 是檔案路徑且檔案已經存在,則會引發 。

如果 dest 是開啟的檔案,而且檔案無法寫入,則引發。

set_training_parameters

為 AutoML 影像物件偵測和影像實例分割工作設定影像訓練參數。

set_training_parameters(*, advanced_settings: str | None = None, ams_gradient: bool | None = None, beta1: float | None = None, beta2: float | None = None, checkpoint_frequency: int | None = None, checkpoint_run_id: str | None = None, distributed: bool | None = None, early_stopping: bool | None = None, early_stopping_delay: int | None = None, early_stopping_patience: int | None = None, enable_onnx_normalization: bool | None = None, evaluation_frequency: int | None = None, gradient_accumulation_step: int | None = None, layers_to_freeze: int | None = None, learning_rate: float | None = None, learning_rate_scheduler: str | LearningRateScheduler | None = None, model_name: str | None = None, momentum: float | None = None, nesterov: bool | None = None, number_of_epochs: int | None = None, number_of_workers: int | None = None, optimizer: str | StochasticOptimizer | None = None, random_seed: int | None = None, step_lr_gamma: float | None = None, step_lr_step_size: int | None = None, training_batch_size: int | None = None, validation_batch_size: int | None = None, warmup_cosine_lr_cycles: float | None = None, warmup_cosine_lr_warmup_epochs: int | None = None, weight_decay: float | None = None, box_detections_per_image: int | None = None, box_score_threshold: float | None = None, image_size: int | None = None, max_size: int | None = None, min_size: int | None = None, model_size: str | ModelSize | None = None, multi_scale: bool | None = None, nms_iou_threshold: float | None = None, tile_grid_size: str | None = None, tile_overlap_ratio: float | None = None, tile_predictions_nms_threshold: float | None = None, validation_iou_threshold: float | None = None, validation_metric_type: str | ValidationMetricType | None = None, log_training_metrics: str | LogTrainingMetrics | None = None, log_validation_loss: str | LogValidationLoss | None = None) -> None

參數

advanced_settings
str

進階案例的設定。

ams_gradient
bool

當優化器為 'adam' 或 'adamw' 時啟用 AMSGrad。

beta1
float

優化器為 'adam' 或 'adamw' 時的 'Beta1' 值。 必須是範圍 [0, 1] 內的浮點數。

beta2
float

優化器為 'adam' 或 'adamw' 時的 'Beta2' 值。 必須是範圍 [0, 1] 內的浮點數。

checkpoint_frequency
int

儲存模型檢查點的頻率。 必須是正整數。

checkpoint_run_id
str

先前執行的識別碼,其具有累加定型的預先定型檢查點。

distributed
bool

是否要使用分散式定型。

early_stopping
bool

在定型期間啟用提早停止邏輯。

early_stopping_delay
int

在追蹤主要計量改進之前,要等候的最小 Epoch 或驗證評估數目,以便提早停止。 必須是正整數。

early_stopping_patience
int

停止執行之前,沒有主要計量改進的最小 Epoch 或驗證評估數目。 必須是正整數。

enable_onnx_normalization
bool

匯出 ONNX 模型時啟用正規化。

evaluation_frequency
int

評估驗證資料集以取得計量分數的頻率。 必須是正整數。

gradient_accumulation_step
int

漸層累積表示在不更新模型權數的情況下執行已設定的 「GradAccumulationStep」 步驟,同時累積這些步驟的漸層,然後使用累積的漸層來計算權數更新。 必須是正整數。

layers_to_freeze

要凍結模型的圖層數目。 必須是正整數。 例如,將 2 當做 'seresnext' 的值傳遞表示凍結 layer0 和 layer1。 如需支援之模型的完整清單,以及圖層凍結的詳細資料,請參閱: https://docs.microsoft.com/en-us/azure/machine-learning/reference-automl-images-hyperparameters#model-agnostic-hyperparameters 。 # pylint: disable=line-too-long

learning_rate
float

初始學習速率。 必須是範圍 [0, 1] 內的浮點數。

learning_rate_scheduler

學習率排程器的類型。 必須是 'warmup_cosine' 或 'step'。 可能的值包括:「None」、「WarmupCosine」、「Step」。

model_name

要用於定型的模型名稱。 如需可用模型的詳細資訊,請流覽官方檔: https://docs.microsoft.com/en-us/azure/machine-learning/how-to-auto-train-image-models

momentum
float

優化工具為 'sgd' 時的時刻值。 必須是範圍 [0, 1] 內的浮點數。

nesterov
bool

當優化器為 'sgd' 時,請啟用 nesterov。

number_of_epochs
int

定型 Epoch 的數目。 必須是正整數。

number_of_workers
int

資料載入器背景工作角色的數目。 必須是非負整數。

optimizer

最佳化工具的類型。 可能的值為:「None」、「Sgd」、「Adam」、「Adamw」。

random_seed
int

使用決定性定型時要使用的隨機種子。

step_lr_gamma
float

當學習速率排程器為 'step' 時,gamma 的值。 必須是範圍 [0, 1] 內的浮點數。

step_lr_step_size
int

當學習速率排程器為 'step' 時,步驟大小的值。 必須是正整數。

training_batch_size
int

定型批次大小。 必須是正整數。

validation_batch_size
int

驗證批次大小。 必須是正整數。

warmup_cosine_lr_cycles
float

當學習速率排程器為 'warmup_cosine' 時,余弦迴圈的值。 必須是範圍 [0, 1] 內的浮點數。

warmup_cosine_lr_warmup_epochs
int

當學習速率排程器為 'warmup_cosine'時,熱身 Epoch 的值。 必須是正整數。

weight_decay
float

優化器為 'sgd'、'adam' 或 'adamw' 時的權數衰減值。 必須是範圍[0, 1] 中的浮點數。

box_detections_per_image

針對所有類別,每個影像的偵測數目上限。 必須是正整數。 注意:'yolov5' 演算法不支援此設定。

box_score_threshold
float

在推斷期間,只會傳回分類分數大於 BoxScoreThreshold 的建議。 必須是範圍[0, 1] 中的浮點數。

image_size

定型和驗證的影像大小。 必須是正整數。 注意:如果大小太大,定型回合可能會進入 CUDA OOM。 注意:只有 'yolov5' 演算法才支援此設定。

max_size

將影像饋送至骨幹之前要重新調整的影像大小上限。 必須是正整數。 注意:如果大小太大,則定型執行可能會進入 CUDA OOM. 注意:'yolov5' 演算法不支援此設定。

min_size

將影像饋送至骨幹之前要重新調整的影像大小下限。 必須是正整數。 注意:如果大小太大,則定型執行可能會進入 CUDA OOM. 注意:'yolov5' 演算法不支援此設定。

model_size

模型大小。 必須是 'small'、'medium'、'large' 或 'extra_large'。 注意:如果模型大小太大,則定型執行可能會進入 CUDA OOM. 注意:只有 'yolov5' 演算法才支援此設定。

multi_scale

依 +/- 50% 的不同影像大小啟用多縮放映射。 注意:如果沒有足夠的 GPU 記憶體,則定型執行可能會進入 CUDA OOM。 注意:只有 'yolov5' 演算法才支援此設定。

nms_iou_threshold
float

在 NMS 後置處理中推斷期間使用的 IOU 臨界值。 必須是範圍 [0, 1] 中的 float。

tile_grid_size

要用於每個並排影像的格線大小。 注意:TileGridSize 不得為 None,才能啟用小型物件偵測邏輯。 包含兩個整數的字串,其格式為#。

tile_overlap_ratio
float

每個維度中相鄰圖格之間的重疊比例。 範圍 [0, 1) 必須是 float。

tile_predictions_nms_threshold

從圖格和影像合併預測時用來執行 NMS 的 IOU 閾值。 用於驗證/推斷。 必須是範圍 [0, 1] 中的 float。 NMS:非最大歸併。

validation_iou_threshold
float

計算驗證計量時要使用的 IOU 臨界值。 必須是範圍 [0, 1] 中的 float。

validation_metric_type
strValidationMetricType

要用於驗證計量的計量計算方法。 必須是 'none'、'coco'、'voc' 或 'coco_voc'。

log_training_metrics
str 或 <xref:azure.mgmt.machinelearningservices.models.LogTrainingMetrics>

指出是否要記錄定型計量。 必須是 'Enable' 或 'Disable'

log_validation_loss
str 或 <xref:azure.mgmt.machinelearningservices.models.LogValidationLoss>

指出是否要記錄驗證遺失。 必須是 'Enable' 或 'Disable'

例外狀況

如果 dest 是檔案路徑且檔案已經存在,則會引發 。

如果 dest 是開啟的檔案,而且檔案無法寫入,則引發。

屬性

base_path

資源的基底路徑。

傳回

資源的基底路徑。

傳回類型

str

creation_context

資源的建立內容。

傳回

資源的建立中繼資料。

傳回類型

id

資源識別碼。

傳回

資源的全域識別碼,Azure Resource Manager (ARM) 識別碼。

傳回類型

inputs

limits

log_files

作業輸出檔案。

傳回

記錄名稱和 URL 的字典。

傳回類型

log_verbosity

outputs

primary_metric

search_space

status

工作的狀態。

傳回的常見值包括「執行中」、「已完成」和「失敗」。 所有可能的值為:

  • NotStarted - 這是用戶端 Run 物件在雲端提交之前所在的暫時狀態。

  • 啟動 - 執行已在雲端中開始處理。 呼叫端此時具有執行識別碼。

  • 布建 - 正在針對指定的作業提交建立隨選計算。

  • 準備 - 正在準備執行環境,且處於兩個階段之一:

    • Docker 映射組建

    • conda 環境設定

  • 已排入佇列 - 作業已排入計算目標上的佇列。 例如,在 BatchAI 中,作業處於佇列狀態

    等候所有要求的節點準備就緒時。

  • 執行 - 作業已開始在計算目標上執行。

  • 完成 - 使用者程式碼執行已完成,且執行處於後續處理階段。

  • CancelRequested - 作業已要求取消。

  • 已完成 - 執行已順利完成。 這包括使用者程式碼執行和執行

    後續處理階段。

  • 失敗 - 執行失敗。 執行上的 Error 屬性通常會提供原因的詳細資料。

  • 已取消 - 遵循取消要求,並指出現在已成功取消執行。

  • NotResponding - 針對已啟用活動訊號的執行,最近不會傳送活動訊號。

傳回

作業的狀態。

傳回類型

studio_url

Azure ML Studio 端點。

傳回

作業詳細資料頁面的 URL。

傳回類型

sweep

task_type

取得工作類型。

傳回

要執行的工作類型。 可能的值包括:「classification」、「regression」、「forecasting」。

傳回類型

str

test_data

取得測試資料。

傳回

測試資料輸入

傳回類型

training_data

取得定型資料。

傳回

定型資料輸入

傳回類型

training_parameters

type

作業的類型。

傳回

作業的類型。

傳回類型

validation_data

取得驗證資料。

傳回

驗證資料輸入

傳回類型