Suivez les expériences ML : enregistrez les hyperparamètres, les ensembles de données, les métriques et les artefacts pour un entraînement reproductible des modèles. Apprenez à organiser vos exécutions avec Ultralytics YOLO11.
Le suivi des expériences est le processus systématique qui consiste à enregistrer toutes les données, métadonnées et résultats pertinents associés aux cycles d'entraînement des modèles d'apprentissage automatique. Servant de cahier de laboratoire numérique pour les scientifiques des données et les ingénieurs en IA, cette pratique garantit que chaque étape de la phase de recherche et développement est documentée, reproductible et analysable. En capturant des entrées telles que les hyperparamètres et les versions des ensembles de données, ainsi que des sorties telles que les mesures de performance et les artefacts du modèle, le suivi des expériences transforme la nature souvent chaotique des essais et erreurs de la formation des modèles en un flux de travail structuré et scientifique. Cette organisation est essentielle pour les équipes qui souhaitent construire efficacement des systèmes d'intelligence artificielle (IA) robustes.
Pour gérer efficacement le cycle de vie d'un projet de vision par ordinateur, un système de suivi des expériences enregistre généralement trois catégories distinctes d'informations. L'organisation de ces composants permet aux développeurs de comparer différentes itérations et d'identifier la configuration optimale pour leur cas d'utilisation spécifique.
L'application rigoureuse du suivi des expériences est essentielle dans les secteurs où la précision et la sécurité sont primordiales. Elle permet aux équipes d'ingénieurs de consulter les données historiques pour comprendre pourquoi un modèle se comporte d'une certaine manière.
Dans le domaine de la santé, les chercheurs utilisent l' analyse d'images médicales pour aider les médecins à diagnostiquer des pathologies. Par exemple, lorsqu'ils entraînent un modèle pour la détection des tumeurs cérébrales, les ingénieurs peuvent mener des centaines d'expériences en variant les techniques d'augmentation des données et les architectures des modèles . Le suivi des expériences leur permet d'isoler la combinaison spécifique d'étapes de prétraitement qui a donné la sensibilité la plus élevée, garantissant ainsi que l'agent IA déployé minimise les faux négatifs dans les scénarios de diagnostic critiques .
Le développement de véhicules autonomes nécessite le traitement d'énormes quantités de données provenant de capteurs afin de detect , la signalisation et les obstacles. Les équipes travaillant sur la détection d'objets pour les voitures autonomes doivent optimiser à la fois la précision et la latence d'inférence. En suivant les expériences, elles peuvent analyser le compromis entre la taille et la vitesse du modèle, garantissant ainsi que le système final réagit en temps réel sans compromettre les normes de sécurité établies par des organisations telles que la National Highway Traffic Safety Administration (NHTSA).
Bien que le suivi des expériences soit un élément fondamental du MLOps (Machine Learning Operations), il est souvent confondu avec d'autres termes similaires. Il est important de comprendre les distinctions pour mettre en œuvre un workflow correct.
Les frameworks d'IA modernes simplifient le suivi des expériences en s'intégrant aux outils de journalisation courants. Lorsque vous utilisez Ultralytics , le suivi peut être organisé efficacement en définissant des noms de projet et d'exécution. Cette structure crée une hiérarchie de répertoires qui sépare les différentes hypothèses expérimentales.
L'exemple suivant montre comment entraîner un YOLO11 tout en nommant explicitement le projet et l' exécution de l'expérience afin de garantir que les métriques et les poids sont enregistrés de manière organisée.
from ultralytics import YOLO
# Load the latest YOLO11 nano model
model = YOLO("yolo11n.pt")
# Train the model, specifying 'project' and 'name' for organized tracking
# Results, logs, and weights will be saved to 'runs/detect/experiment_tracking_demo'
results = model.train(data="coco8.yaml", epochs=5, project="runs/detect", name="experiment_tracking_demo")
Pour visualiser et gérer les données enregistrées, les développeurs s'appuient sur des logiciels spécialisés. Ces outils comportent souvent des tableaux de bord qui permettent une comparaison côte à côte des courbes d'apprentissage et des tableaux de métriques.
En tirant parti de ces outils et méthodologies, les praticiens de l'IA peuvent aller au-delà du développement basé sur l'intuition, en s'assurant que chaque amélioration apportée à leurs réseaux neuronaux est fondée sur des données, documentée et reproductible.