AI Training - Tutoriel - Utiliser le Tensorboard dans un job
Comment utiliser Tensorboard dans un job AI Training
Objectif
L'objectif de ce tutoriel est de montrer comment lancer un TensorBoard avec AI Training.
TensorBoard est un outil créé par TensorFlow, pour fournir les mesures et visualisations nécessaires durant le workflow de machine learning. Il permet de suivre des métriques d'expérimentation comme la perte et la précision, de visualiser le graphe du modèle, de projeter des embeddings dans un espace de dimension réduite, et bien plus encore.
TensorBoard fournit une interface visuelle :
Ce tutoriel présente un exemple simple de lancement de TensorBoard dans un job.
Prérequis
- une CLI
ovhaifonctionnelle comment installer la CLI ovhai
En pratique
Disposer d'un conteneur Object Storage où sont sauvegardés vos logs de métriques
Tout d'abord, vous devez avoir entraîné votre modèle et sauvegardé vos résultats dans un conteneur Object Storage (exemple : my_tf_metrics situé à Gravelines GRA).
Autrement, vous pouvez avoir un job déjà au statut RUNNING qui est connecté à ce conteneur Object Storage et qui y écrit des logs de métriques (exemple : my_tf_metrics@GRA:/runs:RW:cache). Dans ce dernier cas, n'oubliez pas le paramètre cache indiquant que le volume est mis en cache et partageable entre les jobs. Plus d'informations sur la configuration des volumes dans les jobs ici, des informations sur la mise en cache des volumes ici.
Si vous souhaitez voir un exemple d'utilisation de TensorBoard pour entraîner un modèle, veuillez consulter ce notebook sur GitHub.
Lancer TensorBoard dans un job
Pour lancer TensorBoard dans un job, vous devez accéder à la CLI ovhai et exécuter cette commande :
Tout d'abord, définissez le nombre de CPU. Pour ce type de job, vous n'avez pas nécessairement besoin de beaucoup de ressources.
--cpu 1 indique que vous demandez 1 CPU pour ce job.
Le port par défaut de TensorBoard est le 6006.
--default-http-port 6006 indique que le port à joindre sur l'URL du job est le 6006.
Connectez le volume contenant vos logs de métriques tensorboard.
--volume my_tf_metrics@GRA:/runs:RO:cache indique que vous connectez le conteneur my_tf_metrics de Gravelines (GRA) Object Storage dans le répertoire /runs de votre job. La permission lecture seule RO est suffisante car TensorBoard n'a pas besoin d'accès en écriture. Le conteneur my_tf_metrics@GRA doit contenir vos métriques tensorflow.
Spécifiez la commande de lancement de tensorboard.
tensorboard --logdir=/runs --bind_all indique que nous voulons que tensorboard surveille le répertoire /runs. N'oubliez pas le paramètre --bind_all, sinon vous ne pourrez pas accéder à votre tensorboard depuis le réseau public.
Envisagez d'ajouter l'attribut --unsecure-http si vous souhaitez que votre application soit accessible sans authentification.
Une fois le job en cours d'exécution, vous pouvez accéder à votre TensorBoard directement depuis l'URL du job.
Aller plus loin
Vous pouvez comparer les modèles d'IA en fonction de la consommation de ressources, de la précision et du temps d'entraînement. Consultez ce tutoriel.
Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.
Nous voulons vos retours !
N’hésitez pas à nous faire part de vos questions, retours et suggestions pour améliorer le service :
- Sur le serveur Discord OVHcloud