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-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-
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:
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
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.
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.
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