A TensorBoard áttekintése

A TensorBoard egy tensorflow vizualizációs keretrendszer a gépi tanulási algoritmus áramlásának megértéséhez és ellenőrzéséhez.

A gépi tanulási modell értékelése számos mérőszámmal elvégezhető, például veszteség, pontosság, modelldiagram és még sok más. A gépi tanulási algoritmus teljesítménye a modellválasztástól és az algoritmusba bevitt hiperparaméterektől függ. A kísérleteket ezen paraméterek értékeinek megváltoztatásával hajtják végre.

A mély tanulási modellek olyanok, mint egy fekete doboz, nehéz megtalálni a benne zajló feldolgozást. Fontos betekintést kapni a modell felépítéséhez. A megjelenítés segítségével megtudhatja, mely paramétereket kell módosítani, hogy milyen összeggel javítsák a modell teljesítményét. A TensorBoard tehát fontos eszköz az egyes korszakok megjelenítéséhez a modell edzési szakaszában.

Telepítés

A tenzortábla pip használatával történő telepítéséhez futtassa a következő parancsot:

pip install tensorboard

Alternatív megoldásként a conda paranccsal telepíthető,

Conda install tensorboard

Használat

Tenzortábla használata Keras modellel:

A Keras nyílt forráskódú könyvtár a mély tanulási modellekhez. Ez egy magas szintű könyvtár, amely tensorflow, theano stb. Tetején futtatható.

A tensorflow és a Keras könyvtár telepítése pip segítségével:

pip install tensorflow pip install Keras

Vegyünk egy egyszerű példát az MNIST adatkészlettel történő osztályozásra. A MNIST egy angol numerikus adatkészlet, amely 0-9-es számok képeit tartalmazza. A Keras könyvtárban kapható.

  • Importálja a tensorflow könyvtárat, mivel a Keras tensorflow háttérrel fogjuk használni.

import tensorflow as tf

  • Először töltse be az MNIST adatkészletet Kerasból az edzési és a teszt adatkészletbe.

mnist = tf.keras.datasets.mnist

  • A szekvenciális modell az alábbiakkal jön létre:

tf.keras.models.Sequential

  • A modell kiképzéséhez a Model.fit () -et használjuk. A naplók létrehozhatók és tárolhatók a következőkkel:

tf.keras.callback.TensorBoard

  • A hisztogram kiszámításához

histogram_freq=1.

Alapértelmezés szerint ki van kapcsolva.

Az MNIST adatkészlet fent tárgyalt osztályozásának kódja a következő:

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

A tensorboard elindításához a helyi kiszolgálón lépjen a könyvtár helyére, ahol a tensorflow telepítve van, majd futtassa a következő parancsot:

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

  • skalárokkal

A skálák minden korszakban változást mutatnak. A fenti ábra a pontosság és a veszteség grafikonját mutatja minden korszak után. Az epoch_acc és az epoch_loss az edzés pontossága és az edzés vesztesége. Míg az epoch_val_acc és az epoch_val_loss az érvényesítési adatok pontossága és elvesztése.

A világosabb narancssárga vonalak pontos pontosságot vagy veszteséget mutatnak, a sötétebb pedig kiegyenlített értékeket mutat. A simítás segít az adatok általános tendenciájának megjelenítésében.

  • grafikonok

A Grafikon oldal segít a modell grafikonjának megjelenítésében. Ez segít ellenőrizni, hogy a modell megfelelően van-e felépítve.

A grafikon megjelenítéséhez létre kell hoznunk egy munkamenetet, majd a TensorFLow FileWriter objektumot. Az íróobjektum létrehozásához át kell adnunk azt az utat, ahol az összefoglaló tárolódik, és argumentumként a sess.graph-ot.

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

A tf.placeholder () és tf.Variable () a helyőrzők és a tensorflow-kód változók számára használatos.

Ez megmutatja az általunk felépített modell grafikus megjelenítését. Az összes lekerekített téglalap névtér. Az oválisok pedig a matematikai műveleteket mutatják.

Az állandók kis körökben vannak feltüntetve. A grafikon rendetlenségének csökkentése érdekében a tensorboard néhány egyszerűsítést végez pontozott ovális vagy kerek téglalapok felhasználásával, pontozott vonallal. Ezek azok a csomópontok, amelyek sok más csomóponthoz vagy az összes csomóponthoz kapcsolódnak. Tehát pontozottan tartják őket a grafikonon, és részleteik a jobb felső sarokban láthatók. A jobb felső sarokban található a kapcsolat a színátmenetekkel, a színátmenetek csökkenésével vagy az inic csomópontokkal.

Az egyes csomópontokon belüli és az egyes csomópontokból kijövő tenzorok számának megismeréséhez láthatja a grafikon éleit. A grafikon élei leírják a grafikonon áramló tenzorok számát. Ez segít az egyes csomópontok bemeneti és kimeneti dimenzióinak azonosításában. Ez segít bármilyen probléma hibakeresésében.

  • Eloszlások és hisztogramok

Ez megmutatja a tenzor eloszlását az idő függvényében, és láthatjuk a súlyokat és az eltéréseket. Ez mutatja a bemenetek és a kimenetek előrehaladását az idők során minden korszakban. Két megtekintési lehetőség van:

Eltolás és átfedés.

A hisztogramok ofszet nézete a következő lesz:

A hisztogram Overlay nézete:

A Terjesztés oldal mutatja a statisztikai eloszlásokat. A grafikon az átlagot és a szórást mutatja.

Előnyök

  • A TensorBoard segíti a tanulás megjelenítését azáltal, hogy a modell összefoglalóit, például skálákat, hisztogramokat vagy képeket írja. Ez viszont elősegíti a modell pontosságának javítását és a hibakeresést.
  • A mély tanulás feldolgozása fekete doboz, és a tenzortábla grafikonok és hisztogramok segítségével segíti a fekete dobozban zajló feldolgozás megértését.

Következtetés - TensorBoard

A TensorBoards megjeleníti a képzett mélykereset-modellt, és segít megérteni azt. Használható mind a TensorFlow, mind a Keras esetén. Elsősorban a skálák viselkedését, a metrikákat ábrázolja hisztogramok és a modellgráf egésze révén.

Ajánlott cikkek

Ez a TensorBoard útmutatója. Itt tárgyaljuk a Tensboard telepítését és használatát a Keras modellel és az Előnyök használatával kapcsolatban. Lehet, hogy megnézi a következő cikkeket is, ha többet szeretne megtudni -

  1. Bevezetés a Tensorflow-ba
  2. A TensorFlow telepítése
  3. Mi a TensorFlow?
  4. TensorFlow játszótér
  5. Tensorflow alapok

Kategória: