Преглед ТенсорБоарда

ТенсорБоард је оквир визуелизације тенсорфлова за разумевање и инспекцију протока алгоритама машинског учења.

Евалуација модела машинског учења може се извршити помоћу многих метрика као што су губитак, тачност, графикон модела и још много тога. Учинковитост алгоритма машинског учења зависи од одабира модела и хиперпараметара који се у алгоритаму уносе. Експерименти се изводе променом вредности тих параметара.

Модели дубоког учења су попут црне кутије, тешко је пронаћи обраду која се одвија унутар ње. Важно је добити увид у изградњу модела. Помоћу визуелизације можете знати које параметре модификовати по којој количини да бисте побољшали перформансе модела. Дакле, ТенсорБоард је важно средство за визуелизацију сваке епохе током фазе тренинга модела.

Инсталација

Да бисте инсталирали тензорд са пип-ом, покрените следећу наредбу:

pip install tensorboard

Алтернативно, може се инсталирати помоћу цонда команде,

Conda install tensorboard

Употреба

Коришћење тенз плоче са Керас моделом:

Керас је библиотека отвореног кода за моделе дубоког учења. То је библиотека високог нивоа која се може покретати на врху тенсорфлова, тхеаноа итд.

Да бисте инсталирали библиотеку тенсорфлов и Керас помоћу пип-а:

pip install tensorflow pip install Keras

Узмимо једноставан пример класификације помоћу МНИСТ базе података. МНИСТ је енглески нумерички скуп података који садржи слике бројева од 0-9. Доступна је у библиотеци Керас.

  • Увезите библиотеку тенсорфлов јер ћемо користити Керас са резервним тенсорфловом.

import tensorflow as tf

  • Прво учитајте МНИСТ базу података од Кераса у базу података за обуку и тестирање.

mnist = tf.keras.datasets.mnist

  • Секвенцијални модел је креиран помоћу,

tf.keras.models.Sequential

  • За обуку користи се Модел.фит (). Дневници се могу креирати и чувати користећи,

tf.keras.callback.TensorBoard

  • Да бисте омогућили рачунање хистограма,

histogram_freq=1.

Подразумевано је искључено.

Код за горе расправљену класификацију података МНИСТ је сљедећи:

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

Да бисте покренули тенсорбоард на локалном серверу, идите на локацију директорија на којој је инсталиран тенсорфлов, а затим покрените следећу наредбу:

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

  • Скалари

Скалери показују промену са сваком епохом. Горња слика приказује графикон тачности и губитке након сваке епохе. Епоцх_ацц и епоцх_лосс су тачност тренинга и губитак тренинга. Док су епоцх_вал_ацц и епоцх_вал_лосс тачност и губитак података о валидацији.

Светле наранџасте линије показују тачну тачност или губитак, а тамније представљају изглађене вредности. Заглађивање помаже у визуелизацији укупног тренда података.

  • Графови

Страница Граф вам помаже да визуализујете графикон свог модела. Ово вам помаже да проверите да ли је модел правилно изведен или не.

Да бисмо визуализовали граф, морамо креирати сесију и затим ТенсорФЛов ФилеВритер објект. Да бисмо створили објект за писање, потребно је да прођемо путању на којој се налази сажетак и сесс.грапх као аргумент.

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

тф.плацехолдер () и тф.Вариабле () користе се за резерви и променљиве у коду тенсорфлов.

Ово показује графичку визуализацију модела који смо изградили. Сви заобљени правоугаоници су простори с именима. И овали показују математичке операције.

Константе су приказане као мали кругови. Да би се смањио неред у графикону, тенсорбоард ради поједна поједностављења користећи испрекидане овалне или заобљене правоугаонике са испрекиданим линијама. Ово су чворови који су повезани са многим другим чворовима или са свим чворовима. Дакле, они се чувају као тачки на графу, а њихови детаљи се могу видети у горњем десном углу. У горњем десном углу је предвиђена веза са градијентима, Градиент Спуштањем или инит чворовима.

Да бисте знали број тензора који улазе и излазе из сваког чвора, можете видети ивице на графу. Ивице графикона описују број тензора који теку у графу. Ово помаже у идентифицирању улазних и излазних димензија из сваког чвора. Ово помаже у уклањању погрешака било ког проблема.

  • Дистрибуције и хистограми

Ово показује тензорске дистрибуције са временом, као и да можемо да видимо утеге и пристраности. Ово показује напредак улаза и излаза током времена за сваку епоху. Постоје две опције прегледа:

Оффсет и прекривање.

Оффсет приказ хистограма биће следећи:

Поглед прекривача хистограма је:

Страница Дистрибуција приказује статистичке расподјеле. Графикон приказује средњу и стандардну девијацију.

Предности

  • ТенсорБоард помаже у визуелизацији учења писањем резимеа модела попут скалара, хистограма или слика. То заузврат помаже у побољшању прецизности модела и лако отклањању грешака.
  • Дубока обрада учења је ствар црне кутије, а тенсорбоард помаже у разумевању обраде која се одвија у црној кутији уз помоћ графикона и хистограма.

Закључак - ТенсорБоард

ТенсорБоардс пружа визуелизацију за модел дубоке зараде који се обучава и помаже у разумевању истих. Може се користити са ТенсорФлов и Керас оба. Он углавном визуализује понашање скалара, метрика уз помоћ хистограма и графикона модела у целини.

Препоручени чланци

Ово је водич за ТенсорБоард. Овде смо разговарали о инсталирању и коришћењу Тенсбоард-а користећи га са Керас моделом са Предности. Можда ћете такође погледати следеће чланке да бисте сазнали више -

  1. Увод у Тенсорфлов
  2. Како инсталирати ТенсорФлов
  3. Шта је ТенсорФлов?
  4. ТенсорФлов Плаигроунд
  5. Основе Тенсорфлова

Категорија: