Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Optimisation des hyperparamètres

Maîtrisez le réglage des hyperparamètres pour optimiser les modèles ML comme Ultralytics YOLO. Améliorez la précision, la vitesse et les performances grâce à des techniques d'experts.

Le réglage des hyperparamètres est le processus systématique de découverte de l'ensemble optimal de variables de configuration externes, externes, appelées hyperparamètres, qui régissent l'apprentissage d'un d'un modèle d'apprentissage automatique (ML). Contrairement aux paramètres internes internes du modèle, tels que les weights and biases , qui sont appris directement à partir des données d'apprentissage pendant la phase d'apprentissage, les hyperparamètres sont définis avant la formation et restent constants tout au long du processus. Cette étape d'optimisation est Cette étape d'optimisation est cruciale car les paramètres par défaut d'un d'un réseau neuronal donnent rarement les meilleures performance possible pour un ensemble de données spécifique. En affinant ces contrôles, les scientifiques des données peuvent améliorer de manière significative la précision du modèle, réduire le temps de convergence et empêcher les erreurs d'apprentissage. modèle, réduire le temps de convergence et éviter des problèmes tels que l'overfitting. l'overfitting.

Le rôle des hyperparamètres

Pour comprendre le réglage, il est utile de se représenter un modèle comme une machine complexe dotée de divers cadrans et interrupteurs. Alors que la machine apprend d'elle-même à transformer les matières premières (données) en un produit fini (prédictions), l'opérateur doit d'abord régler la vitesse, la température et la pression. doit d'abord régler la vitesse, la température et la pression. Ces "cadrans" sont les hyperparamètres.

