Pour plus de détails, consultez la référence des types de données.
Pour en savoir plus, consultez un rapport de démonstration sur la visualisation des prédictions de modèles ou regardez un guide pas à pas en vidéo.
Prérequis
Pour journaliser des objets média avec le SDK W&B, vous devrez peut-être installer des dépendances supplémentaires. Pour installer ces dépendances, exécutez la commande suivante :Images
Journalisez des images pour suivre les entrées, les sorties, les poids des filtres, les activations, et bien plus encore.
Nous vous recommandons de journaliser moins de 50 images par étape, afin que la journalisation ne ralentisse pas l’entraînement et que le chargement des images ne ralentisse pas la consultation des résultats.
- Journaliser des tableaux en tant qu’images
- Journaliser des images PIL
- Journaliser des images à partir de fichiers
Fournissez directement des tableaux lorsque vous construisez des images manuellement, par exemple à l’aide de L’image est considérée comme étant en niveaux de gris si la dernière dimension vaut 1, en RGB si elle vaut 3 et en RGBA si elle vaut 4. Si le tableau contient des nombres à virgule flottante, ceux-ci sont convertis en entiers compris entre
make_grid de torchvision.Les tableaux sont convertis au format PNG à l’aide de Pillow.0 et 255. Pour normaliser vos images différemment, vous pouvez spécifier le mode manuellement ou simplement fournir une PIL.Image, comme décrit dans l’onglet « Journaliser des images PIL » de ce volet.Superpositions sur les images
- Masques de segmentation
- Boîtes englobantes
Journalisez des masques de segmentation sémantique et interagissez avec eux (modification de l’opacité, visualisation de leur évolution au fil du temps, etc.) dans l’interface utilisateur de W&B.
Pour journaliser une superposition, passez à l’argument nommé Les masques de segmentation d’une clé sont définis à chaque step (chaque appel à

masks de wandb.Image un dictionnaire contenant les clés et valeurs suivantes :- l’une des deux clés suivantes, qui représentent le masque d’image :
"mask_data": un tableau NumPy 2D contenant une étiquette de classe entière pour chaque pixel"path": (string) le chemin d’un fichier de masque d’image enregistré
"class_labels": (facultatif) un dictionnaire qui associe les étiquettes de classe entières du masque d’image à des noms de classe lisibles
run.log()).- Si plusieurs steps fournissent des valeurs différentes pour la même clé de masque, seule la valeur la plus récente de cette clé est appliquée à l’image.
- Si plusieurs steps fournissent des clés de masque différentes, toutes les valeurs de chaque clé sont affichées, mais seules celles définies dans le step consulté sont appliquées à l’image. Afficher ou masquer les masques non définis dans ce step ne modifie pas l’image.
Superpositions sur les images dans les Tables
- Masques de segmentation
- Boîtes englobantes

