Iperparametri per le attività di visione artificiale in Machine Learning automatizzato (v1)
Si applica a: Python SDK azureml v1
Informazioni sugli iperparametri disponibili in modo specifico per le attività di visione artificiale negli esperimenti automatizzati di Machine Learning.
Con il supporto per le attività di visione artificiale, è possibile controllare l'algoritmo del modello e gli iperparametri di sweep. Questi algoritmi di modello e iperparametri vengono passati come spazio dei parametri per lo sweep. Anche se molti degli iperparametri esposti sono indipendenti dal modello, esistono istanze in cui gli iperparametri sono specifici del modello o specifici dell'attività.
Iperparametri specifici del modello
Questa tabella riepiloga gli iperparametri specifici dell'algoritmo yolov5
.
Nome parametro | Descrizione | Default |
---|---|---|
validation_metric_type |
Metodo di calcolo delle metriche da usare per le metriche di convalida. Deve essere none , coco voc , o coco_voc . |
voc |
validation_iou_threshold |
Soglia IOU per la corrispondenza delle caselle durante il calcolo delle metriche di convalida. Deve essere un valore float nell'intervallo [0,1, 1]. |
0,5 |
img_size |
Dimensioni dell'immagine per il training e la convalida. Deve essere un intero positivo. Nota: l'esecuzione del training può entrare nell'OOM CUDA se le dimensioni sono troppo grandi. |
640 |
model_size |
Dimensioni del modello. Deve essere small , medium large , o xlarge . Nota: se le dimensioni del modello sono troppo grandi, l'esecuzione del training può entrare nell'OOM CUDA. |
medium |
multi_scale |
Abilitare l'immagine su più scalabilità variando le dimensioni dell'immagine di +/- 50% Deve essere 0 o 1. Nota: l'esecuzione del training può entrare nell'OOM CUDA se non è sufficiente memoria GPU. |
0 |
box_score_thresh |
Durante l'inferenza, restituisce solo proposte con un punteggio maggiore di box_score_thresh . Il punteggio è la moltiplicazione del punteggio di oggetto e della probabilità di classificazione. Deve essere un valore float compreso nell'intervallo [0, 1]. |
0.1 |
nms_iou_thresh |
Soglia IOU usata durante l'inferenza in post-elaborazione post-eliminazione non massima. Deve essere un valore float compreso nell'intervallo [0, 1]. |
0,5 |
tile_grid_size |
Dimensioni della griglia da usare per l’affiancamento di ogni immagine. Nota: tile_grid_size non deve essere Nessuno per abilitare la logica di rilevamento oggetti di piccole dimensioni Tupla di due interi passati come stringa. Esempio: --tile_grid_size "(3, 2)" |
Nessun valore predefinito |
tile_overlap_ratio |
Rapporto di sovrapposizione tra riquadri adiacenti in ogni dimensione. Deve essere float nell'intervallo di [0, 1) |
0,25 |
tile_predictions_nms_thresh |
Soglia IOU da usare per eseguire NMS durante l'unione di stime da riquadri e immagini. Usato nella convalida/inferenza. Deve essere float nell'intervallo di [0, 1] |
0,25 |
Questa tabella riepiloga gli iperparametri specifici dell'oggetto per la segmentazione dell'istanza durante l'inferenza maskrcnn_*
.
Nome parametro | Descrizione | Default |
---|---|---|
mask_pixel_score_threshold |
Assegnare un punteggio per considerare un pixel come parte della maschera di un oggetto. | 0,5 |
max_number_of_polygon_points |
Numero massimo di coppie di coordinate (x, y) nel poligono dopo la conversione da una maschera. | 100 |
export_as_image |
Esportare le maschere come immagini. | Falso |
image_type |
Tipo di immagine da esportare maschera come (le opzioni sono jpg, png, bmp). | JPG |
Iperparametri indipendenti dal modello
Nella tabella seguente vengono descritti gli iperparametri indipendenti dal modello.
Nome parametro | Descrizione | Default |
---|---|---|
number_of_epochs |
Numero di periodi di training. Deve essere un intero positivo. |
15 (tranne yolov5 : 30) |
training_batch_size |
Dimensioni del batch di training. Deve essere un intero positivo. |
Multiclasse/multi-etichetta: 78 (tranne vit-variants: vits16r224 : 128 vitb16r224 : 48 vitl16r224 :10)Rilevamento oggetti: 2 (tranne yolov5 : 16) Segmentazione dell'istanza: 2 Nota: le impostazioni predefinite sono dimensioni batch maggiori che possono essere usate nella memoria GPU 12 GiB. |
validation_batch_size |
Dimensioni del batch di convalida. Deve essere un intero positivo. |
Multiclasse/multi-etichetta: 78 (tranne vit-variants: vits16r224 : 128 vitb16r224 : 48 vitl16r224 :10)Rilevamento oggetti: 1 (tranne yolov5 : 16) Segmentazione dell'istanza: 1 Nota: le impostazioni predefinite sono dimensioni batch maggiori che possono essere usate nella memoria GPU 12 GiB. |
grad_accumulation_step |
L'accumulo di sfumature significa eseguire un numero configurato di grad_accumulation_step senza aggiornare i pesi del modello durante l'accumulo delle sfumature di tali passaggi e quindi usare le sfumature accumulate per calcolare gli aggiornamenti del peso. Deve essere un intero positivo. |
1 |
early_stopping |
Abilitare la logica di arresto anticipato durante il training. Deve essere 0 o 1. |
1 |
early_stopping_patience |
Numero minimo di periodi o valutazioni di convalida con nessun miglioramento delle metriche primarie prima dell'arresto dell'esecuzione. Deve essere un intero positivo. |
5 |
early_stopping_delay |
Numero minimo di periodi o valutazioni di convalida da attendere prima che il miglioramento della metrica primaria venga monitorato per l'arresto anticipato. Deve essere un intero positivo. |
5 |
learning_rate |
Velocità di apprendimento iniziale. Deve essere un valore float compreso nell'intervallo [0, 1]. |
Multiclasse: 0.01 (tranne vit-variants: vits16r224 : 0.0125vitb16r224 : 0.0125vitl16r224 : 0.001) Multi-label: 0.035 (tranne vit-variants: vits16r224 : 0.025vitb16r224 : 0.025 vitl16r224 : 0.002) Rilevamento oggetti: 0.005 (tranne yolov5 : 0.01) Segmentazione dell'istanza: 0,005 |
lr_scheduler |
Tipo dell'utilità di pianificazione della velocità di apprendimento. Deve essere warmup_cosine o step . |
warmup_cosine |
step_lr_gamma |
Il valore gamma quando l'utilità di pianificazione della frequenza di apprendimento è step .Deve essere un valore float compreso nell'intervallo [0, 1]. |
0,5 |
step_lr_step_size |
Valore delle dimensioni del passaggio quando l'utilità di pianificazione della frequenza di apprendimento è step .Deve essere un intero positivo. |
5 |
warmup_cosine_lr_cycles |
Valore del ciclo coseno quando l'utilità di pianificazione della frequenza di apprendimento è warmup_cosine . Deve essere un valore float compreso nell'intervallo [0, 1]. |
0,45 |
warmup_cosine_lr_warmup_epochs |
Valore dei periodi di riscaldamento quando l'utilità di pianificazione della frequenza di apprendimento è warmup_cosine . Deve essere un intero positivo. |
2 |
optimizer |
Tipo di ottimizzatore. Deve essere sgd , adam , adamw . |
sgd |
momentum |
Valore di momentum quando Optimizer è sgd . Deve essere un valore float compreso nell'intervallo [0, 1]. |
0.9 |
weight_decay |
Valore del decadimento del peso quando Optimizer è sgd , adam o adamw . Deve essere un valore float compreso nell'intervallo [0, 1]. |
1e-4 |
nesterov |
Abilitare nesterov quando Optimizer è sgd . Deve essere 0 o 1. |
1 |
beta1 |
Valore di beta1 quando Optimizer è adam o adamw . Deve essere un valore float compreso nell'intervallo [0, 1]. |
0.9 |
beta2 |
Valore di beta2 quando Optimizer è adam o adamw .Deve essere un valore float compreso nell'intervallo [0, 1]. |
0,999 |
amsgrad |
Abilitare amsgrad quando Optimizer è adam o adamw .Deve essere 0 o 1. |
0 |
evaluation_frequency |
Frequenza per valutare il set di dati di convalida per ottenere i punteggi delle metriche. Deve essere un intero positivo. |
1 |
checkpoint_frequency |
Frequenza per archiviare i checkpoint del modello. Deve essere un intero positivo. |
Checkpoint in fase con la metrica primaria migliore per la convalida. |
checkpoint_run_id |
ID esecuzione dell'esperimento con un checkpoint con training preliminare per il training incrementale. | Non sono previsti valori predefiniti |
checkpoint_dataset_id |
ID FileDataset contenente checkpoint con training preliminare per il training incrementale. Assicurarsi di passare checkpoint_filename insieme checkpoint_dataset_id a . |
Non sono previsti valori predefiniti |
checkpoint_filename |
Nome file del checkpoint con training preliminare in FileDataset per il training incrementale. Assicurarsi di passare checkpoint_dataset_id insieme checkpoint_filename a . |
Non sono previsti valori predefiniti |
layers_to_freeze |
Numero di livelli da bloccare per il modello. Ad esempio, passando 2 come valore per seresnext significa bloccare layer0 e layer1 facendo riferimento alle informazioni del livello del modello supportate di seguito. Deve essere un intero positivo. 'resnet': [('conv1.', 'bn1.'), 'layer1.', 'layer2.', 'layer3.', 'layer4.'], 'mobilenetv2': ['features.0.', 'features.1.', 'features.2.', 'features.3.', 'features.4.', 'features.5.', 'features.6.', 'features.7.', 'features.8.', 'features.9.', 'features.10.', 'features.11.', 'features.12.', 'features.13.', 'features.14.', 'features.15.', 'features.16.', 'features.17.', 'features.18.'], 'seresnext': ['layer0.', 'layer1.', 'layer2.', 'layer3.', 'layer4.'], 'vit': ['patch_embed', 'blocks.0.', 'blocks.1.', 'blocks.2.', 'blocks.3.', 'blocks.4.', 'blocks.5.', 'blocks.6.','blocks.7.', 'blocks.8.', 'blocks.9.', 'blocks.10.', 'blocks.11.'], 'yolov5_backbone': ['model.0.', 'model.1.', 'model.2.', 'model.3.', 'model.4.','model.5.', 'model.6.', 'model.7.', 'model.8.', 'model.9.'], 'resnet_backbone': ['backbone.body.conv1.', 'backbone.body.layer1.', 'backbone.body.layer2.','backbone.body.layer3.', 'backbone.body.layer4.'] |
Non sono previsti valori predefiniti |
Iperparametri specifici della classificazione delle immagini (multiclasse e multi-etichetta)
La tabella seguente riepiloga gli iperparmetri per le attività di classificazione delle immagini (multiclasse e multi-etichetta).
Nome parametro | Descrizione | Default |
---|---|---|
weighted_loss |
0 per nessuna perdita ponderata. 1 per perdita ponderata con sqrt. (class_weights) 2 per perdita ponderata con class_weights. Deve essere 0 o 1 o 2. |
0 |
valid_resize_size |
Note: seresnext non accetta dimensioni arbitrarie. |
256 |
valid_crop_size |
Note: seresnext non accetta dimensioni arbitrarie. valid_crop_size e train_crop_size . |
224 |
train_crop_size |
Note: seresnext non accetta dimensioni arbitrarie. valid_crop_size e train_crop_size . |
224 |
Rilevamento oggetti e segmentazione dell'istanza di iperparametri specifici
Gli iperparametri seguenti sono destinati alle attività di rilevamento degli oggetti e segmentazione dell'istanza.
Avviso
Questi parametri non sono supportati con l'algoritmo yolov5
. Vedere la sezione relativa agli iperparametri specifici del modello per yolov5
gli iperparmetri supportati.
Nome parametro | Descrizione | Default |
---|---|---|
validation_metric_type |
Metodo di calcolo delle metriche da usare per le metriche di convalida. Deve essere none , coco voc , o coco_voc . |
voc |
validation_iou_threshold |
Soglia IOU per la corrispondenza delle caselle durante il calcolo delle metriche di convalida. Deve essere un valore float nell'intervallo [0,1, 1]. |
0,5 |
min_size |
Dimensioni minime dell'immagine da ridimensionare prima di alimentarla al backbone. Deve essere un intero positivo. Nota: l'esecuzione del training può entrare nell'OOM CUDA se le dimensioni sono troppo grandi. |
600 |
max_size |
Dimensioni massime dell'immagine da ridimensionare prima di alimentarla al backbone. Deve essere un intero positivo. Nota: l'esecuzione del training può entrare nell'OOM CUDA se le dimensioni sono troppo grandi. |
1333 |
box_score_thresh |
Durante l'inferenza, restituisce solo proposte con un punteggio di classificazione maggiore di box_score_thresh . Deve essere un valore float compreso nell'intervallo [0, 1]. |
0.3 |
nms_iou_thresh |
Soglia IOU (intersezione su unione) usata nell'eliminazione non massima (NMS) per la testa di stima. Usato durante l'inferenza. Deve essere un valore float compreso nell'intervallo [0, 1]. |
0,5 |
box_detections_per_img |
Numero massimo di rilevamenti per immagine, per tutte le classi. Deve essere un intero positivo. |
100 |
tile_grid_size |
Dimensioni della griglia da usare per l’affiancamento di ogni immagine. Nota: tile_grid_size non deve essere Nessuno per abilitare la logica di rilevamento oggetti di piccole dimensioni Tupla di due interi passati come stringa. Esempio: --tile_grid_size "(3, 2)" |
Nessun valore predefinito |
tile_overlap_ratio |
Rapporto di sovrapposizione tra riquadri adiacenti in ogni dimensione. Deve essere float nell'intervallo di [0, 1) |
0,25 |
tile_predictions_nms_thresh |
Soglia IOU da usare per eseguire NMS durante l'unione di stime da riquadri e immagini. Usato nella convalida/inferenza. Deve essere float nell'intervallo di [0, 1] |
0,25 |
Passaggi successivi
Informazioni su come configurare AutoML per eseguire il training di modelli di visione artificiale con Python (anteprima).