ImageObjectDetectionJob 類別
AutoML 影像物件偵測作業的組態。
初始化新的 AutoML 影像物件偵測作業。
- 繼承
-
azure.ai.ml.entities._job.automl.image.automl_image_object_detection_base.AutoMLImageObjectDetectionBaseImageObjectDetectionJob
建構函式
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
參數
要寫入 YAML 內容的本機路徑或檔案資料流程。 如果 dest 是檔案路徑,將會建立新的檔案。 如果 dest 是開啟的檔案,則會直接將檔案寫入。
- kwargs
- dict
要傳遞至 YAML 序列化程式的其他引數。
例外狀況
如果 dest 是檔案路徑且檔案已經存在,則會引發 。
如果 dest 是開啟的檔案,而且檔案無法寫入,則引發。
extend_search_space
新增 AutoML 影像物件偵測和影像實例分割工作的搜尋空間。
extend_search_space(value: SearchSpace | List[SearchSpace]) -> None
參數
例外狀況
如果 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
- str 或 ValidationMetricType
要用於驗證計量的計量計算方法。 必須是 '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
creation_context
id
inputs
limits
log_files
log_verbosity
outputs
primary_metric
search_space
status
工作的狀態。
傳回的常見值包括「執行中」、「已完成」和「失敗」。 所有可能的值為:
NotStarted - 這是用戶端 Run 物件在雲端提交之前所在的暫時狀態。
啟動 - 執行已在雲端中開始處理。 呼叫端此時具有執行識別碼。
布建 - 正在針對指定的作業提交建立隨選計算。
準備 - 正在準備執行環境,且處於兩個階段之一:
Docker 映射組建
conda 環境設定
已排入佇列 - 作業已排入計算目標上的佇列。 例如,在 BatchAI 中,作業處於佇列狀態
等候所有要求的節點準備就緒時。
執行 - 作業已開始在計算目標上執行。
完成 - 使用者程式碼執行已完成,且執行處於後續處理階段。
CancelRequested - 作業已要求取消。
已完成 - 執行已順利完成。 這包括使用者程式碼執行和執行
後續處理階段。
失敗 - 執行失敗。 執行上的 Error 屬性通常會提供原因的詳細資料。
已取消 - 遵循取消要求,並指出現在已成功取消執行。
NotResponding - 針對已啟用活動訊號的執行,最近不會傳送活動訊號。
傳回
作業的狀態。
傳回類型
studio_url
sweep
task_type
test_data
training_data
training_parameters
type
validation_data
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應