ImageModelSettingsObjectDetection Classe

Paramètres de modèle pour la tâche de détection d’objets d’image AutoML.

Héritage
azure.ai.ml.entities._job.automl.image.image_model_settings.ImageModelDistributionSettings
ImageModelSettingsObjectDetection

Constructeur

ImageModelSettingsObjectDetection(*, 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: 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: 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: 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: ValidationMetricType | None = None, log_training_metrics: LogTrainingMetrics | None = None, log_validation_loss: LogValidationLoss | None = None, **kwargs)

Paramètres

advanced_settings
str
Obligatoire

Paramètres pour les scénarios avancés.

ams_gradient
bool
Obligatoire

Activez AMSGrad lorsque l’optimiseur est « adam » ou « adamw ».

beta1
float
Obligatoire

Valeur de « beta1 » lorsque l’optimiseur est « adam » ou « adamw ». Doit être un nombre à virgule flottante dans la plage [0, 1].

beta2
float
Obligatoire

Valeur de « beta2 » lorsque l’optimiseur est « adam » ou « adamw ». Doit être un nombre à virgule flottante dans la plage [0, 1].

checkpoint_frequency
int
Obligatoire

Fréquence de stockage des points de contrôle du modèle. Cette valeur doit être un entier positif.

checkpoint_run_id
str
Obligatoire

ID d’une exécution précédente qui a un point de contrôle préentraîné pour l’entraînement incrémentiel.

distributed
bool
Obligatoire

Indique s’il faut utiliser l’entraînement distribué.

early_stopping
bool
Obligatoire

Permet d’avoir une logique d’arrêt anticipé au cours de l’entraînement.

early_stopping_delay
int
Obligatoire

Nombre minimal d’époques ou d’évaluations de validation à attendre avant que l’amélioration des métriques principales soit suivie pour un arrêt précoce. Cette valeur doit être un entier positif.

early_stopping_patience
int
Obligatoire

Nombre minimal d’époques ou d’évaluations de validation sans amélioration des métriques principales avant l’arrêt de l’exécution. Cette valeur doit être un entier positif.

enable_onnx_normalization
bool
Obligatoire

Activez la normalisation lors de l’exportation du modèle ONNX.

evaluation_frequency
int
Obligatoire

Fréquence d’évaluation du jeu de données de validation pour obtenir les scores de métrique. Cette valeur doit être un entier positif.

gradient_accumulation_step
int
Obligatoire

L’accumulation de dégradés signifie exécuter un nombre configuré d’étapes « GradAccumulationStep » sans mettre à jour les pondérations du modèle tout en accumulant les dégradés de ces étapes, puis utiliser les dégradés accumulés pour calculer les mises à jour de poids. Cette valeur doit être un entier positif.

layers_to_freeze
int
Obligatoire

Nombre de couches à figer pour le modèle. Cette valeur doit être un entier positif. Pour instance, le fait de passer 2 comme valeur pour « seresnext » signifie figer layer0 et layer1. Pour obtenir la liste complète des modèles pris en charge et des détails sur le gel de la couche, consultez : https://docs.microsoft.com/en-us/azure/machine-learning/how-to-auto-train-image-models.

learning_rate
float
Obligatoire

Taux d’apprentissage initial. Doit être un nombre à virgule flottante dans la plage [0, 1].

learning_rate_scheduler
str ou LearningRateScheduler
Obligatoire

Type de planificateur du taux d’apprentissage. Doit être « warmup_cosine » ou « étape ». Les valeurs possibles sont les suivantes : « None », « WarmupCosine », « Step ».

model_name
str
Obligatoire

Nom du modèle à utiliser pour l’entraînement. Pour plus d’informations sur les modèles disponibles, consultez la documentation officielle : https://docs.microsoft.com/en-us/azure/machine-learning/how-to-auto-train-image-models.

momentum
float
Obligatoire

Valeur de momentum lorsque l’optimiseur est « sgd ». Doit être un nombre à virgule flottante dans la plage [0, 1].

nesterov
bool
Obligatoire

Activez nesterov lorsque l’optimiseur est « sgd ».

number_of_epochs
int
Obligatoire

Nombre d’époques d’entraînement. Cette valeur doit être un entier positif.

number_of_workers
int
Obligatoire

Nombre de workers du chargeur de données. Doit être un entier non négatif.

optimizer
str ou StochasticOptimizer
Obligatoire

Type d’optimiseur. Les valeurs possibles sont les suivantes : « None », « Sgd », « Adam », « Adamw ».

random_seed
int
Obligatoire

Valeur de départ aléatoire à utiliser lors de l’utilisation de l’entraînement déterministe.

step_lr_gamma
float
Obligatoire

Valeur gamma lorsque le planificateur de taux d’apprentissage est « step ». Doit être un nombre à virgule flottante dans la plage [0, 1].

step_lr_step_size
int
Obligatoire

Valeur de la taille de l’étape lorsque le planificateur de taux d’apprentissage est « étape ». Cette valeur doit être un entier positif.

