Le composant Object detection (easycv) propose des modèles courants, tels que YOLOX, FCOS, YOLOv5 et YOLOv7, pour l'entraînement de modèles de détection d'objets. Utilisez ce composant pour créer un modèle capable d'identifier et de localiser des entités dans des images. Cette rubrique explique comment configurer le composant et fournit un exemple de pipeline.
Prérequis
OSS est activé et Machine Learning Studio est autorisé à accéder à OSS. Pour plus d'informations, consultez les rubriques Activer OSS et Accorder les autorisations requises pour utiliser Machine Learning Designer.
Limitations
Ce composant est disponible uniquement dans Designer.
Seul le moteur DLC est pris en charge.
Configurer les paramètres du composant
-
Ports d'entrée
Port d'entrée
Type
Composant en amont
Obligatoire
Données d'entraînement
Object Storage Service
Non.
Si vous ne connectez pas ce port, spécifiez le paramètre Training data OSS path dans l'onglet Field settings.
Données de validation
Object Storage Service
Non.
Si vous ne connectez pas ce port, spécifiez le paramètre Validation data OSS path dans l'onglet Field settings.
Fichier de liste de classes
Object Storage Service
Non.
Si vous ne connectez pas ce port, spécifiez le paramètre Class list file OSS path dans l'onglet Field settings.
-
Paramètres du composant
Onglet
Paramètre
Obligatoire
Description
Valeur par défaut
Field settings
Model type
Oui
L'architecture de modèle à utiliser pour l'entraînement. Valeurs valides :
FCOS
YOLOX
YOLOv5
YOLOv7
YOLOX
OSS directory for training
Non
Le répertoire OSS où stocker le modèle entraîné. Exemple :
examplebucket.oss-cn-shanghai-internal.aliyuncs.com/test/ckpt/. Si vous laissez ce paramètre vide, le composant utilise le chemin d'espace de travail par défaut.Aucune
Annotation file path for training set
Non
Si Data format est défini sur DetSourcePAI, fournissez un fichier avec l'extension .manifest.
Si Data format est défini sur COCO, fournissez un fichier avec l'extension .json.
Ce paramètre n'est pas requis si vous fournissez les données d'entraînement via le port d'entrée. Si les deux sont configurés, l'entrée du port d'entrée est prioritaire.
Aucune
Annotation file path for validation set
Non
Si Data format est défini sur DetSourcePAI, fournissez un fichier avec l'extension .manifest.
Si Data format est défini sur COCO, fournissez un fichier avec l'extension .json.
Ce paramètre n'est pas requis si vous fournissez les données de validation via le port d'entrée. Si les deux sont configurés, l'entrée du port d'entrée est prioritaire.
Aucune
Class list file OSS path
Non
Spécifiez le chemin OSS vers le fichier de liste de libellés, qui doit être un fichier .txt.
Ce paramètre n'est pas requis si vous fournissez le fichier de liste de classes via le port d'entrée. Si les deux sont configurés, l'entrée du port d'entrée est prioritaire.
Aucune
Pre-trained model OSS path
Non
Le chemin OSS vers votre modèle pré-entraîné personnalisé. Si vous ne configurez pas ce paramètre, PAI utilise un modèle pré-entraîné par défaut.
Aucune
Training data OSS path
Oui
Ce paramètre apparaît uniquement lorsque Data format est défini sur COCO. Spécifiez le chemin vers les images d'entraînement au format COCO.
Aucune
Validation data OSS path
Oui
Ce paramètre apparaît uniquement lorsque Data format est défini sur COCO. Spécifiez le chemin vers les images de validation au format COCO.
Aucune
Data format
Oui
Le format du jeu de données source. Valeurs valides :
COCO
DetSourcePAI (les modèles YOLOv5 et YOLOv7 prennent uniquement en charge les jeux de données DetSourcePAI.)
DetSourcePAI
Parameters
YOLOX model structure
Oui
Ce paramètre apparaît uniquement lorsque Model type est défini sur YOLOX. Sélectionnez une structure dans la liste déroulante. Valeurs valides :
yolox-s
yolox-m
yolox-l
yolox-x
yolox-s
Number of classes
Oui
Le nombre de libellés de classe dans le jeu de données.
20
Image scale
Oui
La taille de l'image après redimensionnement. Séparez la hauteur et la largeur par un espace. Exemple : 320 320.
320 320
Optimizer
Oui
Ce paramètre est disponible uniquement lorsque Model type est défini sur YOLOX.
La méthode d'optimisation pour l'entraînement du modèle. Valeurs valides :
momentum
adam
momentum
Initial learning rate
Oui
Le taux d'apprentissage initial.
0.01
Training batch size
Oui
Le nombre d'échantillons par itération d'entraînement.
8
Validation batch size
Oui
Le nombre d'échantillons par itération de validation.
8
Number of epochs
Oui
Le nombre total d'époques d'entraînement.
RemarquePour les modèles YOLOX, la valeur de ce paramètre doit être supérieure à la somme des valeurs des paramètres Warmup epochs et Last no augmented lr epochs.
20
Log loss frequency
Non
L'intervalle d'impression de la valeur de perte. La valeur par défaut est 200, ce qui signifie que la valeur de perte est imprimée toutes les 200 batches d'entraînement.
200
Validation frequency
Non
L'intervalle de validation en époques. La valeur par défaut est 2, ce qui signifie que la validation est effectuée toutes les deux époques.
2
Warmup epochs
Non
Ce paramètre s'applique uniquement aux modèles YOLOX.
5
Last no augmented lr epochs
Non
Ce paramètre s'applique uniquement aux modèles YOLOX.
5
Export model format
Oui
Le format du modèle exporté. Valeurs valides :
raw
jit (le format jit n'est pas pris en charge pour les modèles YOLOv5 et YOLOv7.)
onnx
raw
Checkpoint saving frequency
Non
L'intervalle (en époques) pour l'enregistrement des fichiers de point de contrôle. Une valeur de 1 indique qu'un point de contrôle est enregistré après chaque époque.
1
Tuning
GPU machine type
Oui
Ce composant nécessite une instance GPU pour s'exécuter.
4
Enable FP16
Non
Active ou désactive le mode demi-précision FP16.
false
Execution mode
Oui
Seul l'entraînement distribué sur DLC est pris en charge.
Distributed DLC
-
Ports de sortie
Port de sortie
Type
Composant en aval
Modèle de sortie
Le modèle entraîné est stocké au format SavedModel dans le chemin spécifié dans le paramètre OSS directory for training de l'onglet Field settings.
Exemple
Pour FCOS, YOLOX, YOLOv5 et YOLOv7, utilisez le composant Object detection (easycv) pour créer un pipeline comme illustré dans la figure suivante.

Dans cet exemple, configurez les composants comme suit :
-
Utilisez iTAG dans PAI pour annoter les images. Pour plus d'informations, consultez les rubriques Créer un jeu de données pour l'annotation des données et Créer une tâche d'annotation.
RemarqueiTAG est pris en charge uniquement dans certaines régions. Consultez la rubrique Régions et zones iTAG pour plus de détails.
Après avoir créé un jeu de données, sélectionnez le modèle Object Detection sous General Template lors de la création d'une tâche d'annotation.
-
Dans la section Object Detection Label Configuration, sélectionnez Single-label. Dans la section Label Configuration, saisissez tous les noms de libellés requis pour faciliter le processus d'annotation.

-
Une fois l'annotation terminée, exportez les résultats d'annotation au format manifest vers Object Storage Service (OSS) afin que les composants suivants puissent les utiliser.

Utilisez le composant Read File Data pour lire le fichier de résultats d'annotation (par exemple, xxx.manifest). Définissez le paramètre OSS Data Path du composant Read File Data sur le chemin OSS du jeu de données contenant les résultats d'annotation. Exemple :
oss://examplebucket.oss-cn-shanghai.aliyuncs.com/ev_demo/xxx.manifest.Connectez les données d'entraînement et de validation au composant Object detection (easycv) et configurez ses paramètres. Pour plus d'informations, consultez la section Configurer les paramètres du composant.
Pour FCOS et YOLOX, vous pouvez également utiliser le composant image prediction pour effectuer une inférence hors ligne. Pour plus d'informations, consultez la rubrique Prédiction d'image.

Documents connexes
Après l'entraînement d'un modèle de détection d'objets, connectez un composant de prédiction d'image en aval du composant Object detection (easycv) pour effectuer des prédictions avec le modèle et évaluer ses performances. Pour plus d'informations, consultez la rubrique Prédiction d'image.
Pour plus d'informations sur les composants Designer, consultez la rubrique Présentation de Designer.
Designer propose plusieurs composants algorithmiques prédéfinis. Sélectionnez le composant approprié pour votre cas d'utilisation. Pour plus d'informations, consultez la rubrique Présentation des composants Designer.