logo

Tableau Tenseur

TensorFlow est un outil de visualisation appelé TensorBoard. Il est utilisé pour analyser le graphique de flux de données et pour comprendre les modèles d'apprentissage automatique. TensorBoard est l'interface utilisée pour visualiser le graphique et de nombreux outils pour comprendre, déboguer et optimiser le modèle.

La caractéristique importante de TensorBoard est qu'il inclut une vue de différents types de statistiques sur les paramètres et les détails de tout graphique dans un alignement vertical.

apprendre le sélénium

Le réseau neuronal profond comprend jusqu'à 36 000 nœuds. TensorFlow aide à réduire ces nœuds en haut en réduisant ces nœuds en blocs de haut niveau et en mettant en évidence les structures identiques. Cela permet une meilleure analyse du graphique, en se concentrant sur les sections principales du graphique de calcul.

Tableau Tenseur

La visualisation TensorBoard est considérée comme très interactive : un utilisateur peut effectuer un panoramique, un zoom et une expansion des nœuds pour afficher les détails.

Voici la représentation schématique donnée qui montre le fonctionnement complet de la visualisation TensorBoard.

Tableau Tenseur

Les algorithmes regroupent les nœuds en blocs de haut niveau et mettent en évidence les groupes spécifiques avec des structures identiques, qui séparent les nœuds de haut niveau. Le TensorBoard créé est utile et est considéré comme tout aussi important pour régler un modèle d'apprentissage automatique. Cet outil de visualisation est conçu pour le fichier journal de configuration.

Regardez l'image ci-dessous:

Tableau Tenseur

Un réseau de neurones décide comment connecter les différents ' neurones » et combien de couches avant que le modèle puisse prédire le résultat. Une fois que nous avons défini l'architecture, nous devons non seulement entraîner le modèle mais également des métriques pour calculer la précision de la prédiction. Cette métrique est appelée fonction de perte. L'objectif est d'agir en tant que fonction de perte.

TensorBoard est un excellent outil pour visualiser les métriques et mettre en évidence les problèmes potentiels. Le réseau neuronal peut prendre des heures, voire des semaines, avant de trouver une solution. TensorBoard met à jour les paramètres très souvent.

TensorBoard se trouve à cette URL : http://localhost:6006

Types de DashBoard dans TensorBoard

Tableau Tenseur

1. Tableau de bord scalaire

Il est utilisé pour visualiser des statistiques en fonction du temps ; par exemple, nous pourrions vouloir examiner les variations du taux d'apprentissage ou la fonction de perte.

2. Histogramme

Le tableau de bord d'histogramme dans TensorBoard affiche comment la distribution statistique d'un Tensor a varié au fil du temps. Il visualise les données enregistrées via tf.summary.histogramme .

expression régulière Java pour

3. Tableau de bord de distribution

Il montre une utilisation de haut niveau de tf.summary.histogramme . Il montre quelques démarrages de haut niveau sur une distribution. Chaque ligne du graphique donne une indication sur le percentile de la distribution sur les données.

4. Tableau de bord des images

Cela montre le png qui a été enregistré via un tf.summary.image . Les lignes correspondent aux étiquettes et les colonnes à l'exécution. En utilisant ce tableau de bord d'images de TensorBoard, nous pouvons intégrer des visualisations personnalisées.

5. Tableau de bord audio

C'est un excellent outil pour intégrer des widgets audio lisibles pour les audios enregistrés via un tf.summary.audio . Le tableau de bord intègre toujours le dernier audio pour chaque balise.

6. Explorateur de graphiques

Il est principalement utilisé pour permettre l'inspection du modèle TensorFlow.

7. Projecteur

Le projecteur d'intégration dans TensorFlow utilisé pour les données multidimensionnelles. Le projecteur d'intégration lit les données du fichier de point de contrôle et peut être configuré avec les données correspondantes, telles qu'un fichier de vocabulaire.

8. Tableau de bord texte

Le tableau de bord texte affiche les experts en texte enregistrés via tf.summary.text. , inclut des fonctionnalités telles que des hyperliens, des listes et des tableaux, sont tous pris en charge.

Tableau Tenseur

Différentes vues de TensorBoard

