Машинное обучение часто включает в себя визуализацию и измерение производительности модели во время обучения. Для этой задачи доступно множество инструментов. В этой статье мы сосредоточимся на наборе инструментов TensorFlow с открытым исходным кодом, который называется TensorBoard. Хотя он является частью TensorFlow, его можно установить независимо и обслуживать другие платформы, такие как Pytorch.
TensorBoard — набор инструментов для визуализации данных. Он включен в популярную библиотеку машинного обучения с открытым исходным кодом Tensorflow. Основные возможности TensorBoard включают в себя:
TensorBoard — это подсервис, включенный в TensorFlow. Библиотека TensorFlow — это библиотека с открытым исходным кодом, разработанная специально для приложений машинного обучения. Google Brain создал более раннюю систему DistBelief в 2011 году. Поскольку его пользовательская база быстро росла, он был упрощен и реорганизован в библиотеку, которую мы теперь называем Tensorflow. Впоследствии TensorFlow был выпущен для публики в 2015 году. Когда TensorBoard только появился, его можно было использовать только для проверки индикаторов TensorFlow и визуализации моделей TensorFlow. Однако после долгих усилий другие фреймворки глубокого обучения также могут использовать функции TensorBoard. Например, Pytorch отказался от собственной визды (для тех, кто это делает). слышали об этом названии) Людей там уже не должно быть много) и полностью поддерживает TensorBoard.
TensorBoard включен в библиотеку TensorFlow, поэтому, если мы успешно установили TensorFlow, мы также можем использовать TensorBoard. Чтобы установить TensorBoard отдельно, используйте следующую команду:
pip install tensorboard
Следует отметить, что поскольку TensorBoard зависит от Tensorflow, последняя версия Tensorflow будет установлена автоматически.
1. Запустите TensorBoard локально.
хотеть Запустить TensorBoard, откройте терминал или командную строку и запустите:
tensorboard --logdir=<directory_name>
Воля directory_name
Отметку заменил на директорию, в которой сохраняются данные. По умолчанию используется «журналы».
После запуска этой команды мы Воля видим следующую подсказку:
Serving TensorBoard on localhost; to expose to the network, use a proxy or pass –bind_allTensorBoard 2.2.0 at http://localhost:6006/ (Press CTRL+C to quit)
Это показывает, что TensorBoard успешно запущен. Мы можем использовать браузер, чтобы открыть http://localhost:6006/ для просмотра.
При первом открытии страницы мы видим следующее:
2. Использование TensorBoard в блокнотах Jupyter
Если вы хотите использовать TensorBoard в блокнотах Jupyter, вы можете использовать следующую команду:
%load_ext tensorboard
Запустите эту строку кода Воля, чтобы загрузить TensorBoard также позволяет нам визуализировать другие варианты использования. После загрузки расширения мы можем существовать. Запустить TensorBoard:
%tensorboard --logdir logs
3、Воля TensorBoard и Google Colab используются вместе
использовать Google Colab , когда-то новый notebook,TensorFlow и TensorBoard Он уже установлен. Чтобы запустить его, мы можем следовать и Jupyter Notebooks Тот же процесс, что описан. Просто введите в ячейку блокнота следующее:
%load_ext tensorboard
Мы увидим приложение TensorBoard.
Мы готовы к работе TensorBoard, ниже с TensorFlow В качестве примера, какиспользоватьTensorBoard
1、местныйиспользовать TensorBoard
Обратный вызов TensorBoard Обратный вызов, предоставляемый библиотекой TensorFlow. Как это работает?
в соответствии с Keras документ,Обратный вызов может заключаться в обучении выполнению операций над объектами на различных этапах. Когда мы хотим существовать из определенного узла времени в процессе обучения (например,существуют, когда задача автоматически выполняется после каждой эпохи/пакета),мы все можемиспользоватьперезвонить.
какиспользовать TensorBoard callback Быстрый пример.
первый,использовать TensorFlow Создайте простую модель и MNIST Обучите его на наборе данных.
import tensorflow as tf
# Load and normalize MNIST data
mnist_data = tf.keras.datasets.mnist
(X_train, y_train), (X_test, y_test) = mnist_data.load_data()
X_train, X_test = X_train / 255.0, X_test / 255.0
# Define the model
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10, activation='softmax')
])
# Compile the model
model.compile(
optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
После компиляции модели нам нужно создать обратный вызов и вызвать fit
методиспользовать。
tf_callback = tf.keras.callbacks.TensorBoard(log_dir="./logs")
Теперь можно вызвать модель fit
Обратный вызов Воля передается в качестве параметра во время метода. существование было создано в рабочем каталоге logs
папка и Воля, которая передается в качестве параметра log_dir
。Звоните ниже fit А Воля передается как обратный вызов.
model.fit(X_train, y_train, epochs=5, callbacks=[tf_callback])
После вызова метода fit введите localhost:6006, чтобы просмотреть результаты.
Мы видим два разных графика. Первый показывает точность модели в каждую эпоху. Второй показывает потери.
2. Запустите TensorBoard удаленно
Помимо локального запуска, TensorBoard также можно запускать удаленно. Результаты также можно проверить локально, если мы будем обучаться параллельно на разных серверах с более мощными графическими процессорами.
Во-первых, используйте SSH и порты удаленного сервера Воля сопоставляются с локальным компьютером.
ssh -L 6006:127.0.0.1:6006 username@server_ip
Тогда простохотетьсуществоватьна удаленном сервере Запустить Тензор Борд. Запускаем на удаленном сервере:
tensorboard --logdir=’logs’ --port=6006
Мы можем получить доступ к localhost:6006 для просмотра удаленного TensorBoard.
Панель управления TensorBoard состоит из различных компонентов для визуализации данных. Мы, Воля, детально изучаем каждую составляющую.
1、TensorBoard Scalars
В процессе машинного обучения необходимо отслеживать различные показатели, связанные с производительностью модели. Это очень важно, чтобы быстро найти проблемы и определить, не переоснащается ли модель и т. д.
использовать TensorBoard из Scalars Панель мониторинга для упрощения визуализации этих показателей и отладки моделей. Первый пример, в MNIST Нарисуйте модель в наборе данныхизпотеряиточность,использоватьиз СразудаScalars。
Создайте обратный вызов, укажите каталог для записи данных и вызовите fit метод при передаче перезвонить. Этот способ работает в большинстве случаев, но что, если мы хотим записать собственные скаляры, которые нелегко получить? можно использовать TensorFlow из Summary API. Этот специальный API Используйте В для сбора сводных данных для последующей визуализации и анализа.
Давайте посмотрим на пример, чтобы лучше это понять. Используйте простой синусоидальный сигнал, который, как вы хотите, будет отображаться на TensorBoard из скаляров.
# Specify a directory for logging data
logdir = "./logs"
# Create a file writer to write data to our logdir
file_writer = tf.summary.create_file_writer(logdir)
# Loop from 0 to 199 and get the sine value of each number
for i in range(200):
with file_writer.as_default():
tf.summary.scalar('sine wave', np.math.sin(i), step=i)
tf.summary серединаиз scalar Метод, который может записывать практически все, что мы хотим, изскалярные.использовать TensorBoard При этом дело не ограничивается потерями и показателями. После запуска вышеуказанной команды Панель Результат управленияиз выглядит следующим образом:
2、TensorBoard Images
существования При работе с данными изображения, если вы хотите просмотреть проблемы поиска данных или просмотреть образцы, чтобы гарантировать качество данных, вы можете использовать TensorBoard из Image Summary API。
продолжить обратно к MNIST набор данных, посмотрите на изображения в TensorBoard серединадакакпоказыватьиз:
# Load and normalize MNIST data
mnist_data = tf.keras.datasets.mnist
(X_train, y_train), (X_test, y_test) = mnist_data.load_data()
X_train, X_test = X_train / 255.0, X_test / 255.0
Данные Воли из первого изображения и Воля его визуализация.
# Reshape the first image
img = np.reshape(X_train[0], (-1, 28, 28, 1))
# Specify a directory for logging data
logdir = "./logs"# Create a file writer to write data to our logdir
file_writer = tf.summary.create_file_writer(logdir)
# With the file writer, log the image data
with file_writer.as_default():
tf.summary.image("Training data", img, step=0)
Для просмотра изображений необходимо выбрать опцию ИЗОБРАЖЕНИЯ:
3、TensorBoard Graphs
Все модели можно рассматривать как вычислительный граф. Иногда сложно понять модель архитектуры, глядя только на код. Визуализация позволяет легко увидеть структуру модели, Также мы можем обеспечить желаемую архитектуру или дизайн использования.
Визуализация ниже ранее использовалась для MNIST Набор данныхиз Модель。подда Модельопределение。
# Define the model
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10, activation='softmax')
])
Вам также необходимо создать TensorBoard обратный вызов исуществоватьтренироваться Модельчасиспользоватьэто。
# Create a callback
tf_callback = tf.keras.callbacks.TensorBoard(log_dir="./logs")
# Pass in the callback when fitting the model
model.fit(X_train, y_train, epochs=5, callbacks=[tf_callback])
После тренировки просмотрите параметры графиков:
Здесь показана диаграмма уровня модели изда (послойное отображение архитектуры модели). Это очень важно, чтобы увидеть, правильна ли наша модель и соответствует ли каждый слой нашим ожиданиям. График данных течет снизу вверх.
При необходимости вы также можете просмотреть концептуальные карты. Находится на боковой панели Tag Название и Воля изменились на Keras:
Вы можете проверить правильность структуры модели. Узел из на рисунке указывает на то, что модель да является последовательной моделью.
4. Распределения и гистограммы TensorBoard Распределения и гистограммы
TensorBoard Распределение и гистограмма да Еще один хороший способ отслеживать модель. использование официально обеспечивает обратный вызов, существует TensorBoard после обучения Будет отображено несколько вариантов. Если мы перейдем к Распределениям вкладке Воля увидит следующую картинку:
В этом наборе диаграмм показаны тензоры, составляющие модель. существуют Каждая цифра показана на горизонтальной оси. epoch Число, существующее по вертикальной оси, показывает значение каждого тензора. Эти графики в основном показывают, как эти тензоры изменяются с течением времени по мере обучения. Более темная область отображает значение, существующее в определенной области в течение длительного времени (не обновляемое). Если вас беспокоит вес модели, существующий в каждую эпоху обновляются неправильно, эти проблемы можно обнаружить с помощью этой опции.
В опции «Гистограммы» мы видим набор различных диаграмм, которые представляют тензоры модели.
На этих рисунках показаны разные виды тензоров в модели. Каждый график имеет пять гистограмм, наложенных друг на друга.,Представитель был обучен для каждой из пяти эпох. Они показывают, в какой области тензорные веса имеют тенденцию концентрироваться из информации. Это полезно для отладки поведения модели.,Очень полезно для поиска исключений.
5、TEXT
Текст да Создать машинное Модели обучения часто используют типы данных. Зачастую бывает сложно визуализировать текстовые данные. TensorBoard можно использовать Text Summary API Легко визуализируйте текстовые данные. Давайте посмотрим, как это работает.
используйте текст Hello World в качестве простого примера.
# Our sample text
sample_text = "Hello world!"
# Specify a directory for logging data
logdir = "./logs/text/"
# Create a file writer to write data to our logdir
file_writer = tf.summary.create_file_writer(logdir)
# With the file writer, log the text data
with file_writer.as_default():
tf.summary.text("sample_text", sample_text, step=0)
Введите текст на вкладке TensorBoar изText.
6. Проекция проектора TensorBoard
глубокое Обучение часто подходит для моделей с большим количеством изданных измерений. Визуализация этих измерений может дать нам представление о том, как улучшить производительность модели. Тензорборд Обеспечивает встраиваемую изпроекцию, которая позволяет легко визуализировать многомерные данные.
первый,нуждатьсяхотетьот TensorBoard Импортируйте плагин проекции.
from tensorboard.plugins import projector
нас Воляиспользовать IMDB Набор данных обзора фильмов для визуализации вложений.
import os
import tensorflow as tf
import tensorflow_datasets as tfds
# Load the data
(train_data, test_data), info = tfds.load(
"imdb_reviews/subwords8k",
split=(tfds.Split.TRAIN, tfds.Split.TEST),
with_info=True,
as_supervised=True,)encoder = info.features["text"].encoder
# Create training batches
train_batches = train_data.shuffle(1000).padded_batch(
10, padded_shapes=((None,), ())
)
# Create testing batches
test_batches = test_data.shuffle(1000).padded_batch(
10, padded_shapes=((None,), ())
)
# Get the first batch
train_batch, train_labels = next(iter(train_batches))
существоватьвышеизкодсередина,Загрузка и предварительная обработка данных,Следующий код Воля создает простую модель для создания вложений для текста.,тренироваться Модель epoch=1 и визуализируйте результаты.
# Create an embedding layer
embedding_dim = 16
embedding = tf.keras.layers.Embedding(
encoder.vocab_size,
embedding_dim)
# Configure the embedding layer as part of a Keras model
model = tf.keras.Sequential([
embedding,
tf.keras.layers.GlobalAveragePooling1D(),
tf.keras.layers.Dense(16, activation="relu"),
tf.keras.layers.Dense(1),])
# Compile the model
model.compile(
optimizer="adam",
loss=tf.keras.losses.BinaryCrossentropy(from_logits=True),
metrics=["accuracy"],
)
# Train the model for a single epoch
history = model.fit(
train_batches, epochs=1, validation_data=test_batches
)
Запись данных воли необходима при подгонке модели logdir
,Аналогично тому, что мы делали в предыдущем разделе.
# Set up a log dir, just like in previous sections
log_dir='/logs/imdb-example/'
if not os.path.exists(log_dir):
os.makedirs(log_dir)
# Save labels separately in a line-by-line manner.
with open(os.path.join(log_dir, 'metadata.tsv'), "w") as f:
for subwords in encoder.subwords:
f.write("{}\n".format(subwords))
# Fill in the rest of the labels with "unknown"
for unknown in range(1, encoder.vocab_size - len(encoder.subwords)):
f.write("unknown #{}\n".format(unknown))
# Save the weights we want to analyze as a variable
weights = tf.Variable(model.layers[0].get_weights()[0][1:])
# Create a checkpoint from embedding, the filename and key are the
# name of the tensor
checkpoint = tf.train.Checkpoint(embedding=weights)
checkpoint.save(os.path.join(log_dir, "embedding.ckpt"))
# Set up config
config = projector.ProjectorConfig()
embedding = config.embeddings.add()
# The name of the tensor will be suffixed by
# `/.ATTRIBUTES/VARIABLE_VALUE`
embedding.tensor_name = "embedding/.ATTRIBUTES/VARIABLE_VALUE"
embedding.metadata_path = 'metadata.tsv'
projector.visualize_embeddings(log_dir, config)
Существующие TensorBoard Посмотреть визуализацию и встраивание можно, выбрав опцию «Проектор» в выпадающем меню в правом верхнем углу:
TensorBoard также предоставляет множество различных плагинов, которые могут помочь нам удовлетворить различные потребности. Вот несколько очень полезных плагинов.
1、TensorFlow Profiler
TensorFlow Profiler для анализа выполнения кода TensorFlow. Это важно, поскольку мы хотим знать, правильно ли оптимизирована используемая нами модель. Здесь необходимо установить плагин Profiler.
pip install tensorboard_plugin_profile
Создайте модель, а затем подогнать ее с помощью TensorBoard. Перезвонить.
# Create a callback
tf_callback = tf.keras.callbacks.TensorBoard(log_dir="./logs")
# Pass in the callback when fitting the model
model.fit(X_train, y_train, epochs=5, callbacks=[tf_callback])
при входе TensorBoard страница, мы с Воля увидели страницу под названием Profile из Новые опции. Переключитесь на эту опцию, и вы увидите контент, похожий на изображение ниже.
На этой обзорной странице содержится много информации, поэтому давайте разберем ее:
В левой части существования находится раскрывающееся меню «Инструменты». Можно выбрать Trace Viewer Давайте посмотрим, где возникает узкое место в производительности модели. След Viewer Отображение происходит во время анализа GPU и CPU Хронология событий.
На вертикальной оси показаны группы событий с различными событиями трассировки. от CPU и GPU Собирайте события отслеживания. Каждый прямоугольник имеет отдельное событие отслеживания. Вы можете нажать на любой из них, чтобы сосредоточиться Отслеживайте события и анализируйте их. Вы также можете перетащить курсор, чтобы выбрать несколько событий одновременно.
существует раскрывающийся список «Инструменты», вы также можете использовать «input_pipeline_analyzer», вы можете в соответствии Соберите данные для просмотра модели производительности входного конвейера.
Здесь мы можем сообщить модели, есть ли привязка ввода. Например, изображение выше означает, что модель тратит много времени на ожидание ввода вместо того, чтобы выполнять вывод. Он также может сказать нам, какой этап конвейера является самым медленным.
Чтобы глубже понять различные TensorFlow операция, есть еще одна, называемая TensorFlow stats Опция: вы можете показать, что модель сегментируется, выполняя различные операции.
При запуске модели,На круговой диаграмме показаны различные операции положительного расчета. Включая кодирование, умножение матриц и другие вычисления.,а также многие другие операции вывода, которые необходимо выполнить. существуют при оптимизации модели,Можетсосредоточиться На работу какого из них уходит больше всего времени.
2、Fairness Indicators Dashboard
Панель индикаторов справедливости помогает нам рассчитывать различные показатели справедливости для бинарных и многоклассовых классификаторов. Вы можете оценить справедливость модели в разных прогонах и сравнить ее производительность в разных группах.
хотетьначинатьсуществоватьнасизданныеиспользовать Fairness Indicators Dashboard необходимо установить некоторые зависимости:
pip install fairness_indicators
pip install tensorboard-plugin-fairness-indicators
Импортировать плагин:
from tensorboard_plugin_fairness_indicators import summary_v2
summary_v2
изиспользоватьметодисуществоватьпредыдущие главысередина Воля Данные записываются в logdir
часиспользовать tf.summary
Такой же.
# Create a file writer to write data to our logdir
file_writer = tf.summary.create_file_writer(logdir)
# Write data to our result directory
with file_writer.as_default():
summary_v2.FairnessIndicators(result_dir, step=1)
Результат следующий:
существовать TensorBoard Будет новая Справедливость Indicators вкладка. Здесь вы можете просмотреть прогнозы модели по разным значениям классов в разбивке и их базовые процентные различия, чтобы определить, является ли модель справедливой.
TensorBoard Поставляется с инструментом анализа «что, если» (WIT),Может помочь нам понять классификацию черного ящика и модели регрессии. использовать этот инструмент,Может делать прогнозы по набору данных,и визуализировать результаты разными способами.
Вы также можете редактировать примеры вручную или программно, чтобы увидеть, как их изменение влияет на прогнозы модели.
хотетьиспользовать WIT необходимо предоставить модель и данные. Если вы хотите исследовать более глубоко, модель должна иметь классификацию, регрессию или прогнозирование. API из TensorFlow Serving Развертывать.
Кроме того, чтобы делать прогнозы, к набору данных необходимо получить доступ с помощью формата TFRecord, который сохраняется и может быть запущен нами TensorBoard на сервере.
После завершения настройки перейдите в TensorBoard Dashboard и выберите из выпадающего меню в правом верхнем углу страницы What-If Tool параметры. Вы должны увидеть страницу, которая выглядит следующим образом:
Первое поле да предоставляет модель адреса вывода. Если существует, TensorFlow предоставляется локально. Serving ,этот Воляждать В localhost:port
。还нуждатьсяхотетьвходить Модельимя、Необязательно в зависимости от версии модели и модели от подписи.
Введите путь к местоположению данных. Упоминалось выше TFRecord
документ.
Наконец, нажмите кнопку «Принять», и мы перейдем на страницу результатов.
Каждая точка в наборе данных существует. соответствии с Они раскрашены по категориям. Вы можете группировать и группировать данные, создавать диаграммы рассеяния и по-разному раскрашивать точки данных.
TensorBoard Главное — использовать В для визуализации данных из GUI инструмент. Но некоторые пользователи могут захотеть программно и TensorBoard Взаимодействуйте с данными, например с помощью пользовательских визуализаций и специального анализа. Так что все в порядке, Воля TensorBoard данные как DataFrame Доступ, чтобы вы могли существовать индивидуально из программы.
Этот API все еще находится на экспериментальной стадии, поэтому в последующих версиях могут быть серьезные изменения.
Нам просто нужно, чтобы Воля "logdir" загрузил в TensorBoard.dev Чтобы использовать эту функцию, нам нужны некоторые зависимости для этой части. Сначала необходимо подтвердить, что он установлен Панды. Также необходим способ визуализации данных. Часто используемые библиотеки Matplotlib и Seaborn。
TensorBoard.dev начальствоиз TensorBoard logdir
называется экспериментом. Каждый эксперимент имеет уникальный ID, мы можем получить к нему доступ к данным программно.
# Change the experiment id to our own
experiment_id = "insert experiment ID here"
# Get the experiment using the id
experiment = tb.data.experimental.ExperimentFromDev(experiment_id)
# Save the scalars to a dataframe
df = experiment.get_scalars()
сейчассуществоватьdf есть все в наличии logdir данные.
сейчассуществовать Может Как и любой другой DataFrame Используйте его таким же образом для дальнейшего анализа.
PyTorch да Еще одно популярное среди исследователей углубленное обучениерамка。PyTorch Теперь существование также поддерживается Тензорная доска。
существоватьиспользовать TensorFlow час,использовать Summary API Создана запись данных Воли для logdir
папкаизобъект。существоватьиспользовать PyTorch На этот раз чиновник также предоставил аналогичный API.
# Import the summary writer
from torch.utils.tensorboard import SummaryWriter# Create an instance of the object
writer = SummaryWriter()
Таким образом, вы можете использовать TensorFlow Лечатся таким же образом и таким же образом MNIST набор данных.
import torch
import torchvision
from torchvision import datasets, transforms
# Compose a set of transforms to use later on
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize((0.5,), (0.5,))
])
# Load in the MNIST dataset
trainset = datasets.MNIST(
'mnist_train',
train=True,
download=True,
transform=transform
)
# Create a data loader
trainloader = torch.utils.data.DataLoader(
trainset,
batch_size=64,
shuffle=True
)
# Get a pre-trained ResNet18 model
model = torchvision.models.resnet18(False)
# Change the first layer to accept grayscale images
model.conv1 = torch.nn.Conv2d(1, 64, kernel_size=7, stride=2, padding=3, bias=False)
# Get the first batch from the data loader
images, labels = next(iter(trainloader))
# Write the data to TensorBoard
grid = torchvision.utils.make_grid(images)
writer.add_image('images', grid, 0)
writer.add_graph(model, images)
writer.close()
После запуска этой программы перейдите в TensorBoard и просмотреть сохранениеизвыход。
Получил ииспользовать TensorFlow Вывод аналогичен из.
TensorBoard.dev да TensorBoard из Компонент, который позволяет нам размещать машинное оборудование в нашей существующей сети обучениерезультат。 Это подходящий инструмент для тех, кто хочет продемонстрировать свои результаты.
Вы можете загрузить его на TensorBoard.dev с помощью следующей команды из терминала или командной строки:
tensorboard dev upload --logdir {logs}
Пожалуйста, не загружайте конфиденциальные данные!
использовать Google После того, как учетная запись будет авторизована для загрузки, вы получите код. После ввода кода возвращается ссылка для загрузки. TensorBoard Вход по ссылке.
Теперь существующие могут поделиться этой ссылкой с кем угодно и позволить им увидеть нашу работу.
хотя TensorBoard поставляется со множеством инструментов для визуализации наших данных и моделей, но у него также есть свои ограничения.
1. Отсутствие управления пользователями
TensorBoard Не существует понятия пользователя, поскольку он существует и работает в единой среде. Также невозможно запускать несколько программ на одной машине. TensorBoard Пример,Итак, если мы работаем над несколькими проектами одновременно,использование может быть затруднительным.
2. Трудно работать в команде.
Аналогично вышеуказанным ограничениям, TensorBoard Экземпляры не могут быть разделены между другими пользователями. Если над одним проектом работают несколько человек, необходима централизованная панель управления, чтобы у каждого человека было отдельное рабочее пространство. Тензорборд Эта функция не поддерживается.
3. Не поддерживает контроль версий данных и моделей.
существуют При настройке модели или установке значений гиперпараметров,Нам нужно сохранить разные версии модели и данные обучения. Особенно при проведении экспериментов дасуществовать,Если вы хотите одновременно просматривать разные версии модели, TensorBoard не может пометить определенный запуск или набор данных как особенно важный.
4. Проблемы могут возникнуть при выполнении большого количества запусков.
TensorBoard Не учитывает большое количество последовательных запусков. Если вы продолжите запускать модель и неоднократно записывать данные, Воля столкнется с UI Проблемы, которые затрудняют использование интерфейса.
5. Визуальные видеофайлы и форматы неструктурированных данных не поддерживаются.
Некоторые типы данных не могут существовать TensorBoard в визуализации. Особенно часто используются видеоданные. Если работа предполагает моделирование таких данных, их сложно использовать. TensorBoard。
В этой статье подробно представлены TensorBoard, который позволяет визуализировать машинное обучение Модельиз Набор инструментов для визуализации данных。В этой статье представленыTensorBoardВсе основные компоненты плюс новые.из Экспериментальные возможности,Например, предположим, что инструмент и компонент индикатора справедливости. Благодаря этим функциям,Уметь легко просматривать и отлаживать внутреннюю работу наших обученных моделей.,и в конечном итоге улучшить свою производительность.
Автор: Зито Релова