training_batch_size
int
Obligatoire

Taille du lot d’entraînement. Cette valeur doit être un entier positif.

validation_batch_size
int
Obligatoire

Taille du lot de validation. Cette valeur doit être un entier positif.

warmup_cosine_lr_cycles
float
Obligatoire

Valeur du cycle de cosinus lorsque le planificateur de taux d’apprentissage est « warmup_cosine ». Doit être un nombre à virgule flottante dans la plage [0, 1].

warmup_cosine_lr_warmup_epochs
int
Obligatoire

Valeur des époques de préchauffement lorsque le planificateur de taux d’apprentissage est « warmup_cosine ». Cette valeur doit être un entier positif.

weight_decay
float
Obligatoire

Valeur de la décroissance de poids lorsque l’optimiseur est « sgd », « adam » ou « adamw ». Doit être un float dans la plage[0, 1].

box_detections_per_image
int
Obligatoire

Nombre maximal de détections par image, pour toutes les classes. Cette valeur doit être un entier positif. Remarque : ces paramètres ne sont pas pris en charge pour l’algorithme « yolov5 ».

box_score_threshold
float
Obligatoire

Pendant l’inférence, retourne uniquement les propositions dont le score de classification est supérieur à BoxScoreThreshold. Doit être un float dans la plage[0, 1].

image_size
int
Obligatoire

Taille d’image pour l’entraînement et la validation. Cette valeur doit être un entier positif. Remarque : L’exécution de l’entraînement peut être intégrée à CUDA OOM si la taille est trop grande. Remarque : ces paramètres sont uniquement pris en charge pour l’algorithme « yolov5 ».

max_size
int
Obligatoire

Taille maximale de l’image à remettre à l’échelle avant de l’alimenter à l’épine dorsale (backbone). Cette valeur doit être un entier positif. Remarque : L’exécution de l’entraînement peut aboutir à un manque de mémoire de CUDA si la taille est trop grande. Remarque : ces paramètres ne sont pas pris en charge pour l’algorithme « yolov5 ».

min_size
int
Obligatoire

Taille minimale de l’image à remettre à l’échelle avant de l’alimenter à l’épine dorsale (backbone). Cette valeur doit être un entier positif. Remarque : L’exécution de l’entraînement peut aboutir à un manque de mémoire de CUDA si la taille est trop grande. Remarque : ces paramètres ne sont pas pris en charge pour l’algorithme « yolov5 ».

model_size
str ou ModelSize
Obligatoire

Taille du modèle. Doit être « petit », « moyen », « grand ». Remarque : L’exécution de l’entraînement peut aboutir à un manque de mémoire de CUDA si la taille du modèle est trop grande. Remarque : ces paramètres sont uniquement pris en charge pour l’algorithme « yolov5 ». Les valeurs possibles sont les suivantes : « None », « Small », « Medium », « Large », « ExtraLarge ».

multi_scale
bool
Obligatoire

Activez l’image à plusieurs échelles en faisant varier la taille de l’image de +/- 50 %. Remarque : L’exécution de l’entraînement peut aboutir à un manque de mémoire de CUDA si la mémoire du GPU est insuffisante. Remarque : ces paramètres sont uniquement pris en charge pour l’algorithme « yolov5 ».

nms_iou_threshold
float
Obligatoire

Seuil d’IOU utilisé lors de l’inférence dans le post-traitement NMS. Doit être un nombre à virgule flottante dans la plage [0, 1].

tile_grid_size
str
Obligatoire

Taille de la grille à utiliser pour la mise en mosaïque de chaque image. Remarque : TileGridSize ne doit pas avoir la valeur None pour activer la logique de détection d’objets de petite taille. Chaîne contenant deux entiers au format mxn. Remarque : ces paramètres ne sont pas pris en charge pour l’algorithme « yolov5 ».

tile_overlap_ratio
float
Obligatoire

Ratio de chevauchement entre les mosaïques adjacentes dans chaque dimension. Doit être float dans la plage [0, 1). Remarque : ces paramètres ne sont pas pris en charge pour l’algorithme « yolov5 ».

tile_predictions_nms_threshold
float
Obligatoire

Seuil IOU à utiliser pour effectuer une suppression non maximale tout en fusionnant les prédictions des mosaïques et de l’image. Utilisé dans la validation/l’inférence. Doit être float dans la plage [0, 1]. Remarque : ces paramètres ne sont pas pris en charge pour l’algorithme « yolov5 ».

validation_iou_threshold
float
Obligatoire

Seuil d’IOU à utiliser lors du calcul de la métrique de validation. Doit être float dans la plage [0, 1].

validation_metric_type
str ou ValidationMetricType
Obligatoire

Méthode de calcul de métrique à utiliser pour les métriques de validation. Les valeurs possibles sont les suivantes : « None », « Coco », « Voc », « CocoVoc ».

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

indique s’il faut ou non journaliser les métriques d’entraînement

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

indique s’il faut enregistrer ou non la perte de validation