Skip to main content
Un run est une unité de calcul unique enregistrée par W&B. Vous pouvez considérer un W&B Run comme l’élément atomique de l’ensemble de votre projet. En d’autres termes, chaque run est l’enregistrement d’un calcul précis, comme l’entraînement d’un modèle et la consignation des résultats, des Sweeps d’hyperparamètres, etc. Les cas d’usage courants de l’initialisation d’un run et de la consignation d’informations dans celui-ci incluent :
  • Entraîner un modèle et consigner des métriques telles que la précision et la perte
  • Effectuer un réglage des hyperparamètres et lancer de nouvelles expériences
  • Mener une nouvelle expérience de machine learning avec un modèle différent
  • Suivre et enregistrer des jeux de données et des modèles sous forme de W&B Artifacts
  • Télécharger et utiliser des jeux de données ou des modèles utilisés par d’autres membres de votre équipe comme W&B Artifacts
Pour initialiser un run W&B, appelez la méthode wandb.init() du SDK Python W&B. Cela démarre un nouveau run et renvoie un objet wandb.Run que vous pouvez utiliser pour consigner des métriques, des Artifacts et d’autres informations dans le run. Pour en savoir plus sur l’initialisation d’un run, voir Initialize runs. Chaque objet run possède un identifiant unique appelé run ID. Vous pouvez spécifier un ID unique ou laisser W&B en générer un aléatoirement pour vous. Chaque objet run possède également un nom de l’exécution compréhensible par l’humain et non unique. Vous pouvez attribuer un nom à votre run ou laisser W&B en générer un aléatoirement pour vous. Vous pouvez renommer un run après l’avoir initialisé. W&B enregistre votre run dans un projet. Vous spécifiez le projet lorsque vous initialisez le run avec wandb.init(project=""). W&B crée un nouveau projet si le projet n’existe pas. Si le projet existe déjà, W&B enregistre le run dans le projet que vous avez spécifié.
Si vous ne spécifiez pas de nom de projet, W&B stocke le run dans un projet appelé Uncategorized.
wandb.init() renvoie un objet wandb.Run qui contient des propriétés du run, telles que son ID, son nom, sa configuration et son état. Utilisez l’objet run pour consigner des métriques, des Artifacts et d’autres informations dans le run avec des méthodes telles que wandb.Run.log(), wandb.Run.log_code() et wandb.Run.use_artifact(). Chaque run possède un état qui décrit son statut actuel. Voir Run states pour obtenir la liste complète des états possibles d’un run. Affichez les runs et leurs propriétés dans l’espace de travail du projet du run sur l’application W&B. Vous pouvez également accéder par programmation aux propriétés du run avec l’objet wandb.Api.Run. À titre d’exemple, considérez l’extrait de code suivant, qui initialise un run W&B et y consigne quelques métriques :
Renseignez votre entité W&B dans la variable entity des extraits de code ci-dessous si vous souhaitez suivre l’exemple. Votre entité correspond à votre nom d’utilisateur W&B ou au nom de votre équipe. Vous pouvez la trouver dans l’URL de votre espace de travail dans l’application W&B. Par exemple, si l’URL de votre espace de travail est https://wandb.ai/nico/awesome-project, alors votre entité est nico.
La première ligne importe le SDK Python de W&B. La deuxième ligne initialise un run dans le projet awesome-project sous l’entité nico. La troisième ligne enregistre la précision et la perte du modèle pour ce run. Dans le terminal, W&B renvoie :
W&B renvoie deux URL dans la sortie du terminal. La première URL mène au Workspace de ce run, et la seconde mène à la page du projet.
Workspace d’un run
Consigner une métrique à un instant donné n’est pas forcément très utile. Un exemple plus réaliste, dans le cas de l’entraînement de modèles discriminatifs, consiste à consigner des métriques à intervalles réguliers. Par exemple, prenez l’extrait de code suivant :
Le script d’entraînement appelle wandb.Run.log() 10 fois. Chaque fois que le script appelle wandb.Run.log(), W&B consigne la précision et la perte pour cette époque. Dans votre terminal, vous devriez voir une sortie semblable à la suivante :
W&B enregistre la boucle d’entraînement simulée dans un seul run appelé jolly-haze-4. Cela s’explique par le fait que le script n’appelle la méthode wandb.init() qu’une seule fois. Copiez-collez l’URL que W&B affiche dans la sortie précédente dans votre navigateur. Cette URL vous dirige vers le Workspace du run dans l’interface de l’application W&B. Par exemple, l’image suivante montre le Workspace du run jolly-haze-4 :
Run d'entraînement avec métriques consignées

Synthèse du run

Utilisez l’attribut summary d’un run pour stocker des valeurs récapitulant un modèle, un processus d’entraînement ou une étape de prétraitement. Contrairement aux métriques qui évoluent au fil du temps, les valeurs de synthèse représentent généralement un résultat final ou agrégé. Vous pouvez journaliser des valeurs de synthèse pendant un run actif ou les mettre à jour une fois le run terminé. Vous pouvez y accéder par programmation avec le SDK Python W&B ou les consulter dans W&B App. Pour plus d’informations, voir Journaliser des métriques de synthèse.

Configuration du run

Utilisez la configuration d’un run pour stocker les valeurs d’entrée et les paramètres d’une expérience, tels que les hyperparamètres, l’architecture du modèle et le nom du dataset. Les valeurs de configuration vous aident à suivre les conditions utilisées pour produire les résultats d’un run. Vous pouvez journaliser des valeurs de configuration pendant un run actif ou les mettre à jour une fois le run terminé. Accédez-y par programmation avec le SDK Python W&B ou consultez-les dans l’application W&B. Pour plus d’informations, voir Configurer les expériences.