config d’un run pour enregistrer votre configuration d’entraînement :
- hyperparamètre
- paramètres d’entrée, comme le nom du jeu de données ou le type de modèle
- toute autre variable indépendante pour vos expériences.
wandb.Run.config facilite l’analyse de vos expériences et la reproduction de votre travail par la suite. Vous pouvez regrouper vos données selon les valeurs de configuration dans l’application W&B, comparer les configurations de différents runs W&B et évaluer l’effet de chaque configuration d’entraînement sur les résultats. La propriété config est un objet de type dictionnaire qui peut être construit à partir de plusieurs objets de type dictionnaire.
Pour enregistrer les métriques de sortie ou des variables dépendantes comme la perte et l’accuracy, utilisez
wandb.Run.log() plutôt que wandb.Run.config.Configurer la configuration d’une expérience
-) ou des caractères de soulignement (_) au lieu de points (.) dans les noms de variables de votre configuration.
Utilisez la syntaxe d’accès au dictionnaire ["key"]["value"] plutôt que la syntaxe d’accès par attribut config.key.value si votre script accède à des clés de wandb.Run.config sous la racine.
Les sections suivantes présentent différents scénarios courants pour définir la configuration de vos expériences.
Définir la configuration à l’initialisation
wandb.init() pour créer un processus en arrière-plan chargé de synchroniser et de journaliser les données dans un run W&B.
L’extrait de code suivant montre comment définir un dictionnaire Python avec des valeurs de configuration et comment passer ce dictionnaire en argument lorsque vous initialisez un run W&B.
config, W&B aplatit les noms en utilisant des points.
Accédez aux valeurs du dictionnaire comme à celles de tout autre dictionnaire en Python :
Tout au long du Guide du développeur et des exemples, nous copions les valeurs de configuration dans des variables distinctes. Cette étape est facultative. Cela est fait pour plus de lisibilité.
Définir la configuration avec argparse
train_one_epoch et evaluate_one_epoch sont fournies pour simuler une boucle d’entraînement à des fins de démonstration :
Définissez la configuration au fil de votre script
Définissez la configuration une fois votre run terminé
Mettre en avant les valeurs de configuration
wandb.Run.pin_config_keys pour épingler une ou plusieurs clés de configuration avec le SDK Python.
Par exemple, si vous utilisez un tableau de bord Grafana pour surveiller des runs d’entraînement, ajoutez l’URL du tableau de bord à votre configuration et épinglez la clé grafana_url :
absl.FLAGS
absl.
Configurations basées sur des fichiers
config-defaults.yaml dans le même répertoire que votre script de run, le run détecte automatiquement les paires clé-valeur définies dans le fichier et les transmet à wandb.Run.config.
L’extrait de code suivant montre un exemple de fichier YAML config-defaults.yaml :
config-defaults.yaml en définissant de nouvelles valeurs dans l’argument config de wandb.init(). Par exemple :
config-defaults.yaml, utilisez l’argument --configs command-line et indiquez le chemin du fichier :
Exemple d’utilisation de configurations basées sur des fichiers
config imbriqué :
Afficher les valeurs de configuration dans la W&B App
- Accédez à votre projet dans la W&B App.
- Cliquez sur le run dont vous souhaitez consulter les valeurs de configuration.
- Sélectionnez l’onglet Vue d’ensemble.
- Faites défiler jusqu’à la section Config.
- (Facultatif) Cliquez sur View raw data pour afficher les valeurs de configuration au format JSON.
Flags de TensorFlow v1
wandb.Run.config.