logo

TensorBoard

TensorFlow is een visualisatietool, genaamd TensorBoard. Het wordt gebruikt voor het analyseren van de gegevensstroomgrafiek en om machine-learningmodellen te begrijpen. TensorBoard is de interface die wordt gebruikt om de grafiek te visualiseren en vele tools om het model te begrijpen, er fouten in op te sporen en het te optimaliseren.

Het belangrijke kenmerk van TensorBoard is dat het verschillende soorten statistieken weergeeft over de parameters en details van elke grafiek in een verticale uitlijning.

Android-proces acore

Het diepe neurale netwerk omvat maximaal 36.000 knooppunten. TensorFlow helpt bij het samenvouwen van deze knooppunten in hoge blokken bij het samenvouwen van deze knooppunten in blokken op hoog niveau en het benadrukken van de identieke structuren. Dit maakt een betere analyse van de grafiek mogelijk, waarbij de nadruk ligt op de primaire delen van de berekeningsgrafiek.

TensorBoard

Er wordt gezegd dat de TensorBoard-visualisatie zeer interactief is, waarbij een gebruiker de knooppunten kan pannen, zoomen en uitbreiden om de details weer te geven.

Hieronder volgt de gegeven diagramweergave die de volledige werking van TensorBoard-visualisatie toont:

TensorBoard

De algoritmen vouwen de knooppunten samen in blokken op hoog niveau en benadrukken de specifieke groepen met identieke structuren, die de knooppunten op hoog niveau scheiden. Het gemaakte TensorBoard is nuttig en wordt even belangrijk geacht voor het afstemmen van een machine learning-model. Deze visualisatietool is ontworpen voor het configuratielogbestand.

Kijk naar de afbeelding hieronder:

TensorBoard

Een neuraal netwerk beslist hoe de verschillende ‘ neuronen ' en hoeveel lagen voordat het model de uitkomst kan voorspellen. Zodra we de architectuur hebben gedefinieerd, moeten we niet alleen het model trainen, maar ook de statistieken om de nauwkeurigheid van de voorspelling te berekenen. Deze metriek wordt een verliesfunctie genoemd. Het doel is om als verliesfunctie te fungeren.

TensorBoard is een geweldig hulpmiddel om statistieken te visualiseren en de potentiële problemen te benadrukken. Het kan uren tot weken duren voordat het neurale netwerk een oplossing vindt. TensorBoard werkt de parameters zeer vaak bij.

TensorBoard bevindt zich op deze URL: http://localhost:6006

Soorten DashBoard in TensorBoard

TensorBoard

1. Scalair dashboard

Het wordt gebruikt om tijdsafhankelijke statistieken te visualiseren; We willen bijvoorbeeld kijken naar de variaties in leersnelheid of de verliesfunctie.

2. Histogram

Histogram Dashboard in TensorBoard laat zien hoe de statistische verdeling van een Tensor in de loop van de tijd is gevarieerd. Het visualiseert gegevens die zijn opgenomen via tf.samenvatting.histogram .

typoscript datum tijd

3. Distributiedashboard

Het laat een gebruik op hoog niveau zien tf.samenvatting.histogram . Het toont een aantal starts op hoog niveau voor een distributie. Elke lijn in de grafiek geeft een hint over het percentiel in de verdeling over de gegevens.

4. Beelddashboard

Dit toont de png die is opgeslagen via een tf.samenvatting.afbeelding . Rijen komen overeen met de labels en de kolommen met de run. Door gebruik te maken van dit beelddashboard van TensorBoard kunnen we visualisaties op maat embedden.

5. Audiodashboard

Het is een uitstekend hulpmiddel voor het insluiten van afspeelbare audiowidgets voor audio die is opgeslagen via een tf.samenvatting.audio . Het dashboard integreert altijd de nieuwste audio voor elke tag.

6. Grafiekverkenner

Het werd voornamelijk gebruikt om inspectie van het TensorFlow-model mogelijk te maken.

7. Projector

De inbeddingsprojector in TensorFlow die wordt gebruikt voor multidimensionale gegevens. De inbeddingsprojector leest gegevens uit het controlepuntbestand en kan worden ingesteld met overeenkomstige gegevens, zoals een woordenschatbestand.

8. Tekstdashboard

Text Dashboard toont tekstexperts die zijn opgeslagen via tf.samenvatting.tekst. , inclusief functies zoals hyperlinks, lijsten en tabellen, worden allemaal ondersteund.

TensorBoard

Verschillende weergaven van TensorBoard

Verschillende weergaven nemen invoer van verschillende formaten en geven deze op verschillende manieren weer. We kunnen ze wijzigen in de oranje bovenste balk.

    scalairen-Visualiseer scalaire waarden, zoals de nauwkeurigheid van de classificatie.Grafiek-Visualiseer de computationele grafiek van ons model, zoals het neurale netwerkmodel.Uitkeringen-Visualiseer hoe gegevens in de loop van de tijd veranderen, zoals de gewichten van een neuraal netwerk.Histogrammen-Een mooiere weergave van de verdeling die een verdeling laat zien die verdelingen in een driedimensionaal perspectief weergeeft.Projector-Het kan worden gebruikt om woordinsluitingen te visualiseren (dat wil zeggen, woordinsluitingen zijn numerieke representaties van woorden die hun semantische relaties vastleggen)Afbeelding-Beeldgegevens visualiserenAudio-Audiogegevens visualiserenTekst-Visualiseren van tekstgegevens

Hoe gebruik je TensorBoard?

We zullen leren hoe u TensorBoard opent vanaf de terminal voor MacOS en Command-line Windows.

Snel sorteren

De code zal in een toekomstige tutorial worden uitgelegd; de focus ligt hier op TensorBoard.

Eerst moeten we de bibliotheken importeren die we tijdens de training zullen gebruiken.

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

Wij creëren de gegevens. Het is een array van 10.000 rijen en kolommen/p>

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

De onderstaande code transformeert de gegevens en maakt het model.

Merk op dat de leersnelheid gelijk is aan 0,1. Als we dit tarief naar een hogere waarde wijzigen, zal het model geen oplossing vinden. Dit is wat er aan de linkerkant van de bovenstaande foto gebeurde.

In het onderstaande voorbeeld slaan we het model op in de werkmap, dat wil zeggen waar we het notebook- of Python-bestand opslaan. Binnen het pad maakt TensorFlow een map met de naam train met de naam linreg van de onderliggende map.

 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 ) ) 

Uitgang:

 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} 

De laatste stap bestaat uit het trainen van het model. Tijdens de trainingsperiode schrijft TensorFlow informatie in de modeldirectory.

 # 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) 

Uitgang:

 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. 

Voor Windows-gebruiker

 cd C:UsersAdminAnaconda3 activate hello-tf 

Om TensorBoard te starten, kunnen we deze code gebruiken

 tensorboard --logdir=.	rainlinreg