TensorFlow je vizualizačný nástroj, ktorý sa nazýva TensorBoard. Používa sa na analýzu grafu toku údajov a používa sa na pochopenie modelov strojového učenia. TensorBoard je rozhranie používané na vizualizáciu grafu a mnoho nástrojov na pochopenie, ladenie a optimalizáciu modelu.
Dôležitou vlastnosťou TensorBoard je, že obsahuje pohľad na rôzne typy štatistík o parametroch a podrobnostiach akéhokoľvek grafu vo zvislom zarovnaní.
jsp javatpoint
Hlboká neurónová sieť zahŕňa až 36 000 uzly. TensorFlow pomáha pri zbalení týchto uzlov na vysokej úrovni pri zbalení týchto uzlov do blokov na vysokej úrovni a zvýraznení identických štruktúr. To umožňuje lepšiu analýzu grafu so zameraním na primárne časti výpočtového grafu.
Vizualizácia TensorBoard je údajne veľmi interaktívna, kde používateľ môže posúvať, približovať a rozširovať uzly, aby zobrazil podrobnosti.
Nasledujú uvedené diagramy zobrazujúce kompletnú prácu vizualizácie TensorBoard -
Algoritmy zbalia uzly do blokov vysokej úrovne a zvýraznia špecifické skupiny s identickými štruktúrami, ktoré oddeľujú uzly vysokého stupňa. Vytvorený TensorBoard je užitočný a považuje sa za rovnako dôležitý pre ladenie modelu strojového učenia. Tento vizualizačný nástroj je určený pre konfiguračný protokolový súbor.
Pozrite sa na obrázok nižšie:
Neurónová sieť rozhoduje o tom, ako spojiť rôzne neuróny “ a koľko vrstiev pred modelom dokáže predpovedať výsledok. Keď máme definovanú architektúru, potrebujeme nielen trénovať model, ale aj metriky na výpočet presnosti predikcie. Táto metrika sa nazýva stratová funkcia. Cieľom je ako stratová funkcia.
TensorBoard je skvelý nástroj na vizualizáciu metrík a zvýraznenie potenciálnych problémov. Neurónovej sieti môže trvať hodiny až týždne, kým nájdu riešenie. TensorBoard veľmi často aktualizuje parametre.
TensorBoard sa nachádza na tejto adrese URL: http://localhost:6006
Typy DashBoard v TensorBoard
1. Skalárny prístrojový panel
Používa sa na vizualizáciu časovo závislých štatistík; napríklad by sme sa chceli pozrieť na variácie v rýchlosti učenia alebo stratovej funkcie.
2. Histogram
Histogram Dashboard v TensorBoard zobrazuje, ako sa štatistické rozdelenie Tensor menilo v priebehu času. Zobrazuje dáta zaznamenané cez tf.súhrnný.histogram .
java dátum na reťazec
3. Distribučný panel
Ukazuje určité použitie na vysokej úrovni tf.súhrnný.histogram . Zobrazuje niekoľko štartov na vysokej úrovni distribúcie. Každý riadok v grafe naznačuje percentil rozloženia údajov.
4. Obrazový panel
Toto zobrazuje png, ktorý bol uložený cez a tf.summary.image . Riadky zodpovedajú označeniam a stĺpce chodu. Pomocou tohto obrazového panela TensorBoard môžeme vložiť vlastné vizualizácie.
5. Audio Dashboard
Je to vynikajúci nástroj na vkladanie prehrávateľných zvukových miniaplikácií pre audio uložené cez a tf.summary.audio . Prístrojová doska vždy obsahuje najnovší zvuk pre každú značku.
6. Prieskumník grafov
Používa sa predovšetkým na umožnenie kontroly modelu TensorFlow.
7. Projektor
Vložený projektor v TensorFlow používaný na viacrozmerné dáta. Vložený projektor načíta údaje zo súboru kontrolných bodov a môže byť nastavený s príslušnými údajmi, ako je napríklad súbor so slovníkom.
8. Panel s textom
Text Dashboard zobrazuje textových expertov uložených cez tf.summary.text. , zahŕňa funkcie ako hypertextové odkazy, zoznamy a tabuľky, všetky sú podporované.
Rôzne pohľady na TensorBoard
Rôzne zobrazenia prijímajú vstupy rôznych formátov a zobrazujú ich rôzne. Môžeme ich meniť na oranžovej hornej lište.
Ako používať TensorBoard?
Naučíme sa, ako otvoriť TensorBoard z terminálu pre MacOS a príkazový riadok Windows.
Kód bude vysvetlený v budúcom tutoriále; dôraz je tu kladený na TensorBoard.
vymazať vyrovnávaciu pamäť npm
Najprv musíme naimportovať knižnice, ktoré budeme používať počas školenia.
## Import the library import tensorflow as tf import numpy as np
Vytvárame údaje. Je to pole 10 000 riadkov a stĺpcov/p>
X_train = (np.random.sample((10000,5))) y_train = (np.random.sample((10000,1))) X_train.shape
Nižšie uvedený kód transformuje údaje a vytvorí model.
Všimnite si, že rýchlosť učenia sa rovná 0,1. Ak túto mieru zmeníme na vyššiu hodnotu, model nenájde riešenie. Toto sa stalo na ľavej strane vyššie uvedeného obrázku.
V nižšie uvedenom príklade ukladáme model do pracovného adresára, t. j. tam, kde ukladáme notebook alebo súbor python. Vo vnútri cesty vytvorí TensorFlow priečinok s názvom train s názvom podriadeného priečinka 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 ) )
Výkon:
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}
Posledným krokom je trénovanie modelu. Počas tréningového obdobia TensorFlow zapisuje informácie do adresára modelu.
# 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)
Výkon:
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.
Pre používateľa systému Windows
cd C:UsersAdminAnaconda3 activate hello-tf
Na spustenie TensorBoard môžeme použiť tento kód
tensorboard --logdir=. rainlinreg