Modèle de formation avec Ultralytics YOLO
Introduction
L'entraînement d'un modèle d'apprentissage profond consiste à lui fournir des données et à ajuster ses paramètres afin qu'il puisse faire des prédictions précises. Le mode Train dans Ultralytics YOLO11 est conçu pour une formation efficace et efficiente des modèles de détection d'objets, en utilisant pleinement les capacités du matériel moderne. Ce guide a pour but de couvrir tous les détails dont vous avez besoin pour commencer à former vos propres modèles à l'aide de l'ensemble des fonctionnalités robustes de YOLO11.
Regarder : Comment former un modèle YOLO sur votre ensemble de données personnalisé dans Google Colab.
Pourquoi choisir Ultralytics YOLO pour la formation ?
Voici quelques bonnes raisons d'opter pour le mode Train de YOLO11:
- Efficacité : Tirez le meilleur parti de votre matériel, qu'il s'agisse d'une configuration à une seule adresseGPU ou d'une mise à l'échelle de plusieurs GPU.
- Polyvalence : Entraînement sur des ensembles de données personnalisés en plus des ensembles de données facilement disponibles tels que COCO, VOC et ImageNet.
- Convivialité : interfaces simples mais puissantes CLI et Python pour une expérience de formation directe.
- Flexibilité des hyperparamètres : Une large gamme d'hyperparamètres personnalisables pour affiner les performances du modèle.
Principales caractéristiques du mode train
Voici quelques caractéristiques notables du mode Train de YOLO11:
- Téléchargement automatique des données : Les ensembles de données standard tels que COCO, VOC et ImageNet sont téléchargés automatiquement lors de la première utilisation.
- Prise en charge de plusieurs sitesGPU : Faites évoluer vos efforts de formation de manière transparente sur plusieurs GPU afin d'accélérer le processus.
- Configuration des hyperparamètres : L'option de modifier les hyperparamètres par le biais de fichiers de configuration YAML ou d'arguments CLI .
- Visualisation et suivi : Suivi en temps réel des paramètres de formation et visualisation du processus d'apprentissage pour une meilleure compréhension.
Conseil
- YOLO11 des ensembles de données tels que COCO, VOC, ImageNet et bien d'autres sont automatiquement téléchargés lors de la première utilisation, c'est-à -dire qu'ils ne sont pas téléchargés.
yolo train data=coco.yaml
Exemples d'utilisation
Entraîner YOLO11n sur l'ensemble de données COCO8 pour 100 époques à une taille d'image de 640. Le dispositif d'entraînement peut être spécifié à l'aide de la fonction device
l'argument. Si aucun argument n'est transmis GPU device=0
sera utilisé s'il est disponible, sinon device='cpu'
sera utilisé. Voir la section Arguments ci-dessous pour une liste complète des arguments de formation.
Exemple de formation uniqueGPU et CPU
L'appareil est déterminé automatiquement. Si un GPU est disponible, il sera utilisé, sinon la formation commencera sur CPU.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n.yaml") # build a new model from YAML
model = YOLO("yolo11n.pt") # load a pretrained model (recommended for training)
model = YOLO("yolo11n.yaml").load("yolo11n.pt") # build from YAML and transfer weights
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo detect train data=coco8.yaml model=yolo11n.yaml epochs=100 imgsz=640
# Start training from a pretrained *.pt model
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640
# Build a new model from YAML, transfer pretrained weights to it and start training
yolo detect train data=coco8.yaml model=yolo11n.yaml pretrained=yolo11n.pt epochs=100 imgsz=640
Formation multi-GPU
L'entraînement multi-GPU permet une utilisation plus efficace des ressources matérielles disponibles en répartissant la charge d'entraînement sur plusieurs GPU. Cette fonctionnalité est disponible via l'API Python et l'interface de ligne de commande. Pour activer l'entraînement multiGPU , indiquez les ID de périphérique GPU que vous souhaitez utiliser.
Exemple de formation multi-GPU
Pour s'entraîner avec 2 GPU, CUDA devices 0 et 1, utilisez les commandes suivantes. Étendez à d'autres GPU si nécessaire.
Formation Apple Silicon MPS
Grâce à la prise en charge des puces Apple intégrées dans les modèles Ultralytics YOLO , il est désormais possible d'entraîner vos modèles sur des appareils utilisant le puissant cadre Metal Performance Shaders (MPS). Le site MPS offre un moyen très performant d'exécuter des tâches de calcul et de traitement d'images sur le silicium personnalisé d'Apple.
Pour activer la formation sur les puces Apple, vous devez spécifier "mps" comme appareil lorsque vous lancez le processus de formation. Vous trouverez ci-dessous un exemple de la manière dont vous pouvez procéder dans Python et via la ligne de commande :
MPS Exemple de formation
Tout en exploitant la puissance de calcul des puces Apple, cela permet un traitement plus efficace des tâches de formation. Pour des conseils plus détaillés et des options de configuration avancées, veuillez vous référer à la documentationPyTorch MPS .
Reprise des formations interrompues
La reprise de l'entraînement à partir d'un état précédemment sauvegardé est une fonctionnalité cruciale lorsque l'on travaille avec des modèles d'apprentissage profond. Cela peut s'avérer utile dans différents scénarios, comme lorsque le processus d'entraînement a été interrompu de manière inattendue, ou lorsque vous souhaitez poursuivre l'entraînement d'un modèle avec de nouvelles données ou pour plus d'époques.
Lors de la reprise de la formation, Ultralytics YOLO charge les poids du dernier modèle sauvegardé et restaure également l'état de l'optimiseur, le planificateur du taux d'apprentissage et le nombre d'époques. Cela vous permet de reprendre le processus d'apprentissage là où il s'est arrêté.
Vous pouvez facilement reprendre la formation sur Ultralytics YOLO en définissant le paramètre resume
argument Ă True
lors de l'appel du train
et en spécifiant le chemin d'accès à la méthode .pt
contenant les poids du modèle partiellement entraîné.
Vous trouverez ci-dessous un exemple de reprise d'une formation interrompue Ă l'aide de Python et de la ligne de commande :
Exemple de formation au curriculum vitae
En fixant resume=True
, le train
reprendra l'entraînement là où il s'est arrêté, en utilisant l'état stocké dans le fichier "path/to/last.pt". Si le fichier resume
est omis ou fixé à False
, le train
démarre une nouvelle session de formation.
Rappelez-vous que les points de contrôle sont sauvegardés à la fin de chaque époque par défaut, ou à des intervalles fixes à l'aide de la commande save_period
Vous devez donc terminer au moins une époque avant de reprendre un cycle d'entraînement.
RĂ©glages du train
Les paramètres d'apprentissage des modèles YOLO englobent divers hyperparamètres et configurations utilisés au cours du processus d'apprentissage. Ces paramètres influencent les performances, la vitesse et la précision du modèle. Les principaux paramètres d'apprentissage comprennent la taille du lot, le taux d'apprentissage, l'élan et la décroissance des poids. En outre, le choix de l'optimiseur, de la fonction de perte et de la composition de l'ensemble de données d'apprentissage peut avoir un impact sur le processus d'apprentissage. Un réglage minutieux et l'expérimentation de ces paramètres sont essentiels pour optimiser les performances.
Argument | DĂ©faut | Description |
---|---|---|
model |
None |
Spécifie le fichier modèle pour la formation. Accepte un chemin vers un fichier .pt ou un modèle pré-entraîné .yaml fichier de configuration. Essentiel pour définir la structure du modèle ou initialiser les poids. |
data |
None |
Chemin d'accès au fichier de configuration du jeu de données (par exemple, coco8.yaml ). Ce fichier contient les paramètres spécifiques à l'ensemble de données, y compris les chemins d'accès à l'entraînement et à la formation. données de validationLes noms des classes et le nombre de classes. |
epochs |
100 |
Nombre total d'époques d'apprentissage. Chaque époque représente un passage complet sur l'ensemble des données. L'ajustement de cette valeur peut affecter la durée de l'apprentissage et les performances du modèle. |
time |
None |
Durée maximale de la formation en heures. S'il est défini, ce paramètre remplace le paramètre epochs permettant à la formation de s'arrêter automatiquement après la durée spécifiée. Utile pour les scénarios de formation limités dans le temps. |
patience |
100 |
Nombre d'époques à attendre sans amélioration des mesures de validation avant d'arrêter la formation. Permet d'éviter le surajustement en arrêtant la formation lorsque les performances atteignent un plateau. |
batch |
16 |
Taille du lotavec trois modes : un nombre entier (par exemple, le nombre d'heures de travail) et un nombre de jours de travail (par exemple, le nombre d'heures de travail), batch=16 ), mode automatique pour une utilisation de la mémoire de 60 % GPU (batch=-1 ), ou le mode automatique avec la fraction d'utilisation spécifiée (batch=0.70 ). |
imgsz |
640 |
Taille cible de l'image pour l'apprentissage. Toutes les images sont redimensionnées à cette dimension avant d'être introduites dans le modèle. Affecte la précision du modèle et la complexité de calcul. |
save |
True |
Permet d'enregistrer les points de contrôle de la formation et les poids finaux du modèle. Utile pour reprendre la formation ou le déploiement du modèle. |
save_period |
-1 |
Fréquence d'enregistrement des points de contrôle du modèle, spécifiée en époques. La valeur -1 désactive cette fonction. Utile pour sauvegarder des modèles provisoires lors de longues sessions de formation. |
cache |
False |
Permet la mise en cache des images de l'ensemble des données en mémoire (True /ram ), sur disque (disk ), ou la désactive (False ). Améliore la vitesse d'apprentissage en réduisant les E/S sur disque au prix d'une utilisation accrue de la mémoire. |
device |
None |
Spécifie le(s) dispositif(s) de calcul pour la formation : un seul GPU (device=0 ), plusieurs GPU (device=0,1 ), CPU (device=cpu ), ou MPS pour le silicium d'Apple (device=mps ). |
workers |
8 |
Nombre de threads de travail pour le chargement des données (par RANK si Multi-GPU formation). Influence la vitesse de prétraitement des données et d'alimentation du modèle, particulièrement utile dans les configurations multiGPU . |
project |
None |
Nom du répertoire du projet dans lequel les résultats de la formation sont enregistrés. Permet d'organiser le stockage des différentes expériences. |
name |
None |
Nom de l'exercice de formation. Utilisé pour créer un sous-répertoire dans le dossier du projet, où les journaux de formation et les résultats sont stockés. |
exist_ok |
False |
Si True, permet d'écraser un répertoire projet/nom existant. Utile pour l'expérimentation itérative sans avoir à effacer manuellement les sorties précédentes. |
pretrained |
True |
Détermine s'il faut commencer la formation à partir d'un modèle pré-entraîné. Il peut s'agir d'une valeur booléenne ou d'un chemin d'accès à un modèle spécifique à partir duquel les poids sont chargés. Améliore l'efficacité de la formation et les performances du modèle. |
optimizer |
'auto' |
Choix de l'optimiseur pour la formation. Les options comprennent SGD , Adam , AdamW , NAdam , RAdam , RMSProp etc. auto pour une sélection automatique basée sur la configuration du modèle. Affecte la vitesse de convergence et la stabilité. |
seed |
0 |
Définit la graine aléatoire pour l'entraînement, ce qui garantit la reproductibilité des résultats d'une exécution à l'autre avec les mêmes configurations. |
deterministic |
True |
Force l'utilisation d'algorithmes déterministes, ce qui garantit la reproductibilité, mais peut affecter les performances et la vitesse en raison de la restriction sur les algorithmes non déterministes. |
single_cls |
False |
Traite toutes les classes des ensembles de données multi-classes comme une seule classe pendant la formation. Utile pour les tâches de classification binaire ou lorsque l'on se concentre sur la présence d'objets plutôt que sur la classification. |
classes |
None |
Spécifie une liste d'identifiants de classe pour l'entraînement. Utile pour filtrer et se concentrer uniquement sur certaines classes pendant la formation. |
rect |
False |
Permet un apprentissage rectangulaire, en optimisant la composition des lots pour un remplissage minimal. Cela peut améliorer l'efficacité et la vitesse, mais peut affecter la précision du modèle. |
cos_lr |
False |
Utilise un planificateur de taux d' apprentissage en cosinus, qui ajuste le taux d'apprentissage en suivant une courbe en cosinus au fil des époques. Aide à gérer le taux d'apprentissage pour une meilleure convergence. |
close_mosaic |
10 |
Désactive l'augmentation des données de la mosaïque dans les N dernières époques afin de stabiliser l'apprentissage avant qu'il ne soit terminé. La valeur 0 désactive cette fonction. |
resume |
False |
Reprend la formation à partir du dernier point de contrôle enregistré. Charge automatiquement les poids du modèle, l'état de l'optimiseur et le nombre d'époques, afin de poursuivre la formation de manière transparente. |
amp |
True |
Permet l'apprentissage automatique de la précision mixte (AMP), ce qui réduit l'utilisation de la mémoire et accélère éventuellement l'apprentissage avec un impact minimal sur la précision. |
fraction |
1.0 |
Spécifie la fraction de l'ensemble de données à utiliser pour la formation. Permet la formation sur un sous-ensemble de l'ensemble des données, utile pour les expériences ou lorsque les ressources sont limitées. |
profile |
False |
Permet d'établir le profil des vitesses ONNX et TensorRT pendant la formation, ce qui est utile pour optimiser le déploiement du modèle. |
freeze |
None |
Gèle les N premières couches du modèle ou les couches spécifiées par index, réduisant ainsi le nombre de paramètres entraînables. Utile pour le réglage fin ou l'apprentissage par transfert. |
lr0 |
0.01 |
Taux d'apprentissage initial (c'est-à -dire SGD=1E-2 , Adam=1E-3 ) . L'ajustement de cette valeur est crucial pour le processus d'optimisation, car il influence la rapidité avec laquelle les poids du modèle sont mis à jour. |
lrf |
0.01 |
Taux d'apprentissage final en fraction du taux initial = (lr0 * lrf ), utilisé en conjonction avec des programmateurs pour ajuster le taux d'apprentissage au fil du temps. |
momentum |
0.937 |
Facteur d'impulsion pour SGD ou beta1 pour les optimiseurs Adam, influençant l'incorporation des gradients passés dans la mise à jour actuelle. |
weight_decay |
0.0005 |
Terme de régularisation L2, pénalisant les poids importants pour éviter l'ajustement excessif. |
warmup_epochs |
3.0 |
Nombre d'époques pour l'échauffement du taux d'apprentissage, augmentant progressivement le taux d'apprentissage à partir d'une valeur faible jusqu'au taux d'apprentissage initial afin de stabiliser l'apprentissage dès le début. |
warmup_momentum |
0.8 |
Élan initial pour la phase d'échauffement, s'adaptant progressivement à l'élan défini au cours de la période d'échauffement. |
warmup_bias_lr |
0.1 |
Taux d'apprentissage des paramètres de biais pendant la phase d'échauffement, permettant de stabiliser l'apprentissage du modèle dans les premières époques. |
box |
7.5 |
Poids de la composante de perte de boîte dans la fonction de perte, influençant l'importance accordée à la prédiction précise des coordonnées de la boîte englobante. |
cls |
0.5 |
Poids de la perte de classification dans la fonction de perte totale, affectant l'importance d'une prédiction de classe correcte par rapport aux autres composants. |
dfl |
1.5 |
Poids de la perte focale de distribution, utilisé dans certaines versions de YOLO pour une classification plus fine. |
pose |
12.0 |
Poids de la perte de pose dans les modèles formés pour l'estimation de la pose, influençant l'accent mis sur la prédiction précise des points clés de la pose. |
kobj |
2.0 |
Poids de la perte d'objectivité du point clé dans les modèles d'estimation de la pose, équilibrant la confiance dans la détection et la précision de la pose. |
nbs |
64 |
Taille nominale du lot pour la normalisation de la perte. |
overlap_mask |
True |
Détermine si les masques d'objets doivent être fusionnés en un seul masque pour l'entraînement ou s'ils doivent rester séparés pour chaque objet. En cas de chevauchement, le masque le plus petit est superposé au masque le plus grand lors de la fusion. |
mask_ratio |
4 |
Rapport de sous-échantillonnage pour les masques de segmentation, affectant la résolution des masques utilisés lors de l'apprentissage. |
dropout |
0.0 |
Taux d'abandon pour la régularisation dans les tâches de classification, empêchant l'ajustement excessif en omettant aléatoirement des unités pendant la formation. |
val |
True |
Permet la validation pendant la formation, ce qui permet d'évaluer périodiquement les performances du modèle sur un ensemble de données distinct. |
plots |
False |
Génère et enregistre des graphiques des mesures d'entraînement et de validation, ainsi que des exemples de prédiction, offrant un aperçu visuel des performances du modèle et de la progression de l'apprentissage. |
Note sur les réglages de la taille des lots
Le batch
peut être configuré de trois manières :
- Taille fixe des lots: Définir une valeur entière (par ex,
batch=16
), en spécifiant directement le nombre d'images par lot. - Mode Auto (60% GPU Mémoire): Utilisation
batch=-1
afin d'ajuster automatiquement la taille des lots pour une utilisation de la mémoire d'environ 60 % CUDA . - Mode automatique avec fraction d'utilisation: Définir une valeur de fraction (par ex,
batch=0.70
) pour ajuster la taille des lots en fonction de la fraction spécifiée de l'utilisation de la mémoire de GPU .
Paramètres d'augmentation et hyperparamètres
Les techniques d'augmentation sont essentielles pour améliorer la robustesse et les performances des modèles YOLO en introduisant de la variabilité dans les données d'apprentissage, ce qui permet au modèle de mieux se généraliser à des données inédites. Le tableau suivant présente l'objectif et l'effet de chaque argument d'augmentation :
Argument | Type | DĂ©faut | Gamme | Description |
---|---|---|---|---|
hsv_h |
float |
0.015 |
0.0 - 1.0 |
Ajuste la teinte de l'image par une fraction de la roue chromatique, introduisant ainsi une variabilité des couleurs. Aide le modèle à se généraliser dans différentes conditions d'éclairage. |
hsv_s |
float |
0.7 |
0.0 - 1.0 |
Modifie la saturation de l'image d'une fraction, affectant l'intensité des couleurs. Utile pour simuler différentes conditions environnementales. |
hsv_v |
float |
0.4 |
0.0 - 1.0 |
Modifie la valeur (luminosité) de l'image d'une fraction, ce qui permet au modèle de bien fonctionner dans différentes conditions d'éclairage. |
degrees |
float |
0.0 |
-180 - +180 |
Fait pivoter l'image de manière aléatoire dans la plage de degrés spécifiée, améliorant ainsi la capacité du modèle à reconnaître des objets dans différentes orientations. |
translate |
float |
0.1 |
0.0 - 1.0 |
Traduit l'image horizontalement et verticalement d'une fraction de la taille de l'image, ce qui facilite l'apprentissage de la détection d'objets partiellement visibles. |
scale |
float |
0.5 |
>=0.0 |
Met l'image à l'échelle en fonction d'un facteur de gain, simulant ainsi des objets situés à différentes distances de la caméra. |
shear |
float |
0.0 |
-180 - +180 |
Découpe l'image d'un degré spécifié, imitant l'effet des objets vus sous différents angles. |
perspective |
float |
0.0 |
0.0 - 0.001 |
Applique une transformation aléatoire de la perspective à l'image, améliorant ainsi la capacité du modèle à comprendre les objets dans l'espace 3D. |
flipud |
float |
0.0 |
0.0 - 1.0 |
Renverse l'image avec la probabilité spécifiée, ce qui augmente la variabilité des données sans affecter les caractéristiques de l'objet. |
fliplr |
float |
0.5 |
0.0 - 1.0 |
Retourne l'image de gauche à droite avec la probabilité spécifiée, utile pour l'apprentissage d'objets symétriques et l'augmentation de la diversité des ensembles de données. |
bgr |
float |
0.0 |
0.0 - 1.0 |
Fait passer les canaux de l'image de RVB à BGR avec la probabilité spécifiée, ce qui est utile pour accroître la résistance à un mauvais classement des canaux. |
mosaic |
float |
1.0 |
0.0 - 1.0 |
Combine quatre images d'entraînement en une seule, simulant différentes compositions de scènes et interactions d'objets. Très efficace pour la compréhension de scènes complexes. |
mixup |
float |
0.0 |
0.0 - 1.0 |
Mélange deux images et leurs étiquettes, créant ainsi une image composite. Améliore la capacité du modèle à se généraliser en introduisant le bruit des étiquettes et la variabilité visuelle. |
copy_paste |
float |
0.0 |
0.0 - 1.0 |
Copie et colle des objets sur les images, ce qui est utile pour augmenter le nombre d'instances d'objets et apprendre l'occlusion d'objets. NĂ©cessite des Ă©tiquettes de segmentation. |
copy_paste_mode |
str |
flip |
- | Sélection de la méthode d'augmentation par copier-coller parmi les options de ("flip" , "mixup" ). |
auto_augment |
str |
randaugment |
- | Application automatique d'une politique d'augmentation prédéfinie (randaugment , autoaugment , augmix ), optimisant les tâches de classification en diversifiant les caractéristiques visuelles. |
erasing |
float |
0.4 |
0.0 - 0.9 |
Efface aléatoirement une partie de l'image pendant l'apprentissage de la classification, encourageant le modèle à se concentrer sur des caractéristiques moins évidentes pour la reconnaissance. |
crop_fraction |
float |
1.0 |
0.1 - 1.0 |
Recadrer l'image de classification à une fraction de sa taille pour mettre en valeur les caractéristiques centrales et s'adapter à l'échelle des objets, en réduisant les distractions d'arrière-plan. |
Ces paramètres peuvent être ajustés pour répondre aux exigences spécifiques de l'ensemble de données et de la tâche à accomplir. L'expérimentation de différentes valeurs peut aider à trouver la stratégie d'augmentation optimale qui conduit à la meilleure performance du modèle.
Info
Pour plus d'informations sur les opérations de renforcement de la formation, voir la section de référence.
Enregistrement
Lors de la formation d'un modèle YOLO11 , il peut s'avérer utile de suivre les performances du modèle au fil du temps. C'est là que la journalisation entre en jeu. Ultralytics YOLO prend en charge trois types d'enregistreurs : Comet, ClearML et TensorBoard.
Pour utiliser un enregistreur, sélectionnez-le dans le menu déroulant de l'extrait de code ci-dessus et exécutez-le. L'enregistreur choisi sera installé et initialisé.
Comet
Comet est une plateforme qui permet aux scientifiques des données et aux développeurs de suivre, comparer, expliquer et optimiser les expériences et les modèles. Elle offre des fonctionnalités telles que des mesures en temps réel, des différences de code et le suivi des hyperparamètres.
Pour utiliser Comet:
N'oubliez pas de vous connecter à votre compte Comet sur leur site web et d'obtenir votre clé API. Vous devrez l'ajouter à vos variables d'environnement ou à votre script pour enregistrer vos expériences.
ClearML
ClearML est une plateforme open-source qui automatise le suivi des expériences et contribue à un partage efficace des ressources. Elle est conçue pour aider les équipes à gérer, exécuter et reproduire leur travail de ML plus efficacement.
Pour utiliser ClearML:
Après avoir exécuté ce script, vous devrez vous connecter à votre compte ClearML sur le navigateur et authentifier votre session.
TensorBoard
TensorBoard est une boîte à outils de visualisation pour TensorFlow. Il vous permet de visualiser votre graphique TensorFlow , de tracer des mesures quantitatives sur l'exécution de votre graphique et d'afficher des données supplémentaires telles que les images qui le traversent.
Pour utiliser TensorBoard dans Google Colab:
Pour utiliser TensorBoard localement, exécutez la commande ci-dessous et visualisez les résultats sur http://localhost:6006/.
Cela chargera TensorBoard et le dirigera vers le répertoire où vos journaux d'entraînement sont sauvegardés.
Après avoir configuré votre enregistreur, vous pouvez procéder à l'entraînement de votre modèle. Tous les paramètres de formation seront automatiquement enregistrés dans la plateforme que vous avez choisie, et vous pourrez accéder à ces enregistrements pour suivre les performances de votre modèle au fil du temps, comparer différents modèles et identifier les domaines à améliorer.
FAQ
Comment entraîner un modèle de détection d'objets à l'aide de Ultralytics YOLO11 ?
Pour former un modèle de détection d'objets à l'aide de Ultralytics YOLO11 , vous pouvez utiliser l'API Python ou CLI. Vous trouverez ci-dessous un exemple pour les deux :
Exemple de formation uniqueGPU et CPU
Pour plus de détails, voir la section Paramètres du train.
Quelles sont les principales caractéristiques du mode Train de Ultralytics YOLO11 ?
Les principales caractéristiques du mode Train de Ultralytics YOLO11 sont les suivantes :
- Téléchargement automatique d'ensembles de données : Télécharge automatiquement les ensembles de données standard tels que COCO, VOC et ImageNet.
- Prise en charge de plusieurs sitesGPU : Faites évoluer l'entraînement sur plusieurs GPU pour un traitement plus rapide.
- Configuration des hyperparamètres : Personnalisez les hyperparamètres à l'aide de fichiers YAML ou d'arguments CLI .
- Visualisation et suivi : Suivi en temps réel des paramètres de formation pour une meilleure compréhension.
Ces fonctions rendent la formation efficace et personnalisable en fonction de vos besoins. Pour plus de détails, voir la section Caractéristiques principales du mode entraînement.
Comment reprendre la formation après une session interrompue sur Ultralytics YOLO11 ?
Pour reprendre la formation à partir d'une session interrompue, réglez le paramètre resume
argument Ă True
et indiquer le chemin d'accès au dernier point de contrôle sauvegardé.
Exemple de formation au curriculum vitae
Pour plus d'informations, consultez la section sur la reprise des formations interrompues.
Puis-je entraîner les modèles YOLO11 sur des puces de silicium Apple ?
Oui, Ultralytics YOLO11 prend en charge la formation sur les puces de silicium d'Apple utilisant le cadre Metal Performance Shaders (MPS). Indiquez "mps" comme dispositif de formation.
MPS Exemple de formation
Pour plus de détails, reportez-vous à la section Formation Apple Silicon MPS .
Quels sont les paramètres de formation courants et comment les configurer ?
Ultralytics YOLO11 vous permet de configurer une variété de paramètres d'apprentissage tels que la taille du lot, le taux d'apprentissage, les époques, et plus encore, à l'aide d'arguments. En voici un bref aperçu :
Argument | DĂ©faut | Description |
---|---|---|
model |
None |
Chemin d'accès au fichier modèle pour la formation. |
data |
None |
Chemin d'accès au fichier de configuration du jeu de données (par exemple, coco8.yaml ). |
epochs |
100 |
Nombre total d'Ă©poques d'apprentissage. |
batch |
16 |
Taille du lot, réglable en mode entier ou automatique. |
imgsz |
640 |
Taille de l'image cible pour la formation. |
device |
None |
Dispositif(s) informatique(s) pour la formation comme cpu , 0 , 0,1 ou mps . |
save |
True |
Permet d'enregistrer les points de contrôle de l'apprentissage et les poids finaux du modèle. |
Pour un guide approfondi sur les paramètres de formation, consultez la section Paramètres de formation.