logo

TensorBoard

TensorFlow är ett visualiseringsverktyg som kallas TensorBoard. Det används för att analysera dataflödesdiagrammet och används för att förstå maskininlärningsmodeller. TensorBoard är gränssnittet som används för att visualisera grafen och många verktyg för att förstå, felsöka och optimera modellen.

Den viktiga egenskapen hos TensorBoard är att den innehåller en vy av olika typer av statistik om parametrarna och detaljerna i en graf i en vertikal justering.

exempel på java lambda

Det djupa neurala nätverket omfattar upp till 36 000 knutpunkter. TensorFlow hjälper till att kollapsa dessa noder högt i att kollapsa dessa noder i högnivåblock och framhäva de identiska strukturerna. Detta möjliggör bättre analys av grafen, med fokus på de primära delarna av beräkningsgrafen.

TensorBoard

TensorBoard-visualiseringen sägs vara mycket interaktiv där en användare kan panorera, zooma och expandera noderna för att visa detaljerna.

Följande är de givna diagramrepresentationerna som visar hela arbetet med TensorBoard visualisering-

TensorBoard

Algoritmerna kollapsar noderna till högnivåblock och lyfter fram de specifika grupperna med identiska strukturer som separerar höggradsnoderna. TensorBoarden som skapats är användbar och behandlas lika viktig för att ställa in en maskininlärningsmodell. Detta visualiseringsverktyg är designat för konfigurationsloggfilen.

Titta på bilden nedan:

TensorBoard

Ett neuralt nätverk bestämmer hur de olika ' neuroner ' och hur många lager innan modellen kan förutsäga resultatet. När vi väl har definierat arkitekturen behöver vi inte bara träna modellen utan också mätvärden för att beräkna noggrannheten i förutsägelsen. Detta mått kallas en förlustfunktion. Målet är att som en förlustfunktion.

TensorBoard är ett utmärkt verktyg för att visualisera mätvärden och lyfta fram potentiella problem. Det neurala nätverket kan ta timmar till veckor innan de hittar en lösning. TensorBoard uppdaterar parametrarna väldigt ofta.

TensorBoard finns i denna URL: http://localhost:6006

Typer av Dashboard i TensorBoard

TensorBoard

1. Skalär instrumentpanel

Den används för att visualisera tidsberoende statistik; Vi kanske till exempel vill titta på variationerna i inlärningshastigheten eller förlustfunktionen.

2. Histogram

Histogram Dashboard i TensorBoard visar hur den statistiska fördelningen av en Tensor har varierat över tiden. Den visualiserar data inspelad via tf.summary.histogram .

konvertera sträng int java

3. Distributionsinstrumentpanel

Det visar viss användning på hög nivå av tf.summary.histogram . Det visar några högnivåstarter på en distribution. Varje rad i diagrammet ger en ledtråd om percentilen i fördelningen över data.

4. Bildinstrumentpanel

Detta visar png-filen som sparades via en tf.summary.image . Rader motsvarar etiketterna och kolumnerna till körningen. Genom att använda TensorBoards bildinstrumentpanel kan vi bädda in anpassade visualiseringar.

5. Ljudinstrumentpanel

Det är ett utmärkt verktyg för att bädda in spelbara ljudwidgets för ljud som sparats via en tf.summary.audio . Instrumentpanelen bäddar alltid in det senaste ljudet för varje tagg.

6. Graph Explorer

Den används främst för att möjliggöra inspektion av TensorFlow-modellen.

7. Projektor

Inbäddningsprojektorn i TensorFlow används för flerdimensionell data. Den inbäddade projektorn läser data från kontrollpunktsfilen och kan ställas in med motsvarande data, till exempel en vokabulärfil.

8. Textinstrumentpanel

Text Dashboard visar textexperter sparade via tf.summary.text. , innehåller funktioner som hyperlänkar, listor och tabeller, alla stöds.

TensorBoard

Olika vyer av TensorBoard

Olika vyer tar indata av olika format och visar dem på olika sätt. Vi kan ändra dem på den orange topplisten.

    Skalärer-Visualisera skalära värden, såsom klassificeringsnoggrannhet.Graf-Visualisera beräkningsgrafen för vår modell, som den neurala nätverksmodellen.distributioner-Visualisera hur data förändras över tiden, till exempel vikten av ett neuralt nätverk.Histogram-En finare bild av fördelningen som visar en fördelning som visar fördelningar i ett 3-dimensionellt perspektiv.Projektor-Den kan användas för att visualisera ordinbäddningar (det vill säga ordinbäddning är numeriska representationer av ord som fångar deras semantiska relationer)Bild-Visualisera bilddataAudio-Visualisera ljuddataText-Visualisera textdata

Hur använder man TensorBoard?

Vi kommer att lära oss hur du öppnar TensorBoard från terminalen för MacOS och kommandorads Windows.

Koden kommer att förklaras i en framtida handledning; fokus här ligger på TensorBoard.

int i sträng

Först måste vi importera de bibliotek vi kommer att använda under utbildningen.

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

Vi skapar data. Det är en matris med 10 000 rader och kolumner/p>

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

Koden nedan transformerar data och skapar modellen.

Observera att inlärningshastigheten är lika med 0,1. Om vi ​​ändrar denna kurs till ett högre värde kommer modellen inte att hitta en lösning. Detta är vad som hände till vänster på bilden ovan.

I exemplet nedan lagrar vi modellen i arbetskatalogen, det vill säga där vi lagrar anteckningsboken eller pythonfilen. Inne i sökvägen skapar TensorFlow en mapp som heter train med ett underordnat mappnamn 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 ) ) 

Produktion:

 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} 

Det sista steget består i att träna modellen. Under utbildningsperioden skriver TensorFlow information i modellkatalogen.

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

Produktion:

 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. 

För Windows-användare

 cd C:UsersAdminAnaconda3 activate hello-tf 

För att starta TensorBoard kan vi använda den här koden

 tensorboard --logdir=.	rainlinreg