Différentes vues prennent des entrées de différents formats et les affichent différemment. Nous pouvons les changer sur la barre supérieure orange.

    Scalaires-Visualisez les valeurs scalaires, telles que la précision de la classification.Graphique-Visualisez le graphique informatique de notre modèle, comme le modèle de réseau neuronal.Distributions-Visualisez l'évolution des données au fil du temps, comme le poids d'un réseau neuronal.Histogrammes-Une vue plus sophistiquée de la distribution qui montre une distribution qui montre les distributions dans une perspective tridimensionnelle.Projecteur-Il peut être utilisé pour visualiser les intégrations de mots (c'est-à-dire que les intégrations de mots sont des représentations numériques de mots qui capturent leurs relations sémantiques)Image-Visualisation des données d'imageL'audio-Visualisation des données audioTexte-Visualiser des données textuelles

Comment utiliser TensorBoard ?

Nous apprendrons comment ouvrir TensorBoard à partir du terminal pour MacOS et Windows en ligne de commande.

Le code sera expliqué dans un prochain tutoriel ; l'accent est mis ici sur TensorBoard.

Tout d’abord, nous devons importer les bibliothèques que nous utiliserons pendant la formation.

 ## Import the library import tensorflow as tf import numpy as np 

Nous créons les données. C'est un tableau de 10 000 lignes et colonnes/p>

 X_train = (np.random.sample((10000,5))) y_train = (np.random.sample((10000,1))) X_train.shape 

installer maven

Le code ci-dessous transforme les données et crée le modèle.

A noter que le taux d'apprentissage est égal à 0,1. Si nous modifions ce taux vers une valeur plus élevée, le modèle ne trouvera pas de solution. C'est ce qui s'est passé sur le côté gauche de l'image ci-dessus.

Dans l'exemple ci-dessous, nous stockons le modèle dans le répertoire de travail, c'est-à-dire là où nous stockons le notebook ou le fichier python. À l'intérieur du chemin, TensorFlow crée un dossier appelé train avec un nom de dossier enfant linreg.

 feature_columns = [ tf.feature_column.numeric_column('x', shape=X_train.shape[1:])] DNN_reg = tf.estimator.DNNRegressor(feature_columns=feature_columns, # Indicate where to store the log file model_dir='train', hidden_units=[500, 300], optimizer=tf.train.ProximalAdagradOptimizer( learning_rate=0.1, l1_regularization_strength=0.001 ) ) 

Sortir:

 INFO:tensorflow:Using the default configuration. INFO:tensorflow:Using config:{'_model_dir': 'train/linreg', '_tf_random_seed': None, '_save_summary_steps': 100, '_save_checkpoints_steps': None, '_save_checkpoints_secs': 600, '_session_config': None, '_keep_checkpoint_max': 5, '_keep_checkpoint_every_n_hours': 10000, '_log_step_count_steps': 100, '_train_distribute': None, '_service': None, '_cluster_spec': , '_task_type': 'worker', '_task_id': 0, '_global_id_in_cluster': 0, '_master': '', '_evaluation_master': '', '_is_chief': True, '_num_ps_replicas': 0, '_num_worker_replicas': 1} 

La dernière étape consiste à entraîner le modèle. Pendant la période de formation, TensorFlow écrit des informations dans le répertoire du modèle.

 # Train the estimator train_input = tf.estimator.inputs.numpy_input_fn( x={'x': X_train}, y=y_train, shuffle=False,num_epochs=None) DNN_reg.train(train_input,steps=3000) 

Sortir:

 INFO:tensorflow:Calling model_fn. INFO:tensorflow:Done calling model_fn. INFO:tensorflow:Create CheckpointSaverHook. INFO:tensorflow: Graph was finalized. INFO:tensorflow:Running local_init_op. INFO:tensorflow:Done running local_init_op. INFO:tensorflow:Saving checkpoints for 1 into train/linreg/model.ckpt. INFO:tensorflow:loss = 40.060104, step = 1 INFO:tensorflow:global_step/sec: 197.061 INFO:tensorflow:loss = 10.62989, step = 101 (0.508 sec) INFO:tensorflow:global_step/sec: 172.487 INFO:tensorflow:loss = 11.255318, step = 201 (0.584 sec) INFO:tensorflow:global_step/sec: 193.295 INFO:tensorflow:loss = 10.604872, step = 301 (0.513 sec) INFO:tensorflow:global_step/sec: 175.378 INFO:tensorflow:loss = 10.090343, step = 401 (0.572 sec) INFO:tensorflow:global_step/sec: 209.737 INFO:tensorflow:loss = 10.057928, step = 501 (0.476 sec) INFO:tensorflow:global_step/sec: 171.646 INFO:tensorflow:loss = 10.460144, step = 601 (0.583 sec) INFO:tensorflow:global_step/sec: 192.269 INFO:tensorflow:loss = 10.529617, step = 701 (0.519 sec) INFO:tensorflow:global_step/sec: 198.264 INFO:tensorflow:loss = 9.100082, step = 801 (0.504 sec) INFO:tensorflow:global_step/sec: 226.842 INFO:tensorflow:loss = 10.485607, step = 901 (0.441 sec) INFO:tensorflow:global_step/sec: 152.929 INFO:tensorflow:loss = 10.052481, step = 1001 (0.655 sec) INFO:tensorflow:global_step/sec: 166.745 INFO:tensorflow:loss = 11.320213, step = 1101 (0.600 sec) INFO:tensorflow:global_step/sec: 161.854 INFO:tensorflow:loss = 9.603306, step = 1201 (0.619 sec) INFO:tensorflow:global_step/sec: 179.074 INFO:tensorflow:loss = 11.110269, step = 1301 (0.556 sec) INFO:tensorflow:global_step/sec: 202.776 INFO:tensorflow:loss = 11.929443, step = 1401 (0.494 sec) INFO:tensorflow:global_step/sec: 144.161 INFO:tensorflow:loss = 11.951693, step = 1501 (0.694 sec) INFO:tensorflow:global_step/sec: 154.144 INFO:tensorflow:loss = 8.620987, step = 1601 (0.649 sec) INFO:tensorflow:global_step/sec: 151.094 INFO:tensorflow:loss = 10.666125, step = 1701 (0.663 sec) INFO:tensorflow:global_step/sec: 193.644 INFO:tensorflow:loss = 11.0349865, step = 1801 (0.516 sec) INFO:tensorflow:global_step/sec: 189.707 INFO:tensorflow:loss = 9.860596, step = 1901 (0.526 sec) INFO:tensorflow:global_step/sec: 176.423 INFO:tensorflow:loss = 10.695, step = 2001 (0.567 sec) INFO:tensorflow:global_step/sec: 213.066 INFO:tensorflow:loss = 10.426752, step = 2101 (0.471 sec) INFO:tensorflow:global_step/sec: 220.975 INFO:tensorflow:loss = 10.594796, step = 2201 (0.452 sec) INFO:tensorflow:global_step/sec: 219.289 INFO:tensorflow:loss = 10.4212265, step = 2301 (0.456 sec) INFO:tensorflow:global_step/sec: 215.123 INFO:tensorflow:loss = 9.668612, step = 2401 (0.465 sec) INFO:tensorflow:global_step/sec: 175.65 INFO:tensorflow:loss = 10.009649, step = 2501 (0.569 sec) INFO:tensorflow:global_step/sec: 206.962 INFO:tensorflow:loss = 10.477722, step = 2601 (0.483 sec) INFO:tensorflow:global_step/sec: 229.627 INFO:tensorflow:loss = 9.877638, step = 2701 (0.435 sec) INFO:tensorflow:global_step/sec: 195.792 INFO:tensorflow:loss = 10.274586, step = 2801 (0.512 sec) INFO:tensorflow:global_step/sec: 176.803 INFO:tensorflow:loss = 10.061047, step = 2901 (0.566 sec) INFO:tensorflow:Saving checkpoints for 3000 into train/linreg/model.ckpt. INFO:tensorflow: Loss for the final step: 10.73032. 

Pour l'utilisateur Windows

 cd C:UsersAdminAnaconda3 activate hello-tf 

Pour lancer TensorBoard, nous pouvons utiliser ce code

 tensorboard --logdir=.	rainlinreg