wandb.Image pour chaque ligne du tableau.L’extrait de code ci-dessous en donne un exemple :Histogrammes
- Journalisation de base des histogrammes
- Journalisation flexible des histogrammes
Si vous fournissez une séquence de nombres (liste, tableau ou tenseur, par exemple) comme premier argument, l’histogramme est construit automatiquement par un appel à 
np.histogram(). Tous les tableaux et tenseurs sont aplatis. Vous pouvez utiliser l’argument nommé facultatif num_bins pour redéfinir le nombre d’intervalles par défaut, fixé à 64. Le nombre maximum d’intervalles pris en charge est de 512.Dans l’interface utilisateur, les histogrammes sont tracés avec l’étape d’entraînement sur l’axe X, la valeur de la métrique sur l’axe Y et le nombre d’occurrences représenté par la couleur, afin de faciliter la comparaison des histogrammes journalisés tout au long de l’entraînement. Pour en savoir plus sur la journalisation d’histogrammes ponctuels, consultez l’onglet « Histogrammes dans la synthèse » de ce panneau.
Visualisations 3D
Journalisez des nuages de points 3D et des scènes Lidar avec des boîtes englobantes. Transmettez un tableau NumPy contenant les coordonnées et les couleurs des points à afficher. Les nuages de points journalisés sont entièrement interactifs dans l’application W&B. Par exemple, le rapport LIDAR Point Clouds of Driving Scenes intégré ci-dessous présente des scènes du jeu de données Lyft avec des boîtes englobantes 3D. Faites glisser la souris pour faire pivoter la scène et zoomer dans la visionneuse.L’interface de W&B tronque les données au-delà de 300 000 points.
Formats de tableaux NumPy
Trois formats de tableaux NumPy sont pris en charge pour permettre des schémas de couleurs flexibles.[[x, y, z], ...]nx3[[x, y, z, c], ...]nx4| c is a categorydans la plage[1, 14](utile pour la segmentation)[[x, y, z, r, g, b], ...]nx6 | r,g,bsont des valeurs comprises dans la plage[0,255]pour les canaux de couleur rouge, vert et bleu.
Objet Python
À l’aide de ce schéma, vous pouvez définir un objet Python et le transmettre à la méthodefrom_point_cloud.
pointsest un tableau NumPy contenant les coordonnées et les couleurs des points à afficher, selon les mêmes formats que ceux du moteur de rendu de nuage de points simple présenté ci-dessus.boxesest un tableau NumPy de dictionnaires Python comportant trois attributs :corners- une liste de huit coinslabel- une chaîne représentant l’étiquette à afficher sur la boîte (facultatif)color- des valeurs RVB représentant la couleur de la boîtescore- une valeur numérique affichée sur la boîte englobante, qui permet de filtrer les boîtes englobantes affichées (par exemple, pour n’afficher que les boîtes englobantes dont lescoreest >0.75) (facultatif)
typeest une chaîne représentant le type de scène à afficher. Pour l’instant, la seule valeur prise en charge estlidar/beta
Fichiers de nuages de points
Vous pouvez utiliser la méthodefrom_file pour charger un fichier JSON contenant des données de nuage de points.
Tableaux NumPy
Avec les mêmes formats de tableau que ceux définis ci-dessus, vous pouvez utiliser directement des tableauxnumpy avec la méthode from_numpy pour définir un nuage de points.
pdb, pqr, mmcif, mcif, cif, sdf, sd, gro, mol2 ou mmtf.
W&B prend également en charge la journalisation de données moléculaires à partir de chaînes SMILES, de fichiers mol rdkit et d’objets rdkit.Chem.rdchem.Mol.

Image PNG
wandb.Image convertit par défaut les tableaux numpy ou les instances de PILImage en PNG.
Vidéo
Les vidéos sont journalisées à l’aide du type de donnéeswandb.Video :
Vue 2D d’une molécule
Vous pouvez journaliser une vue 2D d’une molécule à l’aide du type de donnéeswandb.Image et de rdkit :
Autres médias
W&B prend également en charge la journalisation de nombreux autres types de médias.Audio
audio-file.
Vidéo
ffmpeg et la bibliothèque Python moviepy sont requis pour transmettre des objets numpy). Les formats pris en charge sont "gif", "mp4", "webm" et "ogg". Si vous transmettez une chaîne de caractères à wandb.Video, nous vérifions que le fichier existe et que son format est pris en charge avant de le téléverser vers wandb. La transmission d’un objet BytesIO crée un fichier temporaire dont l’extension correspond au format spécifié.
Vos vidéos s’affichent dans la section Media des pages Run et Projet de W&B.
Pour plus d’informations sur l’utilisation, voir video-file.
Texte
Utilisezwandb.Table pour journaliser du texte dans des tableaux afin de l’afficher dans l’interface utilisateur. Par défaut, les en-têtes de colonne sont ["Input", "Output", "Expected"]. Pour garantir des performances optimales de l’interface utilisateur, le nombre maximum de lignes est fixé par défaut à 10 000. Vous pouvez toutefois redéfinir explicitement ce maximum avec wandb.Table.MAX_ROWS = {DESIRED_MAX}.
DataFrame pandas.
string.
HTML
inject=False.
html-file.