Les hyperparamètres courants qui font souvent l'objet d'une optimisation sont les suivants :

  • Taux d'apprentissage: Souvent considéré comme le paramètre le plus critique, il détermine la taille du pas de l'algorithme d'optimisation l 'algorithme d'optimisation pendant qu'il se vers un minimum de la fonction de perte. Un taux trop élevé peut amener le modèle à dépasser la solution optimale, tandis qu'un taux trop faible conduit à un apprentissage lent. lente.
  • Taille du lot: Elle définit le nombre d'exemples de formation utilisés dans une itération. d'exemples de formation utilisés dans une itération. Le réglage de ce paramètre a un impact sur la stabilité de l'estimation du gradient et sur les besoins en mémoire du programme. les besoins en mémoire du GPU.
  • Époques: le nombre de fois que l'algorithme d'apprentissage travaille sur l'ensemble du jeu de données. Trouver le bon équilibre permet d'éviter un sous-ajustement (trop peu d'époques) et l 'overfitting (trop d'époques).
  • Architecture du réseau : Les décisions concernant le nombre de couches cachées, le nombre de neurones par couche, ou le type spécifique de réseau. couche, ou le type spécifique de fonction d'activation d 'activation (par exemple, ReLU, SiLU) sont des sont également des hyperparamètres architecturaux.

Techniques de réglage courantes

Trouver la combinaison parfaite de paramètres peut s'avérer difficile en raison de l'étendue de l'espace de recherche. Les praticiens emploient plusieurs méthodes standard pour naviguer dans cet espace cet espace à haute dimension:

  • Recherche de grille: Cette méthode exhaustive Cette méthode exhaustive évalue un modèle pour chaque combinaison d'algorithmes et de paramètres spécifiés dans une grille. Bien qu'elle soit complète, elle coûteuse et souvent inefficace pour les grands ensembles de paramètres.
  • Recherche aléatoire: Au lieu de tester chaque combinaison, cette technique sélectionne des combinaisons aléatoires d'hyperparamètres pour former le modèle. La recherche recherche suggère que la recherche aléatoire est souvent plus efficace que la recherche en grille car tous les hyperparamètres n'ont pas la même importance pour la performance du modèle. importance pour la performance du modèle.
  • Optimisation bayésienne: Il s'agit d'une approche basée sur un modèle probabiliste qui construit un modèle de substitution de la fonction objective. approche probabiliste basée sur un modèle qui construit un modèle de substitution de la fonction objective. Elle tente de prédire les hyperparamètres qui donneront les meilleurs résultats sur la base d'évaluations antérieures, en se concentrant sur les zones les plus prometteuses de l'espace de recherche. l'espace de recherche.
  • Algorithmes évolutionnaires: Inspirée de l'évolution biologique, cette méthode utilise des mécanismes tels que la mutation et le croisement pour faire évoluer une population d'ensembles d'hyperparamètres au fil des générations. d'ensembles d'hyperparamètres au fil des générations. C'est la principale méthode utilisée par l'accordeur Ultralytics pour optimiser des modèles tels que YOLO11.

Ajustement des hyperparamètres vs. entraînement du modèle

Il est essentiel de faire la distinction entre la mise au point et la formation, car il s'agit de phases distinctes dans le cycle de vie des MLOPS. distinctes dans le cycle de vie des MLOPS:

  • Entraînement au modèle : Le processus par lequel le modèle itère sur des données étiquetées pour apprendre des paramètres internes (poids). données étiquetées afin d'apprendre les paramètres internes (poids et biais) par rétropropagation. L'objectif est de minimiser l'erreur sur l'ensemble des données d'apprentissage.
  • Réglage des hyperparamètres : Le méta-processus de sélection des paramètres structurels et opérationnels avant le début de la formation. L'objectif est de maximiser une mesure de validation, telle que la précision moyenne (mAP), sur des données sur des données inédites.

Applications concrètes

Des modèles bien réglés sont essentiels pour déployer des solutions d'IA robustes dans divers secteurs d'activité. solutions d'IA robustes dans divers secteurs d'activité.

Agriculture de précision

Dans le domaine de l'IA en agriculture, les drones équipés de de modèles de vision par ordinateur pour surveiller la santé des cultures. Ces modèles fonctionnent sur des périphériques informatiques dont la batterie et la puissance de puissance de traitement. L'ajustement des hyperparamètres est utilisé ici pour optimiser l'architecture du modèle (par exemple, en réduisant la profondeur des couches) et la résolution des entrées. et la résolution d'entrée. Cela permet au système d'équilibrer des vitesses d'inférence vitesse d'inférence et une précision de détection détection suffisante pour identifier les mauvaises herbes ou les parasites en temps réel.

Diagnostic médical

Pour l'IA dans le domaine de la santé, en particulier l 'analyse d'images médicales, les faux négatifs peuvent mettre la vie en danger. Lorsqu'ils détectent des anomalies dans des radiographies ou des IRM, les ingénieurs procèdent à un réglage agressif des hyperparamètres liés au pipeline d'augmentation des données et à la la pondération des classes dans la fonction de perte. Ce réglage maximise le rappel du modèle modèle, garantissant que même les signes subtils de pathologie sont de pathologie sont signalés pour être examinés par l'homme.

Mise au point automatisée avec Ultralytics

Le ultralytics simplifie la complexité de l'optimisation en intégrant une fonction tuner qui utilise des algorithmes génétiques. Cela permet aux utilisateurs de rechercher automatiquement les meilleurs hyperparamètres pour leurs ensembles de données personnalisés sans avoir à ajuster manuellement les valeurs à chaque entraînement. hyperparamètres pour leurs ensembles de données personnalisés sans avoir à ajuster manuellement les valeurs à chaque entraînement.

L'exemple suivant montre comment lancer le réglage des hyperparamètres pour un modèle YOLO11 . L'accordeur modifiera les hyperparamètres (comme le taux d'apprentissage, l'élan et la décroissance du poids) sur plusieurs itérations afin de maximiser les performances.

from ultralytics import YOLO

# Initialize a YOLO11 model (using the 'nano' weight for speed)
model = YOLO("yolo11n.pt")

# Start tuning hyperparameters on the COCO8 dataset
# This will run for 10 epochs per iteration, for a total of 30 iterations
model.tune(data="coco8.yaml", epochs=10, iterations=30, optimizer="AdamW", plots=False)

Pour les utilisateurs avancés qui gèrent des expériences à grande échelle, l'intégration avec des plateformes dédiées comme Ray Tune ou en utilisant Weights & Biases pour la visualisation peuvent rationaliser davantage le flux de travail de réglage. Avec la R&D à venir sur des architectures telles que YOLO26, le réglage automatisé reste la pierre angulaire pour atteindre efficacement des performances de pointe.

Rejoindre la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant