Oversikt over TensorBoard

TensorBoard er et visualiseringsrammeverk for tensorflow for forståelse og inspeksjon av maskinlæringsalgoritmestrøm.

Evalueringen av maskinlæringsmodellen kan gjøres av mange beregninger som tap, nøyaktighet, modellgrafikk og mange flere. Ytelsen til maskinlæringsalgoritmen avhenger av modellvalg og hyperparametere matet inn i algoritmen. Eksperimenter blir utført ved å endre verdiene til disse parametrene.

Deep-læringsmodellene er akkurat som en svart boks, det er vanskelig å finne behandlingen som foregår inni den. Det er viktig å få innsikt for å bygge modellen. Ved hjelp av visualisering kan du vite hvilke parametere du kan endre med hvilket beløp du vil få forbedringen i modellytelsen. Så TensorBoard er et viktig verktøy for å visualisere hver epoke i løpet av modelltreningsfasen.

Installasjon

Kjør følgende kommando for å installere tensorboardet med pip:

pip install tensorboard

Alternativt kan den installeres ved hjelp av conda-kommando,

Conda install tensorboard

bruk

Bruk av tensorboard med Keras-modell:

Keras er et åpen kildekodebibliotek for modeller for dyp læring. Det er et bibliotek på høyt nivå som kan kjøres på toppen av tensorflow, theano, etc.

Slik installerer du tensorflow og Keras-biblioteket med pip:

pip install tensorflow pip install Keras

La oss ta et enkelt eksempel på klassifisering ved å bruke MNIST-datasettet. MNIST er et engelsk numerisk datasett som inneholder bilder med tall fra 0-9. Det er tilgjengelig med Keras bibliotek.

  • Importer bibliotekets tensorflow slik vi vil bruke Keras med tensorflow backend.

import tensorflow as tf

  • Last først MNIST-datasettet fra Keras inn i trenings- og testdatasettet.

mnist = tf.keras.datasets.mnist

  • Den sekvensielle modellen er opprettet ved å bruke,

tf.keras.models.Sequential

  • For å trene modellen Model.fit () brukes. Logger kan opprettes og lagres ved å bruke,

tf.keras.callback.TensorBoard

  • For å aktivere histogramberegning,

histogram_freq=1.

Den er slått av som standard.

Koden for ovennevnte klassifisering av MNIST-datasettet er som følger:

# Simple NN to classify handwritten digits from MNIST dataset
import tensorflow as tf
import datetime
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data() x_train, x_test = x_train / 255.0, x_test / 255.0
def create_model(): return tf.keras.models.Sequential(( tf.keras.layers.Flatten(input_shape=(28, 28)), tf.keras.layers.Dense(512, activation='relu'), tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10, activation='softmax')
))
model = create_model() model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=('accuracy'))
log_dir="logs/fit/" + datetime.datetime.now().strftime("%Y%m%d-%H%M%S")
tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir, histogram_freq=1)
model.fit(x=x_train, y=y_train, epochs=5, validation_data=(x_test, y_test),
callbacks=(tensorboard_callback))

For å starte tensorboard på den lokale serveren, gå til katalogplasseringen der tensorflow er installert, og kjør deretter følgende kommando:

tensorboard --logdir=/path/to/logs/files

  • scalars

Scalars viser endring med hver epoke. Figuren over viser grafen for nøyaktighet og tap etter hver epoke. Epoch_acc og epoch_loss er treningsnøyaktighet og tap av trening. Mens epoch_val_acc og epoch_val_loss er nøyaktigheten og tapet av valideringsdata.

De lysere oransje linjene viser nøyaktig nøyaktighet eller tap, og den mørkere representerer glatte verdier. Utjevning hjelper med å visualisere den generelle trenden i dataene.

  • grafer

Graftsiden hjelper deg å visualisere grafen til modellen din. Dette hjelper deg å sjekke om modellen er bygget riktig eller ikke.

For å visualisere grafen, må vi lage en økt og deretter TensorFLow FileWriter-objekt. For å lage forfatterobjektet, må vi passere banen der sammendraget er lagret og ses.graf som argumentet.

writer = tf.summary.FileWriter(STORE_PATH, sess.graph)

tf.placeholder () og tf.Variable () brukes for plassholdere og variabler i tensorflowkoden.

Dette viser den grafiske visualiseringen av modellen vi har bygget. Alle avrundede rektangler er navnefelt. Og ovaler viser de matematiske operasjonene.

Konstanter vises som små sirkler. For å redusere rotet i grafen, gjør tensorboard noen forenklinger ved å bruke prikkete ovaler eller avrundede rektangler med stiplede linjer. Dette er nodene som er knyttet til mange andre noder eller alle nodene. Så de holdes som stiplede i grafen, og detaljene deres kan sees i øverste høyre hjørne. I øverste høyre hjørne er det kobling til forløpninger, forløpningsnedganger eller init-noder.

For å vite antall tensorer som kommer inn og kommer ut av hver node, kan du se kantene i grafen. Grafkantene beskriver antall tensorer som flyter i grafen. Dette hjelper deg med å identifisere inngangs- og utgangsdimensjonene fra hver node. Dette hjelper med å feilsøke ethvert problem.

  • Distribusjoner og histogrammer

Dette viser tensorfordelingene med tiden, i tillegg til at vi kan se vekter og skjevheter. Dette viser framgangen til innganger og utganger over tid for hver epoke. Det er to visningsalternativer:

Offset og Overlay.

Offsetbildet av histogrammer vil være som følger:

Oversikten over histogrammet er:

Distribusjonssiden viser statistiske distribusjoner. Grafen viser middel- og standardavvik.

fordeler

  • TensorBoard hjelper til med å visualisere læringen ved å skrive sammendrag av modellen som skalarer, histogrammer eller bilder. Dette bidrar igjen til å forbedre modellens nøyaktighet og feilsøke enkelt.
  • Deep learning-prosessering er en svartboks-ting, og tensorboard hjelper deg med å forstå behandlingen som foregår i den svarte boksen ved hjelp av grafer og histogrammer.

Konklusjon - TensorBoard

TensorBoards gir visualisering for den dyptinntjeningsmodellen som er trent og hjelper deg med å forstå dem. Det kan brukes sammen med TensorFlow og Keras. Det gir i hovedsak visualisering av atferden til skalarer, beregninger ved hjelp av histogrammer og modellgraf som helhet.

Anbefalte artikler

Dette er en guide til TensorBoard. Her diskuterer vi installasjon og bruk av Tensboard ved bruk av den med Keras-modell med fordeler. Du kan også se på følgende artikler for å lære mer -

  1. Introduksjon til Tensorflow
  2. Hvordan installere TensorFlow
  3. Hva er TensorFlow?
  4. TensorFlow Playground
  5. Grunnleggende om tensorflow

Kategori: